图像编码

2024-09-17

图像编码(精选9篇)

图像编码 篇1

摘要:票据图像是一种广泛应用于人们生活及工作的图像,由于票据图像中主要包含文字、数字及线条等信息,其细节和边缘信息极其重要。一般的压缩方法,如JPEG压缩,已经不适用于票据图像的压缩,会造成边缘细节信息的损失。因此针对票据图像的特殊性,经过颜色聚类和多分辨率分解后,应用改进的零树编码进行压缩编码。实验结果表明,该文方法比JPEG压缩标准具有更高的压缩比和更好的图像阅读质量。

关键词:票据图像,多分辨率分解,零树编码,JPEG压缩标准,边缘细节信息

票据图像作为人们生活和工作中广泛应用的图像,在许多多媒体系统中都需要存储和传输的,例如医院信息系统和电子金融管理系统。长期以来,数字图像压缩编码技术主要采用JPEG压缩标准[1]来进行压缩。对于一般的自然图像来说,JPEG压缩标准在保证图像质量的前提下具有较高的压缩比。但是对于JPEG压缩标准中主要利用离散余弦变换DCT(Discrete Cosine Transform DCT)技术完成图像的变换编码,然而经过DCT处理的图像编码在大的压缩比下存在着严重的块状效应,这非常不利于票据图像的压缩及存储。因为票据图像中包含了丰富的边缘细节信息,这些都是票据图像中的重要信息,需要完整的保留下来。所以出现了一些基于二值化分割算法来获得高的压缩比[2,3,4,5,6],但是这些方法不仅要面对图像分割的挑战,而且有时对图像重要的信息在压缩以后已经丢失了。

为此,该文通过对Shapiro提出的嵌入式零树小波编码算法EZW(Embedded Zerotree Wavelet,EZW)[7]分析的基础上,实现了针对票据图像的零树编码,并进行了仿真试验,仿真结果与JPEG压缩标准作了比较,在大的压缩比下,票据图像的边缘细节信息得以保留,保证了阅读质量。

1 算法设计

本文方法是是针对票据图像进行压缩编码,票据图像与普通自然图像有着明显的区别,因此首先要了解票据图像有如下特点:

1)票据图像颜色单一,从视觉效果上,一幅票据图像有4-5种颜色就可以显示整幅图像的信息。

2)票据图像在一个小区域内像素颜色一致(不包括背景颜色)。

3)票据图像存在着大面积的背景区域。

根据票据图像特点(1)和(2),可以将票据图像进行颜色聚类,得到调色板和颜色位图。每幅颜色位图代表调色板中的一种颜色,而颜色位图可以用一幅二值图像来表示,黑色代表背景,白色代表前景,即前景信息就是原始图像中代表该颜色的信息。根据特点(3),可以判断出每幅位图中都包含大面积的背景区域,对每幅颜色位图进行二值图像的多分辨率分解得到金字塔结构图,在分析EZW算法的基础上对每幅位图的金字塔结构图进行改进的零树编码。在解码端,根据解码得到的金字塔结构图,重构颜色位图,根据对应调色板的颜色得到解压缩的图像。

1.1 颜色位图的多分辨率分解

对于原始的颜色位图,它是一幅二值图像,将图像中的像素点分为2×2像素的方块,并按图1所示规则[8]进行分解,得到原始二值图像的低频子图。

其中不全为0或者不全为1。将得到的低频子图按图2所示规则映射到原图尺寸大小。

将映射得到图像与原始位图相减得到残差图,即高频子图。此时低频子图与高频子图就构成了一个金字塔结构图。对于低频子图再进行几次上述算法处理,便得到了原始位图的金字塔结构图。

1.2 改进的零树编码

EZW方法是基于小波变换之后进行编码的,经过小波变换后的图像具有多分辨特性,EZW算法就是利用不同分辨率子带中同一空间位置的数据构成一棵树,利用树中的低频数据的幅度值大、高频数据的幅度值小的特点,生成零树,从而达到压缩的目的。

原始位图经过多分辨率分解后的金字塔结构图,在不同分辨率层级中同一空间位置的数据具有相关性。以图3所示的金字塔结构图为例,将金字塔结构中最低分辨率层级中的每个像素点作为“父亲”,那么该分辨率层级上每个像素点都有4个“儿子”存在于下一分辨率层级,在最高分辨率层级中有16个“孙子”。根据原始位图多分辨分解算法,可以得知其金字塔结构图中不同分辨率层级中同一空间位置的数据有如下特点:

1)每个分辨率层级中的“1”,其子孙后代全为0;

2)每个分辨率层级中的“0”,其子孙后代中可能全为0或者含有1。

EZW算法中从最低分辨率的系数开始扫描,判断扫描到的系数是否为“正显著系数”、“负显著系数”、“零树跟”和“孤立零点”,然后进行编码输出。因此,根据EZW的编码思想及上述特点,改进的零树编码算法如下:

1)扫描整个金字塔结构图,按照自上至下,自左至右的顺序扫描;

2)若扫描到“1”,则认为该点为正的零树跟,标记其子孙节点都无需扫描编码,将该点编码为“p”;

3)若扫描到“0”,判断其子孙节点是否全为0。

(1)若其子孙节点全为0,则认为该点为负的零树跟,标记其子孙节点都无需扫描编码,将该点编码为“t”;

(2)若其子孙节点有1,则认为该点为孤立零点,编码为“z”。

2 实验验证

为了检验本文对于票据图像的压缩编码算法,本小节对票据图像分别进行了本文的压缩编码算法和JPEG压缩编码,并给出实验结果对比。为了验证本文算法的有效性,同时给出了二者之间峰值信噪比、视觉效果和细节保留的对比。

图4为原始票据图像,图5为JPEG压缩后的图像,图6为本文方法压缩后的图像。实验表明,JPEG压缩标准的压缩比已经达不到本文方法的压缩比了。如表1所示,JPEG压缩能够达到的最大压缩比为113:1,而本文的方法已经达到了137:1,而且在峰值信噪比上本文方法也要高于JPEG压缩。从阅读质量上来看,经过本文压缩方法后的解码图像能够更好有利于从图像中获取信息,JPEG压缩后的图像已经产生了明显的块状效应,造成图像模糊。图7中自上而下为原图像细节、JPEG压缩后细节和本文方法压缩后细节,可以看到本文方法保留了更多的票据图像的边缘细节信息,保证了票据图像的信息传达。

3 结束语

本文研究了一种针对票据图像有效的压缩编码算法。首先,针对票据图像的特殊性进行了预处理,其次对零树编码进行了改进以适用于票据图像的编码,不仅仅提高了压缩比,而且还保留了票据图像中重要的边缘细节信息。实验表明,该文方法在同等压缩比下,解压缩后的图像在峰值信噪比和视觉效果上,尤其是在边缘细节信息的保留上都要优于JPEG压缩标准。

参考文献

[1]http://www.jpeg.org/jpeg/index.html[S].

[2]Shapiro,J.M.:‘Embedded image coding using zerotrees of wavelets coefficients’[J].IEEE Trans.Signal Process.,1993,41:3445–3462.

[3]Howard P G.Text image compression using soft pattern matching[J].The Computer Journal,1997(40):146-156.

[4]Seropian A,Vincent N.Writers authentication and fractal compression[J].Proceedings.8th International Workshop on Frontiers in Hand writing Recognition,2002:434-439.

[5]Howard P G.Lossless and lossy compression of text images by soft pattern matching[J].Proceedings Data CompressionConference,1996:210-219.

[6]Ye Y,Cosman P.Fast and memory efficient text image compression with JBIG2”[J].IEEE Transactions on Image Processing,2003,12(8):944-956.

[7]Y.Ye,and P.Cosman,“Dictionary design for text image compression with JBIG2”[J].IEEE Transactions on Image Processing,2001,10(6):818-828.

[8]杨万全.二值图像的金字塔表示和最佳级联方块编码[J].四川大学学报:自然科学版,1992,29(4):504-508.

图像编码 篇2

为了便于对比,这里所采用的图像仍然是256×256的Lena灰度图像,分解所用的滤波器是双正交B97滤波器,分解级数为4。实际均在Pentium 4/1.5、RAM128MB的机器上编译完成。图4和图5是消噪图像(原噪声图像方差=100)和消噪图像分形压缩结果。

经小波域去噪的图像分形压缩编码性能明显提高,一是体现在编码时间上,去噪图像的编码时间与有噪图像相比大大缩短,效率大大提高,分形压缩方法本身特点就是压缩时间长,因此这种效率的提高是非常可观的;二是图像质量明显好转,信噪比有较大的提高,保证了分形压缩编码的质量(如图5所示)。以上实验和结论充分说明了图像小波域的去噪方法能够对噪声图像进行良好的消噪处理,保证了分形压缩编码方法的编码效率和图像质量。

图像编码 篇3

关键词: JPEG2000 H.264 感兴趣区域

中图分类号: TN91文献标识码: A文章编号: 1007-3973 (2010) 04-045-02

1 引言

在现代通信技术中,图像作为信息含量最丰富的载体,起着重要的作用。随着因特网在全球范围的日益普及,移动通信的迅猛发展,网络传输以及各种新兴多媒体业务的出现激发了人们进行视频信息交流的需求, 推动了图像通信和数字视频技术的全面发展。

