找回密码
 注册
关于网站域名变更的通知
查看: 347|回复: 1
打印 上一主题 下一主题

Matlab中fspecial的用法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-8-13 13:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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的矩阵。

该用户从未签到

2#
发表于 2020-8-13 14:05 | 只看该作者
Matlab中fspecial的用法
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-27 20:47 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表