图像处理——图像滤波(Matlab)_第1页
图像处理——图像滤波(Matlab)_第2页
图像处理——图像滤波(Matlab)_第3页
图像处理——图像滤波(Matlab)_第4页
图像处理——图像滤波(Matlab)_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上图像滤波滤波是一种应用广泛的图像处理技术,可以通过滤波来强调或删除图像的某种特征。滤波是一种领域操作,即处理后的图像每个像素值是运来像素周围的颜色值经过某些计算得到的。通过不同滤波函数对同一图像滤波,效果迥异。1.滤波函数imfilterMatlab滤波函数imfilter是基于领域滑动设计实现的,其调用格式为B=IMFILTER(A,H,OPTION),参数OPTION可以选择填补参数symmetric、replicate、circular。首先在原始图像上加上一些噪声,然后对含有噪声的图像进行滤波。分别对下面的这个原始图像加上椒盐噪声、高斯白噪声、泊松噪声、乘法噪

2、声。原图像Matlab函数文件如下:I=imread('1.jpg'); J1=imnoise(I,'salt & pepper',0.02); J2=imnoise(I,'gaussian',0,0.01); J3=imnoise(I,'poisson'); J4=imnoise(I,'speckle',0.04); figure;subplot(221),imshow(J1);subplot(222),imshow(J2);subplot(223),imshow(J3);subplot(224),ims

3、how(J4); 图1.加入椒盐噪声的图像 图2. 加入高斯白噪声的图像 图3. 加入泊松噪声的图像 图4.加入乘法噪声的图像下面对含有椒盐噪声和高斯白噪声的图像用imfilter进行滤波。Matlab函数文件如下:rgb=imread('1.jpg');h=ones(5,5)/25;rgb1=imfilter(rgb,h);rgb2=imfilter(rgb1,h,'replicate');subplot(1,3,1);imshow(rgb);title('Original');subplot(1,3,2);imshow(rgb1);title

4、('Filtered');subplot(1,3,3);imshow(rgb);title('boundary replication'); 图5.含有椒盐噪声的原图像 图6. Filtered 图7.boundary replication 图8.含有高斯白噪声的原图像 图9.Filtered 图10.boundary replication 函数imfilter已经把操作直接定义为滑动操作sliding。调用函数B=IMFILTER(A,H,OPTION),调用时如果省略了参数option,其形式就变为imfilter(A,H),则默认填补边界为0 。图6和

5、图9就是这种情况,所以有边界的出现。如果调用形势为imfilter(A,H,100),那么就是以100来填补边界,然后进行滤波操作。用imfilter对图像进行滤波,可以设计不同形式的滤波器。用imfilter设计运动滤波,水平边缘增强,拉普拉斯滤波三个滤波器。Matlab函数文件如下:rgb=imread('1.jpg');h1= 0,0, 0.0000, 0.0021 , 0.0042;0.1958,0.1979,0.2000,0.1979,0.1958 ;0.0042,0.0021,0.0000,0,0;h2= 1 , 2, 1;0 , 0, 0;-1, -2, -1;h

6、3= 0.1667, 0.6667, 0.1667;0.6667, -3.3333, 0.1667;0.1667, 0.6667, 0.1667;rgb1=imfilter(rgb,h1);rgb2=imfilter(rgb,h2);rgb3=imfilter(rgb,h3);subplot(2,2,1),imshow(rgb),title('原图像')subplot(2,2,2),imshow(rgb1),title('运动滤波')subplot(2,2,3),imshow(rgb2),title('水平边缘增强')subplot(2,2,4)

7、,imshow(rgb3),title('拉普拉斯滤波') 图11. 含有椒盐噪声的原始图像 图12.运动滤波 图13.水平边缘增强 图14.拉普拉斯滤波(=1/5) 图15.含有高斯白噪声的原图像 图16.运动滤波 图17.水平边缘增强 图18. 拉普拉斯滤波(=1/5) 用imfilter函数生成不同的滤波器,就是指定不同的算子。 可以看出同样的滤波器对不同噪声的滤波效果也有差异。运动滤波后图像在水平方向上变宽,并且模糊。水平边缘增强滤波把背景变成了黑色,垂直边缘消失。拉普拉斯滤波也把背景变成了黑色,边缘也发生了很大的变化。2.用函数fspecial产生线性滤波器用函数fs

8、pecial生成的线性空间滤波器进行滤波,其matlab调用命令为fspecial(T,P)。T是指定的二维线性滤波器,P是辅助说明的参数。比如说,h=fspecial('average',5,3) 中的5,3就是用来定义算子的大小。高斯滤波的5,3也是定义算子的大小,1是标准差。拉普拉斯滤波的0是决定滤波器形状的取值在0,1之间的。Matlab函数文件如下:rgb=imread('1.jpg');h1=fspecial('average',5,3);h2=fspecial('gaussian',5,3,1);h3=fspecia

9、l('laplacian',0);rgb1=imfilter(rgb,h1);rgb2=imfilter(rgb,h2);rgb3=imfilter(rgb,h3);subplot(2,2,1),imshow(rgb),title('原图像')subplot(2,2,2),imshow(rgb1),title('均值滤波')subplot(2,2,3),imshow(rgb2),title('高斯滤波')subplot(2,2,4),imshow(rgb3),title('拉普拉斯滤波') 图19.含有椒盐噪声的原图像 图20. 均值滤波(5*5窗口) 图21.高斯滤波 图22.拉普拉斯滤波(=0) 图23.含有高斯白噪声的原图像 图24.均值滤波(5*5窗口) 图25.高斯滤波 图26.拉普拉斯滤波(=0)用fspecial函数可以很快调整滤波模型和各类参数,很快既定的目的。改变不同的参数,例如均值滤波,改变滤波窗口: 图27.含有高斯白噪声的图像 图28. 图均值滤波(5*5窗口) 图29.均值滤波(7*7窗口) 图30.均值滤波(9*9窗口)从结果可以看出,随着窗口数的增加,图像和边缘越来越模

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论