logo资料库

基于小波包的图像压缩及matlab实现.doc

第1页 / 共11页
第2页 / 共11页
第3页 / 共11页
第4页 / 共11页
第5页 / 共11页
第6页 / 共11页
第7页 / 共11页
第8页 / 共11页
资料共11页,剩余部分请下载后查看
基于小波包的图像压缩及matlab实现
1.小波包基本理论
1.1 小波包用于图像消噪
1.2. 小波包用于图像压缩
2.小波包分析
2.1 小波包的定义
2.2 小波包的性质
2.3 小波包的空间分解
2.4 小波包算法
3.小波包分析在图像处理中的实际应用
3.1小波包处理图像所用函数介绍
3.2小波包处理图像主程序介绍
4.总结
基于小波包的图像压缩及 matlab 实现 摘要:小波包分析理论作为新的时频分析工具,在信号分析和处理中得到了很好 的应用,它在信号处理、模式识别、图像分析、数据压缩、语音识别与合成等等 许多方面都取得了很有意义的研究成果。平面图像可以看成是二维信号,因此, 小波包分析很自然地应用到了图像处理领域,如在图像的压缩编码、图像消噪、 图像增强以及图像融合等方面都很好的应用。本文将对小波包分析在图像处理中 的应用作以简单介绍。 关键词:小波包 图像处理 消噪 1.小波包基本理论 1.1 小波包用于图像消噪 图像在采集、传输等过程中,经常受到一些外部环境的影响,从而产生噪声 使得图像发生降质,图像消噪的目的就是从所得到的降质图像中去除噪声还原原 始图像。图像降噪是图像预处理中一项应用比较广泛的技术,其作用是为了提高 图像的信噪比突出图像的期望特征。图像降噪方法有时域和频域两种方法。频率 域方法主要是根据图像像素噪声频率范围,选取适当的频域带通过滤波器进行滤 波处理,比如采用 Fourier 变换(快速算法 FFT)分析或小波变换(快速算法 Mallat 算法)分析。空间域方法主要采用各种平滑函数对图像进行卷积处理,以达到去 除噪声的目的,如邻域平均、中值(Median)滤波等都属于这一类方法。还有建 立在统计基础上的 lee 滤波、Kuan 滤波等。但是归根到底都是利用噪声和信号 在频域上分布不同进行的:信号主要分布在低频区域。而噪声主要分布在高频区 域,但同时图像的细节也分布在高频区域。所以,图像降噪的一个两难问题就是 如何在降低图像噪声和保留图像细节上保持平衡,传统的低通滤波方法将图像的 高频部分滤除,虽然能够达到降低噪声的效果,但破坏了图像细节。如何构造一 种既能够降低图像噪声,又能保持图像细节的降噪方法成为此项研究的主题。在 小波变换这种有力工具出现之后,这一目标已经成为可能。 基于小波包变换消噪方法的主要思想就是利用小波分析的多尺度特性,首先 对含有噪声的图像进行小波变换,然后对得到的小波系数进行阈值化处理,得到
新的小波系数,对其进行反变换,这样我们就得到了消噪之后的图像,从而实现 了对图像的恢复。目前,已经发展了许多小波变换与传统图像消噪方法相结合的 新的图像消噪算法,它们吸收二者的优点,从而提高了图像的消噪效果,得到了 较好的应用。 1.2. 小波包用于图像压缩 当今,我们正处在一个高速发展的信息时代,而信息的本质就是要求进行存 储、交流和传输。信息有多种形式,包括文字、声音、静止图像、视频图像等等。 在众多的信息形式中,图像信息最具有直观性和生动性,从而成为人们需求的主 要信息形式。然而由于图像信息的数据量太大,作数字传输时占有的信道频带有 非常宽的问题,直接制约着图像信息的存储和传输。因此,为了有效地利用现代 通讯业务和信息处理中的宝贵资源,需要对大量的数据信息,尤其是图像信息进 行压缩,因此图像数据压缩技术和解压缩技术成了多媒体技术的关键技术之一。 近年来,由于“海量”多媒体信息的出现,经典图像压缩算法已不能满足实 际应用的需要,迫切需要有更高压缩效率和适用于各种需要的新压缩算法。经典 压缩算法一般是在时域或者频域进行分析和操作,因而经典图像压缩算法只是利 用了图像的部分特征,研究人员希望同时利用两个域的特征,兼容时域和频域分 析的优越性。另外经典压缩算法一般使用的 DCT 和傅立叶变换是用余弦曲线和正 弦曲线作为它们的正交函数基,但这些函数都不是紧支集。而我们在实际应用中 处理的大部分是瞬态信号。特别地,在图像处理中许多重要特征也是空间位置高 度局部化的,如果使用一般的变换,这些瞬态和局部化成分的信息就很难得到最 佳表示。实际上,DCT 和傅立叶变换能用余弦和正弦函数表示任何分析函数,甚 至是一个瞬态信号,但这种表示在函数频谱上会呈现相当混乱的构成。 为了克服这种缺陷,研究人员已经发现若干种使用优先宽度的基函数,我们 称之为小波。使用这些基函数的变换被称之为小波变换。利用小波变换对图像进 行压缩是当前一个研究热点。小波包分析是近些年在小波分析的基础上发展起来 的,将图像在小波包最优基下展开,利用小波包最优基极好的空间、尺度定位性, 使得图像的小波包变换系数在小波变换域尽可能的集中,从而使在不降低压缩图 像的质量情况下,进一步地提高图像压缩比成为可能。
2.小波包分析 短时傅立叶变换对信号的频带划分是线性等间隔的。多分辨分析可以对信号 进行有效的时频分解,但由于其尺度是按二进制变化的,所以在高频频段其频率 分辨率较差,而在低频频段其时间分辨率较差,即对信号的频带进行指数等间隔 划分(具有等 Q 结构)。小波包分析能够为信号提供一种更精细的分析方法,它将 频带进行多层次划分,对多分辨率分析没有细分的高频部分进一步分解,并能够 根据被分析信号的特征,自适应地选择相应频带,使之与信号频谱相匹配,从而 提高了时-频分辨率,因此小波包具有更广泛的应用价值。关于小波包分析的理 解,这里以一个三层的分解进行说明,其小波包分解树如图 2.1。 图 2-1 小波包分解树 图 2-1 中,A 表示低频,D 表示高频,末尾的序号数表示小波分解的层树(也 即尺度数)。分解具有关系:S=AAA3+DAA3+ADA3+DDA3+AAD3+DAD3+ADD3+DDD3。 2.1 小波包的定义 在多分辨分析中, (2 RL ) zj  W j ,表明多分辨分析是按照不同的尺度因子 j 把 Hilbert 空间 (2 RL 分解为所有子空间 ) ZjW j  的正交和的。其中, jW 为小 ) ( 波函数 )(t 的闭包(小波子空间)。现在,对小波子空间 jW 按照二进制分式进行 频率的细分,以达到提高频率分辨率的目的。 一种自然的做法是将尺度空间 jV 和小波子空间 jW 用一个新的子空间 n jU 统一 起来表征,若令  U V  j  WU    0 j 1 j Zj  j 则 Hilbert 空间的正交分解 V j 1 WV j 即可用 n jU 的分解统一为 j
U 0  1 j U 0 j  U 1 j Zj  (2.22) 定义子空间 n jU 是函数是函数 )(tU n 的闭包空间,而 )(tU n 是函数 tU n 的闭包空 )(2 间,并令 )(tU n 满足下面的双尺度方程: 2( t  k ) n )( t  2 n 2 )( t  2 n 1   u   u    )( ukh Zk   2 )( ukg Zk  2( t  k ) n (2.23) 式中, )( kg  )1( k h 1(  k ) ,即两系数也具有正交关系。当 n=0 时,以上两式直 接给出 与在多分辨分析中,   )(  tu 0   )( tu  1  Zk    Zk  uh k 0 2( t  k ) ug k 0 2( t  k ) (2.24) 满足双尺度方程: )( t )( )( t t  和  2( h t  k  )( t 2( t  k Zk    g Zk          k )  k )   h Zkk    g Zkk  2 l  l  2 (2.25) 相比较, )(0 tu 和 )(1 tu 分别退化为尺度函数 )(t 和小波基函数 )(t 。式(2.24)是 式(2.22)的等价表示。把这种等价表示推广到  Zn (非负整数)的情况,即得到 (2.23)的等价表示为 U n 1 j   U n j  U 2 j n 1  Zj  ;  Zn (2.26) 定义(小波包) 由式(2.23)构造的序列 )(tun (其中  Zn )称为由基函数 )(0 tu = )(t 确定的正交小波包。当 n=0 时,即为(2.24)式的情况。 由于 )(t 由 kh 唯一确定,所以又称 n tu  Zn )( 为关于序列 kh 的正交小波包。 2.2 小波包的性质 定理 1 设非负整数 n 的二进制表示为   n i 1   i 12 i  , i =0 或 1。则小波包  ) (wun 的 傅立叶变换由下式给出:
 ) wu n (  式中   i 1  wm i ( j )2/ (2.27) ) (0 wHwm  ) ( (1 ) wGwm  ) (   1 2 1 2  )( ekh  jkw k   k  )( ekg  jkw 定 理 2 设  n tu  Zn )( 是 正 交 尺 度 函 数 )(t 的 正 交 小 波 包 , 则  ( tu n  ), ( tuk n  l )  kl ,即 n tu  Zn )( 构成 (2 RL 的规范正交基。 ) 2.3 小波包的空间分解 令 n tu  Zn )( 是关于 kh 的小波包族,考虑用下列方式生成子空间族。现在令 n=1,2,…;j=1,2,…,并对(2.22)式作迭代分解,则有  2 UUW  1 j  5 U U  j  1 j U j 2 1 j   4 j   2 U , 2 3 1 j  5 U j   U 6 j  2  U 7 j  2 2 因此,我们很容易得到小波子空间 jW 的各种分解如下: j UW UW   j 2 1 j  4 j  2   U U 3 1 j  5 j  2  U 6 j  2  U 7 j  2 UW  j … k 2 kj   U k 2 1  kj   …  U 1 k  2   kj U 1 k  2 kj  … UW j  2 0 j U  2 0 j 1  …  1jU 1 2 0 lU  2 jW 空间分解的子空间序列可写作 m j  1 ,m=0,1,…, l2 -1;l=1,2,…。子空 lU  2 间序列 m j  1 的标准正交基为 2 ( j  2/)1 u l 2  m 2( j l  t k :) Zk  。容易看出,当 l=0 和 m=0 时 , 子 空 间 序 列 lU  2 j  1 简 化 为 1 m jU = jW , 相 应 的 正 交 基 简 化 为  j 2/ 2  j u 1 2( t  k )  2  j 2/  2(  j t  k ) ,它恰好是标准正交小波族 )(, tkj 。
若 n 是一个倍频程细划的参数,即令 n= l2 +m,则我们有小波包的简略记号 tnkj )(, , 2 2/ j   n 2( tj  k ) ,其中,  )( t n l 2/ 2 u l  2 m l )2( t 。我们把 )(, tnkj , 称为既 有尺度指标 j、位置指标 k 和频率指标 n 的小波包。将它与前面的小波 kj 作 )(, t , 一比较知,小波只有离散尺度 j 和离散平移 k 两个参数,而小波包除了这两个离 散参数外,还增加了一个频率参数 n= l2 +m。正是这个频率新参数的作用,使得 小波包克服了小波时间分辨率高时频率分辨率低的缺陷,于是,参数 n 表示  )( t n l 2/ 2 u l  2 m l )2( t 函数的零交叉数目,也就是其波形的震荡次数。 定义(小波库) 由 )(tn 生成的函数族 )(, tnkj , (其中  Zn ;j, Zk  )称为 由尺度函数 )(t 构造的小波库。 推论 1.1 对于每个 j=0,1,2,… (2 RL ) Zj  W j =…   1 UWW  0 2 0  U 3 0 … 这时,族{ u ,, kj ( tu n  k ) |j=…,-1,0;n=2,3,…且 Zk  } 是 (2 RL 的一个正交基。 ) (2.28) (2.29) 随着尺度 j 的增大,相应正交小波基函数的空间分辨率越高,而其频率分辨 率越低,这正是正交小波基的一大缺陷。而小波包却具有将随 j 增大而变宽的频 谱窗口进一步分割变细的优良性质,从而克服了正交小波变换的不足。 小波包可以对 jW 进一步分解,从而提高频率分辨率,是一种比多分辨分析 更加精细的分解方法,具有更好的时频特性。 2.4 小波包算法 下面给出小波包的分解算法和重构算法。设 n Utg j )( n j ,则 n jg 可表示为 小波包分解算法:由 ld j n )( tg j l n t  2( , nj ud l  nj ld 2, 与 n ,1 求 ld  a d   b k 2, nj  d d d  1 2 l 2 l   j 2, n k l l k      j  l ) 2, nj 1 j ,1  n k j  ,1 n k k (2.30) (2.31)
小波包重构算法:由{ ld 2, }与 ld nj 2, nj 1 求 ld j ,1 n 3.小波包分析在图像处理中的实际应用 小波分析之所以在信号处理中有着强大的功能,是基于其分离信息的思想,分离 到各个小波域的信息除了与其他小波域的关联,使得处理的时候更为灵活。全局 阈值化方法作用的信息密度太大,不够精细,所以很难同时获得高的压缩比和能 量保留成分,在作用的分层阈值以后,性能明显提高,因为分层阈值更能体现信 号固有的时频局部特性。 但是小波分解仍然不够灵活,分解出来的小波树只有一种模式,不能完全地 体现时频局部化信息。而压缩的核心思想既是尽可能去除各小波域系数之间的信 息关联,最大限度体现时频局部化的信息,因此,实际的压缩算法多采用小波包 算法,而小波树的确定则是根据不同的信息论准则,以达到分解系数表达的信息 密度最高。 3.1 小波包处理图像所用函数介绍 小波包处理图像用到的函数主要有 wpdec2、wpbmpen、wpdencmp 等,下面主要介 绍一下 wpdencmp 函数的用法。函数 wpdencmp 的调用格式有以下两种: [XD,TREED,PERF0,PERFL2]=wpdencmp(X,SORH,N,'wname',CRIT,PAR,KEEPAPP) (1) [XD,TREED,PERF0,PERFL2]=wpdencmp(TREE,SORH,CRIT,PAR,KEEPAPP)(2) 格式(1)返回输入信号 X(一维或二维)的去噪或压缩后的信号 XD。输出 参数 TREED 是 XD 的最佳小波包分解树;PERFL2 和 PERF0 是恢复和压缩 L2 的能 量百分比。PERFL2=100*(X 的小波包系数范数/X 的小波包系数)^2;如果 X 是一 维信号,小波 wname 是一个正交小波,则 PERFL2=100*||XD||^2/||X||^2。SORH 的取值为's'或'h',表示的是软阈值或硬阈值。 输入参数 N 是小波包的分解层数,wname 是包含小波名的字符串。函数使用 由字符串 CRIT 定义的熵和阈值参数 PAR 实现最佳分解。如果 KEEPAPP=1,则近 似信号的小波系数不进行阈值量化;否则,进行阈值量化。 格式(2)与格式(1)的输出参数相同,输入选项也相同,只是它从信号的 小波包分解树 TREE 进行去噪或压缩。
3.2 小波包处理图像主程序介绍 下 面 是 运 用 小 波 包 进 行 图 像 处 理 的 程 序 实 例 : I1=imread(' C:\Users\Administrator\Desktop \002.jpg'); L=4; I=wextend('2D','zpd',I1,L); nbc=size(I,1); X = im2double(I); % 产 生 噪 声 图 像 init=2055415866; randn('seed',init); x=X+randn(size(X))/10; wname='sym4';lev=3; [c,l]=wavedec2(x,lev,wname); sigma_s=0.048535; % 图 像 降 噪 时 , 使 用 wbmpen 函 数 选 择 阈 值 alpha=2; thr_s=wbmpen(c,l,sigma_s,alpha); % 使 用 软 阈 值 和 保 存 的 低 频 信 号 , 进 行 图 像 降 噪 keepapp=1; xds1=wdencmp('gbl',x,wname,lev,thr_s,'s',keepapp); sigma_h=0.045663; thr_h=wbmpen(c,l,sigma_h,alpha); % 使 用 硬 阈 值 和 保 存 的 低 频 信 号 , 进 行 图 像 降 噪 xdh1=wdencmp('gbl',x,wname,lev,thr_h,'h',keepapp); %colormap(pink(nbc)); subplot(231);imshow(I,nbc);title(' 原 始 图 像 '); subplot(234);imshow(x);title(' 加 噪 图 像 '); subplot(232);imshow(xds1);title(' 小 波 软 阈 值 降 噪 图 像 '); subplot(235);imshow(xdh1);title(' 小 波 硬 阈 值 降 噪 图 像 ');
分享到:
收藏