Numpy 傅立葉變換 np.fft (3) 低頻的位置與原始圖像的關係
本篇我們觀察原始圖像不同方向的變化,對頻率的位置產生的影響。先是上白下黑的原始圖像陣列,經過 FT 的頻率域分布。
```python
import numpy as np
import matplotlib.pyplot as plt
import src.genpic8 as pic
if __name__ == ‘__main__’:
img = pic.v_half()
fft = np.fft.fft2(img)
amp_spectrum_nl = np.abs(np.fft.fftshift(fft))
amp_spectrum = amp_spectrum_nl
plt.subplot(121), plt.imshow(img, cmap=’gray’, vmin=0, vmax=255)
plt.title(‘Input Image’), plt.xticks([]), plt.yticks([])
plt.subplot(122), plt.imshow(amp_spectrum, cmap=’gray’)
plt.title(‘v_half’), plt.xticks([]), plt.yticks([])
plt.show()
print(‘end’)
```
結果如下圖
下圖是頻率數據
然後,我們換成左白右黑的圖。
```python
import numpy as np
import matplotlib.pyplot as plt
import src.genpic8 as pic
if __name__ == ‘__main__’:
img = pic.h_half()
fft = np.fft.fft2(img)
amp_spectrum_nl = np.abs(np.fft.fftshift(fft))
amp_spectrum = amp_spectrum_nl
plt.subplot(121), plt.imshow(img, cmap=’gray’, vmin=0, vmax=255)
plt.title(‘Input Image’), plt.xticks([]), plt.yticks([])
plt.subplot(122), plt.imshow(amp_spectrum, cmap=’gray’)
plt.title(‘v_half’), plt.xticks([]), plt.yticks([])
plt.show()
print(‘end’)
```
下圖是頻率數據
結論
透過觀察以兩張圖,我們發現頻率域的分布,和原始圖像變化的方向一致,比如第一張圖,變化的方白是上下,頻率的分布是直向。第二張圖變化的方向是左右,頻率的分布為橫向。
下一篇我們觀黑白交錯的原始圖像會產生什麼樣的頻率分布