应用Golomb-Rice编码法的DCT压缩法的制作方法

文档序号:7526230阅读:158来源:国知局
专利名称:应用Golomb-Rice编码法的DCT压缩法的制作方法
技术领域
本发明涉及图形处理与压縮,尤其涉及应用Golomb — Rice的DCT系数编码法。
背景技术
在数字信号处理的一般规范内,数字图片处理具有显著的地位。在数字图 片处理技术与科学中,人的视觉的重要性颇引人关注。在视频信号收发领域中, 诸如投影电影,正对图像压缩技术进行各种改进。许多现有的和提议的视频系 统都利用了数字编码技术,包括图形编码、图像恢复与图像特征选择。图像编 码表示试图以有效的方式发送数字通信信道的图片,尽量用少的位以减小所需 的带宽,同时使畸变保持在一定极限之内。图像恢复是复原目标的真实图像。 经通信信道发送的编码图像会被各种因素畸变,劣化源由从目标形成图像而引 起。特征选择指某些图片属性的选择,这类属性为在更广泛范围内的识别、分 类与判断所需。
数字电影等视频的数字编码,是一个得益于图像压縮技术改进的领域。数 字图像压縮一般分为两类无损法和有损法。无损图像恢复时不损失任何信息。 有损法涉及某些信息不可挽回的损失,具体视压縮比、压縮算法质量与算法实 施情况而定。通常,为达到经济的数字电影法所期望的压縮比,就考虑有损压 縮法。为实现数字电影质量水平,压縮法应提供目视无损水平的性能。因此, 虽然压縮处理存在数学上的信息损失,但在正常观看条件下,观众应该看不出 该损失造成的图像畸变。
对其它应用即电视系统已开发出诸现有的数字图像压缩技术,这类技术对 原来的应用虽然作出了设计上的折衷,但并未满足电影放映所需的质量要求。数字电影压縮技术应提供看电影的人以前经历过的观看质量。数字电影的 观看质量最好要超过高质量的发行电影拷贝的质量,同时压縮技术应具有可实 践的高编码效率。按本文规定,编码效率指压縮图像质量达到某一定性水平所 需的位速率。而且,系统与编码技术应具有适应不同格式的内在灵活性而且是 经济的,即小规模而有效的译码器或编码器处理。
现有的许多压縮技术虽具有高的压縮水平,但会造成视频信号的质量劣化。 通常,传递压縮信息的技术要求压縮信息以恒定位速率传递。
既能提供高压縮水平又可对视频信号保持期望质量水平的一种压縮技术,
应用了自适应定尺寸的编码"离散余弦变换(DCT)"系数数据块与分块,该 技术下称"自适应块尺寸离散余弦变换(ABSDCT)法。题为"Adaptive Block Size Image Compression Method and System"的美国专利NO. 5, 021, 891 揭示了该技术。该专利己转让给本发明的受让人,通过引用包括在这里。题为 "Adaptive Block Size Image Compression Method and System"的美国专 利N0.5, 107, 345也揭示了 DCT技术,该专利已转让给本发明受让人,通过 弓l用包括在这里。另夕卜,题为"Adaptive Block Size Image Compression Method and System"的美国专利NO. 5, 452, 104还讨论了 ABSDCT技术与"差分象限 树变换"技术的组合使用,该专利也已转让给本发明受让人,通过引用包括在 这里。这些专利所揭示的系统应用了所谓的"帧内"编码法,图像数据的各帧 编码时与任何其它帧的内容无关。应用ABSDCT技术,可实现的数据率能从每 秒15亿位减到每秒0.5亿位,看不出像质劣化。
ABSDCT技术可压縮黑白或彩色图像或者代表图像的信号。彩色输入信号可 以是YIQ格式,Y是辉度或亮度样本,I和Q位色度或彩色样本,格式为4: 4: 4或另一种格式。也可应用其它已知的格式,如YUV、 YCbCr或RGB格式。由于 眼睛对彩色的空间灵敏度低下,大多数研究表明,沿水平与垂直方向把彩色分 量的副样本减小到1/4是合适的,因而视频信号可用四个亮度分量和两个色度 分量表示。
应用ABSDCT, 一般把视频信号分成若干像素块来处理。对每一块,把亮度 与色度分量传到块交织器,例如可把16X16 (像素)块送到块交织器,后者排 列或组织各16X16块内的图像样本,产生数据块和合成分块以作离散余弦变 换(DCT)分析。DCT操作器是一种把时空取样的信号转换成用频率表示的方法。 转换成频率表示后,DCT技术已被证明适合极高的压縮水平,因为设计的量化器可以利用图像的频率分布特性。在一实施例中, 一个16X16DCT用于第一排 序,四个8X8DCT用于第二排序,16个4X4DCT用于第三排序,62个2X2DCT 用于第四排序。
DCT操作减少了视频源固有的空间冗余度。在DCT之后,大部分视频信号能 量易集中于少数DCT系数。为减少DCT系数间的冗余度,可应用附加变换,即 "差分象限树变换(DQT)"。
对16X16块和各分块,分析DCT系数值和DQT值(若仅用叫T)确定块或 分块编码所需的位数,然后选用要求最少位数编码的块或分块组合代表图像 段。例如,可选择两个8X8分块、六个4X4分块和八个2X2分块代表该图像 段。
接着,正确地依次持选择的块或分块组合排成16X16块。然后,DCT/DQT 系数值经历频率加权、量化和编码(如可变长度编码)、准备传输。上述ABSDCT 技术虽然便于执行,但运算量很大,故实施该技术的硬件难以密集化。
可变长度编码法一直以连续长度与尺寸的形式实施。其它压縮法如"联合 照相专家组(JPEG)"或"活动图片专家组(MPEG — 2)",都对整个处理的 块尺寸应用了普通的Z字形扫描法。但应用ABSDCT,则根据数据块内的变化生 成不同的块尺寸。有些编码法如Huffman码,包括一连串零再接一非零系数。 然而,当源码元概率为2的负幂时,Huffman编码更优。不过在连续长度/尺寸 对情况下,码元概率很少为2的负幂。
再者,Huffman编码还要求存贮预计算码字的码簿,而码簿的规模很大,最 长的码字很长,故对连续长度/尺寸对码元用Huffman编码,效率并不高。

