第1篇 目标检测概述 —(4)目标检测评价指标

前言:Hello大家好,我是小哥谈。目标检测评价指标是用来衡量目标检测算法性能的指标,可以分为两类,包括框级别评价指标和像素级别评价指标。本节课就给大家重点介绍下目标检测中的相关评价指标及其含义,希望大家学习之后能够有所收获!🌈 

前期回顾:

            第1篇 目标检测概述 —(1)目标检测基础知识

            第1篇 目标检测概述 —(2)目标检测算法介绍

            第1篇 目标检测概述 —(3)YOLO系列算法

             目录

🚀1.目标检测有哪些评价指标?

🚀2.目标检测评价指标详解

💥💥2.1 Precision(精确率)

💥💥2.2 Recall(召回率 )

💥💥2.3 Average Precision(平均精确率)

💥💥2.4 Mean Average Precision (mAP)(平均精确率均值)

💥💥2.5 mAP@0.5

💥💥2.6 mAP@0.5:0.95

💥💥2.7 ROC曲线

💥💥2.8 P-R曲线

💥💥2.9 IoU(交并比)

💥💥2.10 mIoU(平均交并比)

💥💥2.11 FPS(每秒传输帧数)

💥💥2.12 FLOPS(每秒浮点运算次数)

🚀1.目标检测有哪些评价指标?

目标检测评价指标是用来衡量目标检测算法性能的指标,可以分为两类:框级别评价指标和像素级别评价指标。

框级别评价指标主要用于评估检测框的准确性和召回率,常见的包括:

  1. Precision(精确率):表示模型预测的正样本中真实正样本的比例,计算公式为:Precision = TP / (TP + FP),其中 TP 表示真正例(模型正确检测的正样本数),FP 表示假正例(模型错误检测的正样本数)。
  2. Recall(召回率):表示模型正确检测的正样本数占所有真实正样本的比例,计算公式为:Recall = TP / (TP + FN),其中 FN 表示假负例(模型未能检测到的正样本数)。
  3. Average Precision(平均精确率):结合了不同置信度下的 Precision 和 Recall,通过计算 Precision-Recall 曲线下的面积来衡量模型的性能。
  4. Mean Average Precision (mAP)(平均精确率均值):计算不同类别的 Average Precision 的平均值,是目标检测中常用的评价指标之一。
  5. ROC曲线(Receiver Operating Characteristic curve):ROC曲线是以假阳性率(False Positive Rate)为横轴,真阳性率(True Positive Rate)为纵轴绘制的曲线,用于衡量模型在不同阈值下的性能。
  6. P-R曲线(Precision-Recall curve):P-R曲线是以查准率为横轴,查全率为纵轴绘制的曲线,用于衡量模型在不同阈值下的性能。

等等......🍉 🍓 🍑 🍈 🍌 🍐

像素级别评价指标主要用于评估目标检测模型在像素级别上的准确性,常见的包括:

  1. Intersection over Union (IoU)(交并比):计算检测框和真实框之间的重叠程度,常用于衡量目标检测的准确性。IoU 的计算公式为:IoU = (Detection ∩ Ground Truth) / (Detection ∪ Ground Truth)。
  2. Mean IoU (mIoU)(平均交并比):计算不同类别的 IoU 的平均值,是像素级别评价中常用的指标之一。

等等......🍉 🍓 🍑 🍈 🍌 🍐


🚀2.目标检测评价指标详解

在目标检测相关博客或论文中,经常看到一堆简写:TPTNFPFN,这些是什么含义呢?它们的含义具体如下:👇

  • 预测值为正例,记为P(Positive)
  • 预测值为反例,记为N(Negative)
  • 预测值与真实值相同,记为T(True)
  • 预测值与真实值相反,记为F(False)

那么从上面可以知道:

  • TP:真实为正样本,预测也为正样本,又称(真阳性)。
  • FN:真实为正样本,预测为负样本,又称(假阴性)。
  • FP:真实为负样本,预测为正样本,又称(假阳性)。
  • TN:真实为负样本,预测为负样本,又称(真阴性)。

知道了这几个定义,下面就好理解了。

💥💥2.1 Precision(精确率)

Precision(精确率)又叫查准率,表示模型预测的正样本中真实正样本的比例。在目标检测中,精确率用于衡量模型预测的准确性,精确率越高,表示模型预测的结果中真正为正例的比例越高。