图像/视频编码技术已成为当今信息科技与技术的研究热点。图像/视频编码技术是视频通信系统的关键技术之一,目的是尽可能降低图像/视频的存储容量和传输带宽。基于离散余弦变换(Discrete Cosine Transform, DCT)的图像/视频压缩编码算法由于其良好的去相关性与能量压缩特性成为现有大多数图像/视频压缩的国际标准。 与此同时, 基于小波分析的编码技术由于摈弃了传统傅里叶分析的前提假设――平稳性,成为分析非平稳信号的有力工具,并在视频/图像编码中获得了广泛的应用,JPEG2000是首个采用小波变换进行静止图像压缩编码的国际标准。由于JPEG2000采用基于小波变换的多分辨率编码方式,使得用户对图像中感兴趣区域的处理成为可能。

H.264 视频编解码标准是由 ITU-T 的 VCEG(视频编码专家组)和 ISO/IEC 的 MPEG(活动图像编码专家组)的联合视频组 JVT 开发的。和以前的视频编码标准相比,H.264 获得了更加出色的编码性能, 但需要更加复杂的运算。在技术上, H.264标准中有很多的闪光点,本文主要关注它的帧内编码算法。H.264之前的国际标准只对帧间图像进行预测编码,帧内图像则直接进行基于 DCT 的变换编码。H.264 充分利用了帧内图像中存在大量冗余的特点,采用了新的帧内预测模式,使得压缩率得到很大的提高。

本文简单介绍了JPEG2000 和H.264 帧内预测编码编码算法, 重点比较了他们在编码效率、运算复杂度方面的差异。

2 JPEG2000编码技术简介

基本JPEG2000的编、解码系统框图如图 1 所示。

图 1 JPEG2000 基本系统框图

JPEG2000具有很多特征,这里只简单介绍它的感兴趣区(ROI)编码。JPEG2000定义了两种感兴趣区编码模式: 基于比例的移位法 (scaling-based method) 和最大移位法 (max-shift method)。

基于比例的移位法是预先选择一个适当的比例因子S, 在编码时将背景系数的幅值均缩小 2S倍。这样,感兴趣区域系数的比特平面总体上就高于背景区域系数的比特平面。本文中所使用的JPEG2000-ROI编码程序使用最大移位法对 ROI区域进行编解码。

3 H.264帧内编码技术简介

3.1 帧内预测编码

在以往的标准中,帧内编码图像一般直接将图像分为像素快,分别进行DCT变换和量化,这样实际上并未充分利用各像素块之间的相关特性。而H.264标准则利用位于当前像素块左边和上边的已编码重建像素进行预测,只对实际值和预测值的差值进行编码,从而实现了一种更为高效的帧内空间域预测编码模式。

在 H.264 标准中,帧内预测编码模式可以基于 4×4 和 16×16 两种不同尺寸块进行,其中16×16块更适合于存在大面积缓慢变化的图像。按照预测方向不同,H.264针对 4×4块提出9 种帧内预测编码,对 16×16 块提出4种帧内预测模式,另外,8×8色度块所具有的 4 种模式与亮度的 16×16 块的4 种模式相同。以 4×4 块帧内预测编码为例(如图 2) ,4×4 亮度块的上方和左方像素 A~Q 为已编码并重构的像素,用作编解码器中的预测参考像素。a~p为待预测像素,利用A~Q中已编码像素进行预测,而其余模式只有在所需预测像素全部提供后才能使用。图3 中的箭头表明了每种模式的预测方向。

图 2 利用像素 A~Q 对方块中a~p

图3 H.264 帧内预测方向示意图

像素进行帧内 4×4 预测

3.2 整数余弦变换

与前几种视频编码标准相比,H.264在变换编码技术上也有较大的改进,它摒弃了在多个标准中传统的 8×8 浮点离散余弦变换,而采用一种 4×4 整数变换来对帧内预测的差值数据进行变换编码。选择 4×4 整数变换,减少了编码中的块效应和振铃效应的不良影响,也加大了编码环节的运算速度。 虽然 H.264 的帧内编码还采用了其他的一些技术,但帧内空间预测技术及变换编码是使 H.264帧内编码获得较高编码效率的关键所在。

4 H.264帧内编码与JPEG2000 编码性能比较

4.1 测试环境

为了对比两种标准的编码性能,本试验将对多张不同分辨率的灰度图像分别使用JPEG2000 普通编码、JPEG2000-ROI 编码和 H.264 帧内编码进行编解码测试,仿真中使用的图像及其分辨率如表 1所示。

表 1测试所用到的图像

仿真所使用的JPEG2000编码程序来源于开放源代码软件 jasper-1.700.2 (采用Java语言编写) ,H.264 编解码程序采用JVT 参考源代码JM11.0(C语言编写) 。JPEG2000 ROI编码选择的感兴趣区域是原图像中细节比较多的部分,面积是原图像面积的 1/4。

4.2 测试结果及分析

H.264 的编码性能明显优于 JPEG2000 的普通编码,在分辨率比较低的情况下,比如 128×128 时,峰值信噪比差值在 1dB 左右,有时甚至高于 2dB;在分辨率较高的情况下,如 720×580 或是 1024×1024,两种编码的峰值信噪比比较接近,差别基本都小于1dB。但是 H.264 的编码效率却明显低于JPEG2000 ROI编码中的感兴趣区域部分,在码率不高的情况下,差别尤为明显。

总的来说,随着编码码率的增加,H.264 帧内编解码所需的时间成比例增长,而 JPEG2000 及 JPEG2000-ROI 变化则比较缓慢,并且JPEG2000与JPEG2000-ROI两种编码方式所消耗的时间差距很小, JPEG2000-ROI稍微要多一些。具体而言,在分辨率比较小的情况下(如 128×128),H.264 的帧内编解码所需的时间少于 JPEG2000(见图 7(a)、(b)) ,但随着码率的增加,两者的差距越来越小,在码率比较高的时候两者达到同一水平;当图像分辨率比较高时,由图(c)~(f)可看出:JPEG2000的编解码时间远远少于H.264的帧内编解码,并且随着图像分辨率的增加以及码率的加大,这种差距越来越大。

更进一步的数据分析可以发现, H.264帧内编解码所耗费的时间大部分都花费在编码上面,解码所需的时间甚至比 JPEG2000 的解码方式还要少,并且随着码率的加大,H.264 解码所需的时间变化也比较小,这说明H.264 的时间复杂度主取决于 H.264的编码过程,解码的影响比较小。

5 结论

通过上面的分析, 我们不难得出下面的结论: 就编码效率而言, H.264要优于JPEG2000,但这种优势随着图像尺寸的增加而逐渐减少;从算法时间复杂度方面来看,JPEG2000 的算法复杂度不会由于编码码率的变化而出现大的波动,基本保持在相对恒定的状态,而 H.264的编码复杂度基本上与编码码率成线性增长。当图像尺寸比较小且编码码率比较低的情况下,H.264 的时间复杂度低于JPEG2000,但当图像尺寸比较大或编码码率比较高时,H.264的时间复杂度远远高于 JPEG2000。此外,JPEG2000 的感兴趣区域编码技术是也是 H.264编码所不能达到的。

参考文献:

[1] 王华华.基于JPEG2000的感兴趣区域编码算法研究[D].重庆大学,2007.4.

[2] 张旭东,卢国栋,冯健. 图像编码基础和小波压缩技术――原理、算法和标准[M]. 北京:清华大学出版社,2004.03.

浅析图像压缩编码方法 篇4

1 图像压缩编码

1.1 概述

图像压缩编码就是在满足一定保真度和图像质量的前提下,对图像数据进行变换、编码和压缩,去除多余的数据以减少表示数字图像时需要的数据量,便于图像的存储和传输。即以较少的数据量有损或无损地表示原来的像素矩阵的技术,也称图像编码。

1.2 图像压缩编码原理

图像数据的压缩机理来自两个方面:一是利用图像中存在大量冗余度可供压缩;二是利用人眼的视觉特性。

1.2.1 图像数据的冗余度

1)空间冗余:

在一幅图像中规则的物体和规则的背景具有很强的相关性。

2)时间冗余:电视图像序列中相邻两幅图像之间有较大的相关性。

3)结构冗余和知识冗余:

图像从大面积上看常存在有纹理结构,称之为结构冗余。

4)视觉冗余:人眼的视觉系统对于图像的感知是非均匀和非线性的,对图像的变化并不都能察觉出来。

1.2.2 人眼的视觉特性

1)亮度辨别阈值:当景物的亮度在背景亮度基础上增加很少时,人眼是辨别不出的,只有当亮度增加到某一数值时,人眼才能感觉其亮度有变化。人眼刚刚能察觉的亮度变化值称为亮度辨别阈值。

2)视觉阈值:视觉阈值是指干扰或失真刚好可以被察觉的门限值,低于它就察觉不出来,高于它才看得出来,这是一个统计值。

3)空间分辨力:空间分辨力是指对一幅图像相邻像素的灰度和细节的分辨力,视觉对于不同图像内容的分辨力不同。

4)掩盖效应:“掩盖效应”是指人眼对图像中量化误差的敏感程度,与图像信号变化的剧烈程度有关。

1.3 图像压缩编码的分类

根据编码过程中是否存在信息损耗可将图像编码分为:

1)无损压缩:又称为可逆编码(Reversible Coding),解压缩时可完全回复原始数据而不引起任何失真;

2)有损压缩:又称不可逆压缩(Non-Reversible Coding),不能完全恢复原始数据,一定的失真换来可观的压缩比。

根据编码原理可以将图像编码分为:

1)熵编码:熵编码是编码过程中按熵原理不丢失任何信息的编码。熵编码基本原理是给出现概率大的信息符号赋予短码字,出现概率小的信息符号赋予长码字,最终使得平均码长最小。常见熵编码方法有哈夫曼编码、算术编码和行程编码(Run Length En-coding)。

2)预测编码:预测编码是根据离散信号之间存在着一定关联性的特点,利用前面一个或多个信号预测下一个信号进行,然后对实际值和预测值的差(预测误差)进行编码。预测编码可分为帧内预测和帧间预测,常见的预测编码有差分脉码调制(DifferentialPulse Code Modulation,DPCM)和自适应差分脉冲编码(Adaptive Differential Pulse Code Modulation,ADPCM)。

3)变换编码:变换编码通常是将空域图像信号映射变换到另一个正交矢量空间(变换域或频域),产生一批变换系数,然后对这些变换系数进行编码处理。图像信号在空域描述时,数据之间相关性大,冗余量大,经过变换到变换域中去描述,数据相关性大大减少,冗余量减少,参数独立,数据量少,这样再进行适当的量化和编码就能得到较大的压缩比。常用的正交变换有傅立叶(Fouries)变换、正弦变换、余弦变换、哈尔(Haar)变换、沃尔什(Walsh)变换、斜(Slant)变换和K-L(Karhunen-Loeve)变换等。

4)混合编码:混合编码是指综合使用了熵编码、预测编码或变换编码的编码方法,如JPEG标准和MPEG标准。

1.4 图像压缩编码方法介绍

1.4.1 哈夫曼编码

基本思想是统计一下灰度级的出现概率,建立一个概率统计表,将最常出现(概率大的)的灰度级用最短的编码,最少出现的灰度级用最长的编码。

步骤:1)将输入灰度级按概率大小由大到小排序;2)将最小的两个概率相加得到一个新的概率集合,重复第1步,直到只有两个概率集合为止;3)反向分配码字。

特点:1)码值不唯一;2)对不同概率分布的信源,哈夫曼编码的编码效率有所差别,对于二进制编码,当信源概率为2的负幂次方时,哈夫曼编码的编码效率可达100%,其平均码字长度也很短,而当信源概率为均匀分布时,其编码效果明显降低。3)需先计算图像数据的概率特性形成编码表后才对图像编码,因此缺乏构造性。

1.4.2 预测编码

基本思想是通过提取每个像素中的信息并对它们编码来消除像素间的冗余,它是根据离散信号之间存在一定关联性的特点,利用前面一个或者多个信号对下一个信号进行预测,然后对实际值和预测的差值(预测误差)进行编码。

预测编码是比较易于实现的,如差分脉冲编预测编码(Differential Pulse Code Modulation,DPCM)方法。

在这种方法中,每一个像素灰度值,用先前扫描过的像素灰度值去减,求出他们的差值,此差值称为预测误差,预测误差被量化和编码与传送。接收端再将此差值与预测值相加,重建原始图像像素信号。由于量化和传送的仅是误差信号,根据一般扫描图像信号在空间及时间邻域内个像素的相关性,预测误差分布更加集中,即熵值比原来图像小,可用较少的单位像素比特率进行编码,使得图像数据得以压缩。

预测编码原理框图如图1。

预测编码具有高的编码压缩比,其缺点就是降低了抗误码的能力。

DPCM的MATLAB实现代码如下:

subplot(3,2,4),imshow(abs(p),[0 1]);title('解码用的残差图像');

subplot(3,2,5),imshow(j,[0 256]);title('使用残差和线性预测重建后的图像');

subplot(3,2,6),imshow(abs(d),[0 1]);title('解码重建后图像的误差');

1.4.3 变换编码

基本思想是先将空间域图像通过某种正交变换,获得一系列变换系数。在变换过程中,使图像变换系数能量相对集中,再对其变换系数,进行区域量化,按其所含能量大小,分配以不同的数据量(比特数)去描述,如高能量区域赋予多比特,反之,则短的比特数,这样可以提高压缩比。

变换编码原理框图如图2。

问题:1)分块大小;2)变换方式;3)比特分配;4)编码方案。

优点:1)压缩比高;2)视觉感觉好。

缺点:计算复杂。

变换编码是一种图像有损编码。在能达到的压缩比和信息损失之间存在一个折衷。一般情况下,人眼是信息丢失能否接受的最终裁判。对图像失真的定量计算,如均方误差,往往和人眼的主观感觉不一致。

常用的变换方法有DCT变换和WHT变换等。图像进行变换后,接下来要对变换后的系数量化,在量化后才能对其编码。其中常用的系数量化方法有:区域编码、行程编码、门限编码等。

DCT变换的全称是离散余弦变换(Discrete Cosine Transform,DCT)。在傅立叶级数展开式中,如果被展开的函数是实偶函数,那么其傅立叶级数中只包含余弦项,再将其离散化可导出余弦变换。DCT是先将整体图像分成N*N(N=8或16)像素块,然后对N*N(N=8或16)像素块一一进行单独的DCT变换。由于大多数图像的高频分量很小,相应于图像高频分量的系数经常为零,而且人眼对高频成分的失真基本不容易分辨认来,所以可经过适当的量化。

DCT变换的MATLAB实现代码如下:

2 总结

本文介绍了图像压缩编码的基本原理,分类以及现有的部分图像压缩编码方法进行了初步的归纳和探讨,研究了三种常见的图像压缩编码方法,并粗略探讨了它们的MATLAB代码实现。在图像信息量激增、网络特性和速度都飞速提高的今天,对高效合理的图像压缩算法的研究也越来越受到重视,很多方面的问题也越来越突出,如编码的复杂度、实时性的改善,解码的迅速性的提高以及图像恢复的质量问题等,这些都是值得我们研究的方向。

参考文献

[1]张丰德.数字图像处理[M].北京:人民邮电出版社,2009.

[2]冈萨雷斯.数字图像处理[M].北京:电子工业出版社,2004.

[3]李俊山,李旭辉.数字图像处理[M].北京:清华大学出版社,2007.

图像编码 篇5

在信息社会高度发展的今天,图像成为可以传递信息的重要载体之一。由于未经处理的图像信息量非常大,大力研究和开发图像压缩编码技术就非常重要[1]。随着计算机图形学的快速发展,目前存在很多压缩编码技术,如行程编码、哈弗曼编码、自适应二进制算法编码等无失真无噪声编码、预测编码等有失真有噪声编码以及JPEG连续色调静态图像压缩标准,以上的方法有的压缩率低,有的失真大,有的软件实现复杂。本文根据当前两种基本的编码压缩算法—行程编码压缩和矩形编码压缩的思想,将两者的优点结合,得到了基于矩形编码和行程编码相结合的压缩方法。

行程编码是一种利用空间冗余度进行压缩的方法,是统计编码中一种基本的无损压缩编码方法[3]。当存储的图像存在大片的连续相同像素点时,由于最大行程长度受限,连续相同像素要存储多次,使压缩之后的图像存在冗余,不利于压缩效率的提高。矩形编码其原理是不停地将原始图像分解为若干个连续相同像素点的子块[4],可以存储矩形块替代存储每一个像素点,就可以用很少的空间存储大片的相同像素点,矩形块越大,压缩效率越大。但是对于复杂图像进行矩形编码就会造成反膨胀,耗费很多时间和空间,同时还会造成图像的失真,不能达到很好的压缩效果。

矩形编码和行程编码相结合的方法具有很好的综合性,具有以上两者算法的优点,同时也克服了以上两者的缺点:既解决了矩形编码中处理较小区域时空间浪费和失真的问题,又克服了行程编码中最大行程编码长度受限制的缺点,同时不会造成图像的失真,具有很好的压缩效果。

1 算法原理

矩形编码和行程编码相结合的图像压缩方法的核心思想是:对图像实行两种编码方式——矩形编码和行程长度编码,在具有大面积连续相同像素的区域采用矩形编码,在像素分布复杂的区域采用行程长度编码;首先对图像进行自适应分割[5],如图1所示。对于面积较大的子图块,直接记录其对角点坐标以及子图块的颜色——矩形编码[2],仅需12个字节即可记录整个子图块的全部信息,显然,子图块越大,压缩效率就越高,这正是矩形编码的特点;对于面积较小的子图块,采用行程长度编码方式,既可以尽可能地发挥矩形编码效率,又可以克服其缺点。

2 压缩编码实现

(1) 对图像进行矩形区域划分,采用四叉树分解进行自适应分割[2],如图2所示。对面积较大像素同一的子图块,存储两个对角顶点的坐标(x1,y1)、(x2,y2),以及颜色clr;

(2) 申请一块与原始图片大小相等的缓冲区作为标记缓冲区,在对应的已经作矩形编码的子图块内的像素位置作上标记,如图3所示。把深色的相同像素的矩形依次作标记,浅色区域为小于最小矩形的区域,不作标记;

(3) 对整个图块作行程编码,对照标记缓冲区,遇到有标记的像素则跳过,继续对下一像素作行程编码,凡是已经作矩形编码的子图块内的像素都被跳过,而未编码的各子图块作为一个整体作行程编码。整个压缩编码实现的流程图如图4所示。

3 解压缩编码实现

根据算法基本原理,图片压缩后依次存储为矩形编码和行程编码的数据。解压时,从堆栈中首先取出的是矩形编码的每一子图块的数据,然后出栈的是行程编码的剩余子图块数据。具体解压算法流程图如图5所示。

