Numpy 傅立葉變換 np.fft (3) 低頻的位置與原始圖像的關係

AndyHuang
Jul 19, 2021

--

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’)
```

下圖是頻率數據

結論
透過觀察以兩張圖,我們發現頻率域的分布,和原始圖像變化的方向一致,比如第一張圖,變化的方白是上下,頻率的分布是直向。第二張圖變化的方向是左右,頻率的分布為橫向。

下一篇我們觀黑白交錯的原始圖像會產生什麼樣的頻率分布

--

--

AndyHuang
AndyHuang

Written by AndyHuang

blockchain , defi , programe

No responses yet