嵌入式小波零树(EZW)算法
EZW编码

以它们之间的顺序仍保持不变。则经重排序后的结果如
表(2)所示。
(四).第二轮主扫描:这里需要注意的是,对前面
扫描过程中已经确定的重要系数就不再扫描,且他的
细节信息在随副扫描进行而增加,并把它对应的位置 赋成0。为了与原来的0有所区别,这里用 表示,
在下轮中是值为0,而不是零树的跟,最多是零树中 干、枝、叶的一部分。如图(6)所示。 并设第二轮
小 波 变 换 的 EZW 编 解 码
以一个8×8的原始图像为例,左图是它经过三级
小波变换后所得的系数矩阵。
一、要实现EZW算法,首先要了解EZW算法中的一个
重要概念:零树
图(1):一幅8×8图象三级小波变换后的系数矩阵
1.对图(1)颜色笔所示的路径给出了树的概念,由
于小波变换要进行隔行隔列抽取,所以前一尺度的4点只
∴将10编成 ②对HL3:∴|10|>8 且是“+”号
POS,并放入副表中;
③对LH3:∵|-7|<8
又不是零树根的后代 而它
有
0 0 0 0 0 0 0 0 0 0
0 0 0 0 14 3 2 的后代, 2 1 <8无重要系数但 0 0 0 0 0
零树根,但对于-4和它的后代
0 0 2 0
,对8来说也
都不重要,但这时不能说-4是零树根,因为-4是零
树根6的后代。
15 > 8 10 > 8 -12 > 8 P
-7 < 8 I 3<8 Z 根 -2 < 8 Z 根 0 跳 0 0 Z 0<8 Z 0 跳 0 0 0 0 0 跳 0
本身和它的所有后代都小于T1,则称这棵树为一零树,
EZW算法简析

EZW算法简析1.简介EZW算法是1993年由Jerome M. Shapiro提出的基于小波变换的算法。
该算法的结果能够经过熵编码后有很高的压缩效率。
E代表了Embedded。
嵌入式编码就是渐进式编码。
意思是先把最重要的部分进行编码,然后再将次要的部份进行编码。
如果把一幅图像进行序列化,低频信号往往是占主要地位的。
所以,进过小波变换之后的图像,把左上角放低频信号,右下角放高频信号。
并且,编码的扫描线也是从左上方开始扫描,最后到右下角,这样来做到先将图像的重要信息进行编码。
W代表了wavelet transform。
图像在进入EZW编码器之前先要进行小波变换,分离高低频信息。
所以EZW是基于小波变换的算法。
Z代表了Zerotree。
称之为“零数”。
到目前为止,没有对零树有统一的严格的定义。
零树是EZW作者为了方便阐述其算法思想而构造的一种数据结构。
并认为,若一棵树能满足特定的几点特定要求,就称之为零树。
因为原为中对零数要求在文章中分得十分散,都是用到了再讲,我也没有时间来整理这方面的内容所以零数的具体定义我也没能给出。
文中提到的教材指清华大学出版社的《多媒体技术基础(第3版)》林福宗编著。
2.EZW的算法过程要进行EZW编码,首先要完成一幅多分辨率图像上的建树操作,以最左上角的一个数为根节点,将与其相关的次级高频信号作为它的子树进行建树操作。
父-子节点对应关系如图1左侧所示。
图 1 零树的结构与扫描方式[2]然后按照图1右侧的顺序依次扫描图像上的数值,并通过EZW算法进行编码。
每次扫描都将送出数据,但是前一次扫描的数据会比后一次扫描得到的数据更重要,数据是否重要,在EZW算法中体现的就是和一个设定的阈值相比较,若大于阈值,则是重要的数据,反之则不重要。
二维图像扫描的顺序也有很多种,如图2所示,就是两种比较常用的扫描方法,上侧的叫光栅扫描,下测的称之为迂回扫描。
使用不同的扫描方法得到的EZW编码会略有不同,对于需要压缩较高的场合,要根据实际情况选择合适的扫描方法进行编码。
基于EZW算法的遥感影像网络渐进传输

1 备学 院 研 究生 院 , . 装 北京 1 11 046 2装 备学 院 重 点实验 室 , 京 111 . 北 04 6
1 a u t nS h o,h a e f q i n, e ig1 , hn . d ai c o lte Gr o Ac dmyo up tB in 0 1 C ia E me j 1 46 2T e e a , e a e f q ime tB in 0 4 6 C ia .h yL b t dmyo E up n, e ig1 1ቤተ መጻሕፍቲ ባይዱ1 , hn K h Ac j
输 的方 案 。
理、 存储与传输都带来了极 大的阻碍 。随着各种商 业地理信息可视化软件的发展 , 遥感影像被广泛应 用于各类平台 , 比如 G ol E C 。当高分辨率影像 og ah e
通过 有限带宽 经网络传输 时 , 其传输 时间消耗大 。 现行 的传输方式一般为 : 构建全球 区域 的影像金字 塔, 并将每个金字塔层进行影像分割 ; 然后根据客 户 所选择区域 以及视点远近 , 传输特定的影像块数据 ; 最后融合成用户窗 口区域影像 。这种影像传输方式
程 中, 是一种突然呈现的跳变方式 , 缺乏 中问平滑过 渡, 有悖于人眼视觉 由近及远逐渐清晰的缓慢变化 过程 。从影像渐进传输角度着手 , 基于嵌入式零树 小波 ( mb d e eoreWaee, z ) 码算 ' 【 , E ed d Z rt v l E w 编 e t }。 去 对算法进行改进 , 提出一种适 用于遥感影像 网络传
BI AN ns n, Ya ha ZOU ng Pe .Pr g e sve newo k r ns iso fr m o e s nsng i a sbas d on EZW l — o r s i t r t a m s i n o e t e i m ge e a go
图像压缩文献综述

