[YOLO专题-3]:总体-目标检测的常见模型评估指标

Posted 文火冰糖的硅基工坊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[YOLO专题-3]:总体-目标检测的常见模型评估指标相关的知识,希望对你有一定的参考价值。

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/122134907


目录

前言:

1. FLOPS (floating-point operations per second): 注意全大写,

2. FLOPS(floating point operations): 注意s小写

3. FPS (每秒传输帧数(Frames Per Second))

4. IoU  交并比(Intersection-over-Union)

5. 精度与召回率

6.  mAP


前言:

都说YOLO比Faster R-CNN块,用什么指标来标识YOLO等算法的快慢或好坏呢?

常见的指标如下:

1. FLOPS (floating-point operations per second): 注意全大写,

FLOPS 是“每秒所执行的浮点运算次数”(floating-point operations per second)的缩写。

它常被用来估算电脑的执行效能,尤其是在使用到大量浮点运算的科学计算领域中。

正因为FLOPS字尾的那个S,代表秒,而不是复数,所以不能省略掉

它通常用来CPU执行浮点运算的能力的评估指标。是一个衡量硬件性能的指标。

2. FLOPS(floating point operations): 注意s小写

FLOPs:是floating point operations的缩写(s表复数),意指浮点运算数,理解为计算量

可以用来衡量算法/模型的复杂度。在深度学习中,我们用的是FLOPs,也就是说计算量,即用来衡量算法/模型的复杂度。值越大,表明神经网络所需要的浮点运算量越大,在同等硬件的条件下,速度就慢。

大多数的矩阵运算以及其他的数学运算,都是浮点运算。

3. FPS (每秒传输帧数(Frames Per Second))

FPS是图像领域中的定义,是指画面每秒传输帧数,通俗来讲就是指动画或视频的画面数。

FPS是测量用于保存、显示动态视频的信息数量。每秒钟帧数越多,所显示的动作就会越流畅。通常,要避免动作不流畅的最低是30。某些计算机视频格式,每秒只能提供15帧。

电影以每秒24张画面的速度播放,也就是一秒钟内在屏幕上连续投射出24张静止画面。

用在目标识别领域,就翻译了模型1秒钟能够识别多少帧的图片,如果1s钟识别的图片数超过24帧,这用的目标识别算法,就可以用于视频的目标识别。YOLU可以得到1秒40帧以上,因此可用于视频中的目标识别。

FPS越大,表明算法的识别速度越快。

4. IoU  交并比(Intersection-over-Union)

交并比是目标检测中经常使用的一个概念,是产生的候选框(candidate bound)原标记框(ground truth bound)的交叠率,即它们的交集与并集的比值。最理想情况是完全重叠,即比值为1。

 

C:目标所在的预测框的区域

G:目标所在的真实框的区域。

C与G的交集表示:某一个目标,被预测出来的面积部分。

C与G的并集表示:某一个目标,真实部分的面积与预测出来的面积之和,包含了错误框出来的区域。

IoU反应了某一个目标预测的精确度。

  • 当IoU = 1时,表示找出来的部分,正好是真实的部分,完全吻合,最为理想。
  • 但IoU = 0时,完全没有找对部分,预测的区域与真实对象完全不相干
  • IoU = (0, 1):  只找出了一部分,值越接近1, 则表示找出来的真实部分越多。

5. 精度与召回率

这两个指标是相辅相成,相互制约的关系,因此放在一起讲。

精度:预测正确数/总预测,遵循的原则是:宁可放过,不能冤枉一个,重在:准确。通过降低数量,提升准确率。

召回率:预测正确数/被预测对象实际的个数,遵循的原则:宁可错误,不能放过一个,重在:找回目标,通过增加数量,降低准确率,确保所有目标都要挑出来,提升召回率。

因此上述两个指标是相互矛盾的。

6.  mAP

目标检测问题中的每个图片都可能包含一些不同类别的物体。因此,用于图像分类问题的标准指标precision不能直接应用于此。 这就是为什么需要mAP。

 

 mAP就是不同精度与不同召回率组成图形与X,Y轴围成的区域的面积。

理想情况下,任何召回率的情况下,精度都是1,这面积为1.

再乘以100就是下图的mAP:

这是YOLO V1的mAP与其他目标检测的mAP的比较。


作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/122134907

以上是关于[YOLO专题-3]:总体-目标检测的常见模型评估指标的主要内容,如果未能解决你的问题,请参考以下文章

[YOLO专题-27]:YOLO V5 小目标检测遇到的问题与常见解决办法

[YOLO专题-1]:总体-概述发展史与学习路径

[YOLO专题-21]:YOLO V5 - ultralytics代码解析-网络配置文件与总体结构

[YOLO专题-25]:YOLO V5 - ultralytics代码解析-detect.py检测代码的详细执行流程

[YOLO专题-18]:YOLO V5 - ultralytics代码解析-总体架构

[YOLO专题-11]:YOLO V5 - ultralytics/train基于自定义图片数据集重新训练网络, 完成自己的目标检测