s1081429 作業3

 主題:離散傅立葉轉換 DFT 練習

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

開發環境:

  • Windows11
  • PyCharm
  • Python 3.9
  • opencv_python-4.70.72-cp37
  • numpy-1.24.2-cp39

三、程式說明

                1.將圖片進行傅立葉轉換

    • np.fft.fft2 計算二維的快速傅利葉轉換。
    • np.fft.fftshift 可以將傅利葉轉換的結果進行移動,使得頻率為 0 的分量在圖像中央。np.abs 可以計算複數的絕對值,即 magnitude spectrum。
    • np.angle 可以計算複數的角度,即 phase spectrum。

    • 2.將傅立葉轉換的結果還原

    • np.exp 可以計算自然指數函數,用於計算複數的指數項。
    • np.fft.ifftshift 可以將傅利葉轉換的結果進行反向移動,使得頻率為 0 的分量回到圖像角落。
    • np.fft.ifft2 可以計算二維的反向快速傅利葉轉換。
    • np.real 可以取得複數的實部。

四.成果展示

1.Spectrum


2.Phase


3.IDFT


 

留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1061637 作業6