文档帮助中心文档
图像局部距离
J = rangefilt(我)
nhood J = rangefilt(我)
例子
J= rangefilt (我)返回的数组J,其中每个输出像素包含在输入图像中的相应像素周围的3×3邻域的范围值(最大值 - 最小值)我.
J= rangefilt (我)
J
我
J= rangefilt (我,nhood)返回局部图像范围我使用指定的邻域,nhood.
J= rangefilt (我,nhood)
nhood
全部折叠
将图像读入工作区。
我= imread (“liftingbody.png”);
过滤的图像。的rangefilt函数返回一个数组,其中每个输出像素包含输入图像中对应像素周围的3 × 3邻域的范围值(最大值-最小值)。
rangefilt
J = rangefilt(我);
并排显示原始图像和过滤后的图像。
imshowpair(我,j,“蒙太奇”)
这个例子展示了如何使用纹理过滤函数检测图像中的纹理区域
将图像读入工作区并显示它。在该图中,背景是平滑的 - 灰度级值的变化很小。在前景中,硬币的表面轮廓表现出更多质地。在此图像中,前景像素具有更多的变化性和更高的范围值。
我= 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,“蒙太奇”);标题(使用指定邻域(左)和默认邻域(右)的范围过滤);
如预期的那样,使用指定邻域的结果强调了垂直边。相比之下,默认滤波器对边缘方向不敏感。
要过滤的图像,指定为任意维度的数字数组。
数据类型:双|uint8|uint16|uint32|逻辑
双
uint8
uint16
uint32
逻辑
真正的(3)
邻域,指定为包含0和1的逻辑或数字数组。的大小nhood必须在每个维度中奇数。rangefilt由确定邻域的中心元素地板(大小(NHOOD) + 1) / 2).
地板(大小(NHOOD) + 1) / 2)
要指定其他形状(如磁盘)的邻域,请使用strel功能创建所需形状的结构化元素对象。然后,从结构化元素对象中提取邻域社区财产。
strel
社区
数据类型:单|双|int8|INT16|int32|int64|uint8|uint16|uint32|uint64|逻辑
单
int8
INT16
int32
int64
uint64
过滤的图像,返回为数字数组,与输入图像相同的大小和类我,有符号整数数据类型除外。有符号数据类型的输出类是相应的无符号整数数据类型。例如,如果类我是int8,然后是班级J是uint8.
rangefilt使用形态函数imdilate和imerode确定指定邻域中的最大值和最小值。最后,rangefilt使用这些形态功能的填充行为。
imdilate
imerode
stdfilt
entropyfilt.
getnhood
offsetstrel
您有这个示例的修改版本。您想打开这个示例与您的编辑吗?
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:.
您还可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
与当地办事处联系