|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
+ c% A& Z( D" j" |" dFspecial函数用于创建预定义的滤波算子,其语法格式为:
% N4 S4 }, x2 a! L+ I6 B- ]$ D
: k# k6 ? d0 r; \+ ~' Sh = fspecial(type)
! {$ }5 I* J! `" s7 F" sh = fspecial(type,parameters,sigma)
, e9 M) V2 r; L) d+ _1 x4 Z: E! M7 a0 t5 F: D
参数type制定算子类型,parameters指定相应的参数,具体格式为:
4 b# W* q% _. d6 ltype='average',为均值滤波,参数为n,代表模版尺寸,用向量表示,默认值为[3,3]。) j7 Y4 J% V! B1 n
type= 'gaussian',为高斯低通滤波器,参数有两个,n表示模版尺寸,默认值为[3,3],sigma表示滤波器的标准差,单位为像素,默认值为
4 b3 o' ~+ ?7 P- Y8 _% n! i4 x) J! g4 q8 _. n2 e# [: I
0.5。3 b6 T! V$ F/ K& z
type= 'laplacian',为拉普拉斯算子,参数为alpha,用于控制拉普拉斯算子的形状,取值范围为[0,1],默认值为0.2。
( n$ @, T; }. v3 Qtype= 'log',为拉普拉斯高斯算子,参数有两个,n表示模版尺寸,默认值为[3,3],sigma为滤波器的标准差,单位为像素,默认值为0.53 q ?* A( B7 Z: e; y
type= 'prewitt',为prewitt算子,用于边缘增强,无参数。9 [+ k9 L6 y# P
type= 'sobel',为著名的sobel算子,用于边缘提取,无参数。3 {+ x: q7 L( F/ R. U8 v
type= 'unsharp',为对比度增强滤波器,参数alpha用于控制滤波器的形状,范围为[0,1],默认值为0.2。* h1 D3 U' [* C# E
u' ?* r, J) M d3 E1 j
例子:
: L1 [" ]7 i- v; {+ p! O) ^
( c' s# l6 S/ h) \>> G=fspecial('gaussian',5)%参数为5,表示产生5*5的gaussian矩阵,如果没有,默认为3*3的矩阵。3 E) B+ C6 M+ S4 e' M7 L
$ Q/ K0 X5 x( u
G =% ?- J: t) _0 i
y. p2 B c3 P9 U7 q9 O# z 0.0000 0.0000 0.0002 0.0000 0.00000 d% @7 q% `! I7 A0 f8 z' O7 p! h
0.0000 0.0113 0.0837 0.0113 0.0000
/ k! {1 e' c, Y% }) }1 k 0.0002 0.0837 0.6187 0.0837 0.0002" m9 F2 V# ]1 b' _* F. x3 N/ M- s: t
0.0000 0.0113 0.0837 0.0113 0.0000
0 |0 w8 Q) @% K/ q# O2 \& ^0 e3 J 0.0000 0.0000 0.0002 0.0000 0.0000- C0 T5 _$ o. o9 s" p$ g+ `
>> G=fspecial('gaussian',5,1.5)%1.5为滤波器的标准差。8 V* O- K9 a* C7 s! F% f7 A& Y
2 Y, ~" h2 @( A, s1 t
G =
+ J- b) i( T' E* X
7 W( b3 I% q/ i2 v6 X( Y6 T6 Z 0.0144 0.0281 0.0351 0.0281 0.01445 r! q( e6 L+ ?; W6 T
0.0281 0.0547 0.0683 0.0547 0.0281
) x* ?; [/ g; H5 x 0.0351 0.0683 0.0853 0.0683 0.0351$ L6 F0 o7 w! \/ K, W+ h9 B
0.0281 0.0547 0.0683 0.0547 0.0281* d; S2 t: b I% }0 U
0.0144 0.0281 0.0351 0.0281 0.0144& C$ Y! W" z5 a" z: h
>> * Z) k) g) D5 ~- ?
% c0 I S8 z$ Z>> G=fspecial('average')%默认为3*3的矩阵。均值滤波8 t4 X! @' q0 g; P- C: z6 O5 H7 P
9 h5 k+ r( L6 v# K5 l7 ZG =
( X% w+ t; \" r2 D0 c: |% n
* }/ O0 \$ [ R: w: X3 V 0.1111 0.1111 0.1111
7 \# N& s0 b* n+ Q2 t) N# m 0.1111 0.1111 0.1111
/ H$ \+ N' O$ ~! s0 R1 f+ y2 }7 X+ \ 0.1111 0.1111 0.11119 f, |: Q1 v+ f" \ }
>> G=fspecial('average',5)%会产生5*5的矩阵。 |
|