Python regionprops sci-kit图像

时间:2014-08-20 16:32:10

标签: image image-processing

我正在使用sci-kit图像来获取分割图像的“regionprops”。然后,我希望用相应的统计量(例如偏心率)替换每个段标签。

from skimage import segmentation
from skimage.measure import regionprops

#a segmented image
labels = segmentation.slic(img1, compactness=10, n_segments=200)
propimage = labels
#props loop
for region in regionprops(labels1, properties ='eccentricity') :
    eccentricity = region.eccentricity 
    propimage[propimage==region] = eccentricity

这会运行,但是propimage值不会从原始标签更改

我也尝试过:

for i in range(0,max(labels)):
     prop = regions[i].eccentricity #the way to cal a single prop
     propimage[i]= prop

这会导致此错误 ValueError:具有多个元素的数组的真值是不明确的。使用a.any()或a.all()

我是matlab的最近移民,我实现了这一点,但使用的数据结构完全不同。

任何人都能帮助我吗?

谢谢

1 个答案:

答案 0 :(得分:0)

使用scipy中的ndimage:sum()函数可以使用你的标签数组来运行。

from scipy import ndimage as nd
sizes = nd.sum(label_file[0]>0, labels=label_file[0], index=np.arange(0,label_file[1])

然后,您可以使用numpy.histogram等评估分布。