matlab数字图像处理第7章空间域滤波

上传人:M****1 文档编号:570672188 上传时间:2024-08-05 格式:PPT 页数:70 大小:4.37MB
返回 下载 相关 举报
matlab数字图像处理第7章空间域滤波_第1页
第1页 / 共70页
matlab数字图像处理第7章空间域滤波_第2页
第2页 / 共70页
matlab数字图像处理第7章空间域滤波_第3页
第3页 / 共70页
matlab数字图像处理第7章空间域滤波_第4页
第4页 / 共70页
matlab数字图像处理第7章空间域滤波_第5页
第5页 / 共70页
点击查看更多>>
资源描述

《matlab数字图像处理第7章空间域滤波》由会员分享,可在线阅读,更多相关《matlab数字图像处理第7章空间域滤波(70页珍藏版)》请在金锄头文库上搜索。

1、matlabmatlab数字图像处理数字图像处理第第7 7章章- -空间域滤波空间域滤波学习重点图像平滑图像平滑图像锐化图像锐化中值滤波中值滤波2学习内容学习内容7.1 7.1 引言引言7.2 7.2 线性空间滤波线性空间滤波7.3 7.3 非线性空间滤波非线性空间滤波31空间域滤波增强定义:空间域滤波增强采用模板处理方法对图像进行滤波,去除图像噪声或增强图像的细节。模板本身被称为空间滤波器7.1 引言4 空域滤波是将邻域内的图像像素值同对应的与邻域有相同维数的子图像值相作用 子图像亦称作:filter(滤波器)、 mask(掩模)、 kernel(核)、 template(模板)、 wind

2、ow(窗)52 62 73 平滑和锐化滤波器平滑和锐化滤波器模糊处理:去除图像中一些不重要的细节模糊处理:去除图像中一些不重要的细节减少噪声减少噪声平滑空间滤波器的作用:平滑空间滤波器的作用:83 平滑和锐化滤波器平滑和锐化滤波器线性滤波器:均值滤波器线性滤波器:均值滤波器非线性滤波器非线性滤波器 最大值滤波器最大值滤波器 中值滤波器中值滤波器 最小值滤波器最小值滤波器平滑空间滤波器的分类:平滑空间滤波器的分类:9突出图像中的细节,增强了被模糊的细节;突出图像中的细节,增强了被模糊的细节;印刷中的细微层次强调。弥补扫描对图像的钝化;印刷中的细微层次强调。弥补扫描对图像的钝化;超声探测成像,分辨

3、率低,边缘模糊,通过锐化来改超声探测成像,分辨率低,边缘模糊,通过锐化来改善善图像识别中,分割前的边缘提取图像识别中,分割前的边缘提取锐化处理过度处理的钝化,曝光不足的图像锐化处理过度处理的钝化,曝光不足的图像尖端武器的目标识别、定位尖端武器的目标识别、定位锐化空间滤波器的作用:锐化空间滤波器的作用:104 相关和卷积相关和卷积114 相关和卷积相关和卷积相关是指掩模相关是指掩模w w按下页图所示的方式在图像按下页图所示的方式在图像f f中移动的中移动的过程过程卷积是相同的过程,只是在图像中移动卷积是相同的过程,只是在图像中移动w w前,要将前,要将w w旋旋转转180180度。度。若函数对称

4、移动,则卷积和相关操作会产生相同的结若函数对称移动,则卷积和相关操作会产生相同的结果果12137.2线性空间滤波线性空间滤波1 imfilter实现线性空间滤波函数的语法函数的语法g=imfilter (f, w, filtering_mode,boundary_option , size_options )f是输入图像,是输入图像,w是滤波掩模,是滤波掩模,g为滤波结果为滤波结果filtering_mode制定滤波过程中是使用相关制定滤波过程中是使用相关(corr)还是卷积)还是卷积(conv)boundary_option用于处理边界填充零问题,边界用于处理边界填充零问题,边界的大小由滤波

