mmdetection 测试时获取precision指标

在mmdetection中,测试时通过调用mmdet/datasets/voc.py的evaluate()和mmdet/core/evalution/mean_ap.py的eval_map()计算AP值。虽然eval_map()能提供Recall和Precision,但默认未输出。可通过处理eval_map()的返回结果,如result[0],来获取各类别的Precision和Recall。详细方法和原理可参考相关博客进行学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

运行tool/test.py时,会调用mmdet/datasets/voc.py中的evaluate()函数计算AP值,而evaluate()又是调用mmdet/core/evalution/mean_ap.py中的eval_map()函数获取AP值。其实这个函数eval_map()也可以得到Recall和Precision,只是mmdetection的代码中没有这样处理。

先看一下eval_map()返回的内容:

 mean_ap就是MAP值,另一个eval_results是一个存储字典的列表,存储的是每一类对应的真实框个数、检测框个数、召回率、精度和平均精度。

 然后再看一下evaluate()是怎么接受eval_map()返回的内容:

它只对mean_ap做处理,并没有在这里得到Precision和Recall。所以可以参考下面的方式获取Precision和Recall。

result[0]表示第一类对应的字典,存储了真实框个数、检测框个数、召回率、精度

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值