3385|2

7

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

图像的傅里叶变换咨询 [复制链接]

 

用MATLAB的fft函数和fftshift函数,对下图一的对角线图进行傅里叶变换,得到如图二和图三,是否正确?

     

原图

 

 

                  图一

 

                 FFT 图

 

                   图2

                     

      FFTSHIFT 图

 

                   图三

 

请问,图二/图三是否正确?

最新回复

又用python做了FFT看起来结果一致 附上代码,仅供参考 import numpy as np import matplotlib.pyplot as plt from matplotlib.colors import LogNorm from scipy.fft import fft2, fftshift # 读取图像 image = plt.imread('path_to_your_image.jpg') # 替换为你的图像路径 # 将图像转换为灰度(如果需要) if len(image.shape) == 3: # 如果是彩色图像 image = np.dot(image[...,:3], [0.2989, 0.5870, 0.1140]) # 执行快速傅里叶变换 f = fft2(image) fshift = fftshift(f) # 计算幅度谱 magnitude_spectrum = 20 * np.log(np.abs(fshift)) # 显示FFT结果 plt.figure(figsize=(10, 5)) # 显示幅度谱 plt.subplot(121) plt.imshow(magnitude_spectrum, cmap='gray') plt.title('Magnitude Spectrum') plt.axis('off') # 显示中心化后的FFT结果 plt.subplot(122) plt.imshow(np.abs(fshift), cmap='gray') plt.title('FFT Shifted') plt.axis('off') plt.show()   [attach]822360[/attach]     详情 回复 发表于 2024-7-9 11:05
点赞 关注
 
 

回复
举报

4789

帖子

12

TA的资源

版主

沙发
 

嘶我尝试用imagej做了FFT,请参考

 

 
 
 

回复

4789

帖子

12

TA的资源

版主

板凳
 

又用python做了FFT看起来结果一致

附上代码,仅供参考

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.colors import LogNorm
from scipy.fft import fft2, fftshift

# 读取图像
image = plt.imread('path_to_your_image.jpg')  # 替换为你的图像路径

# 将图像转换为灰度(如果需要)
if len(image.shape) == 3:  # 如果是彩色图像
    image = np.dot(image[...,:3], [0.2989, 0.5870, 0.1140])

# 执行快速傅里叶变换
f = fft2(image)
fshift = fftshift(f)

# 计算幅度谱
magnitude_spectrum = 20 * np.log(np.abs(fshift))

# 显示FFT结果
plt.figure(figsize=(10, 5))

# 显示幅度谱
plt.subplot(121)
plt.imshow(magnitude_spectrum, cmap='gray')
plt.title('Magnitude Spectrum')
plt.axis('off')

# 显示中心化后的FFT结果
plt.subplot(122)
plt.imshow(np.abs(fshift), cmap='gray')
plt.title('FFT Shifted')
plt.axis('off')

plt.show()

 

 

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表