2013-08-21 41 views
1

我已經編寫了一個簡單的程序(在ANSI C中),用FFTW(使用r2c和c2r計劃)來卷積兩個真實的二維數組。一切(除了我對尺度的理解)都很好,輸出看起來很好。fftw的卷積比例

的問題是,我是如何擴大這兩個數組所以這個過程之後IDFT[DFT(A)DFT(B)]有點糊塗(DFT:離散傅里葉變換I:逆)最終結果的規模是正確的。說圖像A是寬度爲a像素的正方形,卷積核是b像素。然後,我創建兩個寬度爲p=a+b的填充正方形數組,並將其中的AB圖像放在它們中並進行卷積。

將最終輸出中的所有像素乘以1/p^2是否正確?提前致謝。

+1

也許此頁面可以幫到您! http://www.fftw.org/doc/What-FFTW-Really-Computes.html –

+0

謝謝,我明白了,我的猜測是正確的。我只是不確定是否同樣適用於僅使用一半DFT的r2c和c2r例程。但是你鏈接的文章完全給出了答案。您能否將其添加爲答案,以便我可以接受它?再次感謝你。 – makhlaghi

回答

1

既然你想讓它作爲一個答案:

http://fftw.org/doc/What-FFTW-Really-Computes.html (該網站ADRESS足夠明確,我認爲)。

一般來說,我發現FFTW的文檔非常有用,但它很雜亂,你需要知道的細節很少。例如,在關閉程序之前,應該調用fftw_cleanup()來防止一些內存泄漏。