主要内容

imfill

填充图像区域和洞

描述

例子

BW2= imfill (BW位置对输入二值图像的背景像素执行填充操作BW,从中指定的点开始位置

BW2= imfill (BW位置康涅狄格州填充定义的区域位置,在那里康涅狄格州指定连接。

例子

BW2= imfill (BW,“漏洞”)填充输入二值图像中的洞BW.在这个语法中,洞是一组背景像素,从图像的边缘填充背景是无法到达的。

例子

BW2= imfill (BW康涅狄格州,“漏洞”)填补二值图像中的漏洞BW,在那里康涅狄格州指定连接。

例子

I2= imfill (填补灰度图像中的漏洞.在这个语法中,洞被定义为由较浅像素包围的深色像素区域。

例子

I2= imfill (康涅狄格州填补灰度图像中的漏洞,在那里康涅狄格州指定连接。

BW2= imfill (BW显示二进制图像BW并允许您通过鼠标交互选择点来定义要填充的区域。要使用这种语法,BW必须是二维图像。

新闻退格删除删除先前选定的点。Shift-click、右键单击或双击以选择最后一个点并开始填充操作。新闻返回在不添加点的情况下完成选择。

BW2= imfill (BW,0,康涅狄格州让您在以交互方式指定位置时覆盖默认连接。

BW2locations_out) = imfill (BW返回在交互中选择的点的位置locations_out.要使用这种语法,BW必须是二维图像。

例子

全部折叠

BW1 =逻辑([1 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 1 0 0 0 1 0 1 0 1 0 0 0 1 1 1 0 1 1 1 1 0 1 1 1 1 0 0 1 1 0 1 0 1 0 0 0 1 0 1 0 1 0 0 0 1 1 1 0]);BW2 = imfill(BW1,[3 3],8)
BW2 =8×8逻辑阵列1 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 0 1 0 0 0 1 1 1 0 1 0 0 0 1 1 1 0

将图像读取到工作区。

我= imread (“coins.png”);图imshow(我)标题(原始图像的

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

将图像转换为二进制图像。

BW = imbinarize(我);图imshow (BW)标题(“原始图像转换为二值图像”

图中包含一个轴对象。标题为“原始图像转换为二值图像”的轴对象包含一个类型为“图像”的对象。

填充二值图像中的空洞并显示结果。

BW2 = imfill (BW,“黑洞”);图imshow (BW2)标题(“填充图像”

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

我= imread (“tire.tif”);I2 = imfill(我);figure, imshow(I), figure, imshow(I2)

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

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

输入参数

全部折叠

二进制映像,指定为任意维度的逻辑数组。

例子:BW = imread(“text.png”);

数据类型:逻辑

标识像素位置的线性索引,指定为数字向量或正整数的二维数字矩阵。如果位置是一个p-by-1向量,然后它包含起始位置的线性索引。如果位置是一个p——- - - - - -ndims (BW)矩阵,则每一行包含一个起始位置的数组索引。

例子:[3 3]

数据类型:

灰度图像,指定为任意维度的数字数组。

例子:I = imread(“cameraman.tif”);

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

像素连接性,指定为该表中的一个值。默认连接是4用于二维图像63 d图像。

价值

意义

二维的连接性

四连接

如果像素的边缘相接触,则它们是连接的。一个像素的邻域是在水平或垂直方向上相邻的像素。

8-connected

如果像素的边缘或角相接触,则它们是连通的。像素的邻域是水平、垂直或对角方向上相邻的像素。

三维的连接性

6-connected

如果它们的脸相接触,像素就会连接起来。一个像素的邻域是:

  • 其中一个方向:进,出,左,右,上,下

18-connected

如果像素的面或边缘相接触,它们就被连接起来。一个像素的邻域是:

  • 其中一个方向:进,出,左,右,上,下

  • 两个方向的组合,如垂直或向上

26-connected

如果像素的面、边或角相接触,则它们是相连的。一个像素的邻域是:

  • 其中一个方向:进,出,左,右,上,下

  • 两个方向的组合,如垂直或向上

  • 三个方向的组合,如右上或左下

更高的维度,imfill使用默认值conndef(ndims (BW),“最小”)

连通性也可以通过指定一个3 × 3 ×…3的矩阵0年代和1年代。1-值元素定义相对于的中心元素的邻域位置康涅狄格州.请注意,康涅狄格州必须对中心元素对称。看到指定自定义连接性为更多的信息。

数据类型:|逻辑

输出参数

全部折叠

填充的二进制图像,作为逻辑数组返回。

像素位置的线性索引,作为数字向量或矩阵返回。

填充的灰度图像,作为数字数组返回。

算法

imfill采用基于形态重构的算法[1]

参考文献

[1] Soille, P。形态学图像分析原理与应用, Springer-Verlag, 1999,第173-174页。

扩展功能

之前介绍过的R2006a