




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
快速傅里葉變換(MATLAB版)DFT是信號分析與處理中的一種重要變換。但直接計算DFT的計算量與變換區(qū)間長度N的平方成正比,當N較大時,計算量太大,直接用DFT算法進行譜分析和信號的實時處理是不切實際的。1965年庫利和圖基發(fā)現(xiàn)了DFT的一種快速算法,使DFT的運算效率提高1-2個數(shù)量級,為數(shù)字信號處理技術(shù)應用于各種信號的實時處理創(chuàng)造了條件,推動了數(shù)字處理技術(shù)的發(fā)展。它的思想是不斷地把長序列的DFT分解成幾個短序列的DFT,并利用旋轉(zhuǎn)因子的周期性和對稱性來減少DFT的運算次數(shù)。假設N=2M,全部計算分解為M級,利用旋轉(zhuǎn)因子WNk的周期性、對稱性進行合并、歸類處理,以減少DFT的運算次數(shù)。周期性:Wm=Wm+lN對稱性:[聽^]*=Wm,Wm+N/2=-WmFFT算法基本上分為兩大類:時域抽取法FFT(簡稱DIT-FFT)和頻域抽取法FFT(簡稱DIF一FFT)。下面略去推導和證明,僅以長度為8的序列為例子說明這兩種算法。1.DIT-FFTx(0)x(4)x⑵x⑹x⑴xx(0)x(4)x⑵x⑹x⑴x⑸x⑶x⑺WN°Wn2X■WN0L=1級L=2L=3X(0)X⑴X⑵X(3)X(4)XU)X⑹XV)N=8,5、DIT-FFT運算流圖相應的MATLAB程序:%自編FFT%基2時域抽取DIT-FFT%輸入乂,輸出X均為行向量functionX=myfftl(x)iflength(x)?=2Afix(log2(length(x)))%如果長度超出,補足下一個幕的0。x=[x,zeros(1,2Aceil(log2(length(x)))-length(x))];
end%時域序列倒序x=x(invertorder([0:length(x)-1]));N=length(x);K=log2(N);X2=zeros(1,N);X1=x;W_n=exp(-1j*2*pi/N); %旋轉(zhuǎn)因子fork=1:Kfori=0:2A(K-k)-1forj=0:2A(k-1)-1X1(j+i*2Ak+1) +X1(j+i*2Ak+1) -X2(j+i*2Ak+1) X1(j+i*2Ak+1) +X1(j+i*2Ak+1) -X2(j+i*2Ak+1) +X2(j+i*2Ak+1) -X2(j+i*2Ak+2A(k-1)+1)W_nA(j*2A(K-k))*X1(j+i*2Ak+2A(k-1)+1);else%偶數(shù)X1(j+i*2Ak+1)W_nA(j*2A(K-k))*X2(j+i*2Ak+2A(k-1)+1);X1(j+i*2Ak+2A(k-1)+1)W_nA(j*2A(K-k))*X2(j+i*2Ak+2A(k-1)+1);endendendendif(mod(K,2)==1)X=X2;elseX=X1;endDIF-FFTx(0)x⑴x⑵x⑶x(4)x(5)x⑥x⑺滬xi(0)x?1)x3x(0)x⑴x⑵x⑶x(4)x(5)x⑥x⑺滬xi(0)x?1)x3(0)x5(0)0x2(0)x2(3)Wn2x2⑴x2⑵如:"w 二x6(0) WN0%⑴二"二X(0)X(4)X⑵X⑥X⑴X(5)X6)X⑺相應的MATLAB程序:%自編FFT%基2頻域抽取DIF-FFT%輸入乂,輸出X均為行向量functionX=myfft2(x)iflength(x)~=2Afix(log2(length(x)))%如果長度超出,補足下一個幕的0。x=[x,zeros(1,2Aceil(log2(length(x)))-length(x))];endN=length(x);K=log2(N);X2=zeros(1,N);X1=x;W_n=exp(-1j*2*pi/N); %旋轉(zhuǎn)因子fork=1:Kfori=0:2A(k-1)-1TOC\o"1-5"\h\zforj=0:2A(K-k)-1ifmod(k,2)==1%奇數(shù)X2(j+i*2A(K-k+1)+1) = X1(j+i*2A(K-k+1)+1) +X1(j+i*2A(K-k+1)+2A(K-k)+1);X2(j+i*2A(K-k+1)+2A(K-k)+1) = (X1(j+i*2A(K-k+1)+1) -X1(j+i*2A(K-k+1)+2A(K-k)+1))*W_nA(j*2A(k-1));else%偶數(shù)X1(j+i*2A(K-k+1)+1) = X2(j+i*2A(K-k+1)+1) +X2(j+i*2A(K-k+1)+2A(K-k)+1);X1(j+i*2A(K-k+1)+2A(K-k)+1) = (X2(j+i*2A(K-k+1)+1) -X2(j+i*2A(K-k+1)+2A(K-k)+1))*W_nA(j*2A(k-1));endendendendif(mod(K,2)==1)X=X2;elseX=X1;end%頻域序列倒序X=X(invertorder([0:length(X)-1]));倒序處理
%%%實現(xiàn)十進制序列的二進制倒序輸出輸入為自然序列,從0開始,2AM0輸出為它的倒序數(shù),從%%%LHuNJuLHeil(lTuX(I)A(LHuNJuLHeil(lTuX(I)A(I)uX(J)A(J)uTN=length(t);M=log2(N);s=zeros(1,N);J=t(1);%從0開始s(1)=1;fori=2:Nforj=1:MifJ>=N/2AjJ=J-N/2Aj;elses(i)=J+N/2Aj+1;J=s(i)-1;break;endendendKuLHJuJ-KJuJ+KuLHJuJ-KJuJ+K思想:先對矩陣每行作變換,再對每列變換,但要注意MATLAB里轉(zhuǎn)置是共軛轉(zhuǎn)置,單獨的轉(zhuǎn)置是.’。%自編二維傅里葉變換functionF=myfftdimention2(X)%先對每一行向量變換,再對每一列向量變換。[m,n]=size(X);if(m~=2Anextpow2(m))M=2Anextpow2(m);elseM=m;endif(n~=2Anextpow2(n))N=2Anextpow2(n);elseN=n;endF=zeros(M,N);x=zeros(1,n
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年光纖用GECL4項目資金申請報告代可行性研究報告
- 2024年原奶項目項目投資籌措計劃書代可行性研究報告
- 醫(yī)療協(xié)同政策解讀課件教學
- 融資平臺項目制管理辦法
- 衡陽市固體廢物管理辦法
- 街道應急消防車管理辦法
- 裝配式物業(yè)用房管理辦法
- 西安市能源管理辦法規(guī)定
- 計日工管理辦法百度文庫
- 證券投資基金管理公司管理辦法
- GB/T 20975.1-2007鋁及鋁合金化學分析方法第1部分:汞含量的測定冷原子吸收光譜法
- 糧食行業(yè)技能競賽糧油保管員考試試題及答案
- 清真食堂承包投標書
- 馬克思主義的世界觀和方法論
- 醫(yī)院處方箋-模板
- 道路綜合巡查工作流程
- 香港聯(lián)合交易所有限公司證券上市規(guī)則
- 測量成果驗收單
- 冰毯機的使用與護理
- 封樣標簽樣本(1)
- 北京市村合作經(jīng)濟組織會計制度實施細則
評論
0/150
提交評論