一.基础原理1.小波简介小波一词由Morlet和Grossman在1980年代早期提出,其思想来源于伸缩平移方法。小波分析(waveletanalysis),或小波转换(wavelettransform)是指用有限长或快速衰减的、称为母小波(motherwavelet)的振荡波形来表示信号。该波形被缩放和平移以匹配输入的信号。小波变换是将时间信号展开为小波函数族的线性叠加,小波变换的核函数是小波函数,它在时间和频率域内都是局部化的。所以,小波变化可对信号同时在时-频域内进行联合分析。小波变换分成两个大类:离散小波变换(DWT)和连续小波转换(CWT)。两者的主要区别在于,连续变换在所有可能的缩放和平移上操作,而离散变换采用所有缩放和平移值的特定子集。小波分析的一个重要领域就是是图像处理。小波分解可以把小波分层次按照小波基展开,并可以根据图像的性质及给定的图像处理标准确定具体要展开到哪一级,还可以把细节分量和近似分量展开,所以小波分析常用于信号的压缩、去噪等方面,是图像处理的一个极其重要的工具。本报告中将具体实例说明小波分解在图像中的应用。2.小波变换应用包括去噪,图像的压缩,图像的融合以及水印技术。2.1去噪原理:在实际工程应用中,通常所分析的信号具有非线性,非平稳,并且奇异点较多的特点。含噪的一维信号模型可表示为:式1其中,f(t)为真实信号,s(t)为含噪信号,e(t)为噪声,为噪声标准偏差。有用信号通常表现为低频信号或是相对比较平稳。而噪声信号通常表现为高频信号。利用小波对含噪的原始信号分解后,含噪部分主要集中在高频小波系数中,并且,包含有用信号的小波系数幅值较大,但数目少;而噪声对应的小波系数幅值小,数目较多。基于上述特点,可以应用门限阈值法对小波系数进行处理。(即对较小的小波系数置为0,较大的保留或削弱),然后对信号重构即可达到消噪的目的。在去噪方面,小波分析由于能同时在时-频域中对信号进行分析,具有多分辨分析的功能,所以在不同的分解层上有效的区分信号的突变部分和噪声,从而实现信号的消噪。2.2图像压缩原理:一个图像作小波分解以后,可得到一系列不同分辨率的图像,不同分辨率的子图像对应的频率是不相同的。高分辨率(即高频)子图像上大部分点的数值都接近0,越是高频这种现象越明显。对于一个图像来说,表现一个图像最主要的部分是低频部分,所以一个最简单的压缩方法是利用小波分解,去掉图像的高频部分,而只保留低频部分。2.3图像的融合原理:图像融合是将两幅或多幅图像融合在一起,以获取对同一场景的更为精确、更为全面、更为可靠的图像描述。融合算法应该充分利用各原图像的互补信息,使融合后的图像更适合人的视觉感受,适合进一步分析的需要;并且应该统一编码,压缩数据量,以便于传输。图像融合可分为三个层次:)(*)()(tetfts1_,,1,0nta.像素级融合b.特征级融合c.决策级融合其中像素级融合是最低层次的融合,也是后两级的基础。它是将各原图像中对应的像素进行融合处理,保留了尽可能多的图像信息,精度比较高,因而倍受人们的重视。像素级的图像融合方法大致可分为三大类:简单的图像融合方法:a.基于塔形分解(如Laplace塔形分解、比率塔等)的图像融合方法b.基于小波变换的图像融合方法小波变换是图像的多尺度、多分辨率分解,它可以聚焦到图像的任意细节,被称为数学上的显微镜。近年来,随着小波理论及其应用的发展,已将小波多分辨率分解用于像素级图像融合。小波变换的固有特性使其在图像处理中有如下优点:a.完善的重构能力,保证信号在分解过程中没有信息损失和冗余信息;b.把图像分解成平均图像和细节图像的组合,分别代表了图像的不同结构,因此容易提取原始图像的结构信息和细节信息;c.具有快速算法,它在小波变换中的作用相当于FFT算法在傅立叶变换中的作用,为小波变换应用提供了必要的手段;d.二维小波分析提供了与人类视觉系统方向相吻合的选择性图像。2.4图像的水印技术原理:数字水印的基本思想是在原始媒体数据中,如音频、视频、图像等,隐藏具有一定意义的附加信息作为标记,这些信息与原始数据紧密结合,并随之一起被传输。在接收端,通过计算机水印信号被提取出来用于各种目的,可能的应用包括数字签名、数字指纹、广播监视、内容认证、拷贝控制和秘密通信等。数字水印被视做抵抗多媒体盗版的“最后一道防线”。因此从水印技术自身来说,它具有广泛的应用前景和巨大的经济价值。数字水印算法可以分成两类:空域水印算法和频域水印算法。。空域水印算法是指将水印信号直接嵌入在原始数据中。频域水印算法是将原始信号和待检测信号同时进行变换域变换,比较两者的区别,进行嵌入水印的逆运算,得出水印信息。如果是可读的水印,那么就此结束;如果是不可读水印,如高斯噪声,就将得出的水印与已知水印作比较,由相关性判断待检测信号含不含水印,故水印的检测有两个结束点。频域法有以下优点:1、嵌入的水印信号能量可以分布到空域的所有像素上,有利于保证水印的不可见性;2、视觉系统的某些特性(如频率的掩盖特性)可以更方便地结合到水印编码过程中;3、频域法可与国际数据压缩标准兼容,从而实现在压缩内的水印编码。3.小波函数库实现二维小波变换的常用函数:(1)函数dwt2功能:进行一层二维离散小波变换。语法格式:[cA,cH,cV,cD]=dwt(X,’wname’)说明:X表示输入信号,wname表示使用的小波基函数,cA表示分解得到的近似分量系数,cH表示分解得到的水平分量系数,cV表示分解得到的近似垂直分量系数,cD表示分解得到的近似对角线分量系数。(2)函数idwt2。功能:进行一层二维离散小波反变换。语法格式:X=idwt2(cA,cH,cV,cD,’wname’)说明:X表示重构的分量信号,wname表示使用的小波基函数,cA表示分解得到的近似分量系数,cH表示分解得到的水平分量系数,cV表示分解得到的近似垂直分量系数,cD表示分解得到的近似对角线分量系数。(3)函数upcoef2。功能:重构二维小波分解的各种分量。语法格式:Y=upcoef(O,X,’wname’,N)说明:Y表示重构的细节信号分量,O表示细节信号的类型,为”a”表示近似细节信号,为”h”表示水平细节信号,为”v”表示垂直细节信号,为”d”表示对角线细节信号;X是细节信号,wname是使用的小波基函数,N表示分解的层数,默认值为1。(4)函数wavedec2。功能:进行多层二维小波分解。语法格式:[C,S]=wavedec2(X,N,'wname')说明:X表示输入信号,N表示分解的层数,默认值为1,wname表示使用的小波基函数。(5)函数waverec2。功能:进行多层二维小波分解的重构。语法格式:[C,S]=wavedec2(X,N,'wname')说明:X表示输入信号,N表示分解的层数,默认值为1,wname表示使用的小波基函数。(6)函数wrcoef2。功能:进行多层二维小波分解的重构。语法格式:X=wrcoef2(‘type’,C,S,’wname’,N)说明:X是重构的分量信号;type是分量类型,为”a”表示近似分量,为”h”表示水平分量,为”v”表示垂直分量,为”d”表示对角线细节信号;N表示重构的层数,默认值为size(S,1)-2;wname表示使用的小波基函数。(7)函数appcoef2。功能:提取多层二维小波分解的近似分量。语法格式:A=appcoef(C,S,’wname’,N)说明:A是得到的近似分量;C和S是函数wavedec2得到的分解结构;wname表示使用的小波基函数,N是分解的层数。(8)函数detcoef2。功能:提取多层二维小波分解的细节分量。语法格式:D=detcoef2(O,C,S,N)说明:D是得到的分量;O是细节信号的类型,为”h”表示水平细节信号,为”v”表示垂直细节信号,为”d”表示对角线细节信号;N表示分解的层数,C和S是函数wavedec2分解得到的结果。二.小波变换应用实验1.图像的去噪实验源程序:clc;clearall;closeall;I=imread('Lena.bmp');%输入图像figure(1);imshow(I);X1=imnoise(I,'gaussian',0,0.01);X2=imnoise(I,'salt&pepper',0.01);X3=imnoise(I,'speckle',0.01);figure(2);imshow(X1);X=X1;[c,s]=wavedec2(X,2,'sym5');%用sym5小波对图像信号进行二层的小波分解%下面进行图像的去噪处理%使用ddencmp函数来计算去噪的默认阈值和熵标准%使用wdencmp函数用小波来实现图像的去噪和压缩[thr,sorh,keepapp]=ddencmp('den','wv',X1);[J,cxc,lxc,perf0,perfl2]=wdencmp('gbl',c,s,'sym5',2,thr,sorh,keepapp);figure(3),imshow(uint8(J));%显示去噪后的图像title('去噪后的图像')实验结果:图1:原始图像图2:加入高斯噪声后的图像图3:小波去噪后的图像图4:加入椒盐噪声后的图像图5:小波去噪后的图像图6:加入加乘性噪声的图像图7:小波去噪后图像2.图像的融合并增强实验源程序:clearall;clc;closeall;X1=imread('Goldhill.bmp');subplot(2,2,1);imshow(X1);title('Goldhill.bmp');X2=imread('Lena.bmp');subplot(2,2,2);imshow(X2);title('Lena.bmp');X1=double(X1);X2=double(X2);%对上述两图像进行分解[c1,I1]=wavedec2(X1,3,'sym4');[c2,I2]=wavedec2(X2,3,'sym4');%对分解系数进行融合c=c1+c2;%应用融合系数进行图像重构并显示XX=waverec2(c,I1,'sym4')subplot(2,2,3);XX=double(XX);image(XX);title('融合图像');Csize1=size(c1);%对图像进行增强处理fori=1:Csize1(2)c1(i)=1.2*c1(i);endCsize2=size(c2);forj=1:Csize2(2)c2(j)=0.8*c2(j);end%通过减小融合技术以减小图像的亮度c=0.5*(c1+c2);%对融合系数进行图像重构XXX=waverec2(c,I2,'sym4');%显示重构结果subplot(2,2,4);XXX=double(XXX);image(XXX);title('融合后增强图像');实验数据一:原始图像如下:图8:原图像Goldhill.bmp图9:原图像Lena.bmp融合后图像如下:图10:融合后图像融合后增强的图像如下:图11:融合后增强图像实验数据二:原始图像如下:图12:原图像Peppers.bmp图13:原图像Lena.bmp融合后图像如下:图14:融合后图像融合后增强的图像如下:图15:融合后增强图像3.水印技术实验源程序:clc;clearall;closeall;img=imread('Barbara.tif');%输入图像img=double(img);c=0.001;figure,imshow(uint8(img));title('原始图像');[pq]=size(img);%生成密钥key=imread('girl.bmp');figure,imshow(key),title('密钥信息');[Lo_D,Hi_D,Lo_R,Hi_R]=wfilters('haar');[ca,ch,cv,cd]=dwt2(img,Lo_D,Hi_D);y=[cach;cvcd];N=ones(p,q);[ca,ch,cv,cd]=