Matlab数字图像处理 实验1、数字图像的傅里叶变换

数 字 图 像 的 傅 里 叶 变 换 数字图像的傅里叶变换

图像的频率是表征图像中灰度变化剧烈程度的指标,是灰度在平面空间上的梯度。如:大面积的沙漠在图像中是一片灰度变化缓慢的区域,对应的频率值很低;而对于地表属性变换剧烈的边缘区域在图像中是一片灰度变化剧烈的区域,对应的频率值较高。傅里叶变换在实际中有非常明显的物理意义,设f是一个能量有限的模拟信号,则其傅里叶变换就表示f的频谱。从纯粹的数学意义上看,傅里叶变换是将一个函数转换为一系列周期函数来处理的。从物理效果看,傅里叶变换是将图像从空间域转换到频率域,其逆变换是将图像从频率域转换到空间域。换句话说,傅里叶变换的物理意义是将图像的灰度分布函数变换为图像的频率分布函数。傅里叶逆变换是将图像的频率分布函数变换为灰度分布函数。傅里叶变换以前图像(未压缩的位图)是由对在连续空间(现实空间)上的采样得到一系列点的集合,通常用一个二维矩阵表示空间上各点,记为z=f(x,y)。又因空间是三维的,图像是二维的,因此空间中物体在另一个维度上的关系就必须由梯度来表示,这样我们才能通过观察图像得知物体在三维空间中的对应关系。

傅里叶频谱图上我们看到的明暗不一的亮点,其意义是指图像上某一点与邻域点差异的强弱,即梯度的大小,也即该点的频率的大小(可以这么理解,图像中的低频部分指低梯度的点,高频部分相反)。一般来讲,梯度大则该点的亮度强,否则该点亮度弱。这样通过观察傅里叶变换后的频谱图,也叫功率图,我们就可以直观地看出图像的能量分布:如果频谱图中暗的点数更多,那么实际图像是比较柔和的(因为各点与邻域差异都不大,梯度相对较小);反之,如果频谱图中亮的点数多,那么实际图像一定是尖锐的、边界分明且边界两边像素差异较大的。

对频谱移频到原点以后,可以看出图像的频率分布是以原点为圆心,对称分布的。将频谱移频到圆心除了可以清晰地看出图像频率分布以外,还有一个好处,它可以分离出有周期性规律的干扰信号,比如正弦干扰。一幅频谱图如果带有正弦干扰,移频到原点上就可以看出,除了中心以外还存在以另一点为中心、对称分布的亮点集合,这个集合就是干扰噪音产生的。这时可以很直观的通过在该位置放置带阻滤波器消除干扰。

P a r t . 0 实 验 目 的 仅 限 于 学 习 交 流 Part.0 实验目的^{仅限于学习交流} Part.0

  1. 熟悉傅里叶变换的理论和性质;
  2. 掌握数字图像离散傅里叶变换的计算机实现方法;
  3. 掌握数字图像频谱分布特点;
  4. 验证人眼对圈像幅度谱和相位谱的敏感度。

P a r t . 1 实 验 内 容 仅 限 于 学 习 交 流 Part.1 实验内容^{仅限于学习交流} Part.1

  1. 掌握高级语言编程技术;
  2. 自选两幅图像分别进行傅里叶变换处理获取幅度谱和相位谱, 并交换两幅图像的幅度谱和相位谱重构图像;
  3. 分析处理结果。

P a r t . 2 实 验 源 代 码 仅 限 于 学 习 交 流 Part.2 实验源代码^{仅限于学习交流} Part.2

代码调试不易。转载请标明出处,谢谢!

% 日期 20201217% 主题 实验一:数字图像傅里叶变换 
% 要求 
%       1)掌握高级语言编程技术;
%       2)自选两幅图像分别进行傅里叶变换处理获取幅度谱和相位谱,
%          并交换两幅图像的幅度谱和相位谱重构图像;
%       3)分析处理结果。

clear;clc;close all

