import random
# 模拟计算Map的过程,讨论confidence对于map是否有影响
# 结论,是有影响的。实际上,与gt越接近的预测框的置信度越高,那么实际测出来的map就越高 => 影响precision
# 而且提交的预测框的个数越接近于gt框个数,则map越高 => 影响recall
def voc_ap(rec, prec, use_07_metric=True):
""" ap = voc_ap(rec, prec, [use_07_metric])
Compute VOC AP given precision and recall.
If use_07_metric is true, uses the
VOC 07 11 point method (default:True).
"""
if use_07_metric:
# 11 point metric
ap = 0.
for t in np.arange(0., 1.1, 0.1):
if np.sum(rec >= t) == 0:
p = 0
else:
p = np.max(prec[rec >= t])
ap = ap + p / 11.
else:
# correct AP calculation
# first append sentinel values at the end
mrec = np.concatenate(([0.], rec, [1.]))
mpre = np.concatenate(([0.], prec, [0.]))
# compute the prec
模拟计算Map的过程,讨论confidence对于map是否有影响
最新推荐文章于 2023-07-25 00:28:58 发布
本文详细模拟了目标检测中计算Map的流程,并深入分析了Confidence值如何影响Map的最终结果,揭示了Confidence在评估检测性能中的关键作用。
摘要由CSDN通过智能技术生成