regionprops
测量图像区域的属性
语法
说明
regionprops
函数测量图像中每个对象(连通分量)的属性,如面积、质心和边界框。regionprops
支持连续区域和不连续区域。
regionprops
使用二维图像的 8 连通邻域和更高维图像的最大连通性在二值图像中查找唯一对象。有关详细信息,请参阅像素连通性。要查找使用其他连通性类型的对象,请使用 bwconncomp
创建连通分量,然后改用 CC
参数将结果传递给 regionprops
。
注意
要测量三维体图像中对象的属性,请考虑改用 regionprops3
。虽然 regionprops
可以接受三维图像,但 regionprops3
支持更多的三维图像统计量。
当您调用 regionprops
函数时,可以省略 properties
参数,在这种情况下,该函数将返回 "Area"
、"Centroid"
和 "BoundingBox"
测量值。
测量二值图像 stats
= regionprops(BW
,properties
)BW
中每个对象的属性。
测量由 stats
= regionprops(CC
,properties
)bwconncomp
返回的结构体 CC
中每个连通分量的属性。
测量标注图像 stats
= regionprops(L
,properties
)L
中每个标注区域的属性。
还使用 stats
= regionprops(outputFormat
,___)outputFormat
参数将返回的测量值的格式指定为结构体数组或表。
示例
输入参数
输出参数
详细信息
提示
ismember
函数可用于创建仅包含符合特定条件的对象或区域的二值图像。例如,以下命令创建一个二值图像,该图像仅包含面积大于 80 且偏心率小于 0.8 的区域。cc = bwconncomp(BW); stats = regionprops(cc,"Area","Eccentricity"); idx = find([stats.Area] > 80 & [stats.Eccentricity] < 0.8); BW2 = ismember(labelmatrix(cc),idx);
regionprops
在计算相关测量值时使用中间结果。因此,在对regionprops
的一次调用中计算所有期望的测量值是最快的。大多数测量值都不需要花太多时间来计算。但是,下列测量值的计算可能需要较长时间,具体取决于
L
中的区域数量:"ConvexHull"
"ConvexImage"
"ConvexArea"
"FilledImage"