编码运动图像的装置和方法

文档序号:7529752阅读:124来源:国知局
专利名称:编码运动图像的装置和方法
技术领域
本发明涉及一种编码运动图像的装置和方法。更具体地,本发明涉及一种采用小波变换来编码运动图像的装置和方法。
背景技术
编码运动图像的装置在各种领域被广泛地使用。视频点播(VOD),即网上电影服务,是代表性的例子之一。涉及编码运动图像的国际标准是MPEG-1、MPEG-2、MPEG-4、H.261以及H.263等等。MPEG-2被用于高清晰数字TV和DVD,以及MPEG-2主要用于网络广播。根据

图1所示有关现有技术的MPEG,使用离散余弦变换(DCT)来编码运动图像。
例如,在根据MPEG-2的编码运动图像的装置的帧内编码块中,数字视频数据(亮度信号和色差信号)被分成16×16象素的宏块,以及宏块进一步被分成8×8象素的块。以及,通过在每个象素块中实施DCT,获得DCT系数。然后,通过执行量化处理来获得量化系数,量化处理产生8×8的量化矩阵,该矩阵与用于DCT系数的量化宽度以及每个频率分量相对应。以及,通过霍夫曼(Huffman)编码产生的量化系数,并将其输出。
通常公知的小波变换具有的优势在于在基于小波变换根据MPEG的帧内编码中的压缩性比在基于DCT根据MPEG的帧内编码中的压缩性差不多大两倍。但是,基于小波变换的编码系统具有缺点在于小波变换需要比DCT更多的内储,并且很难使用硬件设计和实施小波变换,由此成为商业化的障碍。
当发生运动的象素块不能被表示成运动矢量时,基于DCT编码运动图像的常用装置执行纹理编码。因为纹理编码也基于DCT,所以压缩性比小波变换的压缩性低。
发明的公开因此,本发明的一个目的在于提供一种编码运动图像的装置和方法,它可以通过使用小波变换来执行纹理编码,以改善数据的压缩性,当发生运动的象素块不能被表示成运动矢量时,执行纹理编码。
本发明的另一目的在于提供一种编码运动图像的装置和方法,它通过在帧内编码以及帧间编码中使用小波变换,可以具有比通过根据DCT的编码运动图像的系统所获得的压缩性大两倍的压缩性。
为了实现至少上述目的,在整体以及部分上,提供一种编码运动图像的装置,包括视频信号变换单元,用于将RGB视频信号变换成运动图像压缩对象信号,并且输出变换的信号;帧内编码单元,用于对运动图像压缩对象信号进行小波变换;对通过小波变换所获得的变换系数进行量化,对量化的变换系数进行熵编码,并且输出熵编码的变换系数;以及帧间编码单元,用于对运动图像压缩对象信号的象素块中发生运动的象素块产生运动矢量,以及然后,在执行霍夫曼编码之后,输出运动矢量,或者用于以与帧内编码单元中的编码方法相同的编码方法来编码发生运动的象素块。
帧内编码单元包括小波变换单元,用于对从视频信号变换单元输出的运动图像压缩对象信号的每个数据进行小波变换Y、U和V,并且输出相应的变换系数;量化单元,用于对从小波变换单元输出的变换系数进行量化;以及熵编码单元,用于对通过量化单元量化的变换系数进行熵编码,并且输出熵编码的变换系数。
帧间编码单元使用从视频信号变换单元输出的运动图像压缩对象信号的前一帧的象素块与当前帧的象素块之间的差异来确定在每个象素块处是否发生运动。帧间编码单元确定发生运动的象素块是否可以被表示成运动矢量,输出纹理映射信息,作为确定结果,以及对纹理映射信息进行算术编码。
帧间编码单元包括运动检测单元,用于通过获得运动图像压缩对象信号的前一帧的象素块与当前帧的象素块之间的差异来确定在每个象素块处是否发生运动,并且输出确定结果,作为运动映射信息;运动映射信息编码单元,用于存储从运动检测单元输出的运动映射信息,对运动映射信息进行算术编码,以及输出算术编码的运动映射信息;运动预测单元,用于通过从运动检测单元接收发生运动的象素块的值来确定发生运动的象素块是否可以被表示成运动矢量;运动矢量编码单元,用于从运动预测单元接收与发生运动的象素块对应的运动矢量,存储接收的运动矢量,对运动矢量进行霍夫曼编码,以及输出霍夫曼编码的运动矢量;以及纹理编码单元,用于从运动预测单元接收不能表示成运动矢量的象素块,存储象素块,并且对通过小波变换象素块所获得的变换系数进行量化,对量化的变换系数进行熵编码,以及输出熵编码的变换系数。帧间编码单元还包括纹理映射信息编码单元,用于从运动预测单元接收表示发生运动的象素块是否可以被表示成运动矢量的纹理映射信息,用于存储纹理映射信息,用于算术编码纹理映射信息,以及输出算术编码的纹理映射信息。
帧间编码单元包括非运动块存储单元,用于存储运动图像压缩对象信号的象素块中没有发生运动的象素块的值。
一种编码运动图像的方法,包括将RGB视频信号变换成运动图像压缩对象信号;帧内编码,其对运动图像压缩对象信号进行小波变换,对小波变换的运动图像压缩对象信号进行量化,对量化的运动图像压缩对象信号进行熵编码,以及输出熵编码的运动图像压缩对象信号;确定形成运动图像压缩对象信号的象素块中发生运动的象素块是否可以被表示成运动矢量;以及帧间编码,其对于可以被表示成运动矢量的象素块产生运动矢量,霍夫曼编码运动矢量,并且输出霍夫曼编码的运动矢量。
当发生运动的象素块不能被表示成运动矢量时,根据所述帧内编码,所述帧间编码对象素块进行小波变换,对通过小波变换获得的变换系数进行量化,Golomb-Rice编码量化的变换系数,以及输出Golomb-Rice编码的变换系数。
一种编码运动图像的方法,进一步包括通过获得运动图像压缩对象信号的前一帧的象素块与当前帧的象素块之间的差异来确定在象素块处是否发生运动,所述运动图像压缩对象信号是在上述变换RGB视频信号中被变换为运动图像压缩对象信号的。编码运动图像的方法还包括在确定运动图像压缩对象信号的象素块处是否发生运动之后,输出运动映射信息,作为确定结果,以及算术编码纹理映射信息。
附图简要说明图1是描述现有技术中通过使用DCT来编码运动图像的装置的配置的示意图;图2是描述根据本发明一个优选实施例的编码运动图像的装置的配置的示意图。
实施本发明的最佳方式现在参考附图,详细说明本发明的优选实施例。在下面的说明和附图中,描述了特定的编码方法,例如算术编码、霍夫曼编码等等,但是,提供它们用来帮助更清楚地理解本发明,并且清楚的是,本领域技术人员可以实施本发明,而没有详细说明。为了解释本发明,当确定本发明的已知功能和构造的详细说明可能会削弱本发明的重点时,将省略详细说明。
图2描述了根据本发明优选实施例的编码运动图像的装置的配置。根据本发明优选实施例的编码运行图像的装置包括视频信号变换单元100、帧内编码单元400以及帧间编码单元500。
视频信号变换单元100接收摄像机镜头拍摄的并且从摄像机镜头输出的RGB视频信号,将RGB视频信号转变成YUV 420格式(MPEG-4)的视频信号,以及输出YUV 420格式的视频信号。YUV 420格式的视频信号是运动图像压缩对象信号,并且RGB视频信号可以被转变成YUV 422(MPEG-2)和YUV 444格式的视频信号。
帧内编码单元400包括小波变换单元410,量化单元420以及熵编码单元430。小波变换单元410输出变换系数,变换系数是通过对从视频信号变换单元100输出的每个数据进行小波变换Y、U和V所获得的。量化单元420通过量化变换系数来提高熵编码效率。熵编码单元430通过最终对经过小波变换和量化的数据进行编码并且输出编码的数据来使用在一个帧中的空间关系对一个帧进行视频信号压缩,小波变换和量化作为预处理用于提高压缩性。在目前使用的熵编码技术中,存在有算术编码、霍夫曼(Huffman)编码和戈洛布-赖斯(Golomb-Rice)编码。这些编码是已经众所周知的,从而将省略详细说明。
帧内编码单元500包括运动检测单元510;运动预测单元540;包括运动映射(motion map)信息存储单元520和算术编码单元530的运动映射信息编码单元;包括纹理映射(texture map)信息存储单元560和算术编码单元570的纹理映射信息编码单元;包括运动矢量存储单元580和霍夫曼编码单元590的运动矢量编码单元;以及包括运动块存储单元600、对应于每个Y,U和V的小波变换单元610a-610c、量化单元620a-620c以及GR编码单元630a-630c。
运动检测单元510使用前一帧的8×8象素块与当前帧的象素块之间的差异来确定在每个象素块处是否发生运动,并且输出检测结果,作为运动映射信息。换句话说,如果在与前一帧相比较的当前帧中检测到运动,运动映射信息被设定为“1”,并将其输出。相反,如果在当前帧中没有检测到运动,运动映射信息被设定为“0”,并将其输出。运动映射信息被存储在运动映射信息存储单元520中,然后,通过算术编码单元530被编码,并将其输出。
运动预测单元540从运动检测单元510接收发生运动的象素块的值,确定发生运动的象素块是否可以被表示成运动矢量,并且输出确定结果,作为纹理映射信息。进一步,如果发生运动的象素块可以被表示成运动矢量,则运动预测单元540产生运动矢量,并输出运动矢量。相比较,如果发生运动的象素块不能被表示成运动矢量,则运动预测单元540将运动块的值输出进运动块存储单元600。
非运动块存储单元550存储没有发生运动的象素块的值。
形成纹理映射信息编码单元的纹理映射信息存储单元560存储从运动预测单元540输出的纹理映射信息。如果发生运动的象素块可以被表示成运动矢量,则纹理映射信息被设定为“1”。相反,如果象素块不能表示成运动矢量,则纹理映射信息被设定为“0”。在算术编码单元570中编码纹理映射信息,并将其输出。
以帧间编码模式编码的运动矢量被存储在运动矢量存储单元580中。作为熵编码的其中之一,霍夫曼编码单元590使用霍夫曼表编码运动矢量,并且输出编码的运动矢量。运动矢量存储单元580和霍夫曼编码单元590形成了运动矢量编码单元。
发生运动并且应当以帧内编码模式被编码的运动块的值被存储在运动块存储单元600。对于其值被存储在运动块存储单元600中的运动块,通过小波变换单元610a、610b、610c、量化单元620a、620b、620c以及RG编码单元630a、630b、630c编码每个Y,U和V,并将其输出。
此后,将说明具有上述配置的编码运动图像的装置的操作。通过例如摄像机的视频输入设备(未示出)获得的运动图像压缩对象信号被输入进帧内编码单元400的小波变换单元410以及输入进帧间编码单元500的运动检测单元510。小波变换单元410对输入到小波变换单元410的当前帧的运动图像信号进行小波变换,并且将小波变换的运动图像信号输出到量化单元420。量化单元420通过事先设计的量化处理将当前帧的运动图像信号变化成多个级别的代表性值。量化系数在熵编码单元430被Golomb-Rice编码并且被算术编码,并且将其输出。
正如以上所述,通过对输入到帧内编码单元400中的当前帧的运动图像信号进行小波变换、量化以及编码来执行帧内编码。
运动检测单元510通过使用前一帧的8×8象素块与当前帧的象素块之间的差异来确定在每个象素块中是否发生运动。如果确定发生运动,则运动映射信息被设定为“1”,并将其输出。相反,如果确定没有发生运动,则运动映射信息被设定为“0”,并将其输出。运动映射信息被存储在运动映射信息存储单元520,并且在通过算术编码单元530编码之后输出,由此被用于在解码单元中对压缩数据进行解压缩。运动检测单元510将发生运动的运动块的值输出到运动预测单元540。运动预测单元540接收来自运动检测单元510的发生运动的象素块的值,确定象素块是否可以被表示成运动矢量,并且输出确定结果,作为纹理映射信息。换句话说,当象素块不能被表示成运动矢量时,例如在运动超出了基于前一帧的像素块的搜索区域的情况下,运动预测单元540将用于被确定为运动块的象素块的纹理映射信息设定为“0”。相反,如果发生运动的象素块可以被表示成运动矢量时,则纹理映射信息被设定为“1”并将其存储在纹理映射信息存储单元560。然后,纹理映射信息通过算术编码单元570被算术编码,并将其输出,由此被用于对压缩数据进行解压缩。当发生运动的象素块可以被表示为运动矢量时,运动预测单元540产生运动矢量,并将运动矢量输出到运动矢量存储单元580。这样,运动矢量通过霍夫曼编码单元590进行霍夫曼编码,并且利用运动图像信号被转换。
当运动块不能被表示成运动矢量时,通过将运动块输出到运动块存储单元600并以与帧内编码模式相同的方法执行编码。换句话说,存储在运动块存储单元600中的运动块通过小波变换、量化和Golomb-Rice编码被编码。
工业应用性正如通过以上说明而清晰的,根据本发明,通过利用比DCT具有更好压缩性能的小波变换来执行帧内编码,以及以与帧内编码相同的方法,对不能表示成运动矢量的运动块进行帧间编码。这样,本发明优势在于它在编码背景图像被固定并且目标没有太多移动的运动图像中,以及在编码例如监控系统的具有许多静止图像的运动图像中,具有良好的压缩性。
虽然为了示例性目的说明了以上本发明的优选实施例,但是,本领域技术人员都应理解,各种修改,添加和替换是可能的,而没有偏离所附权利要求公开的本发明的范围和精神。
权利要求
1.一种编码运动图像的装置,包括视频信号变换单元,用于将RGB视频信号变换成运动图像压缩对象信号,并且输出变换的信号;帧内编码单元,用于对运动图像压缩对象信号进行小波变换;对通过小波变换所获得的变换系数进行量化,对量化的变换系数进行熵编码,并且输出熵编码的变换系数;以及帧间编码单元,用于对运动图像压缩对象信号的象素块中发生运动的象素块产生运动矢量,以及然后,在执行霍夫曼编码之后,输出运动矢量,或者用于以与帧内编码单元中的编码方法相同的编码方法来编码发生运动的象素块。
2.根据权利要求1的装置,其中,帧内编码单元包括小波变换单元,用于对从视频信号变换单元输出的运动图像压缩对象信号的每个数据进行小波变换Y、U和V,并且输出相应的变换系数;量化单元,用于对从小波变换单元输出的变换系数进行量化;以及熵编码单元,用于对通过量化单元量化的变换系数进行熵编码,并且输出熵编码的变换系数。
3.根据权利要求1的装置,其中,帧间编码单元使用从视频信号变换单元输出的运动图像压缩对象信号的前一帧的象素块与当前帧的象素块之间的差异来确定在每个象素块处是否发生运动。
4.根据权利要求1的装置,其中,帧间编码单元确定发生运动的象素块是否可以被表示成运动矢量,输出纹理映射信息,作为确定结果,以及对纹理映射信息进行算术编码。
5.根据权利要求1的装置,其中,帧间编码单元包括运动检测单元,用于通过获得运动图像压缩对象信号的前一帧的象素块与当前帧的象素块之间的差异来确定在每个象素块处是否发生运动,并且输出确定结果,作为运动映射信息;运动映射信息编码单元,用于存储从运动检测单元输出的运动映射信息,对运动映射信息进行算术编码,以及输出算术编码的运动映射信息;运动预测单元,用于通过从运动检测单元接收发生运动的象素块的值来确定发生运动的象素块是否可以被表示成运动矢量;运动矢量编码单元,用于从运动预测单元接收与发生运动的象素块对应的运动矢量,存储接收的运动矢量,对运动矢量进行霍夫曼编码,以及输出霍夫曼编码的运动矢量;以及纹理编码单元,用于从运动预测单元接收不能表示成运动矢量的象素块,存储象素块,并且对通过小波变换象素块所获得的变换系数进行量化,对量化的变换系数进行熵编码,以及输出熵编码的变换系数。
6.根据权利要求5的装置,其中,帧间编码单元还包括纹理映射信息编码单元,用于从运动预测单元接收表示发生运动的象素块是否可以被表示成运动矢量的纹理映射信息,存储纹理映射信息,算术编码纹理映射信息,以及输出算术编码的纹理映射信息。
7.根据权利要求1的装置,其中,帧间编码单元包括非运动块存储单元,用于存储运动图像压缩对象信号的象素块中没有发生运动的象素块的值。
8.一种编码运动图像的方法,包括将RGB视频信号变换成运动图像压缩对象信号;帧内编码,其对运动图像压缩对象信号进行小波变换,对小波变换的运动图像压缩对象信号进行量化,对量化的运动图像压缩对象信号进行熵编码,以及输出熵编码的运动图像压缩对象信号;确定形成运动图像压缩对象信号的象素块中发生运动的象素块是否可以被表示成运动矢量;以及帧间编码,其对于可以被表示成运动矢量的象素块产生运动矢量,霍夫曼编码运动矢量,并且输出霍夫曼编码的运动矢量。
9.根据权利要求8的方法,其中,当发生运动的象素块不能被表示成运动矢量时,根据所述帧内编码,所述帧间编码对象素块进行小波变换,对通过小波变换获得的变换系数进行量化,Golomb-Rice编码量化的变换系数,以及输出Golomb-Rice编码的变换系数。
10.根据权利要求8的方法,还包括,通过获得运动图像压缩对象信号的前一帧的象素块与当前帧的象素块之间的差异来确定在象素块处是否发生运动,所述运动图像压缩对象信号是在上述变换RGB视频信号中被变换为运动图像压缩对象信号的。
11.根据权利要求10的方法,还包括在确定运动图像压缩对象信号的象素块处是否发生运动之后,输出运动映射信息,作为确定结果,以及算术编码纹理映射信息。
全文摘要
本发明涉及一种采用小波变换来编码运动图像的装置和方法。具体地,本发明通过将视频输入信号,即RGB信号,变换成运动图像压缩对象信号(YUV),通过对具有特定尺寸的变换的运动图像压缩对象信号进行小波变换和量化来获得数据,并且然后通过在熵编码之后输出数据,而来进行帧内编码。同时,本发明执行帧间编码。
文档编号H03M7/36GK1628463SQ02829004
公开日2005年6月15日 申请日期2002年5月21日 优先权日2001年2月12日
发明者李昌浩 申请人:株式会社摩迩迪
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1