整理小波分析实验二维离散小波变换Mallat快速算法Word格式.docx

上传人:b****3 文档编号:17034315 上传时间:2022-11-28 格式:DOCX 页数:18 大小:610.22KB
下载 相关 举报
整理小波分析实验二维离散小波变换Mallat快速算法Word格式.docx_第1页
第1页 / 共18页
整理小波分析实验二维离散小波变换Mallat快速算法Word格式.docx_第2页
第2页 / 共18页
整理小波分析实验二维离散小波变换Mallat快速算法Word格式.docx_第3页
第3页 / 共18页
整理小波分析实验二维离散小波变换Mallat快速算法Word格式.docx_第4页
第4页 / 共18页
整理小波分析实验二维离散小波变换Mallat快速算法Word格式.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

整理小波分析实验二维离散小波变换Mallat快速算法Word格式.docx

《整理小波分析实验二维离散小波变换Mallat快速算法Word格式.docx》由会员分享,可在线阅读,更多相关《整理小波分析实验二维离散小波变换Mallat快速算法Word格式.docx(18页珍藏版)》请在冰豆网上搜索。

整理小波分析实验二维离散小波变换Mallat快速算法Word格式.docx

d'

);

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

X=double(X);

t=1;

hh=size(X,2);

whilet<

=level 

%先进行行小波变换

for 

row=1:

hh

Y(row,1:

hh)=mdec1(X(row,1:

hh),h,g);

end

%再进行列小波变换

forcol=1:

temp=mdec1(Y(1:

hh,col)'

h,g);

Y(1:

hh,col)=temp'

;

t=t+1;

hh=hh/2;

X=Y;

end

%内部子函数,对一行(row)矢量进行一次小波变换,利用fft实现

functiony=mdec1(x,h,g)

%输入:

x行数组

h为低通滤波器

g为高通滤波器

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

lenx=size(x,2);

lenh=size(h,2);

rh=h(end:

-1:

1);

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

rrh=circshift(rrh'

1)'

rg=g(end:

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

rrg=circshift(rrg'

r1=dyaddown(ifft(fft(x).*fft(rrh,lenx)),1);

%usepara1

r2=dyaddown(ifft(fft(x).*fft(rrg,lenx)),1);

y=[r1,r2];

(2)二维小波重构函数

%二维小波重构函数

functionY=mallatrec2(X,wname,level)

载入的小波系数矩阵;

 

level 

重构图像矩阵

%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;

%再对行变换

forrow=1:

temp=mrec1(X(row,1:

h1),h,g);

X(row,1:

h1)=temp;

h1=h1*2;

Y=X;

%内部子函数,对一行小波系数进行重构

functiony=mrec1(x,h,g)

y进行一级小波重构后值

r3=dyadup(x(1,1:

lenx*0.5),0);

%内插零usepara0

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

lenx),0);

%usepara0

y=ifft(fft(r3,lenx).*fft(h,lenx))+ifft(fft(r4,lenx).*fft(g,lenx));

(3)测试函数(主函数)

%测试函数(主函数)

clc;

clear;

X=imread('

E:

\Libin的文档\Course\Course_wavelet\实验2要求\exp2\LENA.bmp'

%路径

A=mallatdec2(X,'

sym2'

3);

image(abs(A));

colormap(gray(255));

title('

多尺度分解图像'

Y=mallatrec2(A,'

Y=real(Y);

figure

(2);

subplot(1,2,1);

image(X);

原始图像'

subplot(1,2,2);

image(Y);

重构图像'

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)

实验1连续小波变换

在理解连续小波变换原理的基础上,通过编程实现对一维信号进行连续小波变换,(实验中采用的是墨西哥帽小波),从而对连续小波变换增加了理性和感性的认识,并能提高编程能力,为今后的学习和工作奠定基础。

程序附录:

(1)墨西哥帽小波函数,按照(***)式编程

%mexh.m

functionY=mexh(x)

ifabs(x)<

=8

Y=exp(-x*x/2)*(1-x^2);

else

Y=0;

End

(2)实验程序,按照(**)式编程,详细过程请参考“本实验采取的一些小技巧”

%

load('

data.mat'

len=length(dat);

lna=70;

%(尺度a)的长度

a=zeros(1,lna);

wfab=zeros(lna,len);

%小波系数矩阵

mexhab=zeros(1,len);

%离散化小波系数矩阵

fors=1:

lna 

%s表示尺度 

fork=1:

len

mexhab(k)=mexh(k/s);

end 

fort=1:

len 

%t表示位移

wfab(s,t)=(sum(mexhab.*dat))/sqrt(s);

%将积分用求和代替

mexhab=[mexh(-1*t/s),mexhab(1:

len-1)];

%mexhab修改第一项并右移

figure

(1);

plot(dat);

原始数据图'

%小波系数谱

image(wfab);

colormap(pink(128));

小波系数图'

%surf(wfab);

%title('

小波系数谱网格图'

%pwfab=wfab.*wfab;

%%瞬态功率谱

%figure(3);

%subplot(1,2,1);

%surf(pwfab);

瞬态功率谱网格图'

%subplot(1,2,2);

%contour(pwfab);

瞬态功率谱等值线'

(3)test函数。

%test函数

fori=1:

200

dat(i)=sin(2*pi*i*0.05);

%正弦波函数

lna=40;

orignaldat'

正弦波的小波系数图'

(4)用fft实现cwt

%按照圆周卷积定理,原周卷积和线性卷积的关系L>

=M+N-1

%按照圆周卷积的定义,相关和线性卷积的关系(原始算法和线性卷积的关系)

%注意画图理解

t1=cputime;

%a(尺度)的长度

%a表示尺度

b=zeros(1,len);

%b表示位移

mexhab=zeros(1,2*len-1);

data=[zeros(1,len-1),dat];

Ydata=fft(data,4*len);

2*len-1

mexhab(k)=mexh((k-len)/s);

temp=ifft(Ydata.*fft(mexhab,4*len),4*len);

wfab(s,:

)=real(temp(2*len-1:

3*len-2))/sqrt(s);

%为什么要取实部而不是取模,我也不是很清楚,可是有种感觉

小波系数谱'

cputime-t1

4)fft快速计算cwt

%按照圆周卷积的定义,

a=5;

data=[dat,zeros(1,len)];

(4)环境保护验收。

Ydata=fft(dat,2*len);

mexhab=zeros(1,2*len);

规划环境影响评价技术导则由国务院环境保护主管部门会同国务院有关部门制定;

规划环境影响评价技术规范由国务院有关部门根据规划环境影响评价技术导则制定,并抄送国务院环境保护主管部门备案。

k=[-a*s:

1:

a*s];

mexhab(k+len)=mexh2(k./s);

temp=ifft(Ydata.*fft(mexhab,2*len),2*len);

B.可能造成重大环境影响的建设项目,应当编制环境影响报告书 

)=real(temp(len+1:

2*len))/sqrt(s);

%要取实部而不是取模,呵呵

(一)安全预评价依据figure

(1);

2.量化环境影响后果plot(dat);

(6)评价结论。

第1页image(wfab);

6.提出安全对策措施建议cputime-t1

大纲要求5)保存为mexh2.m

(1)基础资料、数据的真实性;

functionY=mexh2(x)

Y=exp(-x.*x/2).*(1-x.^2);

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

当前位置:首页 > 小学教育 > 语文

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

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