其解压过程为:

(1) 从堆栈中取出子块压缩数据,根据存储的子图块的坐标和颜色作矩形图;

(2) 申请一块与原始图片大小相等的缓冲区作为标记缓冲区,将已经作为矩形块的子图块内的像素位置作上标记,示意图同图3标记缓冲区示意图;

(3) 从堆栈中取数据,根据行程编码解码进行像素作图,遇到做标记的则跳过,即跳过已经解压的较大的像素同一的子图块,继续解压其后的像素。

4 结果论证

图6是四幅实验用图,分别采用行程编码压缩法、矩形编码压缩算法、矩形编码与行程编码相结合的压缩算法进行比较,表1反映的数据为四幅图片分别用三种压缩方法压缩后的占用存储空间大小的效果对比。

由表1中的数据可以看出,对于复杂的图像a,矩形编码和行程编码相结合的图像压缩比单独用矩形编码压缩的要好,没有产生反膨胀;对于不复杂的图像b,c,d,又要比单独采用行程编码压缩的好。

实验结果表明,矩形编码和行程编码相结合的图像压缩算法是一种更高效的压缩方法。行程编码压缩算法由于存储相同像素个数有限,使同一相同像素存储多次,造成空间浪费;对于矩形编码,如果将一个像素点作为矩形块,需要耗费很多时间,压缩率也不高,若分解至一定的子块(多于一个像素)停止分解,则将会使图片失真程度变大。

采取矩形编码与行程编码结合的压缩方法压缩不仅解决了行程编码算法的存储空间浪费和冗余问题,同时有效利用了矩形编码对较大连续相同像素区域压缩的优势。因此,矩形编码和行程码编码相结合的算法是一种压缩比更高,算法稳定,实现简单的无损图像压缩算法。

5 结 语

在目前的图像压缩的领域中,行程长度编码算法被广泛地应用,最近矩形编码也应用于图形图像压缩中。而两者的有效结合能够起到更好的压缩效果,并且压缩无损。既解决了矩形编码中处理较小区域时空间浪费和失真的问题,又克服了行程编码中最大行程受限制的缺点。

综上所述,矩形编码和行程长度编码相结合的图像压缩方法比传统的行程编码和矩形编码适应性更广,对于不同类型的图像均能够很好地进行压缩处理,效率都会有相应的提升。

摘要:论述的矩形编码与行程编码相结合的图像压缩方法,是针对矩形编码中处理较小区域时空间浪费以及失真和行程编码中最大行程编码受限制等缺点而提出的。该方法处理复杂图像比矩形编码好,在图像不复杂时比行程编码好,具有很好的压缩效率。

关键词:图像压缩,矩形编码,行程编码

参考文献

[1]何兴恒,陈慧.一种非限制行程的行程码图像压缩方法[J].计算机工程与应用,2009,45(29).

[2]何兴恒,陈慧.一种基于四叉树分解的图像压缩方法[J].计算机工程与应用,2008,44(9).

[3]芦亚亚,丁维龙,古辉.由行程编码改进的一种通用性压缩算法[J].浙江工业大学学报,2007(2).

[4]郑运平,陈传波.一种基于新型四叉树的快速分形图像压缩算法[J].小型微型计算机系统,2009,28(8).

率失真优化的压缩感知图像编码 篇6

率失真性能是衡量图像编码系统性能的重要准则。率失真技术可以不受编码结构和技术的限制,通过配置最优的编码参数提高编码性能,是实际编码系统中常用的优化方法。量化是传统的有损编码系统中的主要失真来源,量化器性能很大程度上决定了编码效率,因而可以选择合适的量化参数使得给定编码码率下失真最小。然而在基于压缩感知的图像编码系统中除了量化,采样过程也会引起失真和码率的变化,也就是说给定码率条件下最优的编码性能由量化参数和采样参数共同决定。因而分析量化参数、采样参数和编码码率、失真之间的关系对确定最优的参数配置至关重要。

目前在基于压缩感知的图像编码系统的编码参数和码率失真之间关系的研究方面已有一些成果。文献[5]中针对传统的视频编码系统提出了延迟-能量-率失真模型。文献[6,7]针对压缩感知编码视频流提出了码率-能量-失真模型。该模型可以用于估计接收端接收到的受信道噪声污染的视频流的质量。但在基于压缩感知的图像编码系统中最优的编码参数选择方面研究成果较少。文献[8]中针对分布式视频压缩感知编码框架提出了压缩感知采样率的分配方法,该方法基于图像区域的稀疏程度进行采样率的分配,稀疏度高的区域分配较低的采样率,稀疏度低的区域分配较高的采样率。但是该方法并没有考虑量化对编码码率和失真的影响。而且算法还需要额外传输附加信息到接收端。文献[9]提出了率失真优化的码率分配方案,然而算法的效率很大程度上取决于失真模型的正确性。

本文首先分析了基于压缩感知的图像编码系统的编码参数与码率和失真之间的关系,然后分别提出了码率和失真模型,最后将上述模型用于压缩感知编码算法的优化,提出了基于率失真优化的压缩感知编码算法,选择最优的采样率和量化参数,使得编码器性能最佳。

1 压缩感知

压缩感知(Compressive Sensing)是通过线性投影将高维信号编码为低维信号的采样方法。压缩感知包括3个主要问题:稀疏表示、信号测量和信号重构。压缩感知理论实现的基础是信号的稀疏性。稀疏度定义为离散时间信号中非零元素的个数。如果在某个正交基下信号是稀疏的,并且稀疏度K远小于信号的维数N,那么该信号被称为稀疏的或可压缩的,可以通过压缩感知对信号压缩。自然图像在诸如离散余弦变换和小波变换这类变换下都是稀疏的,因此将图像看作矢量u∈RN,那么图像在正交基ΨN×N下的映射信号x是

假设存在测量矩阵Φ,维数是L×N,L≤N,则通过非相关测量将信号x投影到测量矩阵Φ上,即

可以得到测量值y,此时信号维数从N降到了L,降低了数据量。压缩感知理论证明只要采样矩阵满足限制等距特性(Restricted Isometry Property,RIP),那么从测量值y中可以高精度地重构出原信号x[10,11]。当满足RIP条件时,原信号可以通过求解下式所示的最小l0范数问题来重构,得到重构信号

由于L≤N,式(3)的求解是一个病态问题,有无穷多组解,计算复杂度很高。因此Donoho and Candes提出当满足RIP条件时,可以用l1范式代替l0范式,将式(3)转换为一个凸优化问题进行求解

通常采样个数L≥αKlog N时,可以精确重构出x。其中α是一个很小的常数。在实际环境中通常存在各种各样的噪声,对测量数据造成干扰,比如图像压缩系统中编码端就会引入量化误差。在噪声环境下信号的重构可以进一步写为

其中:参数ε表示噪声。在重构过程中,重构信号质量与测量矩阵、正交基都有关系。精确重构原信号所需的样本个数也由正交基和测量矩阵的相关性决定[12]。正交基和测量矩阵的相关性越低,精确重建稀疏信号所需要的采样个数就越少。

2 码率-失真模型

传统的视频编码系统中,量化是产生失真的主要原因,量化参数(量化步长)越大,失真越大,编码码率越小;而在压缩感知编码系统中,失真由量化和线性测量共同产生。量化参数和测量数目的设置直接影响系统的性能。比如减小量化步长会提高码率,减小失真;而增大量化步长会降低码率,增加失真。增加采样个数会增加码率,同时减小失真;而减小测量数目会降低码率,增加失真。由于无法保证码率和失真同时达到最小,因此需要在码率和失真这两个参数中获取最优的Pareto均衡。

采样个数和量化参数互不相关,因此可以分别分析他们对码率和失真的影响。当测量值的数目固定时,码率和失真随量化参数的变化如图1和图2所示。图中,Rcs表示采样个数占总数的百分比,失真是源图像和重构图像之间的均方误差。可以看出采样个数不变时,码率随着量化参数的增大而下降,失真随量化参数的增大而增加。从图1a和图2a中可以看出,码率和量化参数QP之间近似服从幂函数的分布,而图1b和图2b中失真和量化参数也近似服从幂函数分布,码率和失真与量化阶之间的关系可表示为

式中:α1,α2,α3和α4是模型参数,取值与原信号有关;R1表示码率;D1表示失真。当量化参数固定时,码率和失真随采样个数变化如图3和图4所示。可以看出码率R2随采样个数呈线性变化,失真D2随采样个数呈指数分布

式中:β1,β2,β3是模型参数,因此可以建立码率R和采样个数NCS、量化参数QP之间的数学模型

式中:αR,βR和γR是模型参数,取值与原信号有关。总失真由测量模块产生的失真和量化模块产生的失真构成,D=D1+D2。测量模块产生的失真随采样个数呈指数分布,量化产生的失真服从幂函数分布,因此失真模型可以定义为

式中:αD,βD和γD是模型参数,取值与原信号有关。

3 率失真优化的压缩感知编码

理想情况下期望最优的编码器以最小的码率获得失真最小的图像,也就是在给定码率Rb的条件下失真最小的编码器