%% 读取图像、预处理
Picture1 = imread('D:\0\Matlab\LY_图像处理作业\Resource\LY_Project[照 源码]\LY_6_cartoon.jpg');
Picture2 = imread('D:\0\Matlab\LY_图像处理作业\Resource\LY_Project[照 源码]\LY_ordered_matches.tif');
% Picture1 = imread('cameraman.tif');
% Picture2 = imread('rice.png');
try
    Picture1=rgb2gray(Picture1);    % 如果是RGB图像,转成灰度图
catch
    % 否则,不做变换
end
try
    Picture2=rgb2gray(Picture2);    % 如果是RGB图像,转成灰度图
catch
    % 否则,不做变换
end
% 自适应变换图像尺寸 (相同尺寸处理)
row_min = min(size(Picture1,1),size(Picture2,1));
col_min = min(size(Picture1,2),size(Picture2,2));
Picture_Gray1 = Picture1(1:row_min, 1:col_min);
Picture_Gray2 = Picture2(1:row_min, 1:col_min);

%% 图像傅里叶变换 及其重构
Picture_FFT1 = fft2(Picture_Gray1); % 傅里叶变换
Picture_FFT_Shift1 = fftshift(Picture_FFT1); % 对频谱进行移动,是0频率点在中心
Picture_AM_Spectrum1 = log(abs(Picture_FFT_Shift1)); % 获得傅里叶变换的幅度谱
Picture_Phase_Specture1 = log(angle(Picture_FFT_Shift1)*180/pi); % 获得傅里叶变换的相位谱

Picture_FFT2 = fft2(Picture_Gray2); % 傅里叶变换
Picture_FFT_Shift2 = fftshift(Picture_FFT2); % 对频谱进行移动,是0频率点在中心
Picture_AM_Spectrum2 = log(abs(Picture_FFT_Shift2)); % 获得傅里叶变换的幅度谱
Picture_Phase_Specture2 = log(angle(Picture_FFT_Shift2)*180/pi); % 获得傅里叶变换的相位谱

Picture_Restructure1 = ifft2(abs(Picture_FFT2).*exp(1i*(angle(Picture_FFT1)))); % 双谱重构
Picture_Restructure2 = ifft2(abs(Picture_FFT1).*exp(1i*(angle(Picture_FFT2)))); % 双谱重构

%% 变换结果可视化
figure
subplot(241)
imshow(Picture_Gray1),title('原始图像')
subplot(242)
imshow(Picture_AM_Spectrum1,[]),title('图像幅度谱') 
% 显示图像的幅度谱,参数'[]'是为了将其值线性拉伸
subplot(243)
imshow(Picture_Phase_Specture1,[]),title('图像相位谱')
subplot(244)
imshow(Picture_Restructure1,[]),title('双谱重构图')
% figure
subplot(245)
imshow(Picture_Gray2),title('原图像')
subplot(246)
imshow(Picture_AM_Spectrum2,[]),title('图像幅度谱') 
% 显示图像的幅度谱,参数'[]'是为了将其值线性拉伸
subplot(247)
imshow(Picture_Phase_Specture2,[]),title('图像相位谱')
subplot(248)
imshow(Picture_Restructure2,[]),title('双谱重构图')


P a r t . 3 实 验 结 果 及 分 析 仅 限 于 学 习 交 流 Part.3 实验结果及分析^{仅限于学习交流} Part.3

幅度谱和相位谱是二维数字图像信号傅里叶处理中的重要信息。理论分析表明,图像信号的幅度谱决定了一幅图像中含有各种频率分量的多少,而相位谱决定了每一种频率分量在图像中的位置,实验一是在Windows操作系统下的MATLAB2019b应用程序中编写程序,待程序调试完成后,通过选取两组图像分别进行傅里叶变换处理获取其相应的幅度谱和相位谱,并交换两幅图像的幅度谱和相位谱重构图像仿真实验来验证图像信号的幅度谱和相位谱的物理意义。程序运行结果如下图所示:
图1-1 卡通人物和火柴棒图像的傅里叶变换及其重构(交换幅度谱)

图1-1 卡通人物和火柴棒图像的傅里叶变换及其重构(交换幅度谱)

图1-2 卡通人物和火柴棒图像的傅里叶变换及其重构(交换相位谱)

