一种反映人眼视觉特性的JPEG压缩编码
2009-08-31
作者:唐跃林 肖沙里 姚富光 丘
摘 要:在分析标准JPEG编码与解码过程的基础上,利用人眼的视觉特性调整量化矩阵,提高了编码器的压缩性能。
关键词:JPEG 图像压缩 人眼视觉特性 量化
JPEG标准不仅适用于静止图像的压缩,也是电视图像序列中帧内图像编码所采用的方法。由于JPEG具有高的压缩比和较小的图像质量失真,使得其广泛应用于多媒体和网络程序中。在JPEG编码过程中,DCT系数的量化对图像质量和压缩率有着重要影响。本文将讨论根据人眼的视觉特性来相应地调整量化矩阵,以提高编码器的压缩性能。
1 JPEG编码与解码分析
JPEG标准有4种编码方式,其中基于DCT的编码与解码过程分别如图1和图2所示。
在JPEG编码过程中,正向离散余弦变换(FDCT)、DC差分脉冲编码、AC系数排序及熵编码均可认为对图像质量没有影响。而对图像质量和压缩率起关键作用的是量化过程。对DCT系数进行量化的目的是:在满足图像质量的要求下进一步提高压缩率。量化的出发点是对于人眼敏感的低频系数及亮度信息进行细量化,以提高图像的质量。而对于人眼不敏感的高频系数及色度信息采用较大的量化间隔,以取得更大的压缩比。量化的方法是对每一个DCT系数F(u,v)除以相应的量化间隔Q(u,v)并取整,即:FQ(u,v)=Integer Round(F(u,v)/Q(u,v))。
评价JPEG压缩算法性能的一个重要指标是看它能否在给定的失真下产生最小的压缩文件,或者能否在给定压缩文件大小的情况下产生最小失真。而量化是影响图像质量和压缩文件大小的主要因素。细量化带来小的重建图像失真,但文件大小却得不到控制。粗量化可以得到更大的压缩比,而图像质量却得不到保证。如何在保证图像质量的情况下取得更高的压缩比一直是人们关注的焦点。本文在JPEG基本顺序编码系统下,考虑人眼视觉特性,利用图像的局部空间频率特性来相应地调整量化步长。改进后的编码系统如图3所示。源图像经FDCT变换后,通过计算确定宏块(Macro Block)的类别及计算宏块的活动性,以相应调整量化步长,得到最终的量化表。
2 基于人眼视觉特性的量化表的产生
JPEG标准推荐了亮度和色度二个基本量化表(默认量化表),其中考虑了人眼对空间频率的敏感性,即对人眼敏感的低频系数采用较小的量化步长,对人眼不敏感的高频系数采用较大的量化步长。然而,这并未充分考虑人眼的视觉特性。人眼不仅对宏块的空间频率敏感性不同,而且,还依赖于其周围的环境。人眼视觉系统对于边缘区或均匀图案区比复杂图案区更敏感。而标准的JPEG使用的是线性均匀量化器,不能反映图像的局部变化特征,从而增加了重建图像的主观失真,影响图像的质量。因此,针对不同区域的宏块,相应地调整量化步长,以减少图像压缩的主观失真及提高压缩率,是本文要解决的问题。
2.1 宏块类别的界定
由上面的论述可知,不同图案区的宏块相对于人眼具有不同的视觉敏感性。因此可利用宏块的象素梯度(Pixel Gradients)信息及亮度信息来界定宏块类别,同时,也相应地反映出图像的主观复杂度。
宏块的象素梯度信息计算:
式中,sp(i,j)为原始宏块的相应象素值;det_H、det_V分别为宏块的水平和垂直象素梯度信息;f_det用来度量宏块的复杂性;TH1为人眼视觉系统所能感觉到的图像变化的门限值,它随宏块的平均亮度而改变,即:
根据上述公式,对宏块可作如下分类及其相应的量化调整因子为:
式中,M是量化调整因子,NO1、NO2、NO3为宏块的象素梯度阈值。
2.2 宏块活动性的计算
宏块的活动性反映了宏块的复杂程度。活动性越高,人眼视觉感知能力越小,可以采用相对较大的量化步长。在MPEG-2 TM5中,宏块的活动性是以4个亮度子块的象素方差最小值作为度量标准的。本文为减少计算量,采用直接计算4个亮度子块DCT中AC系数的绝对值之和的最小值作为该宏块活动性水平的统计标准。即:
宏块的平均活动性则以所有8×8亮度子块的AC系数的绝对值之和的平均值来表示。即:
avg_act=mean(abs_sum)
2.3 量化表的产生
根据上面所计算的宏块的活动性,参考MPEG-2 TM5中计算宏块复杂性的方法,可得归一化活动性函数为:
宏块的活动性函数反映了人眼的视觉特性。当块的内容复杂、包含高频成分较多、宏块活动性较高时,人眼对此不敏感,可以采用较大的量化步长。相反,对于平坦区等活动性较低,人眼视觉相对敏感的宏块则进行细量化。同时,考虑到不同的宏块类别,则最后的量化矩阵为:
式中,Qj为第j个宏块的量化矩阵;Qdef为JPEG推荐的量化表;Qsub为根据不同类型的宏块而产生的量化调整矩阵。
3 实验结果
实验中,针对二幅图像(Lenna、Clumbia),利用本文的方法和使用默认量化矩阵的标准JPEG压缩方法进行了模拟对比实验,采用峰值信噪比PSNR(Peak Signal-to-Noise Ratio)和压缩比CR(Compression Ratio)二项指标作为实验结果的评价。实验结果如表1所示。
从表1可以看出,本文的方法优于采用默认量化矩阵的标准JPEG压缩编码,提高了图像的压缩比和重构图像的质量。
4 结束语
本文在分析标准JPEG编码与解码过程的基础上,着重讨论了与图像质量和压缩率密切相关的量化过程。在此基础之上,利用人眼的视觉特性,通过确定宏块的类别和分析宏块的活动特性,相应地调整量化矩阵,以达到提高图像的压缩比和重构图像质量的目的。实验结果表明,该方法的压缩性能优于采用默认量化表的标准JPEG的压缩性能。
参考文献
1 张益贞,刘滔.Visual C++实现MPEG/JPEG编解码技术.北京:人民邮电出版社,2002
2 林福宗,陆达.多媒体与CD-ROM.北京:清华大学出版社,1994
3 Chung T Y,Jung K H,Young N O et al.Quantization Control for Improvement of Image Quality Compatible
with MPEG2.IEEE Transactions on Consumer Electronics,1994;40(4)