基于python的图像傅里叶处理

Posted tangjunjun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于python的图像傅里叶处理相关的知识,希望对你有一定的参考价值。


技术图片


import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-10, 10, 1000)
a = np.cos(x)
b = a + np.cos(3 * x)
# d = np.log(x)
c = b + np.cos(7 * x)
d = c - np.cos(10 * x)
plt.subplot(2, 2, 1)
plt.plot(x, a, label=‘$cos(x)$‘, color=‘green‘, linewidth=1)
plt.title("cosx")
plt.xlim(-2, 2)
plt.ylim(-3, 3)
plt.subplot(2, 2, 2)
plt.plot(x, b, label=‘$cos(x)+cos(3x)$‘, color=‘red‘, linewidth=1)
plt.title("cosx+cos(3x)")
plt.xlim(-2, 2)
plt.ylim(-3, 3)
plt.subplot(2, 2, 4)
plt.plot(x, d, label=‘$cos(x)+cos(3x)+cos(7x)$‘, color=‘blue‘, linewidth=1)
plt.title("cosx+cos(3x)+cos(7x)-cos(10x)")
plt.xlim(-2, 2)
plt.ylim(-3, 3)
plt.subplot(2, 2, 3)
plt.plot(x, c, label=‘$cos(x)+cos(3x)+cos(7x)$‘, color=‘black‘, linewidth=1)
plt.title("cosx+cos(3x)+cos(7x)")
plt.xlim(-2, 2)
plt.ylim(-3, 3)
plt.show()

技术图片

import cv2 as cv
import numpy as np
import matplotlib.pyplot as plt
img = cv.imread(‘learn.jpg‘, 0) #直接读为灰度图像
f = np.fft.fft2(img) #做频率变换
fshift = np.fft.fftshift(f) #转移像素做幅度普
s1 = np.log(np.abs(fshift))#取绝对值:将复数变化成实数取对数的目的为了将数据变化到0-255
plt.subplot(121)
plt.imshow(img, ‘gray‘)
plt.title(‘original‘)
plt.subplot(122)
plt.imshow(s1,‘gray‘)
plt.title(‘center‘)
plt.show()








以上是关于基于python的图像傅里叶处理的主要内容,如果未能解决你的问题,请参考以下文章

Python图像处理采样卷积与离散傅里叶变换

跟我学Python图像处理丨带你掌握傅里叶变换原理及实现

图片处理-opencv-12.图像傅里叶变换

Halcon 傅里叶变换应用

傅里叶变换在图像处理中的应用

OpenCV中的图像处理 —— 傅里叶变换+模板匹配