中国地质大学数字图像处理报告.

合集下载

数字图像处理实验报告

数字图像处理实验报告

数字图像处理实验报告1. 引言数字图像处理是使用计算机来处理和优化图像的一种技术。

在本实验中,我们将探索几种常见的数字图像处理方法,并使用Python编程语言和相关库来实现。

2. 实验目的本实验的主要目的是:1.了解图像的基本特性和数字图像处理的基本原理;2.熟悉Python编程语言和相关图像处理库的使用;3.实现常见的图像处理算法并进行实验验证。

3. 实验方法在本实验中,我们使用Python编程语言和以下相关库来实现图像处理算法:•OpenCV:用于图像读取、显示和保存等基本操作;•Numpy:用于图像数据的处理和算术运算;•Matplotlib:用于图像的可视化和结果展示。

以下是实验涉及到的图像处理方法和步骤:1.图像读取和显示:使用OpenCV库读取图像,使用Matplotlib库显示图像;2.图像的灰度化:将彩色图像转换为灰度图像;3.图像的二值化:将灰度图像转换为黑白二值图像;4.图像的平滑处理:使用平滑滤波器对图像进行平滑处理,如均值滤波和高斯滤波;5.图像的边缘检测:使用边缘检测算法对图像进行边缘检测,如Sobel算子和Canny算子;6.图像的直方图均衡化:对灰度图像进行直方图均衡化,增强图像的对比度。

4. 实验过程和结果4.1 图像读取和显示首先,我们使用OpenCV库读取一张图像,并使用Matplotlib库显示该图像:import cv2import matplotlib.pyplot as plt# 读取图像img = cv2.imread('image.jpg')# 显示图像plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)) plt.axis('off')plt.show()4.2 图像的灰度化接下来,我们将彩色图像转换为灰度图像:# 灰度化图像gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 显示灰度图像plt.imshow(gray_img, cmap='gray')plt.axis('off')plt.show()4.3 图像的二值化然后,我们将灰度图像转换为黑白二值图像:# 二值化图像_, binary_img = cv2.threshold(gray_img, 128, 255, cv2.THRESH_BINARY)# 显示二值图像plt.imshow(binary_img, cmap='gray')plt.axis('off')plt.show()4.4 图像的平滑处理接下来,我们使用平滑滤波器对图像进行平滑处理,例如使用5x5的均值滤波器和高斯滤波器:# 均值滤波mean_img = cv2.blur(img, (5, 5))# 高斯滤波gaussian_img = cv2.GaussianBlur(img, (5, 5), 0) # 显示平滑处理后的图像plt.figure(figsize=(10, 5))plt.subplot(121)plt.imshow(cv2.cvtColor(mean_img, cv2.COLOR_BGR2R GB))plt.title('Mean Filter')plt.axis('off')plt.subplot(122)plt.imshow(cv2.cvtColor(gaussian_img, cv2.COLOR_B GR2RGB))plt.title('Gaussian Filter')plt.axis('off')plt.show()4.5 图像的边缘检测然后,我们使用边缘检测算法对图像进行边缘检测,例如使用Sobel算子和Canny算子:# 边缘检测sobel_img = cv2.Sobel(gray_img, cv2.CV_8U, 1, 1, ksize=3)canny_img = cv2.Canny(gray_img, 50, 150)# 显示边缘检测结果plt.figure(figsize=(10, 5))plt.subplot(121)plt.imshow(sobel_img, cmap='gray')plt.title('Sobel Operator')plt.axis('off')plt.subplot(122)plt.imshow(canny_img, cmap='gray')plt.title('Canny Operator')plt.axis('off')plt.show()4.6 图像的直方图均衡化最后,我们对灰度图像进行直方图均衡化,以增强图像的对比度:# 直方图均衡化equalized_img = cv2.equalizeHist(gray_img)# 显示直方图均衡化结果plt.imshow(equalized_img, cmap='gray')plt.axis('off')plt.show()5. 实验总结通过本实验,我们熟悉了数字图像处理的基本方法和步骤,并使用Python编程语言和相关库实现了图像的读取、显示、灰度化、二值化、平滑处理、边缘检测和直方图均衡化等操作。