5、器的大小确定。的大小由滤波器的大小确定。size_options 可以是可以是same或或full14filtering_mode:相关(:相关(corr),),该值是默认值该值是默认值,卷积,卷积(conv)boundary_option:P 输入图像的边界通过用值输入图像的边界通过用值p(无引号无引号)来填充来扩展。来填充来扩展。 P的默认值是的默认值是0replicate 图像大小通过图像大小通过复制外边界的值复制外边界的值来扩展来扩展symmetric图像大小通过图像大小通过镜像反射镜像反射其边界来扩展其边界来扩展circular图像大小通过将图像看成是一个二维图像大小通过将图像看成是

6、一个二维 周期周期 函数的一个周期来扩展函数的一个周期来扩展15size_options :full 输出图像的大小与被扩展图像的大小相同输出图像的大小与被扩展图像的大小相同same 输出图像的大小与输入图像的大小相同。输出图像的大小与输入图像的大小相同。该值该值为默认值为默认值162 imfilter通用语法g=imfilter (f, w, replicate )对旋转过的滤波器执行相关操作与对原始滤波器对旋转过的滤波器执行相关操作与对原始滤波器进行卷积操作是相同的;进行卷积操作是相同的;若滤波器关于其中心对称,则两个选项将产生同若滤波器关于其中心对称,则两个选项将产生同样的结果样的结果1

7、7在使用预先旋转的滤波器或对称的滤波器时,希望执行相关,就有两种方法:第一: g=imfilter(f, w, conv, replicate)第二:使用函数rot90(w,2), 将图像旋转180,然后使用g=imfilter(f, w, replicate)18n滤波后的图像的每个元素使用双精度浮点算术进行计算。然而,imfilter会将输出图像转换为与输入图像相同的类型。n若f是一个整数数组,则输出中超过整型范围的元素将被截断,且小数部分会四舍五入。n若结果要求更高的精度,则f需要在使用函数imfilter之前利用im2double或double转换为double类型。19例子:使用函数

8、例子:使用函数imfilterf是一副是一副double类型图像,大小为类型图像,大小为512*512像素像素20f=zeros(512);f(1:256,256:512)=1;f(256:512,1:256)=1;imshow(f)用一个大小为用一个大小为31*31的简单滤波器的简单滤波器W =ones(31);该滤波器近似为一个平均滤波器该滤波器近似为一个平均滤波器21nw=ones(31);ngd=imfilter(f,w);nfigure()nimshow(gd,)gc=imfilter(f,w,circular);figure()imshow(gc,)22ngr=imfilter(f

9、,w,replicate);nfigure()nimshow(gr,)gs=imfilter(f,w,symmetric);figure()imshow(gs,)23nf8=im2uint8(f);ng8r=imfilter(f8,nw,replicate);nfigure,imshow(g8r,)解决方法归一化系数,解决方法归一化系数,w0= 1/(31.2)*w或是以或是以im2double格式输入数据格式输入数据243 图像处理工具箱的标准线性空间滤波器图像处理工具箱的标准线性空间滤波器工具箱支持一些预定义的二维线性空间滤波器,可由工具箱支持一些预定义的二维线性空间滤波器,可由函数函数f

10、special来实现。来实现。用来生成滤波掩模用来生成滤波掩模w的函数的函数fspecial的语法为:的语法为: w=fspecial (type, parameters)type 表示滤波器类型表示滤波器类型parameters 进一步定义了指定的滤波器进一步定义了指定的滤波器25函数fspecial支持的空间滤波器1) fspecial (average, r c). 大小为r*c的一个矩形平均滤矩形平均滤波器波器。默认值为3*3.若由一个数来代替r c,则表示方形滤波器2) fspecial (disk, r). 一个圆形平均滤波器圆形平均滤波器(包含在2r+1大小的正方形内),半径为r

11、。默认半径为53) fspecial (gaussian, r c, sig). 一个大小为 r*c的高斯低高斯低通滤波器通滤波器,标准偏差为sig(正)。默认值为3*3和0.5.若由一个数来代替r c,则表示方形滤波器26函数fspecial支持的空间滤波器4) fspecial (log, r c, sig).一个大小为r*c的高斯高斯-拉普拉拉普拉斯(斯(loG)滤波器,)滤波器,标准偏差为sig(正)。默认值为5*5和0.5.若由一个数来代替r c,则表示方形滤波器5) fspecial (prewitt). 输出一个大小为3*3的prewitt掩模掩模wv,它近似于垂直梯度。水平梯度