《数字图像处理和模式识别》期末大作业题目:图像压缩文献综述班级:数字媒体学院计算机技术姓名:徐德荣学号:6141603020图像压缩文献综述1 图像压缩编码概述图像信息的压缩编码,是根据图像信号固有的统计特性和人类的视觉特性进行的。
图像信号固有的统计特性表明,其相邻像素之间、相邻行之间或者相邻帧之间,都存在较强的相关特性。
利用某种编码方法在一定程度上消除这些相关特性,便可实现图像信息的数据压缩。
这个过程也就是尽量去除与图像质量无关的冗余信息,属于信息保持(保持有效信息)的压缩编码。
另一种考虑是,图像最终是由人眼或经过观测仪器来观看或判决的。
根据视觉的生理学、心理学特性,可以允许图像经过压缩编码后所得的复原图像有一定的图像失真,只要这种失真是一般观众难以察觉的。
这种压缩编码属于信息非保持编码,因为它使图像信息有一定程度的丢失。
由此可见,图像压缩编码的研究重点是:怎样利用图像固有的统计特性,以及视觉的生理学、心理学特性,或者记录设备和显示设备等的特性,经过压缩编码从原始图像信息中提取有效信息,尽量去除那些无关的冗余信息,并且在保证质量(能从这些数据中恢复出与原图像差不多的图像)的前提下,用最低的数码率或最少的存储容量,实现各类图像的数字存储、数字记录或数字传输。
2 图像编码研究现状图像压缩编码技术可以追溯到1948年提出的电视信号数字化,到今天己经有五十多年的历史。
五十年代和六十年代的图像压缩技术由于受到电路技术等的制约,仅仅停留在预测编码、亚采样以及内插复原等技术的研究,还很不成熟。
1969年在美国召开的第一届“图像编码会议”标志着图像编码作为一门独立的学科诞生了。
到了70年代和80年代,图像压缩技术的主要成果体现在变换编码技术上;矢量量化编码技术也有较大发展,有关于图像编码技术的科技成果和科技论文与日俱增,图像编码技术开始走向繁荣。
自80年代后期以后,由于小波变换理论,分形理论,人工神经网络理论,视觉仿真理论的建立,人们开始突破传统的信源编码理论,例如不再假设图像是平稳的随机场。
基于小波变换的图像压缩编码方法研究