式中,num_{pred}代表一共识别出的物体数量。举例说明:对于口罩人脸检测的一个效果图,图中9个检测框,7个正确检测出口罩,则TP = 7,2 个未正确检测出口罩,则FP = 2 ,参照公式准确率为0.78。

💥💥2.2 Recall(召回率 )

召回率 (Recall)又叫查全率,是正确识别出的物体占总物体数的比率。

num_{sample}表示一共有多少个需要检测的物体。举例说明:如果一共有8个带着口罩的目标,其中7个正确检测出口罩,则TP = 7 ,1个未检测出口罩,则FN = 1 ,根据计算公式,得到召回率为0.875。

💥💥2.3 Average Precision(平均精确率)

Average Precision(平均精确率)是一种用于衡量物体检测算法准确性的指标。它结合了查准率(precision)和召回率(recall)来评估模型在不同阈值下的性能。平均精确率通过计算不同阈值下的查准率,并对其进行平均来得到。它可以反映出模型在不同阈值下的性能变化情况。

PR曲线图上表现为PR曲线下面的面积。AP的值越大,则说明模型的平均准确率越高。

💥💥2.4 Mean Average Precision (mAP)(平均精确率均值)

Mean Average Precision (mAP)(平均精确率均值)是一种用于评估目标检测算法性能的指标。它是计算每个类别下的 Average Precision (AP) 的平均值。AP 是通过计算在不同召回率水平下的最大精确率来衡量算法在不同目标类别上的准确性。mAP 提供了一个综合性的度量,可以比较和评估不同算法的性能。

💥💥2.5 mAP@0.5

mAP@0.5是指在计算平均精度(mAP)时,使用IoU阈值为0.5。具体而言,mAP@0.5是计算每个类别下所有图片的平均精度,其中IoU阈值设定为0.5。通常情况下,mAP@0.5是用来评估目标检测算法的性能的指标之一。较高的mAP@0.5值表示算法在检测目标时具有更高的准确性。

💥💥2.6 mAP@0.5:0.95

mAP@0.5:0.95是指在IoU阈值从0.5到0.95的范围内,以步长为0.05进行计算的平均mAP。这意味着对于不同的IoU阈值(0.5、0.55、0.6、0.65、0.7、0.75、0.8、0.85、0.9、0.95),计算每个阈值下每个类别的所有图片的AP,并求平均得到的mAP值。

说明:♨️♨️♨️

在目标检测任务中,mAP(mean Average Precision)是一个广泛使用的指标,用于衡量检测模型的性能。其中,mAP@0.5,即在IoU(Intersection over Union)阈值为0.5时的mAP,是最常用的mAP值,也是PASCAL VOC竞赛中使用的标准评价指标。这是因为IoU阈值为0.5是一个相对较宽松的标准,既能够检测出较大的目标,也能检测出较小的目标,因此更能全面评估检测模型的性能。但是,mAP@0.5并不能完全反映出检测模型在不同IoU阈值下的表现。因此,mAP@0.5:0.95这个指标被提出,它是在IoU阈值从0.5到0.95变化时的平均mAP值。这个指标能够更全面地评估模型的性能,因为它考虑了不同IoU阈值下的检测结果。而且,在某些应用场景下,如自动驾驶、安防等,对目标检测的精度要求较高,因此mAP@0.5:0.95更能反映模型的性能。综上所述,mAP@0.5是最常用的mAP指标,但是mAP@0.5:0.95对于某些应用场景更为重要,因为它能够更全面、更准确地评估模型的性能。

💥💥2.7 ROC曲线

ROC曲线是一种常用的分类模型性能评估方法。它通过绘制真正例率(True Positive Rate,TPR)和假正例率(False Positive Rate,FPR)之间的关系曲线来展示分类器在不同阈值下的表现。TPR表示被正确分类为正例的样本占所有实际正例样本的比例,而FPR则表示被错误分类为正例的样本占所有实际负例样本的比例。ROC曲线的横坐标为FPR,纵坐标为TPR,曲线越靠近左上角,说明分类器的性能越好。

💥💥2.8 P-R曲线

P-R曲线是指Precision-Recall曲线,用于评估分类模型的性能。横坐标为Recall(召回率),纵坐标为Precision(精确率)。P-R曲线反映了在不同召回率下模型的精确率变化情况。通常情况下,P-R曲线越靠近右上角,模型的性能越好。

💥💥2.9 IoU(交并比)