图1-2 卡通人物和火柴棒图像的傅里叶变换及其重构(交换相位谱)

在上图1-1、1-2中的仿真结果中:表面上可以从第二列看到幅度谱表现出一些可以辨认的结构,而从第三列中可以看到相位谱则完全是随机的;图1-1是交换了两图像的幅度谱信息, 图1-2是交换了两图像的相位谱信息,从两组图像的双谱重构图来看:第一行中轮廓信息基本保持不变,但图像的灰度大小与第二幅图像的灰度分布信息比较类似,而第二行的灰度分布与第一幅图像很相似,但细节轮廓保持了原图像的特征(第三、四行恰好相反)。由此可知:幅度谱决定了一幅图像中含有的各种频率分量的多少,幅度的大小只是影响图像的灰度细节。而相位谱决定了每一种频率分量在图像中的位置。所以如果每一种频率分量保持在图像中的正确位置,那么图像的完整性应该就能得到很好的保持。

P a r t . 4 友 情 链 接 所 需 相 关 资 源 可 留 言 反 馈 获 取 Part.4 友情链接^{所需相关资源可留言反馈获取} Part.4

  1. MATLAB学习索引
  2. GraphPad Prism绘图分析学习记录

代码调试不易。转载请标明出处,谢谢!
如果感觉本文对您有帮助,请留下您的赞,您的支持是我坚持写作分享的最大动力,谢谢!

References
[1]阮秋琦.数字图像处理学[M].北京:电子工业出版社, 2001.
[2]医学影像处理与分析[M]. 电子工业出版社 , 田捷等编著, 2003
[3]基于MATLAB的系统分析与设计[M]. 西安电子科技大学出版社 , 王晓丹,吴崇明编著, 2000
[4]朱秀昌, 刘峰, 胡栋.数字图像处理与图像通信[M].北京:北京邮电大学出版社, 2002.
[5]贾永红.计算机图像处理与分析[M].武昌:武汉大学出版社, 2001.
[6]何斌, 马天予, 王运坚, 等.Visual c++数字图像处理[M].北京:人民邮电出版社, 2002.
[7]Venkatesan Rajinikanth,E Priya,Hong Lin,Fuhua Lin. Hybrid Image Processing Methods for Medical Image Examination[M].CRC Press:2020-12-17.
[8]Ranjan Parekh. Fundamentals of Image, Audio, and Video Processing Using MATLAB®:With Applications to Pattern Recognition[M].CRC Press:2020-12-17.
[9]Comparison of Edge Detector Performance through Use in an Object Recognition Task[J] . Min C Shin,Dmitry B Goldgof,Kevin W Bowyer. Computer Vision and Image Understanding . 2001 (1)
[10]A novel zero-crossing edge detectionmethod based on multi-scale space theory. Mengmeng Zhang,Xia Li,Zhihui Yang,Yang Yan g. M Signal Processing (ICS P),2010IEEE10th International Conference . 2010
[11]医学图像分割算法研究及其在骨分割中的应用[D]. 黄琴波.西安电子科技大学 2011
[12]刘付桂兰.基于MATLAB图像处理技术及应用[J].科学技术创新,2020(35):64-67.
[13]一阶边缘检测算法的研究[J]. 朱振伟,刘广瑞,刘巧红. 现代电子技术. 2009(24)
[14]孙道辉.基于信息融合的图像边缘检测算法实现[J].电子测试,2018(13):53-54.
[15]李晶晶,王迪,常玲. 基于图像边缘检测算法的应用研究与实现[A]. 中共沈阳市委、沈阳市人民政府、中国农学会.第十三届沈阳科学学术年会论文集(理工农医)[C].中共沈阳市委、沈阳市人民政府、中国农学会:沈阳市科学技术协会,2016:5.
[16]张慧,冯驰.图像边缘检测算法研究及其MATLAB实现[J].佳木斯职业学院学报,2015(09):330.

可以肯定的是学海无涯,这篇文章也会随着对MATLAB的深入学习而持续更新,
欢迎各位在评论区留言进行探讨交流。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值