主要内容

使用imfilter函数过滤灰度和真彩(RGB)图像

这个例子展示了如何使用包含相同权重的5 × 5过滤器(通常称为平均过滤器)过滤二维灰度图像imfilter.这个例子还展示了如何用相同的过滤器过滤一个真彩色(RGB)图像。一幅真彩色图像是大小不一的三维数组——- - - - - -n-乘3,其中最后一个维度表示三个颜色通道。用二维滤波器过滤一幅真彩色图像相当于用相同的二维滤波器分别过滤图像的每个平面。

有几个MATLAB®函数可以执行二维和多维滤波,可以进行比较imfilter.这个函数filter2执行二维相关性,conv2进行二维卷积convn执行多维卷积。然而,每个过滤函数总是将输入转换为,输出总是.此外,这些MATLAB®滤波函数总是假定输入是零填充的,而且它们不支持其他填充选项。金宝app相比之下,imfilter不能将输入图像转换为.的imfilter函数还提供了一组灵活的边界填充选项。

用平均滤波器过滤二维灰度图像

将灰度图像读取到工作区中。

我= imread (“coins.png”);

显示原始图像。

图imshow(我)标题(原始图像的

图中包含一个轴对象。标题为“Original Image”的axis对象包含一个类型为Image的对象。

创建一个标准化的,5乘5的,平均滤波器。

h =的(5,5)/ 25;

将平均过滤器应用到使用的灰度图像imfilter

I2 = imfilter (h);

显示过滤后的图像。

图imshow (I2)标题(过滤后的图像的

图中包含一个轴对象。标题为Filtered Image的axis对象包含一个Image类型的对象。

使用imfilter过滤多维真彩(RGB)图像

在工作空间中读一幅真实的彩色图像。

rgb = imread (“peppers.png”);imshow (rgb);

图中包含一个轴对象。axis对象包含一个image类型的对象。

创建一个过滤器。这个平均过滤器包含相同的权重,使过滤后的图像看起来比原始图像更模糊。

h =的(5,5)/ 25;

使用以下方法过滤图像imfilter和显示。

rgb2 = imfilter (rgb, h);图imshow (rgb2)

图中包含一个轴对象。axis对象包含一个image类型的对象。

另请参阅

相关的话题