式中:U是源图像;S是编码器配置参数矢量;D(U,S),R(U,S)分别是失真和码率。式(12)的最优值就是码率受限条件下最优的视频编码器性能。从式(12)中可以看出,编码器的失真受码率的约束,无法同时使得码率和失真最小。当给定编码码率一定时,如果分配较多比特用于采样,那么用于表示每个样值的比特数较少,导致失真增大;反之,如果用于量化的比特数较多,那么用于采样的比特就会较少,同样导致失真增大。因此根据上节提出的码率-失真模型,分析码率、失真和编码参数(量化参数和采样个数)之间的关系,提出了基于率失真优化的压缩感知编码算法,求解最优的编码参数配置,得到给定码率条件下的失真最小的编码器。

压缩感知编码框架中影响性能的因素有2个,即采样个数和量化参数,因此最优的编码参数配置实际上就是求解能够使编码效率最高的采样个数和量化参数。式(12)可以改写为

式中:D(U,NCS,QP)和R(U,NCS,QP)分别是在编码参数NCS,QP下得到的失真和码率。通过式(10)的码率模型可以计算出每组NCS,QP的取值下对应的编码码率,通过式(11)可以得到在该码率下产生的失真。式(13)可以使用拉格朗日法或是动态规划法求解。由于动态规划的复杂度随着编码单元的增加呈指数上升,导致计算量巨大,因此通常采用拉格朗日法求解。当满足KKT条件时,式(13)表示的受限优化问题可以转换成不受限优化问题,可以由下式解出

式中:λ≥0称为拉格朗日因子,也是率失真曲线的斜率。λ用来衡量码率和失真的相对重要性。λ越小失真越重要,λ越大码率越重要。拉格朗日代价值J(U,NCS,QP,λ)用于衡量编码性能的优劣,代价值越小编码性能越好。能够使得代价值最小的参数配置S*={N*CS,Q*P}就被称为最优的参数配置,对应的λ*是最优的率失真斜率,失真D*是在该码率Rb下的最小失真。诸如牛顿法或二分法这类快速搜索算法通常用于求解λ*,然而算法复杂度都较高,相当耗时。本文中通过求解KKT条件计算最优的拉格朗日因子。既然最优的参数配置S*使得J(U,NCS,QP,λ)达到最小值,那么J(U,NCS,QP,λ)的梯度在S*的值为0,也就是

式中:表示梯度运算。因此对于上面的凸优化问题,KKT条件如下

因此如果存在λ*满足KKT条件,对应的S*也就是J(U,NCS,QP)的最小值。求解满足KKT条件的λ*就可以得到式(14)的最优解,也就是最优的压缩感知编码器。

4 实验结果

本文所提算法基于Matlab编码平台进行了实验。在发送端待测图片先进行小波变换,得到稀疏信号,然后由测量矩阵进行采样,采样后的数据再经过均匀量化和算术编码生成编码码字。在接收端编码码字先算术解码和反量化,然后根据得到的采样数据进行重构。目前有多种重构算法,算法的性能与图片在小波域的稀疏性有关。本实验中采用OMP(Orthogonal Matching Pursuit)算法重构信号[13]。重构后的信号再经过小波反变换就恢复出了原图片。

实验测试了文中所提的码率和失真模型的正确性。图5显示了根据码率模型估算的码率和实际测试码率的比较。从图中可以看出,由采样数目和量化参数估算的码率和实际编码码率相符。依据码率-失真模型计算出的率失真曲线和实际测试曲线的对比如图6所示。其中图6a是在固定量化参数条件下得到的率失真曲线,图6b是在固定测量数目的条件下得到的率失真曲线,并且图中的曲线代表实际测试得到的率失真关系,菱形和星型代表模型计算结果。从图中可以看出模型产生的率失真曲线和实际曲线相符。实验还对率失真优化的压缩感知编码系统的性能进行了测试。测试结果如图7所示。可以看出根据本文提出的码率-失真模型对编码系统进行率失真优化后,系统的编码性能有了明显提高,和未优化时相比增益约有2 d B。

5 结论

本文通过分析压缩感知编码系统中编码参数和码率以及失真的关系,提出了基于压缩感知的图像编码系统的码率-失真模型。并且根据所提模型设计了率失真优化的压缩感知图像编码算法。通过优化测量数目和量化参数,得到给定码率下失真最小的编码器。实验结果表明该码率-失真模型能够很好地拟合实际率失真曲线,以此为基础提出的率失真优化算法能够有效提高压缩感知图像编码系统的性能。

摘要:针对基于压缩感知的图像编码系统,分析了系统中编码参数和码率以及失真的关系,在此基础上提出了基于压缩感知的图像编码系统的码率-失真模型。根据所提模型设计了率失真优化的压缩感知图像编码算法。在给定码率的条件下,优化编码参数,使得编码器失真最小。算法在Matlab的编码平台上进行了仿真和实验,结果证明提出的码率-失真模型能够很好地拟合实际率失真曲线,并且基于该模型的率失真优化算法有效的提高了压缩感知图像编码系统的性能。

一种新的图像压缩预测编码 篇7

图像压缩是信号与信息处理领域中的重要内容。这些年来涌现了许多压缩技术,如变换压缩编码算法、向量量化压缩编码算法、分形压缩编码算法等。变换压缩编码是目前比较有效、应用比较广泛的一类方法,使用时要先对图像进行线性正交变换。向量量化图像压缩编码算法具有压缩比高、解码迅速等优点,但也存在边缘容易失真、编码时间较长的缺陷。分形图像压缩编码算法具有思路新颖、算法简单、与原图像分辨率无关等优点,但在处理不具有明显确定性分形结构的图像时,图像复原质量不理想,另外,分形图像压缩编码算法所需时间较长。

图像压缩的目的是对给定的图像用尽可能少的数据来表示。预测编码根据图像像素之间的相关性,利用邻近像素对当前像素进行预测。用它再配合图像压缩算法就能有效地进行图像压缩。本文基于四叉树的原理,提出一个新的用于图像压缩的预测编码,它把图像分成若干个子块,通过子块间的映射减少数据在时间和空间上的相关性,从而达到压缩的目的。这种算法实现方便且快速有效,具有更大的压缩率但不降低图像质量。

1压缩方法

1.1假设和定义

为便于描述,给出下述假设和定义。假设原始图像是大小为M×N的长方形矩阵,且MN都能被2整除,MN为正整数。假设像素灰度的范围是0—255 ,用1字节(8 bit)存储一个像素的灰度值。F代表该原始图像矩阵,f(x,y)代表矩阵Fx行,第y列的元素。

1.2实现原理

STEP 1 把原始图像按一定规律分成四个图像子块,其长度和宽度均为原始图像的二分之一。 具体方法如图1所示。

STEP 2 选择基准矩阵和参考矩阵

基准矩阵的选择是任意的,本文选择A作为基准矩阵,其余三个子图作为参考矩阵。基准矩阵在压缩前后是不变的。

STEP 3 建立映射

在参考矩阵C内选择一个元素c(x,y),同时相应找到基准矩阵A相同位置的元素a(x,y),然后用像素直接复制法或引入系数的方法建立映射。然后三个参考矩阵逐一和基准矩阵建立映射,每个参考矩阵与基准矩阵的映射方法是一样的。如图2所示。

本文介绍两种建立映射关系的方法,一种是像素复制法,另一种是系数法。这两种方法大致是一样的,只是在最后的数值处理上有点差别。

STEP 4 像素直接复制法

选择参考矩阵内的一个点c(x,y),再找到基准矩阵内相同位置的点a(x,y)后,用a(x,y)领域像素值最接近c(x,y)的点来代替点c(x,y)。如图3所示。下面是数学表达式:

STEP 5 系数法

声明一组(这里取八个,可以根据要求多取或少取)预测系数(0.3,0.5,0.8,1,1.3,1.5,1.8,2.0)。

选择参考矩阵内的一个点c(x,y),再找到基准矩阵内相同位置的点a(x,y)后,选定点a(x,y)周围若干个点(n<=9,包括a(x,y)自己),让这些点依次乘以上述八个预测系数,产生8*n个灰度值。最后用最接近c(x,y)点的灰度值来取代c点所代表的灰度值.它的原理和像素直接复制法基本相同,示意图也和像素直接复制法大致一样.下面是数学表达式:

2预测编码

2.1复制法的预测编码

在图3中a(x,y)的领域有八个像素点,把它们分别编码的话,三位数字排列就可以表示它们,分别为000、001、010、011、100、101、110、111。由于像素复制法是直接用基准矩阵的像素值代替参考矩阵相应的像素值,而一个像素点在计算机内所占的存储空间为八位,所以用三位编码来代替像素值的话,就达到了压缩数据的目的。

图像精度要求不是很高的话,还可以用两位、甚至一位编码来压缩图像。如果用两位编码,那么在基准像素点的领域内只有四个像素点可供选择,如果用一位编码,那只有两个像素点可供选择了。

2.2系数法的预测编码

系数法与复制法不同的地方,就是多了一组预测系数。同理对预测系数进行编码,分别为000、001、010、011、100、101、110、111。然后再结合像素复制法的编码,把两者结合起来就组成了系数法的预测编码。在精度要求高的时候,可以用四位编码来表示预测系数。用像素复制法编码代表的像素值再乘以预测系数代表的预测系数,就得到了所要代替的参考矩阵的像素值。引入系数法的图像压缩率比像素直接复制法要稍低一点,理论上压缩还原后的图像质量也要好一些。

3实验与分析

3.1复制法

如图4所示,三张图比较下来,d图效果最好,因为它存储的信息是最多的,使用了三位编码。b图是效果最差的,存储的信息是最少的,它的图像边缘都是像小阶梯形的,处理得很粗糙。c图效果比b图稍好,边缘的处理上稍微平滑了一点,但肉眼还是可以很容易看出来。d图的效果又比c图稍好,边缘处理得更加平滑。

