增加信息流解码器中存储器资源利用的方法及设备的制作方法

文档序号:7585932阅读:208来源:国知局
专利名称:增加信息流解码器中存储器资源利用的方法及设备的制作方法
本申请书要求1998年5月7日提出的美国临时申请案号60/084,632的权益。
本发明涉及一种通讯系统;特别是涉及一种在信息流解码器(如MPEG类的视频解码器)中,用于增加存储器利用的方法和装置。
背景技术
在几个通讯系统中,将要传输的数据压缩,以便更有效率地利用可用的带宽。例如,动态图形专家小组(MPEG)公布了数个和数字数据传递系统相关的标准。首先是MPEG-1,意指ISO/IEC标准1172,并入本文中作为参考。其次是MPEG-2,意指ISO/IEC标准13818,并入本文中作为参考。在高级电视系统委员会(ATSC)的数字电视标准文档A/53中,描述一个压缩的数字视频系统,并入本文中作为参考。
上面参考的标准说明了数据处理,及适合视频压缩和传递、声频及其它利用固定或变化长度数字通讯系统的信息的操纵技术。特别是,上面参考的标准、和其它MPEG类的标准和技术,描述了利用帧内编码技术(如行程长度压缩编码法,霍夫曼编码等等)、帧间编码技术(如正向和逆向预测编码,移动补偿等等)、压缩视频信息。特别地,在视频处理系统的情况,MPEG和MPEG类的视频处理系统的特征在于,视频帧的具有或不具有帧内和/或帧间移动补偿编码的基于预测的压缩编码。
在典型的MPEG解码器中,是针对一个参考帧(即一个锚帧(anchor frame))解码预测的编码像素区块(即包括一个或多个移动向量和一个剩余错误成份的区块)。锚帧储存在解码器内一个锚帧存储器中、典型地为双重帧存储器。因将一个锚帧的每一个区块解码,故解码区块和双重帧存储器的第一个部份耦合。当将整个锚帧解码时,储存在双重帧存储器第一个部份中的解码区块和双重帧存储器的第二个部份耦合。因此,利用双重帧存储器的第二个部份储存最近装满的锚帧,由解码器的移动补偿部份依次利用,作为用于解码预测编码区块的参考帧。
不幸的是,就费用和集成电路晶粒大小(影响电路的复杂性,可信度,电源使用和热分散)来看,执行一个锚帧存储器所需的存储器费用可能相当高。此外,随着解码图像的解析度增加时,所需的存储器大小亦随之增加。因此,在高清晰度电视(HDTV)解码器中,存储器总量必须足以执行(双重)锚帧所需的工作区存储器,以解码最高的解析度图像。此外,因被解码的图像的解析度增加时,帧储存存储器的带宽需求(即数据储存和检索的速度)亦随之增加,故帧储存存储器的带宽必须能够处理被解码的最高解析度图像的需求。
因此,提供一种显着著减少解码视频图像所需的存储器和存储器带宽,同时基本上保留产生的全解析度或缩小的视频图像的品质的方法和装置。
发明概述本发明包括一种在-MPEG类的解码器中、用于减少存储器和存储器带宽需求的方法和装置。通过储存前压缩图像信息,并在利用图像信息在例如,解码器的移动补偿模块中之前,解压缩储存的(压缩的)图像信息,以减少存储器和存储器带宽的需求。揭示一种方法和装置,利用Haar子波变换、优先量化和缩放处理过程,用于压缩一个或多个像素区块,以产生一个或多个相应的字,其中相应的字包括优先量化的Haar子波系数和相关的缩放指标。在动态图形专家小组(MPEG)类的处理系统中,通过因子“二”减少存储器资源的需求(如帧储存)。在另一个实施例中,每一个像素区块进行离散余弦变换(DCT)处理和高阶DCT系数舍去,以产生像素信息改良的压缩比。
特别地,一种根据本发明所揭露的方法包括步骤利用Haar子波变换,变换一个像素区块,以形成一个Haar系数区块;利用多个缩放因子,量化Haar系数区块,以形成一个相应的量化Haar系数区块,选取多个缩放因子,优先地将可用的比特位预算(budget)配置给量化的Haar系数,其中量化的Haar系数代表像素区块极低的垂直和水平空间频率成份;将每一个量化的Haar系数和多个缩放因子中至少一个缩放因子打包成一相应的字;及储存字在解码系统内一个存储器模块中。
附图简单说明通过参考附图的详细描述,能容易地了解本发明的宗旨,其中

