小波变换mallatWord格式.docx

上传人:b****5 文档编号:21105473 上传时间:2023-01-27 格式:DOCX 页数:12 大小:407.75KB
下载 相关 举报
小波变换mallatWord格式.docx_第1页
第1页 / 共12页
小波变换mallatWord格式.docx_第2页
第2页 / 共12页
小波变换mallatWord格式.docx_第3页
第3页 / 共12页
小波变换mallatWord格式.docx_第4页
第4页 / 共12页
小波变换mallatWord格式.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

小波变换mallatWord格式.docx

《小波变换mallatWord格式.docx》由会员分享,可在线阅读,更多相关《小波变换mallatWord格式.docx(12页珍藏版)》请在冰豆网上搜索。

小波变换mallatWord格式.docx

同理,对于

分解的高频部分有如下矩阵形式:

分解程序:

lenx=size(x,2);

%x为一维向量

lenh=size(h,2);

h=[h,zeros(1,(lenx-lenh))];

g=[g,zeros(1,(lenx-lenh))];

r1

(1)=sum(h.*x);

r2

(1)=sum(g.*x);

fork=1:

1:

(lenx/2-1)%循环求出下一级低频和高频分量

h=[h(end-1:

end),h(1:

(end-2))];

r1(k+1)=sum(h.*x);

g=[g(end-1:

end),g(1:

r2(k+1)=sum(g.*x);

end

y=[r1,r2];

对于重构算法,其等效形式为

上式等号右边部分实质上是对变量

的数字卷积运算,程序采用频域相乘代替卷积,重建程序为y=ifft(fft(c3,lenx).*fft(h,lenx))+ifft(fft(d3,lenx).*fft(g,lenx));

 

实验结果及分析:

1、多尺度分解与重构图像

二维小波变换采用小波采用db3,其峰值信噪比PNSR=230.13db,并对三级分解图像进行归一化,求出0的个数为37626,其所占的百分比为57.41%。

2、延拓重建图像

延拓方法

周期延拓

对称周期延拓

零延拓

常数连续延拓

PNSR

230.18db

230.48db

229.80db

230.13db

从PNSR结果可知,在各种延拓中,对称周期延拓的重建图像结果最好,相比之下零延拓图像效果不如其他方法延拓。

3、不同小波下重构图像的性质

用不同小波进行图像重构,所得的重构图像能量分布如下

用各种小波进行重构后的图像的均值方差如下表。

小波

db1

db2

db3

db4

均值

124.0309

124.0509

方差

2272

附录:

1、主函数程序

clc;

clear;

X=imread('

LENA.bmp'

);

%路径

X=double(X);

%S=yancir(X);

A=mallatdec2(X,'

db3'

3);

image(abs(A));

colormap(gray(255));

title('

3级多尺度分解图像'

Y=mallatrec2(A,'

3);

Y=real(Y);

figure

(2);

subplot(1,2,1);

image(X);

原始图像'

subplot(1,2,2);

image(Y);

重建图像'

zerosn=numberzeros(A);

%Y=Y(33:

288,33:

288);

%当调用延拓图像时,从延拓的重建图像进行截取

csize=size(X);

sr=csize

(1);

sc=csize

(2);

mse=sum(sum((Y-X).^2,1))/(sr*sc);

psnr=10*log(255*255/mse)/log(10)

2、分解程序

functionY=mallatdec2(X,wname,level)

%输入:

X载入的二维图像像数值;

%level小波分解次(级)数设定值(如果设定值超过最高可分解次数,按最高分解次数分

%wname小波名字waveletname

%输出:

Y多极小波分解后的小波系数矩阵

[h,g]=wfilters(wname,'

d'

%h,g分别为低通和高通滤波器

t=1;

[hh,ll]=size(X);

whilet<

=level

%先进行行小波变换

forrow=1:

hh

Y(row,1:

ll)=mdec1(X(row,1:

ll),h,g);

end

%再进行列小波变换

forcol=1:

ll

temp=mdec1(Y(1:

hh,col)'

h,g);

Y(1:

hh,col)=temp'

;

t=t+1;

hh=hh/2;

ll=ll/2;

X=Y;

functiony=mdec1(x,h,g)

%输入:

x行数组

%h为低通滤波器

%g为高通滤波器

y进行一级小波分解后的系数

lenx=size(x,2);

(lenx/2-1)

h=[h(end-1:

r1(k+1)=sum(h.*x);

g=[g(end-1:

r2(k+1)=sum(g.*x);

end

3、重建程序

functionY=mallatrec2(X,wname,level)

X载入的小波系数矩阵;

%level小波分解次(级)数设定值(如果设定值超过最高可分解次数,按最高分解次数

Y重构图像矩阵

%h,g分别为重构低通滤波器和重构高通滤波器

hz=size(X,2);

h1=hz/(2^(level-1));

whileh1<

=hz

%对列变换

h1

temp=mrec1(X(1:

h1,col)'

h,g)'

X(1:

h1,col)=temp;

%再对行变换

temp=mrec1(X(row,1:

h1),h,g);

X(row,1:

h1)=temp;

h1=h1*2;

Y=X;

functiony=mrec1(x,h,g)

y进行一级小波重构后值

c3=dyadup(x(1,1:

lenx*0.5),0,lenx);

%内插零usepara0

d3=dyadup(x(1,(lenx*0.5+1):

lenx),0,lenx);

%usepara0

y=ifft(fft(c3,lenx).*fft(h,lenx))+ifft(fft(d3,lenx).*fft(g,lenx));

4、延拓程序

%零延拓程序

functionT=yan0(x)

[r0,c0]=size(x);

fors=1:

r0

a(s,:

)=[zeros(1,c0/8),x(s,:

),zeros(1,c0/8)];

c0=c0+c0/4;

fort=1:

c0

T(:

t)=[zeros(r0/8,1)'

a(:

t)'

zeros(r0/8,1)'

]'

End

%连续常数延拓程序

functionT=yanc(x)

r1(1:

c0/8)=x(s,1);

r2(1:

c0/8)=x(s,c0);

)=[r1,x(s,:

),r2];

c1(1:

r0/8)=a(1,t);

c2(1:

r0/8)=a(r0,t);

t)=[c1,a(:

c2]'

%对称周期延拓程序

functionT=yancir(x)

[r0,c0]=size(x);

)=[x(s,end-(c0/8-1):

end),x(s,:

),x(s,1:

c0/8)];

t)=[a(end-(r0/8-1):

end,t)'

a(1:

r0/8,t)'

%周期延拓程序

functionT=yan(x)

)=[x(s,c0/8:

-1:

1),x(s,:

),x(s,end:

end-(c0/8-1))];

t)=[a(r0/8:

1,t)'

a(end:

end-(r0/8-1),t)'

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1