S1083319 作業3
題目敘述
撰寫傅利葉轉換程式(Forward Fourier Transform and Inverse Fourier Transform)將一張圖像轉換至頻域後,將頻譜大小與相位角度各以灰階 256 色圖像方式呈現出,再呈現還原後圖像。
開發環境
l Windows 11
l Visual Studio Code
l Python 3.11
l OpenCV 4.7.0.72
Import
l cv2
l numpy
功能說明
1. 直接讀取出一張灰階的圖片
cv2.imread(path, cv2.IMREAD_GRAYSCALE)
2. 執行傅里葉變換後將頻率分量移至中央
np.fft.fft2()
np.fft.fftshift()
3. 計算頻譜大小和相位角大小
np.log()
np.angle()
4. 執行傅里葉反變換,將圖像還原
np.fft.ifftshift()
np.fft.ifft2()
np.abs()
5. 正規化(以灰階 256 色圖像方式呈現)
cv2.normalize(img_name , None, 0, 255, cv2.NORM_MINMAX)
執行結果
原圖
經傅立葉轉換後
phase
經傅立葉反轉換後
留言
張貼留言