fspecial函数用于建立预定义的滤波算子,其语法格式为:
h = fspecial(type)
h = fspecial(type,para)其中type指定算子的类型,para指定相应的参数;type的类型有:1、'average'averaging filter为均值滤波,参数为hsize代表模板尺寸,默认值为【3,3】。H = FSPECIAL('average',HSIZE) returns an averaging filter H of sizeHSIZE. HSIZE can be a vector specifying the number of rows and columns inH or a scalar, in which case H is a square matrix.The default HSIZE is [3 3].2、 'disk'circular averaging filter为圆形区域均值滤波,参数为radius代表区域半径,默认值为5.H = FSPECIAL('disk',RADIUS) returns a circular averaging filter(pillbox) within the square matrix of side 2*RADIUS+1.The default RADIUS is 5.3、'gaussian'Gaussian lowpass filter为高斯低通滤波,有两个参数,hsize表示模板尺寸,默认值为【3 3】,sigma为滤波器的标准值,单位为像素,默认值为0.5.H = FSPECIAL('gaussian',HSIZE,SIGMA) returns a rotationallysymmetric Gaussian lowpass filterof size HSIZE with standarddeviation SIGMA (positive). HSIZE can be a vector specifying thenumber of rows and columns in H or a scalar, in which case H is asquare matrix.The default HSIZE is [3 3], the default SIGMA is 0.5.4、'laplacian' filter approximating the 2-D Laplacian operator为拉普拉斯算子,参数alpha用于控制算子形状,取值范围为【0,1】,默认值为0.2.H = FSPECIAL('laplacian',ALPHA) returns a 3-by-3 filterapproximating the shape of the two-dimensional Laplacianoperator. The parameter ALPHA controls the shape of theLaplacian and must be in the range 0.0 to 1.0.The default ALPHA is 0.2.5、'log'Laplacian of Gaussian filter为拉普拉斯高斯算子,有两个参数,hsize表示模板尺寸,默认值为【3 3】,sigma为滤波器的标准差,单位为像素,默认值为0.5.H = FSPECIAL('log',HSIZE,SIGMA) returns a rotationally symmetricLaplacian of Gaussian filter of size HSIZE with standard deviationSIGMA (positive). HSIZE can be a vector specifying the number of rowsand columns in H or a scalar, in which case H is a square matrix.The default HSIZE is [5 5], the default SIGMA is 0.5.6、'motion'motion filter为运动模糊算子,有两个参数,表示摄像物体逆时针方向以theta角度运动了len个像素,len的默认值为9,theta的默认值为0;H = FSPECIAL('motion',LEN,THETA) returns a filter to approximate, onceconvolved with an p_w_picpath, the linear motion of a camera by LEN pixels,with an angle of THETA degrees in a counter-clockwise direction. Thefilter becomes a vector for horizontal and vertical motions.Thedefault LEN is 9, the default THETA is 0, which corresponds to ahorizontal motion of 9 pixels.7、'prewitt'Prewitt horizontal edge-emphasizing filter用于边缘增强,大小为【3 3】,无参数H = FSPECIAL('prewitt') returns 3-by-3 filter that emphasizeshorizontal edges by approximating a vertical gradient. If you need toemphasize vertical edges, transpose the filter H: H'.[1 1 1;0 0 0;-1 -1 -1].8、'sobel'Sobel horizontal edge-emphasizing filter用于边缘提取,无参数H = FSPECIAL('sobel') returns 3-by-3 filter that emphasizeshorizontal edges utilizing the smoothing effect by approximating avertical gradient. If you need to emphasize vertical edges, transposethe filter H: H'.[1 2 1;0 0 0;-1 -2 -1].9、'unsharp'unsharp contrast enhancement filter为对比度增强滤波器。参数alpha用于控制滤波器的形状,范围为【0,1】,默认值为0.2.H = FSPECIAL('unsharp',ALPHA) returns a 3-by-3 unsharp contrastenhancement filter. FSPECIAL creates the unsharp filter from thenegative of the Laplacian filter with parameter ALPHA. ALPHA controlsthe shape of the Laplacian and must be in the range 0.0 to 1.0.The default ALPHA is 0.2.