0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

實數(shù)DFT,復(fù)數(shù)DFT,F(xiàn)FT!FFT如何工作?

0BFC_eet_china ? 來源:未知 ? 作者:李倩 ? 2018-07-08 08:44 ? 次閱讀

實數(shù)DFT,復(fù)數(shù)DFT,F(xiàn)FT

FFT是計算DFT的快速算法,但是它是基于復(fù)數(shù)的,所以計算實數(shù)DFT的時候需要將其轉(zhuǎn)換為復(fù)數(shù)的格式,下圖展示了實數(shù)DFT和虛數(shù)DFT的情況,實數(shù)DFT將時域中N點信號轉(zhuǎn)換成2個(N/2+1)點的頻域信號,其中1個(N/2+1)點的信號稱之為實部,另一個(N/2+1)點的信號稱之為虛部,實部和虛部分別是正弦和余弦信號的幅度。

相比較而言,復(fù)數(shù)DFT將2個N點的時域信號轉(zhuǎn)換為2個N點的頻域信號。時域和頻域中,1個N點信號是實部,另1個N點信號是虛部。如果要計算N點實數(shù)DFT,則將這個N個點作為時域中的實部,另取N個0點作為時域的虛部,用FFT計算這樣一個復(fù)數(shù)信號的DFT得到2個N點的頻域信號,1個N點是實部另1個N點是虛部,在這兩個N點的信號中,從0到N/2個點就是須計算的N點實數(shù)的DFT頻域。對于實數(shù)DFT來說,就像前幾章講的那樣,它的頻域也是離散周期信號,其周期為N點,從0到N/2點和1-N到-1點具有對稱性,這個你可以從下面一張圖看出。圖中坐標(biāo)不是用N表示是用采樣頻率的分?jǐn)?shù)表示,如果你看不懂,請看前面幾章。

所以你如果用FFT反變換計算的是實數(shù)時域,則要滿足上圖的對稱性。

FFT如何工作

FFT的計算可以分為三步:首先將1個N點的時域信號分成N個1點的時域信號,然后計算這N個1點時域信號的頻域,得到N個頻域的點,然后將這個N個頻域的點按照一定的順序加起來,就得到了我們需要的頻譜。這里每個點的意思是復(fù)數(shù),都有實部和虛部。第一步的信號分解按照下面的規(guī)律執(zhí)行:

可以看出它是按照比特反轉(zhuǎn)順序來分解的。第二步是計算每個點的頻譜:這一步很簡單,因為一個時域的點的頻譜的數(shù)值就是它自己,所以這一步什么也不需做,但需明白這時候N個點不是時域信號了,而是頻域信號。第三步是將這N個頻域信號結(jié)合起來這一步是最麻煩的一步。就是和前面時域分解的順序相反,將2個1點的頻域信號變成1個2點的頻域信號,再將2個2點的頻域信號變成1個4點的頻域信號,一直到結(jié)束。這里看下如何將2個4點的頻域信號變成1個8點的頻域信號。

首先對1個4點的頻域信號進(jìn)行復(fù)制,這樣能稀釋時域信號,也對另1個4點的頻域信號進(jìn)行復(fù)制不過復(fù)制之前需要乘上正弦函數(shù),這樣得到的稀釋時域信號時經(jīng)過了平移的,然后將這兩個頻域信號加起來,如下圖所示。之所以這么做的目的是在時域分解的時候就是用這種交織的分解方式的。

以下是基本的運算,稱為蝶形運算,它將2個1點的復(fù)數(shù)變成1個2點的復(fù)數(shù)。

以下是FFT運算的流程圖

運算速度比較

如果用相關(guān)方法計算DFT:

FFT的速度還能更快

比如使用基4或者基8,這樣不是2點一計算,而是4點或者8點一計算,可以提高速度。

FFT對DSP來說就像是晶體管電子學(xué)來說,都是領(lǐng)域的基礎(chǔ),每個人都知道怎么使用它們,但是只有很少一部分真正了解它們的原理。事實就是這樣,你只要知道怎么用就可以了。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FFT
    FFT
    +關(guān)注

    關(guān)注

    15

    文章

    432

    瀏覽量

    59217
  • 信號
    +關(guān)注

    關(guān)注

    11

    文章

    2767

    瀏覽量

    76478
  • DFT
    DFT
    +關(guān)注

    關(guān)注

    2

    文章

    224

    瀏覽量

    22638

原文標(biāo)題:FFT快速傅立葉變換的工作原理

