def test_box_mean_avg_precision():
boxes1 = [(1, 1, 3, 3), (4, 2, 2, 3), (5, 5, 2, 1)]
labels1 = ['class1', 'class2', 'class1']
scores1 = [0.5, 0.2, 0.1]
boxes2 = [(2, 1, 2, 3), (4, 3, 2, 3)]
labels2 = ['class1', 'class2']
scores2 = [0.5, 0.2]
mAP = nm.box_mean_avg_precision(boxes1, labels1, boxes1, labels1, scores1)
assert mAP == 1.0
mAP = nm.box_mean_avg_precision(boxes2, labels2, boxes2, labels2, scores2)
assert mAP == 1.0
mAP = nm.box_mean_avg_precision(boxes1, labels1, [], [], [])
assert mAP == 0.0
mAP = nm.box_mean_avg_precision([], [], boxes1, labels1, scores1)
assert mAP == 0.0
mAP = nm.box_mean_avg_precision(boxes1, labels1, boxes2, labels2, scores2)
assert mAP == approx(0.77, abs=1e-2)
评论列表
文章目录