主要内容

imfill

填补图像区域和漏洞

描述

例子

BW2= imfill (BW,位置)执行flood-fill操作背景像素的输入二进制图像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 (BW0,康涅狄格州)让你覆盖默认的连接交互指定地点。

(BW2,locations_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(我)标题(原始图像的)

图包含一个坐标轴对象。标题为原始图像的坐标轴对象包含一个类型的对象的形象。

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

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

图包含一个坐标轴对象。坐标轴对象标题原始图像转换为二进制图像包含一个类型的对象的形象。

填补在二进制图像和显示结果。

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

图包含一个坐标轴对象。轴与标题填满图像对象包含一个类型的对象的形象。

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

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

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

输入参数

全部折叠

二进制图像,指定为一个逻辑阵列的维度。

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

数据类型:逻辑

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

例子:[3 3]

数据类型:

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

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

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

像素连接,指定为这个表中的值之一。默认的连接是4对于二维的图像,和63 d图像。

价值

意义

二维的连接性

4

边缘像素连接如果他们的联系。附近一个像素的相邻像素在水平或垂直方向。

3×3像素附近有四个像素连接到中心像素

当前像素显示在灰色。

8

像素连接如果边缘或角落联系。附近一个像素的相邻像素在水平、垂直或对角线方向。

3×3像素邻域与8像素连接到中心像素

当前像素显示在灰色。

三维的连接性

6

像素如果他们的脸碰相连。附近的一个像素的相邻像素:

  • 其中一个方向:,,,,,

3-by-3-by-3像素邻域与6像素与中心像素的脸

当前像素显示在灰色。

18

边缘像素连接如果他们的脸或联系。附近的一个像素的相邻像素:

  • 其中一个方向:,,,,,

  • 两个方向的组合,如完全地或在

3-by-3-by-3像素邻域与6像素连接到脸和12像素与中心像素的边缘

当前像素是立方体的中心。

26

像素连接如果他们的脸、边缘或角落联系。附近的一个像素的相邻像素:

  • 其中一个方向:,,,,,

  • 两个方向的组合,如完全地或在

  • 三个方向的组合,如in-right-up或in-left-down

3-by-3-by-3像素邻域与6像素连接到脸,12像素连接到边缘,和8个像素与中心像素的角落

当前像素是立方体的中心。

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

连接也可以定义在一个更一般的方法对于任何维度通过指定3-by-3-by -…3的矩阵0年代和1年代。1价值元素定义社区位置相对的中心元素康涅狄格州。请注意,康涅狄格州必须对其中心对称元素。看到指定自定义连接性为更多的信息。

数据类型:|逻辑

输出参数

全部折叠

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

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

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

算法

imfill使用一个算法基于形态学重建[1]

引用

[1]Soille, P。形态学图像分析:原理及应用斯普林格出版社,1999年,页173 - 174。

扩展功能

版本历史

之前介绍过的R2006a