文章出處:【微信號:eet-china,微信公眾號:電子工程專輯】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    FFTDFT計算時間的比較及圓周卷積代替線性卷積的有效性實

    實驗二 FFTDFT計算時間的比較及圓周卷積代替線性卷積的有效性實驗:一 實驗?zāi)康?:掌握FFT基2時間(或基2頻率)抽選法,理解其提高減少乘法運算次數(shù)提高運算速度的原理。2:掌握FFT
    發(fā)表于 12-29 21:52

    DFT算法與FFT算法的優(yōu)劣分析

    本文參考銀河電氣官網(wǎng):DFT算法與FFT算法的優(yōu)劣分析DFT與它的快速算法FFT相比可能更有優(yōu)勢,而FFT卻存在某些局限性.在只需要求出部分
    發(fā)表于 05-22 20:43

    【安富萊——DSP教程】第32章 實數(shù)FFT的實現(xiàn)

    第32章實數(shù)FFT的實現(xiàn) 本章主要講解實數(shù)的浮點和定點Q31,Q15的實現(xiàn)。關(guān)于這部分的知識點和函數(shù)的計算結(jié)果上,官方的文檔有一些小錯誤,在章節(jié)中會跟大家詳細(xì)講述,還有一個要注意的問題,調(diào)用
    發(fā)表于 07-06 11:29

    請教一個關(guān)于fft算法的問題,DFT算法與FFT算法在應(yīng)用上有什么區(qū)別?

    請教一個關(guān)于fft算法的問題,DFT算法與FFT算法在應(yīng)用上有什么區(qū)別?
    發(fā)表于 06-02 11:55

    第32章 實數(shù)FFT的實現(xiàn)

    FFT-基2算法 32.3 復(fù)數(shù)FFT-基4算法 32.4 總結(jié)32.1 實數(shù)FFT32.1.1 描述 CMSIS DSP庫里面包含一個專
    發(fā)表于 09-28 09:53

    【NanoPi K1 Plus試用體驗】Python實現(xiàn)FFT

    DFT運算開始,說明FFT的基本原理。DFT的運算為:式中由這種方法計算DFT對于的每個K值,需要進(jìn)行4N次實數(shù)相乘和(4N-2)次相加,對
    發(fā)表于 07-18 11:10

    FFT、PFT和多相位DFT濾波器組瞬態(tài)響應(yīng)的比較

    摘要:本文簡要地論述了FFT和多相位DFT濾波器組在響應(yīng)方面的差異。一般而言,多相位DFT(甚至包括任何濾波器組,比如PFT)在穩(wěn)態(tài)條件下有著很好的相鄰信道抑制性能,而瞬態(tài)響應(yīng)卻很糟糕。這符合了濾波器沖激響應(yīng)結(jié)論。
    發(fā)表于 03-11 13:17 ?2451次閱讀
    <b class='flag-5'>FFT</b>、PFT和多相位<b class='flag-5'>DFT</b>濾波器組瞬態(tài)響應(yīng)的比較

    DFT的快速算法-FFT

    DFT在數(shù)字信號處理中有很重要的作用,如頻譜分析、FIR DF的實現(xiàn)、線性卷積等。一個重要的原因是DFT有高效算法。 為了了解高效算法的重要以及實現(xiàn)高效算法的思路,先介紹DFT的運算特
    發(fā)表于 09-07 23:59 ?58次下載

    DFTFFT的運算量

    首先給大家提供DFTFFT的運算量的教程,內(nèi)容有直接用DFT計算運算量與用FFT計算的運算量比較和多種DFT算法(時間抽取算法DIT算法,
    發(fā)表于 09-08 00:01 ?71次下載

    fft原理及實現(xiàn)

    FFT是一種DFT的高效算法,稱為快速傅立葉變換(fast Fourier transform)。FFT算法可分為按時間抽取算法和按頻率抽取算法,先簡要介紹FFT的基本原理。從
    發(fā)表于 12-19 16:18 ?203次下載

    離散傅里葉變換(DFT)及其快速算法(FFT)

    第2章-離散傅里葉變換(DFT)及其快速算法(FFT)
    發(fā)表于 12-28 14:23 ?0次下載

    FFT太慢太死板?滑動DFT讓計算飛起來!

    滑動DFT的推導(dǎo)是相當(dāng)簡單的,并且和DFT完全等價。也就是說,滑動DFT算法相比傳統(tǒng)DFTFFT算法沒有信息丟失或失真。下面有完整的推導(dǎo)過
    的頭像 發(fā)表于 02-19 01:01 ?1w次閱讀
    <b class='flag-5'>FFT</b>太慢太死板?滑動<b class='flag-5'>DFT</b>讓計算飛起來!

    FFT(快速傅里葉變換)波形分析

    FFT的替代方案是離散傅里葉變換(DFT)。DFT 允許您精確定義計算轉(zhuǎn)換的范圍,從而消除了窗口的需要。不利的一面是,DFT的計算速度比FFT
    的頭像 發(fā)表于 12-02 16:16 ?1.8w次閱讀
    <b class='flag-5'>FFT</b>(快速傅里葉變換)波形分析

    FFT快速傅立葉變換的工作原理

    FFT是計算DFT的快速算法,但是它是基于復(fù)數(shù)的,所以計算實數(shù)DFT的時候需要將其轉(zhuǎn)換為復(fù)數(shù)的格
    的頭像 發(fā)表于 05-05 09:54 ?1257次閱讀
    <b class='flag-5'>FFT</b>快速傅立葉變換的<b class='flag-5'>工作</b>原理

    fftdft的區(qū)別聯(lián)系

    fftdft的區(qū)別聯(lián)系 快速傅里葉變換(FFT)和離散傅里葉變換(DFT)是信號處理和數(shù)學(xué)計算領(lǐng)域中最常見的技術(shù)之一。它們都是用于將離散信號從時域轉(zhuǎn)換到頻域的方法,而在此轉(zhuǎn)換過程中,
    的頭像 發(fā)表于 09-07 16:43 ?6366次閱讀