预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共20页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

一、题目:双树复小波变换 二、目的:双树复小波和实小波变换的比较 三、算法及其实现:提取阶梯型边界点 算法。 幅值: 相位: 代码实现。 我采用Matlab函数编程实现。具体程序见shift_test_2D.m,drawcirc.m,setfig.m,dtwavexfm2.m,dtwaveifm2.m,waveifm2.m,wavexfm2.m SkelMap.m。 设和分别是双正交对偶尺度函数与对偶小波,,,和是相应的低通滤波器和高通滤波器,即它们满足 实部:虚部: 双树复小波变换可以通过离散小波变换DWT实现:一个DWT产生实部,另一个产生虚部。 实现工具:Matlab 程序代码: (1)shift_test_2D.m: %shift_test_2D.m % %M-filetoperforma4-levelwavelettransformonacircleusingQ-shift %dualwavelettreeandDWT,andtocompareshiftinvarianceproperties. % %NickKingsbury,CambridgeUniversity,May2002. clearall closeall %Drawacirculardisc. x=round((drawcirc(64,1,0,0,256)-0.5)*200); setfig(1); colormap(gray(256)) image(min(max(x+128,1),256)); set(gca,'position',[0.10.25.25.5]); axis('off'); axis('image'); %draw(xx); title('Input(256x256)','FontSize',14);drawnow %Do4levelsofCWT. [Yl,Yh]=dtwavexfm2(x,4,'near_sym_b','qshift_b'); %Looptoreconstructoutputfromcoefsateachlevelinturn. %Startswiththefinestlevel. titl=['1st';'2nd';'3rd';'4th';'Low']; yy=zeros(size(x).*[23]); yt1=1:size(x,1);yt2=1:size(x,2); formlev=1:5, mask=zeros(6,5); mask(:,mlev)=1; z=dtwaveifm2(Yl*mask(1,5),Yh,'near_sym_b','qshift_b',mask); figure;draw(z);drawnow yy(yt1,yt2)=z; yt2=yt2+size(x,2)/2; end %disp('Pressakey...') %pause %NowdosamewithDWT. %Do4levelsofRealDWTusing'antonini'(9,7)-tapfilters. [Yl,Yh]=wavexfm2(x,4,'antonini'); yt1=[1:size(x,1)]+size(x,1);yt2=1:size(x,2); formlev=1:5, mask=zeros(3,5); mask(:,mlev)=1; z=waveifm2(Yl*mask(1,5),Yh,'antonini',mask); figure;draw(z);drawnow yy(yt1,yt2)=z; yt2=yt2+size(x,2)/2; end figure; setfig(gcf); colormap(gray(256)) image(min(max(yy+128,1),256)); set(gca,'position',[0.10.1.8.8]); axis('off'); axis('image'); holdon plot(128*[[1;1]*[1:4][0;6]]+1,128*[[0;4]*[1111][2;2]]+1,'-k'); holdoff title('Componentsofreconstructed''disc''images','FontSize',14); text(-0.01*size(yy,2),0.25*size(yy,1),'DTCWT','horiz','r'); text(0.02*size(yy,2),1.02*size(yy,1),'wavelets:','horiz','r','vert','t'); text(-0.01*size(yy,2),0.75*size(yy,1),'DWT','hori