一、作業要求
請撰寫一個程式,讀取一張 256 色灰階圖像。計算輸入圖的離散傅立葉轉換結果,並將頻譜大小與相位角度各以灰階 256 色圖像方式呈現出。
二、使用環境
Windows 10
Chrome
OpenCV.js
三、程式撰寫:
1.imread讀入圖片後用cvtColor轉成灰階
2.getOptimalDFTSize轉成padded適當大小
3.使用一維DFT對圖片rows進行轉換再對cols進行轉換
由於DFT 和 IDFT為自己寫的效能較低所以執行時間需要比較久
4.將image和real轉為大小值再取log
5.將image和real做Math.atan(image/real)得到phase angle
6.normalize(4)和(5)為0~255
7.imshow呈顯結果
四、結果:
沒有留言:
張貼留言