2016 - 2024

感恩一路有你

使用regionprops函数解释PixelList性质

浏览量:3375 时间:2024-08-07 21:56:44 作者:采采

在matlab中进行图像处理时,常常会用到regionprops函数。这个函数包含了多个性质,今天我们主要分享如何理解其中的PixelList性质。从帮助文件上很难完全理解PixelList的含义,因此下面将通过实例来解释。

读取并二值化图像

首先,我们需要读取一张图片,并对其进行二值化处理。代码如下:

```

image1 imread('');

image2 im2bw(image1);

```

经过二值化处理后,图像以变量形式显示在右侧的workspace窗口中。二值化后的图像只有两种数值,0和1。显示的图像是逻辑形式,其中0表示FALSE,1表示TRUE。图像的大小为1323*534,即1323行,534列。你可以双击img变量,查看当前图像的0和1表示。

将图像写入Excel并标红

现在,我们将二值化后的图像写入Excel以备后续使用。使用xlswrite函数将img写入一个名为filename.xlsx的Excel文件中。写入后,你会发现图像不再是原来的0和1,这印证了img的数据类型是逻辑型。

接下来,我们对Excel中的数据进行标红处理。选择所有数据后,点击条件格式,然后选择突出显示单元格规则,再选择文本包含。在弹出的窗口中输入TRUE,并确定。你会发现所有的TRUE单元格都被标红了。缩小Excel表格,你会发现一个似乎有形状的图案。与之前读入的图片进行对比,发现它们是一样的。

了解PixelList属性

在图像经过二值化处理后,我们可以对其中的空洞进行填充,然后使用regionprops()函数获得图像的三个属性:centroid(质心),boundingBox(边界框),pixelList(像素列表)。

点击region这个变量,再点击第一个单元格,再点击pixelList选项。你会看到两列数字,第一列共有21个数字,第二列数字从32开始到52连续增加。回过头来对比标红的Excel,你会发现w是第23列,而第一个标红的TRUE是从32开始,到52结束。因此,显而易见,pixelList中的第一列代表region像素的x坐标,第二列代表region像素的y坐标。需要注意的是,此时坐标系的原点在左上角。

希望以上解释对你有所帮助,理解了PixelList属性的含义。

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。