2021年5月1日 星期六

s1071543 影像處理作業 3

 

  • 作業題目:
    • 請撰寫一個程式,讀取一張 256 色灰階圖像。
    •  (1)計算輸入圖的離散傅立葉轉換結果,並將頻譜大小與相位角度各以灰階 256 色圖像 方式呈現出。 
    • (2)對圖像利用 Gaussian Low-Pass filter 處理,輸出平滑後圖像。(程式利用課本的 frequency filter 步驟者可得滿分!)
  • 使用環境:
    • Arch Linux
    • python 3.7.9
    • OpenCV 3.4.2
    • numpy 1.19.2
    • matplotlib 3.4.1
  • 方法 :
    • Step1.  Input image f(x,y) of size MxN

    • Step2.  Form a zero-padded image fp (x,y) of size PxQ, where P=2xM, Q=2xN

    • Step3.  Multiply fp (x,y) by (−1)^(x+y) to center its transform

    • Step4.  Compute DFT F(u,v) of the image

    • Step5.  輸出相位跟頻譜

    • Step6.  Generate Gaussian low pass filter in frequency domain and Form the product G(u,v)=F(u,v)H(u,v)

    • Step7.  IDFT Obtain the processed image

    • Step8.  Obtain image by extracting the M×N region from the left-top quadrant of g(x,y)

    • Step9.  Save the smoothed image

  • 執行結果:
    • 原圖

    •  
    • 灰階

    •  
    • 頻域(取log)

    •  
    • 相位(中心化)

    •  
    • D0=30 高斯低通濾波器頻域(乘255)

    •  
    • 結果圖 


沒有留言:

張貼留言