• 1. yolo 前置知识


    1. 深度学习经典检测方法

    • two-stage(两阶段):Faster-rcnn、Mask-Rcnn系列。先确定一些候选,再进一步确定。
      在这里插入图片描述
      优点:效果通常比较好。
      缺点:速度通常较慢(5FPS)。

      FPS:用来评估目标检测的速度。

    • one-stage(单阶段):YOLO系列。一步到位,没有预选。
      在这里插入图片描述
      优点:速度非常快,适合做实时检测任务。
      缺点:效果通常不太好。

    2. IOU(Intersection over Union)

    I O U = A r e a o f O v e r l a p A r e a o f U n i o n = 交集 并集 IOU = \frac{Area of Overlap}{Area of Union}= \frac{交集 }{并集} IOU=AreaofUnionAreaofOverlap=并集交集

    下面是某次检测的情况:
    蓝框是物体实际存在的位置,即真实值。
    红框是物体被检测到的位置,即预测值。
    上式中的交集和并集就是蓝框和红框区域的交集和并集。
    所以,IOU 越高说明蓝框和红框重合度越高,预测值越接近真实值,检测效果越好。
    在这里插入图片描述

    3. 精度、召回率、MAP 值

    精度(precision):预测为正的样本中有多少是真正的正样本(找得对)。
    召回率(recall):样本中的正例有多少被预测正确了(找得全)。
    精度和召回率的计算公式如下:
    P r e c i s i o n = T P T P + F P Precision=\frac{TP}{TP + FP} Precision=TP+FPTP
    R e c a l l = T P T P + F N Recall=\frac{TP}{TP + FN} Recall=TP+FNTP

    TP(true positive)正确地判断成正例。即本来是正例,判断成正例。
    FP(false positive)错误地判断成正例。即本来是负例,判断成正例。
    FN(false negative)错误地判断成负例。即本来是正例,判断成负例。
    TN(true negative)正确地判断成负例。即本来是负例,判断成负例。

    【例】已知班级总人数100人,其中男生80人,女生20人。目标是找出所有的女生。
    结果:从班级中选择了50人,其中20人是女生,还错误的把30名男生挑选出来了。
    请计算TP 、FP 、FN、TN。
    TP = 20; FP = 30; FN = 0; TN = 50

    map 指标:综合精度和召回率两者来衡量目标检测效果。
    这里有个问题:单看精度或召回率(recall)来衡量目标检测效果不行吗?
    答案是不行,因为精度和召回率在很多问题上会呈现 “一个变高了,另一个就变低” 的现象。

    置信度:用于描述 “检测的框中是某个给定物体的可能性有多大”。

    下面展示求解 map 指标的过程:

    首先基于置信度阈值来计算精度和召回率(绿框为预测值,旁边的数字是置信度),以置信度阈值 0.9 为例:
    在这里插入图片描述
    因为置信度阈值为 0.9,所以图2、图3不满足要求,直接过滤掉。
    所以 TP = 1,FP = 0,FN = 2,精度和召回率分别为:
    P r e c i s i o n = T P T P + F P = 1 1 + 0 = 1 Precision=\frac{TP}{TP + FP} = \frac{1}{1 + 0} = 1 Precision=TP+FPTP=1+01=1
    R e c a l l = T P T P + F N = 1 1 + 2 = 1 3 Recall=\frac{TP}{TP + FN}=\frac{1}{1 + 2} = \frac{1}{3} Recall=TP+FNTP=1+21=31

    如何计算 MAP 呢?需要把所有阈值下的精度和召回率都计算出来。反映到下图中,就是连线以下的面积(注意:两个点之间取最大值,最终面积如第二幅图所示)。
    在这里插入图片描述

  • 相关阅读:
    Android重置APN时提示弹窗不消失问题
    用DIV+CSS技术设计的个人电影网站(web前端网页制作课作业)
    怎么换证件照底色?分享两款好用的免费制作证件照的软件
    Kaggle学习之M5 直接单步预测
    R语言ggplot2可视化:使用ggpubr包的ggdotchart函数可视化克利夫兰点图(Cleveland dot)、自定义ggtheme参数设置主题
    领域事件和集成事件没那么高大上
    关于深拷贝和浅拷贝你需要了解的内容
    人工智能领域的基础知识点汇总
    RabbitMQ
    每章一篇博客带你拿下吉林大学JAVAEE期末(七:会话Bean)
  • 原文地址:https://blog.csdn.net/qq_44378854/article/details/126906091