IoU是指交并比(Intersection over Union),即预测框(prediction)和实际目标(ground truth)的交集和并集的比值,用以确定预测目标的置信度。当一个预测框的IoU大于某个阈值时才认定其为正分类(一般为0.5或0.3)。最理想情况下,完全重叠时,IoU的值为1。

上图中假设A为模型的检测结果,BGround Truth即样本的标注结果,那么AB相交的区域即为A∩B,而AB的并集即为AB共有的区域A∪B,那么IoU的计算公式即为:  IoU = (A∩B) / (A∪B) 

这个还是很简单就能理解的,反应到样本图上就如下图:

其中上图蓝色框框为检测结果,红色框框为真实标注。一般情况下对于检测框的判定都会存在一个阈值,也就是IoU的阈值,一般可以设置当IoU的值大于0.5的时候,则可认为检测到目标物体。

💥💥2.10 mIoU(平均交并比)

mIoU,即平均交并比(Mean Intersection over Union),是一种用于评估语义分割任务中预测结果与真实标签相似度的常用指标。它通过计算每个类别的交并比(IoU),并对所有类别的IoU取平均值得到。

💥💥2.11 FPS(每秒传输帧数)

FPS是指每秒传输的帧数,用于衡量动画或视频画面的流畅程度。较高的FPS意味着画面更新更频繁,动作更加流畅。一般来说,30帧每秒是为了避免动作不流畅的最低要求。一些计算机视频格式每秒只能提供15帧。此外,FPS也可以理解为刷新率,即屏幕每秒刷新的次数,常用单位为Hz。较高的刷新率可以提供更好的图像显示效果和视觉感观。

💥💥2.12 FLOPS(每秒浮点运算次数)

FLOPS,FLoating point Operations Per Second的缩写,即每秒浮点运算次数,或表示为计算速度,是一个衡量硬件性能的指标。

说明:♨️♨️♨️

FLOPS,浮点数运算,指计算量,越小越好。通俗点讲,指显卡算力,对应英伟达官网的那些:CUDA GPUs - Compute Capability | NVIDIA Developer


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/91815.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【中秋国庆不断更】HarmonyOS对通知类消息的管理与发布通知(上)

一、通知概述 通知简介 应用可以通过通知接口发送通知消息,终端用户可以通过通知栏查看通知内容,也可以点击通知来打开应用。 通知常见的使用场景: 显示接收到的短消息、即时消息等。显示应用的推送消息,如广告、版本更新等。显示…

【中秋国庆不断更】OpenHarmony多态样式stateStyles使用场景

Styles和Extend仅仅应用于静态页面的样式复用,stateStyles可以依据组件的内部状态的不同,快速设置不同样式。这就是我们本章要介绍的内容stateStyles(又称为:多态样式)。 概述 stateStyles是属性方法,可以根…

机器人中的数值优化(十九)—— SOCP锥规划应用:时间最优路径参数化(TOPP)

本系列文章主要是我在学习《数值优化》过程中的一些笔记和相关思考,主要的学习资料是深蓝学院的课程《机器人中的数值优化》和高立编著的《数值最优化方法》等,本系列文章篇数较多,不定期更新,上半部分介绍无约束优化,…

Vue3父子组件数据传递

getCurrentInstance方法 Vue2中,可以通过this来获取当前组件实例; Vue3中,在setup中无法通过this获取组件实例,console.log(this)打印出来的值是undefined。 在Vue3中,getCurrentInstance()可以用来获取当前组件实例…

SoloX:Android和iOS性能数据的实时采集工具

SoloX:Android和iOS性能数据的实时采集工具 github地址:https://github.com/smart-test-ti/SoloX 最新版本:V2.7.6 一、SoloX简介 SoloX是开源的Android/iOS性能数据的实时采集工具,目前主要功能特点: 无需ROOT/越狱…

新型信息基础设施IP追溯:保护隐私与网络安全的平衡

