文档

imboxfilt

图像的二维盒滤波

语法

B = imboxfilt(A)
B = imboxfilt(A,filterSize)
B = imboxfilt(___、名称、值)

描述

例子

B= imboxfilt (一个过滤器的形象一个用一个2维3乘3的盒子过滤器。盒滤波器也称为均值滤波器。

例子

B= imboxfilt (一个filterSize过滤器的形象一个的2-D框过滤器,大小为filterSize

例子

B= imboxfilt (___名称,值过滤器的形象一个使用2-D框过滤器,其中名称-值对控制过滤的各个方面。

例子

全部折叠

将图像读入工作区。

A = imread(“cameraman.tif”);

使用11 × 11过滤器进行均值过滤。

localMean = imboxfilt(A,11);

并排显示原始图像和过滤后的图像。

imshowpair (localMean,“蒙太奇”

将图像读入工作区。

A = imread(“cameraman.tif”);

将图像的数据类型更改为避免整数溢出。

A = double(A);

过滤图像,计算局部区域和,使用15 × 15框滤波器。若要计算局部区域和,而不是平均值,请设置NormalizationFactor参数为1。

localsum = imboxfilt(A, 15,“NormalizationFactor”1);

并排显示原始图像和过滤后的图像。

imshowpair (localSums,“蒙太奇”

输入参数

全部折叠

要过滤的图像,指定为任何维度的实非稀疏数组。

如果一个包含nan的行为imboxfilt是未定义的。当使用基于积分图像的滤波时,就会发生这种情况。限制…的传播而且nan在输出中,考虑使用imfilter代替。

数据类型:||int8|int16|int32|uint8|uint16|uint32

盒子过滤器的大小,指定为正奇数的标量或2元素向量。如果filterSize为标量,则盒形滤波器为方形。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

名称-值对参数

的可选逗号分隔对名称,值参数。的名字参数名称和价值对应的值。的名字必须出现在单引号内(' ').您可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:A = imread('cameraman.tif');B = imboxfilt(A,5,'Padding','circular');

全部折叠

填充模式,指定为下列值之一或数值标量。如果指定一个标量值,则图像边界之外的输入图像像素将隐式地假定具有该标量值。

价值 描述
“圆” 在图像边界之外的输入图像值通过隐式假设输入图像是周期性的来计算。
“复制” 假设图像边界外的输入图像值等于最近的图像边界值。
“对称” 超出图像边界的输入图像值通过在数组边界上对数组进行镜像反射来计算。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|字符|字符串

应用于盒形滤波器的归一化因子,指定为数值标量。

默认的“NormalizationFactor”均值滤波器的效果-输出图像中的像素是由确定的邻域上图像的局部均值吗filterSize.若要获取局部区域和,请设置“NormalizationFactor”1.为了避免在这种情况下溢出,可以考虑通过将输入图像转换为类来使用双精度图像

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

输出参数

全部折叠

过滤后的图像,返回一个实数,非稀疏矩阵,大小与输入图像相同。

算法

imboxfilt使用基于卷积的过滤或积分图像过滤执行过滤,使用内部启发式来确定使用哪种过滤方法。

扩展功能

在R2015b中引入

这个话题有用吗?