我有一个经过分割处理的体积(3D矩阵)。该体积大部分由NaN(或零)组成,除了通过某些标准的区域(见图片)。我需要知道每个剩余段落的大小(以体素数为单位),以及它们在2D平面上(xy、xz、yz)的分布情况。是否有任何matlab工具可以帮助我以高效的方式完成此操作,而不是进行直接搜索?该体积可能相当大。例如,在附加的图片中,有一个黄褐色的段落,由7个体素组成,垂直方向比xy方向更长。
提前感谢您的帮助。
![enter image description here](https://istack.dev59.com/6l6QD.webp)
stats = regionprops(image, 'area', 'centroid')
每个特性在结构统计中都有一个条目,其中包含面积(即体素数)和质心。
bwlabeln
的函数。它允许您在三维空间中找到斑点,就像bwlabel
在二维中所做的那样。之后,您可以使用regionprops
查找数据的属性。bwlabeln 用于标记二值图像中连接的组件。 L = bwlabeln(BW) 返回一个包含 BW 中连接组件标签的标签矩阵 L。BW 可以具有任何维度;L 与 BW 大小相同。L 的元素是大于或等于 0 的整数值。标记为 0 的像素是背景。标记为 1 的像素组成一个对象,标记为 2 的像素组成第二个对象,依此类推。当处理二维图像时,默认连通性为 8,处理三维图像时为 26,处理更高维时为 CONNDEF(NDIMS(BW),'maximal')。
regionprops
之前,您不需要调用bwlabeln
。 - Jonas