如何有效地对 np 数组中的出现次数求和?面具面积 RCNN.



我正在使用库 MaskRCNN,我想获取每个掩码的区域。 所有掩码都是一个值为 False 或 True 的数组 (W x H(。所有真代表一个面具,所有假代表一个背景。

#mask 0
r['masks'][:,:,0] 
#output-->
array([[False, False, False, ..., False, False, False],
[False, False, False, ..., False, False, False],
[False, False, False, ..., False, False, False],
...,
[False, False, False, ..., False, False, False],
[False, False, False, ..., False, False, False],
[False, False, False, ..., False, False, False]])

如何遍历所有事件并在列和行中对所有真实事件求和?

我想这给了我以像素为单位的蒙版面积,我可以插入真实区域。

基于前面的问题,您首先需要展平 numpy 数组,因此应用相同的思想,即

flat_r = numpy.flatten(r['masks'][:,:,0])
unique, counts = numpy.unique(flat_r, return_counts=True)
print(dict(zip(unique, counts))) 
# {False: 7, True: 4}

克劳迪奥的回答很好,但我也找到了一个简单的方法。

true_occurrences= np.sum(r['masks'][:,:,0])

最新更新