中国地质大学遥感图像处理上机实习报告

中国地质大学遥感图像处理上机实习报告

遥感图像处理课程实习报告学生姓名:王蜀越班学号:学号:指导教师:王红平、许凯中国地质大学信息工程学院2017年7月1日目录目录 ............................................................................................................................................... - 1 - 实习一:影像融合........................................................................................................................ - 2 -1.1【实习目的】 (2)1.2【实习步骤】 (2)1.3【实习过程】 (2)实习二:几何校正........................................................................................................................ - 6 -2.1【实习内容】 (6)2.2【实习步骤】 (6)2.3【实习过程】 (6)实习三:影像分类(一).......................................................................................................... - 10 -3.1【实习内容】 (10)3.2【实习步骤】 (10)3.3【实习过程】 (10)实习四:影像分类(二).......................................................................................................... - 14 -4.1【实习内容】 (14)4.2【实习步骤】 (14)4.3【实习过程】 (14)心得与感想 ................................................................................................................................. - 18 -实习一:影像融合1.1 【实习目的】1.掌握遥感影像融合的基本原理、内容和要点;2.掌握在ENVI中遥感影像融合的操作方法、步骤;3.进一步熟悉ENVI软件的操作。

图像处理3

图像处理3

数字图像处理上机报告题目:数字图像处理上机报告(第3次)学校:中国地质大学(武汉)指导老师:傅华明姓名:张慧班级序号: 071112-11 日期: 2013年10月20日目录3-1图象复原 (3)3-2几何校正 (12)3-3图象重建 (22)3-4实验总结 (25)备注:所有题目的运行效果可通过运行Taskxxx.m文件观察,使用时请保证文件夹所有内容完整,此外关于第一题的证明在Test.m中。

3-1图象复原:题目要求:已知p03-03-01为原图象,p03-03-02为经过高通滤波以后的退化图象,请采用逆滤波方法,假设高通滤波器为(1)高斯滤波器(2)巴特沃茨滤波器。

每组滤波器采用3组高通截止频率。

并计算均方误差最小,说明那一组参数复原的图象复原效果最好?关于题目本身存在的问题:在实际编程过程中,我曾尝试过多种高通滤波器的逆滤波方法,试图将图像还原,但都以失败而告终。

最后,尝试了将题目给出的两幅图像做FFT变换并观察、对比其二维和三维频谱图,发现p03-03-02的图像并非由原图像通过高通滤波得到。

该过程经过了老师的认可,证明过程如下:证明代码:(Test.m)clear;p03_03_01 = imread('p03_03_01.bmp');p03_03_02 = imread('p03_03_02.bmp');Fp03_1 = fft2(double(p03_03_01));Fp03_1 = fftshift(Fp03_1);Fp03_2 = fft2(double(p03_03_02));Fp03_2 = fftshift(Fp03_2);subplot(1,2,1);imshow(p03_03_01);title('p03_03_01');subplot(1,2,2);imshow(p03_03_02);title('p03_03_01');figure;subplot(1,2,1);imshow(uint16(abs(Fp03_1)));title('p03_03_01二维频谱');subplot(1,2,2);imshow(uint16(abs(Fp03_2)));title('p03_03_02二维频谱');figure;subplot(1,2,1);mesh(abs(Fp03_1));title('p03_03_01三维频谱图');%显示三维频谱图subplot(1,2,2);mesh(abs(Fp03_2));title('p03_03_02三维频谱图');%显示三维频谱图证明结果分析:由以上三组图的对比很容易看出,二图相比,p03-03-02频谱的高频部分明显弱于p03-03-01频谱,就低频分量而言:p03-03-01与p03-03-02处于同一数量级,且几乎相等。

数字图像处理实习报告

数字图像处理实习报告

数字图像处理实习报告
本次实习主要任务是进行数字图像处理相关工作,包括图像的预处理、特征提取、图像分割和图像识别等方面的工作。

实习过程中,我主要负责了图像处理算法的编写与优化,以及实验数据的收集与分析。

通过这次实习,我对数字图像处理技术有了更深入的了解,并且提升了自己的编程能力和团队协作能力。

在图像处理算法的编写与优化过程中,我主要使用了Python
语言和常用的图像处理库,如OpenCV和PIL等。

