一种改进的小波变换图像压缩方法.
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
总第172期
2008年第10期
舰船电子工程
ShipElectronicEngineeringVol.28No.10
86
3
一种改进的小波变换图像压缩方法
张培珍1)杨根源2)平殿发1)徐圣良1)
)
(海军航空工程学院研究生管理大队1)烟台264001)(海军航空工程学院指挥系2烟台264001)
摘要针对传统小波变换过程复杂的缺点和SPIHT算法编码过程重复运算、存储量大的问题,提出了一种改进的小波变换图像压缩方法。
该方法首先对纹理丰富的图像进行3级小波变换,再对高频子带通过小波树分类器分为低频树和高频树。
最后对最低频子带进行差值脉冲编码调制(DPCM),对低频树和高频树分别进行SPIHT和自适应算术编码
(MQ)。
仿真结果表明,在压缩比相同的情况下,该方法不仅能够在几乎不降低图像恢复质量的前提下提高了编码速度,而
且能够降低存储空间的消耗。
压缩整体性能明显要优于SPIHT算法。
关键词小波变换;小波树分类;自适应算术编码中图分类号TN919.81 AnImprovedMethodofImageCompressionBased
onWaveletTransform
ZhangPeizhen1)YangGenyuan2)PingDianfa1)XuShengliang1) (DepartmentofGraduateManagement,NAEL1),Yantai
264001)(DepartmentofCommand,NAEL2),Yantai264001)
Abstract Inviewoftheproblemsofcomplicatedconvolutionprocessofwavelettransform,repeatedcalc ulationsandalargeofneededmemoriesofSPIHTalgorithm,Animprovedmethodthatuseswav elettransformforimagecompressionispresented.Inthismethod,Firstly,wavelettransformisa ppliedtorichimageforafullde2composition.Secondly,awavelet2treeclassifiercanefficientl ydividethehighfrequencysub2bandintoclass:lowfrequencytreeandhighfrequencytree.Fina l2ly,theDPCM,theSPIHTandtheMQareusedtocodeinthelowestfrequencysub2band,inlow frequencytreeandinhighfrequencytreerespectively.Experimentalresultsshowthatthismeth odiscompetitiveto,andopenoutperformsthebestwaveletcodingalgorithm(suchasSPIHT). Keywords wavelettransform,wavelet2treeclassification,MQClassNumber TN919.81
1引言
随着现代通信应用和计算机技术的迅速发展,图像压缩技术仍然是当今研究的一个重要课题[1~3]。
JeromeM.Shapiro根据一幅图像的小波变换在不同级之间的相似性,提出了嵌入式零树小
波编码方法(EZW),取得了良好的压缩效果[4]。
A.Said和W.A.Pearlman根据Shapiro零树编码算法的思想,提出了多级树集合分裂算法(SPIHT)[5]。
虽然提高了编码效率,但是SPIHT算法存在多次重复运算,需要占用大量的存储空间,而且编解码时间长等缺点,不利于纹理丰富图像的实时压缩。
为此,本文为了使纹理丰富图像的压缩更具有实时性,提出了一种改进的图像压缩
方
3
收稿日期:2008年3月14日,修回日期:2008年5月27日
作者简介:张培珍,男,博士,研究方向:图像处理分析。
杨根源,男,博士,教授,博士生导师,研究方向:信息作战。
平殿发,男,博士,副教授,研究方向:信息作战。
徐圣良,男,博士,研究方向:海军战术。
2008年第10期舰船电子工程87
法。
该方法首先对图像进行3级小波变换,再对最低频子带采用差值脉冲编码调制,然后对高频子带通过小波树分类器分为低频小波树和高频小波树,分别采用多级树集合分裂算法(SPIHT)和自适应算术编码(MQ)获得了较好的压缩效果。
仿真结果表明,对于由中频和高频组成的纹理丰富图像,在压缩比相同的情况下,该方法的压缩整体性能明显要优于SPIHT算法。
2SPIHT算法简析
A.Said和W.A.Pearlman根据Shapiro零树编码算法的思想,提出了多级树集合分裂算法,它是以零树结构为基础如图1所示。
SPIHT算法采用了3个链表:不重要像素集合链表
(LIP),重要像素集合链表(LSP:ListofsignificantPixels),
不重要系数列表
图1SPIHT空间方向树结构
(LIS)来存储编码的节点和集合。
其算法过程描述如下:1)输出n=
[log2(max{|C(i,j)|})],将LSP置空,把R中的
所有节点(i,j)放入LIP中,并且将其后代集合放入LIS中,并标记A型集合。
2)对所有LSP中的节点(i,j),输出|C(i,j)|的第n位比特值。
3)对所有LIP中的节点(i,j),输出Sn(i,j),如果Sn(i,
j)=1,则输出C(i,j)的符号,并将其移到LSP中。
4)对所有LIS中的集合(i,j),如果是A型集合,即
D(i,j),则输出Sn(D(i,j));如果Sn(D(i,j))=1,
则(1)对所有O(i,j)中的节点(k,l),输出Sn(k,l),如果Sn(k,l)=1,则输出C(k,l)的符号,并且将其置入LSP中,否则将其置入LIP中;(2)删除这个集合,如果其对应的L(i,j)非空,则将集合L(i,j)置入LIS中,并标记为B型集合。
如果是B型集合,即L(i,j),则输出Sn(L(i,j))。
如果Sn(L(i,
j))=1,则删除这个集合,将所有的D(k,l),(k,l)
∈O(i,j)置入LIS中,并标记为A型集合。
5)如果n=0,则终止,否则n=n-1,并转到2)继续执行。
利用小波变换后图像能量的集中性和小波系数在各分层之间的相关性,将树根结点及所有子孙结点根据同一方向划为同一集合,然后采用适当的集合分割排序策略,
通过阈值和有序表的初始化,
排序扫描,精细扫描和量化更新的过程完成图像的压缩编码。
该算法能生成一个嵌入位流(embed2dedbitstream),使接收的位流在任意点中断时,都可解压和重构图像,因而具有很好的渐进传输特性。
同时可获得较高的峰值信噪比,计算复杂度较低,
位速率容易控制等优点。
然而,理论分析和实验结果表明,该算法也存在以下缺陷:1)编码过程中需要占用大量内存。
2)在排序过程中存在大量的重复操作,增加了编码时间。
3改进的图像压缩编码方法
由中频和高频成分组成的纹理图像,它们的许多重要系数的节点的子孙系数不重要。
因此它们不重要系数的节点形成的零树非常少。
例如对
256×256灰度Mandrill图像的低频树和高频树采
用SPIHT算法进行压缩,其结果如图2所示。
结果表明,用SPIHT算法对低频树的压缩性能要比
对高频树更有效。
图2低频树和高频树PSNR值曲线
3.1小波树分类
通过对不同的小波树采用不同的、恰当的编码方法可以在低比特率情况下改善图像压缩的质量。
对于高频子带还有大量重要系数的小波树,SPIHT算法在处理图像压缩明显存在局陷,压缩复原图像的质量效果比较差。
因此,对于纹理丰富的图像采用不同的编码方法是非常必要的。
而且小波树分类器可以把图像的高频子带按空间小波系数幅值的大小分布分为两类:低频小波树和高频小波树。
定义如下: Argmaxαl.Avg{|Dld
(m,n)l
|}<Ltr
(1)
高频树:这里|Ddl(m,n)|是同等树节点(m,n)的小波系数,l=1,2,…,L是小波分解的层数,d=1,2,
3表明在水平、垂直、对角方向上的小波子带,αl是有关分辨率的权重因数,Ltr是阈值,Avg{
}平均
88张培珍等:一种改进的小波变换图像压缩方法总第172期
加法运算器。
3.2高频小波树采用MQ编码
小波变换使小波系数之间具有去相关性,在小波变换中,图像分解像素的绝大部分相关性可以去除,但是在相邻子带间的系数仍存在一些冗余性,为了在低比特率压缩下得到更好质量的重构图像,小波系数间的冗余相关性必须去掉。
MQ自适应算术编码能显著地减少数据信号的编码比特数,在这点上它明显要胜过标量量化。
因此,MQ自适应算术编码方法非常适合图像小波高频树的编码[9]。
具体描述如下:第一步:把高频小波树根据它们各自的子带方向(水平、垂直、对角)分为三类。
第二步:把每种高频小波树根据它们的标准偏差方向划分为小的矢量。
第三步:对高频小波树的矢量按照
MQ自适应算术编码进行编码。
图像经过二维离散小波变换后,高
图3基于上下文预频小波树将集合划测的MQ编码器
分为小的矢量数以此来减少计算的复
杂度,高频小波树的划分是按照一定方式下的树节点具有相似的标准偏差而归为一种矢量。
因此,对于同一种矢量就可以构成一个编码,因为不同种矢量的内部数据和尺度都是不同的。
基于上下文预测的MQ编码器如图所示。
3.3改进图像编码流程
改进编码系统就是采用SPIHT编码算法和MQ自适应算术编码来提高图像的压缩性能。
使用二维离散小波变换后图像系数被分成许多子带,低频子带采用DPCM
编码算法,对应的高频子带,小波树分类器按照同一方向(水平、垂直、对角)分为低频小波树和高频小波树。
低频小波树采用SPIHT编码,高频小波树采用MQ自适应算术编码。
如图4所示。
图4改进图像编码框图
在自适应算术编码中,高频小波树被划分成许多小的向量,在纹理图像压缩过程中,这些向量决定了编码本的产生。
起初,在B1阶段每一个向量编码使用MQ算法按照渐进方式进行,它是根据一
定方式冗余量化误差小于SPIHT编码算法的初始阈值T1决定的。
对于高频小波树用MQ编码和对低频小波树用SPIHT编码算法完成一次扫描后,SPIHT编码算法的阈值将减半,与之相对应的MQ参数是按照下一个MQ扫描决定的。
高频小波树和低频小波树两者编码的扫描方式要交替进行,直到达到预先设定的比特率(或满足重构图像的质量)才停止编码。
在
SPIHT
编码和MQ编码中,自适应比特率
图5嵌入式比特流结构图
分布改变的目的就是要产生一种
改进的、嵌入式的比特流。
在合成编码系统中,
SPIHT算法中的阈值序列Tk和MQ编码中的参
数Bk是根据输入图像进行调整的,Tk是由输入图像的小波系数的幅值大小决定的。
Bk是通过Tk决定的。
在仿真实验中,Bk的参数经常为1或2,连续序列阈值是Tk由以下式子得到:Tk=0.5Tk-1,因此它们是连续的。
信息数据的传输是随着比特流按照小波分解的层数传输的。
SPIHT编码算法的初始阈值为T1,MQ的参数为B1。
图5表明了嵌入式比特流的结构,它的信息被存储在开始位置。
其实现步骤如下:
1)选择双正交9/7滤波器。
2)对纹理丰富图像进行3级小波分解,得到不同子带LL3,HL3,LH3…HH1,如图1所示。
3)对最低频子带LL3进行DPCM编码。
4)对高频子带,按照前面所述对小波树分为低频小波树和高频小波树,低频小波树进行SPIHT算法,高频小波树进行自适应算术编码(MQ)。
两者交替进行,直到达到预先设定的比特率才停止编码。
5)逆小波变化恢复图像。
4仿真与分析
仿真中对具有高频、中频、低频率成分组成的Barbara,Boat,Mandrill的256×256灰度3种图像进行实验。
实验中采用线性双正交9/7滤波器,小
波分解的层数是3,树分类阈值Ltr是3,权重因数根据经验公式求
得:αl+1=0.5αl,α1=1。
小波系数的最大幅值减半作为SPIHT算法的初始阈值T1。
连续序列阈值由公式Tk=0.5Tk-1得到。
本文压缩算法的压缩性能和SPIHT算法进行了比较。
如
2008年第10期舰船电子工程89
图6所示。
从仿真结果来看,Barbara图像压缩后相对平滑,因为绝大部分重要小波系数在低频子带中,仅有一小部分小波树被分成高频小波树。
而对于纹理丰富的图像Mandrill来说,他们包含大量的重要小波系数在中频和高频率子带内,压缩的整体性能比SPIHT算法要优越的多。
在0.125比特率
下,对于Mandrill图像压缩,利用本文方法压缩后的峰值信噪比比SPIHT算法提高了1.0dB,而Boat的峰值信噪比提高了0.3dB。
表1和表2是标准图像在各种比特率压缩下的PSNR值和编解码时间,从结果整体来看,本文算法的整体性能要好于SPIHT算法。
表13种图像在两种方法压缩后重构图像的峰值信杂比图像
Barbara
编码速度,而且能够降低存储空间的消耗。
压缩整体性能明显要优于SPIHT算法。
参考文献
[1]HongES,LadnerRE.GroupTestingforImageCom2
pression[J].IEEETransImageProcess,2002,11(3):901~902
[2]UsevitchBE.ATutorialonModernLlossyWavelet
ImageCompression[J].IEEESignalProcess,2001,18(5):22~25
[3]KimKL,RaSW.PerformanceImprovementofthe
SPIHTCoder[J].IEEEImageCommunication,2004,19(4):29~36
[4]ShapiroJM.EmbeddedImageCodingUsingZero2treesof
WaveletCoefficients[J].1993,40:3445~3462
[5]SaidA,PearlmanWA.ANewFastandEfficientIm2 ageCodedBasedonSetPartitioninginHierarchicalTrees[J].IEEETrans.CircuitsandSystems forVideoTechnology,1996,6(6):243~250
[6]MukherjeeD,MitraSK.ArithmeticCodedVector
SPIHTwithClassifiedTree2multistageVQforColorImageCoding[J].IEEEWorkshoponM ultimediaSig2nalProcessing,1998,12:444~449
[7]张旭东,卢国栋,等.图像编码基础和小波压缩技术—IEEETransSignalProcess,
比特率
/bpp1.00.50.250.125
SPIHT39.836.533.129.728.625.223.021.439.836.433.330.2
PSNR/dB
本文算法
40.036.733.630.228.825.523.321.739.936.934.231.2
提高的信噪比
0.20.20.50.50.20.30.30.30.10.50.91.0
Boat
1.00.50.250.125
Mandrill
1.00.50.250.125
表2Mandrill图像在两种方法压缩下图像的编解码时间比特率
/bpp0.1250.2500.5001.000
编码时间/s本文
算法
0.881.211.561.68
解码时间/s本文算法
0.180.290.490.53
提高
SPIHT
时间
0.921.271.681.86
0.040.060.120.18
提高
SPIHT
时间
0.200.300.500.57
0.020.010.010.04
5结语
在分析研究SPIHT算法的基础上,针对纹理信息复杂图像SPIHT算法编码性能存在一定的局限性,提出了一种新的零树分类和合成编码算法。
仿真结果表明,在压缩比相同的情况下,该算法不仅能够在几乎不将低图像恢复质量的前提下提高
原理、算法和标准[M].北京:清华大学出版社,2002
[8]吴乐南.数据压缩的原理与应用(第二版)[M].北京:电
子工业出版社,2003
[9]华林,朱珂等.一种JPEG2000的高速MQ编码器的
VLSI实现[J].固体电子学院研究与进展,2003,23(4):421~426。