《中南大学数字图像处理报告全部.doc》由会员分享,可在线阅读,更多相关《中南大学数字图像处理报告全部.doc(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数字图像处理实验报告目录实验一:数字图像基本操作及灰度调整1实验目的*12实验基本原理*13实验内容与要求*34. 实验具体实现*4实验二:数字图像的空间域滤波和频域滤波1实验目的*92实验基本原理*93实验内容与要求*124. 实验具体实现*14实验三:图像分割与边缘检测1实验目的*322实验基本原理*323实验内容与要求*344. 实验具体实现*35实验四:数学形态学及其应用1实验目的*392实验基本原理*393实验内容与要求*414. 实验具体实现*42实验一:数字图像基本操作及灰度调整1实验目的1) 掌握读、写图像的基本方法。2) 掌握MATLAB语言中图像数据与信息的读取方法。3)
2、理解图像灰度变换处理在图像增强的作用。4) 掌握绘制灰度直方图的方法,理解灰度直方图的灰度变换及均衡化的方法。2.实验原理1. 灰度变换灰度变换是图像增强的一种重要手段,它常用于改变图象的灰度范围及分布,是图象数字化及图象显示的重要工具。1) 图像反转灰度级范围为0, L-1的图像反转可由下式获得2) 对数运算:有时原图的动态范围太大,超出某些显示设备的允许动态范围,如直接使用原图,则一部分细节可能丢失。解决的方法是对原图进行灰度压缩,如对数变换:s = clog(1 + r),c为常数,r 03) 幂次变换:4) 对比拉伸:在实际应用中,为了突出图像中感兴趣的研究对象,常常要求局部扩展拉伸某
3、一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸:其对应的数学表达式为:2. 直方图均衡化灰度直方图的横坐标是灰度级,纵坐标是该灰度级出现的频度,它是图像最基本的统计特征。依据定义,在离散形式下, 用rk代表离散灰度级,用pr(rk)代表pr(r),并且有下式成立: 式中:nk为图像中出现rk级灰度的像素数,n是图像像素总数,而nk/n即为频数。直方图均衡化处理是以累积分布函数变换法为基础的直方图修正法。假定变换函数为 (a) Lena图像 (b) Lena图像的直方图图1.2 Lena图像及直方图当灰度级是离散值时,可用频数近似代替概率值,即式中:l是灰度级的总数目,p
4、r(rk)是取第k级灰度值的概率,nk是图像中出现第k级灰度的次数,n是图像中像素总数。所以积分可以表示为下列累计分布函数(cumulative distribution function, CDF)3、实验内容与要求复制若干图形文件(如forest.tif和b747.jpg)至MATLAB目录下work文件夹中。1. 熟悉MATLAB语言中对图像数据读取,显示等基本函数特别需要熟悉下列命令:熟悉imread()函数、imwrite()函数、size()函数、Subplot()函数、Figure()函数。1) 将MATLAB目录下work文件夹中的forest.tif图像文件读出.用到imre
5、ad,imfinfo等文件,观察一下图像数据,了解一下数字图像在MATLAB中的处理就是处理一个矩阵。将这个图像显示出来(用imshow)。尝试修改map颜色矩阵的值,再将图像显示出来,观察图像颜色的变化。2) 将MATLAB目录下work文件夹中的b747.jpg图像文件读出,用rgb2gray()将其转化为灰度图像,记为变量B。2. 图像灰度变换处理在图像增强的作用读入不同情况的图像,请自己编程和调用Matlab函数用常用灰度变换函数对输入图像进行灰度变换,比较相应的处理效果。3. 绘制图像灰度直方图的方法,对图像进行均衡化处理 请自己编程和调用Matlab函数完成如下实验。1) 显示B的
6、图像及灰度直方图,可以发现其灰度值集中在一段区域,用imadjust函数将它的灰度值调整到0,1之间,并观察调整后的图像与原图像的差别,调整后的灰度直方图与原灰度直方图的区别。2) 对B进行直方图均衡化处理,试比较与源图的异同。3) 对B进行如图所示的分段线形变换处理,试比较与直方图均衡化处理的异同。图1.1 分段线性变换函数4. 实验具体实现1. 熟悉MATLAB语言中对图像数据读取,显示等基本函数1) 文件读取与信息显示:load trees;X,map=imread(forest.tif);subimage(X,map);I=imread(forest.tif);imshow(I);im
7、finfo(forest.tif);ans = Filename: F:MATLABR2007atoolboximagesimdemosforest.tif FileModDate: 04-Dec-2000 13:57:58 FileSize: Format: tif FormatVersion: Width: 447 Height: 301 BitDepth: 8 ColorType: indexed FormatSignature: 73 73 42 0 ByteOrder: little-endian NewSubFileType: 0 BitsPerSample: 8 Compress
8、ion: PackBits PhotometricInterpretation: RGB Palette StripOffsets: 17x1 double SamplesPerPixel: 1 RowsPerStrip: 18 StripByteCounts: 17x1 double XResolution: 72 YResolution: 72 ResolutionUnit: Inch Colormap: 256x3 double PlanarConfiguration: Chunky TileWidth: TileLength: TileOffsets: TileByteCounts:
9、Orientation: 1 FillOrder: 1 GrayResponseUnit: 0.0100 MaxSampleValue: 255 MinSampleValue: 0 Thresholding: 1 ImageDescription: Carmanah Ancient Forest, British Columbia, Canada2) map颜色矩阵的修改X,map=imread(forest.tif);map1=map+map;subimage(X,map1); 新的颜色矩阵值变成原文件的2倍,图像明显变亮,颜色的R、G、B值增强。3) 灰度图像的转化RGB=imread(b
10、747.jpg);B=rgb2gray(RGB);2. 图像灰度变换处理在图像增强的作用g1=imadjust(I,0 1,1 0);g2=imcomplement(g1);g3=im2uint8(mat2gray(log(1+double(I);图中对图像文件进行了基本的灰度变换,包括用式s = L 1 r 得到的图像反转,对反转图像的求补,以及对数变换的采用。3. 绘制图像灰度直方图的方法,对图像进行均衡化处理1) 图像灰度直方图的显示与灰度调整imhist(B);J = imadjust(B,0 1);imhist(J);subimage(J); 在原始图像中,直方图的组成成分集中在高灰
11、度等级(亮)一侧,且图像灰度范围为0,1,故将灰度值调整到0,1间后直方图无明显变化。类似的,将灰度值调整到0,0.5时,整个图像变暗,直方图横向压缩1倍。2) 对B进行直方图均衡化处理,试比较与原图的异同。I = imread(pout.tif); J,T = histeq(I); figure,plot(0:255)/255,T);原图像中目标物的灰度主要集中于高亮度部分,而且象素总数较多,所占的灰度等级较少。经过直方图均衡后,目标物的所占的灰度等级得到扩展,对比度加强,使整个图像得到增强。数字图像均衡化后,其直方图并非完全均匀分布,这是因为图像的象素个数和灰度等级均为离散值,而且均衡化使
12、灰度级并归。因此,均衡化后,其直方图并非完全均匀分布。3) 对B进行如图所示的分段线形变换处理,试比较与直方图均衡化处理的异同。x1=0:0.01:0.125;x2=0.125:0.01:0.75;x3=0.75:0.01:1;y1=2*x1;y2=0.25+0.6*(x2-0.125);y3=0.625+1.5*(x3-0.75);x=x1,x2,x3;y=y1,y2,y3;subplot(2,2,4);plot(x,y);通过在所关心范围内为所有灰度值指定一个较高值,而为其他灰度指定一个较低值,或将所需范围变亮,分段线性变换可提高图像中特定灰度范围的亮度,常用于图像特征值的提取。这里将原始
13、图像位于0.125,0.75间的灰度值调低,放大其余的灰度值,突出显示图像低频域和高频域的部分。实验二:数字图像的空间域滤波和频域滤波1实验目的1. 掌握图像滤波的基本定义及目的。2. 理解空间域滤波的基本原理及方法。3. 掌握进行图像的空域滤波的方法。4. 掌握傅立叶变换及逆变换的基本原理方法。5. 理解频域滤波的基本原理及方法。6. 掌握进行图像的频域滤波的方法。2实验基本原理1. 空间域增强空间域滤波是在图像空间中借助模板对图像进行领域操作,处理图像每一个像素的取值都是根据模板对输入像素相应领域内的像素值进行计算得到的。空域滤波基本上是让图像在频域空间内某个范围的分量受到抑制,同时保证其
14、他分量不变,从而改变输出图像的频率分布,达到增强图像的目的。空域滤波一般分为线性滤波和非线性滤波两类。线性滤波器的设计常基于对傅立叶变换的分析,非线性空域滤波器则一般直接对领域进行操作。各种空域滤波器根据功能主要分为平滑滤波器和锐化滤波器。平滑可用低通来实现,平滑的目的可分为两类:一类是模糊,目的是在提取较大的目标前去除太小的细节或将目标内的小肩端连接起来;另一类是消除噪声。锐化可用高通滤波来实现,锐化的目的是为了增强被模糊的细节。结合这两种分类方法,可将空间滤波增强分为四类:线性平滑滤波器(低通)非线性平滑滤波器(低通)线性锐化滤波器(高通)非线性锐化滤波器(高通)空间滤波器都是基于模板卷积
15、,其主要工作步骤是:1) 将模板在图中移动,并将模板中心与图中某个像素位置重合;2) 将模板上的系数与模板下对应的像素相乘;3) 将所有乘积相加;4) 将和(模板的输出响应)赋给图中对应模板中心位置的像素。2. 平滑滤波器1) 线性平滑滤波器线性低通平滑滤波器也称为均值滤波器,这种滤波器的所有系数都是正数,对33的模板来说,最简单的是取所有系数为1,为了保持输出图像任然在原来图像的灰度值范围内,模板与象素邻域的乘积都要除以9。MATLAB 提供了fspecial 函数生成滤波时所用的模板,并提供filter2 函数用指定的滤波器模板对图像进行运算。函数fspecial 的语法格式为:h=fsp
16、ecial(type);h=fspecial(type,parameters);其中参数type 指定滤波器的种类,parameters 是与滤波器种类有关的具体参数。表2.1 MATLAB中预定义的滤波器种类MATLAB 提供了一个函数imnoise 来给图像增添噪声,其语法格式为:J=imnoise(I,type);J=imnoise(I,type,parameters);参数type 指定噪声的种类,parameters 是与噪声种类有关的具体参数。参数的种类见表2.2。表2.2 噪声种类及参数说明2) 非线性平滑滤波器中值滤波器是一种常用的非线性平滑滤波器,其滤波原理与均值滤波器方法类
17、似,但计算的非加权求和,而是把领域中的图像的象素按灰度级进行排序,然后选择改组的中间值作为输出象素值。MATLAB 提供了medfilt2 函数来实现中值滤波,其语法格式为:B=medfilt2(A,m n);B=medfilt2(A);其中,A 是原图象,B 是中值滤波后输出的图像。m n指定滤波模板的大小,默认模板为33。3. 锐化滤波器图像平滑往往使图像中的边界、轮廓变得模糊,为了减少这类不利效果的影响,需要利用图像锐化技术,使图像的边缘变得清晰。1) 线性锐化滤波器线性高通滤波器是最常用的线性锐化滤波器。这种滤波器的中心系数都是正的,而周围的系数都是负的,所有的系数之和为0。对33 的
18、模板来说,典型的系数取值为:-1 -1 -1;-1 8 -1;-1 -1 -1事实上这是拉普拉斯算子。语句h=-fspecial(laplacian,0.5)得到的拉普拉斯算子为:h =-0.3333 -0.3333 -0.3333-0.3333 2.6667 -0.3333-0.3333 -0.3333 -0.33332) 非线性锐化滤波邻域平均可以模糊图像,因为平均对应积分,所以利用微分可以锐化图像。图像处理中最常用的微分方法是利用梯度。常用的空域非线性锐化滤波微分算子有sobel 算子、prewitt 算子、log 算子等。4. 频域增强频域增强是利用图像变换方法将原来的图像空间中的图像
19、以某种形式转换到其他空间中,然后利用该空间的特有性质方便地进行图像处理,最后再转换回原来的图像空间中,从而得到处理后的图像。频域增强的主要步骤是:选择变换方法,将输入图像变换到频域空间。在频域空间中,根据处理目的设计一个转移函数,并进行处理。将所得结果用反变换得到增强的图像。常用的频域增强方法有低通滤波和高通滤波。5. 低通滤波图像的能量大部分集中在幅度谱的低频和中频部分,而图像的边缘和噪声对应于高频部分。因此能降低高频成分幅度的滤波器就能减弱噪声的影响。由卷积定理,在频域实现低通滤波的数学表达式:G(u,v) =H(u,v)F(u,v)1) 理想低通滤波器(ILPF)2) 巴特沃斯低通滤波器
20、(BLPF)3) 指数型低通滤波器(ELPF)6. 高通滤波由于图像中的细节部分与其高频分量相对应,所以高通滤波可以对图像进行锐化处理。高通滤波与低通滤波相反,它是高频分量顺利通过,使低频分量受到削弱。高通滤波器和低通滤波器相似,其转移函数分别为:1) 理想高通滤波器(IHPF)2) 巴特沃斯高通滤波器(BLPF)3) 指数型高通滤波器(ELPF)图像经过高通滤波处理后,会丢失许多低频信息,所以图像的平滑区基本上会消失。所以,可以采用高频加强滤波来弥补。高频加强滤波就是在设计滤波传递函数时,加上一个大于0小于1的常数c,即:H(u,v) =H(u,v)+c3实验内容与要求1. 平滑空间滤波:1
21、) 读出eight.tif这幅图像,给这幅图像分别加入椒盐噪声和高斯噪声后并与前一张图显示在同一图像窗口中。2) 对加入噪声图像选用不同的平滑(低通)模板做运算,对比不同模板所形成的效果,要求在同一窗口中显示。3) 使用函数imfilter时,分别采用不同的填充方法(或边界选项,如零填充、replicate、symmetric、circular)进行低通滤波,显示处理后的图像。4) 运用for循环,将加有椒盐噪声的图像进行10次,20次均值滤波,查看其特点,显示均值处理后的图像(提示:利用fspecial函数的average类型生成均值滤波器)。5) 对加入椒盐噪声的图像分别采用均值滤波法,和
22、中值滤波法对有噪声的图像做处理,要求在同一窗口中显示结果。6) 自己设计平滑空间滤波器,并将其对噪声图像进行处理,显示处理后的图像。2. 锐化空间滤波1) 读出blurry_moon.tif这幅图像,采用33的拉普拉斯算子w = 1, 1, 1; 1 8 1; 1, 1, 1对其进行滤波。2) 编写函数w = genlaplacian(n),自动产生任一奇数尺寸n的拉普拉斯算子,如55的拉普拉斯算子w = 1 1 1 1 1 1 1 1 1 1 1 1 -24 1 1 1 1 1 1 1 1 1 1 1 13) 分别采用55,99,1515和2525大小的拉普拉斯算子对blurry_moon.
23、tif进行锐化滤波,并利用式完成图像的锐化增强,观察其有何不同,要求在同一窗口中显示。4) 采用不同的梯度算子对blurry_moon.tif进行锐化滤波,并比较其效果。5) 自己设计锐化空间滤波器,并将其对噪声图像进行处理,显示处理后的图像;3. 傅立叶变换1) 读出woman.tif这幅图像,对其进行快速傅立叶变换,分别显示其幅度图像和相位图像。仅对相位部分进行傅立叶反变换后查看结果图像。2) 仅对幅度部分进行傅立叶反变换后查看结果图像。3) 将图像的傅立叶变换F置为其共轭后进行反变换,比较新生成图像与原始图像的差异。4. 平滑频域滤波1) 设计理想低通滤波器、巴特沃斯低通滤波器和高斯低通
24、滤波器,截至频率自选,分别给出各种滤波器的透视图。2) 读出test_pattern.tif这幅图像,分别采用理想低通滤波器、巴特沃斯低通滤波器和高斯低通滤波器对其进行滤波(截至频率自选),再做反变换,观察不同的截止频率下采用不同低通滤波器得到的图像与原图像的区别,特别注意振铃效应。(提示:1)在频率域滤波同样要注意到填充问题;2)注意到(-1)x+y;)5. 锐化频域滤波1) 设计理想高通滤波器、巴特沃斯高通滤波器和高斯高通滤波器,截至频率自选,分别给出各种滤波器的透视图。2) 读出test_pattern.tif这幅图像,分别采用理想高通滤波器、巴特沃斯高通滤波器和高斯高通滤波器对其进行滤
25、波(截至频率自选),再做反变换,观察不同的截止频率下采用不同高通滤波器得到的图像与原图像的区别。4. 实验具体实现1. 平滑空间滤波:1) 读出eight.tif这幅图像,给这幅图像分别加入椒盐噪声和高斯噪声后并与前一张图显示在同一图像窗口中。 I=imread(eight.tif);imshow(I);J = imnoise(I,salt & pepper,0.05); %noise density=0.05K= imnoise(I,gaussian,0.01,0.01); 图2.1 初始图像及椒盐噪声图像、高斯噪声污染图2) 对加入噪声图像选用不同的平滑(低通)模板做运算,对比不同模板所形
26、成的效果,要求在同一窗口中显示。H = fspecial(sobel);Sobel = imfilter(I,H,replicate);H = fspecial(laplacian,0.4);lap = imfilter(I,H,replicate);H = fspecial(gaussian,3 3,0.5);gaussian = imfilter(I,H,replicate);图2.2 原图像及各类低通滤波处理图像3) 使用函数imfilter时,分别采用不同的填充方法(或边界选项,如零填充、replicate、symmetric、circular)进行低通滤波,显示处理后的图像。orig
27、inalRGB = imread(peppers.png);h = fspecial(motion, 50, 45); %motion blurredfilteredRGB = imfilter(originalRGB, h);boundaryReplicateRGB = imfilter(originalRGB, h, replicate);boundary0RGB = imfilter(originalRGB, h, x);boundary0RGB = imfilter(originalRGB, h, 0);boundarysymmetricRGB = imfilter(originalR
28、GB, h, symmetric);boundarycircularRGB = imfilter(originalRGB, h, circular);图2.3 原图像及运动模糊图像图2.4 函数imfilter各填充方式处理图像4) 运用for循环,将加有椒盐噪声的图像进行10次,20次均值滤波,查看其特点,显示均值处理后的图像。J = imnoise(I,salt & pepper,0.05);h=fspecial(average); %Averaging FilteringJ1=imfilter(J,h);for i=1:10J1=imfilter(J,h);endfor i=1:20J2
29、=imfilter(J,h); 图2.5 椒盐噪声污染图像经10次、20次均值滤波图像 由图2.5可得,20次滤波后的效果明显好于10次滤波,但模糊程度也更强。5) 对加入椒盐噪声的图像分别采用均值滤波法,和中值滤波法对有噪声的图像做处理,要求在同一窗口中显示结果。h=fspecial(average); %Averaging FilteringJ1=imfilter(J,h);J2=medfilt2(J); %Median Filtering图2.6 椒盐噪声污染图像及均值、中值滤波图像 从图2.6中可以看出,对于椒盐噪声污染的图像处理,中值滤波效果要明显好于均值滤波。经均值滤波器处理后的图
30、像比均值滤波器中结果图像更加模糊。6) 设计平滑空间滤波器,并将其对噪声图像进行处理,显示处理后的图像。domain=0 0 8 0 0; 0 0 8 0 0; 8 8 8 8 8; 0 0 8 0 0; 0 0 8 0 0;K1= ordfilt2(J,5,domain);图2.7 椒盐噪声污染图像及5*5平滑滤波器掩模掩模值为w=1/25*1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1图2.8 椒盐噪声污染图像及5*5平滑滤波器掩模掩模值为w= 0 0 8 0 0;0 0 8 0 0;8 8 8 8 8; 0 0 8 0 0;0 0 8
31、0 02. 锐化空间滤波1) 采用33的拉普拉斯算子w = 1, 1, 1; 1 8 1; 1, 1, 1滤波I=imread(blurry_moon.tif);T=double(I);subplot(1,2,1),imshow(T,);title(Original Image);w =1,1,1;1,-8,1;1,1,1;K=conv2(T,w,same);图2.9 初始图像与拉普拉斯算子锐化图像2) 编写函数w = genlaplacian(n),自动产生任一奇数尺寸n的拉普拉斯算子,如55的拉普拉斯算子:w = 1 1 1 1 1 1 1 1 1 1 1 1 -24 1 1 1 1 1
32、1 1 1 1 1 1 1function w = genlaplacian(n)%Computes the Laplacian operatorw = ones(n);x = ceil(n/2);w(x, x) = -1 * (n * n - 1);3) 分别采用55,99,1515和2525大小的拉普拉斯算子对blurry_moon.tif进行锐化滤波,并利用式完成图像的锐化增强,观察其有何不同,要求在同一窗口中显示。不同尺寸拉普拉斯算子滤波以及图像增强w1 = genlaplacian(5);I=imread(blurry_moon.tif);T=double(I);K=conv2(T,
33、w1,same);J=T-K;图2.10 初始图像与不同拉普拉斯算子锐化图像图像锐化的实质是将原图像与梯度信息叠加,相当于对目标物的边缘进行了增强。图2.11 拉普拉斯算子锐化与锐化增强图像4) 采用不同的梯度算子对blurry_moon.tif进行锐化滤波,并比较其效果I,map=imread(blurry_moon.tif);I=double(I);Gx,Gy=gradient(I); % gradient calculationG=sqrt(Gx.*Gx+Gy.*Gy); % matrix J1=G; % gradient1imshow(J1,map); J2=I; % gradient
34、2K=find(G=7);J2(K)=G(K);imshow(J2,map); J3=I; % gradient3K=find(G=7);J3(K)=255;imshow(J3,map); J4=I; % gradient4K=find(G=7);J4(K)=255;imshow(J4,map); J5=I; % gradient5K=find(G=7);J5(Q)=255;imshow(J5,map);图2.12 原始图像与不同梯度子锐化图像 作为二阶微分算子,拉普拉斯变换在图像细节的增强处理上有明显的优点,但会产生更多的噪声。梯度变换在灰度变化区域的响应更强,但对噪声和细节的响应比拉普拉斯
35、变换弱。5) 自己设计锐化空间滤波器,并将其对噪声图像进行处理,显示处理后的图像;图2.13 原始图像与不同边缘锐化图像3. 傅立叶变换1) 读出woman.tif这幅图像,对其进行快速傅立叶变换,分别显示其幅度图像和相位图像。domain=8 8 0 8 8; 8 8 0 8 8; 0 0 0 0 0; 8 8 0 8 8; 8 8 0 8 8;K1= ordfilt2(J,5,domain);F=imread(woman.tif);F1=fft2(F);F2=log(1+abs(F1); %amplitude spectrumF3=fftshift(F1);imshow(log(1+abs
36、(F3),);F4=angle(F1); %phase spectrum图2.14 原始图像与快速傅立叶变换图像2) 仅对相位部分进行傅立叶反变换后查看结果图像。F1=fft2(F);i=sqrt(-1);f2=ifft2(exp(i*angle(F1);imshow(real(f2),);图2.15 原始图像与对全部信息进行傅立叶逆变换结果图2.16 仅对相位信息进行傅立叶逆变换结果相位谱决定了图像信号中各频率分量的位置。3) 仅对幅度部分进行傅立叶反变换后查看结果图像。f1=ifft2(abs(F1);imshow(log(1+abs(f1),);图2.17 仅对幅度信息进行傅立叶逆变换结
37、果4) 将图像的傅立叶变换F置为其共轭后进行反变换,比较新生成图像与原始图像的差异。F1=fft2(F);F2=log(1+abs(F1); %amplitude spectrumF3=fftshift(F1);F4=angle(F1); %phase spectrumF5=-F4 F6= double(F3*exp(F4); %the complex conjugate of the fourier transform F7=ifft2(F6); %inverse fourier transformimshow(real(F7),);图2.18 共轭傅立叶逆变换结果傅立叶变换的相位谱为对称的
38、,原变换与其共轭变换间仅频率谱互为相反。4. 平滑频域滤波1) 设计理想低通滤波器、巴特沃斯低通滤波器和高斯低通滤波器理想低通滤波器I=imread(test_pattern.tif);f=double(I); % chage into double as MATLAB doesnt suppor calculation % of image in unsigned int typeg=fft2(f); % fourier transformg=fftshift(g); % zero-frequency area centralizedM,N=size(g);d0=100; %cutoff f
39、requencym=fix(M/2); n=fix(N/2);for i=1:M for j=1:N d=sqrt(i-m)2+(j-n)2); if(d=d0) h=1; else h=0; end result(i,j)=h*g(i,j); endendresult=ifftshift(result);J1=ifft2(result);J2=uint8(real(J1);imshow(J2) 巴特沃斯低通滤波器(二阶)I=imread(test_pattern.tif);f=double(I); g=fft2(f); g=fftshift(g); M,N=size(g);nn=2; % 2-grade But