网站首页 > 技术教程 正文
傅里叶变换是线性系统分析的有力工具,通过将图像从空域变换到频域,可以很容易地了解到图像的各空间频域成分,从而进行相应的处理。傅里叶变换应用十分广泛,如图像特征提取、空间频域滤波、图像恢复和纹理分析等。
针对傅里叶变换,MATLAB图像处理工具箱中提供了fft()函数、fft2()函数、fftn()函数和fftshift()函数。
(1)在MATLAB中提供了fft()函数用于实现一维快速傅里叶变换,该函数的调用格式如下:
Y = fft(X):返回向量X的离散傅里叶变换。若X为矩阵,返回矩阵每列的傅里叶变换;若为多维数组,返回第一个非单元素的维;
Y = fft(X,n):返回n点傅里叶变换。若length(X)小于n,X自动在末尾添加0到n长;若length(X)大于n,X自动按顺序在顶端截断到n长;若为矩阵,矩阵的每列都自动调整到n长;
Y = fft(X,[],dim)或Y = fft(X,n,dim):在数组dim维上进行傅里叶变换。
(2)二维傅里叶变换可由两次一维傅里叶变换实现。此外,在MATLAB中专门提供了fft2()函数用于实现二维快速傅里叶变换,该函数的调用格式如下:
Y = fft2(X):返回矩阵X的二维离散傅里叶变换,输出Y与X同大小;其等价于Y = fft(fft(X).').';
Y = fft2(X,m,n):在变换前,把X截断或添加0使其变成m*n的数组,输出结果Y与X同大小;
(3)对于n位数组,在MATLAB中提供了fftn()函数用于实现n维快速傅里叶变换,该函数的调用格式如下:
Y = fftn(X):返回矩阵X的多维离散傅里叶变换;等价于
Y=X;
for p=1:length(X)
Y=fft(Y,[],p);
end
Y = fftn(X,siz):在变换前,把X截断或添加0使其变成siz大小的数组,输出结果Y与X同大小;
(4)在MATLAB中提供了fftshift()函数,用于实现把傅里叶变换的零频率部分移到频谱中间,便于观察图像频域的低频和高频分布。该函数的调用格式如下:
Y = fftshift(X):将fft()函数、fft2()函数和fftn()函数的输出结果的零频率部分移到数组中间。对于向量,fftshift(X)将X的左右部分交换;对于矩阵,fftshift(X)将X的一、三象限部分交换,二、四象限部分交换;对于高维数组,fftshift(X)在每维交换X的半空间;
Y = fftshift(X,dim):把fftshift操作应用到dim维上。
下面通过具体实例来说明图像空域经过傅里叶变换到图像频域的效果:
代码:
显示效果:
全黑图像
全灰图像
全白图像
帕斯瓦尔定理
帕斯瓦尔定理验证结果
傅里叶变换理解一直都是一个难题,很少有文章能深入浅出地解释傅里叶变换,能从现实世界的具体东西来表达傅里叶变换的含义。我认为,可以尝试着从能量守恒的角度去理解傅里叶变换。正如前面给出的帕斯瓦尔定理,时域(空域)能量和频域能量有明确的关系。如全黑图像空域能量为0,所以其频域能量也为零,即表现为频域图像全黑;如全灰图像和全白图像的频域图像都对应于一个白点,但该白点包含的能量不同,前者为0.8229*10^9,后者为3.3164*10^9。
从上述多幅图像的空域和频域可以看出,面积减小对应亮度增加,面积增大对应亮度减小。
最后,感谢您的耐心阅读!
猜你喜欢
- 2024-11-06 基于MATLAB的刀具角度测量 matlab测工件尺寸
- 2024-11-06 「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像
- 2024-11-06 「MATLAB数据导入与分析」MATLAB: 使用内存映射加快文件读写
- 2024-11-06 利用边缘检测计算物体面积(内含源码)
- 2024-11-06 自动驾驶毫米波雷达物体检测技术-算法
- 2024-11-06 基于粒子滤波器的电池剩余使用寿命计算matlab仿真
- 2024-11-06 「二十」MATLAB图像处理之六 matlab怎么做图像处理
- 2024-11-06 matlab程序, 脉冲波合成与提取,滑冲效应、方向性效应
- 2024-11-06 《基于PLE结合卡尔曼滤波的RSSI定位算法matlab仿真》基于PLE
- 2024-11-06 正交相干检波 正交相位检波器原理
你 发表评论:
欢迎- 05-1613步震撼淘宝大促闪光裂纹破墙立体字PS制作教程
- 05-16AI教程 | 绘制扁平的萌萌哒图标
- 05-160基础学平面设计所需了解的基础常识汇总
- 05-16自学平面设计需要多长时间?十六年职业设计总监告诉你
- 05-16平面设计都要学习哪些内容?
- 05-16李涛PS教程 高手之路PS教程 合成教程 —制作一个小星球
- 05-16Illustrator实例教程:制作炫酷的漩涡效果
- 05-16Illustrator实例教程:利用混合工具制作一朵炫酷的花
- 最近发表
- 标签列表
-
- sd分区 (65)
- raid5数据恢复 (81)
- 地址转换 (73)
- 手机存储卡根目录 (55)
- tcp端口 (74)
- project server (59)
- 双击ctrl (55)
- 鼠标 单击变双击 (67)
- debugview (59)
- 字符动画 (65)
- flushdns (57)
- ps复制快捷键 (57)
- 清除系统垃圾代码 (58)
- web服务器的架设 (67)
- 16进制转换 (69)
- xclient (55)
- ps源文件 (67)
- filezilla server (59)
- 句柄无效 (56)
- word页眉页脚设置 (59)
- ansys实例 (56)
- 6 1 3固件 (59)
- sqlserver2000挂起 (59)
- vm虚拟主机 (55)
- config (61)
本文暂时没有评论,来添加一个吧(●'◡'●)