我正在使用库 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])