发明内容
描述一种以无损方式码量化DCT系数的连续长度与幅度以实现压縮的设备 与方法。具体地说,量化后用Golomb —Rice编码法对DCT系数的零连续与非 零幅度都编码。发现利用数据指数分布的方法如Golomb — Rice编码法,可实 现比其它方法更高的编码效率。
本发明是一种基于质量的图像压縮系统与方法,应用了离散余弦变换系数 数据自适应定尺寸的块和分块以及基于质量的量化稳定系数。像素数据块被输 入编码器,后者包括一块尺寸指定(BSA)元件,把输入的像素块分割后作处 理。块尺寸指定基于输入块和再细分块的变化。通常,将变化较大的区域细分 成较小的块,而变化较小的区域不再细分,使块与分块的平均值落入不同的预定范围内。这样,根据其平均值,首先按其标称值修改块的变化阈值,然后将 块的变化与阈值比较,若变化大于阈值,再细分该块。
将块尺寸指定供给变换元件,后者把像素数据换成频域数据。只对通过块 尺寸指定选择的块和分块变换,然后经量化与串行化对变换数据标定。变换数 据的量化基于某个像素亮度,诸如调节反差、系数计数、速率畸变、块尺寸指
定密度的定标系数和/或过去的定标系数。z字串行化基于对同一值建立可能的
最长连续长度,然后用可变长度编码器编码数据流以供传输。应用了基于指数
分布的编码法,如Golomb — Rice编码。具体而言,对表示零的数据确定零连 续长度。Golomb参数的函数,而余数被编码为零连续长度,Golomb参数和窗 的函数。编码的窗与余数串接。对表示非零的数据,把非零数据编码为非零数 据值及其符号的函数。编码的数据经传输信道送给译码器,像素数据重建后供 显示。
因此, 一实施例的一个方面不要求先验码生成。
一实施例的另一个方面不要求存贮使用的内容广泛的码簿。
一实施例的又一个方面减小了硬件实现所需的尺寸。
一实施例再一个方面实现了高编码效率。
一实施例还有一个方面利用了 DCT数据的指数分布。