12、掩模可以通过置换结果wh=wv获得6) fspecial (sobel).输出一个大小为3*3的sobel掩模掩模sv,它近似于垂直梯度。水平梯度掩模可以通过置换结果sh=sv获得273 均值滤波器均值滤波器283 均值滤波器均值滤波器左图是标准的像素平均值左图是标准的像素平均值右图是像素的加权平均,表明一些像素更为重要右图是像素的加权平均,表明一些像素更为重要293 均值滤波器均值滤波器30以模块运算系数表示即:31常用的模板:32均值滤波器均值滤波器 例例133均值滤波器均值滤波器 例例2344 锐化滤波器锐化滤波器微分滤波器的原理微分滤波器的原理35微分滤波器的原理微分滤波器的原理363

13、75 拉普拉斯算子拉普拉斯算子385 拉普拉斯算子拉普拉斯算子395 拉普拉斯算子拉普拉斯算子(2)4041锐化(拉普拉斯)滤波器锐化(拉普拉斯)滤波器 例例3f=imread(moon.tif);imshow(f)w4=fspecial(laplacian,0);w8=1,1,1;1,-8,1;1,1,1;f=im2double(f);g4=f-imfilter(f,w4,replicate);g8=f-imfilter(f,w8,replicate);imshow(f)figure,imshow(g4)figure,imshow(g8)42原原图图像像43使用中心为使用中心为-4的的拉普拉

14、斯滤波拉普拉斯滤波器增强后的图器增强后的图像像44使用中心为使用中心为-8的的拉普拉斯滤波拉普拉斯滤波器增强后的图器增强后的图像像456 梯度算子(非线性锐化滤波器)梯度算子(非线性锐化滤波器)466 梯度算子梯度算子47例:例: 梯度用于边缘增强梯度用于边缘增强48在图像的一阶导数运算中,一阶导数通常产生较在图像的一阶导数运算中,一阶导数通常产生较厚的边缘。厚的边缘。一阶导数对灰度阶跃有较强的响应。一阶导数对灰度阶跃有较强的响应。二阶导数对细微结构有较强的响应,如细线和孤二阶导数对细微结构有较强的响应,如细线和孤立点。立点。二阶导数在灰度级阶跃变化时产生双响应。二阶导数在灰度级阶跃变化时产生

