s1091703 作業3

作業題目:離散傅立葉轉換 DFT 練習 

題目說明

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

開發環境

    Window10 + Visual Studio 2022 + OpenCV 3.4.6 + C++

程式說明:

    copyMakeBorder():將圖像擴大。

    merge():合併。

    split():區分實部及虛部。

      eg.將儲存複數的P[2]合併。

      

   magnitude():計算幅度


   phase():計算角度

   copyTo():將一變數複製到另一變數中。

-----------------------------------------------------

->將計算好幅度的變數+1,防止log0,利用log將數級縮小,再利用normalize()進行歸一化。




->利用idft()進行逆傅立葉轉換,及normalize()進行歸一化,最後再將類型轉成CV_8U輸出。



成果:

     原圖:

        

    相位圖:

    頻譜圖:








    還原圖:















留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1091537 Homework #1