复制法的优点是简单,除了边缘外,其他处理得和原图都非常接近,几乎看不出缺点,唯一不足是边缘处理得不是很好,但随着编码位数的增加,它的效果会变得越来越好。

3.2系数法

如图5所示,在b图中,它的像素编码是一位,预测系数编码是三位,相比较复制法,它边缘处理得比较理想,很平滑、几乎没有毛刺。c图使用了一位像素编码、四位预测系数编码的系数法,它比b图要处理得好些,这是因为c图用了16个预测系数,所以颜色和原图更加接近了,边缘方面也很理想,没有毛刺、失真度明显减小。d图也是五位编码,其中,两位像素编码、三位预测系数编码。它比b图要处理得好些,颜色要明亮些,但相比c图,它的边缘处理就稍显逊色一点。从c图和d图中,可以看到相同的编码位数,包含预测系数多的还原图效果更佳。

3.3算法改进

系数法的优点是边缘平滑,缺点是颜色稍显失真。解决的方法是增加预测系数的位数,在一定范围内增加它的精度。例如,有一组预测系数原来为(0.3,0.5,0.8,1,1.3,1.5,1.8,2.0),把它变化为:(0,0.3,0.4,0.5,0.65,0.8,0.9,1,1.2,1.3,1.4,1.5,1.65,1.8,1.9,2.0),这样它的压缩精度就会提高,颜色失真问题会得到很大改善。

复制法的缺点是边缘处理得不好,特别是在一位编码的时候。产生这个问题的原因也是精度不够,增加像素编码位数就能改善这个问题。

4结束语

本文主要介绍了一种新型的图像压缩算法,它有两个分支,一个是复制法,一个是系数法。复制法相比系数法,在流程上要简单,而且颜色失真度小,唯一的不足是边缘处理得不是很好。而这恰好是系数法的优点,它在边缘处理上效果非常好,与原图几乎一样,但它的缺点就是颜色失真度比复制法要大。最后提出了针对这两个问题的改进方法,根据实验分析和结果可以看出,这种算法快速有效,取得了预想的成果。

摘要:提出了一种思想新颖、实现方便的图像压缩算法。它是一种基于预测编码、通过隔行隔列分解图像,组成四个子块,然后通过图像子块间的映射来实现图像压缩的方法。预测编码采用固定的预测系数,使得预测过程速度很快。

关键词:预测系数,参考像素,压缩率,相对数据冗余度

参考文献

[1]王文成,卢金明,张永林.图像无损压缩的预测编码及量化误差处理.光电子.激光,2004,15(5):608-611.

[2]李宏贵,李兴国,罗正发.基于四叉树的灰度图像压缩方法.系统工程与电子技术,2004,26(7):981-984.

[3]王向阳.关于图像压缩编码算法研究的综述.烟台师范学院学报:自然科学版,2001,17(4):288-295.

[4]Babacan S D,Sayood K.Predictive image compression using conditionalaverages.Data Compression Conference,proceedings.DCC,2004:524.

图像分层编码技术的分析与设计 篇8

随着数字图像通信技术的发展,压缩数字图像已越来越普遍地在无线有噪声信道中传输。无线信道具有带宽有限和易错、时变的特点,数据在传输过程中会发生错误或者丢失,提高图像编码算法的抗误码能力是保证图像传输鲁棒性(Robustness)的一个重要方面。同时,数字图像传输时应当避免出现因环境变化出现的接收图像质量的剧烈变化,做到逐渐变化。针对这些问题以及视频图像信号对实时性要求高的特点,分层编码(Layered Coding)技术具有很强的码率调整能力和误码容忍能力,使视频图像编码同时具有良好的鲁棒性和带宽的自适应性,并且能在信道环境恶化的情况下,使接收图像质量逐渐变化。

1分层编码

早期视频图像压缩主要应用在电视信号的传输以及数字视频的存储等方面,其标准如MEPG-1,属于单层编码。后来针对无线信道易错、不稳定的特点,提出了分层视频图像编码技术,该技术将图像信息分成基本层和增强层,基本层中包含了视频图像最基本的信息,是接收图像质量的最低要求;增强层中包含了视频图像中的细节信息,是图像解码的可选信息,2层分层编码框架如图1所示。图像在解码过程中先得到基本层的码流,重建低质量的图像,如果带宽有富余再解增强层码流,得到高质量的视频。接收端根据自己的可用带宽、处理能力等来选择要解码的视频层。

分层编码技术最早出现在MPEG-2标准中,依据对图像信息分割方式的不同,主要包括空域分层、信噪比(Signal Noise Ratio,SNR)分层、时域分层和数据分割等。此外,MPEG-4视频标准定义了精细可伸缩性视频编码方法(Fine Granularity Scalable,FGS),以及后来人们提出改进的渐进精细粒度分层编码(Progressive Fine Granularity Scalable,PFGS)。分层编码视频传输为噪声信道提供了坚韧的错误复原能力,可以在可变比特率情况下获得预期的视频质量。

2码率分配

基于分层编码的图像通信中,目前国外对各种分层方法已有较深入的研究[1,2,3,4],但对其分多少层和各层速率问题没有规定,当码流在无线信道中传输时,分层编码的码率分配直接影响数据的传输性能和接收端重建图像质量。

2.1层数选取

图像分层编码中,编码层数越多,对速率的划分越细,接收信号的速率越接近收端的要求,得到的图像重建质量越好。但实现分层编码不可避免地使编解码器复杂性增加,需增加一些额外的码字,使得表示图像信息的比特减少,经传输后重建图像质量有一定下降。

因此,在分层编码时,分层层数太多会带来更大的分层开销,增加总的传输码率,比如MPEG-2标准2层SNR分层编码,编码总码率增加大约20%左右[1],而空域分层编码会使压缩软件和硬件的开销增加30%左右,编码效率大大降低。因此,在实际应用中需要对此进行折衷,选择合适的层数。

2.2基本层速率

视频图像通信用户端的不同,导致带宽的不同需求。分层编码后的图像传输,想要满足不同用户的需求,不同用户都能接收到可以接受的图像质量,需要图像传输码率满足一定的要求。在码率固定情况下,如何分配基本层和增强层的码率成为另一关键问题。

基本层和增强层之间的码率分配,首先要解决是基本层码率选取为多少才合适。基本层速率的选取不宜过低,因为基本层要包含足够的图像基本信息,当增强层数据全部丢失时,仍能保证从所接收到的码流重构出可接受的视频图像。实验证明,基本层码率越大,接收图像质量越好[2]。但是同时,基本层速率也不能选取过高,如果基本层的码率设置过高,超过用户接入的最低带宽,将不能满足所有用户的要求。Benzler[3]提出基本层码率应占总码率的50%,而M.Domanski[4]的测试结果是31%~41%。

不同的分层策略所产生的效果不同,数据分割将头信息、运动矢量和低频系数划分为基本层,也可以根据I、P、B帧的重要性把I、P帧数据划为基本层。不同分层方法基本层速率也不同,M.Domanski[4]提出,MPEG-2空域分层的基本层码率占总码率的60%~70%,而MPEG-4 FGS的基本层采用非层次化编码技术编码,编码码率处在信道码率变化范围的下限。

此外,对同一图像,质量要求不同,基本层所占的比例不同,较高质量的压缩,其基本层码率所占的比例较低;对不同的图像这一比例也不相同,包含边缘较多的图像,其基本层码率所占的比例较低。基本层速率的选择受以上等因素的影响,需要根据实际情况适当选取。

2.3增强层码率分配

对于MPEG-4标准采用的FGS编码,增强层码流可以在任意处截断,获得对码流速率的连续控制,可以将基本层固定为同样的码率,将主要的精力放在改进增强层的编码方法,采用适当的增强层速率截取,满足带宽要求。而传统的分层编码无法实现增强层码流的任意截断,在基本层和增强层传输速率确定的情况下,接收端只能根据传输状况和接收能力选择接收哪些层,得到阶梯状的分层图像效果,传统分层编码与FGS分层效果图如图2所示。

这时,如何合理地分配各增强层速率,对重建图像质量也有影响。在基本层速率确定的前提下,常用以下2种方案分配增强层速率(设ci为加入第i层编码后的总速率)[5]:

① 均匀分配:所有增强层的速率是相同的,即ci=ci-1+β,β为常数;

② 幂数分配:总速率等比增长,即ci=γci-1,γ是常数且γ>1。

以上固定的码率分配方案存在一定局限性,这里提出一种基于码率失真理论的最佳分配方案。码率分配算法的基础是增强层的码率失真(Rate Distortion,RD)函数,即增强层解码的比特数与解码的失真度之间的函数关系。当信源的概率密度为拉普拉斯分布和高斯分布时,码率失真函数可以写为[6]:

D(R)=σ2e-aR

式中,D(R)为解码图像与原图像误差的均方值,R为增强层要编码图像的比特数;σ正比于增强层要编码图像信号的方差的平方根;a为一个常数。

这样增强层码率分配可以视为求解下式的最小值:

f(R1,R2,Rn)=D1(R1)+D2(R2)+Dn(Rn)=i=1nσi2e-aRi

式中,n为增强层层数;S为增强层总码率;Ri为增强层i的速率。其约束条件为:

R1+R2+…+Rn=S

采用Lagrange方法求极值:

