s1091533 作業3

 作業3說明

題目:

離散傅立葉轉換 DFT 練習 撰寫傅利葉轉換程式(Forward Fourier Transform and Inverse Fourier Transform)將一張圖像轉換至頻域後,將頻譜大小與相位角度各以灰階 256 色圖像方式呈現出,再呈現還原後圖像。 


開發環境:

Windows 10 + Visual Studio Code + OpenCV 4.7.0 + Python


程式說明:

(a)傅立葉轉換

1.cv2.dft(): 做離散傅立葉轉換。

2.np.fft.fftshift():移頻,將低頻部分移動到影像的中心。

(b)頻譜大小

1.cv2.magnitude():計算由實部和虛部部組成的複數大小。

2.np.log():對傅立葉轉換的結果進行對數變換,以便可視化頻域訊息。

(c)相位角度

1.np.angle():計算相位角度。

(d)反傅立葉轉換

1.np.fft.ifftshift():將高頻部分移動到影像的中心。

2.cv2.idft():做反離散傅立葉轉換。

3.cv2.magnitude():計算反離散傅立葉轉換後的影像大小。

(e)顯示結果

1.套用matplotlib,用plt.imshow()將結果顯示出來。


Demo:








留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1061637 作業6