随着信息技术的飞速发展,新型信息基础设施在全球范围内日益普及,互联网已经成为我们社会和经济生活中不可或缺的一部分。然而,随着网络使用的增加,隐私和网络安全问题也引发了广泛关注。在这个背景下,IP(In…

Docker的学习记录

Docker是一个被广泛使用的开源容器引擎,基于Go语言,遵从Apache2.0协议开源。 docker的三个概念:容器、镜像和仓库。 镜像(Image):镜像是Docker中的一个模板。通过 Docker镜像 来创建 Docker容器&#xff…

angular 在vscode 下的hello world

Angulai 是google 公司开发的前端开发框架。Angular 使用 typescript 作为编程语言。typescript 是Javascript 的一个超集,提升了某些功能。本文介绍运行我的第一个angular 程序。 前面部分参考: Angular TypeScript Tutorial in Visual Studio Code 一…

Java之线程池的详细解析

1. 线程池 1.1 线程状态介绍 当线程被创建并启动以后,它既不是一启动就进入了执行状态,也不是一直处于执行状态。线程对象在不同的时期有不同的状态。那么Java中的线程存在哪几种状态呢?Java中的线程 状态被定义在了java.lang.Thread.Stat…

工厂与观察者模式

工厂模式介绍 通过一个加工厂,在这个工厂中添加对应材料,我们就可以得到想要的东西,在程序设计中,这种模式就叫做工厂模式,工厂生成出的产品就是某个类的实例,也就是对象。 关于工厂模式一共有三种&#…

Qt::图层框架-图片图层-序列图层-QGraphicsPixmapItem

二维矢量动画智能制作软件开发合集 链接:软件开发技术分享及记录合集 个人开发二维矢量动画智能制作软件界面如下: 目录 一、图片序列图层原理 二、图片序列图层代码实现 三、图片序列图层软件测试视频 结束语 一、图片序列图层原理 本软件的11种…

C++11(列表初始化,声明,范围for)

目录 一、列表初始化 1、一般的列表初始化 2、容器的列表初始化 二、声明 1、 auto 2、decltype 3、nullptr 三、 范围for 一、列表初始化 1、一般的列表初始化 在C98中,标准允许使用花括号{}对数组或者结构体元素进行统一的列表初始值设定。 int main() {…

【OpenCV-Torch-dlib-ubuntu】Vm虚拟机linux环境摄像头调用方法与dilb模型探究

前言 随着金秋时节的来临,国庆和中秋的双重喜庆汇聚成一片温暖的节日氛围。在这个美好的时刻,我们有幸共同迎来一次长达8天的假期,为心灵充电,为身体放松,为未来充实自己。今年的国庆不仅仅是家国团聚的时刻&#xff…

scala基础入门

一、Scala安装 下载网址:Install | The Scala Programming Language ideal安装 (1)下载安装Scala plugins (2)统一JDK环境,统一为8 (3)加载Scala (4)创建工…

LabVIEW学习笔记五:错误,visa关闭超时(错误-1073807339)

写的串口调试工具,其中出现了这个错误 这是串口接收的部分,如果没有在很短的时间内收到外界发进来的数据,这里就会报错。 先在网上查了一下,这个问题很常见,我找到了官方的解答: VISA读取或写入时出现超时…

【JavaEE】CSS

CSS 文章目录 CSS语法引入方式内部样式表行内样式表外部样式 选择器基础选择器标签选择器类选择器id选择器通配符选择器 复合选择器后代选择器伪类选择器链接伪类选择器 字体设置设置文本颜色粗细样式文本对齐 背景背景颜色背景平铺背景尺寸 圆角矩形元素显示模式块级元素 盒模…

Pikachu靶场——XXE 漏洞

文章目录 1. XXE1.1 查看系统文件内容1.2 查看PHP源代码1.3 查看开放端口1.4 探测内网主机 1. XXE 漏洞描述 XXE(XML External Entity)攻击是一种利用XML解析器漏洞的攻击。在这种攻击中,攻击者通过在XML文件中插入恶意实体来触发解析器加载…

计算机图像处理-高斯滤波

高斯滤波 高斯滤波是一种线性平滑滤波,适用于消除高斯噪声,广泛应用于图像处理的减噪过程。通俗的讲,高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到…

1340. 跳跃游戏 V;2039. 网络空闲的时刻;2767. 将字符串分割为最少的美丽子字符串

1340. 跳跃游戏 V 核心思想:动态规划记忆化搜索。定义dfs(i),表示从i开始最多可以访问多少个下标,然后统计往左跳和往右边跳的最大值,思路其实比较简单,但是代码我感觉还是不太好想。 2039. 网络空闲的时刻 核心思想…

W5100S_EVB_PICO快速入门之MQTT篇(十二)

目录 1. 前言 2. MQTT介绍 2.1 什么是mqtt? 2.2 特点 2.3 应用场景 2.4 MQTT协议实现方式 3. 硬件及接线方式 3.1 硬件准备 3.2 硬件介绍 3.3 接线图 4. 测试 4.1 MQTT测试流程图 4.2 相关代码 4.3 测试现象 5. 相关链接: 1. 前言 随着物…