g(R1,R2,…Rn)=f(R1,R2,…Rn)-λ(S-(R1+R2+…+Rn))分别对Ri(i=1,2,…,n)和λ求偏导:

gR1=gR2=gRn=gλ=0

解得:

Ri=Sn+2anjilnσiσj

基于码率失真理论的码率分配算法,兼顾编码的效率和传输鲁棒性,根据实际需要,在基本层速率固定的情况下,将剩下的码率最优化的在各增强层进行分配,能提高整个视频的质量,在一定的总速率限制下,使图像的整体失真最小。此外,这种方法具有很低的复杂性,适合实际应用。

3基于MPEG图像的分层传输设计

在MPEG标准中定义了3种图像类型:I帧图像,采用帧内编码,不参照其他图像;P帧图像,参照前一幅I帧或P帧图像做运动补偿编码;B帧图像,参照前一幅和后一幅I帧或P帧图像做双向运动补偿编码。以25 F/s的视频图像为例,I帧图像一般0.5 s左右一幅,2个I帧相隔12帧。2个相邻的I帧图像之间会插入若干个P帧图像,2个相邻的P帧或I帧图像之间会插入若干个B帧图像。I帧作为P帧和B帧图像的参照图像,要求图像质量较高,否则会引起误差,并向P帧和B帧图像扩散。如果2个I帧间隔太大,误差扩散就会非常严重。在视频流中,1个I帧后面一般有3个P帧和8个B帧。其中,2个相邻的P帧,或P帧与I帧之间,有2个B帧。MPEG视频编码特性决定了I帧、P帧和B帧图像之间具有一定的依赖关系,并且I帧、P帧和B帧的重要性或优先级依次降低。

针对MPEG图像的上述特点,在进行MPEG图像的分层传输设计时,将I、P、B帧分层放入基层、增强层1与增强层2中传输,当网络发生拥塞时,优先丢弃优先级低的分组;在接收端,当有空余可用带宽时接收层次增加一层,当发生拥塞时丢弃当前接收的最高层。是否发生拥塞以接收分组中是否有丢失事件作判断依据。接收者周期性地执行加入试验,以此判断是否有可用带宽用于增加层次数据的接收。这样,接收端用加入和退出接收层的方式实现了图像分层传输的拥塞控制。

采用上述的图像分层传输机制后,可根据需要对各层进行不同的抗误码保护策略,使得不同内容的信息具有不同的保护。经实验证明,经过分层处理和不等保护后,图像传输的抗误码能力大大增强,传输系统的可用性得到有效地提高。

4结束语

上述分析了分层编码分层层数、基本层码率对传输图像质量的影响,在增强层码率分配上,基于码率失真理论给出了一种码率分配方案,提高了解码图像的主观质量是一种简单、有效的码率分配方案;最后给出了基于MPEG图像的分层传输设计,实验证明,经过分层处理后,图像传输的抗误码能力大大增强。图像分层编码是一种很灵活的编码方式,它可以有效地解决带宽受限时的图像传输问题,广泛用于无线网络视频传输、数字电视广播等视频通信领域。 

参考文献

[1]李晶.提高MPEG-2信噪比可分级编码效率的研究[D].合肥:中国科学技术大学硕士学位论文,2001:10-15.

[2]陈丹.基于精细分层编码的视频通信技术研究[D].西安:西北工业大学博士学位论文,2002:25-30.

[3]BENZLER U.Spatial Scalable Video Coding Using aCombined Subband-DCT Approach[J].IEEE Trans.Circuits Syst.Video Technol,2000,10(7):1 080-1 087.

[4]DOMANSKI M,LUCZAK A,MACKOWIAK S.Spatio-temporalScalability for MPEG Video Coding[J].IEEE Trans.CircuitSyst.VideoTechnol,2000,10(7):1088-1093.

[5]LIU Jiang-chuan,LI Bo.An End-to-End Adaptation Protocolfor Layered Video Multicast Using Optimal Rate Allocation[J].IEEE Trans.on Multimedia,2004,6(1):87-102.

图像编码 篇9

在数码相机, 个人电脑等电子产品日益普及的今天, 海量的图像数据成了人们获取信息的重要来源。要快速处理如此海量的数据, 人们往往会觉得力不从心, 无暇顾及, 因此人们开始利用电脑来辅助理解, 识别和区分这些图像。图像分类技术因此越来越得到重视。图像分类, 是根据图像的信息经过一定的处理以达到区分不同类别的目标的目的。其作用类似于人眼观察一幅图像, 根据人自身所具有的知识辨认出图像中的目标, 然后把该图片分到相关的类中。

一个图像分类系统通常分为底层特征提取, 图像表达, 分类器这三个重要组成部分, 每部分都已经具有很多现成的技术。然而这些技术并不完美, 在很多方面需要我们去改进。

1.1 底层特征提取

一般的原始图像由RGB三色组成, 如果原始图像只用这些颜色值来表达, 不仅数据量大, 而且会丢失很多的信息, 如邻域信息, 空间关系等。底层特征是根据图像像素点的一定邻域内的边缘, 纹理, 颜色, 形状等信息, 用统计直方图或者频域变换等方法提取出的特征矢量。一般较多使用的是SIFT特征[1]、HOG特征等, 而SIFT特征应用最广泛。

1.2 图像表达

图像表达可以采取的方法则主要是在底层特征的基础上做无监督的聚类, 所得到的聚类中心形成词袋模型。然后每幅图像都用词袋里面词条的词频来表示, 形成图像的特征表达。由于词袋模型没有关注到各词条的空间关系, 因此Svetlana Lazebnik等提出了空间金字塔匹配, 并证明空间金字塔匹配满足核函数。

1.3 分类器

在图像分类和机器学习领域, 最常用并且较出色的是支持向量机 (SVM, Support Vector Machine) 。SVM是Vapnik等人提出的利用最大边界准则训练出一个超平面, 以此区分出不同类别的样本。对于非线性问题, SVM通过一个非线性映射, 把样本空间映射到一个高维乃至无穷维的特征空间中 (Hilbert空间) , 使得在原来的样本空间中非线性可分的问题转化为在特征空间中的线性可分的问题。

本文将通过阐述一个图像分类系统的设计过程以及所用的关键技术来展开对图像分类的研究。第2节将阐述混合高斯模型对应的超级向量编码及其算法实现和推导。第3节运用聚会函数和空间金字塔匹配得到图像的表达;第4节使用Universum SVM实现分类;第5节是实验结果分析;第6节是总结与展望。

2 超级向量编码

在目前最流行的图像分类模型中, 基本上都是用k-means进行聚类得出聚类中心, 这些中心组成词袋。然后把图像中的底层特征向量都与这些词条进行比较, 投票到最近的中心, 以完成编码。例如, 对于某个特征向量, 给定聚类中心{μ1, …, μK}, 则

所得到的编码为。这种方法被称为矢量量化, 编码中只有第个是有值为1, 其他则是0。

这是一种“硬分配”, 相当于把每个数据点分配到与其最近的类中。自然而然地会想到另一种方式——“软分配”, 就是不只是考虑把某个数据点归入到某个类中, 而是考虑这个数据点归入到某个点的概率。混合高斯模型 (GMM, Gassian Mixture Model) 正是这样一个可以提供“软分配”的聚类模型。

2.1 混合高斯模型 (GMM)

混合高斯模型假设数据都服从高斯分布, 但是实际上数据可能不只是服从单个高斯分布, 因此实际上可以通过多个高斯分布来逼近实际的概率分布。混合高斯模型由多个单高斯模型线性叠加形成。形式为

其中指单个高斯分布, 表达式为。为高斯分布的均值, 为协方差矩阵, D是数据点的维数。从式子可以看出, 表示每个类出现的概率。, 表示每个类中都服从一个高斯分布。

在需要根据已知数据推断出这样一个混合高斯模型。注意到在这个混合高斯模型中包括了这三个参数, 因此只要把这三个参数估计出来就可以得到一个混合高斯模型了。

假设有N个已知数据, 它们都服从上面假设的混合高斯模型。那么需要求到一组使得这些参数所确定的混合高斯模型得到的数据点分布最大。即, 一般会取它的对数形式, , 得到极大对数似然估计函数。只要对这个目标函数求最优就可以得到所要求的参数, 从而确定这个混合高斯模型。根据式子2把目标函数展开

这个式子是没办法直接对其求导, 并用梯度法寻优的, 因此在这里只能用其他方法寻优。

2.2 EM算法

针对上文提到的问题, EM (Expectation-Maximization) 算法是一个可以解决此类问题的通用算法。它的主要思想是初始化所有参数, 先根据已知参数计算后验概率, 再根据这个后验概率调整参数, 如此循环使目标函数值达到收敛目标。

假设有一组参数的初始值, 那么根据这些参数就可以求出后验概率, 这一步叫E-step。这个后验概率表明数据由第k个中心生成的概率。

现在在这个后验概率的基础上重新更正参数, 这一步叫M-step。

把目标函数3对求导并令它为零得

假设为非奇异矩阵, 整理得

同样, 对求导并令它为零, 得

最后, 求, 因为存在约束条件, 所以这里用拉格朗日乘数法把有约束问题转化为无约束问题。目标函数转化为

对求导并令其为零, 得

等式两边同时乘以, 并对k求和, 则

定义, 可以理解为被分配到第k个中心的数据点数目。

这样, 把三个参数的更新式重写一遍,

