专利名称:使用平均直方图差值的视频编码器及其控制方法
技术领域:
本发明涉及用于移动通信终端的多媒体数据服务,尤其是涉及一种使用平均直方图差值的H.263/MPEG视频编码器,和一种用于控制其的方法,供移动通信终端去发送运动画面或者视频数据之用。
背景技术:
由于带宽限制,第二代(2G)移动通信终端被限制在语音服务。当IMT-2000技术充分地开发时,使用该IMT-2000技术的移动通信终端可以给用户提供运动画面服务。现今,随着对于经由移动通信终端的可视和语音信息的需求增加,用于在该移动通信终端中实现运动画面的方法允许该用户去获得想要的信息。
但是,用于实时快速传输大量的图像数据的技术具有严格的限制,其数值对应于基本上可以由现有技术方法处理的数据量的时间。
例如,用于压缩图像来以高压缩率和高速度发送压缩的图像数据的压缩技术对实时发送运动画面是不可缺少的。另外,被称作“实时运动图像传输技术”的用于解码压缩的图像数据的解码技术是必需的。采取实时运动图像传输技术的移动通信终端可以与作为视频编码器控制比特率的另一方以固定的速率交换运动画面。
在现阶段,3GPP(第三代合作项目)或者家用移动通信提供者被推荐在视频编码器中采用ITU-T(国际电信联盟推荐)No.H.263和MPEG(运动图像专家组)4标准。这些压缩标准可以按照图像的特征具有不同的压缩率,因为它们基本上包括离散余弦变换(DCT)操作和运动估计操作。因此,对于相对于图像数据处理的比特率很难实现快速的控制技术。因此,在标准技术规范中推荐了一种供选择的技术,使得图像的压缩率可以经由量化值的变化被控制。在运动图像的压缩技术中,在压缩之前,希望从其中消除空间冗余度和时间冗余度。在这里,该空间冗余度被以帧内编码模式(I模式)执行,并且该时间冗余度被以帧间编码模式(P模式)执行。
图1示出了常规的H.263/MPEG视频编码器的方框图。通常,H.263/MPEG视频编码器包括原始图像存储单元100,用于接收和存储对应于作为一帧单元的原始图像的视频信息;一加法器102,用于从该原始图像存储单元100输入视频信息,并且输出视频信息的第一图像帧和在利用运动补偿信息操作跟随第一图像帧的其它图像帧之后产生的结果;一DCT(离散余弦变换)单元104,用于输入该第一图像帧和该结果,并且用于产生一DCT系数;一量化单元106,用于量化该DCT系数以产生量化的数据;一去量化单元112,用于去量化该量化的数据以产生去量化的数据;一IDCT(逆离散余弦变换)单元114,用于变换在频率域中的该去量化的数据为在空间域中的该去量化的数据,或者解码信息;一基准帧产生单元116,用于将先前的图像帧N-1的运动补偿信息与在该IDCT单元114中执行的当前图像帧N的解码信息合成,并且在其中存储用于后续的图像帧N+1的另一解码信息;一运动估计单元118,输入先前的图像帧N-1的解码信息和当前的图像帧N,并且输出运动矢量和用于估计供后续的图像帧的运动估计的差动图像帧;一运动补偿单元120,用于输入该运动向量和差动图像,并且用于基于存储在该基准帧产生单元116中的先前的图像帧N-1的解码信息来补偿运动;一帧速率控制单元110,如果由当前的图像帧编码的比特数量大于每个帧预定的比特数量,用于通过一与超出的比特数量成正比的速率来提高预定的编码时间,或者如果当前的图像帧每个帧少于小于预定数量的比特被编码,控制每个帧预定数量的比特与作为后续的编码图像帧的间隔;和一VLC MUX(可变长度编码多路复用器)108,用于多路复用该量化的数据以基于熵编码产生比特数据流,其中经常地出现的值被分配相对小的比特,并且有时候出现的值被分配相对很大的比特。
图2是一示出当第一图像帧被输入的时候常规的H.263/MPEG视频编码器的编码过程的流程图。如果第一图像帧被输入给该编码器,其被以I帧模式编码。即,在步骤200上,该第一图像帧被每个微块执行一8×8DCT操作,以在该DCT单元104中产生一DCT系数。此后,该DCT系数被在该量化单元106中量化,以产生量化的数据。然后,在步骤202上,量化的数据被多路复用和以比特数据流的形式从该VLC MUX108输出。此外,当继续进行步骤202至206时,对该第一图像帧的操作是分别地经由该DCT104、去量化器112和IDCT114通过该离散余弦变换、逆变换和逆离散余弦变换操作来执行的,以产生用于编码后续的图像帧的基准图像帧。然后,在步骤208恢复该基准图像帧。
示出当图像帧被输入的时候常规的H.263/MPEG视频编码器的编码过程的流程图在图3中示出。在步骤300,经由如图2所示的该编码过程产生的该基准图像帧被在该基准产生单元116中保持在备用状态。如果该第一图像帧被跟随有在步骤302输入给它的后续图像帧,在步骤304,在来自后续图像帧当中的当前图像帧和基准图像帧之间执行运动估计。然后,在步骤306,计算SAD(绝对差值的总和)值。如果该SAD值大于一预定的阈值,在步骤310,该编码过程被设置为I模式。同时,如果该SAD值小于该预定的阈值,在步骤312,该编码过程被设置为P模式。
此后,如果后续的图像帧被输入进该编码器中,它们被以P模式编码。即,在预测的图像被经由运动估计单元118和运动补偿单元120产生之后,在当前的图像帧和预测的图像帧之间的差值被编码。在这个阶段,在该输入图像的所有区域被基于该差值编码之前,根据它们是以消除时间冗余度的P模式执行的还是以消除空间冗余度的I模式执行的来确定一编码模式。在模式选择步骤中,如果在执行运动补偿操作之后的预测差值小于在未执行运动补偿操作之后的预测差值一预定的值,那么选择该P模式。同时,如果在执行运动补偿操作之后的预测差值大于在未执行运动补偿操作之后的预测差值一预定的值,那么选择该I模式。
即,采用上述的视频编码标准的该编码器对于第一图像帧执行编码操作,其中,该第一图像帧是在该DCT104中每个微块通过8×8DCT操作和在该106中的量化操作处理的,并且基于经由该VLC MUX 108处理的结果,以比特数据流的形式输出。此外,基于该量化的结果,空间范围的基准图像帧被该去量化器112和该IDCT114恢复。此外,当输入后续图像帧的时候,在来自后续图像帧当中的当前图像帧和该标准图像帧之间执行运动估计,并且计算在一SAD值之后设置的阈值。此后,如果该SAD值大于该阈值,那么该编码器被设置为其中不执行运动估计的I模式,和如果该SAD值小于该阈值,那么该编码器被设置为其中执行运动估计/运动补偿的P模式。此后,该输入图像帧被编码。当消除时间冗余度的时候,在模式选择步骤,确定P模式或者I模式。在该I模式中,根据对应于该I模式的宏块所提供的该输入图像帧计算一DCT系数。在图像块对应于该P模式的情况下,对该输入图像和该预测图像之间的差值进行编码。
如上所述,当时间冗余度被从其中消除的时候,该现有技术H.623/MPEG编码器对于所有的图像块区域执行运动估计/运动补偿操作。但是,在P模式中,所有的图像块都不编码。如果在该模式选择步骤中来自执行运动估计/运动补偿不大于未执行运动估计/运动补偿的增益,该编码器被设置为I模式,以便消除该空间冗余度。因而,如果由I模式编码的该区域也是通过运动估计/运动补偿操作来执行的,该编码器的性能被降低。
即,在最坏条件的情形下,在该输入图像块的所有区域被该运动估计/运动补偿操作执行之后,可以利用I模式对该图像块进行编码。因此,即使该运动估计/运动补偿操作不是必要的,它们也被冗余地执行。
因此,该现有技术H.263/MPEG编码器具有以下的缺点,即,当该输入图像被编码使得其造成过载的时候,该图像块的所有区域通过与I模式和P模式无关的该运动估计操作来执行。
发明内容
因此,本发明是从上述问题的角度出发而做出的,并且本发明的一个目的是提供一种能够在对输入给它的图像区域执行运动估计/运动补偿操作之前,使用平均直方图差值在先选择编码模式的H.263/MPEG视频编码器,和一种用于控制这种编码器的方法。
另一目的是提供一种能够对输入给它的最小变化的图像区域执行运动估计/运动补偿操作从而使得该视频编码器的性能被增强的H.263/MPEG视频编码器,和一种用于控制这种编码器的方法。
又一目的是提供一种能够以I模式对输入给它的图像的充分变化的区域编码和能够以执行运动估计/运动补偿的P模式对图像的最小变化区域编码的H.263/MPEG视频编码器,和一种用于控制该编码器的方法。
按照本发明的一个方面,以上所述和其它的目的可以通过提供一种产生基准图像帧的H.263/MPEG视频编码器来实现,该基准图像帧用于基于当前的输入图像帧N-1编码后续的输入图像帧N,其是通过DCT(离散余弦变换)和用于输出视频信息流和量化信号的量化操作来执行的,该量化信号是通过逆量化和逆离散余弦变换(IDCT)操作来解码的,该编码器包括一用于选择第一模式的模式选择单元,其中,在后续的图像帧N与该基准图像帧相比较以从其中消除时间冗余度之后,如果该后续的图像帧N是根据该基准图像帧充分变化的,则不执行运动估计/补偿操作。
按照本发明的另一方面,提供了一种用于控制产生基准图像帧的H.263/MPEG视频编码器的编码操作的方法,用于基于当前的输入图像帧N-1编码后续的输入图像帧N,其中,当前的输入图像帧N-1是通过DCT(离散余弦变换)和用于输出视频信息流和量化信号的量化操作执行的,该量化信号是通过逆量化和逆离散余弦变换(IDCT)操作解码的,包括下述步骤如果输入了所述后续图像N,则基于该基准图像帧计算一平均直方图差值;比较该平均直方图差值是否大于一预定的基准值;选择该第一模式,其中,如果该平均直方图差值大于该预定的基准值,则不执行运动估计/补偿操作;其中,该后续输入图像帧被确定为包括充分变化的区域,和选择一第二模式,其中,如果该平均直方图差值小于该预定的基准值,则执行运动估计/补偿操作,其中,该后续的输入图像帧被确定为包括最小变化的区域。
通过下面结合附图的详细说明中,本发明的上述及其它的目的、特点和其它的优点将能够更清楚地了解,其中图1是一示出了一常规H.263/MPEG视频编码器的方框图;图2是一示出当第一图像帧被输入给它的时候常规的H.263/MPEG视频编码器的编码过程的流程图;图3是一示出当被第一图像帧所跟随的其它图像帧被输入给它的时候常规的H.363/MPEG视频编码器的编码过程的流程图;图4是一示出按照本发明实施例使用平均直方图差值的H.263/MPEG视频编码器的方框图;和图5是一示出当被第一图像帧所跟随的其它图像帧被输入给它的时候,按照本发明实施例使用平均直方图差值的H.263/MPEG视频编码器的编码过程的流程图。
具体实施例方式
现在将参考附带的附图详细地描述几个本发明的优选实施例。在该附图中,相同的或者相似的单元由相同的标号表示,尽管它们在不同的附图中描述。在下面的描述中,当其可能造成本发明的主题不清楚的时候,在此处结合的已知功能和结构的详细说明将被省略。此外,在下面的描述中使用的术语是考虑到按照本发明获得的功能定义的术语。
因为现有技术视频编码器对于输入给它的图像的所有区域执行运动估计操作,然后确定所述后续图像是被以I模式(从其中消除空间冗余度)还是以P模式(从其中消除时间冗余度)编码,该现有技术视频编码器对于图像的多余的区域执行运动估计操作,从而提高该视频编码器的操作负荷。
现在将描述仅对于相对最小变化的区域(与输入给它的图像的所有区域相对比)执行运动估计/运动补偿操作的视频编码器的结构。
图4的框图示出了按照本发明一实施例的使用平均直方图差值的H.263/MPEG视频编码器。
该H.263/MPEG视频编码器包括一原始图像存储单元400,用于接收和存储对应于作为一帧单元的原始图像的视频信息;一减法器402,用于从该原始图像存储单元400输入视频信息,并且输出视频信息的第一图像帧和在利用运动补偿信息对被第一图像帧所跟随的其它的图像帧进行操作之后所产生的结果;一DCT(离散余弦变换)单元404,用于输入该第一图像帧和所述结果,并用于产生一DCT系数;一量化单元406,用于量化该DCT系数以产生量化的数据;一去量化单元412,用于去量化该量化的数据以产生去量化的数据;一IDCT(逆离散余弦变换)单元414,用于将在频率域中的该去量化的数据变换为在空间域中的去量化的数据,或解码信息;一基准帧产生单元416,用于合成先前的图像帧N-1的运动补偿的信息与在该IDCT单元414中执行的当前的图像帧N的解码信息,并且在其中存储用于后续的图像帧N+1的其它解码信息;一I/P模式选择单元418,用于输入先前的图像帧N-1和当前的图像帧n的解码信息,并且选择P模式和I模式中的一个;一从I/P模式选择单元418以P模式输入先前的图像帧N-1和当前图像帧N的解码信息并输出运动矢量和用于执行运动估计的差动图像帧的运动估计单元420,;一运动补偿单元422,用于输入该运动矢量和差动图像,并且用于基于存储在该基准帧产生单元416中的先前的图像帧N-1的解码信息来补偿运动;一帧速率控制单元410,用于如果由当前图像帧编码的比特数量超过每个帧预先分配的预定比特数量,用于将一预定的编码时间增加所述超过比特数量的速率,或者如果当前的图像帧被以小于每个帧预定的比特数量来编码,控制由后续的编码图像帧使用的每个帧确定的比特数量;和一VLC MUX(可变长度编码多路复用器)408,用于多路复用该量化的数据以基于熵编码产生比特数据流,其中经常出现的值比有时候出现的值被分配更少的比特,从而由于比特分配节省空间。
这里,该I/P模式选择单元418基于先前的图像帧N-1的解码信息计算用于当前的图像帧N的平均直方图差值,并且确定一微块区域是被以P模式还是以I模式编码。这里,该平均直方图差值(AHD)可以表示为以下的等式(1)AHD=Σi=0255|A(f)(i)-B(g)(i)|256]]>等式(1)其中,f和g分别表示图像帧A(或者先前的图像帧N-1)和图像帧B(或者当前的图像帧N)的灰度值。
现在,如果该AHD大于一预先设置的基准值,该编码器以I模式工作,并且如果该AHD小于该基准值,则以P模式工作。即,该P模式被选择去使用具有相对较少计算量的该平均直方图差值,对输入给它的该图像的最小变化区域执行运动估计/运动补偿操作,和该I模式(其中不执行运动估计/运动补偿操作)被选择用于输入给它的图像的充分变化的区域。
因此,通过基于与该基准图像帧相比较输入给它的图像的变化的区域数量来降低在该编码器上的处理负荷,使得图像被基于它们是否需要运动估计/运动补偿操作来分类,本发明的H.263/MPEG编码器可以有效地压缩图像。
同时,当选择I或者P模式的时候,以下的等式(2)是一用于与该平均直方图差值相比较的基准值,该平均直方图差值是通过先前的图像帧N-1作为用于当前的图像帧N的基准图像帧来计算的。
X‾=x1x2...xn]]>等式(2)这里,X1、X2、...、Xn是使用供测试图像帧的等式(1)用实验方法从该平均直方图差值中获得的取样值。
此外,95%的置信区间被设置用于X值。假定取样值X1、X2、...、Xn具有一带有平均值μ和标准偏移σ的正态分布,那么,该95%的置信区间可以表示为以下的等式(3)X‾-1.96·σn,X‾+1.96·σn]]>等式(3)其中,X是取样值X1、X2、...、Xn的平均值。
在本发明中,该基准值是由该置信区间的上限值来确定的。即,如果该平均直方图差值大于该置信区间的上限值,那么本发明的该H.263/MPEG编码器被设置为I模式。同时,如果其是小于该上限值,那么该H.263/MPEG编码器被设置为P模式。因此,如果该H.263/MPEG编码器被设置为P模式,该输入的图像帧是通过该运动估计/运动补偿操作来编码的。
现在将参考图5描述在本发明的H.263/MPEG编码器中,在对于输入给它的图像区域执行该运动估计/运动补偿操作之前,用于使用该平均直方图差值来选择编码模式的方法。
在图5中示出了当被第一图像帧所跟随的其它图像帧被输入给它的时候,按照本发明一实施例使用平均直方图差值的H.263/MPEG视频编码器的编码过程的流程图。
假定用于编码该输入图像帧的基准图像帧被以与在图2中示出的相同方式产生,当基准图像帧被在步骤500在基准产生单元416中保持在待机状态的时候,如果后续的图像帧被在步骤502输入给该编码器,该编码器在步骤504上计算在来自后续的图像帧之中用于当前的图像帧的该基准图像的平均直方图差值。此后,在步骤506中,该平均直方图差值与预定的基准值相比较。这里,使用等式(2)计算该基准值,并且无论在当前的图像帧和基准图像帧之间的该图像帧的变化是大还是小都被使用。即,如果所计算的平均直方图差值大于该基准值,那么在步骤508,该编码器被设置为I模式,以编码该输入的图像帧。即,具有相对很大变化的图像帧的区域被以I模式编码,其中不分别地在运动估计单元402和运动补偿单元422中执行该运动估计/运动补偿操作。
同时,如果该计算的平均直方图差值小于该基准值,那么在步骤510中,该编码器被设置为P模式,以编码该输入的图像。即,具有最小变化的图像的区域被使用带有相对很小计算量的平均直方图差值,以执行运动估计/运动补偿的P模式来编码。参考图4,如果由I/P模式选择单元418选择该P模式,该运动估计单元420和该运动补偿单元422被运行以预测和补偿运动。
本发明的H.263/MPEG编码器可以选择一种编码模式,以有效地改善该H.263/MPEG编码器的压缩效率和速度。可以对MPEG或者H.263压缩采取基于用于选择一种编码模式的平均直方图差值运行的本发明的H.263/MPEG编码器。
由于本发明的H.263/MPEG编码器将区域分类为需要该运动估计/运动补偿操作的那些区域,和那些不需要它们的区域,其可以降低用于编码或者压缩该输入的图像帧的负荷。
如上所述,由于本发明的H.263/MPEG编码器有选择地取决于图像块执行该运动估计/运动补偿操作,其性能可以被增强。此外,由于需要运动估计/运动补偿的图像帧的区域被基于具有相对很小计算量的平均直方图差值处理,对于该运动估计/运动补偿操作最小的时间量被耗费。此外,由于本发明的该H.263/MPEG编码器被依照以下运行,即,具有相对很小变化的图像帧的区域被以P模式编码,并且具有相对很大变化的图像的区域被基于该平均直方图差值以I模式编码,很少出现运动预测误差。
虽然为了说明性的目的已经公开了本发明的优选实施例,本领域技术人员将理解,不脱离如在权利要求中公开的本发明的范围和精神的各种各样的改进、添加和替换是可允许的。
权利要求
1.一种产生一基准图像帧的H.263/MPEG视频编码器,用于基于当前的输入图像帧N-1编码后续的输入图像帧N,该编码是通过离散余弦变换和用于输出视频信息流和量化信号的量化操作来执行的,该量化信号通过逆量化和逆离散余弦变换操作被解码,该编码器包括一模式选择单元,用于选择第一模式,其中,在该后续的图像帧N与该基准图像帧相比较以从其中消除一时间冗余度后,如果在后续的图像帧N和当前的图像帧N-1之间的差值大于一基准值,则不执行运动估计/补偿操作。
2.如权利要求1所述的编码器,其中,该模式选择单元基于该基准图像帧计算一平均直方图差值,确定该平均直方图差值是否大于该预定的基准值,和选择该第一模式,其中,如果该平均直方图差值大于该预定的基准值,则不执行运动估计/补偿操作;或者选择第二模式,其中,如果该平均直方图差值小于该预定的基准值,则执行运动估计/补偿操作。
3.如权利要求2所述的编码器,其中,该预定的基准值是一用于确定后续输入图像帧N偏离该基准图像帧的变化程度的值。
4.一种用于控制产生基准图像帧的H.263/MPEG视频编码器的编码操作的方法,用于基于当前的输入图像帧N-1编码后续的输入图像帧N,其中,当前的输入图像帧N-1是通过离散余弦变换和用于输出视频信息流和量化信号的量化操作执行的,该量化信号是通过逆量化和逆离散余弦变换操作解码的,包括步骤如果后续的图像N被输入,则基于该基准图像帧,计算一平均直方图差值;比较该平均直方图差值是否大于该预定的基准值;选择该第一模式,其中,如果该平均直方图差值大于该预定的基准值,不执行运动估计/补偿操作;和选择一第二模式,其中,如果该平均直方图差值小于该预定的基准值,执行运动估计/补偿操作。
5.如权利要求4所述的控制方法,其中,该预定的基准值是一用于使用一统计方法确定用于编码图像帧的第一或第二模式的阈值,其中,该预定的基准值被用于确定后续图像帧N的图像帧变化与该基准图像帧相比是大还是小。
6.如权利要求5所述的控制方法,其中,该预定的基准值以如下的等式确定,X‾=x1x2···xn]]>其中,X1、X2、…、Xn是该平均直方图差值的实验值。
7.如权利要求4所述的控制方法,还包括下述步骤选择该第一模式,其中,如果该平均直方图差值大于该预定的基准值,不执行运动估计/补偿操作,其中,该后续的输入图像帧被确定包括充分变化的区域。
8.如权利要求4所述的控制方法,还包括下述步骤选择第二模式,其中,如果该平均直方图差值小于该预定的基准值,执行运动估计/补偿操作,其中,该后续的输入图像帧被确定包括最小变化的区域。
全文摘要
公开了一种使用平均直方图差值的H.263/MPEG视频编码器和一种用于控制其的方法。该H.263/MPEG视频编码器基于当前的输入图像帧N-1产生一用于编码后续的输入图像帧N的基准图像帧,该当前的输入图像帧N-1是通过DCT(离散余弦变换)和用于输出视频信息流和量化信号的量化操作执行的。在这里,该量化信号是通过逆量化和逆离散余弦变换(IDCT)操作解码的。此外,该编码器包括一用于选择第一模式的模式选择单元,其中在后续的图像帧N与该基准图像帧相比较以从其中消除时间冗余度之后,如果后续的图像帧N是离该基准图像帧相对严重地变化,不执行运动估计/补偿操作。
文档编号H04N7/50GK1694536SQ20051006843
公开日2005年11月9日 申请日期2005年4月28日 优先权日2004年4月30日
发明者李玹承 申请人:三星电子株式会社