1. 程式人生 > >Matlab 的fspecial函式用法

Matlab 的fspecial函式用法

fspecial函式用於建立預定義濾波運算元,其語法格式為:
h = fspecial(type)
h = fspecial(typepara)
其中type指定運算元的型別,para指定相應的引數
type的型別有:
1'average'
averaging filter

為均值濾波,引數為hsize代表模板尺寸,預設值為【33】。
H = FSPECIAL('average',HSIZE) returns an averaging filter H of size

HSIZE. HSIZE can be a vector specifying the number of rows and columns in


H 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 filte
r

為高斯低通濾波,有兩個引數,hsize表示模板尺寸,預設值為【3 3】,sigma濾波器的標準值,單位為畫素,預設值為0.5.
H = FSPECIAL('gaussian',HSIZE,SIGMA) returns a rotationally

symmetric Gaussian lowpass filter
of size HSIZE with standard


deviation SIGMA (positive). HSIZE can be a vector specifying the


number of rows and columns in H or a scalar, in which case H is a


square matrix.


The default HSIZE is [3 3], the default SIGMA is 0.5.

4'laplacian' filter approximating the 2-D Laplacian operator
為拉普拉斯運算元,引數alpha用於控制運算元形狀,取值範圍為【01】,預設值為0.2.

H = FSPECIAL('laplacian',ALPHA) returns a 3-by-3 filter


approximating the shape of the two-dimensional Laplacian


operator. The parameter ALPHA controls the shape of the


Laplacian 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 symmetric

Laplacian of Gaussian filter of size HSIZE with standard deviation


SIGMA (positive). HSIZE can be a vector specifying the number of rows


and 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的預設值為9theta的預設值為0
H = FSPECIAL('motion',LEN,THETA) returns a filter to approximate, once

convolved with an image, the linear motion of a camera by LEN pixels,


with an angle of THETA degrees in a counter-clockwise direction. The


filter becomes a vector for horizontal and vertical motions.
The


default LEN is 9, the default THETA is 0, which corresponds to a


horizontal motion of 9 pixels.

7'prewitt'
Prewitt horizontal edge-emphasizing filter

用於邊緣增強,大小為【3 3】,無引數
H = FSPECIAL('prewitt') returns 3-by-3 filter that emphasizes

horizontal edges by approximating a vertical gradient. If you need to


emphasize 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 emphasizes

horizontal edges utilizing the smoothing effect by approximating a


vertical gradient. If you need to emphasize vertical edges, transpose


the filter H: H'.



[1 2 1;0 0 0;-1 -2 -1].

9'unsharp'
unsharp contrast enhancement filter

為對比度增強濾波器。引數alpha用於控制濾波器的形狀,範圍為【01】,預設值為0.2.
H = FSPECIAL('unsharp',ALPHA) returns a 3-by-3 unsharp contrast


enhancement filter. FSPECIAL creates the unsharp filter from the


negative of the Laplacian filter with parameter ALPHA. ALPHA controls


the shape of the Laplacian and must be in the range 0.0 to 1.0.


The default ALPHA is 0.2.