完成了这三个参数的估计后, 把所有参数和数据代到目标函数中, 如果结果收敛则认为这些就是最优参数。否则利用这些新的参数求后验概率, 循环迭代直至收敛。算法流程图如图1所示:

但是在实现以上算法的时候, 需要注意以下几个问题。

2.2.1 数据下溢。

正如前文所述, 似然由多个小数相乘得到, 通常会很小, 以至于下溢, 超出计算机可表示范围, 因此才采用对数方式来表示。所以要注意的是在计算单个高斯分布的时候, 不能直接利用

特别对于高维数据来说。所以, 在写程序时虽然感觉逻辑上没有错误, 但如果不解决这个问题, 求出来的参数是不正确的。

2.2.2 运算量大。

对比k-means聚类的运算量, 发现GMM的运算量是相当大的, 如果在聚类中心较多的情况下运算时间更长。特别是在计算高斯分布的时候, 的计算是耗费时间最多的, 而且有出现是奇异矩阵导致不可逆, 行列式为零的情况。

2.2.3 奇异矩阵的处理。

是奇异矩阵会出现不可逆, 行列式为零的情况。因此这些矩阵要进行特殊处理, 通常会在对角上加上一个较小的数, 如10-5。

2.2.4 初始值选取。

一般初始值的选取是随机选取中心同等的权重, 全局的协方差矩阵。然而从上文可知混合高斯模型的EM算法运算量是很大的, 为了使它更快收敛, 一般先用k-means得到相对准确的中心、权重和协方差矩阵, 从而减少迭代次数。

2.3 超级向量编码

由上文的EM算法得到一个关于所有底层特征的混合高斯模型, 那么所有特征都符合这个分布。观察大部分基于混合高斯模型的应用, 可以发现他们都会用到超级向量来描述, 但是这种超级向量主要用于从总体上描述一个混合高斯模型。例如, 对于有K个中心混合高斯模型, 有如下超级向量的定义

我们基于这种思想, 可以定义一种超级向量用于描述单个底层特征, 进而得出这个底层特征的编码。

观察式子8可知, 第k个中心由与所有数据点相关的组成的, 因此定义一个关于单个数据点 (底层特征) 的超级向量。

这样就可以实现对每个底层特征的编码, 把它取代了用边k-means做聚类, 矢量量化得到编码。具体流程图如下图2所示。

3 聚合 (Pooling)

词袋模型的表达是一种与空间关系无关的图像表达, 各个聚类中心之间是没有顺序的, 这种空间关系丢失会导致信息的缺失, 从而影响分类性能。

为了克服词袋模型的这种缺点, Kristen Grauman和Trevor Darrell提出空间金字塔匹配 (SPM, Spatial Pyramid Matching) 并证明这种匹配核函数满足默瑟条件。正因为这种考虑空间关系并满足默瑟条件的原因, 使得这个模型在图像分类领域得到广泛应用。

在空间金字塔匹配模型中就是把图片通过不同的分割序列分成不同的大小的方形区域。每个区域重新看作一幅图像, 在词袋模型中得到其对应表达。最普遍的做法是, 把图片做三层分割, 分割的块数分别为1, 4, 16。它们分别对应20, 22, 24。

论文定义了一种聚合函数F, 叫做max pooling function。这个函数的作用是取出编码向量中相同维度的最大值。即对于一组N个K维的编码向量, 有

其中指第i个编码向量的第k维, Z (K) 指聚合得到的向量的第k维。

在这里, 我们并没有使用1, 4, 16的分块方式, 而是选用1, 4, 3, 也就是1×1, 2×2, 3×1的分块方式。它们分别得出8个聚合后的编码向量, 记为。那么, 整幅图像可以表达为

在这个表达下针对两类问题可以用线性SVM训练出一个超平面把两类数据样本分开, 这个超平面的表达式为。

在线性情况下, 我们只需要对SVM目标函数的原始形式进行寻优, 而不用对其对偶问题进行寻优。

4 UniversumSVM

支持向量机 (SVM, Support Vector Machines) 是一种通用的分类器。它是基于边缘最大准则求出一个超平面, 我们可以依据这个超平面判断出样本属于哪一类。如图4所示, 蓝色圆点代表一类样本, 红色圆点代表另一类样本, 我们的目标是需要得到中央黑色实线。这个黑色实线可以把两类区分开来, 但是在训练是我们还想要得到一个更严格的区分, 就是两类样本点中离边界最近的距离必须小于某个设定值。

区别于标准损失函数, 们采用一种可导的损失函数。对于, 困难样本的情况, 我们定义损失函数。因此, 有目标函

我们用L-BFGS对目标函数12进行寻优得到参数, 确定分界面方程。

5 实验结果分析

5.1 数据库

本设计实验在PASCAL VOC 2009数据库上进行, 该数据库拥有7054幅训练图片和6650幅测试图片, 一共标注为20类, 分别为飞机、自行车、鸟、船等。这些图片都是从flickr收集得来的日常生活中的图片, 图片既有户外也有户内, 远景和近景, 以及不同角度, 而且图片中还有其他无标注的物体。因此这个数据库是一个较为通用的数据库, 同时利用该数据库进行实验是极具挑战性的。

由于VOC2009数据库中的图片是多事例多标签的, 普通的准确率难以正确地衡量分类系统的性能, 因此VOC2009数据库是采用AP (平均精确率, Average Precision) 来衡量分类系统的性能。

5.2 实验设置

本设计实验是在PASCAL VOC2009数据库上进行, 然而由于数据量大而且算法复杂度较高, 因此我们只从所有训练样本中随机抽取了600幅图片做训练样本, 600幅图片做测试样本。首先, 我们对图片进行了分辨率归一化, 因此所有图片的最短边不会大于300像素。在特征方面, 我们选用了灰度SIFT特征, 用致密网格提取。网格大小有16×16、24×24、32×32三种规格, 网格间距为4。在如此稠密的的目标点下提取特征, 数据量将相当巨大。所以在特征提取以后紧接着做了PCA (主成分分析, Principal Component Analysis) , 把数据从128维降为80维。

5.3 实验结果和分析

我们对分层混合高斯模型用不同的聚合函数, 观察聚合函数对分类结果的影响。我们分别选用max pooling和average pooling两种聚合函数, 结果如表1所示。

观察上表发现max pooling聚合函数比average pooling聚合函数得到的结果高超过4%, 这也正是编码技术一般都使用max pooling聚合函数, 而不用average pooling聚合函数得到图像表达的缘故。

6 总结与展望

本文阐述了一个基于经典图像分类系统的新分类系统, 它结合了超级向量编码技术, 聚合函数, Universum SVM等新技术。文中运用了基于混合高斯模型得到的超级向量编码, 详细剖析了EM算法求教混合高斯模型的步骤, 并总结了该求解中需要注意的各种细节。区别于矢量量化的聚合函数, 文中采用了更适合编码技术的max pooling function, 这个结论在实验中可以很明显地观察到。为了解决困难样本问题, 本文运用了Universum技术, 而为了在大数据量寻优时使用L-BFGS算法, 本文用可导的损失函数代替标准的“转轴”损失函数 (hinge loss) 。

因为数据库和算法的原因, 计算时间太长, 占用内存和硬盘空间太多, 有时候由于维数太高而导致矩阵不能被创建。我们必须找到更高效的方法来减少运算时间和占用空间。此外, 我们可以提高该编码技术近似度, 以获得更好的分类效果。

摘要:随着社会迅猛发展, 科学技术日新月异, 人们获取的信息也在不断地增长。在数码相机, 个人电脑等电子产品日益普及的今天, 海量的图像数据成了人们获取信息的重要来源。人们开始利用计算机来辅助理解, 识别和区分这些图像。本文应用了超级向量编码取代经典的图像分类系统中矢量量化过程, 以达到更准确分类的目标。超级向量编码是基于混合高斯模型“软分配 (soft assign) ”特性产生的, 克服了矢量量化对数据近似误差较大的问题。此外, 本文还应用了更适合编码技术的max pooling聚合函数, 并把这种聚合函数应用在空间金字塔匹配架构上。最后, 运用改进的线性支持向量机进行分类。本文的分类系统在极具挑战性的PASCAL VOC 2009数据库上进行实验。实验比较了不同聚合函数对系统性能的影响。虽然实验结果总体不太理想, 但这个分类系统具有极大的研究价值。

关键词:图像分类,超级向量编码,混合高斯模型,聚合函数

参考文献

[1]Lowe, D.G.Distinctive image features from scale-invariant keypoints[N].IJCV, 2004, 60 (2) :91-110.

[2]Dalal, N.and Triggs, B.Histograms oforiented gradients for human detection[N].CVPR, 2005.

[3]Csurka, G., Dance, C., Fan, L., Willamowski, J.et la.Visual categorization with bags of keypoints[N].ECCV, 2004.

[4]Lazebnik, S.and Schmid, C.and Ponce, J.Beyond bags of features:Spatial pyramid matching for recognizing natural scene categories[N].CVPR, 2006.

[5]M.Jordan., J.Kleinberg and B.Scholkopf[M].Pattern recognition and machinelearning, 2006.

[6]Grauman, K.and Darrell, T.The pyramid match kernel:Discriminative classification with sets of image features[N].ICCV, 2005, 1458-1465.

[7]Jianchao Yang, Kai Yu and Yihong Gong.Linear Spatial Pyramid Matching Using Sparse Coding for Image Classification[N].CVPR, 2009, 1794-1801.

上一篇:大学生职业规划下一篇:大学通识课