˙ 作業說明:
撰寫一個程式,讀取一張256色灰階圖像。
(a) 計算輸入圖的離散傅立葉轉換結果,並將頻譜大小與相位角度各以灰階256色圖像方式呈現出
(b) 對圖像利用Gaussian Low-Pass filter處理,輸出平滑後圖像 (利用課本的frequency filter步驟)
˙ 開發環境:
1. windows 10
2. OpenCV 4.5.5
3. Visual Studio
2019
4. C++
˙ 執行步驟:
1. imread() 輸入圖片路徑並轉成灰階圖
2. 對圖片zero-padding成2倍大小,利用copyMakerBroder()實作
3. 分配存儲空間(實部和虛部),進行離散傅立葉轉換
4. 計算magnitude和轉換成log
5. 利用phase()生成相位圖
6. 利用for迴圈計算gaussian low pass filter公式
7. normalize()歸一化後,imshow() 顯示所有圖像
˙ 執行結果:
灰階圖:
相位圖:
平滑圖:
沒有留言:
張貼留言