作業說明
撰寫程式,讀取一張256色灰階圖像
(a)計算輸入圖的DFT轉換結果,將頻譜大小與相位角度各以灰階256色圖像方式呈現出來
(b)對圖像利用Gaussian Low-Pass filter處理,輸出平滑後圖像
開發環境
- Windows 11
- OpenCv 4.5.4
- Visual Studio 2019
- c++
程式說明
1.首先,以灰階模式讀取一張圖像
2.圖像長、寬乘以2倍,使用copyMakeBorder()以補0的方式擴充原圖
3.傅立葉轉換結果為實部虛部,將兩個部分使用merge()做合併
4.進行DFT轉換,使用split()將實虛部分開
5.計算magnitude()然後轉換成log
6.使用phase()取得相位角度
7.使用normlize(),讓數值介於0~1之間
8.使用GaussianBlur(),以for迴圈的方式,對圖像做平滑處理
執行結果
原圖
頻譜圖
相位角度圖
Gaussian
沒有留言:
張貼留言