小波变换mallatWord格式.docx
- 文档编号:21105473
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:12
- 大小:407.75KB
小波变换mallatWord格式.docx
《小波变换mallatWord格式.docx》由会员分享,可在线阅读,更多相关《小波变换mallatWord格式.docx(12页珍藏版)》请在冰豆网上搜索。
同理,对于
分解的高频部分有如下矩阵形式:
分解程序:
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)'
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 变换 mallat
![提示](https://static.bdocx.com/images/bang_tan.gif)