2024年5月11日发(作者:)

Matlab图像处理函数:regionprops

这里给出在Matlab图像处理工具箱中非常重要的一个图像分析函数:

regionprops。顾名思义:它的用途是get the properties of region,即用来

度量图像区域属性的函数。

语法

STATS = regionprops(L,properties)

描述

测量标注矩阵L中每一个标注区域的一系列属性。L中不同的正整数元素对应不

同的区域,例如:L中等于整数1的元素对应区域1;L中等于整数2的元素对

应区域2;以此类推。返回值STATS是一个长度为max(L(:))的结构数组,结构

数组的相应域定义了每一个区域相应属性下的度量。properties 可以是由逗号

分割的字符串列表、饱含字符串的单元数组、单个字符串 'all' 或者 'basic'。

如果 properties 等于字符串 'all',则所有下述字串列表中的度量数据都将被

计算,如果 properties 没有指定或者等于 'basic',则属性: 'Area',

'Centroid', 和 'BoundingBox' 将被计算。下面的列表就是所有有效的属性字

符串,它们大小写敏感并且可以缩写。

属性字符串列表

Area EquivDiameter MajorAxisLength

MinorAxisLength

Orientation

PixelIdxList

PixelList

Solidity

BoundingBox EulerNumber

Centroid

ConvexArea

ConvexHull

Extent

Extrema

FilledArea

ConvexImage FilledImage

Eccentricity Image

属性详细定义

本部分将结合一个具体的例子说明各种字串相关属性的意义,矩阵取自在蚁蛉模

式识别中做过预处理后的斑纹分割图像,如下图:

这是一幅二值图像,在应用regionprops函数之前必须将其标注,可以调用

bwlabel函数和伪彩色处理,标注后的图像如下图:

下面基于以上的材料来考察属性的含义。

'Area'

是标量,计算出在图像各个区域中像素总个数。注意:这个数值可能与由函数

bwarea 计算的值有轻微的不同。对于这样一个数值,我们可以使用它除以整个

图像区域的像素个数而得到斑纹比例,可以作为模式识别的候选特征,并且这个

特征是仿射不变的。在本例中最后计算出的面积向量是

[3.8952,9.7213,17.663,3.5762,1.3432,1.6958,0.41974,0.41974,21.625,12.

324,4.8187,1.5111]/10000.