作業說明:
請撰寫一個程式,讀取一張256色灰階圖像。
(1) 計算輸入圖的離散傅立葉轉換結果,
並將頻譜大小與相位角度各以灰階256色圖像方式呈現出。
(2) 對圖像利用Gaussian Low-Pass filter處理,輸出平滑後圖像。
開發環境:
Window 10
Visual Studio Code
opencv-python 4.5.1.48
實作方式:
STEP-1:將讀入的圖片轉成灰階
STEP-2:以np.fft.fft2()快速傅立葉變換演算法得到頻率分布
由於fft2預設中心點在左上角因此以np.fft.fftshift()轉移到中間位置
STEP-3:以np.angle()取得角度數值
STEP-4:將fft2數值取絕對值得到magnitude_spectrum
STEP-5:執行cv2.GaussianBlur()取得範圍5*5的高斯模糊圖像
效果呈現:
沒有留言:
張貼留言