滤波器fspecial
- h=fspecial(‘type’,parameters)
- h=fspecial(‘average’,[r c]),大小为
r
∗
c
r*c
r∗c矩形平均滤波器,默认值为
3
∗
3
3*3
3∗3,若用单个数代替[r c],表示方形滤波器。
>> h=fspecial('average',[5 5]) %滤波器大小为 r*c ,数值全部相等,且等于 1/(r*c)
h =
0.0400 0.0400 0.0400 0.0400 0.0400
0.0400 0.0400 0.0400 0.0400 0.0400
0.0400 0.0400 0.0400 0.0400 0.0400
0.0400 0.0400 0.0400 0.0400 0.0400
0.0400 0.0400 0.0400 0.0400 0.0400
- h=fspecial(‘disk’,r),圆形平均滤波器,半径为r,默认值为5。h是边长为
(
2
∗
r
+
1
)
(2*r+1)
(2∗r+1)大小的正方形。
>> h=fspecial('disk',2) %滤波器大小为 (2*r+1)*(2*r+1) ,
h =
0 0.0170 0.0381 0.0170 0
0.0170 0.0784 0.0796 0.0784 0.0170
0.0381 0.0796 0.0796 0.0796 0.0381
0.0170 0.0784 0.0796 0.0784 0.0170
0 0.0170 0.0381 0.0170 0
- h=fspecial(‘gaussian’,[r c],sig),大小为
r
∗
c
r*c
r∗c高斯低通滤波器,默认值为
3
∗
3
3*3
3∗3和0.5。标准偏移为sig(正数),若用单个数代替[r c],表示方形滤波器。
>> h=fspecial('gaussian')
h =
0.0113 0.0838 0.0113
0.0838 0.6193 0.0838
0.0113 0.0838 0.0113
- h=fspecial(‘laplacian’,alpha),大小为
3
∗
3
3*3
3∗3拉普拉斯滤波器,形状决定于alpha(取值范围[0,1]),默认值0.2。
>> h=fspecial('laplacian')
h =
0.1667 0.6667 0.1667
0.6667 -3.3333 0.6667
0.1667 0.6667 0.1667
- h=fspecial(‘log’,[r c],sig),大小为
r
∗
c
r*c
r∗c高斯-拉普拉斯滤波器,默认值为
5
∗
5
5*5
5∗5和0.5。标准偏移为sig(正数),若用单个数代替[r c],表示方形滤波器。
>> h=fspecial('log')
h =
0.0448 0.0468 0.0564 0.0468 0.0448
0.0468 0.3167 0.7146 0.3167 0.0468
0.0564 0.7146 -4.9048 0.7146 0.0564
0.0468 0.3167 0.7146 0.3167 0.0468
0.0448 0.0468 0.0564 0.0468 0.0448