|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
fspecial
6 c, K* E# w% E2 S0 W- q u- X8 O2 L* c
w2 b# y+ U( e- n$ O! }
Fspecial函数用于创建预定义的滤波算子,其语法格式为:
) T% N' o$ ^" R, q* } lh = fspecial(type)2 K8 |: H" G& C+ x
h = fspecial(type,parameters,sigma)
: ]1 x+ x5 t' e( Y' e4 A参数type制定算子类型,parameters指定相应的参数,具体格式为:
3 a' q: H, l* b |: V% p1 B% j. Btype='average',为均值滤波,参数为n,代表模版尺寸,用向量表示,默认值为[3,3]。. X9 ^) |: X, L$ Q* a3 A/ ]0 D) F
type= 'gaussian',为高斯低通滤波器,参数有两个,n表示模版尺寸,默认值为[3,3],sigma表示滤波器的标准差,单位为像素,默认值为
' Q. j. B$ ~. t6 i+ o2 r! Y& b
7 O3 \; @/ @# A4 C! l4 ]1 K/ N) P% C7 K$ Q
0.5。
) b0 W& T/ i$ ]6 w; W8 p3 Xtype= 'laplacian',为拉普拉斯算子,参数为alpha,用于控制拉普拉斯算子的形状,取值范围为[0,1],默认值为0.2。 i% O! u: @8 L- \
type= 'log',为拉普拉斯高斯算子,参数有两个,n表示模版尺寸,默认值为[3,3],sigma为滤波器的标准差,单位为像素,默认值为0.5
- P! i, ~- y/ M7 ~8 vtype= 'prewitt',为prewitt算子,用于边缘增强,无参数。: `6 M: Z1 V/ U& K( x) a4 o0 l0 E
type= 'sobel',为著名的sobel算子,用于边缘提取,无参数。. h3 C! f) V* s9 A# I( c
type= 'unsharp',为对比度增强滤波器,参数alpha用于控制滤波器的形状,范围为[0,1],默认值为0.2。
! |3 n# `$ N, ]5 V' d1 S% b1 D5 f; O* m/ ]1 g) X3 E: g- ]1 T" A4 m
! {5 P; Y* |7 g, A) l- u- }/ Y c例子:
& Q# c' s" E+ _) f$ O+ D( }3 u- `. a0 R0 H: n
5 t L1 w1 X4 b9 O( g. G& J>> G=fspecial('gaussian',5)%参数为5,表示产生5*5的gaussian矩阵,如果没有,默认为3*3的矩阵。
: \6 S, N& V5 C+ ]1 ~
/ `- p5 Y k# d- g4 {% _6 u' E
! |$ [+ S4 M! j( `* Y8 H2 N/ PG =
1 Y9 G9 W) c9 h% b, v
/ U8 _. R* C# B% a
, V4 t$ i# n2 Y6 t0 ^ 0.0000 0.0000 0.0002 0.0000 0.0000" o$ c! E+ x& g3 e4 J0 H7 t
0.0000 0.0113 0.0837 0.0113 0.0000
' ^8 ~) N5 n) z2 C 0.0002 0.0837 0.6187 0.0837 0.0002
7 m% I6 t; B$ O% u* x+ f1 D 0.0000 0.0113 0.0837 0.0113 0.0000, ?+ J. W* A$ l* Z S
0.0000 0.0000 0.0002 0.0000 0.0000
1 A: y/ O1 g$ }$ P1 T" T k1 r+ H) O( d# S/ P+ n. t
- n7 g( N3 b( `
>> G=fspecial('gaussian',5,1.5)%1.5为滤波器的标准差。
% Z, k3 d# C: d2 H
) k. r S, t: Q( k. O; r% B. V& e4 x( g* l+ D+ @1 S
G =
( u! k+ v# C- V5 R ^6 O, B5 n! {; r
+ S/ ?8 s+ F3 D O. J* B
0.0144 0.0281 0.0351 0.0281 0.0144! `5 y! d* g" X9 A6 @. Q/ ]4 J
0.0281 0.0547 0.0683 0.0547 0.02811 v- O, E0 T5 M0 ]( U
0.0351 0.0683 0.0853 0.0683 0.0351/ C; J# X& a; z" w8 k# @
0.0281 0.0547 0.0683 0.0547 0.0281* k8 L( z6 V2 o# E" U( p3 q
0.0144 0.0281 0.0351 0.0281 0.0144
0 f0 [9 ~, {0 Q# \0 q0 W4 ]- ?+ o$ N" b- }+ u3 ^
?0 o2 Y4 U# L$ i>> * y4 }; _. X ]2 z0 b7 U3 x' I: m
' a M+ _ k" S @ W5 K! y! R
8 A/ q& Q! p! m$ ~
>> G=fspecial('average')%默认为3*3的矩阵。均值滤波
4 h: `) q; L$ \2 h
3 N* H* o$ x6 l. u) E
, W0 c8 g# i7 p, `" f8 J" a# Q9 nG =
( i! q% _1 O% u* F+ v( g( `/ f' ?6 k5 T: S6 ?# U
. G" }: Q: P B( r# A1 T) Q0 O
0.1111 0.1111 0.1111; f2 j- c# V: K
0.1111 0.1111 0.1111
# K" \# G6 R5 b- g 0.1111 0.1111 0.1111! {4 e' w2 b: O3 @
* l& V" i8 Z: G2 Z3 ^2 W/ X
+ ~, o; x. Z1 q; f T% R9 D
>> G=fspecial('average',5)%会产生5*5的矩阵。
0 C5 ]8 R0 p) u$ ~$ Y- Y, u0 V9 m% m" P2 y) {
0 m+ e) H" p2 M4 f
' T* Q+ ^1 a. g) ?, x/ H
|
|