版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、小波分析实验:实验2 二维离散小波变换(Mallat快速算法)实验目的:在理解离散小波变换原理和Mallat快速算法的基础上,通过编程对图像进行二维离散小波变换,从而加深对二维小波分解和重构的理性和感性认识,并能提高编程能力,为今后的学习和工作奠定基础。实验工具:计算机,matlab6.5 附录:(1)二维小波分解函数%二维小波分解函数 function Y=mallatdec2(X,wname,level)%输入:X 载入的二维图像像数值; % level 小波分
2、解次(级)数设定值(如果设定值超过最高可分解次数,按最高分解次数分解)% wname 小波名字wavelet name%输出:Y 多极小波分解后的小波系数矩阵 h,g=wfilters(wname,'d'); %h,g分别为低通和高通滤波器X=double(X);t=1;hh=size(X,2); while t<=level %先进行行小波变换
3、160; for row=1:hh Y(row,1:hh)=mdec1(X(row,1:hh),h,g) ; end %再进行列小波变换 for col=1:hh temp=mdec1( Y(1:hh,col)',h,g);
4、0; Y(1:hh,col)=temp' endt=t+1;hh=hh/2;X=Y;end %内部子函数,对一行(row)矢量进行一次小波变换,利用fft实现function y=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
5、;rrh=circshift(rrh',1)' rg=g(end:-1:1);rrg=zeros(1,(lenx-lenh),rg;rrg=circshift(rrg',1)'r1=dyaddown(ifft(fft(x).*fft(rrh,lenx),1); %use para 1r2=dyaddown(ifft(fft(x).*fft(rrg,lenx),1);y=r1,r2; (2)二维小波重构函数%二维小波重构函数function Y=mallatrec2(X,wname,level)%输入:X
6、160; 载入的小波系数矩阵; % level 小波分解次(级)数设定值(如果设定值超过最高可分解次数,按最高分解次数分解)% wname 小波名字wavelet name%输出:Y 重构图像矩阵 h,g=wfilters(wname,'d'); %h,g分别为重构低通滤波器和重构高通滤波器 hz=size(X,2);h1=hz/(2(level
7、-1); while h1<=hz % 对列变换 for col=1:h1 temp=mrec1(X(1:h1,col)',h,g)' X(1:h1,col)=temp; end %再对行变换 for row=1:h1
8、; temp=mrec1(X(row,1:h1),h,g); X(row,1:h1)=temp; end h1=h1*2; endY=X; %内部子函数,对一行小波系数进行重构function y=mrec1(x,h,g)%输入:x 行数组%
9、 h为低通滤波器% g为高通滤波器%输出: y 进行一级小波重构后值lenx=size(x,2); r3=dyadup(x(1,1:lenx*0.5),0); %内插零use para 0r4=dyadup(x(1,(lenx*0.5+1):lenx),0); %use para 0y=ifft(fft(r3,lenx).*fft(h,lenx)+ ifft(fft(r4,lenx).*fft(g,lenx);
10、60;(3)测试函数(主函数)%测试函数(主函数)clc;clear;X=imread('E:Libin的文档CourseCourse_wavelet实验2要求exp2LENA.bmp');%路径 X=double(X);A = mallatdec2(X,'sym2',3); image(abs(A);colormap(gray(255);title('多尺度分解图像');Y= mallatrec2(A,'sym2',3);Y=real(Y);figure(2);subplot(1,2,1);image(X);
11、colormap(gray(255);title('原始图像');subplot(1,2,2);image(Y);colormap(gray(255);title('重构图像');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 连续小波变换实验目的:在理解连续小波变换原理的基础上,通过编程实现对一维信号进行连续小波变换,(实验中采用的是墨西哥帽小波),从而对连续小波变换增加了理性和感性的
12、认识,并能提高编程能力,为今后的学习和工作奠定基础。实验工具:计算机,matlab6.5 程序附录:(1) 墨西哥帽小波函数,按照(*)式编程% mexh.mfunction Y=mexh(x)if abs(x)<=8Y=exp(-x*x/2)*(1-x2);else Y=0;End (2) 实验程序,按照(*)式编程,详细过程请参考“本实验采取的一些小技巧”% clc;clear;load('data.mat');len=length(dat);lna=70;
13、160; % (尺度a)的长度a=zeros(1,lna);wfab=zeros(lna,len); %小波系数矩阵mexhab=zeros(1,len); % 离散化小波系数矩阵 for s=1:lna %s 表示尺度 for k=1:len
14、0; mexhab(k)=mexh(k/s); end for t=1:len % t 表示位移 wfab(s,t)=(sum(mexhab.*dat)/sqrt(s); %将积分用求和代替 mexhab=mexh(-1*t/s),mexhab(1:len-1); %mexhab修改第一项并右移&
15、#160; endend figure(1);plot(dat);title('原始数据图');figure(2); %小波系数谱image(wfab);colormap(pink(128);title('小波系数图');%surf(wfab);%title('小波系数谱网格图');%pwfab=wfab.*wfab; %瞬态功率谱%figure(3);%subplot(1,2,1);%surf(pwfab);%title('瞬态功率谱网格图');%subplot(1,2,
16、2);%contour(pwfab);%title('瞬态功率谱等值线'); (3)test函数。%test 函数clc;clear;for i=1:200 dat(i)=sin(2*pi*i*0.05); %正弦波函数endlen=length(dat);lna=40;wfab=zeros(lna,len);mexhab=zeros(1,len);for s=1:lna
17、0; %s 表示尺度 for k=1:len mexhab(k)=mexh(k/s); end for t=1:len % t 表示位移 w
18、fab(s,t)=(sum(mexhab.*dat)/sqrt(s); %将积分用求和代替 mexhab=mexh(-1*t/s),mexhab(1:len-1); %mexhab修改第一项并右移 endendfigure(1);plot(dat);title('orignal dat');figure(2); %小波系数谱image(wfab);colormap(pink(128);title('正弦波的小波系数图')
19、;(4)用fft实现cwt%按照圆周卷积定理,原周卷积和线性卷积的关系L>=M+N-1%按照圆周卷积的定义,相关和线性卷积的关系(原始算法和线性卷积的关系)%注意画图理解clc;clear;t1=cputime; load('data.mat');len=length(dat);lna=70; % a(尺度)的长度a=zeros(1,lna); % a 表示尺度b=zeros(1,len);
20、60; % b 表示位移wfab=zeros(lna,len); %小波系数矩阵mexhab=zeros(1,2*len-1); data=zeros(1,len-1),dat;Ydata=fft( data ,4*len);for s=1:lna for k=1:2*len-1 mexhab(k)=mexh
21、(k-len)/s); end temp=ifft( Ydata.*fft( mexhab,4*len ) ,4*len); wfab(s,:)=real(temp(2*len-1:3*len-2)/sqrt(s); %为什么要取实部而不是取模,我也不是很清楚,可是有种感觉endfigure(1);plot(dat);title('原始数据图');figure(2); %小波系数谱image(wfab);colormap(pink(128);title('小波系数谱 ');cputime-t1 4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030年移动金融教育企业制定与实施新质生产力战略分析研究报告
- 智能消费设备行业市场营销创新战略制定与实施分析报告
- 2025-2030年信笺本(信纸本)行业数字营销策略分析研究报告
- 高二零诊试题及答案
- 2026年公司章程合同协议含股权转让
- 2026届武汉市九年级语文中考压轴冲刺原创仿真模拟试卷(含参考答案解析与作文范文)
- 会计笔试试题及答案
- 2026年安全工程师法规模块题库
- 2026年证券投资分析模拟试题及答案
- 2026年初级会计职称初级会计实务模拟题及重点解析
- 跨文化交际(东北农业大学)智慧树知到课后章节答案2023年下东北农业大学
- 资本结构代理成本外文翻译文献
- 华住工程竣工验收检查标准
- 应急食品物资保障协议书
- 数字水印技术课件
- 2023年绿皮书观后感400字(九篇)
- 光电子能谱XPS课程
- 初中数学-一元一次不等式组(1)教学课件设计
- 清平乐·春归何处
- 蒙牛渠道现代通路作业规范指导手册
- 《神经病学》教学大纲
评论
0/150
提交评论