Matlab中一维和二维滤波函数及其典型用法【随时更新】
主要用于自查,如果能帮助到别人那也是极好的。
一维滤波函数
均值滤波器movmean
M = movmean(A,k)
返回A的k点均值滤波
中值滤波器movmedian
M = movmedian(A,k)
返回A的k点中值滤波
二维滤波函数
二维数据主要是图像数据,图像滤波主要用imfilter()函数,其结构是主要为:
h=fspecial(‘FilterName’);
b=imfilter(C,h);
fspecial用来预定义一个二维滤波器,C是原始图像,b是滤波后图像。
用fspecial预定义各种二维滤波器
均值滤波:h = fspecial(‘average’,hsize),hsize是均值滤波器的大小,结构为[n,n];
圆盘滤波:h = fspecial(‘disk’,radius),返回半径为radius的圆盘区域的均值;
高斯滤波:h = fspecial(‘gaussian’,hsize,sigma),hsize为滤波器的大小,结构为[n,n],sigma为高斯滤波器的标准偏差;
拉普拉斯滤波:h = fspecial(‘laplacian’,alpha),大小为3×3,alpha控制拉普拉斯的形状,范围为[0,1].
Prewitt算子:h = fspecial(‘prewitt’)
Sobel算子:h = fspecial(‘sobel’)