目标检测——评价指标(1)
1.评价指标-目标检测
- 混淆矩阵 (Confusion Matrix)
- 准确率 (Accuracy)
- 精确率(Precision)
- 召回率(Recall)
- 平均正确率(AP)
- mean Average Precision(mAP)
- 交除并(IOU)
- ROC + AUC
- ROC与P-R比较
- 非极大值抑制(NMS)
(1)混淆矩阵
- 混淆矩阵中的纵轴是模型预测的类别数量统计,横轴是数据真实标签的数量统计。
- 对角线,表示模型预测和数据标签一致的数目,所以对角线之和除以测试集总数就是准确率。对角线上数字越大越好,在可视化结果中颜色越深,说明模型在该类的预测准确率越高。如果按行来看,每行不在对角线位置的就是错误预测的类别。总的来说,我们希望对角线越高越好,非对角线越低越好。
(2)Accuracy、Precision、Recal、P-R曲线(AP、mAP)
- Accuracy:
- 准确率= 分对的样本数除以所有的样本数 ,即:准确(分类)率 = 正确预测的正反例数 / 总数。- 准确率一般用来评估模型的全局准确程度,不能包含太多信息,无法全面评价一个模型性能。
- Precision:
Precision其实就是在识别出来的图片中,True positives所占的比率。
- True positives : 正样本被正确识别为正样本。 - True negatives: 负样本被正确识别为负样本。 - False positives: 假的正样本,即负样本被错误识别为正样本。 - False negatives: 假的负样本,即正样本被错误识别为负样本。
Recall:
Recall 是测试集中所有正样本样例中,被正确识别为正样本的比例。
P-R曲线:AP、mAP
AP就是Precision、Recall与x轴和y轴围成的面积。mAP就是对所有的AP值求平均。
- Precision-Precision曲线:改变识别阈值,使得系统依次能够识别前K张图片,阈值的变化同时会导致Precision与Recall值发生变化,从而得到曲线。- AP就是Precision-recall 曲线下面的面积,通常来说一个越好的分类器,AP值越高。- mAP是多个类别AP的平均值。这个mean的意思是对每个类的AP再求平均,得到的就是mAP的值,mAP的大小一定在[0,1]区间,越大越好。该指标是目标检测算法中最重要的一个。- 在正样本非常少的情况下,PR表现的效果会更好。
(3)IOU、CIOU、GIOU
- IOU:表达bounding box(预测框)和groundtruth(便签标记的真实值)差异的指标。
- CIOU
- GIOU
参考:https://www.cnblogs.com/qianchaomoon/p/12389787.html
(4)ROC(Receiver Operating Characteristic)曲线与AUC(Area Under Curve)
- ROC曲线:
- 横坐标:假正率(False positive rate, FPR),FPR = FP / [ FP + TN] ,代表所有负样本中错误预测为正样本的概率,假警报率;- 纵坐标:真正率(True positive rate, TPR),TPR = TP / [ TP + FN] ,代表所有正样本中预测正确的概率,命中率。- 对角线对应于随机猜测模型,而(0,1)对应于所有整理排在所有反例之前的理想模型。曲线越接近左上角,分类器的性能越好。- 当测试集中的正负样本的分布变化的时候,ROC曲线能够保持不变
ROC曲线绘制:
(1)根据每个测试样本属于正样本的概率值从大到小排序;
(2)从高到低,依次将“Score”值作为阈值(threshold),当测试样本属于正样本的概率大于或等于这个阈值(threshold)时,我们认为它为正样本,否则为负样本;
(3)每次选取一个不同的阈值(threshold),我们就可以得到一组FPR(假正率)和TPR(真正率),即ROC曲线上的一点。
- 当我们将阈值(threshold)设置为1和0时,分别可以得到ROC曲线上的(0,0)和(1,1)两个点。将这些(FPR,TPR)对连接起来,就得到了ROC曲线。当threshold取值越多,ROC曲线越平滑。
- AUC曲线:
AUC(Area Under Curve)即为ROC曲线下的面积。
- AUC越接近于1,分类器性能越好。
- AUC值是一个概率值,随机挑选一个正样本以及一个负样本,当前的分类算法根据计算得到的Score值,将这个正样本排在负样本前面的概率就是AUC值。
- AUC值越大,当前的分类算法越有可能将正样本排在负样本前面,即能够更好的分类。
- ROC与P-R对比:
(5)非极大值抑制(NMS)、soft-nms
- NMS(Non-Maximum Suppression):
根据score矩阵和region的坐标信息,从中找到置信度比较高的bounding box。对于有重叠在一起的预测框,只保留得分最高的那个。
- 非极大值抑制算法(Non-maximum suppression, NMS)的本质是搜索局部极大值,抑制非极大值元素。
- 通常的做法是将检测框按得分排序,然后保留得分最高的框,同时删除与该框重叠面积大于一定比例的其它框。
实现方法:
(1)NMS计算出每一个bounding box的面积,然后根据score进行排序,把score最大的bounding box作为队列中首个要比较的对象;
(2)计算其余bounding box与当前最大score与box的IoU,去除IoU大于设定的阈值的bounding box,保留小的IoU得预测框;
(3)然后重复上面的过程,直至候选bounding box为空。
最终,检测了bounding box的过程中有两个阈值,一个就是IoU,另一个是在过程之后,从候选的bounding box中剔除score小于阈值的bounding box。需要注意的是:Non-Maximum Suppression一次处理一个类别,如果有N个类别,Non-Maximum Suppression就需要执行N次。
NMS的缺点:(结合下图展现)
- (贪心式方法)红色框和绿色框是当前的检测结果,二者的得分分别是0.95和0.80。如果按照传统的NMS进行处理,首先选中得分最高的红色框,然后绿色框就会因为与之重叠面积过大而被删掉。
- 其次,NMS的阈值也不太容易确定,设小了会出现下图的情况(绿色框因为和红色框重叠面积较大而被删掉),设置过高又容易增大误检。
- soft-nms思路:不要粗鲁地删除所有IOU大于阈值的框,而是降低其置信度。
- 用一行代码来替换掉原来的NMS,按照下图整个处理一遍之后,指定一个置信度阈值,然后最后得分大于该阈值的检测框得以保留。
- 假如还检测出了3号框,而我们的最终目标是检测出1号和2号框,并且剔除3号框。(下面的第二张图)
(1)原始的nms只会检测出一个1号框并剔除2号框和3号框,而soft-nms算法可以对1、2、3号检测狂进行置信度排序。
(2)可以知道这三个框的置信度从大到小的顺序依次为:1->2->3(由于是使用了惩罚,所有可以获得这种大小关系),如果我们再选择了合适的置信度阈值,就可以保留1号和2号,同时剔除3号,实现我们的功能。- 但是,这里也有一个问题就是置信度的阈值如何选择,作者在这里依然使用手工设置的值,依然存在很大的局限性,所以该算法依然存在改进的空间。
备注:
大部分内容来自博客(本博文参考博客):https://www.cnblogs.com/eilearn/p/9071440.html
目标检测——评价指标(1)相关推荐
- Python 深度学习目标检测评价指标 :mAP、Precision、Recall、AP、IOU等
目标检测评价指标: 准确率 (Accuracy),混淆矩阵 (Confusion Matrix),精确率(Precision),召回率(Recall),平均正确率(AP),mean Average P ...
- 信度和效度经典例子_浅析经典目标检测评价指标--mmAP(一)
大家好,我是旷视科技南京研究院研究员赵博睿,主要研究领域为目标检测.今天和大家聊聊mmAP的那些事- 目标检测是计算机视觉领域的一项基础问题,在许多智能场景的落地应用中目标检测通常都是视觉感知的第一步 ...
- 目标检测评价指标(一文看懂)
目标检测评价指标之--Precision,Recall,IOU,AP,mAP 看了一些介绍目标检测评价指标的文章,在此做一个小总结,供大家参考. 文章目录 目标检测评价指标之--Precision ...
- 【目标检测评价指标】
目标检测评价指标 1.正例和负例的定义 2.混淆矩阵(Confusion Matrix) 3.PR曲线 4.F1 score 参考资料: https://github.com/rafaelpadill ...
- 目标检测评价指标合集
目标检测评价指标 混淆矩阵(confusion matrix)可谓是贯穿了整个目标检测评价体系,衍生了一系列的目标检测评价指标,如精确率(precision),准确率(accuracy),召回率(re ...
- 目标检测系列1—目标检测评价指标IOU
目标检测评价指标IOU 什么是IOU IOU的特点 全部实现 什么是IOU 神经网络的应用还有许多,目标检测就是其中之一,目标检测中有一个很重要的概念便是IOU. IOU是一种评价目标检测器的一种指标 ...
- 目标检测评价指标mAP
目标检测评价指标 mAP是目标检测中常用的评价指标之一,在论文中可以经常看到.全称是mean average precision (mAP)即各个类别AP的平均值.常用的评测指标有: mAP: mea ...
- 目标检测——评价指标的学习笔记
1 前言 评价指标在目标检测的任务中是十分重要的- 2 分类问题的评价指标(二分类) 2.1 召回率--recall 召回率的公式为 recall=TPTP+FNrecall = \frac{TP}{ ...
- 目标检测评价指标 AP、mAP
目标检测中的TP.FP.FN 所有检测框都认为是Predicted Positive 所有真实框都是Ground-truth Positive 若一个检测框与一个真实框的IOU>阈值并对正确分类 ...
- 目标检测评价指标汇总—mAP,PR曲线,F1分数,FPPI,log-average miss rate等
对于了解目标检测的评价指标是很重要的,否则自己不懂这个代表什么意思,如何调参.网上有太多资料,可是杂乱,甚至有一乱说,记录下自己所学,总结下,也分享出来,也便于自己自己复习. 分为三块,1.解释相关概 ...
最新文章
- controller不跳转页面的几个原因_狗狗为什么不睡觉?是这几个原因
- 博客迁移至http://www.vlix.org/
- Google Chrome获取AR API,Daydream支持
- 自动化Cobbler安装
- 聚类算法 距离矩阵_谱聚类
- A+B问题(信息学奥赛一本通-T1006)
- oracle 9 创建数据库,Oracle 9i创建数据库(转)
- Java_GPS经纬度转坐标
- java压缩图片thumbnails_Java压缩图片、减小图片文件体积大小,Thumbnails使用教程...
- java微信授权登录回调地址,微信开发者工具,注册微信公共平台
- 阿里靠什么武功秘籍渡过“双十一“的天量冲击
- You may need an appropriate loader to handle this file type, currently no loaders are configured to
- 文字-汉字-生僻字:生僻字1
- java误删的信息怎么恢复_记一次线上表数据误删恢复过程
- 轻松一刻:给你讲一个只有程序员才能听得懂得笑话
- 【论文写作】Latex在线创作工具overleaf及账号注册办法
- 最新抖音简单无人直播教程
- Doxygen使用指南,Doxygen介绍一
- 不希望你懈——写给宫岩
- Adobe Audition 2020 for Mac