图1说明根据本发明的一个MPEG类的解码器的一个实施例;图2说明一个适用于图1MPEG类的解码器的压缩模块;
图3说明一个适用于图1MPEG类的解码器的解压缩模块;图4说明一种根据本发明的数据压缩方法的流程图,适用于图1压缩模块或MPEG类的解码器;图5说明图4数据压缩方法的图形表示图6说明根据本发明的一个压缩处理的方块图;及图7说明根据本发明的一个压缩处理的方块图。
为了易于了解,尽可能使用相同的参考数字指示图示中共有的相同成份。
详细描述将在视频解码器内,就一个MPEG-2视频解码器示例说明本发明。然而,对那些熟知此技术的人来说,将发现本发明适用于任何视频处理系统,包括改编成DVB,MPEG-1和其它信息流的系统。
特别地,将在MPEG类的解码系统中主要说明本发明,其中MPEG类的解码系统接收和解码压缩的视频信息流IN,以产生一个视频输出流OUT。本发明通过在储存前压缩图像信息,并在利用图像信息在例如解码器的移动补偿模块中之前,解压缩储存的(压缩的)图像信息,减少存储器和存储器带宽的需求。
图1描述根据本发明的一个MPTC类的解码器100的一个实施例。特别地,图1的解码器100,接收和解码压缩的视频信息流IN,以产生视频输出流OUT。视频输出流OUT适合与例如,重现装置(未显示)内的显示驱动器电路耦合。
MPEG类的解码器100,包括输入缓冲存储器模块111,可变长度的解码器(VLD)模块112,逆转量化器(IQ)模块113,逆转离散余弦变换(IDCT)模块114,加法器115,移动补偿模块116,输出缓冲模块118,锚帧存储器模块117,压缩模块200及解压缩模块300。可选择地,MPEG类的解码器100包括子采样模块200X和内插模块300X。
输入缓冲存储器模块111接收压缩的视频流IN,一种可变长度的编码比特位流,代表例如,从传输分用器/解码器电路(未显示)输出的高清晰度电视信号(HDTV)或标准清晰度电视信号(SDTV)。利用输入缓冲存储器模块111暂存接收的压缩视频流IN,直到可变长度的解码器模块112准备好接受用于处理的视频数据为止。VLD 112有一个输入,和输入缓冲存储器模块111的数据输出耦合,以检索例如储存的可变长度的编码视频数据,作为数据流S1。
VLD 112解码检索的数据,以产生固定长度的比特位流S2,S2包括量化的预测错误DCT系数和移动向量流MV。紧接着固定长度比特位流S2之后,IQ模块113执行逆转量化操作,以产生比特位流S3,S3包括标准形式的量化预测错误系数。紧接着比特位流S3之后,IDCT模块114执行逆转离散余弦变换,以产生比特位流S4,S4包括逐像素预测错误。
加法器115将逐像素地预测错误流S4增加至移动补偿预测像素值流S6中,其中S6由移动补偿模块116产生。因此,在示例的实施例中,加法器115的输出为包括重建像素值的视频流S5。加法器115产生的视频流S5,和压缩模块200、输出缓冲模块118耦合。可选择地,加法器115产生的视频流S5,和压缩模块200、输出缓冲模块118耦合。可选择地,加法器115产生的视频流S5,和子采样模块200X耦合。
压缩模块118,以区块为基础地将视频流S5压缩在一个区块上,以产生压缩的视频流S5’。在下将就图2,图4和图5,对压缩模块200的操作作更详细的说明。简短地说,压缩模块200以像素区块为基础(例如一个4×4,4×8或8×8的像素区块),根据一个Haar子波变换处理每一个像素区块,以压缩一个锚帧内的每一个像素区块,优先地量化产生的Haar系数区块,缩放产生的量化系数,并包封缩放的系数和相关的缩放因子,以形成像素区块一个缩放、量化和Haar定义域的表示,其与压缩模块的输出耦合,作为压缩视频流S5’的一部份。发明者注意到,锚帧的一个缩放、量化和Haar定义域的表示,大约只需求像素定义域锚帧表示所需存储器的一半。因此,通过因子“二”,减少锚帧存储器模块117的存储器需求。
在一个像素区块上执行一个Haar子波变换之前,可利用一维的或二维的DCT功能处理像素区块,且可选择地利用DCT系数舍去功能。接着,根据Haar子波变换处理产生的DCT系数(舍去或未舍去)。
在本发明的一个实施例中,4×4的像素区块进行二维的Haar子波变换,在结果打包成数据字以便随后存至例如,锚帧存储器模块117中之前,先适当地量化和缩放结果。4×4像素区块的每一个产生的缩放、Haar定义域表示,均占据约64个比特位或更少的比特位。本发明的实施例产生一个2∶1压缩的像素信息,且将在下就图4和5作更详细的讨论。
在本发明的另一个实施例中,利用一维或二维的DCT处理4×8的像素区块(即4个像素行×8个像素列),以产生DCT系数的相应的4×8区块。在舍去高阶的DCT系数之后,所得的DCT系数的4×4区块进行二维的Haar子波变换,在结果打包成数据字之前,先适当地量化和缩放结果。像素区块的每一个产生的缩放、Haar定义域表示,均占据约64个比特位或更少的比特位。本发明的实施例产生一个4∶1压缩的像素信息,且将在下就图6作更详细的讨论。
锚帧存储器模块117接收和储存压缩的视频流S5’。有利地,因储存像素区块2∶1压缩的表示,而非储存像素区块本身,故可将锚帧存储器模块117的大小减少成正常大小的一半。必须将储存在锚帧存储器模块117中的压缩像素区块,提供给移动补偿组116以作更进一步的处理。然而,因移动补偿模块处理未压缩的像素数据,故经由信号路径S7’,先将要压缩的像素区块提供给解压缩模块300进行解压缩。可选择地,解压缩模块300的输出和内插模块300X耦合,以在移动补偿模块116处理之前,作为未压缩像素数据的向上取样(即重新缩放)。
解压缩模块300基本上映像上述压缩模块200的操作。也就是说,解压缩模块300接收每一个Haar定义域区块,且解包接收的Haar定义域区块,以检索Haar系数和先前使用的缩放因子。接着,利用解包的缩放因子缩放解包的Haar系数,然后进行逆转Haar子波变换,以基本上重新产生原始的像素区块。可选择地,逆转的Haar子波变换产生一个DCT系数的区块,再进行逆转DCT变换,以基本上重新产生原始的像素区块。将在下面就图3对解压缩模块300作更详细的讨论。
移动补偿模块116,经由信号路径S7访问解压缩模块300。也就是说,移动补偿模块116利用一个或多个储存的锚帧(例如,形成视频信号最近的I-帧或P-帧的实质重新产生的像素区块,其中视频信号是在加法器115的输出上产生的),和从VLD 112中接收的移动向量信号MV,以计算移动补偿预测像素值流S6的数值。
现在将说明可选择的子采样200X和内插模块300X的操作。子采样模块200X执行子采样或抽选十分之一视频流S5内的像素信息,以产生视频图像(由像素数据所表示的)一个重新缩放(即缩小)的效果。例如,可将一个1920个像素×1080行的高清晰度图像重新缩放成一个较小的图像,如一个标准的720个像素×480行的图像,或选取其它一些非标准的格式以大致地减少存储器需求,或将存储器需求减少至一特殊的等级,例如由可用半导体区域或其它因子所确定的等级。接着,通过压缩模块200以申请中别处所描述的方式处理子采样视频流。
利用交叉模块300X重新定义(即放大)子采样模块200X操作先前所产生的缩小图像信息的大小。内插模块300X利用解压缩模块300提供的图像信息,以计算(即估计)子采样模块200X操作先前所移除的图像信息,使移动补偿模块116接收代表一适当图像大小的像素信息。须注意,子采样模块200X和内插模块300X的操作,将固有地导致图像解析度和图像品质的损耗。然而,例如在无法提供这种解析度(即一个小的显示管电视系统)的重现系统内,可不必关注图像解析度的损耗,且存储器减缩产生的成本节省,对重现系统的市场成功性来说,可能非常重要且具决定性的。
图2说明一个适用于图1MPEG类的解码器的压缩模块200。压缩模块200包括一可选择的离散余弦变换模块(DCT)210,一子波变换组220(如Haar子波变换模块(HAAR)),一量化模块(Q)230,一包封模块(PACK)240及一比率控制模块200。可作为一特别应用集成电路(ASIC),或根据本发明所规划、执行特殊功能的通用计算机,执行压缩模块的功能。
压缩模块200,在离散余弦变换(DCT)压缩模式和非DCT压缩模式中之一操作,以产生包含在视频流S5中像素信息的一个压缩。
在非DCT压缩模式中,压缩单元200产生一个2∶1压缩的像素信息。例如,在具有8个比特位动态范围(包括约128个比特位的信息)的4×4像素区块的情况,在非DCT模式中操作的压缩模块,对每一个4×4像素产生一64个比特位的表示,且图像品质中无实质的损耗。同样地,在一8×8像素区块(约512个比特位)或一8×4像素区块(约256个比特位)的情况,在非DCT模式中操作的压缩模块,分别产生一个256个比特位或一个128个比特位的表示,且图像品质中无实质的损耗。
在DCT压缩模式中(即在Haar变换之前舍去高阶DCT系数),压缩单元200产生4∶1压缩的像素信息。因此,在8×8像素区块(约512个比特位)或8×4像素区块(约256个比特位)的情况,在DCT模式中操作的压缩模块,分别产生像素信息128个比特位或64个比特位的表示,虽然在高频率图像信息(例如端信息)中有些微的减少。
DCT模块210的输出和Haar变换模块220耦合,其中输入像素区块或DCT系数区块进行Haar变换处理。产生的Haar系数区块和量化器230耦合。量化器230,响应比率控制器250产生的控制信号RC,并优先地量化和缩放Haar子波系数区块,以产生一个和包封模块240耦合的数据字作为信息流S5’。比率控制器250监督至量化器230的输入和量化器230的输出,以判定量化的系数区块的形态和大小。
在非DCT压缩模式中,以4×4的像素区块示例说明,每一个4×4的像素区块(即像素X0到X15)进行一个二维的Haar子波变换,以产生一个对应的4×4Haar系数区块(即系数X0到X15)。每一个Haar系数,代表包含在4×4像素区块内视频信息水平空间频率成份和垂直频率成份一部份相关的频谱功率。接着,以优先的方式量化Haar系数,以便重要的系数(即代表空间频率成份、更容易地提供人类眼睛可辨识的图像信息的系数)比不重要的系数分配到更多的比特位。接着,通过因子“1/2n”缩放量化的系数,其中选取n使其满足下面关系的最小值2(n+m)小在一组子波系数绝对值的最大值,其中一组指共用相同缩放因子的系数,且m为配置给组中每一个系数的比特位数。最后,将缩放系数和相关的缩放因子打包成一(约)64个比特位的字。接着,64个比特位的字和另一个锚帧存储器模块117耦合,作为压缩视频流S5’的一部份。
在DCT压缩模式中,以4×8的像素区块示例说明,其中每一个4×8的像素区块(即像素X0到X31)进行一维或二维的DCT,以产生一个相对应的4×8 DCT系数区块(即系数X0至X31)。舍去高阶DCT系数区块(即系数X16至X31),导致一个4×4 DCT系数区块(即系数X0到X15)。接着。产生的DCT系数区块进行一个二维的Haar子波变换,以产生一个相对应的4×4Haar子波系数区块(即系数X0到X15)。接着,以基本上非DCT模式操作中所提供的相同的方式,优先地量化、缩放和包封Haar子波系数,以产生(就一个4×8像素区块的情况而言)相对应64个比特位的字。接着,64个比特位的字和另一个锚帧存储器模块117耦合,作为压缩视频流S5’的一部份。可根据特殊应用的需要,选择DCT模式或非DCT模式。例如,在低解析度或标准清晰度(即非高清晰度)电视应用中,在图像中去掉某些高频率的细节信息是可接受的,虽然对一个高清晰度应用来说,信息可能非常重要且具决定性的。此外,限制在所设计的解码器内的存储器,可指定使用增强的压缩等级,如DCT模式操作所提供的。
图3说明一个适用于图1MPEG类的解码器的解压缩模块300。图3的解压缩模块300包括以下一系列耦合一个解包模块310,一个逆转量化(Q-1)模块320,一个逆转Haar变换(HAAR-1)模块330及一个可选择的逆转离散余弦变换模块(IDCT)340。解压缩组组以反向的次序、相对于压缩模块200的上述相对应模块的逆转功能执行。因此,将不详尽的讨论压缩模块的操作。简短地说,压缩模块300接收一个包封的数据字,解包数据字以检索一个Haar子波系数区块,并在解包的系数区块上执行一个逆转Haar子波变换,以产生一个DCT系数区块或一个像素区块。在压缩模块200舍去一个DCT系数区块的情况中,DCT系数区域进行一个逆转的DCT操作,以产生一个像素区块。在压缩模块200舍去一个DCT系数区块的情况中,空(NULL)系数增加至DCT系数区块中,以将DCT系数区块填满成适当的大小,填好的DCT系数区块进行一个逆转的DCT操作,以产生一个像素区块。
现在,将就图4和图5对压缩模块20的操作作更详细的说明。图4说明一种根据本发明的数据压缩方法的流程图,适用于图2的压缩模块或图1MPEG类的解码器。图5说明图4数据压缩方法的图形表示。可作为图1 MPEG类的解码器100的合作模块间的逻辑功能,来执行图4的压缩程序400。亦可用通用计算装置内的一个程序,执行压缩程序400。压缩模式400执行,就一个视频流(即在图1MPEG类的编码器中、加法器115输出上产生的视频流S5)中的4×4像素区块举例说明,压缩每一个4×4像素区块,以产生一个数据组,代表具有极小数据量的4×4像素区块。
在步骤402,进入压缩程序400,例如当压缩模块200接收一个4×4像素区块时(图5、参考号码510),压缩程序400进行至步骤403,其中产生有关压缩模块操作模式的询问。在步骤403,如询问的回答指出在非DCT模式的操作中执行压缩模块,则程序400进行至步骤406。在步骤403,如询问的回答指出在DCT模式的操作中执行压缩模块,则程序400进行至步骤404。
在步骤404,在4×4像素区块上执行离散余弦变换(DCL)以产生一个4×4的DCT系数区块(图5,参考号码520)。DCT可以为一个一维的或二维的DCT。接着,压缩程序400可选择地进行至步骤405,其中舍去步骤404中DCT变换所产生的高阶DCT系数(图5中未显示)。接着,程序400进行至步骤406。
DCT变换(步骤404)和高阶DCT系数舍去(步骤405)的组合是特别有效的,其中需要较大的压缩。例如,考虑包括4×8像素区块(即4个像素列×8个像素行)的输入像素区块的情况,而非考虑4×4的像素区块,其中存储器配置维持不变(即4∶1的压缩为必要的)。在步骤404,执行例如一个二维的DCT、产生了一个相应的4×8的DCT系数区块之后,则可选择地舍去高阶DCT系数(即代表像素区块内最高像素频谱的16个DCT系数),以产生一个4×4的DCT系数区块。4×4 DCT系数区块包括t,以形成包含在像素区块内大多数的像素定义域信息(仅无最高频率像素定义域信息)。为了重新配置像素定义域信息(例如解压缩组300上),16个空DCT系数增加至16个未舍去的DCT系数中,以形成一个4×8的DCT系数区块,当根据一个逆转的DCT模块处理时,将产生一个4×8的像素区块。产生的4×8像素区块,可缺少原始4×8像素区块中某些高频率(即详细的)信息,但对应用来说,信息可能并不重要且不具决定性的。
对于4×4像素区块或8×8像素区块的情况,步骤405的高阶舍去将分别导致一个2×4的DCT区块或一个4×8的DCT区块。可调整舍去系数的总数,以舍去更多或较少的DCT系数。例如,可舍去一个8×8像素区块的二维DCT处理所产生的8×8的DCT系数区块,以产生一个4×4的像素区块(在高频率图像信息中有相对应的减少)。
在步骤406,在原始的4×4像素区块(510),和步骤404(520)产生的DCT系数区块、或可选择地步骤405产生的舍去的DCT系数区块上,执行一个二维的Haar子波变换。二维的Haar子波变换导致一个4×4的子波系数区块(图5,参考号码530)。每一个子波系数,代表4×4像素区块510的垂直和水平空间频率成份的特殊频率范围。
现在参考图5,根据代表的垂直和水平频谱,将4×4的子波系数区块(530)分割成四个象限。一个左上的象限,表示为一个LL象限,包括代表4×4像素区块510的低垂直空间频率成份和低水平空间频率成份的子波系数。一个右上的象限,表示为一个LH象限,包括代表低垂直空间频率和高水平空间频率的子波系数。一个左下的象限,表示为一个HL象限,包括代表高垂直空间频率成份和低水平空间频率成份的子波系数。一个右下的象限,表示为一个HH象限,包括代表高垂直空间频率成份和高水平空间频率成份的子波系数。
LL象限,更进一步根据LL象限内代表的垂直和水平频谱,分割成四个子象限。一个左上的子象限,表示为一个LLLL子象限,包括代表4×4像素区块510的实质DC垂直和水平空间频率成份的系数。一个右上的子象限,表示为一个LLLH子象限,包括代表低垂直空间频率和高水平空间频率的子波系数。一个左下的子象限,表示为一个LLHL子象限,包括代表高垂直空间频率成份和低水平空间频率成份的子波系数。一个右下的子象限,表示为一个LLHH子象限,包括代表高垂直空间频率成份和高水平空间频率成份的子波系数。
在执行二维的Haar子波变换(步骤406)之后,压缩程序400进行至步骤408,其中利用缩放因子“2n”(图5,参考号码540)量化子波系数。量化处理减少了精确性,其中用该精确性,用一组量化值或一组缩放来除子波系数,并经过适当地圆整的整数值以代表子波系数。对每一组子波系数相应地设定量化值。以该值量化DCT系数,将许多DCT系数转换成零,由此改良图像压缩的效能。明确的说,优先地量化子波系数,以便较重要的系数(即代表空间频率成份、更容易地提供人类眼睛可辨识的图像信息的子波系数)比较不重要的系数分配到更多的比特位。也就是说,用于表示每一个系数的比特位总数,被减少了与表示图像的系数的相对重要性成反比例的一个数量。
因人类的眼睛对低空间频率图像成份较敏感,故一个图像的DC成份是最重要的。因此,利用缩放因子“四”至八个比特位的精确等级,量化X0系数(即LLLL子象限),导致一个量化的DC成份X0Q。利用一个缩放因子“4*2n”至四个比特位(加上一个符号比特位)的精确等级,量化每一个剩余的LL象限系数,即X1,X2和X3系数,导致量化的LL成份X1Q,X2Q和X3Q。缩放因子m包括一个2-比特位的整数。
在示例的实施例中,发明者将LH象限视为第二个最重要的象限。然而,LH象限的量化,取决于64个比特位的字预算在量化剩余的两个象限中(即HL和HH象限)消耗了多少而定。因此,在处理LH象限之前,先处理两个最不重要的象限--HL和HH象限。
利用一个缩放因子“4*2n”将每一个HL象限系数,即X8,X9,X12和X13量化成两个比特位(加上一个符号比特位)的精确等级上,产生量化的HL成份X8Q,X9Q,X12Q和X13Q。利用缩放因子“4*2n”,将每一个HH象限系数,即X10,X11,X14和X15量化至两个比特位(加上一个符号比特位)的精确等级上,产生量化的HH成份X10Q,X11Q,,X14Q和X15Q。如系数的量化导致零值的系数,则符号比特位不用在系数上。缩放因子n包括一个3-比特位的整数。
在量化了LL,HL和HH象限的系数之后(步骤408),压缩程序400进行至步骤410,其中产生有关零编码系数的总数是否大于3的询问。也就是说,在步骤408量化的系数中,是否有四个或四个以上的系数量化成零值,以致不使用四个或四个以上的符号比特位。
如肯定地回答步骤410的询问,则压缩程序400进行至步骤414,其中利用缩放因子“4*2(n-1)”,量化每一个LH象限系数,即X2,X3,X6和X7Q至三个比特位(加上一个符号比特位)的精确等级上,产生量化的LH成份X2Q,X3Q,X6Q和X7Q。接着,压缩程序400进行至步骤416。
如否定地回答步骤410的询问,则压缩程序400进行至步骤412,接着利用缩放因子“4*2n”,量化每一个LH象限系数,即X2,X3,X6和X7至两个比特位(加上一个符号比特位)的精确等级,导致量化的LH成份X2Q,X3Q,X6Q和X7Q。接着,压缩程序400进行至步骤416。
在步骤416,将量化的子波系数0Q至X1515Q包封(图5,参考号码550),以产生压缩输出流S5’。也就是说,在上述示例的4×4像素区块处理的情况,通过连结缩放系数和缩放因子,形成一个约八字节(64个比特位)的字X0Q,m,X1Q,X2Q,X3Q,n,X4Q,X5Q,X6Q,X7Q,X8Q,X9Q,X10Q,X11Q,X12Q,Xl3Q,X14Q,Xl5Q。
在包封了缩放系数和缩放因子之后(步骤416),程序400进行至步骤418,其中产生有关帧内是否有更多的像素区块要处理的询问。如肯定地回答步骤418的询问,则程序400进行至步骤406(或可选择的至步骤404),并对下一个像素区块重复上述的变换,量化,缩放和包封处理。如否定地回答步骤418的询问,则程序400进行至步骤420,并退出。当例如,接收到随后图像帧的第一个像素区块时,可在步骤402再进入程序。
须注意,包封的次序和本发明的实施无关。然而,因要求某些系数和缩放因子,在例如逆转缩放和变换操作之前使用,故在MPEG类的视频信息流中,发明者标识出所揭示的次序为优化次序。对其它形态的信息流,可以不同地达到最佳化包封次序。
在本发明范例的实施例中,在非DCT模式中处理4×4的像素区块,在DCT模式的操作中处理4×8的像素区块。因此,上述每一个子象限只包含一个子波系数。对那些熟知此技术的人来说,将很容易地了解到因可根据本发明处理任何大小的区块,故子象限可包括一个以上的子波系数。此外,象限和子象限,可包括一个非对称的子波系数群组。
上述讨论的4×8像素区块的情况,为一个非常重要的情况。如上述就图4所讨论的,在Haar子波变换之前,4×8的像素区块可进行DCT处理和舍去,以产生一个4×4的Haar子波系数区块。如未利用可选择的DCT系数舍去步骤,则Haar子波系数区块的每一个象限包括一个2×4的系数象限。在处理一个区块的子象限中,可随意地指定子象限,以强调最重要的信息。例如,在本发明利用一个非舍去的4×8区块的实施例中,LLLL子象限包括子波系数X0,LLLH子象限包括子波系数X4和X5,LLHL子象限包括子波系数X1和X2,且LLHH子象限包括子波系数X3,X6和X7。选择性地,可通过平均或组合产生的子波,将针对每一个子象限产生的子波系数减少成单一信号系数。
图6说明根据本发明的一个压缩处理的方块图。特别地,图6说明一个处理过程600的方块图,用于将像素定义域信息分解成子波定义域信息。特别地,根据一个标准的Haar变换处理四个像素610-613,以在第一个等级的分解上产生四个Haar子波变换系数630-633。此外,对于前两个子波系数630,631,利用Haar子波变换的第二等级的分解用于该处理,以产生一对DCT定义域系数。
在像素区块上,执行利用Haar子波变换的第一个等级的分解,以产生一个相对应的Haar子波系数区块。特别地,通过第一个加法器620,将像素610增加至像素611中,以产生第一个子波系数630(即X0)。通过第二个加法器622,将像素612增加至像素613中,以产生第二个子波系数631(即X2)。从像素610中减去像素611,以产生第三个子波系数632(即X3)。通过第二个减法器623,从像素612中减去像素613,以产生第四个子波系数633(即X3)。因此,像素区块(X0-X3)进行第一个等级的分解,以产生一个相对应的Haar子波系数区域(X0-X3)。
此外,在第一个和第二个子波系数630和631上,执行第二个等级的分解。特别地,通过第三个加法器641,将子波系数630增加至子波系数631中,以产生第五个子波系数650(即Y0);且通过第三个减法器642,从子波系数630中减去子波系数631,以产生第六个子波系数651(即Y1)。因此,利用Haar变换处理像素610-613,以产生第一个等级分解Haar子波系数632和633,及第二个等级分解子波系数650和651。通过以该方式处理像素610-613,产生所得的子波系数632,633,650和651,其代表子波定义域中相同的像素信息。
上述的处理600,适用于例如在非DCT压缩模式中图1或图2的压缩模块200。同样地,在非DCT压缩模式中图1或图3的解压缩模块300,将执行上述处理600的映像图像,以从不同的系数中提取压缩模块200压缩的原始像素区块。
图7说明根据本发明的一个压缩处理的方块图。特别地,图7说明一个处理700的方块图,用于将像素定义域信息分解成子波定义域信息。一个包括像素710-717(即X0-X7)的像素区块,进行DCT变换处理720,以产生一个包括DCT系数730-737(即X0-X7)的相对应的DCT系数区块。舍去高阶DCT系数734-737,同时低阶DCT系数730-733分别和缩放单元740-743耦合。用2的平方根的倒数(即0.7071)作为因子,缩放单元740-743分别缩放低阶DCT系数730-733。
接着,缩放系数(即一相应缩放单元的输出上的系数)进行一个修改的Haar变换(即Haar变换,其中加算和减算的次序已由标准Haar变换的次序修改过)。特别地,通过第一个加法器750,将缩放器740产生的系数增加至缩放器741产生的系数,以产生第一个子波系数760(即Z0)。通过第一个减法器751,从缩放器740产生的系数中减去缩放器741产生的系数,以产生第二个子波系数761(即Z1)。通过第二个加法器752,将缩放器742产生的系数增加至缩放器743产生的系数中,以产生第三个子波系数762(即Z2)。通过第一个加法器753,从缩放器742产生的系数中减去缩放器743产生的系数,以产生第四个子波系数763(即Z3)。
在最先的两个子波系数760和761上,如下执行第二个等级的子波分解。通过一个加法器770,将第一个子波系数760增加至第二个子波系数761中,以产生第一个第二等级的分解子波系数780。通过一个减法器771,从第一个子波系数760中减去第二个子波系数761,以产生第二个等级的分解子波系数781。
因此,已将像素710-717表示的像素区块压缩成两个第一等级的分解子波系数(即762和763),和两个第二等级的分解子波系数(780和781)。
上述的处理700,适用于例如在DCT压缩模式中图1或图2的压缩模块200。同样地,在DCT压缩模式中图1或图3的解压缩模块300,将执行上述处理700的映像图像,以从不同的系数中提取压缩模块200压缩的原始像素区块。
可将本发明用计算机执行的处理、和用于实行该处理的装置的形式实现。亦可将本发明以记录在物理媒介上的计算机程序码的形式实现,如磁碟磁片,CD-ROM,硬驱或任何其它计算机可读取的储存媒体,其中当由一个计算机载入并执行计算机程序码时,计算机变成一个用于实行本发明的装置。亦可将本发明以计算机程序码的形式实现,例如是否储存在储存媒体中,是否通过一个计算机载入和/或执行,是否在某些传输媒体上传输,如电子线路或电缆上、经由光纤或经由电磁幅射,其中当由一个计算机载入和执行计算机程序码时,计算机变成一个用于实行本发明的装置。当在通用的微处理器上执行时,计算机程序码段配置微处理器,以产生特殊的逻辑电路。
虽然在此已显示和详述了并入本发明宗旨中不同的实施例,但对熟知此技术的人来说,很容易地设计出其它许多变化的实施例,而仍处于本发明保护的范围内。
权利要求
1.在用于处理MPEG类的视频流的系统中的一种方法,包括步骤利用Haar子波变换,变换一个像素区块,以形成一个Haar系数区块;利用多个缩放因子,量化Haar系数区块,以形成一个相应的量化Haar系数区块,选取多个缩放因子,以优先地将可用的比特位预算配置给量化的Haar系数,其中量化的Haar系数代表像素区块相对低的垂直和水平空间频率成份;将每一个量化的Haar系数和多个缩放因子中至少一个缩放因子包封成一相应的字;及将该字储存在解码系统内一个存储器模块中。
2.如权利要求1所述的方法,其中对形成一个图像帧的每一个像素区块重复变换、量化、包封和储存的步骤,以便存储器模块储存一个完整的压缩图像帧。
3.如权利要求1所述的方法,更进一步包括步骤从存储器模块读取储存的字;解包储存的字,以检索量化的Haar系数和多个缩放因子中至少一个缩放因子;利用多个缩放因子中检索的至少一个缩放因子,逆转量化Haar系数区块,以形成一个相应的逆转量化Haar系数区块;及利用Haar子波变换,逆转变换逆转量化的Haar系数区块,以形成一个相应的像素区块。
4.如权利要求3所述的方法,其中对形成一个图像帧的每一个像素区块重复变换、量化、包封和储存的步骤,以便存储器模块储存一个完整的压缩图像帧。
5.如权利要求1所述的方法,其中变换的步骤包括利用离散余弦变换(DCT),变换像素区块,以形成一个DCT系数区块及利用修改的Haar子波变换,变换DCT系数区块,以形成Haar系数区块。
6.如权利要求1所述的方法,其中变换的步骤包括利用离散条弦变换(DCT),变换像素区块,以形成一个DCT系数区块;舍去DCT系数区块内多个高阶DCT系数,以形成一个舍去的DCT系数区块;及利用修改的Haar子波变换,变换拾去的DCT系数区块,以形成Haar系数区块。
7.如权利要求6所述的方法,其中舍去的步骤,通过一个至少为二的因子,减少DCT系数区块中的系数总数。
8.如权利要求1所述的方法,其中量化的步骤包括将Haar子波系数和下面四个像限中的一个象限结合一个低垂直和低水平空间频率象限(LL),一个低垂直和高水平空间频率象限(LH),一个高垂直和低水平空间频率象限(HL),及一个高垂直和高水平空间频率象限(HH),LL象限包括一个DC子象限和多个非DC子象限;利用第一个比特位配置,量化和DC子象限相关的Haar系数;利用第二个比特位配置,量化和非DC子象限相关的Haar系数;利用第三个比特位配置,量化和HL和HH象限相关的Haar系数;及利用第四个比特位配置,量化和LH象限相关的Haar系数,其中,如有多于预定数量的LL,HL和HH象限系数被量化成零,则增加第四个比特位配置。
9.如权利要求8所述的方法,其中像素区块包括4×4像素区块的情况第一个比特位配置包括八比特位的配置;第二个比特位配置包括四比特位的配置和一个符号比特位的配置;第三个比特位配置包括两比特位的配置和一个符号比特位的配置;及第四个比特位配置包括两比特位的配置和一个符号比特位的配置,或是三比特位的配置和一个符号比特位的配置。
10.如权利要求8所述的方法,其中利用第一个缩放因子,量化和DC子象限相关的Haar系数;利用第二个缩放因子,量化和非DC子象限相关的Haar系数;利用第三个缩放因子,量化和HL和HH象限相关的Haar系数;及利用第三个缩放因子或第四个缩放因子中的一个,量化和LH象限相关的Haar系数。
11.如权利要求10所述的方法,其中第一个缩放因子为预定值;第二个缩放因子包括被2m所乘的预定值;第三个缩放因子包括被2n所乘的预定值;及第四个缩放因子包括被2(n)或2(n-1)所乘的预定值。
12.如权利要求8所述的方法,其中利用缩放因子“四”,量化和DC子象限相关的Haar系数;利用缩放因子4*2n,量化和非DC子象限相关的Haar系数利用缩放因子4*2n,量化和HL和HH象限相关的Haar系数;及利用缩放因子4*2n或4*2(n-1),量化和LH象限相关的Haar系数。
13.如权利要求12所述的方法,其中对多个像素区块的每一个像素区块,重复变换、量化、包封和储存的步骤;及对每一个相应的Haar系数区块,重新计算缩放因子变量n和m。
14.在用于处理视频信息流内一个或多个图像的系统中,其中每一个图像包括多个像素区块,一种用于处理每一个像素区块的方法,包括步骤根据Haar子波变换,处理像素区块,以产生一个相应的Haar子波系数区块;将Haar子波系数,和下面四个象限之一结合一个低垂直和低水平空间频率象限(LL),一个低垂直和高水平空间频率象限(LH),一个高垂直和低水平空间频率象限(HL),及一个高垂直和高水平空间频率象限(HH),LL象限包括一个DC子象限和多个非DC子象限;以下面的次序,优先地量化和DC子象限相关的Haar系数、和非DC子象限相关的Haar系数、和LH象限相关的Haar系数、及和HL和HH象限相关的Haar系数,其中提供一个相当大的比特位配置给和DC子象限相关的Haar系数,并根据一个比特位配置量化LH象限系数,其中当如果有预定数量以上的LL,HL和HH象限中的系数被量化成零时,则增加该比特位配置;将量化的Haar系数和相关的量化缩放因子指标包封成一个字。
全文摘要
一种利用Haar子波变换、优先量化和缩放程序,用于压缩一个或多个像素区块的方法和装置,以产生一个或多个相应的字,其中相应的字包括优先量化的Haar子波系数和相关的缩放指标。在动态图形专家小组(MPEG)类的处理系统中,通过因子“二”减少存储器资源的需求(如帧储存)。在另一个实施例中,每一个像素区块进行离散余弦变换(DCT)处理和高阶DCT系数舍去,由此产生像素信息改良的压缩率。
文档编号H04N7/30GK1369175SQ99805862
公开日2002年9月11日 申请日期1999年5月7日 优先权日1998年5月7日
发明者李世鹏 申请人:萨尔诺夫公司, 摩托罗拉公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1