天天看點

MATLAB fspecial函數用法

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 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 filter

為高斯低通濾波,有兩個參數, 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 用于控制算子形狀,取值範圍為【 0 , 1 】,預設值為 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 的預設值為 9 , theta 的預設值為 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 用于控制濾波器的形狀,範圍為【 0 , 1 】,預設值為 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.

繼續閱讀