|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
fspecial$ ~7 @# {; Z6 j1 V8 t' ~" H; h: a
- h, y, A8 o8 T) E$ v( w/ a( l- \
k1 ]8 H7 v- \$ v$ o3 D
Fspecial函数用于创建预定义的滤波算子,其语法格式为:
5 S Q0 ^+ I; G. zh = fspecial(type)
6 r! M& v0 ~1 f3 ~. s1 L: ch = fspecial(type,parameters,sigma)+ V4 x9 T# F/ Q1 D3 e+ e% l; b& M" ~
参数type制定算子类型,parameters指定相应的参数,具体格式为:# W+ F, Y$ O$ b2 ~
type='average',为均值滤波,参数为n,代表模版尺寸,用向量表示,默认值为[3,3]。
+ Y+ A( ~3 O# b8 ?2 F; htype= 'gaussian',为高斯低通滤波器,参数有两个,n表示模版尺寸,默认值为[3,3],sigma表示滤波器的标准差,单位为像素,默认值为
w9 W! z T0 y3 `! M9 _6 j) [. J* O. j
$ m+ b6 D2 I, J% A, _$ R0.5。9 [! N# I5 `3 g) z% R
type= 'laplacian',为拉普拉斯算子,参数为alpha,用于控制拉普拉斯算子的形状,取值范围为[0,1],默认值为0.2。
; u9 R' ~+ c6 R/ }0 i9 btype= 'log',为拉普拉斯高斯算子,参数有两个,n表示模版尺寸,默认值为[3,3],sigma为滤波器的标准差,单位为像素,默认值为0.5
$ G2 ~! ]' f P9 U( I, Ktype= 'prewitt',为prewitt算子,用于边缘增强,无参数。" T. ?9 `* }2 X0 b' i }0 {4 y
type= 'sobel',为著名的sobel算子,用于边缘提取,无参数。
0 e1 i0 D& x m1 p: G) Ytype= 'unsharp',为对比度增强滤波器,参数alpha用于控制滤波器的形状,范围为[0,1],默认值为0.2。( M4 H8 W! @( Q/ D8 _5 ?
2 y6 A& i. q6 S* A. q
& { I9 n5 s* a6 k% ^, t6 \6 G4 Y
例子:
' J7 [" h6 E. [# X
0 o( @) |; Y5 i9 I7 ?2 J# P9 }7 w) i T$ H8 R0 Y0 J' m4 c5 j
>> G=fspecial('gaussian',5)%参数为5,表示产生5*5的gaussian矩阵,如果没有,默认为3*3的矩阵。
+ G* U& e9 X8 p; d9 F
9 T5 o, a0 l& B, N2 b6 v0 U w. n4 I! j
G =
, E+ v" u- |! @7 \' Y9 K+ ]( o' r$ q3 F& c6 W
) j/ D, ]! Y7 ]- Q0 C) a0 E+ _% j# I
0.0000 0.0000 0.0002 0.0000 0.0000
" t D% L _+ G0 b8 N4 E1 l0 O 0.0000 0.0113 0.0837 0.0113 0.00002 ^. g# [7 t7 | j4 U$ f
0.0002 0.0837 0.6187 0.0837 0.00024 Z/ a7 ]8 S+ f0 n& X
0.0000 0.0113 0.0837 0.0113 0.0000$ i4 Q' ]5 n1 A3 U. p. ~
0.0000 0.0000 0.0002 0.0000 0.0000
) B1 Z% u/ d) Y: Q( j0 U+ R0 J
; R Y; x5 N: Z- A4 ^$ S! w/ ]( Y- l+ V
>> G=fspecial('gaussian',5,1.5)%1.5为滤波器的标准差。
- q& K7 \' c- ?$ F( y- f' x3 u4 }8 j7 U
) V9 ~" L' O# [4 q
G =
9 ?+ q) m- U; J- ^; [3 y2 m
) J- E, `5 c2 H
9 _" u7 _4 w7 @# P' j1 D+ D9 f 0.0144 0.0281 0.0351 0.0281 0.0144" u0 F7 R/ U) W" y5 u1 H
0.0281 0.0547 0.0683 0.0547 0.0281
& ?7 }; B$ X4 |* w6 R 0.0351 0.0683 0.0853 0.0683 0.0351
; f: H, |& K* Z4 c# w, S% G/ D% a 0.0281 0.0547 0.0683 0.0547 0.0281
8 w7 n3 W& v5 t8 f% q3 _7 c Q 0.0144 0.0281 0.0351 0.0281 0.01443 U0 ^7 |: e" a) G+ e5 _0 `* C
" |$ | k, L* h# s4 H/ C; G# ^5 J- S% e4 _5 L' W8 }
>> ) c1 ?! \" j4 f9 c5 A8 q5 }/ N: q
9 a: k. C3 m; ]- e. K1 Q; Z
, `& W8 k1 [0 B>> G=fspecial('average')%默认为3*3的矩阵。均值滤波
! L2 S4 _5 v ]4 K( G& V/ X3 ~& L- b9 R2 V9 N1 ]
$ h/ L$ g' n& X$ y
G =6 Y5 u( y# Z: ^. l# O- k5 ]. `
% Z# ?) Q& X& R6 ^! O" L% s2 _3 z0 i1 ?( Z$ a0 u
0.1111 0.1111 0.1111
3 C& W2 K/ n$ _) Q; V0 @, v 0.1111 0.1111 0.1111
% J" H/ T0 @' R6 }7 F2 n 0.1111 0.1111 0.11117 y% h6 a$ P* V. Q. z2 G/ n3 C: p0 I
2 | m: d E) S3 f2 u* o
. a, T* {" n7 g H/ v>> G=fspecial('average',5)%会产生5*5的矩阵。! z0 I: `: j& b, e6 E$ G
' E0 \ O+ N/ B* {. b: G+ X; z/ O1 |. O* \6 Z
9 k" C( a. N3 j- k: e* D+ o1 x |
|