收稿日期:2017-06-07 修回日期:2017-10-10 网络出版时间:2018-02-08基金项目:国家自然科学基金(61502211)作者简介:詹 为(1992-),女,硕士研究生,研究方向为图像处理;段先华,教授,博士,研究方向为电子对抗㊁图像处理㊁模式识别等;於跃成,副教授,博士,研究方向为机器学习㊁数据挖掘㊁模式识别等㊂网络出版地址:http :// /kcms /detail /61.1450.TP.20180207.1913.074.html基于小波变换的图像压缩编码方法研究詹 为,段先华,於跃成(江苏科技大学计算机学院,江苏镇江212003)摘 要:嵌入式零树小波(EZW )是一种非常有效的基于离散小波变换的图像编码算法,可以实现渐进编解码,具有较好的图像恢复质量㊂在研究嵌入式零树小波编码算法及原理的基础上,针对其对系数重复扫描而带来的计算量与编码比特数的增加,以及扫描过程中出现的大量零数根而导致的算法复杂度增加等不足,提出一种将改进的EZW 算法与霍夫曼编码方法相结合的图像压缩编码方法㊂首先通过扩充编码符号改变扫描方式,来实现零树结构的快速判断,避免连续出现零数根㊂然后将改进的算法与霍夫曼编码联合编码来代替算术编码方法使其更简单㊂最后,在Matlab 中模拟仿真,将改进算法与原算法进行比较分析㊂实验结果表明,与独立的EZW 算法相比,改进算法不仅增加了编码效率,同时也提高了峰值信噪比(PSNR ),证明了改进算法的有效可行性㊂关键词:图像压缩;离散小波变换;霍夫曼编码;嵌入式零数小波中图分类号:TP 391.41 文献标识码:A 文章编号:1673-629X (2018)06-0021-05doi :10.3969/j.issn.1673-629X.2018.06.005Research on Image Compression Coding Method Based onWavelet TransformZHAN Wei ,DUAN Xian -hua ,YU Yue -cheng(School of Computer Science and Engineering ,Jiangsu University of Science and Technology ,Zhenjiang 212003,China )Abstract :Embedded zerotree wavelet (EZW )is a kind of very effective image coding algorithm based on discrete wavelet transform ,which can achieve progressive code with a good quality of image recovery.In the research of embedded zero tree wavelet coding algo⁃rithm ,there exist deficiency that repeated scanning of coefficient would increase the amount of calculation and the coding bits number ,furthermore during the scanning process a large number of zero would result in high -order complexity.For this ,we propose an improved EZW algorithm of image compression coding combing Huffman coding.First of all ,it expands encoding dictionary to change scanning way ,implementing the quick determination of the zero tree structures ,avoiding continuous zero root.Then it is combined with the Huff⁃man code to replace the arithmetic coding method to make it simpler.Finally ,we compare the original algorithm with the proposed algo⁃rithm in the simulation with Matlab.The experiments show that in comparison to the independent EZW algorithm ,the proposed algorithm not only increases the coding efficiency ,but also improves the peak signal -to -noise ratio (PSNR ),which proves its feasibility.Key words :image compression ;discrete wavelet transform ;Huffman coding ;EZW0 引 言信息时代带来了 信息爆炸”,导致了数据爆炸性增加㊂因此,不管数据传输或数据存储,高效数据压缩是必要的,例如,在遥感技术领域,各种空间探头必须使用压缩技术将巨大的数据信息发送回地面㊂然而,随着现代信息通信在商业社会中的需求日益增长,图像通信和通信网络的容量之间的矛盾越来越突出,特别是大量的数字图像数据难以传输存储㊂并且在获得和使用图像信息时也造成了很多困难,成为图像通信发展中的 瓶颈”问题㊂为了解决这些问题,越来越多的学者致力于图像压缩的研究㊂传统的基于块的变换,通过块运动估计和补偿技术来消除多余图像部分的离散余弦变换(DCT )压缩方法在低码率时恢复图像会出现明显的方块效应[1-3],这将在一定程度上影第28卷 第6期2018年6月 计算机技术与发展COMPUTER TECHNOLOGY AND DEVELOPMENT Vol.28 No.6June 2018响图像的恢复质量㊂针对这一问题,近年来基于小波变换的图像压缩方法逐渐成为其研究热点㊂近年来,基于小波的图像压缩算法与嵌入式比特流相继提出,如嵌入式零树小波压缩(EZW)算法㊁集合分层树(SPIHT)算法㊁嵌入式块编码与优化截断(EBCOT)算法和自适应扫描小波差分减少(ASW⁃DR)等等㊂其中,EZW[4]是一种简单有效的图像压缩算法,由Shapiro于1993年提出㊂EZW算法适应不同尺度层在小波域中的幅度相关性预测和排序,可以消除像素之间的相关性,同时可以在不同的分辨率下保持精细的结构㊂所以EZW可以实现一些重要系数的渐进编码和有效压缩㊂虽然EZW算法现在被认为对于小波图像编码方法更有效,但仍存在不足之处㊂例如:EZW的编码思想是通过不断扫描小波变换后的图像,以生成更多的零树来对图像进行编码㊂扫描过程中为了判断小波系数是零树根还是孤零,需要对系数进行重复扫描;由于EZW算法中的 零树结构”思想,在实际的编码过程中,生成的零树根越多,用以表示图像的数据量便会越少㊂而多棵零数根将会导致零树根大量存在编码流中;编码产生的四种符号中,每一种符号出现的机率也是不相等的㊂出现机率最高的是零树根,占有的比率达到百分之五十以上,而且它的连续性也很强㊂另外三种符号出现的机率不是很高且连续性也不是很强㊂上述问题会导致编码符号流中存在大量冗余,使得压缩编码时间变长,从而降低图像的编码效率㊂基于此,提出了一种改进算法㊂首先通过扩充编码符号改进扫描方式,能够实现零树结构的快速判断,然后将改进算法用霍夫曼编码代替算术编码方法使其更简单㊂1 基于小波变换的图像压缩1.1 数字图像中的小波变换在图像处理中应用的小波变换是二维小波变换,定义为:WT f(a,b1,b2)=1a∬f(x1,x2)ψ(x1-b1a,x2-b2a)d x1d x2(1)其逆变换如下:f(x1,x2)=1Cψ∫+¥0∬WT(a,b1,b2)ψ(x1-b1a,x2-b2a)d b1b2(2)其中,f(x1,x2)表示空间L2(R)中的一个二维信号,变量x1,x2分别表示信号的水平坐标和垂直坐标;ψ(x1,x2)表示由此信号构造的小波基;ψ(x1-b1a, x2-b2a)表示函数扩大或缩小的范围;Cψ表示为:Cψ=14π2∬ψ(w1,w2)2w1+w2d w1d w2(3)其中,ψ(w1,w2)是ψ(x,y)的二维Fourier变换㊂数字图像中采用的是二维离散小波变换㊂在选择小波基的基础上,将图像分解成许多不同的尺度㊁方向,小波变换后空间域子带图像发生变化,二维小波变换可以看成行和列两个方向的一维小波变换㊂对于一幅原始图像,先对其行作小波变换,行变换结束后,再对其进行列小波变换㊂根据这个算法,在小波变换后分解为四个子系统的图像:LL表示特征的原始图像,包含原始图像的基本内容;LH㊁HL和HH是垂直㊁水平和高频特性的对角分量向右倾斜,分别包含边缘㊁纹理和轮廓等垂直㊁水平和对角线方向的图像数据㊂这里LL子带包含图像的大多数数据,然后对小波变换的一级低频子带重复以上变换,直到达到所需要的分辨率为止[5-6]㊂一级分解后继续分解的过程叫做多分辨率分析,即多级小波分解的概念,形成小波的多级变换㊂1.2 小波变换图像压缩步骤基于小波变换的图像压缩编解码框图如图1所示㊂其中,整幅图像首先通过小波变换,然后实际编码应用于完整的小波系数㊂小波是有损压缩技术之一,一般有三个过程:(1)变换:将变换后的数据变换为小波系数矩阵㊂(2)量化:小波系数被量化为有限的字母表,这一步不是可逆的㊂(3)编码:量化之后得到的符号被进一步压缩为最小化比特率㊂图1 图像编码框图1.3 基于小波变换的图像压缩编码相比较离散余弦变换,基于小波变换的图像压缩能够更好地实现较高的压缩比和较理想的图像恢复质量㊂而嵌入零树小波图像编码㊁分层小波树集分割算法和优化截断点嵌入块编码算法则是目前比较经典的小波图像编码算法[7]㊂文中将围绕EZW算法展开㊂1.4 嵌入式零树小波编码算法一般来说,在小波图像压缩过程中量化是其中最关键的部分,它将图像小波系数很好地组织起来实现㊃22㊃ 计算机技术与发展 第28卷有效压缩㊂小波零树编码主要采用小波特征系数,很好地实现了嵌入式图像编码㊂其编码思想是不断扫描变换图像,生成更多的零树到图像代码[8]㊂其算法步骤可执行如下:(1)确定初始阈值T0㊂T0=2⌊log2(MAX(X i))」(4)其中,X i表示小波变换分解到第i级时的系数,之后每扫描一次,阈值减少一半㊂(2)主扫描㊂第n(n=1,2, ,L)次扫描时,算法按照顺序将小波分解系数与阈值T i-1依次进行比较,已处理的系数由以下输出符号表示:零树根(T),孤立零(Z),正重要系数(P)和负重要系数(N)㊂其表示分别为P:当前系数为正且绝对值大于阈值;N:当前系数为负且绝对值大于阈值; T:当前系数绝对值小于0为不重要系数且所有子孙系数都为不重要系数;Z:当前系数值不重要,但是至少有一个儿子系数重要㊂通过四个符号,扫描小波系数,并判断小波系数,并将相应的符号放入符号表中㊂也就是说在扫描过程中,用一个主扫描表记录这些输出符号㊂为防止下次主扫描时重复编码,在第n次扫描结束后,将输出符号为P或N的系数的位置加标记或将这些系数置0㊂(3)辅扫描㊂对于主扫描后的重要系数做细化编码㊂对主扫描表进行顺序扫描,对其中输出符号为P或N的小波系数进行量化㊂在量化系数之前要构造量化器㊂量化器的输入间隔为[T n-1,2T n-1),将其等分为两个量化区间[T n-1,1.5T n-1),[1.5T n-1,2T n-1),若小波系数属于前一区间,则输出量化符号 0”,重构值为1.25 Tn-1,否则输出量化符号为 1”,重构值为1.75T n-1㊂输出的符号 0”㊁ 1”由一个辅扫描表记录㊂(4)重新排序,其目的为与设置第n+1次扫描所用的量化间隔,以提高解码精度㊂(5)输出编码信息㊂(6)重复上述步骤,直到满足所需的比特率编码停止为止㊂2 嵌入式零数小波图像压缩编码算法改进方案2.1 EZW算法存在的不足EZW的编码思想是通过不断扫描小波系数,以生成更多的零树来对图像实现编码,经研究发现该算法存在下列问题[9-15]:(1)存在重复扫描,不仅浪费了时间和空间,而且影响了效率㊂(2)逐次逼近量化过程中,产生了多棵零树,不仅增加了编码的比特数,同时也增加了编码工作计算量㊂(3)编码产生的四种符号中,每一种符号出现的机率也是不相等的㊂出现机率最高的是零树根,占有的比率达到百分之五十以上,而且它的连续性很强㊂另外三种符号出现的机率不高,连续性也不强,这将会出现大量连续的零数根㊂因此不仅浪费了时间,同时也影响了图像的编码效率和压缩比率㊂若采用原EZW算法的扫描方式和编码方法,算法的复杂度会增加且会产生编码冗余㊂2.2 改进的算法思想针对其不足,提出了以下改进方案㊂(1)采用扩充编码符号的方法进行改进,用6个标志位代替EZW算法中的4个标志位对小波系数进行量化,以实现零树结构的快速判断㊂由于在图像的分解过程中,会产生大量的能量,其中大部分会聚集在低频子带中㊂这就导致了低频子带的系数远远大于其余的子带,因此会产生更多的零树㊂而且在编码时重要系数的后面依旧会产生很多零树根,因此在扫描低频子带LL时,若一个系数为正重要系数,则继续对其子孙系数进行判断,若子孙中至少含有一个重要系数则标记为P n,若不含重要系数则标记为P;若一个系数为负重要系数,则继续对其子孙系数进行扫描判断,若子孙中至少含有一个重要系数则标记为N n,若不含重要系数则标记为N,并对子孙系数进行标记,在该阈值下跳过不扫描㊂通过这种方式,减少了对重要系数的扫描,提高了效率㊂(2)改进后,用霍夫曼编码代替原来的算数编码㊂算术编码采用不同的概率分布模型进行编码,相比较霍夫曼编码,大大增加了算法的复杂度㊂上述提到EZW编码算中会出现大量的零数根,各个符号出现的机率不同,而霍夫曼编码会统计每个频率符号,按照大小的频率和二叉树的重新形成排序,并获得所有的符号代码㊂因为霍夫曼代码是不等长的编码,短码表示高概率,而长码表示低概率,从而实现压缩的目的㊂此外,霍夫曼编码是一个无损编码方法,理论上不影响图像恢复㊂主扫描编码后标志位符号的这种特点正好符合霍夫曼编码的特点㊂采用霍夫曼编码不但可以减少编码所需要的比特数,而且还可以降低算法的复杂度㊂2.3 改进的图像编码流程改进编码算法就是根据其EZW算法特性,通过扩充编码符号改变扫描顺序,并根据霍夫曼编码特性,结合霍夫曼编码来提高图像的压缩性能㊂改进算法的具体实现步骤可以总结如下:输入一幅原始图像,先对其进行小波变换,然后主扫描,产生用以记录重要系数位置信息的小波系数符号表;其次是副扫描,产生记录㊃32㊃ 第6期 詹 为等:基于小波变换的图像压缩编码方法研究重要系数量化情况的小波系数量化表㊂每扫描完一次,都会将主扫描形成的主表与副扫描表中的量化值先后分别进行霍夫曼无损编码,形成的码流就是某个量化步长下的零树方式的编码码流,通过解码这个码流就可以得到输入图像的重构恢复图像㊂每完成一次编码,阈值就会减半,然后进行重复扫描,熵编码,直到达到设定的比特率或其所需要的精度㊂改进的嵌入式零树小波变换编码流程如图2所示㊂图2 改进的嵌入式零树小波变换编码流程具体仿真过程如下:(1)读取原始图像的信息,通过函数X =imread ('cameraman.bmp ')读取图像㊂(2)使用哈尔小波变换二维矩阵,de _x =haardec (X )㊂(3)得到变换后的矩阵,使用改进的EZW 对转换后的矩阵进行编码,由ezw _encode (de _x ,10)函数实现㊂(4)将改进的EZW 与霍夫曼编码相结合,该实现功能由函数huffman (DD )实现㊂(5)由函数ihuffman (encode _x ,h ,sortindex )来实现解码㊂(6)通过函数ezw _decode 实现符号解码,解码成之前矩阵中对应的像素值,将矩阵转换为图像㊂3 实验结果及分析为了验证改进后的嵌入式零数小波算法的有效性,利用MATLAB 仿真软件进行实验,并与原EZW 算法进行对比,以证明该算法的可行性㊂3.1 图像质量评估测度在图像编码系统中,常用峰值信噪比(peak signal to noise ratio ,PSNR )来衡量其性能㊂MSE =1MN ∑M -1m =0∑N -1n =0=x m ,()n -x ~m ,()n 2 (5)PSNR =10log 102552MSN(6)其中,MSN 为均方误差;x (m ,n )为原始图像像素值;x ~(m ,n )为解压缩之后的像素值[16]㊂3.2 EZW 与改进的EZW 的对比选用大小为256*256的3幅灰度图像Camera⁃man ㊁Lena ㊁Pepper 作为测试对象进行实验㊂对原始图像进行3级分解㊂在阈值为32时,与传统的EZW 算法进行对比,如图3所示㊂表1与表2为性能分析实验数据对比㊂图3 改进的EZW 与EZW 算法重构对照比较表1 阈值32下所需的编码位数图像EZW 算法(位)改进的EZW 算法(位)节省(位)Cameraman 23994218282166Lena 24001218212180Pepper23983217992184 从表1可以看出,用改进的编码方式进行编码后,减少了传输或存储所需的编码符号流所需的位数,避免了符号冗余,可有效提高图像的压缩比和编码效率,降低算法复杂度㊂表2 不同比特率下PSNR 比较比特率/(b ㊃p -1)CameramanLena Pepper PSNR /dB PSNR /dB PSNR /dB EZW 改进算法EZW 改进算法EZW 改进算法0.1522.3423.8423.2324.1222.5123.120.2527.6630.0228.4329.3428.3229.430.3531.4833.4232.2133.0932.1333.210.4535.3036.8936.9038.0235.7336.430.5537.5439.0138.4340.3237.8138.760.6539.4440.8240.8941.8339.4341.010.7541.1742.7341.4343.0941.1242.980.8542.8044.3743.8446.3243.5945.120.9543.9546.9947.9948.9346.8947.541.0546.3248.5349.0150.8648.2149.79㊃42㊃ 计算机技术与发展 第28卷 从表2看到,在相同比特率下,改进算法的峰值信噪比略高,也即重构图像的质量有了相应提高㊂图4为其在不同比特率下的峰值信噪比折线图㊂通过对改进EZW 算法与原EZW 算法进行仿真实验,将实验得到的数据㊁图像进行比较,可以看出无论是在峰值信噪比㊁编码所需位数还是人眼的主观评价上,改进算法都较原始EZW 算法略有提高,有效可行㊂4摇结束语针对EZW 算法的不足,给出了具体的改进措施:扩充编码符号;将改进的EZW 编码与霍夫曼组合来提高图像编码效率㊂实验结果表明,改进算法与原算法相比较,不仅其图像的峰值信噪比有所提高,而且避免了产生大量冗余比特流,提高了图像编码效率㊂改进算法在主观视觉和客观数据方面均优于EZW ㊂因此,该算法是有效可行的㊂文中研究处理的只是灰度图像,而未考虑彩色图像和视频图像,因此对彩色图像与视频进行高效的压缩是今后研究的主要方向㊂同时,由于小波分析中小波基的多样性和灵活性,使其在不同应用领域的特殊性研究具有实用性㊂此外,文中只是在软件上实现,即利用Matlab 仿真软件在PC 机上实现,这样对系统执行的速度有一定的限制,制约了整个系统的编码速度,可以考虑在硬件如DSP 上实现,这样能够提高整个系统的性能㊂参考文献:[1] 朱 虹.数字图像技术与应用[M ].北京:机械工业出版社,2011.[2] PARMAR H M ,SCHOLAR P parison of DCT andwavelet based image compression techniques [J ].Internation⁃al Journal of Engineering Development and Research ,2014,2(1):664-669.[3] 孙一惟.基于小波变换和DCT 的图像压缩系统设计与实现[D ].长春:吉林大学,2016.[4] RAID A M ,KHEDR W M ,EL -DOSUKY M A ,et al.Imagecompression using embedded zerotree wavelet [J ].Signal &Image Processing ,2014,5(6):33-39.[5] GOLDBERG M A ,PIVOVAROV M ,MAYO -SMITH WW ,et al.Application of wavelet compression to digitized ra⁃diographs [J ].American Journal of Roentgenology ,1994,163(2):463-468.[6] ZHANG Ning ,ZHU Jinfu.Study on image compression andfusion based on the wavelet transform technology [J ].Inter⁃national Journal on Smart Sensing &Intelligent Systems ,2015,8(1):480-496.[7] 刘 敬.基于小波变换的图像压缩算法研究[D ].重庆:重庆大学,2012.[8] 林 行.基于零树小波的静止图像压缩算法的研究[D ].沈阳:沈阳工业大学,2014.[9] XIE Xin ,XU Yin ,LIU Qing ,et al.A study on fast SIFT im⁃age mosaic algorithm based on compressed sensing and wavelet transform [J ].Journal of Ambient Intelligence and Humanized Computing ,2015,6(6):835-843.[10]LI Gongxin ,WANG Wenxue ,WANG Yuechao ,et al.Nano -manipulation based on real -time compressive tracking [J ].IEEE Transactions on Nanotechnology ,2015,14(5):837-846.[11]张德干,康学净,王京辉.一种新的图像压缩编码算法[J ].光电子㊃激光,2012,23(6):1173-1180.[12]CHENG K J ,DILL J.Lossless to lossy dual -tree BEZWcompression for hyperspectral images [J ].IEEE Transactionson Geoscience and Remote Sensing ,2014,52(9):5765-5770.[13]田杰华,顾晓东,汪源源.利用人眼视觉特性的低比特率小波图像压缩[J ].仪器仪表学报,2010,31(11):2515-2520.[14]陈平平,谭定英,刘秀峰.一种改进的小波变换图像压缩算法[J ].计算机工程与应用,2012,48(14):175-179.[15]郑侃侃.低码率低复杂度图像/视频编码技术研究[D ].上海:上海交通大学,2015.[16]刘书琴,毋立芳,宫 玉,等.图像质量评价综述[J ].中国科技论文在线,2011,6(7):501-506.㊃52㊃ 第6期 詹 为等:基于小波变换的图像压缩编码方法研究。
图像压缩中的嵌入式零树小波