通过下面结合附图所作的详述,本发明的诸特征与优点就更清楚了,图中 用相同的标号标识对应的物件,其中
图1是图像压縮与处理系统中编码器部分的框图; 图2是图像压縮与处理系统中译码器部分的框图; 图3是基于变化的块尺寸指定涉及的处理步骤的流程图; 图4a示出DCT系数矩阵中零连续长度Y分量的指数分布; 图4b示出DCT系数矩阵中零连续长度"分量的指数分布; 图4c示出DCT系数矩阵中零连续长度Cr分量的指数分布; 图5a示出DCT系数矩阵中幅度大小Y分量的指数分布; 图5b示出DCT系数矩阵中幅度大小Cb分量的指数分布; 图5c示出DCT系数矩阵中幅度大小Cr分量的指数分布; 图6示出Golomb — Rice编码过程;和 图7示出Golomb — Rice编码设备。
具体实施例方式
为利于数字信号纯属并分享相应的好处, 一般必须应用某种信号压縮形式。 为实现得到图像的高度压縮,保持图像的高质量也很重要。再者,在许多场合 中,密集的硬件实施还期望着运算效率。
在详述本发明一实施例之前,应该理解,本发明的应用并不限于下面描述 或图示诸元件的结构与安排的细节,本发明具有其它诸实施例的功能并以各种 方式实施。还应明白,本文使用的术语出于描述目的,不可视为限制。
一实施例一个方面应用的图像压縮,基于离散余弦变换(DCT)技术,诸如 在1999年11月8日提交的题为"Contrast Sensitive Variance Based Adaptive Block Size DCT Image Compression"的共同待批美国专利申请连续号09/436, 085所揭示的技术,该申请已转让给本申请受让人,通过引用包括在这里。2000 年1月28日提交的题为"Quality Based Image Compression"的共同待批美 国专利申请09/494, 192,描述了应用DCT的图像压縮与解縮系统,该申请已 转让给本申请受让人,通过引用包括在这里。通常,准备以数字域处理的图形, 其像素数据被分成不重叠块的阵列,尺寸为NXN,可对每一块作二维DCT由下 式定义
a/JV^M附=。n=o
'(2m + l);r/fc'
cos
'(2 + 1)丌/' ~~^
,Q","iV —1
式中,,酔u如y,并且
X (m, n)是NXM块内位置(m, n)处的像素,而 X (k, 1)为相应的DCT系数。
因像素值非负数,故DCT分量X (0, 0)总是正数,通常具有最大能量。其 实对典型的图像而言,大部分变换能量集中在分量X (0, 0)周围,这一能量 压縮特性使DCT技术成为如此受人关注的压縮方法。
该图像压縮技术运用反差自适应编码进一步减小位速率。据观察,大多数 自然的图像由变化相对慢的平坦区和目标边界域高反差结构等忙碌区组成。反 差自适应编码法利用这一因素,对忙碌区分配更多的位,对不忙碌区分配较少 的位。
反差自适应方法应用帧内编码(空间处理),不用帧间编码(时空处理)。帧间编码除了处理电路更复杂外,还要求多个帧缓冲器。在许多场合中,实际 实施要求降低复杂性。帧内编码还适合使时空编码法效能低下的场合,如可将 每秒24帧的影片归入这一类,因为机械快门造成的积分时间相对短,引起更 高度的时间混淆。对于不稳定的迅速移动,设想的帧间相关性被破坏。在涉及
50HZ和60HZ两种电力线频率时,帧内编码还更易标准化。目前电视信号以50HZ 或60HZ发射,应用数字方式的帧内法能适应50HZ与60HZ两种操作,通过平 衡帧速率与空间分辨率,甚至还适合每秒24帧的影片。
出于图像处理目的,对分为不重叠块阵列的像素数据作DCT操作。注意, 虽然这里讨论的块尺寸为NXN,但可以设想出使用各种块尺寸,例如可使用N XM块的尺寸,N与M均为整数,而且M大于或小于N。另一要点是可将块分成 至少一层分块,如N/ixN/i、 N/ixN/j、 N/ixM/j等,i和j均为整数。再者, 这里讨论的示例性块尺寸是16X16像素块,带相应的DCT系数的块与分块。 还可设想出各种其它整数,诸如使用奇偶整数值,例如9X9。
图1和2示出的图像处理系统100,结合了可配置串行化器的理念。该系统 100包括压縮接收视频信号的编码器104。压縮信号用传输信道或物理媒体108 发送,被译码器112接收,后者把收到的编码数据译码成图像样本再显示。
图像一般被分成像素块作处理。彩色信号用RGB/YdC2转换器116从RGB空 间转换到YdC2空间,Y是辉度或亮度分量,C,与C2为色度或彩色分量。由于眼 睛对彩色的空间灵敏度低下,故许多系统在水平与垂直方向把d与C2分量的亚 取样减到1/4。但亚取样并非必需。在某些场合如涉及"数字电影"的场合中, 4: 4: 4格式的全分辨率图像极为有用或者是必需的。两种可能的YdC2表示 法是YIQ和YUV表示法,二者为本领域熟悉。还可应用YUV表示法的变型,即
Y CbCr,这可进一步分为奇偶分量。因而在一实施例中,使用了表示法Y —偶、
Y —奇、Cb—偶、Cb—奇、Cr —偶、Cr —奇。
在一较佳实施例中,处理每个奇偶y、 Cb与Cr分量,不作亚取样,因而向编 码器104输入16X16像素块的六个分量。为了说明,示出Yft分量的编码器104, 对Y ^分量和奇偶a与Cr分量同样使用编码器。编码器104包括块尺寸指定元 件120,执行块尺寸指定以供视频压縮,并根据块中图像的感性特征决定对16 X16块的块分解。根据16X16块内的活动性,块尺寸指定以象限树方式把各 16X16块细分成更小的块,如8X8、 4X4禾n 2X2。块尺寸指定元件120生成 称为PQR数据的象限树数据,长度为1 21位。因此,若块尺寸指定决定要划分一16X16块,就设置PQR数据的R位,后接Q数据对应于四个划分的8X8 块的四个附加位。若块尺寸指定块定细分任一8X8块,则对各细分的8X8块 添加P数据的四个附加位。
现参照图3,该流程图详细示出了块尺寸指定元件120的操作。块变化被用 作决定的细分块的量度。在步骤202开始,读出像素的一个16X16块。在步 骤204,计算该块的变化v16,算式如下
1 W-1 W-l 卩 i W-1 w-i 、2
=0 >0
乂 iV,=o j=o
式中N二16, Xi, j是NXN块内第i行第j列的像素。在步骤206,若块的 平均值在两预定值之间,就先修改变化阈值T16。得出新阈值T'16,再将块变 化与新阈值T'16比较。
若变化v16不大于阈值T16,则在步骤208把16X 16块的起始地址写入暂 存器,并将PQR数据的R位置O,表示不细分该16X16块。于是算法读像素下 一个16X16块。若变化vl6大于阈值T16,则在步骤210把PQR数据的R位置 1,表示要将该16X16块细分成四个8X8块。
如步骤212所示,四个8X8块i二l: 4连续考虑再细分。在步骤214,算 出各8X8块的变化v8i。在步骤216,若块的平均值在两预定值之间,就先修 改变化阈值T8,得出新阈值T'8,然后将块变化与该新阈值比较。
若变化v8i不大于阈值T8,则在步骤218把8X8块的起始地址写入暂存器, 相应的Q位Qi置O。然后,处理下一8X8块。若变化v8i大于阈值T8,则在 步骤220将相应的Q位Qi置1,表示要将该8X8块细分成四个4X4块。
如步骤222所示,考虑四个4X4块ji=l: 4再细分。在步骤224,算出各 4X4块的变化v4i」。在步骤226,若该块的平均值在两预定值之间,先修改变 化阈值T4,得出新阈值T'4,再将块变化与该新阈值比较。
若变化V4i」不大于阈值T4,则在步骤228写4X4块的地址,相应的P位Pu 置0,再处理下一4X4块。若变化v4ij大于阈值T4,则在步骤230将相应的P 位Pi」置l,表示要把该4X4块细分成四个2X2块。此外,将四个2X2块的 地址写入暂存器。
阈值T16、 T8与T4为预定常数。这就是硬判断。另外,可实行自适应或软 判断,例如软判断根据2NX2N块的平均像素值改变诸变化的阈值,其中N可 以是8、 4或2,从而把平均像素值的函数用作阈值。为了说明,看下列实例。对16X16、 8X8禾D4X4块,分别设Y分量的预 定变化阈值为50、 1100和880,换言之,T16 = 50, T8=1100, T4 = 880。设平 均值范围为80和100。假定对16X16块算出的变化为60。因60大于T16,而 平均值90在80与IOO之间,故将16X16块细分成四个8X8分块。假定对8 X8块算出的变化为1180、 935、 980与1210,因两个8X8块的变化超出78, 故将这两块再细分,得出总共八个4X4分块。最后,假定八个4X4块的变化 为620、 630、 670、 610、 590、 525、 930与690,相应的平均值为90、 120、 110、 115,因第一个4X4块的平均值在(80, 100)范围内,其阈值应减小到 T,4 = 200,这小于880,故除了第七4X4块以外,也要细分该4X4块。
注意,对亮度分量Y《和色度分量Cb—fl、 Cb-#、 Cr—ii与Cn,可用类似方法 指定块尺寸。色度分量以水平、垂直两种方法取io分之一。
另须注意,虽然把块尺寸指定描述为自上而下的方式,其中首先评估最大 的块(本例为16X16),但可以换用自下而上的方式,即首先评估最小的块(本 例为2X2)。
再回看图l, PQR数据与选择块的地址一起送到DCT元件124,后者用PQR 数据对选择的块执行合适尺寸的离散余弦变换,只是选择的块需作DCT处理。
图像处理系统100还包括减少DCT诸DC系数之间冗余度的DQT元件128。 DC系数位于各DCT块的左上角, 一般比AC系数大,尺寸差异造成难以设计出 有效率的可变长度编码器,故减小DC系数之间的冗余度是有利的。
DQT元件对DC系数执行二维DCT, 一次取2X2。从4X4块内的2X2块开 始,对四个DC系数作二维DCT,这种2X2DCT称为差分象限树变换,或四个 DC系数的DQT。接着,用DQT系数与一8X8块内三个邻近DC系数一起计算下 一层DQT。最后,用一 16X16块内四个8X8块的DC系数计算DQT。这样在16 X16块内,有一个真实的DC系数,其余都是对应于DCT和DQT的AC系数。
对量化器设置变换系数(DCT与DQT两种)作量化。在一实施例中,DCT系 数利用频率加权掩码(FWM)和量化标定系数作量化。FWM是一张与输入DCT系 数块同尺寸的频率权重表,频率加权对不同的DCT系数加不同的权重。加权设 计成强调人的视觉或光学系统对其频率分量更敏感的输入样本,不注重视觉或 光学系统对其频率分量不大敏感的样本。加权法还可根据视距等因素来设计。
权重按经验数据选择。在国际标准组织于1994年发布的题为"Digital Compression and encoding of continuous—tone still image—parti:Requirements and guidelines"的IS0/IEC ITC1CD10918中,揭示了对8X8DCT
系数设计加权掩码的方法,通过引用包括在这里。 一般设计两个FWM, 一个用
于亮度分量, 一个用于色度分量。通过取1/10和对8X8块内插16X16,得到
块尺寸2X2、 4X4的FWM表,标定系数控制了量化系数的质量与位速率。
这样,各DCT系数按下式量化 <formula>formula see original document page 15</formula>式中DCT (i, j)是输入DCT系数,fwm (i, j)是频率加权掩码,q为标 定系数,DCTq (i, j)为量化的系数。注意,根据DCT系数的符号,大括号里 的第一项作四舍五入。DQT系数还用适当的加权掩码量化,不过可对各Y、 Cb 与Cr分量应用多张表或掩码。
然后,用量化器130或标定系数元件对像素数据和频率加权掩码块标定。 DCT系数量化将其大部分减为零而导致压縮。在一实施例中,有32个对应于平 均位速率的标定系数。与MPEG2等其它压縮法不同,平均位速率的控制基于处 理图像的质量而不是目标位速率与缓冲器状态。
为进一步提高压縮,把量化的系数送到扫描串行化器134,后者扫描量化系 数块,产生串行化的量化系数流。可应用Z字形扫描、列扫描或行扫描。还可 选用若干不同的Z字形扫描图案及其图案。 一较佳技术对Z字形扫描应用8X8 块尺寸。量化系数的Z字形扫描改善了遇到零值连续大的机会,而这种零连续 本身具有递减的概率,可用Huffman码有效地编码。
串行化、量化的系数流被送到可变长度编码器138。 Z编码器在零与非零系 数之间分离量化系数,参照图6作详述。在一实施例中,应用了 Golomb —Rice 编码法,有利于编码指数分布的非负整数。应用Golomb码对指数分布状变量 提供更短长度码,对压縮更佳。
在Golomb编码连续长度中,Golomb码被非负整数m参数化,如给出参数m, 正整数n的Golomb编码表示为一元码的商n/m后接用修改二元码表示的余数, 若该余数小于2"°g"] — m,它为[1og2m]位长,否则为[1og2m]位长。Golomb —Rice 编码是Golomb编码的特殊情况,参数m表示为m二2K。在此情况下,通过将参 数n的二进制表示右移K位得到商n/m,而n/m的余数用n的最低K位表示。 因此,Golomb — Rice码是两者的串接。Golomb — Rice编码法可对两侧几何形 状(指数)分布的正负两种整数编码,公式如下A(;c) = caW ( 1 )
式(1)中,a是表征X概率衰落的参数,C为归一化常数。因p。 (X)是 单调的,故可看出,整数值序列应满足
pa(X =0)、(、 =-l)2/ a0, =+l)^a(jc, =-2)2..' (2) 如图4a 4c和5a 5c所示,量化的DCT系数矩阵中的零连续与幅度都具 有指数分布,图中示出的分布基于来自实际图像的数据。图4a示出零连续长 度与相对频率的Y分量分布400,同样地,图4b和4c示出零连续长度与相对 频率410和420的Cb与Cr分量分布。图5a示出幅度大小与相对频率的Y分 量分布,同样地,图5b和5c分别示出幅度大小与相对频率510和520的Cb 与Cr分量分布。注意,在图5a 5c中,图表示DCT系数大小的分布。每个大 小代表一系数值范围,例如四的大小值的范围为{一15, 一14,……一8, 8,…… 14, 15},共16个值。同样地,+的大小值的范围为{一1023, 一1022,……,
一512, 512, ......, 1022, 1023},共1024个值。从图4a 4c和5a 5c可以
看出,连续长度和幅度大小都具有指数分布。幅度的实际分布适合公式(3):
)=孕exp卩lU," 0 (3 )
式(3)中,Xu代表沿垂直与水平维度分别对应于频率K与1的DCT系数, 而均值ixx二l/V5X,变化^2=1。因而在处理DCT中的数据时,以所述方式 应用Golomb — Rice编码法更佳。
虽然下面描述图像数据压縮,但诸实施例同样适用于压縮音频数据的实施 例。压缩图像数据时,图像或视频信号可以是例如RGB或YIQ或YUV或YCbCr 分量,具有线性或对数编码像素值。
图6示出零与非零系数的编码过程600。当扫描DCT矩阵时,零与非零系数 被分别处理并分开(604)。对零数据,确定零连续长度(608)。注意,连续 长度为正整数。例如,若求出连续长度为n,则确定Golomb参数m (612)。 在一实施例中,Golomb参数定为连续长度的函数。在另一实施例中,由式(4) 确定Golomb参数(m):
w = [log2 w] (4 )
另一方法是用计数器或寄存器统计连续长度的长度和有关的Golomb参数 (616)。为编码零连续长度n,对商作编码(620)。在一实施例中,商被定为零连续长度和Golomb参数的函数。在另一实施例中,商(Q)由式(5)确

