前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >对象检测网络中的mAP到底怎么计算出来的

对象检测网络中的mAP到底怎么计算出来的

作者头像
OpenCV学堂
发布2018-10-23 10:57:50
2.4K0
发布2018-10-23 10:57:50
举报

微信公众号:OpenCV学堂 关注获取更多计算机视觉与深度学习知识 觉得文章对你有用,请戳底部广告支持

一:相关名词解释

mAP是英文mean Average Precision的全称,同时也是衡量深度学习中对象检测算法准确率的一个重要指标,mAP的计算涉及到很多专业的术语与解释,首先就来认识一下这些术语名词与解释:

IOU 英文全称是(Intersection-over-Union)并交比, 在对象检测中只有那些并交比大于0.5的才被认为是TP(True Position)即正确匹配与预测。关于IOU的形象解释如下图:

对于正确标注数据框与预测数据框,交并比的图示如下:

TP(Ture Position) 表示预测与真实标注框保持了一致,但是还没有被正确的检测出来的,简单直白的点说就是将要成功预测。

FP(False Position) 表示预测与真实不符合,假设真实标注框是CAR、FP表示你有多少预测是CAR但是实际对象不是CAR,所谓的假阳性。

FN(False Negatives) 表示有多少个真实标注框没有被检测到,以VOC数据集中CAR为例,表示有多少CAR对象没有被检测出来。

二:计算均值平均精度(mAP)与召回率(recall)

搞清楚上面的几个专业名词解释真实含义之后,计算mAP与recall就会相对比较容易理解。下面是给出来计算TP、FP、FN的伪代码如下:

代码语言:javascript
复制
iterate through entire list of predictions for all images
if IOU > threshold
    if object not detected yet
        TP++
    else
        FP++    // nms should reduce # of overlapping predictions
else 
    FP++

if no prediction made for an image
FN++

最终计算mAP与召回率公式如下:

代码语言:javascript
复制
mAP = TP/(TP+FP)
Recall = TP/(TP+FN)

mAP与recall的曲线随着训练时间的推移,都会不断的上升,预示着对象检测率不断提升、模型正在正常训练过程中,如果发现训练时候mAP曲线没有上升或者有值一直很小,就说明模型训练出现了问题,需要仔细检查模型构造与数据。同时mAP指标也是衡量一个对象检测模型好坏的重要指标数据,在tensorflow常用的对象检测模型基于COCO数据集训练得到mAP指标对比列表如下:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-10-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 OpenCV学堂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一:相关名词解释
  • 二:计算均值平均精度(mAP)与召回率(recall)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档