1引言【z 1】 -
随 着 多 媒 体 技 术 的快 速 发 展 ,图像 更 多 的 应 用 于 生 活 的 各 个领 域 中 ,因此 对 图 像处 理 技 术 的 要 求越 来 越 高 。在 众 多 图像 ’处 理 的方 法 中 ,作 为 应 用数 学 和 工 程 学 科 中 一 个迅 速 发 展 的 新 领 域 一一 小 波 分 析 作 出 了贡献 。与 F u ir o r 变换 , b r 比 , e Ga o 相 小 波变换 是 时 间( 间) 空 频率 的局 部 化分 析 , 它 通 过 伸 缩平 移 运算 对 信 号 ( 函数 ) 步 进 行 逐 多尺 度细 化 , 终达 到 高频 出 时 间细 分 , 最 低 频 处 频 率 细 分 ,能 自动 适 应 时 频 信 号 分 析 的 要求 , 从而 可 聚焦 到信 号 的任 意 细节 , 解 决 了 F u ir o re 变换的 困难问题 , 成为 继 F u o r r变换 以 来在 科 学 方法 上 的重 大 突破 。 e i 小 波 变 换联 系 了计 算 机 科 学 、 信 号 与 信 息 处 理 、 图像 处 理 等 多 个 学科 。 信号 和 信 息 处 理专 家 认 为 , 小波 分 析 是 时 间 一 尺 度分 析 和 多分 辨 分 析 的 一种 新 技 术 它在 信 号 分 析 、话 音合成 、 图像识 别 、计 算机视 觉 、数 据 压 缩 、地 震 勘 探 、 大 气与 海 洋 波 分 析 等 方 面 的 研 究都 取得 了有 科 学 意 义 和 应 用价 值 的成 果 。 小波 分析 用于 信 号 与 图 像压 缩 是 小 波 分 析 应 用韵 一 个 重 要 方 面 。 它 的 特 点 是 压 缩 比高 , 缩 速 度快 , 压 压缩 后能 保 持信 号 与 图 像 的特 征不 变 , 在传 递 中 可以 抗 干 扰 。 且 基 于 小 波 分 析 的 压 缩 方 法 很 多 ,小波 零树 编码 算法 , 入 零树 小波 编码 ( 嵌 Ezw ) 树集 , 合分裂算 法( PI S HT) 集合 分裂嵌 入块 编码 , 算 法( P C 等 。其 中 , S E K) 嵌入式零 树小 波是
毕业设计221图像小波变换实现及EZW编码理论研究

