2022年4月13日 星期三

s1071502 作業4

 

一、 作業說明

請撰寫一個程式,讀取一張256色灰階圖像。

(1)   計算輸入圖的離散傅立葉轉換結果,並將頻譜大小與相位角度各以灰階256色圖像方式呈現出。

(2)   對圖像利用Gaussian Low-Pass filter處理,輸出平滑後圖像。

(程式利用課本的frequency filter步驟者可得滿分,在網頁中將每個步驟結果呈現出。直接套用opencv函數得一半分數。)

二、 作業環境

Windows 10

 

OpenCV 4.5.5

 

Visual Studio 2017

 

三、 實作方法

1.讀取圖片,並檢查是否有錯誤。

2.先將圖片進行Padding,使用getOptimalDFTSize()擴展圖片,再用copyMakeBorder()填充。
3.
Padding完成的圖進行dft()運算,然後再用spilt()將實部虛部分開。

4.magnitude()計算Magnitude部分,再用Mag()將頻域的圖像重新排列,處理好後輸出。
5.
phase()計算Phase部分,處理圖像後輸出。

6.使用GaussianLowPassFilter()進行高斯低通濾波,並將影像處理後輸出。

四、 執行結果






沒有留言:

張貼留言