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

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

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

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

2、值滤波器 非线性滤波器最大值滤波器中值滤波器最小值滤波器平滑空间滤波器的分类:9突出图像中的细节,增强了被模糊的细节;印刷中的细微层次强调。弥补扫描对图像的钝化;超声探测成像,分辨率低,边缘模糊,通过锐化来改善图像识别中,分割前的边缘提取锐化处理过度处理的钝化,曝光不足的图像尖端武器的目标识别、定位锐化空间滤波器的作用:104 相关和卷积114 相关和卷积相关是指掩模w按下页图所示的方式在图像f中移动的 过程卷积是相同的过程,只是在图像中移动w前,要将w旋 转180度。若函数对称移动,则卷积和相关操作会产生相同的结 果12137.2线性空间滤波1 imfilter实现线性空间滤波 函数的语法g

3、=imfilter (f, w, filtering_mode, boundary_option , size_options )f是输入图像,w是滤波掩模,g为滤波结果filtering_mode制定滤波过程中是使用相关(corr )还是卷积(conv)boundary_option用于处理边界填充零问题,边界 的大小由滤波器的大小确定。size_options 可以是same或full14filtering_mode:相关(corr),该值是默认值,卷积 (conv)boundary_option:P 输入图像的边界通过用值p(无引号)来填充来扩展。 P的默认值是0replicate 图像

4、大小通过复制外边界的值来扩展symmetric图像大小通过镜像反射其边界来扩展circular图像大小通过将图像看成是一个二维 周期 函数的一个周期来扩展15size_options :full 输出图像的大小与被扩展图像的大小相同same 输出图像的大小与输入图像的大小相同。该值 为默认值162 imfilter通用语法g=imfilter (f, w, replicate ) 对旋转过的滤波器执行相关操作与对原始滤波器 进行卷积操作是相同的; 若滤波器关于其中心对称,则两个选项将产生同 样的结果17在使用预先旋转的滤波器或对称的滤波器时 ,希望执行相关,就有两种方法:第一: g=imfil

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

6、=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,w,replicate);nfigure()nimshow(gr,)gs=imfilter(f,w,symmetric); figure() imsho

7、w(gs,)23nf8=im2uint8(f);ng8r=imfilter(f8,nw,replicate);nfigure,imshow(g8r,)解决方法归一化系数,w0= 1/(31.2)*w 或是以im2double格式输入数据 243 图像处理工具箱的标准线性空间滤波器工具箱支持一些预定义的二维线性空间滤波器,可由 函数fspecial来实现。用来生成滤波掩模w的函数fspecial的语法为:w=fspecial (type, parameters)type 表示滤波器类型 parameters 进一步定义了指定的滤波器25函数fspecial支持的空间滤波器1) fspecial

8、(average, r c). 大小为r*c的一个矩形平均滤 波器。默认值为3*3.若由一个数来代替r c,则表示方形 滤波器2) fspecial (disk, r). 一个圆形平均滤波器(包含在2r+1 大小的正方形内),半径为r。默认半径为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)滤波器,标准偏差

9、为sig(正)。默认值为5*5 和0.5若由一个数来代替r c,则表示方形滤波器5) fspecial (prewitt). 输出一个大小为3*3的prewitt掩模 wv,它近似于垂直梯度。水平梯度掩模可以通过置换结 果wh=wv获得6) fspecial (sobel).输出一个大小为3*3的sobel掩模sv, 它近似于垂直梯度。水平梯度掩模可以通过置换结果 sh=sv获得273 均值滤波器283 均值滤波器左图是标准的像素平均值 右图是像素的加权平均,表明一些像素更为重要293 均值滤波器30以模块运算系数表示即:31常用的模板:32均值滤波器 例133均值滤波器 例2344 锐化滤波

10、器微分滤波器的原理35微分滤波器的原理36375 拉普拉斯算子385 拉普拉斯算子395 拉普拉斯算子(2)4041锐化(拉普拉斯)滤波器 例3 f=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 的拉普拉斯滤 波

11、器增强后的 图像44使用中心为-8 的拉普拉斯滤 波器增强后的 图像456 梯度算子(非线性锐化滤波器)466 梯度算子47例:例: 梯度用于边缘增强梯度用于边缘增强48在图像的一阶导数运算中,一阶导数通常产生较厚的边缘。一阶导数对灰度阶跃有较强的响应。二阶导数对细微结构有较强的响应,如细线和孤立点。二阶导数在灰度级阶跃变化时产生双响应。二阶导数对线的响应比对阶跃的响应强,对点的响应比对线强。导数的性质导数的性质497.3 非线性空间滤波1 ordfilt2实现非线性空间滤波ordfilt2函数可以生成统计排序(order- statistic)滤 波器(也称为排序滤波器,rank filte

12、r).他们都是非线性滤波器,其响应基于对图象邻域中 所包含的像素进行排序,然后使用排序结果确定的 值来替代领域中的中心像素的值。502 统计排序滤波器是一种非线性滤波器基于滤波器所在图象区域中像素的排序,由排序 结果决定的值代替中心像素的值分类:最大值滤波器:用像素邻域内的最大值代替该像素中值滤波器: 用像素邻域内的中间值代替该像素最小值滤波器:用像素邻域内的最小值代替该像素512 统计排序滤波器522 统计排序滤波器533 中值滤波的原理54554 中值滤波的实现将模板区域内的像素排序,求出中间值564 中值滤波的实现575 中值滤波的特点在去除噪声的同时,可以比较好地保留边的锐 度和图像的

13、细节(优于均值滤波器)能够有效去除脉冲噪声:以黑白点叠加在图像 上586 ordfilt2实现非线性空间滤波函数的语法g=ordfilt2(f, order, domain ) f是输入图像 使用邻域的一组排列元素中的第order个元素来替 代f中的每个元素,而该邻域则由domain中的非零 元素指定。591)实现大小为m*n的最小滤波器g=ordfilt2(f, 1, ones(m, n)1表示mn个样本中的第一个样本, ones(m, n)创 建了一个元素值为1,大小为m*n的矩阵,表明 邻域内的所有样本都将用于计算。在统计学术语中,最小滤波器(一组排序元素 中的第一个样本值)称为第0个百

14、分位。同样, 第100个百分位指的就是一组排序元素中的最后 一个样本值,即第mn个样本。602)实现大小为m*n的最大滤波器g=ordfilt2(f, m*n, ones(m, n)3)实现中值滤波器数字图像处理中最著名的统计排序滤波器是中值 滤波器,它对应的是第50个百分位。g=ordfilt2(f, median(1:m*n), ones(m, n)median(1:m*n)简单地计算序列1,2,m*n的中值。613)实现中值滤波器基于实际应用中的重要性,工具箱提供一个二维 中值滤波器函数:g=medfilt2(f, m n, padopt)数组m n定义了一个大小为m*n的邻域,中值就在

15、该邻 域上计算; Padopt指定了三个可能的边界填充选项之一: zeros:默认值symmetric :f按照镜像反射方式对称地沿其边 界扩展 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 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号