matlab小波分析源代碼分析_第1頁(yè)
matlab小波分析源代碼分析_第2頁(yè)
matlab小波分析源代碼分析_第3頁(yè)
matlab小波分析源代碼分析_第4頁(yè)
matlab小波分析源代碼分析_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

matlab小波分析源代碼分析MATLAB由一系列工具組成。這些工具方便用戶(hù)使用MATLAB的函數(shù)和文件,其中許多工具采用的是圖形用戶(hù)界面。包括MATLAB桌面和命令窗口、歷史命令窗口、編輯器和調(diào)試器、路徑搜索和用于用戶(hù)瀏覽幫助、工作空間、文件的瀏覽器。隨著MATLAB的商業(yè)化以及軟件本身的不斷升級(jí),MATLAB的用戶(hù)界面也越來(lái)越精致,更加接近Windows的標(biāo)準(zhǔn)界面,人機(jī)交互性更強(qiáng),操作更簡(jiǎn)單。而且新版本的MATLAB提供了完整的聯(lián)機(jī)查詢(xún)、幫助系統(tǒng),極大的方便了用戶(hù)的使用。簡(jiǎn)單的編程環(huán)境提供了比較完備的調(diào)試系統(tǒng),程序不必經(jīng)過(guò)編譯就可以直接運(yùn)行,而且能夠及時(shí)地報(bào)告出現(xiàn)的錯(cuò)誤及進(jìn)行出錯(cuò)原因分析。新版本的MATLAB可以利用MATLAB編譯器和C/C++數(shù)學(xué)庫(kù)和圖形庫(kù),將自己的MATLAB程序自動(dòng)轉(zhuǎn)換為獨(dú)立于MATLAB運(yùn)行的C和C++代碼。允許用戶(hù)編寫(xiě)可以和MATLAB進(jìn)行交互的C或C++語(yǔ)言程序。另外,MATLAB網(wǎng)頁(yè)服務(wù)程序還容許在Web應(yīng)用中使用自己的MATLAB數(shù)學(xué)和圖形程序。MATLAB的一個(gè)重要特色就是具有一套程序擴(kuò)展系統(tǒng)和一組稱(chēng)之為工具箱的特殊應(yīng)用子程序。工具箱是MATLAB函數(shù)的子程序庫(kù),每一個(gè)工具箱都是為某一類(lèi)學(xué)科專(zhuān)業(yè)和應(yīng)用而定制的,主要包括信號(hào)處理、控制系統(tǒng)、神經(jīng)網(wǎng)絡(luò)、模糊邏輯、小波分析和系統(tǒng)仿真等方面的應(yīng)用。matlab小波分析源代碼[x,map]=imread(‘MUCS_新建文件夾_32603.ptl_208.bmp’);subplot(1,2,1);imshow(x);[c,s]=wavedec2(x,3,‘sym4’);Csize=size(c);fori=1:Csize(2)if(c(i)》100)%低頻分量----s中第一維的長(zhǎng)度c(i)=1*c(i);elsec(i)=0.9*c(i);%高頻分量endendx1=waverec2(c,s,‘sym4’);im=uint8(x1);subplot(1,2,2);imshow(im);[c,s]=wavedec2(X,2,‘bior3.7’);%對(duì)圖像用小波進(jìn)行層分解cal=appcoef2(c,s,‘bior3.7’,1);%提取小波分解結(jié)構(gòu)中的一層的低頻系數(shù)和高頻系數(shù)ch1=detcoef2(‘h’,c,s,1);%水平方向cv1=detcoef2(‘v’,c,s,1);%垂直方向cd1=detcoef2(‘d’,c,s,1);%斜線方向a1=wrcoef2(‘a(chǎn)’,c,s,‘bior3.7’,1);%各頻率成份重構(gòu)[c,s]=wavedec2(X,1,‘sym4’);a1=appcoef2(c,s,‘sym4’,1);%小波分解結(jié)構(gòu)中的一層的低頻系數(shù),下面是3個(gè)高頻系數(shù)a1=2*a1;h1=detcoef2(‘h’,c,s,1);v1=detcoef2(‘v’,c,s,1);d1=detcoef2(‘d’,c,s,1);h1=0.5*h1;v1=0.5*v1;d1=0.5*d1;y=idwt2(a1,h1,v1,d1,‘sym4’);loadwbarb;X1=X;map1=map;subplot(2,2,1);image(X1);colormap(map1);title(‘圖像wbarb’);loadwoman;X2=X;map2=map;subplot(2,2,2);image(X2);colormap(map2);title(‘圖像woman’);%=====================================%對(duì)上述二圖像進(jìn)行分解[c1,l1]=wavedec2(X1,2,‘sym4’);[c2,l2]=wavedec2(X2,2,‘sym4’);%對(duì)分解系數(shù)進(jìn)行融合c=c1+c2;%=====================================%應(yīng)用融合系數(shù)進(jìn)行圖像重構(gòu)并顯示XX=waverec2(c,l1,‘sym4’);subplot(2,2,3);image(XX);title(‘融合圖像1’);Csize1=size(c1);%=====================================%對(duì)圖像進(jìn)行增強(qiáng)處理fori=1:Csize1(2)c1(i)=1.2*c1(i);endCsize2=size(c2);forj=1:Csize2(2)c2(j)=0.8*c2(j);end%=====================================%通過(guò)減小融合系數(shù)以減小圖像的亮度c=0.5*(c1+c2);%=====================================%對(duì)融合系數(shù)進(jìn)行圖像重構(gòu)XXX=waverec2(c,l2,‘sym4’);%=====================================%顯示重構(gòu)結(jié)果subplot(2,2,4);image(XXX);title(‘融合圖像2’);%本程序?qū)崿F(xiàn)下述功能:首先讀入原始圖像,并對(duì)它使用db3小波進(jìn)行2層分解,%然后對(duì)分解系數(shù)進(jìn)行處理突出所需,弱化不需要的部分%裝載并顯示原始圖像clearall;clc;loadflujet;subplot(1,2,1);image(X);colormap(map);title(‘原始圖像’);%=====================================%對(duì)圖像X用小波db3進(jìn)行2層分解[c,l]=wavedec2(X,2,‘db3’);Csize=size(c);%=====================================%對(duì)分解系數(shù)作處理以突出所需部分并弱化不需要部分fori=1:Csize(2)if(c(i)》300)%低頻分量c(i)=2*c(i);elsec(i)=0.5*c(i);%高頻分量endend%=====================================%重構(gòu)圖像并顯示X1=waverec2(c,l,‘db3’);subplot(1,2,2);image(X1);colormap(map);title(‘增強(qiáng)圖像’);[c,s]=wavedec2(x,2,‘sym4’);Csize=size(c);fori=1:Csize(2)if(c(i)》169)%低頻分量----s中第一維的長(zhǎng)度c(i)=2*c(i);elsec(i)=0.3*c(i);%高頻分量endendx1=waverec2(c,s,‘sym4’);im=uint8(x1);imshow(im);二維小波變換的Matlab實(shí)現(xiàn)%oun\{K*Y二維小波變換的函數(shù)-------------------------------------------------函數(shù)名函數(shù)功能---------------------------------------------------‘d3dtBe’x6gdwt2二維離散小波變換wavedec2二維信號(hào)的多層小波分解idwt2二維離散小波反變換waverec2二維信號(hào)的多層小波重構(gòu)zH!f6~)}-P_wrcoef2由多層小波分解重構(gòu)某一層的分解信號(hào)0E,\|.o|DT2@2b2K$Uupcoef2由多層小波分解重構(gòu)近似分量或細(xì)節(jié)分量detcoef2提取二維信號(hào)小波分解的細(xì)節(jié)分量appcoef2提取二維信號(hào)小波分解的近似分量upwlev2二維小波分解的單層重構(gòu)dwtpet2二維周期小波變換4Y/aN&Gq]EB“H)Widwtper2二維周期小波反變換-------------------------------------------------------------9Od7D`by&lX{IgusI`(1)wcodemat函數(shù)功能:對(duì)數(shù)據(jù)矩陣進(jìn)行偽彩色編碼格式:Y=wcodemat(X,NB,OPT,ABSOL)‘k#eCaI%HY=wcodemat(X,NB,OPT)i)E)p_!O-kjJ^Y=wcodemat(X,NB)Y=wcodemat(X)說(shuō)明:Y=wcodemat(X,NB,OPT,ABSOL)返回?cái)?shù)據(jù)矩陣X的編碼矩陣Y;NB偽編碼的最大值,即編碼范圍為0~NB,缺省值NB=16;OPT指定了編碼的方式(缺省值為’mat‘),即:r(o?Lj(yefNOPT=’row‘,按行編碼OPT=’col‘,按列編碼OPT=’mat‘,按整個(gè)矩陣編碼ABSOL是函數(shù)的控制參數(shù)(缺省值為’1‘),即:ix”^:|~5{ABSOL=0時(shí),返回編碼矩陣ABSOL=1時(shí),返回?cái)?shù)據(jù)矩陣的絕對(duì)值A(chǔ)BS(X)(2)dwt2函數(shù)DJ~0D/mS:OS“I功能:二維離散小波變換Bct_)hOXI格式:[cA,cH,cV,cD]=dwt2(X,’wname‘)3AN_WF[cA,cH,cV,cD]=dwt2(X,Lo_D,Hi_D)說(shuō)明:[cA,cH,cV,cD]=dwt2(X,’wname‘)使用指定的小波基函數(shù)’wname‘對(duì)二維信號(hào)X進(jìn)行二維離散小波變幻;cA,cH,cV,cD分別為近似分量、水平細(xì)節(jié)分量、垂直細(xì)節(jié)分量和對(duì)角細(xì)節(jié)分量;[cA,cH,cV,cD]=dwt2(X,Lo_D,Hi_D)使用指定的分解低通和高通濾波器Lo_D和Hi_D分解信號(hào)X。$Kv*SX2^8GQ7?M_dB(g”d(3)wavedec2函數(shù)功能:二維信號(hào)的多層小波分解HFS)bp$G:i格式:[C,S]=wavedec2(X,N,’wname‘)[C,S]=wavedec2(X,N,Lo_D,Hi_D)說(shuō)明:[C,S]=wavedec2(X,N,’wname‘)使用小波基函數(shù)’wname‘對(duì)二維信號(hào)X進(jìn)行N層分解;[C,S]=wavedec2(X,N,Lo_D,Hi_D)使用指定的分解低通和高通濾波器Lo_D和Hi_D分解信號(hào)X。7Yj~q5aHS4e1r(4)idwt2函數(shù)功能:二維離散小波反變換格式:X=idwt2(cA,cH,cV,cD,’wname‘)X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R)X=idwt2(cA,cH,cV,cD,’wname‘,S)X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R,S)說(shuō)明:X=idwt2(cA,cH,cV,cD,’wname‘)由信號(hào)小波分解的近似信號(hào)cA和細(xì)節(jié)信號(hào)cH、cH、cV、cD經(jīng)小波反變換重構(gòu)原信號(hào)X;X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R)使用指定的重構(gòu)低通和高通濾波器Lo_R和Hi_R重構(gòu)原信號(hào)X;X=idwt2(cA,cH,cV,cD,’wname‘,S)’z6Zex;o和X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R,S)返回中心附近的S個(gè)數(shù)據(jù)點(diǎn)。(5)waverec2函數(shù)說(shuō)明:二維信號(hào)的多層小波重構(gòu)格式:X=waverec2(C,S,‘wname’)X=waverec2(C,S,Lo_R,Hi_R)說(shuō)明:X=waverec2(C,S,‘wname’)由多層二維小波分解的結(jié)果C、S重構(gòu)原始信號(hào)X,‘wname’為使用的小波基函數(shù);X=waverec2(C,S,Lo_R,Hi_R)使用重構(gòu)低通和高通濾波器Lo_R和Hi_R重構(gòu)原信號(hào)。s)A?*ni?+Gmatlab小波分析源代碼分析1.奇偶分開(kāi)。非常簡(jiǎn)單,就是[2,4,6,8]組成一列向量,[1,3,5,7]組成一列向量。2.預(yù)測(cè)。用[2,4,6,8]來(lái)預(yù)測(cè)[1,3,5,7]。比如說(shuō)1,3估計(jì)2;3,5估計(jì)4;5,7估計(jì)6;7,1估計(jì)8。(邊緣處理,我采用循環(huán)方法)。估計(jì)公式可以用別人的,也可以自己做。舉一個(gè)線性的例子:2=1*a+3*b,4=3*a+5*b,。。.,其他的都一樣。這樣我們就可找到最優(yōu)的a,b,使得(2-(1*a+3*b)).^2+(4-(3*a+5*b)).^2+.。。最小化。就是最小均方準(zhǔn)則。若正好為零,說(shuō)明偶可以完全預(yù)測(cè)奇,也就是我們只要存儲(chǔ)偶數(shù)列向量,和a,b就可以了,壓縮也就是實(shí)現(xiàn)了。對(duì)于信號(hào)很長(zhǎng)序列,就等于壓縮了一半。當(dāng)然,我們可以采用更復(fù)雜的立方差值預(yù)測(cè),多項(xiàng)式預(yù)測(cè),或其它的準(zhǔn)則,來(lái)使其最小,這樣我們的壓縮也就得到了最優(yōu)。3.提升。我們總希望,均方為零,但可望不可及。于是,提升就需要了。我們經(jīng)過(guò)預(yù)測(cè)后,要存儲(chǔ)的是偶數(shù)序列[2,4,6,8],新的奇數(shù)序列[n1,n3,n5,n7]=[2-(1*a+3*b),4-(3*a+5*b),。。.]和線性變換系數(shù)(a,b)。這里新的奇數(shù)序列就是高頻分量。但偶數(shù)序列是不能完全代表信號(hào)的性質(zhì)的,有所差距。所以我們要對(duì)偶數(shù)序列進(jìn)行修正。即所謂的提升。我們這次

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論