15、双响应。二阶导数对线的响应比对阶跃的响应强,对点的二阶导数对线的响应比对阶跃的响应强,对点的响应比对线强。响应比对线强。导数的性质导数的性质497.3 非线性空间滤波非线性空间滤波1 ordfilt2实现非线性空间滤波实现非线性空间滤波ordfilt2函数可以生成统计排序(函数可以生成统计排序(order- statistic)滤)滤波器(也称为排序滤波器,波器(也称为排序滤波器,rank filter).他们都是非线性滤波器,其响应基于对图象邻域中他们都是非线性滤波器,其响应基于对图象邻域中所包含的像素进行排序,然后所包含的像素进行排序,然后使用排序结果确定的使用排序结果确定的值来替代领域中

16、的中心像素的值值来替代领域中的中心像素的值。502 统计排序滤波器统计排序滤波器是一种非线性滤波器是一种非线性滤波器基于滤波器所在图象区域中像素的排序,由排基于滤波器所在图象区域中像素的排序,由排序结果决定的值代替中心像素的值序结果决定的值代替中心像素的值分类:分类:最大值滤波器:用像素邻域内的最大值代替该像素最大值滤波器:用像素邻域内的最大值代替该像素中值滤波器:中值滤波器: 用像素邻域内的中间值代替该像素用像素邻域内的中间值代替该像素最小值滤波器:用像素邻域内的最小值代替该像素最小值滤波器:用像素邻域内的最小值代替该像素512 统计排序滤波器统计排序滤波器522 统计排序滤波器统计排序滤波

17、器533 中值滤波的原理中值滤波的原理54554 中值滤波的实现中值滤波的实现将模板区域内的像素排序,求出中间值将模板区域内的像素排序,求出中间值564 中值滤波的实现中值滤波的实现575 中值滤波的特点中值滤波的特点在去除噪声的同时,可以比较好地保留边的锐在去除噪声的同时,可以比较好地保留边的锐度和图像的细节(优于均值滤波器)度和图像的细节(优于均值滤波器)能够有效去除脉冲噪声:以黑白点叠加在图像能够有效去除脉冲噪声:以黑白点叠加在图像上上586 ordfilt2实现非线性空间滤波实现非线性空间滤波函数的语法函数的语法g=ordfilt2(f, order, domain )f是输入图像是输

18、入图像使用邻域的一组排列元素中的第使用邻域的一组排列元素中的第order个元素来替个元素来替代代f中的每个元素,而该邻域则由中的每个元素,而该邻域则由domain中的非零中的非零元素指定。元素指定。591)实现大小为)实现大小为m*n的最小滤波器的最小滤波器g=ordfilt2(f, 1, ones(m, n)1表示表示mn个样本中的第一个样本,个样本中的第一个样本, ones(m, n)创创建了一个元素值为建了一个元素值为1,大小为,大小为m*n的矩阵,表明的矩阵,表明邻域内的所有样本都将用于计算。邻域内的所有样本都将用于计算。在统计学术语中,最小滤波器(一组排序元素在统计学术语中,最小滤波

19、器(一组排序元素中的第一个样本值)称为第中的第一个样本值)称为第0个百分位。同样,个百分位。同样,第第100个百分位指的就是一组排序元素中的最后个百分位指的就是一组排序元素中的最后一个样本值,即第一个样本值,即第mn个样本。个样本。602)实现大小为)实现大小为m*n的最大滤波器的最大滤波器g=ordfilt2(f, m*n, ones(m, n)3)实现中值滤波器)实现中值滤波器数字图像处理中最著名的统计排序滤波器是中值数字图像处理中最著名的统计排序滤波器是中值滤波器,它对应的是第滤波器,它对应的是第50个百分位。个百分位。g=ordfilt2(f, median(1:m*n), ones(

20、m, n)median(1:m*n)简单地计算序列简单地计算序列1,2,m*n的中值。的中值。613)实现中值滤波器)实现中值滤波器基于实际应用中的重要性,工具箱提供一个二维基于实际应用中的重要性,工具箱提供一个二维中值滤波器函数:中值滤波器函数:g=medfilt2(f, m n, padopt)数组数组m n定义了一个大小为定义了一个大小为m*n的邻域,中值就在该邻的邻域,中值就在该邻域上计算;域上计算;Padopt指定了三个可能的边界填充选项之一:指定了三个可能的边界填充选项之一:zeros:默认值默认值symmetric :f按照镜像反射方式对称地沿其按照镜像反射方式对称地沿其边界扩展

21、边界扩展indexed:若若f是是double类图像,用类图像,用1来填充图像,来填充图像,否则以否则以0来填充图像。来填充图像。623)实现中值滤波器)实现中值滤波器g=medfilt2(f)使用一个大小为使用一个大小为3*3的邻域来计算中值,的邻域来计算中值,并用并用0来填充输入图像的边界来填充输入图像的边界63例:使用函数例:使用函数medfilt2进行中值滤波进行中值滤波中值滤波是降低图像椒盐噪声的有效工具中值滤波是降低图像椒盐噪声的有效工具f=imread(rice.png);figure,imshow(f);fn=imnoise(f,salt & pepper,0.2);figure,imshow(fn);gm=medfilt2(fn);figure,imshow(gm);gms=medfilt2(fn,symmetric);figure,imshow(gms);64(a)原图像原图像(b)添加椒盐噪的图像添加椒盐噪的图像65(c)默认中值滤默认中值滤波处理结果波处理结果(d)symmetric处理结果处理结果66例:最大值滤波器例:最大值滤波器67例:最小值滤波器例:最小值滤波器68小结1 掌握空间域滤波的定义掌握空间域滤波的定义2 掌握图像平滑和锐化处理掌握图像平滑和锐化处理3 掌握顺序滤波中的中值滤波掌握顺序滤波中的中值滤波69结束结束

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号