首页 > 其他 > 详细

图像的线性空间滤波matlab实现

时间:2016-04-13 13:03:50      阅读:653      评论:0      收藏:0      [点我收藏+]

1、线性空间滤波函数Z = imfilter(X,H,option1,option2,...)

X为输入图像矩阵,H为m*n维的掩膜矩阵,H中的数据类型必须是double类型。掩膜矩阵可以是用户定义,也可以是系统定义好的。返回矩阵Z和X有相同的数据结构和数据类型。

整个函数处理的中间过程都会使用double类型,所以不必担心中间结果的精度。

2、获取系统掩膜函数H=fspecial(type,parameters)

type为字符串,制定了掩膜类型。如‘average‘表示均值掩膜。H为返回的掩膜矩阵,数据类型为double.

  • 正方形均值掩膜,h=fspecial(‘average‘,n),n为掩膜大小,n*n,默认值是3.
  • 高斯低通掩膜,h=fspecial(‘gaussian‘,n,sigma),n为掩膜大小n*n,默认为3.sigma为高斯分布方差。
  • 二维拉普拉斯掩膜‘laplacian‘,h=fspecial(‘laplacian‘,alpha),alpha控制掩膜形状,范围是[0 1],默认值0.2,
  • 反锐化掩膜‘unsharp‘,h=fspecial(‘unsharp‘,alpha)alpha控制掩膜形状,范围是[0 1],默认值0.2
  • 水平锐化掩膜‘prewit‘,h=fspecial(‘prewit‘),如果想用垂直锐化,则用h‘
  • sobel水平锐化,h=fspecial(‘sobel‘),如果想用垂直锐化,则用h‘
 1 clear all;
 2 i=imread(./pic/lena256.bmp);
 3 
 4 h=fspecial(sobel);
 5 h=h;
 6 z=imfilter(i,h);
 7 
 8 figure;
 9 subplot(1,2,1)
10 imshow(i);
11 title(原始图像)
12 subplot(1,2,2)
13 imshow(z)
14 title(垂直锐化滤波)

 

技术分享

图像的线性空间滤波matlab实现

原文:http://www.cnblogs.com/zhaopengcheng/p/5386595.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!