Python中二维快速傅里叶变换----基于numpy库

二维傅里叶变换在图像处理中经常用到,为了更好理解python中的fft2。这里我们生成了二维正弦条纹,然后进行快速傅里叶变换。


#Python版本:Python3.5

#用到的库:numpy,matploylib

#作者:James_Ray_Murphy

# -*- coding: -utf-8 -*-


import numpy as np
import matplotlib.pyplot as plt


N = 256
x = np.linspace(-10, 10, N)
y = np.linspace(-10, 10, N)


X,Y = np.meshgrid(x,y)


Z = 2 * np.cos(0.2 * np.pi * X)     #光栅


Z_fft2 = np.fft.fft2(Z)


Z_fft2_sh = abs(np.fft.fftshift(Z_fft2))




plt.subplot(221)
plt.imshow(Z)
plt.title('Original')


plt.subplot(222)
plt.imshow(abs(Z_fft2))
plt.title('fft2')


plt.subplot(223)
plt.imshow(Z_fft2_sh)
plt.title('fft2-shift')


plt.subplot(224)

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值