我研究了不同的图像处理算法,并对其进行了实验验证,优化了算法的性能和效果。

通过这些工作,我深入了解了图像处理算法的实现原理和优化方法,提升了自己在图像处理领域的技术水平。

在实验数据的收集与分析过程中,我主要负责了实验数据的采集和整理工作。

我使用了各种图像采集设备,包括相机、摄像头等,对不同场景下的图像进行了采集和整理。

然后我利用Python和Matlab等工具对实验数据进行了分析和结果展示,
为后续的图像处理算法提供了重要的支持和参考。

总的来说,这次实习让我对数字图像处理有了更深入的了解,提升了自己的技术能力和实践能力。

我在实习过程中遇到了不少困难和挑战,但通过团队合作和自我努力,最终都得以克服,取得了一定的成果。

通过这次实习,我深刻地感受到了数字图像处理技术的重要性和广阔的应用前景,也对自己未来的发展方向有了更清晰的认识。

希望通过这次实习的经历,我能够为将来的学习和工作打下坚实的基础。

中国地质大学武汉遥感数字图像处理课程设计报告

中国地质大学武汉遥感数字图像处理课程设计报告

遥感数字图像处理课程设计报告学生姓名:孙国欢班学号:113131-05指导老师:高伟、王红平中国地质大学(武汉)信息工程学院2016年2月目录§1课设要求加深对遥感图像处理课程教授的典型算法的理解,使用高级程序语言完成算法的设计与实现。

不得直接在商用软件上做二次开发。

§2 课设内容(一)课程实验(20分)1、图像数据显示此次实习要求在Demo原型系统中增加对图像数据的显示,具体说明如下:a) 至少支持Tiff格式图像的显示b) 完成RGB合成显示、灰度显示和索引显示的功能c) 完成至少2种的增强显示方式:如:正规化显示、均衡化显示、自适应显示等。

d) 完成基本统计量计算以及直方图统计功能。

(二)课程设计内容(60分)1. 图像几何校正图像几何校正的实现是在准备的控制点数据基础之上,计算图像的转换系数,进而对图像进行重采样,完成图像的几何校正算法。

此部分功能要求:a) 要求实现多项式校正的算法,至少完成一阶多项式,对多阶多项式可尝试。

b) 重采样方式要求完成最邻近、双线性和三次立方卷积3种重采样方法c) 要求对重采样方式和多项式阶数能够设置2.实现影像空域滤波的功能。

主要功能如下:a)能选择输入影像数据文件;b)能定制滤波核大小和数值;c)能选取输出的影像数据文件。

3. 图像分类a) 要求实现至少一种分类算法。

b) 监督分类的AOI区选取可借助于其他系统选取的AOI区信息c) 若采用非监督分类,要求使用ISODATA算法予以实现d) 要求能以不同颜色来区分显示不同类的像元§3 算法原理此次课设主要针对遥感数字图像处理课程中教授的遥感数字图像处理的方法与原理进行计算机高级程序语言的实现。

首先要支持Tiff图像显示:先理解tiff图像存储格式,TIFF文件以.tif为扩展名。

其数据格式是一种3级体系结构,从高到低依次为:文件头、一个或多个称为IFD的包含标记指针的目录和数据。

数字图像处理距离变换

数字图像处理距离变换

中国地质大学课程设计课程名称数字图像处理教师姓名傅华明学生姓名学生学号学生班级数字图像处理报告——基于matlab 实现1.实验要求:按照公式(8.3.9)对图象p6-05求取距离变换图象,并显示处理后图象距离变换是把任意图形转换成线性图最有效的方法之一。

它是求二值图形中各1像素到0像素的最短距离的处理。

对二值图像f (i ,j ),距离变换k 次的图像为g k (i ,j ),当f (i ,j )=1时,g 0(i ,j )=C (非常大);当f (i ,j )≈0时,g 0(i ,j )=0。