论文题目:图像小波变换实现及EZW编码理论研究专业班级:学号:学生:签名:指导教师:签名:摘要21世纪,人类已进入信息化时代,其中图像信息是人类获得外界信息的主要来源,因此对图像的处理变得更为重要。
而小波变换以其良好的空间——频域局部特性,能对图像进行有效的处理。
本文研究的是小波变换在数字图像处理中的应用,文中介绍了数字图像处理的基本概念和小波变换的基本理论。
基于图像小波理论,对图像小波变换的实现技术——Mallat算法进行了分析,并根据Mallat算法应用VC++编程实现了图像小波变换。
Mallat算法是将计算小波系数与信号处理中滤波器相结合,构成塔式分解算法,大大简化了小波系数的计算。
嵌入式小波零树系数编码(EZW)是将小波变换的各子带系数表示为零树结构。
EZW是一种简单而有效的图像编码算法。
使用这种算法,编码者可在任一点结束编码,所以允许精确达到一个目标比率,而这时仍能产生同样的图像。
【关键词】图像处理、小波变换、压缩编码、EZW【论文类型】软件设计与理论研究Title:The Realization of Image Wavelet Transformation and The Coding Theory Research of EZW Major: Electronic information of science and technology Name: Signature:Name: Signature:ABSTRACTIn the 21st, man being steps into an era of information.In which image information become the main origin of obtain information from outside. So processing image information become more important. Wavelet transform has wonderful space and frequency, so it can deal with the image effectively.The main topic article discuss is wavelet transform the application of image processing. In the article introduces the basic conception of data image processing and the basic theory of wavelet transform. Based on the image wavelet transform theory, the realize of the image wavelet transform technology——analysis on Mallat algorithm, and basis on Mallat algorithm that use the software of VC++ realize of the image wavelet transform. Mallat algorithm is using the wavelet coefficients and the filter of signal processing, so it greatly simplified the computing of wavelet coefficients algorithm. EZW code is the structure which is a simple and effective image coding algorithm with which an encoder can terminate the encoding at any point ther eby allowing a target rate or distortion metric to be met exactly.【Key words】image process, wavelet transform,image compression, EZW【Type of Thesis】software design and theory research前言现在人类已经进入信息化时代,而人类从自然界获取信息中,其中图像信息是人类获得外界信息的主要来源,因为大约有70%的信息是通过人眼获得的,而人眼获得的都是图像信息。
改进的嵌入式小波零树编码算法

