資源描述:
《dsp基于matlab的fft算法實(shí)現(xiàn)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)。
1、課程設(shè)計(jì)說(shuō)明書(shū)目錄1摘要12設(shè)計(jì)目的和內(nèi)容23基2DIT-FFT算法33.1DIT-FFT算法的基本原理43.2DIT-FFT算法的運(yùn)算規(guī)律及編程思想43.3原位計(jì)算53.4倒序計(jì)算53.5蝶形運(yùn)算94MATLAB運(yùn)行界面圖124.1fs=1000;n=2000時(shí)的原始的語(yǔ)音信號(hào)時(shí)域圖124.1fs=1000;n=2000時(shí)的原始的語(yǔ)音信號(hào)頻域圖124.3原始語(yǔ)音信號(hào)FFT頻譜圖與原始語(yǔ)音信號(hào)自編FFT頻譜圖比較144.4原始語(yǔ)音信號(hào)FFT頻譜圖與原始語(yǔ)音信號(hào)自編FFT頻譜圖比較155設(shè)計(jì)總結(jié)16參考文獻(xiàn)19附
2、錄2020課程設(shè)計(jì)說(shuō)明書(shū)1引言傅里葉變換在信號(hào)處理中具有十分重要的作用,但是基于離散時(shí)間的傅里葉變換具有很大的時(shí)間復(fù)雜度,根據(jù)傅里葉變換理論,對(duì)一個(gè)有限長(zhǎng)度且長(zhǎng)度為的離散信號(hào),做傅里葉變換的時(shí)間復(fù)雜度為,當(dāng)很大時(shí),其實(shí)現(xiàn)的時(shí)間是相當(dāng)驚人的(比如當(dāng)為時(shí),其完成時(shí)間為(為計(jì)算機(jī)的時(shí)鐘周期)),故其實(shí)現(xiàn)難度是相當(dāng)大的,同時(shí)也嚴(yán)重制約了DFT在信號(hào)分析中的應(yīng)用,故需要提出一種快速的且有效的算法來(lái)實(shí)現(xiàn)。tt正是鑒于DFT極其復(fù)雜的時(shí)間復(fù)雜度,1965年和巧妙地利用因子的周期性和對(duì)稱性,提出了一個(gè)DFT的快速算法,即快速傅
3、里葉變換(FFT),從而使得DFT在信號(hào)處理中才得到真正的廣泛應(yīng)用。本文基于時(shí)間抽選奇偶分解,利用Matlab軟件實(shí)現(xiàn)快速傅里葉變換?;谒幍腇FT源程序應(yīng)用的一個(gè)實(shí)例,本文對(duì)有限長(zhǎng)度離散時(shí)間和連續(xù)時(shí)間信號(hào)進(jìn)行頻譜分析。DFT是一種應(yīng)用廣泛的數(shù)學(xué)變換工具,MATLAB是一款功能強(qiáng)大的科學(xué)計(jì)算語(yǔ)言。MATLAB提供的fft函數(shù)解決了DFT的快速計(jì)算問(wèn)題,但由于它是內(nèi)建函數(shù)而不能了解到軟件實(shí)現(xiàn)的過(guò)程。文章以按時(shí)間抽取的基2FFT算法為例,根據(jù)快速傅里葉變換的原理和規(guī)律,繪出了算法實(shí)現(xiàn)的程序框圖,列出了MATLAB
4、環(huán)境下軟件實(shí)現(xiàn)的程序,建立了從算法理論到程序?qū)崿F(xiàn)的完整概念。在信號(hào)處理中,DFT(離散傅里葉變換)的計(jì)算具有舉足輕重的地位。但是基于其復(fù)雜的計(jì)算,直接應(yīng)用起來(lái)十分麻煩,基于此,本文利用Matlab軟件對(duì)有限長(zhǎng)度信號(hào)的DFT進(jìn)行改進(jìn),提出FFT(快速傅里葉變換),并利用FFT對(duì)所給連續(xù)時(shí)間和離散時(shí)間信號(hào)做了頻譜分析。語(yǔ)音信號(hào)的處理與濾波的設(shè)計(jì)主要是用MATLAB作為工具平臺(tái),設(shè)計(jì)中涉及到聲音的錄制、播放、存儲(chǔ)和讀取,語(yǔ)音信號(hào)的抽樣、頻譜分析,濾波器的設(shè)計(jì)及語(yǔ)音信號(hào)的濾波,通過(guò)數(shù)字信號(hào)處理課程的理論知識(shí)的綜合運(yùn)用。
5、從實(shí)踐上初步實(shí)現(xiàn)對(duì)數(shù)字信號(hào)的處理。20課程設(shè)計(jì)說(shuō)明書(shū)2設(shè)計(jì)目的和內(nèi)容MATLAB全稱是MatrixLaboratory,是一種功能強(qiáng)大、效率高、交互性好的數(shù)值和可視化計(jì)算機(jī)高級(jí)語(yǔ)言,它將數(shù)值分析、矩陣運(yùn)算、信號(hào)處理和圖形顯示有機(jī)地融合為一體,形成了一個(gè)極其方便、用戶界面友好的操作環(huán)境。。經(jīng)過(guò)多年的發(fā)展,已經(jīng)發(fā)展成為一種功能全面的軟件,幾乎可以解決科學(xué)計(jì)算中所有問(wèn)題。MATLAB軟件還提供了非常廣泛和靈活的用于處理數(shù)據(jù)集的數(shù)組運(yùn)算功能。綜合運(yùn)用本課程的理論知識(shí)進(jìn)行頻譜分析以及濾波器設(shè)計(jì),通過(guò)理論推導(dǎo)得出相應(yīng)結(jié)論,
6、并利用MATLAB作為工具進(jìn)行實(shí)現(xiàn),從而復(fù)習(xí)鞏固課堂所學(xué)的理這次課程設(shè)計(jì)的主要目的是綜合運(yùn)用本課程的理論知識(shí)進(jìn)行頻譜分析以及濾波器設(shè)計(jì),通過(guò)理論推導(dǎo)得出相應(yīng)結(jié)論,并利用MATLAB或者DSP開(kāi)發(fā)系統(tǒng)作為工具進(jìn)行實(shí)現(xiàn),從而復(fù)習(xí)鞏固課堂所學(xué)的理論知識(shí),提高對(duì)所學(xué)知識(shí)的綜合應(yīng)用能力,并從實(shí)踐上初步實(shí)現(xiàn)對(duì)數(shù)字信號(hào)的處理。通過(guò)對(duì)聲音的采樣,將聲音采樣后的頻譜與濾波。MATLAB全稱是MatrixLaboratory,是一種功能強(qiáng)大、效率高、交互性好的數(shù)值和可視化計(jì)算機(jī)高級(jí)語(yǔ)言,它將數(shù)值分析、矩陣運(yùn)算、信號(hào)處理和圖形顯示有
7、機(jī)地融合為一體,形成了一個(gè)極其方便、用戶界面友好的操作環(huán)境。。經(jīng)過(guò)多年的發(fā)展,已經(jīng)發(fā)展成為一種功能全面的軟件,幾乎可以解決科學(xué)計(jì)算中所有問(wèn)題。MATLAB軟件還提供了非常廣泛和靈活的用于處理數(shù)據(jù)集的數(shù)組運(yùn)算功能。在本次課程設(shè)計(jì)中,主要通過(guò)MATLAB來(lái)編程對(duì)語(yǔ)音信號(hào)處理與濾波,設(shè)計(jì)濾波器來(lái)處理數(shù)字信號(hào)并對(duì)其進(jìn)行分析。通過(guò)理論推導(dǎo)得出相應(yīng)結(jié)論,并利用MATLAB或者DSP開(kāi)發(fā)系統(tǒng)作為工具進(jìn)行實(shí)現(xiàn),從而復(fù)習(xí)鞏固課堂所學(xué)的理論知識(shí),提高對(duì)所學(xué)知識(shí)的綜合應(yīng)用能力,并從實(shí)踐上初步實(shí)現(xiàn)對(duì)數(shù)字信號(hào)的處理。通過(guò)對(duì)聲音的采樣,將
8、聲音采樣后的頻譜與濾波。錄制一段個(gè)人自己的語(yǔ)音信號(hào),并對(duì)錄制的信號(hào)進(jìn)行采樣;畫(huà)出采樣后語(yǔ)音信號(hào)的時(shí)域波形和頻譜圖;在Matlab環(huán)境下編寫(xiě)基2DIT-FFT算法;利用自己編寫(xiě)的算法對(duì)已采集的語(yǔ)音信號(hào)進(jìn)行頻譜分析,并畫(huà)出語(yǔ)音信號(hào)的時(shí)域與頻譜圖,并與Matlab數(shù)字信號(hào)處理工具箱中的fft函數(shù)進(jìn)行對(duì)比研究,驗(yàn)證自編算法的正確性。20課程設(shè)計(jì)說(shuō)明書(shū)分析和處理音頻信號(hào),首先要對(duì)聲音信號(hào)進(jìn)行采集