对图像f (i ,j )进行如下处理:⎪⎩⎪⎨⎧≈=+++++-+-=+0),(01),(}1)1,(,1),1(,1),1(,1)1,(),,(min{),(1j i f j i f j i g j i g j i g j i g j i g j i g k k k k k k对全部i ,j ,有gk +1(i ,j )=gk (i ,j )时,gk 便是所求的距离变换图像。

2.实验代码:clear;close all ;I=imread('p6-05.tif');imshow(I);title('原图');[m n]=size(I);m=double(m);n=double(n);Min=double(min(I(:)));w = strel('square',4);g=zeros(m,n);while sum(I(:))~=m*n*Min %不断腐蚀再腐蚀图像不会有变化为止for i=1:mfor j=1:nif I(i,j)~=Ming(i,j)=g(i,j)+1; %记录这个点腐蚀多少次才到最小值endendendI=imerode(I,w);% figure(1)% imshow(I);endfigure;imshow(mat2gray(g));title('距离变换后图像');3.实验结果如下:在经过距离变换后,最大值点的集合就形成骨架,及位于图形中心部分的线状得集合。

《数字图像处理》实验报告

《数字图像处理》实验报告

《数字图像处理》实验报告数字图像处理是一门将图像进行数字化处理的学科,它通过计算机算法和技术手段对图像进行分析、增强、压缩和重建等操作。

在本次实验中,我们学习了数字图像处理的基本概念和常用算法,并通过实验来探索其应用和效果。

首先,我们进行了图像的读取和显示实验。

通过使用Python中的OpenCV库,我们能够轻松地读取图像文件,并将其显示在屏幕上。

这为我们后续的实验奠定了基础。

同时,我们还学习了图像的像素表示方法,了解了图像由像素点组成的原理。

这使我们能够更好地理解后续实验中的算法和操作。

接下来,我们进行了图像的灰度化实验。

灰度化是将彩色图像转换为灰度图像的过程。

在实验中,我们使用了不同的算法来实现灰度化操作,包括平均值法、最大值法和加权平均法等。

通过比较不同算法得到的灰度图像,我们发现不同算法对图像的处理效果有所差异,这使我们深入理解了灰度化的原理和应用。

随后,我们进行了图像的直方图均衡化实验。

直方图均衡化是一种用于增强图像对比度的方法。

在实验中,我们使用了直方图均衡化算法来对图像进行处理,并观察了处理前后的效果变化。

通过实验,我们发现直方图均衡化能够显著提高图像的对比度,使图像更加清晰和鲜明。

在进一步探索图像处理技术的过程中,我们进行了图像的滤波实验。

滤波是一种常用的图像处理操作,它通过对图像进行卷积操作来实现。

在实验中,我们学习了不同类型的滤波器,包括均值滤波器、高斯滤波器和中值滤波器等。

通过比较不同滤波器对图像的处理效果,我们发现每种滤波器都有其适用的场景和效果。

此外,我们还进行了图像的边缘检测实验。

边缘检测是一种用于提取图像边缘信息的方法。

在实验中,我们学习了不同的边缘检测算法,包括Sobel算子、Canny算子和Laplacian算子等。

通过比较不同算法对图像的处理效果,我们发现每种算法都有其独特的特点和应用。

最后,我们进行了图像的压缩实验。

图像压缩是一种将图像数据进行压缩以减小文件大小的方法。

中国地质大学武汉遥感数字图像处理课程设计报告

中国地质大学武汉遥感数字图像处理课程设计报告

遥感数字图像处理课程设计报告学生姓名:孙国欢班学号:113131-05指导老师:高伟、王红平中国地质大学(武汉)信息工程学院2016年2月目录§1课设要求加深对遥感图像处理课程教授的典型算法的理解,使用高级程序语言完成算法的设计与实现。

不得直接在商用软件上做二次开发。

§2 课设内容(一)课程实验(20分)1、图像数据显示此次实习要求在Demo原型系统中增加对图像数据的显示,具体说明如下:a) 至少支持Tiff格式图像的显示b) 完成RGB合成显示、灰度显示和索引显示的功能c) 完成至少2种的增强显示方式:如:正规化显示、均衡化显示、自适应显示等。

d) 完成基本统计量计算以及直方图统计功能。

(二)课程设计内容(60分)1. 图像几何校正图像几何校正的实现是在准备的控制点数据基础之上,计算图像的转换系数,进而对图像进行重采样,完成图像的几何校正算法。

