编码压缩标准(共8篇)
编码压缩标准 篇1
随着图像通信和多媒体的发展, 越来越多的数字视频业务不断涌现, 怎样适应不同信道传输的需求, 如何适应用户对视频自由选择编码的需求等问题相继出现, 由此出现了新一代的视频编码技术———H.264标准。它的制定正是为适应各种业务增长对运动图像压缩率的更高要求, 并使得编码后的视频数据能够在各种网络环境下更快传输。
1 H.264技术概述
H.264是由ITU-T和ISO/IEC的联合开发组共同开发的继MPEG-4之后的最新国际视频编码标准, 于2003年3月在泰国Pattaya举行的JVT第7次会议上正式成为国际标准, 在ITU-T中称为H.264 (起初成为H.26L) , 而在ISO/IEC中被称为MPEG-4的第10部分, 即高级视频编码 (AVC) 。通过使用该标准, 在同等图像质量下的压缩效率比以前的标准提高了2倍以上, 因此, H.264被行业看好。
H.264既保留了以往压缩技术 (H.263和MPEG-4) 的优点和精华, 又具有其他压缩技术无法比拟的许多优点。
(1) 低码流 (Low Bit Rate) :与MPEG-2和MPEG-4 ASP等压缩技术相比, 在同等图像质量下, 采用H.264技术压缩后的数据量只有MPEG-2的1/8, MPEG-4的1/3, 这将大大节省用户的下载时间和流量费用。
(2) 高质量的图像:H.264能提供连续、流畅的高质量图像 (DVD质量) 。
(3) 容错能力强:H.264提供了解决在不稳定网络环境下容易发生的丢包等错误的必要工具。
(4) 网络适应性强:H.264提供了网络适应层, 使得H.264的文件能容易地在不同网络 (如因特网、CDMA、GPRS、WCDMA、CDMA2000等) 上传输。
2 H.264的技术特点
H.264在编码框架上还是沿用以往的MC-DCT结构, 即运动补偿加变换编码的混合结构, 因此它保留了一些先前标准的特点, 如不受限制的运动矢量、对运动矢量的中值预测等。H264在性能上的较大提升应归功于各种不同技术的性能改进, 其中主要是帧内预测、运动估计、整数变换、环路滤波技术、量化、以及熵编码等。
2.1 帧内预测
对I帧的编码是通过利用空间相关性而非时间相关性实现的。以前的标准只利用了一个宏块内部的相关性, 而忽视了宏块之间的相关性, 所以编码后的数据量往往较大。为了能进一步利用空间相关性, H.264引入了帧内预测以提高压缩效率。简单的说, 帧内预测编码就是用周围临近的像素值来预测当前的像素值, 然后对预测误差进行编码。这种预测是基于块的, 对于亮度分量 (luma) , 块的大小可以在16×16和4×4之间选择。16×16块有4种预测模式, 4×4块有9种预测模式;对于色度分量 (chroma) , 预测是对整个8×8块进行的, 有4种预测模式。除了DC预测外, 其他每种预测模式对应不同方向上的预测。
2.2 增强的运动估计
2.2.1 提高运动估计的精度
H.264支持1/4和1/8像素精度的运动矢量。在1/4像素精度时可使用6抽头 (6tap) 滤波器来减少高频噪声, 对于1/8像素精度的运动矢量, 可使用更为复杂的8抽头 (8tap) 的滤波器。在进行运动估计时, 编码器还可选择“增强”内插滤波器来提高预测的效果。
2.2.2 SP帧
H.264定义了一种新的SP图像类型, 它可以在不同的视频流或一个视频流的不同部分进行切换, 通过在解码器的运动补偿预测过程中放置一个前向变换和量化操作来实现。SP图像主要用于基于服务器的视频流应用中。
2.2.3 运动估计模式
在H.264的运动预测中, 一个宏块 (MB) 可以被分为不同的子块, 形成7种不同模式的块尺寸, 如图1所示。因此在每个宏块中可以包含有1、2、4、8或16个运动矢量。
2.2.4 多帧参考
在H.264中, 允许编码器使用多于一帧的先前帧用于运动估计, 例如2帧或3帧刚刚编码好的参考帧。编码器将选择对每个目标宏块能给出更好的预测帧, 并为每一宏块指示是哪一帧被用于预测的。
2.3 整数变换
在变换方面, H.264使用了基于4×4像素的类似于DCT的变换, 但使用的是以整数为基础的空间变换。在具有4×4DCT变换所有特性的同时, 该变换还具有下述特性:
(1) 所有操作使用整数算术运算, 从而保证了精度。这样, 编码器和解码器的变换和反变换的精度相同, 没有“反变换误差”。
(2) 变换的核心操作没有乘法运算, 只有加法和移位, 变换的比例系数可以整合到量化器中, 减少乘法运算的次数, 从而减少了运算量和复杂度, 有利于定点DSP移植。
2.4 先进的环路滤波技术
由于编码是有损的, 会引起重构以后块间亮度落差大、图像出现马赛克等现象, 影响人的视觉感受。为了消除这种块效应现象, H.264在重构当前帧之前, 采用了一个自适应的环路滤波器, 能有选择性地对块间信号滤波, 平滑块间信号, 提高图像质量。重构后的帧更接近原始帧, 有利于下一帧的运动补偿和预测, 减少预测残差。
2.5 量化
对变换参差系数的量化使用了52级步长的量化器, 可选32种不同的量化步长, 而H.263标准只有31级。但是在H.264中, 步长是以12.5%的复合率递进的, 而不是一个固定常数。量化步长范围的扩大使得编码器能够更灵活、精确地进行控制, 在比特率和图像质量之间达到折中。
2.6 增强的熵编码
H.264使用Exp-Golomb编码和内容自适应变长编码 (CAVLC) 两种熵编码。对于语法, 使用Exp-Golomb编码, 即把所有语法映射到统一的可扩展码字表, 而不是为每种语法设计不同的码字表。对于变换系数, 则使用CAVLC编码, 利用相邻块间非零系数的个数相关和零系数集中在高频段等特性, 采用从高频开始的逆向扫描方式, 充分挖掘数据的统计特性, 提高压缩比。
在H.263等标准中, 根据要编码的数据类型采用不同的VLC码表。H.264的UVLC码表提供了一个简单的方法, 对于任何类型的数据, 都使用统一变字长编码表。其优点是:解码器很容易识别码字的前缀, UVLC在发生比特错误时能快速获得重同步。
3 H.264与其它标准的性能比较
为了进行性能分析, 我们使用各标准的模型软件在相同条件下 (比特率或图像质量) 对同一图像序列进行测试, 测试结果如图2所示。
同时, 采用H.264压缩后的数据量也比同类其他标准小, 如表1所示。
从上述试验结果可以看到H.264在压缩性能上的优势是显著的。
4 应用前景
H.264标准使运动图像压缩技术上升到了一个更高的阶段, 在较低带宽上提供高质量的图像传输是H.264的应用亮点, 这也为英特网的应用提供了广阔的前景。H.264的推广应用对视频终端、网关、MCU等系统的要求较高, 这将有力地推动视频会议软、硬件设备在各个方面的不断完善。因此, 密切关注H.264的发展, 深入研究其对于网络传输的新贡献是非常必要的。同时, H.264视频编码新标准具有优于MPEG4和H.263的压缩性能, 可应用于英特网、数字摄像、数字视频录像、DVD及电视广播等领域的图像压缩。目前, 许多大公司 (如Nokia和Videolocus等) 都已经开始把H.264技术应用到各个领域中。
H.264技术对高清晰度电视的传输和存储至关重要。现在人们有可能将一部8Mbps的高清晰节目方便地存储在一张DVD上, 这将极大地促进和推动家庭影院市场, 使得人们不必再等待更为昂贵和不可靠的蓝光光盘的推出 (容量为27GB) 。同时, H.264使得在卫星或是有线电缆上, 每信道能传送4路高清晰节目, 其运行费用比基于MPEG-2系统低得多, 这对于有线电视投资者无疑具有巨大的吸引力。另外, 由于H.264编码比现有编码算法的压缩比高1倍, 这将使其在移动通信领域也将占领一席之地并扮演重要角色。由于3G系统的频段十分昂贵降低传输码率、提高信道利用率将显得尤为重要。
5 结束语
H.264标准的推出是视频编码标准的一次重要的进步, 它比现有的H.263、MPEG-2具有明显的优越性, 特别是在编码效率上的提高使得它被应用于许多新的领域。然而, 在算法的复杂度上, H.264执行的时间和所需的存储量还较大。对算法的优化和完善将成为进一步研究的方向。
参考文献
[1]T.Wiegand, H.Schwarz.The emerging H.264/AVC standard.EBU TECHNICAL REVIEW, January2003.
[2]ThomasWiegand, Gary J Sullivan, Gisle Bjontegaard.Overview of the H.264/AVC Video Coding Standard.IEEE Transactions on Circuits and Systems for Video Technology, 2003 (7) .
[3]毕厚杰.新一代视频压缩编码标准:H.264/AVC[M].北京:人民邮电出版社, 2005.
[4]周敬利, 金毅.基于H.264视频编码技术的研究[J].华中科技大学学报 (自然科学版) , 2003 (8) .
[5]梅玉平, 杨维忠.3G与固定视频业务的融合[M].北京:人民邮电出版社, 2005.
编码压缩标准 篇2
小波分析用于图像去噪处理,主要是针对图像信号与噪声信号经小波变换后在不同的分辨率呈现不同的规律,在不同的分辨率下,设定阈值门限,调整小波系数,达到图像去噪目的。
在小波系数进行取舍之前,实际上按照一定准则(或者阈值化)将小波系数划分为两类:一类是重要的、规则的小波系数;另一类是被看作非重要的或者受噪声干扰较大的小波系数。通常以小波系数的绝对值作为小波系数的.分类单元。小波系数绝对值趋向于零,意味道着小波系数所包含的信息量并且强烈地受噪声干扰。最常用的阈值化去噪方法:一是默认阈值消噪处理,即在消噪处理过程中采用程序中设定的阈值,对分解信号进行分类处理,以求消除噪声;二是给定软(或硬)阈值消噪处理,阈值通过某一个经验公式获得,该阈值比默认的阈值去噪效果更有说服力。
对于“软阈值化”,绝对值小于阈值δ的小波系数数值用零代替;绝对值大于阈值δ的小波系数数值用δ来缩减。如下所示:
式中,W表示小波系数的数值;sgn(・)是符号函数,当数值大于零,符号为正,反之符号为负。对于“硬阈值化”,仅仅保留绝对值大于阈值δ的小波系数,并且被保留系数与系数相同(没有被缩减),如下式所示:
两种方法各有差异,前者具有连续性,在数学上容易处理,后者更接近实际应用。
阈值化处理的关键在于选择合适的并值δ。如果阈值门太小,处理后的信号仍有噪声存在;阈值太大,重要的图像特征将被滤掉,引起偏差。大多数阈值的选取过程是针对一组小波系数,即根据本组小波系数的统计特性,计算出一个阈值δ。Donoho等提出了一种典型的阈值选取方式,从理论上说明阈值与噪声的方差成正比,为:
其中,Nj表示第j层子带上小波系数的个数。
浅析图像压缩编码方法 篇3
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.
关于图像压缩编码的研究 篇4
1 图像压缩编码的可行性研究
图像数据的压缩机理来自两个方面:一是利用图像中存在大量冗余度可供压缩;二是利用人眼的视觉特性。
1.1 图像数据的冗余度
1) 空间冗余:在一幅图像中规则的物体和规则的背景具有很强的相关性;
2) 时间冗余:电视图像序列中相邻两幅图像之间有较大的相关性;
3) 结构冗余和知识冗余:图像从大面积上看常存在有纹理结构, 称之为结构冗余;
4) 视觉冗余:人眼的视觉系统对于图像的感知是非均匀和非线性的, 对图像的变化并不都能察觉出来。
1.2 人眼的视觉特性
1) 亮度辨别阈值:当景物的亮度在背景亮度基础上增加很少时, 人眼是辨别不出的, 只有当亮度增加到某一数值时, 人眼才能感觉其亮度有变化。人眼刚刚能察觉的亮度变化值称为亮度辨别阈值;
2) 视觉阈值:视觉阈值是指干扰或失真刚好可以被察觉的门限值, 低于它就察觉不出来, 高于它才看得出来, 这是一个统计值;
3) 空间分辨力:空间分辨力是指对一幅图像相邻像素的灰度和细节的分辨力, 视觉对于不同图像内容的分辨力不同。
2 图像压缩编码方法研究
图像编码的过程可以概括成图1所示的3个步骤, 原始图像经映射变换后的数据, 经量化器和熵编码器成为码流输出。目前, 常见的编码方法有如下几种:
2.1 预测编码
预测编码是根据某一模型利用过去的样值对当前样值进行预测, 然后将当前样值的实际值与预测值相减得到一个误差值, 只对这一预测误差值进行编码。预测方法:1) 帧内预测帧内预测利用图像信号的空间相关性来压缩图像的空间冗余, 根据前面已经传送的同一帧内的像素来预测当前像素;2) 帧间预测:电视图像在相邻帧之间存在很强的相关性;3) 预测系数的选择:预测系数的选择通常采用最优线性预测法, 选择预测系数a1, a2, …, an-1使误差信号en的均方值最小;4) 自适应预测:自适应预测又称为非线性预测。可以利用预测误差作为控制信息, 因为预测误差的大小反映了图像信号的相关性。
2.2 正交变换编码
变换编码 (Transform Coding) 的基本思想是将在通常的欧几里德几何空间 (空间域) 描写的图像信号变换到另外的向量空间 (变换域) 进行描写, 然后再根据图像在变换域中系数的特点和人眼的视觉特性进行编码。
2.3 哈夫曼 (Huffman) 编码
Huffman编码方法就是利用了这个定理, 它是一种效率高、方法简单的编码。信源中符号出现的概率相差越大, Huffman编码效果越好。
Huffman编码步骤:1) 把信源符号xi (i=1, 2, …, N) 按出现概率的值由大到小的顺序排列;2) 对两个概率最小的符号分别分配以“0”和“1”, 然后把这两个概率相加作为一个新的辅助符号的概率;3) 将这个新的辅助符号与其他符号一起重新按概率大小顺序排列;4) 跳到第2步, 直到出现概率相加为1为止;5) 用线将符号连接起来, 从而得到一个码树, 树的N个端点对应N个信源符号;6) 从最后一个概率为1的节点开始, 沿着到达信源的每个符号, 将一路遇到的二进制码“0”或“1”顺序排列起来, 就是端点所对应的信源符号的码字。由于Huffman方法构造出来的码不是惟一的, 主要有两个原因:一是在两个符号概率相加给两条支路分配“0”和“1”时, 这一选择是任意的;二是当两个消息的概率相等时, 0, 1分配也是随意的。Huffman编码对不同的信源, 其编码效率是不同的。7) Huffman编码中, 没有一个码字是另一个码字的前缀。因此, 每个码字惟一可译。
2.4 子带编码
子带编码的基本思想是利用带通滤波器组将信道频带分割成若干个子频带 (Subband) , 将子频带搬移至零频处进行子带取样, 再对每一个子带用一个与其统计特性相适配的编码器进行图像数据压缩。另外, 子带编码还有以下优点:1) 一个子带的编码噪声在解码后只局限于该子带内, 不会扩散到其他子带。这样, 即使有的子带信号较弱, 也不会被其他子带的编码噪声所掩盖;2) 可以根据主观视觉特性, 将有限的数码率在各个子带之间合理分配, 有利于提高图像的主观质量;3) 通过频带分解, 各个子带的抽样频率可以成倍下降。
3 结论
图像编码是各类图像信息传输、存贮产品的一项核心技术。图像编码技术的进展已使那些制约因素不再成为瓶颈, 从而推动了各类图像通信系统的推广和应用。
摘要:图像信息占据大量的存储容量, 而且传输的带宽有限, 因此, 对图像进行压缩编码已经变得非常重要了, 本文笔者首先分析了图像压缩编码的可行性, 然后详细的对当前较常用的压缩编码方法进行了探讨。
关键词:图像,压缩编码,冗余度,预测编码
参考文献
[1]董士海.图像格式编程指南.北京:清华大学出版社, 1994.
[2]张远鹏, 董海, 周文灵.计算机图像处理技术基础.北京:北京大学出版社, 1996.
[3]章毓晋.图象处理和分析, 北京:清华大学出版社, 1999.
编码压缩标准 篇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
关键词:稀疏编码,体数据压缩
0 引言
体可视化技术是可视化研究中的关键技术之一, 在计算流体力学、地球、空间、医疗科学等各个领域中得到广泛应用。体数据由于是高维数据, 数据量较大, 特别是近年来随着数据获取设备性能的提高和科学模拟精度的增加, 体数据的数据量急剧增长, 达到了几十GB甚至TB级别。
如此巨大的数据量对计算性能、存储空间和网络传输速度等都提出了很大的挑战, 如当前的显存空间难以一次性读入整个体数据进行绘制, 因而体数据的压缩技术研究是当前可视化领域的一个重要研究问题。常见的体数据压缩方法有三维小波变换[1,2,3,4]、PCA降维[5]及张量分解法[6]等。这些方法从体数据中提取一组统一的基矢量, 将体数据投影到这组基上以获得压缩效果。这组基矢量的选取标准是使体数据压缩后的全局平均误差较小。然而体数据中局部区域的数据并不是与所有的这些基矢量都相关, 对各个局部体数据而言, 选取的基矢量集合中只有少量基矢量与它高度相关, 其他基矢量对此数据块的重建效果作用不明显, 因此对各个局部数据块用各自相关性较高的基矢量重建能获得较好的效果, 而且能节省压缩后的存储空间。
本文将稀疏编码方法引入体数据压缩中, 提出了一种新的体数据压缩方法。稀疏编码依赖于数据的统计特性[7,8], 通过定义稀疏性约束来优化学习基矢量, 并且对每个局部数据块用基矢量集合中的少量最具代表性的基矢量重建。在各类用基矢量重建压缩的方法中, 数据块在基矢量上的投影系数都占据绝大部分的存储量, 相对于PCA等方法, 稀疏编码方法虽然使用了较大的基矢量集合, 但每个数据块只需用更少的基矢量重建, 从而只需存储更少的投影系数, 因而能获得更大的压缩率。稀疏编码方法目前在特征提取、模式识别等方面取得了许多成果, 具有重要的实用价值[5]。体数据中具有很多空区域 (体数据值为0) 和统计相似区域, 这些区域用少量的基函数就能获得较好的重建结果, 因而很适合用稀疏编码方法进行压缩。本文将稀疏编码方法引入体数据压缩中, 取得了比PCA等方法较好的压缩效果。
1 相关工作
首先, 假设自然数据具有稀疏结构, 即任意给定的一个体数据可以用一个很大的数据集合中的少数几个非零元素来描述, 因此, 根据Barlow的冗余减少理论[9], 可以找到一个特别的低熵编码的形式。稀疏编码压缩体数据时, 首先对体数据进行了分块, 分割成大小相等的数据块, 这些数据块以矢量形式存储, 组成数据集。压缩过程分为两步, 首先从这个数据集中提取基矢量集合 (又称数据字典) 。压缩时对每个数据矢量找到最相关的少量基矢量, 并将此数据矢量投影到这些基矢量上获得压缩后的投影系数, 然后根据获得的投影系数来更新这个基矢量集合。递归进行前面的两个步骤, 直到找到一个较为稳定的字典和稀疏系数。该算法的整个流程如图1所示。
1.1 分块预处理及初始基选取
当稀疏编码模型用于体数据特征提取实验时, 我们并不是直接将每个体数据作为输入数据, 而是采用子块的形式对体数据进行分块压缩。若输入的体数据大小为L×L×L, 分块大小为τ×τ×τ (τ一般选取8或16) , 这样整个体数据被分成了块, 记为n, 组成一个n维的矢量, 然后将整个矢量作为训练数据进行特征提取。
初始基函数为一个随机数组, 需要进行归一化。
1.2 投影
首先, 将体数据中以x为中心的记为patch, 则整个体数据可以描述为N个patch的集合{P0, P1, …, Pn-1}, m个n维矢量数据组成字典D={dk}m-1k=0, 则patch集合中的元素Pi可以通过字典来描述:
其中, ω (k) 是系数矢量, 且数据字典中的特征矢量之间的差异应该能体现出patch集合中矢量数据之间的差异, 同时为了满足压缩的要求, 数据字典中矢量的数据量须小于patch集合中矢量的数据量。
所以, 给定patch集合和字典D, patch的稀疏分解为求系数矢量:
即patch中不为零的系数的个数不超过s个, 这个问题可以近似转化为下列优化问题:
其中, λ控制c的稀疏度, 它衡量了编码描述体数据的压缩程度。
1.3 字典更新
稀疏编码中最核心的关键就是字典更新, 选择较佳的数据字典能相应的提高压缩效率, 其中常用的方法是快速SVD[10], 其步骤如下:
步骤1首先, 初始化字典D为随机数组, 并归一化每一列。
步骤2逐个更新字典中的每一个dk (k=0…m-1) 。
令Ik={i|ωi (k) ≠0}, 它是使用了dk的那些Pi的序号集合表示除了dk外重建Pj后的余量, 则dk和ω (k) 的更新为;
它相当于对的一个SVD基近似用SVD的方法来求解。
步骤3对所有的dk进行归一化。
步骤4重复步骤2, 直到收敛, 结束迭代过程。
通过对数据字典和系数矢量的多次迭代学习, 我们就可以训练得到一个比较好的稀疏编码模型, 这个目标模型具有位置选择性、方向选择性以及频率选择特性。
为了便于体数据在绘制的时候能够随机访问体素, 实现边解压边绘制的目的, 需要首先找到体素在体数据中所在的块号i, 然后确定体素在块中的位置j, 由数据块的序号可以找到k个重建基矢量d1d2…dk和在这些基矢量上的投影系数ω1ω2…ωk, 最后重建该体素的值C:
并且该体素值与其在原文件中的存储顺序相对应, 相对于传统的方法重建该体素只需要较少的基矢量, 因此可以在需要绘制体数据的时候进行直接绘制, 大大加快了随机访问的速度。
2 实验结果与分析
本文的实验平台是Intel Core Duo CPU E8400 3.00GHz 2G RAM, 表1给出了各种方法的对比数据, 图2是Engine体数据压缩后的绘制效果, 图2 (a) 是无压缩的原图效果, 图2 (b) 是PCA压缩的效果, 图2 (c) 是小波压缩的效果, 图2 (d) 是本文方法压缩的效果。由表1数据和图中效果可以看出, PCA压缩后会丢失部分边缘信息 (如图中红框所示) , 压缩效果较差, 小波压缩后绘制效果较为理想, 但在相当的压缩误差下压缩比比本文方法低。
图3是Lobster体数据压缩后的绘制效果, 在图3 (a) 是无压缩的效果, 图3 (b) 是PCA压缩的效果, 图3 (c) 是小波压缩的效果, 图3 (d) 是本文方法压缩的效果。在相当的压缩比下, 小波压缩和PCA压缩后误差较大, 绘制图中产生了较多的噪声, 而本文压缩误差较小, 绘制结果较光滑。
另外, 数据字典每次学习只是更新一个基矢量, 因此用传统的压缩方法会大大地影响编码效率。本文中使用了快速SVD分解方法, 每次求解一个特征向量来进行更新数据字典的一个基矢量, 虽然需要多次学习来达到一个稳定的字典, 但是算法复杂的增加总体上对压缩编码的效率没有太大的影响, 对体数据的压缩质量有一定的改善, 具有一定的应用前景。
3结语
由于体数据中的数据值变化较大, 高频分量较多, 用统一的基矢量难以达到较好的压缩效果, 但与此同时体数据中各部分均存在较多的相似区域, 各部分的数据均能通过较少的基矢量重建。这种特性使得稀疏编码非常适合体数据的压缩。本文提出了一个基于多次迭代学习数据字典和系数矢量来构造一个较为完备的稀疏模型, 通过实验结果对比证明了稀疏编码可以有效地压缩体数据, 利用体数据固有的统计结构特性进行数据压缩或独立基向量分析已经成为了可能。与传统的体数据压缩方法相比, 压缩效果有较大的改进, 且体数据的信息保持程度也得到了显著的提高, 在同样压缩比的情况下, 稀疏编码模型更好地保持了原数据块的结构信息。随着体可视化技术的日益发展, 体数据压缩的应用将会越来越受到重视。
参考文献
[1]Guthe S, Wand M, Gonser J, et al.Interactive rendering of large volume data sets[C]//Proceedings of the IEEE Visualization, 2002:53-60.
[2]Gregorio Bernabe, Jose M Garcia, Jose Gonzalez.A lossy 3D wavelet transform for high-quality compression of medical video[J].Journal of system and software, 2009, 82 (3) :526-534.
[3]Jiebo Luo, Xiaohui Wang, Chang Wen Chen, et al.Volumetric medical image compression with three-dimensional wavelet transform and octave zerotree coding[C]//Proc.SPIE 2727, Visual Communications and Image Processing’96.1996:579-590.
[4]Pujita Pinnamaneni, Joerg Meyer.3-D Haar Wavelet Transformation in Java, 2008:234-243.
[5]Mǚller W, Nocke T, Schumann H.Enhancing the Visualization Process with Principal Component Analysis to Support the Exploration of Trends[C]//Proceedings of APVIS, 2006:121-130.
[6]Wu Q, Xia T, Chen C, et al.Hierarchical Tensor Approximation of Multidimensional Visual Data[J].IEEE Transactions on Visualization and Computer Graphics, 2008, 14 (1) :186-199.
[7]Candes E J, Wakin M B.An introduction to compressive sampling[J].IEEE Signal Processing Magazine, 2008, 25 (2) :21-30.
[8]Candes E J, Romberg J, Tao T.Robust uncertainty principles:exact signal reconstruction from highly incomplete frequency information[J].IEEE Transactions on Information Theory, 2006, 52 (2) :489-509.
[9]Barlow H B.Single units and sensation:A neuron doctrine for perceptual psychology[J].Perception, 1972, 1:371-394.
率失真优化的压缩感知图像编码 篇7
率失真性能是衡量图像编码系统性能的重要准则。率失真技术可以不受编码结构和技术的限制,通过配置最优的编码参数提高编码性能,是实际编码系统中常用的优化方法。量化是传统的有损编码系统中的主要失真来源,量化器性能很大程度上决定了编码效率,因而可以选择合适的量化参数使得给定编码码率下失真最小。然而在基于压缩感知的图像编码系统中除了量化,采样过程也会引起失真和码率的变化,也就是说给定码率条件下最优的编码性能由量化参数和采样参数共同决定。因而分析量化参数、采样参数和编码码率、失真之间的关系对确定最优的参数配置至关重要。
目前在基于压缩感知的图像编码系统的编码参数和码率失真之间关系的研究方面已有一些成果。文献[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的编码平台上进行了仿真和实验,结果证明提出的码率-失真模型能够很好地拟合实际率失真曲线,并且基于该模型的率失真优化算法有效的提高了压缩感知图像编码系统的性能。
一种新的图像压缩预测编码 篇8
图像压缩是信号与信息处理领域中的重要内容。这些年来涌现了许多压缩技术,如变换压缩编码算法、向量量化压缩编码算法、分形压缩编码算法等。变换压缩编码是目前比较有效、应用比较广泛的一类方法,使用时要先对图像进行线性正交变换。向量量化图像压缩编码算法具有压缩比高、解码迅速等优点,但也存在边缘容易失真、编码时间较长的缺陷。分形图像压缩编码算法具有思路新颖、算法简单、与原图像分辨率无关等优点,但在处理不具有明显确定性分形结构的图像时,图像复原质量不理想,另外,分形图像压缩编码算法所需时间较长。
图像压缩的目的是对给定的图像用尽可能少的数据来表示。预测编码根据图像像素之间的相关性,利用邻近像素对当前像素进行预测。用它再配合图像压缩算法就能有效地进行图像压缩。本文基于四叉树的原理,提出一个新的用于图像压缩的预测编码,它把图像分成若干个子块,通过子块间的映射减少数据在时间和空间上的相关性,从而达到压缩的目的。这种算法实现方便且快速有效,具有更大的压缩率但不降低图像质量。
1压缩方法
1.1假设和定义
为便于描述,给出下述假设和定义。假设原始图像是大小为M×N的长方形矩阵,且M、N都能被2整除,M、N为正整数。假设像素灰度的范围是0—255 ,用1字节(8 bit)存储一个像素的灰度值。F代表该原始图像矩阵,f(x,y)代表矩阵F第x行,第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.
【编码压缩标准】推荐阅读:
压缩编码技术07-15
图像压缩编码05-08
压缩编码算法07-28
音频压缩编码09-17
LZW压缩编码11-03
图像预测压缩编码算法07-18
数据压缩编码器06-20
高效视频编码标准09-03
泵与压缩机课程标准06-10
一种网络编码和信道编码的联合设计07-06