pycocotools提供的COCOeval非常方便,可以让我们计算目标检测结果的mAP.一般常见的代码是
cocoEval.evaluate()
cocoEval.accumulate()
cocoEval.summarize()
会将最终的计算结果在终端输出,如下图所示
如果我们想将最终的结果返回,该怎么做呢?
我在认真阅读了pycocotools/cocoeval.py的源代码,发现在COCOeval类中定义了stats实例属性,cocoEval.summarize()函数中给stats实例属性赋值了,因此,我们只要读取这个实例属性就可以了。
cocoEval.evaluate()
cocoEval.accumulate()
cocoEval.summarize()
mAP_result = cocoEval.stats
返回的是一个列表,把mAP_result打印出来如下
可以发现,结果对应的是最终的结果。