從聲音怎麼畫基頻頻譜? |
尚未結案
|
bookworm
中階會員 發表:63 回覆:161 積分:82 註冊:2002-08-03 發送簡訊給我 |
|
dllee
站務副站長 發表:321 回覆:2519 積分:1711 註冊:2002-04-15 發送簡訊給我 |
如果您還是學生的話... 應該會用過 MatLab,它有 FFT 的功能可以參考。
以音頻來說,就是只有 1D 與 2D 無關(2D FFT 也是由兩次的 1D FFT 來的)。
如果您的取樣頻率為 44KHz,取 1024 點的資料,去作 FFT 一樣會得到 1024 點,
而其中前 512 點是有效的,(後512點與前512點有鏡射Mirror關係),
第 1 點表示低頻 0 Hz 的狀況,
第 512 點表示取樣到的高頻 22KHz(也就是取樣頻率的一半) 的狀況,
中間就請自己去分吧。
使用 Matlab 查 FFT 就可以發現許多相關的資料。
同樣的資料在 Matlab 作 FFT 與自己寫的程式作 FFT 後的數值就可以比較,
看自己寫的對不對。
另外也可以用實測,例如: 44KHz 的取樣頻率,只給它一個 10KHz 的 Sine Wave,
那您所作出來的 FFT,就會在 10KHz 上有一個 peak,如果不是,
就表示所作出來的 FFT 是錯的。 相關資料可以參考:
傅利葉分析教學網頁之首頁
http://cslin.auto.fcu.edu.tw/scteach/lego/mickyb.htm 吃軟也吃硬 dllee.ktop.com.tw StatPlus 系統資源監測器 @ KTOP OpenPLC - IEC61131-3
------
http://www.ViewMove.com |
bookworm
中階會員 發表:63 回覆:161 積分:82 註冊:2002-08-03 發送簡訊給我 |
|
iautsi02
一般會員 發表:1 回覆:1 積分:0 註冊:2004-02-24 發送簡訊給我 |
如果是語音處理
你打算取出f1的頻率
其實不需要用到FFT
根據理論....(如果你是專門修語音課程的)
於取樣率 11025 Hz下
於20ms範圍內..(半穩態)
其實256個點當作一個frame
將這個frame作自相關運算...(autocorrection)
於最大相關點的位移
可以得到他的基頻頻率 假設位移 20個點
那麼該frame的基頻代表
f1=1/(1/11025*20) Hz
大概是這樣子解出來的
根據理論人的聲音有三個
format..... f1 f2 f3
可能需要更進階的方法求得
不在累述
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |