我在Matlab中有一个1 x和0的N x N x N矩阵,如this question中所述。 1,一组形式的簇,从一个1的一组与任何其他1分开至少一个0.我想计算每个簇的大小(最小和最大直径),它的体积及其表面积,还要计算每个簇的簇数和标记(簇1,簇2等)。是否有任何现成的matlab函数可以帮助或者我应该遵循程序方法吗?
答案 0 :(得分:2)
regionprops
会让你接近,虽然有些功能只针对2D实现。例如,如果您有一个数组clusterArray
lblArray = bwlabeln(clusterArray); %# tags each cluster
%# get some measurements directly
stats = regionprops(lblArray, 'Area', 'Centroid', 'BoundingBox'); %# look at the help for more info
%# for other measurements, loop over the clusters
for iLabel = 1:max(lblArray(:))
currentCluster = lblArray == iLabel; %# clusterArray with single cluster
%# your code here..
end