作業說明:
請撰寫一個程式,讀取一張256色灰階圖像。
(1) 計算輸入圖的離散傅立葉轉換結果,並將頻譜大小與相位角度各以灰階256色圖像方式呈現出。
(2) 對圖像利用Gaussian Low-Pass filter處理,輸出平滑後圖像。
開發環境:
- Windows10
- VSCode
- python 3.10.2
- OpenCV 4.5.5
執行:
執行Assignment3.py後輸入讀取圖片的路徑(記得要加副檔名)
輸入Gaussian Low-Pass filter 要用的D0
實作方法:
spectrum: 進行快速傅立葉轉換然後shift把(0, 0) 移到中間,再對圖像做一些處理 phase angle: 進行傅立葉轉換,並把結果分為實部和虛部,再把結果代入cv2的phase gaussian low-pass filter: 照講義的公式即可得出filterGaussian Low-Pass filter D0 = 50
再照講義那樣對圖片進行傅立葉轉換 => 乘以filter => 反傅立葉轉換
執行結果:
原圖
spectrum phase angle Gaussian Low-Pass filter D0 = 50
沒有留言:
張貼留言