[ ywo d ]i g o rsin z rt e o ig E W lo tm Ke r s maecmpes ;eor dn ; Z a rh o ec gi
l 概 述
近年来 ,小波图像 压缩编码 以其压缩率 高、图像恢 复质 量高、可实现 渐进 式编/ 解码等优点 ,得到越来越广泛的研究 和应用。其 中,文献【] E W 算法被认 为是静态 图像 压缩 1的 Z 编码领域迄今 为止 最好 的算法之 一。它充分利 用小 波变换 后
除 E W 算法中的副扫描过程 , Z 从而省去 了存储 重要系数的位置信息的比特数 , 减少了 E W 算法 中扫描 次数 , Z 在很大程度上提高编码速度 , 缩减需 要编码 的符号数 目,是种快 速的编码算法 。实验结果表 明,运 用该算法 处理得 到的图像质量能够满足大多数 的应用需求 。
H H t 。
方法对小 波系数进行 编码。该算 法具 有编码效 率高、能 产生
嵌入式码 流和支持 多码率解码 等特点 。然而 ,图像 二维小波 变换 的计 算量大 , 需要较 多的存储器 , 而且小波编码速度慢、
功耗大 ,不适于 实时性 要求高的场合 。因此, 目前在这一领 域的研究热点主要表现在 :() 1采用更先进 的算法提 高编码速 度和降低 算法复杂度 。() 过硬件实现小波 图像压缩编码 , 2通 将使得编码系统成 本更低 、稳定性 更好 、体积 和功耗显 著降
中 圈分类号: P0. T 31 6
改进 的嵌 入 式 小 波零 树 编码 算 法
陈节龙 ,杨 静
( 上海海事大 学信 息工程 学院 ,上海 2 0 5 01 ) 3
摘
要: 在分析 E W 算法的基础上 ,提出一种改进 的图像编码算法 ,把小波 系数分解成 2 Z 组较 小的小波系数 ,分别对其进行编码 ,并移
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
首先根据实际需要确定扫描次数D=codeDim,然后进行D次主扫描和辅扫描。
1、初始化首先获取扫描次序表scanlist,表中每行的数字依次是该元素的(1)扫描序号、(2)对应于数据矩阵中位置的行号r、(3)对应于数据矩阵中位置的列号c、(4)值Mat(r,c),即scanlist (i) = [ i, r, c, Mat(r,c) ]编码扫描的对象就是次序表scanlist,而非数据矩阵Mat。
然后构建初始符号矩阵flagMat,其中每个元素均为字符“Z”。
2、主扫描在第d次(1<= d <=codeDim)扫描中,输入阈值为T(d),首先依次对次序表的每一行scanlist(i)按照如下步骤扫描:(1)如果上一次扫描得到的flagMat中,处于位置(r,c)的符号为“O”,则表示相应的Mat(r,c)是重要的,不需要通过本次扫描再次编码,故作跳过处理。
(2)将scanlist(i,4)(即Mat(r,c))的绝对值与阈值T(d) 比较,如果是重要的系数,则令flagMat(r,c)的值为P或N,并存入主扫描表scancode中,并将Mat(r,c)的值以及相应的行、列数(r,c)存入重要数列表imptvalue中,将符号P或N存入重要数符号列表imptflag中。
(3)如果是不重要的系数,则首先检查flagMat(r,c),若是符号“X”,则表示这个点是不重要的,作跳过处理不再扫描。
(4)如果点(r,c)处于第一分解级,即r>row/2或c>col/2,没有子孙系数,且其系数是不重要的,则该点flagMat的符号为Z,存入主扫描表scancode中。
(5)如果点(r,c)满足r<row/2且c<col/2,则检查其子孙系数中是否有重要系数。
有,则flagMat(r,c)的值为字符Z,存入主扫描表scancode中;否则flagMat(r,c)的值为T,存入主扫描表scancode中,并令其所有子孙系数相应的flagMat(r’,c’)值为字符X,不再作下一次扫描。
至此,扫描结束。
然后,将扫描后得到的符号矩阵flagMat转存到scanflag中,再将flagMat中的字符P、N都置换为O,字符X和T都置换为Z,使得flagMat的元素只有字符O、Z两种,作为输出到下一次扫描中使用。
function[imptvalue,imptflag,scancode,scanflag,flaglist]=mainscan(Mat,scanlist ,flaglist,imptvalue,imptflag,threshold)global row colscancode=[];for i=1:row*colif flaglist(scanlist(i,2),scanlist(i,3))=='O'continue;elseif abs(scanlist(i,4))>=thresholdif scanlist(i,4)>=0flaglist(scanlist(i,2),scanlist(i,3))='P';scancode=[scancode 'P'];imptvalue=[imptvalue;abs(scanlist(i,4)),scanlist(i,2),scanlist(i,3)];imptflag=[imptflag 'P'];elseflaglist(scanlist(i,2),scanlist(i,3))='N';scancode=[scancode 'N'];imptvalue=[imptvalue;abs(scanlist(i,4)),scanlist(i,2),scanlist(i,3)];imptflag=[imptflag 'N'];endelseif flaglist(scanlist(i,2),scanlist(i,3))=='X'continue;elseif i>row*col/4scancode=[scancode 'Z'];else[chImt,chMat]=childImportant(Mat,scanlist(i,2),scanlist(i,3),threshold,fl aglist);if chImtflaglist(scanlist(i,2),scanlist(i,3))='Z';scancode=[scancode 'Z'];elseflaglist(scanlist(i,2),scanlist(i,3))='T';scancode=[scancode 'T'];[rowch,colch]=size(chMat);for r=1:rowchif flaglist(chMat(r,1),chMat(r,2))~='O'flaglist(chMat(r,1),chMat(r,2))='X';endendendendendendscanflag=flaglist;for r=1:rowfor c=1:colswitch flaglist(r,c)case {'P','N'}flaglist(r,c)='O';case {'X','T'}flaglist(r,c)='Z';endendend function[chImt,chMat]=childImportant(Mat,chRows,chCols,threshold,flaglist) global row col chMat=childMat(Mat,chRows,chCols);if max(abs(chMat(:,3)))>=thresholdchImt=1;elsechImt=0;end3、辅扫描辅扫描是对输出符号为P和N的系数进行量化,并将量化符号存入辅扫描表quantiflag中。
在主扫描中,将输出符号为P和N的系数的符号信息和数值分别储存在列表imptflag和imptvalue中。
辅扫描的具体过程是:(1)构造量化器量化器的构造比较简单,不过关键的问题是要确定每一级扫描中量化器的数目。
首先,量化区间的最大区间值应该是初始阈值的2倍,最小值是当前的阈值,故第d级扫描时,总的量化区间为[ T(d), 2*T(1) );而量化间隔为T(d),故第d级扫描的量化器数目为:Q = [2*T(1) — T(d)] / T(d) 。
确定量化器数目后,就要确定每个量化器中“0”“1”对应的量化值。
根据算法原理,第q个量化器中,相应于符号“0”的量化值为:T(d)*(q+0.25),相应于符号“1”的量化值为:T(d)*(q+0.75)。
至此,量化器构造完成。
function [quantifierMat,threshold]=quantifier(T1,level)quantifierMat=[]; maxInterValue=2*T1;threshold=T1/2^(level-1);intervalNum=maxInterValue/threshold-1;for i=1:intervalNumquantifierMat=[quantifierMat;threshold*(i+0.25)threshold*(i+0.75)];end(2)辅扫描过程首先要确定这个重要系数属于量化器。
根据总量化区间与量化间隔的关系,只要将重要系数除以量化间隔,所得的商就是该重要系数所在的量化器编号。
即:rI=flor(imptvalue(j) /threshold);将重要系数减去量化器的起始值,所得的值与量化间隔的二分之一值相比较,小于的话,则量化符号为“0”,大于则量化符号为“1”。
然后选择量化重构值,存入重构列表recvalue中。
function[quantilist,quantiflag,recvalue,quantifierMat]=assistscan(imptvalue,di m,T1)quantilist=[];quantiflag=[];recvalue=[];[quantifierMat,threshold]=quantifier(T1,dim);[imRow,imCol]=size(imptvalue);for j=1:imRowrI=flor(imptvalue(j)/threshold);flag01=imptvalue(j)-rI*threshold;if flag01<threshold/2quantiflag=[quantiflag;0];recvalue=[recvalue;quantifierMat(rI,1)];elsequantiflag=[quantiflag;1];recvalue=[recvalue;quantifierMat(rI,2)];endendquantilist=[imptvalue(:,1),quantiflag,recvalue,imptvalue(:,2),imptvalue (:,3)];4、编码输出每级扫描完成后,把主扫描输出的主扫描表scanlist存入列表Codelist 中,并用一个辅助列表LenSubCL记录这一级主扫描表的表长(在信号传输应用中不一定用得上);把辅扫描输出的量化符号列表quantiflag 存入列表QuantiFlagList中,并用一个辅助列表LenSubQFL记录辅扫描表的表长。
以下是经过3次扫描后的编码输出code_level = 1scancode = ZPPPTTTTTTTTTTTTquantiflag = 011code_level = 2scancode = PZTTTZNTTTTTTTZTNTTTZNTTTZZZNZNZZZZNZZZZZ quantiflag = 1111000110code_level = 3scancode = NPTTNNZTNTTTNTPNPTTNZNZTTZZTTZZTTNTTTZZZZNZZZPP NZZNZPZPZZZZZZZNZNZZZNNPZZZZPZZPPZZPZZZNZZZZZZZ quantiflag = 101101001001100110001010100101011000110。