s1081539 作業3

 

主題離散傅立葉轉換 

說明:撰寫傅利葉轉換程式(Forward Fourier Transform and Inverse Fourier Transform)將一張圖像轉換至頻域後,將頻譜大小與相位角度各以灰階 256 色圖像方式呈現出,再呈現還原後圖像。 

1.開發環境

Windows 10

Visual Studio 2019

C++

OpenCV 4.7.0

2.實作

先以灰階模式(IMREAD_GRAYSCALE)讀入圖片並確認是否讀取成功。

用getOptimalDFTSize()和copyMakeBorder()為DFT轉換做前置作業,

接著就可以用dft()對圖像進v行轉換,再用split()跟magnitude()就可以取得圖像的頻譜圖,

圖像的相位圖則是用phase()得出,

在用imshow()之前要先對頻譜圖跟相位圖做歸一化(normalize())。

重建圖像的部分則是用idft(),然後一樣要在放出圖像之前進行歸一化的動作。


3.結果

影片





4.參考

    DFT:https://blog.csdn.net/gxiaoyaya/article/details/72460483
    Phase:https://blog.csdn.net/long0801/article/details/77713797

留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1061637 作業6