imfilter()用法

功能:对图像进行滤波。
用法: g = imfilter(f, w, filtering_mode, boundary_options, size_options)
其中,f:输入图像,w:滤波掩模,g:滤波后图像。

filtering_mode:指定在滤波过程中是使用“相关”还是“卷积”

boundary_options:处理边界充零问题,边界的大小由滤波器的大小确定。

具体参数选项见下表:

 

选项

描述

filtering_mode

‘corr’

通过使用相关来完成,该值为默认。

 

‘conv’

通过使用卷积来完成

boundary_options

‘X’

输入图像的边界通过用值X(不用加引号)来填充扩展
其默认值为0

 

‘replicate’

图像大小通过复制外边界的值来扩展

 

‘symmetric’

图像大小通过镜像反射其边界来扩展

 

‘circular’

图像大小通过将图像看成是一个二维周期函数的一个周期来扩展

size_options

‘full’

输出图像的大小与被扩展图像的大小相同

 

‘same’

输出图像的大小与输入图像的大小相同。这可通过将滤波掩模的

中心点的偏移限制到原图像中包含的点来实现,该值为默认值。


举例:original = imread('peppers.png');
imshow(original)
h = fspecial('motion', 50, 45);%创建一个滤波器
filtered = imfilter(original, h);
figure, imshow(filtered)

原文地址:https://www.cnblogs.com/anyview/p/4997657.html