此部分功能要求:a) 要求实现多项式校正的算法,至少完成一阶多项式,对多阶多项式可尝试。

b) 重采样方式要求完成最邻近、双线性和三次立方卷积3种重采样方法c) 要求对重采样方式和多项式阶数能够设置2.实现影像空域滤波的功能。

主要功能如下:a)能选择输入影像数据文件;b)能定制滤波核大小和数值;c)能选取输出的影像数据文件。

3. 图像分类a) 要求实现至少一种分类算法。

b) 监督分类的AOI区选取可借助于其他系统选取的AOI区信息c) 若采用非监督分类,要求使用ISODATA算法予以实现d) 要求能以不同颜色来区分显示不同类的像元§3 算法原理此次课设主要针对遥感数字图像处理课程中教授的遥感数字图像处理的方法与原理进行计算机高级程序语言的实现。

首先要支持Tiff图像显示:先理解tiff图像存储格式,TIFF文件以.tif为扩展名。

其数据格式是一种3级体系结构,从高到低依次为:文件头、一个或多个称为IFD的包含标记指针的目录和数据。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中国地质大学(武汉) 数字图像处理实习报告书姓名:专业:班级:学号:指导老师:第1题:实验内容及目的:根据灰度图象得到一副彩色图像(变换函数自定),分别显示1幅彩色图象的R ,G ,B 分量(每个分量用8 bit 表示),和这幅彩色图象的H ,S ,I 分量(每个分量也各用8 bit 表示)。

通过本题学会灰度图和彩色图之间的转换,了解RGB 空间和HIS 空间之间的关系。

实验原理:图像由若干个像素点组成。

灰度图像矩阵的每个元素对应一个灰度值,伪彩色图像矩阵的每个元素对应R 、G 、B 分量的值。

将一幅灰度图变为一幅彩色图相当于在灰度值与RGB 分量之间建立函数关系。

HIS 彩色空间由H (色调)、S (饱和度)、I (辉度)分量构成。

RGB 分量和HIS 分量的对应关系如下:根据对应函数将RGB 分量转化为HIS 分量并显示,即可得到所需的HIS 分量图。

思路分析:用MA TLAB 处理图像首先要将灰度图像读入。

读入后将图像矩阵中的元素转化为uint8类型处理。

将灰度图变为彩色图就是在灰度值与R 、G 、B 分量之间建立关系,所以要先生成R 、G 、B 分量的矩阵,这就要知道原灰度图的大小(用size ()函数实现)。

建立R 、G 、B 分量的矩阵后,采用循环根据原图像的灰度值对其进行赋值。

最后用cat ()函数合并三个分量得到生成的彩色图。

读入彩色图像并转为uint8类型,根据彩色图像的构成将R 、G 、B 分量从图像矩阵中分量出来并显示。

显示图像的HIS 分量时,首先将图像转化为double 类型处理。

然后分离出RGB 分量,根据RGB 分量和HIS 分量之间的转化关系得到HIS 分量,此时的HIS 分量时double 类型,所以将这三个分量合并后转化为8bit 类型。

