2020年5月19日 星期二

1061646 影像處理作業3

一、作業要求

         離散傅立葉轉換 DFT 練習
        請撰寫一個程式,讀取一張 256 色灰階圖像(圖像大小適中以免執行時間太久)。計算輸入圖的離散傅立葉轉換結果,並將頻譜大小與相位角度各以灰階 256 色圖像方式呈現出。

二、使用環境
       1. Visual Studio 2019
       2. OpenCV 4.2.0
       3. 程式語言: C++

三、實作方法
       1.  使用imread("xxx.jpg")讀取圖片
       2.  使用getOptimalDFTSize()重新計算尺寸以提高傅立葉轉換的速度
       3. 使用dft();進行離散傅立葉轉換
       4. 使用magnitude()計算矩陣的頻譜大小
       5. 使用phase(); 取得相位角度
       6. 使用normalize()正規化 變換為可視的影像格式
       7.最後以imshow(.jpg,image);顯示圖片

四、實驗結果
原圖

左:頻譜大小 右:相位角度


不使用內建DFT函式的結果


沒有留言:

張貼留言