主要内容

rangefilt

当地的形象

描述

例子

J= rangefilt ()返回的数组J,每个输出像素包含范围值(−最大值最小值)周围的3×3小区对应的输入图像的像素

例子

J= rangefilt (,nhood)返回本地范围的形象使用指定的小区,nhood

例子

全部折叠

读一个图像到工作区中。

我= imread (“liftingbody.png”);

过滤的图像。的rangefilt函数返回一个数组,其中每个输出像素包含范围值(最大值-最小值)周围的3×3小区对应的输入图像的像素。

J = rangefilt(我);

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

imshowpair (I, J,“蒙太奇”)

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象的形象。

这个例子展示了如何检测区域的纹理图像使用纹理过滤功能

读一个图像到工作区中显示它。在图中,背景是smooth-there灰度值的变化很少。在前台,表面轮廓的硬币表现出更多的纹理。在这幅图像中,前景像素有更多的可变性,从而更高的范围值。

我= imread (“eight.tif”);imshow(我)

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象的形象。

过滤的图像rangefilt功能和显示结果。范围过滤使硬币的边缘和轮廓清晰可见。

K = rangefilt(我);图imshow (K)

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象的形象。

读一个图像到工作区中,显示它。

我= imread (“circuit.tif”);imshow(我);

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象的形象。

定义一个社区。在这个例子中,社区返回一个较大的值,当有一个大区别像素值的左和右输入像素。过滤不考虑输入像素像素之上和打击。因此,这个社区强调垂直边缘。

nhood = (1 1 1);

使用这个社区执行范围过滤操作。相比之下,3×3的邻居也使用默认的执行范围过滤。比较结果。

J = rangefilt(我nhood);K = rangefilt(我);图imshowpair (J, K,“蒙太奇”);标题(范围使用指定的左邻右舍(左)和默认过滤(右));

图包含一个坐标轴对象。坐标轴对象标题范围过滤使用指定的左邻右舍(左)和违约(右)包含一个类型的对象的形象。

结果使用指定的社区强调垂直边缘,如预期。相比之下,默认的过滤器是对边缘方向不敏感。

输入参数

全部折叠

图像过滤,指定为一个数值数组的维度。

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

社区,指定为一个逻辑或包含0和1的数字数组。的大小nhood必须在每个维度是奇数。rangefilt决定了社区的中心元素地板(大小(nhood) + 1) / 2)

指定的其他形状,如磁盘,使用strel函数创建一个结构化元素的对象所需的形状。然后,从结构化元素对象的提取附近社区财产。

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

输出参数

全部折叠

过滤后的形象,作为一个数字返回图像相同大小的数组作为输入

如果的数据类型,,或者一个无符号数据类型等uint8的数据类型J的数据类型是一样的吗。如果int8,int16,或int32的数据类型Juint8,uint16,或uint32,分别。

数据类型:|房子的|uint8|uint16|uint32

算法

rangefilt使用形态函数imdilateimerode确定最大和最小值在指定的社区。因此,rangefilt使用填充这些形态功能的行为。

扩展功能

版本历史

之前介绍过的R2006a

全部展开