将转化后的矩阵再分离出HIS 分量即可得到8bit ⎩⎨⎧≤-≥=--+--+-=-=++=-.,2;, ],))(()()]()[(21[cos );,,min(31 ;3/)(21B G B G H B G B R G R B R G R B G R I S B G R I θπθθ类型的HIS分量图。

代码:clear all;close all;X=imread('fudiao.jpg'); %读入图像subplot(121);imshow(X);title('灰度图像'); %显示原始图像X=im2uint8(X); %将图像转化为int8类型[M,N]=size(X); %求得矩阵的维度%生成RGB矩阵R=zeros(M,N);G=zeros(M,N);B=zeros(M,N);%建立灰度值与RGB分量之间的变换关系for p=1:Mfor k=1:Nif(X(p,k)<128)R(p,k)=128;elseif(X(p,k)<192)R(p,k)=4*X(p,k)-511;elseR(p,k)=255;endif(X(p,k)<64)B(p,k)=255;elseif(X(p,k)<128)B(p,k)=511-4*X(p,k);elseB(p,k)=0;endif(X(p,k)<64)G(p,k)=4*X(p,k);elseif(X(p,k)<192)G(p,k)=255;elseG(p,k)=1023-4*X(p,k);endendendZ=cat(3,R,G,B); %合并三个分量Subplot(122);imshow(Z); %显示伪彩色图title('伪彩色图像');%%%%%%%%%%%%%%显示一幅图的RGB分量和HIS分量clear all;close all;X=imread('tower.jpg');X=im2uint8(X); %将图像转化为int8类型figure(1);title('原始图像'); %显示原始图像imshow(X);XR=X(:,:,1); %分离出RGB分量XG=X(:,:,2);XB=X(:,:,3);figure(2);subplot(2,3,1);imshow(XR);%显示RGB分量图title('R分量');subplot(2,3,2);imshow(XG);title('G分量');subplot(2,3,3);imshow(XB);title('B分量');%HSI分量X=im2double(X);XR=X(:,:,1);XG=X(:,:,2);XB=X(:,:,3);%根据RGB分量和HIS分量间的变换关系求得HIS分量num=0.5*((XR-XG)+(XR-XB));den=sqrt((XR-XG).^2+(XR-XB).*(XG-XB)); theta=acos(num./(den+eps));if(XG>=XB)H=theta;elseH=2*pi-theta;endI=(XR+XG+XB)./3;num=min(min(XR,XG),XB);den=XR+XG+XB;den(den==0)=eps;S=1-3.*num./den;M=cat(3,H,S,I);%合并三个分量M=im2uint8(M);%将图像转化为8bit类型%分离HIS分量H=M(:,:,1);S=M(:,:,2);I=M(:,:,3);subplot(2,3,4);imshow(log(H)+1,[]);%显示HI S分量图title('H分量');subplot(2,3,5);imshow(S);title('S分量');subplot(2,3,6);imshow(I);title('I分量');调试:灰度图像伪彩色图像R 分量G 分量B 分量H 分量S 分量I 分量第2题:实验内容及目的:编程实现图像傅立叶变换,并且显示图像的频谱图,编程实现傅里叶变换的,分离性,平移,旋转,卷积性质。

通过本题了解图像傅立叶变换的性质和作用。

实验原理:离散傅立叶变换是将图像从时域转化到频域的一种方法。

二维离散傅立叶变换的公式如下:由它的定义式可以看出二维离散傅立叶变换具有可分离性。

F(u,v)=∑x ∑y f(x,y)exp[- j2π(ux/M+vy/N)]=∑x {∑y f(x,y) exp[- j2πvy/N]} exp[- j2πux/M]=∑x F(x,v) exp[- j2πux/M]其中F(x,v)=∑y f(x,y) exp(- j2πvy/N)。

根据上式推出,计算一幅图像的二维傅里叶变换可以先计算行变换再计算列变换。

由定义式可推出:f(x,y)exp[j2π(u0x+v0y)/N] ⇔ F(u-u0,v-v0)1100(,)(,)exp[2()],0,1,2,..,1,0,1,2,..,1N M x y ux vy F u v f x y j u M v N M N π--===-+=-=-∑∑11001(,)(,)exp[2()],0,1,2,..,1,0,1,2,..,1M N u v ux vy f x y F u v j x M y N NM M Nπ--===+=-=-∑∑f(x-x0,y-y0) ⇔ F(u,v)exp[-j2π(ux0+vy0)/N]证明傅立叶变换的平移性可以将图像矩阵与一指数相乘再对其进行傅里叶变换,观察结果是否是将原图像的傅立叶变换移动到新的位置。

对f(x,y)的平移不影响其傅里叶变换的幅值。

傅里叶变换具有旋转性,即时域图旋转某一角度后,其傅里叶变换也旋转同样的角度。

傅里叶变换的卷积性:如果f(x,y)⇔F(u,v), g(x,y) ⇔ G(u,v)则f(x,y)*g(x,y) ⇔ F(u,v)G(u,v)思路分析:读入所要处理的图像,用fft2函数对其进行傅立叶变换,显示变换后的频谱图以及幅度谱。

验证傅立叶变换的可分离性。

先对图像做一次一维傅里叶变换,对得到的结果再进行一次一维傅立叶变换,得到的结果与图像的二维傅立叶变换比较。

验证傅立叶变换的平移性。

先给图像补零以便于后面平移。

我在图像的右侧补32列0。

将图像右移16列,对其进行傅立叶变换并与变换前的幅度谱进行对比。

验证傅立叶变换的旋转性。

将时域图旋转90度后进行傅立叶变换,得到的结果与旋转前的幅度谱比较。

验证傅立叶变换的卷积性。

由于图像太大,所以我自己产生了一个64×64的黑白图,用conv2函数让这个黑白图与自身做卷积,得到的结果再做傅立叶变换,画出得到的频谱图。

将这个黑白图补零成128×128的图,对其进行傅立叶变换,再把得到的结果与自身相乘,画出得到的频谱图。

比较卷积的傅立叶变换频谱图和傅立叶变换的乘积的频谱图。

代码:clear all;clc;I=imread('girl.bmp'); %读入图像I=im2double(I);Ifft=fft2(I); %对图像做离散傅里叶变换figure(1);imshow(I);title('原始图像'); %显示原始图像figure(2);subplot(121);imshow(Ifft);title('频谱图'); %显示离散傅立叶变换后的频谱图subplot(122);Ifft=fftshift(Ifft);imshow(log(abs(Ifft)+1),[]);title('幅度谱'); %显示变换后的幅度谱%可分离性Ifft=fft(fft(I).').';figure(3);subplot(221);imshow(Ifft);title('进行两次一维变换后的频谱图');subplot(222);Ifft=fftshift(Ifft);imshow(log(abs(Ifft)+1),[]);title('进行两次一维变换后的幅度谱');Ifft=fft2(I);subplot(223);imshow(Ifft);title('二维傅立叶变换后的频谱图');subplot(224);Ifft=fftshift(Ifft);imshow(log(abs(Ifft)+1),[]);title('二维傅立叶变换后的幅度谱');%平移性[M N]=size(I);A=zeros(M,32);I2=[I A];figure(5);subplot(221);imshow(I2);title('原始图');I2=fft2(I2);fft_I2=fftshift(I2);subplot(222);imshow(log(abs(fft_I2)+1),[]);title('原幅度谱');B=zeros(M,16);I3=[B I B];subplot(223);imshow(I3);title('平移后的图');I3=fft2(I3);fft_I3=fftshift(I3);subplot(224);imshow(log(abs(fft_I3)+1),[]);title('平移后的幅度谱'); %旋转性X=imrotate(I,90);figure(6);imshow(X);title('旋转90度后的图像');Ifft=fft2(X);Ifft=fftshift(Ifft);figure(7);imshow(log(abs(Ifft)+1),[]);title('旋转90度后的幅度谱');%卷积性C=zeros(64,64);%生成图像矩阵C(25:45,25:45)=1;%给25行到45行,25列到45列的值赋1C_OUT=conv2(C,C);%C和C做卷积CFFT=fft2(C_OUT);%对生成的卷积做傅立叶变换figure(8);subplot(121);imshow(CFFT);%显示卷积的傅立叶变换title('卷积的傅立叶变换');%给图像矩阵补零D=zeros(128,128);%生成128×128的零矩阵D(1:64,1:64)=C;%零矩阵的左上角放置图像矩阵Dfft=fft2(D);%对补零后的图像做傅立叶变换DFFT2=Dfft.*Dfft;subplot(122);imshow(DFFT2);%显示傅立叶变换的乘积title('傅立叶变换的乘积');figure(9);subplot(121);imshow(C_OUT);title('卷积的时域图');subplot(122);imshow(ifft2(DFFT2));title('傅里叶变换乘积的时域图');原始图像频谱图幅度谱进行两次一维变换后的频谱图进行两次一维变换后的幅度谱二维傅立叶变换后的频谱图二维傅立叶变换后的幅度谱原始图原幅度谱平移后的图平移后幅度谱旋转90度后的图像旋转90度后的幅度谱卷积的傅立叶变换傅立叶变换的乘积卷积的时域图傅里叶变换乘积的时域图第3题:实验内容及目的:用直接灰度变换改变图像(求反,增强对比度,动态范围压缩,灰度切分),显示一副灰度图像的8个位面图。

相关文档
最新文档