<formula>formula see original document page 17</formula>(5)
在一实施例中,商Q以一元码编码,要求Q+l位。接着,对余数编码(624)。 在一实施例中,余数被编码为连续长度与商的函数。在另一实施例中,用式(6) 确定余数(R):
<formula>formula see original document page 17</formula>(6)
在一实施例中,余数R以m位二进制码编码。之后确定商Q与余数R,将Q 与R的代码串接起来(628),代表零连续长度n的总码。
非零函数也用Golomb — Rice编码。因系数幅度可正可负,故必须使用符号
位并编码给定幅度的绝对值。给出的非零函数的幅度为x,可把该幅度表示为
幅度绝对值与符号的函数。因此,可用式(7)把幅度表示为y: [如果xk0 ,7、 户Wc卜l 其它 ( )
相应地,非零系数值有选择地用计数器或寄存器统计(632)。然后,判断 该幅度大于还是等于零(636),若是,把该值编码为给出值的二倍(640); 若不是,则把该值编码为小于绝对值二倍的值(644)。还可应用其它映射方 法,关键在于不要求区分值符号的额外位。
编码公式(7)表示的幅度,造成x的正值为偶整数,负值变成奇整数。而 且,该映射法把x的概率指定保留在式(2)中。式(7)所示的编码法,其优 点是可避免用符号位代表正负数。映射后,以对零连续同样的方式对y编码, 操作一直连续到当前块中扫描了所有的系数。
重要的是,虽然本发明诸实施例把系数值和连续长度定为式(1) (7) 的函数,但不一定应用精密的公式(1) (7)。利用Golomb —Rice编码和 DCT系数的指数分布,可更有效地压縮音像数据。
由于编码后的零连续与非零幅度区分不出,故必需应用固定长度的专用前 缀码来标志第一零连续的出现。在遇到一非零幅度后,通常在块中会遇到全零, 此时使用块结束(E0B)码而不用Golomb — Rice码更有效。EOB码仍可选为专 用固定长度码。
根据式(1)或(3) , DCT系数矩阵中幅度或连续长度的概率分布用ct或入 参数化,这意味着若出现不是一特定DCT系数块的范围,就可提高编码效率,于是可使用一合适的Golomb — Rice参数编码有关量。在一实施例中,对每个 连续长度与幅度大小值用计数器或寄存器来计算各自累计值和相应的该值出 现次数。例如,若存贮累计值与累计元件数的寄存器分别为Rn与Nn,则下面 的式(6)可用作编码连续长度的Rice — Golomb参数
(6)
对幅度可应用类似方法。
回过来再看图l,编码器104生成的压縮图像信号,可用缓冲器142暂存, 然后用传输信道108发送给译码器112。传输信道108可以是物理媒体,如磁
学或光学存贮装置,或是有线或无线传输处理或设备。含块尺寸指定信息的PQR 数据也送到译码器112 (图2),后者包括缓冲器164和可变长度译码器168, 译码器168对连续长度值和非零值译码,其操作方式与图6所述译码器相似但 相反。
可变长度译码器168的输出供给逆串行化器172,后者按采用的扫描法排列 诸系数。例如,若应用混合的Z字形扫描、垂直扫描和水平扫描,逆串行化器 172就根据应用的扫描类型正确地重排诸系数。逆串行化器172接收PQR数据, 帮助将诸系数正确地排列成一合成系数块。
由于使用了量化器标定系数和频率加权掩码,为使处理恢复原状,把合成 块送给逆量化器174。
若应用了差分象限树变换,则把系数块送到IPQT元件186,后接IDCT元件 190,否则直接送到IDCT元件190。 IDQT和IDCT元件186与190对系数作逆 变换,产生像素数据块。然后该像素数据必须内插转换成RGB形式,再存贮起 来供将来显示。
图7示出一 Golorab —Rice编码设备700,该设备较佳地执行图6所述的过 程。确定器704确定连续长度(n)和Golomb参数(m)。或者对每个连续长 度与幅度大小值用计数器或寄存器708计算各自的累计值和相应的该值出现的 次数。编码器712将商(Q)编码为连续长度和Golomb参数的函数。在另一实 施例中,编码器712还把非零数据编码为非零数据值及其符号的函数。Q值与 R值用串接器716串接。
作为举例,结合本文揭示的诸实施例描述的诸示例性逻辑块、流程图和步 骤,可用硬软件实现,包括专用集成电路(ASIC)、可编程逻辑装置、分立门或晶体管逻辑、诸如寄存器与FIFD等分立硬件元件、执行固件指令组的处理
器、任一普通可编程软件与处理器或它们的任何组合。处理器以微处理器有利,
但也可以是任一普通处理器、控制器、微控制器或状态机。软件可驻留于RM、 闪光天存储器、R0M、寄存器、硬盘、可卸盘、CD-R0M、 DVD-R0M或本领域已知 的任何其它形式的存贮媒体。
前述诸较佳实施例供本领域技术人员制作或应用本发明,对这些实施例的 各种修正对他们是显而易见的,本文限定的一般原理可应用于其它实施例而无 须应用创造才智。因此,本发明并不限于本文所示的诸实施例,而是负荷本文 揭示的原理与新特征最广泛的范围。
本发明的其它特征和优点在下面的权利要求中提出。
权利要求
1.一种对量化频率表示的数据进行编码的处理器,其特征在于,所述处理器被配置为确定零连续长度(n);把Golomb参数(m)定为零连续长度(n)的对数函数;把商(Q)编码为零连续长度(n)和Golomb参数(m)的函数;把余数(R)编码为零连续长度(n)、Golomb参数(m)和商(R)的函数;和串接编码的商与编码的余数。
2. 如权利要求l所述的处理器,其特征在于,用公式m-[log2n]来确定 Golomb参数(m)。
3. 如权利要求l所述的处理器,其特征在于,用公式Q-[n/2 来确定商 (Q)。
4. 如权利要求l所述的处理器,其特征在于,用公式R-n — 2^来确定余 数(R)。
5. 如权利要求1所述的处理器,其特征在于,用公式Q = n/m来确定商(Q)。
6. 如权利要求l所述的处理器,其特征在于,所述处理器把编码的商与编 码的余数串接,或把编码的余数与编码的商串接。
7. 如权利要求l所述的处理器,其特征在于,所表示的数据包括零数据与 非零数据,所述零连续长度(n)与所述零数据相关联,所述处理器进一步被 配置为把非零数据编码为非零数据值的函数。
8. 如权利要求7所述的处理器,其特征在于,所述处理器用下式对所述非零数据进行编码f 2;c 如果;c2 0'1*卜1 其它 式中,x是准备编码的非零数据的幅度。
9.如权利要求7所述的处理器,其特征在于,所述处理器进一步被配置为 统计零连续长度(n)和非零幅值及这些值相应出现的次数。
10. —种对量化频率表示的数据进行编码的方法,其特征在于,所述方法包括确定零连续长度(n);把Golomb参数(m)定为零连续长度(n)的对数函数;把商(Q)编码为零连续长度(n)和Golomb参数(m)的函数;把余数(R)编码为零连续长度(n) 、 Golomb参数(m)和商(R)的函数;禾口串接编码的商与编码的余数。
11. 如权利要求IO所述的方法,其特征在于,用公式m-[log2n]来确定 Golomb参数(m)。
12. 如权利要求IO所述的方法,其特征在于,用公式Q-[n/2"]来确定商 (Q)。
13. 如权利要求IO所述的方法,其特征在于,用公式R二n — 2"Q来确定余 数(R)。
14. 如权利要求10所述的方法,其特征在于,用公式Q = n/m来确定商(Q)。
15. 如权利要求IO所述的方法,其特征在于,所述串接操作包括把编码 的商与编码的余数串接,或把编码的余数与编码的商串接。
16. 如权利要求IO所述的方法,其特征在于,所表示的数据包括零数据与 非零数据,所述零连续长度(n)与所述零数据相关联,所述方法还包括把非零数据编码为非零数据值的函数。
17. 如权利要求16所述的方法,其特征在于,编码所述非零数据包括用下式如果x2 0 其它式中,x是准备编码的非零数据的幅度。
18. 如权利要求16所述的方法,其特征在于,所述方法还包括统计零连续 长度(n)和非零幅值及这些值相应出现的次数。
19. 一种对量化频率表示的数据进行编码的设备,其特征在于,所述设备 包括第一确定器,确定零连续长度(n);第二确定器,把Golomb参数(m)确定为零连续长度(n)的对数函数;编码器,把商(Q)编码为零连续长度(n)和Golomb参数(m)的函数, 并且把余数(R)编码为零连续长度(n) 、 Golorab参数(m)和商(R)的函数; 禾口串接器,串接编码的商与编码的余数。
20. 如权利要求19所述的设备,其特征在于,用公式m-[log2n]来确定 Golomb参数(m)。
21. 如权利要求19所述的设备,其特征在于,用公式Q-[n/2"]来确定商 (Q)。
22. 如权利要求19所述的设备,其特征在于,用公式1 = 11_2%!来确定余 数(R)。
23. 如权利要求19所述的设备,其特征在于,用公式Q = n/m来确定商(Q)。
24. 如权利要求19所述的设备,其特征在于,所述串接器把编码的商与编 码的余数串接,或把编码的余数与编码的商串接。
25. 如权利要求19所述的设备,其特征在于,所表示的数据包括零数据与 非零数据,所述零连续长度(n)与所述零数据相关联,所述编码器进一步把 非零数据编码为非零数据值的函数。
26. 如权利要求25所述的设备,其特征在于,所述编码器用下式对所述非 零数据进行编码其它式中,x是准备编码的非零数据的幅度。
27. 如权利要求25所述的设备,其特征在于,所述设备还包括计数器, 统计零连续长度(n)和非零幅值及这些值相应出现的次数。
28. —种对量化频率表示的数据进行编码的设备,其特征在于,所述设备 包括用于确定零连续长度(n)的装置;用于把Golomb参数(m)确定为零连续长度(n)的对数函数的装置; 用于把商(Q)编码为零连续长度(n)和Golomb参数(m)的函数的装置; 用于把余数(R)编码为零连续长度(n) 、 Golomb参数(m)和商(R)的 函数的装置;和用于串接编码的商与编码的余数的装置。
29. 如权利要求28所述的设备,其特征在于,用公式m二[log2n]来确定 Golomb参数(m)。
30. 如权利要求28所述的设备,其特征在于,用公式Q二[n/2"]来确定商 (Q)。
31. 如权利要求28所述的设备,其特征在于,用公式R二n — 2"Q来确定余 数(R)。
32. 如权利要求28所述的设备,其特征在于,用公式Q = n/m来确定商(Q)。
33. 如权利要求28所述的设备,其特征在于,用于串接的装置把编码的商 与编码的余数串接,或把编码的余数与编码的商串接。
34. 如权利要求28所述的设备,其特征在于,所表示的数据包括零数据与 非零数据,所述零连续长度(n)与所述零数据相关联,所述设备进一步包括:用于把非零数据编码为非零数据值的函数的装置。
35. 如权利要求34所述的设备,其特征在于,用于编码所述非零数据的装置使用下式f 2;c 如果;c2 0,一 12卜| _ 1 其它 式中,x是准备编码的非零数据的幅度。
36. 如权利要求34所述的设备,其特征在于,所述设备还包括用于统计 零连续长度(n)和非零幅值及这些值相应出现的次数的装置。
37. —种有形计算机可读媒体,包括使计算机对量化频率表示的数据进行 编码的代码,其特征在于,所述有形计算机可读媒体包括用于确定零连续长度(n)的代码;用于把Golomb参数(m)确定为零连续长度(n)的对数函数的代码; 用于把商(Q)编码为零连续长度(n)和Golomb参数(m)的函数的代码; 用于把余数(R)编码为零连续长度(n) 、 Golomb参数(m)和商(R)的 函数的代码;和用于串接编码的商与编码的余数的代码。
38. 如权利要求37所述的有形计算机可读媒体,其特征在于,用公式111 = [1og2n]来确定Golomb参数(m)。
39. 如权利要求37所述的有形计算机可读媒体,其特征在于,用公式0 = [n/2"]来确定商(Q)。
40. 如权利要求37所述的有形计算机可读媒体,其特征在于,用公式R二n 一2"Q来确定余数(R)。
41. 如权利要求37所述的有形计算机可读媒体,其特征在于,用公式0 = n/m来确定商(Q)。
42. 如权利要求37所述的有形计算机可读媒体,其特征在于,用于使计算 机进行串接的代码包括把编码的商与编码的余数串接,或把编码的余数与编 码的商串接。
43. 如权利要求37所述的有形计算机可读媒体,其特征在于,所表示的数 据包括零数据与非零数据,所述零连续长度(n)与所述零数据相关联,所述 有形计算机可读媒体进一步包括-用于使计算机把非零数据编码为非零数据值的函数的代码。
44. 如权利要求43所述的有形计算机可读媒体,其特征在于,编码所述非零数据包括使用下式f 2x 如果x》0其它式中,x是准备编码的非零数据的幅度。
45.如权利要求43所述的有形计算机可读媒体,其特征在于,所述有形计 算机可读媒体还包括用于使计算机统计零连续长度(n)和非零幅值及这些 值相应出现的次数的代码。
全文摘要
提出一种对量化频率表示的数据编码的设备与方法(600),所述数据包括零和表示非零的数据。对表示零的数据,确定零连续长度。把Golomb参数定为该零连续长度的函数,商编码为零连续长度和Golomb参数的函数,余数编码为零连续长度、Golomb参数和商的函数。编码的商与余数串接。对表示非零的数据,把非零数据编码为该非零数据值及其符号的函数。
文档编号H03M7/40GK101588502SQ20091014881
公开日2009年11月25日 申请日期2002年6月17日 优先权日2001年6月29日
发明者K·蒂亚加拉简 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1