多语言展示
当前在线:452今日阅读:2今日分享:38

MATLAB如何实现空间域滤波?

滤波是信号处理的一个概念,将信号中特定波段频率过滤去除。数字信号处理中常采用傅里叶变换及其逆变换实现,这种变换下的滤波是等效的。空间域滤波直接基于领域对图像中像素进行计算。
函数介绍
1

matlab中滤波相关的函数主要是imfilter和fspecial.imfilter完成滤波操作,fspecial创建预定义的2维滤波器.

2

滤波函数imfilter(f,w,option):f是要滤波的图像,w是滤波所用的模板,是二维数组。选项包括:边界、尺寸和模式选项。

3

滤波器创建fspecial(type,parameters):type是滤波器的类型,包括平均模板、高斯模板等,parameters是可选项,是type相关的配置参数,如尺寸、标准差等.

实现代码
1

首先,读入图片,以自带pout.tif为例

2

定义一个平均模板w,模式选择滤波过程为相关,边界选择填充虚拟边界的内容总是重复和它最近的边缘像素。进行滤波

3

创建一个水平边缘检测算子模板,并进行滤波。

4

显示原图和两种滤波模板进行滤波后的图像。

5

结果如图。

推荐信息