目标检测常用评估指标(metrics)

  • 1、基本概念
    • 真正例(TP):样本的实际类别为正类,并且模型将其预测为正类。
    • 假正例(FP):样本的实际类别为负类,并且模型将其预测为正类。
    • 真负例(TN):样本的实际类别为负类,并且模型将其预测为负类。
    • 假负例(FN):样本的实际类别为正类,并且模型将其预测为负类。
      T和F可以是看做模型的预测结果(P和N)的定语。
实际\预测预测为正类预测为负类
实际正类真正例(TP)假负例(FN)
实际负类假正例(FP)真负例(TN)
  • 2、精准率

    • 定义:预测为正类的数据中,实际为正类的样本占比。
    • 计算公式: P r e c i s i o n = T P T P + F P Precision=\frac{TP}{TP+FP} Precision=TP+FPTP
  • 3、召回率

    • 定义:实际为正类的样本数据中,预测为正类的样本占比。
    • 计算公式: R e c a l l = T P T P + F N Recall=\frac{TP}{TP+FN} Recall=TP+FNTP
    • 分母为真正例+假负例的样本数量相加。为什么加假负,因为模型的预测结果为假的负样本,那实际上就是真的正样本。
  • 4、目标检测任务的真正例、假正例、假负例如何划分

    • 1) T P TP TP:真正例,模型预测出一个框,与标注框的IOU大于阈值且分类正确。
    • 2) F P FP FP:假正例(误报),模型预测出一个框,与标注框的IOU小于阈值或者预测类别为背景或者分类错误。FP是相对于预测框。
    • 3) F N FN FN:假负例(漏报),图片中有一个标注框,但是没有任何一个预测框能匹配上,要么IOU低于阈值 ,要么类别对不上。FN是相对于标注框(Ground Truth来说的)。
    • 4) T N TN TN:真负例。在目标检测领域不考虑,因为真负例可以被理解为所有未预测且不含目标的区域,而这样的框是有连续且无穷多的。
  • 5、论文是如何计算相关指标的
    Faster R-CNN、SSD、YOLO等算法在训练阶段的正负样本的划分有各自的细节,但在最终测试和验证阶段评估精准率和召回率时,流程和算法本质上是一致的:对网络输出的所有预测框做阈值过滤和NMS,然后与标注框做IOU比较。统计TP、FP和FN。

    • 计算离散 R-P曲线
      对于单一类别C、固定的IOU:
      • 1)收集并保留模型对"类别C"做出的所有预测框(即模型输出标签 = C 的那些框)
      • 2)按置信度对预测框从大到小排序
      • 2)将这些框与"类别C"的标注框进行IOU匹配,判断那些是TP和FP。
      • 3)从i=1到i=N,一次只加入一个预测框,检查它是否与某个标注框是否匹配成功(IOU大于阈值),如果成功就是TP,否则就是FP。
      • 4)同时累计到目前为止的TP数、FP数。
      • 5)计算截止到当前预测框为止的精准率和召回率
        P r e c i s i o n i = T P i T P i + F P i Precision_{i}=\frac{TP_{i}}{TP_{i}+FP_{i}} Precisioni=TPi+FPiTPi
        R e c a l l i = T P i T P i + F N i Recall_{i}=\frac{TP_{i}}{TP_{i}+FN_{i}} Recalli=TPi+FNiTPi
    • AP计算
      • 通过插值或积分,对离散的PR曲线计算面积,得到该类别的AP
      • 计算所有类别AP的均值,得到mAP.
  • 6、目标检测的3个阈值

    • IOU阈值:用于判定一个预测框是否与某个标注框"匹配成功",从而记为TP。
    • 置信度阈值:用于筛选预测框(比如只保留置信度 > 0.5 >0.5 >0.5的预测框),绘制PR曲线就是取的不同的置信度阈值。
    • NMS中的IOU阈值:用于在预测框之间进行去重,比如只要两个预测框的IOU超过0.5,救认为他们检测到的目标高度重合,去掉置信度分数低的那个。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MySQL的分析查询语句

【图书推荐】《MySQL 9从入门到性能优化(视频教学版)》-CSDN博客 《MySQL 9从入门到性能优化(视频教学版)(数据库技术丛书)》(王英英)【摘要 书评 试读】- 京东图书 (jd.com) MySQL9数据库技术_夏天又到了…

【递归,搜索与回溯算法 综合练习】深入理解暴搜决策树:递归,搜索与回溯算法综合小专题(二)

优美的排列 题目解析 算法原理 解法 :暴搜 决策树 红色剪枝:用于剪去该节点的值在对应分支中,已经被使用的情况,可以定义一个 check[ ] 紫色剪枝:perm[i] 不能够被 i 整除,i 不能够被 per…

观察者模式(sigslot in C++)

大家,我是东风,今天抽点时间整理一下我很久前关注的一个不错的库,可以支持我们在使用标准C的时候使用信号槽机制进行观察者模式设计,sigslot 官网: http://sigslot.sourceforge.net/ 本文较为详尽探讨了一种观察者模…

GitCode 光引计划投稿|智能制造一体化低代码平台 Skyeye云

随着智能制造行业的快速发展,企业对全面、高效的管理解决方案的需求日益迫切。然而,传统的开发模式往往依赖于特定的硬件平台,且开发过程繁琐、成本高。为了打破这一瓶颈,Skyeye云应运而生,它采用先进的低代码开发模式…

高校就业管理:系统设计与实现的全流程分析

3.1可行性分析 在项目进行开发之前,必须要有可行性分析报告,分别从技术角度,经济角度,操作角度上面进行分析,经过可行性分析是实现科学开发的必要步骤。 3.1.1技术可行性 从技术的角度出发,目前采用开发的技…

超级AI图像放大工具Upscayl:让你的照片细节更清晰,色彩更鲜艳!

前言 Hello大家好,我又来推荐非常好用的AI图片无损放大器,模糊图片秒变高清,Upscayl是一个免费开源的AI图像超分辨率工具。它使用AI模型来通过猜测细节的方式增强图像并提高其分辨率。该工具适用于Linux、macOS和Windows操作系统 安装环境 [名称]&…

1.gitlab 服务器搭建流程

前提条件: 一、服务器硬件水平 搭建gitlab服务器最低配置要求2核4G,低于这个配置的服务器运行效果很差。 gitlab官网:https://about.gitlab.com/ 下载地址:gitlab/gitlab-ce - Packages packages.gitlab.com 本机ubuntu 二、安装依赖 su…

Ai编程从零开始全栈开发一个后台管理系统之用户登录、权限控制、用户管理-前端部分(十二)

云风网 云风笔记 云风知识库 一、创建前端部分 1、vite初始化项目 npm create vitelatest admin-frontend – --template vue-ts 2、安装必要的依赖 npm install vue-router pinia axios element-plus element-plus/icons-vue安装完成后package.json如下: {&qu…

CVE-2024-34351 漏洞复现

CVE-2024-34351&#xff0c;由Next.js异步函数createRedirectRenderResult导致的SSRF。 影响版本&#xff1a;13.4.0< Next.js < 14.1.1 参考文章&#xff1a; Next.js Server-Side Request Forgery in Server Actions CVE-2024-34351 GitHub Advisory Database Gi…

怎么理解GKE Role-Based Access Control (RBAC) 和 Pod Security Policies (PSP)

怎么理解GKE Role-Based Access Control (RBAC) 和 Pod Security Policies (PSP) 理解 Google Kubernetes Engine (GKE) 中的角色基于访问控制&#xff08;RBAC&#xff09;和 Pod 安全策略&#xff08;PSP&#xff09;对于确保集群安全性至关重要。以下是对这两个概念的详细解…

什么是 DevOps 自动化?

DevOps 自动化是一种现代软件开发方法&#xff0c;它使用工具和流程来自动化任务并简化工作流程。它将开发人员、IT 运营和安全团队聚集在一起&#xff0c;帮助他们有效协作并交付可靠的软件。借助 DevOps 自动化&#xff0c;组织能够处理重复性任务、优化流程并更快地将应用程…

帝国CMS:如何去掉帝国CMS登录界面的认证码登录

如果在安装的时候&#xff0c;不小心选中了认证码选项&#xff0c;那么后面登录帝国后台都会要求输入认证码才能登录&#xff0c;如何去除这个设置呢&#xff0c;笔者以古诗词网 www.gushichi.com为例&#xff0c;为大家举例说明&#xff01; 去除步骤如下&#xff1a; 1.前往…

4.2V单节锂电池充电电路(TP4056)、USB与锂电池切换电路分享

一、充电原理图 1、连接说明 BAT_VCC和BAT_GND连接电池 VUSB和GND连接USB电源 2、芯片介绍 a、DW01 DW01芯片是一种电池管理保护芯片&#xff0c;主要用于锂离子电池的保护和管理。DW01芯片具有以下特点&#xff1a; 电池电压保护&#xff1a;DW01芯片可以监测和保护电池的…

ChatGPT生成接口文档实践案例(二)

不难发现&#xff0c;两个方案都出色地完成了接口文档的生成&#xff0c;但笔者更喜欢Response 2的表达&#xff0c;因为其描述更加全面。 还可以让ChatGPT生成符合OpenAPI 3.0规范的接口文档&#xff0c;以便于项目相关成员阅读&#xff0c;如图5-13所示。 为什么要生成OpenAP…

MFC用List Control 和Picture控件实现界面切换效果

添加List Control 和Picture控件 添加 3个子窗体 把子窗体边框设置为None, 样式设为Child 声明 CListCtrl m_listPageForm;void ShowForm(int nIndex);void CreatFormList();void CMFCApplication3Dlg::DoDataExchange(CDataExchange* pDX) {CDialogEx::DoDataExchange(pDX);DD…

JavaWeb Servlet的反射优化、Dispatcher优化、视图(重定向)优化、方法参数值获取优化

目录 1. 背景2. 实现2.1 pom.xml2.2 FruitController.java2.3 DispatcherServlet.java2.4 applicationContext.xml 3. 测试 1. 背景 前面我们做了Servlet的一个案例。但是存在很多问题&#xff0c;现在我们要做优化&#xff0c;优化的步骤如下&#xff1a; 每个Fruit请求都需…

frp内网穿透云服务器。云服务器映射多个家庭局域网内网端口。家庭Windows主机内网运行多个web程序

这篇文章最终要实现的效果是&#xff0c;把云服务器的公网IP绑定到自己本地局域网上的主机一样的效果。相当于局域网主机有了一个自己的公网IP地址。 FRP (Fast Reverse Proxy) 是一个用 Go 语言编写的高性能反向代理应用程序&#xff0c;主要用于内网穿透。它允许位于 NAT 或…

windos 安装docker

文章目录 安装1.下载安装包2.双击安装软件 验证修改国内镜像地址FAQDocker Engine stopped 小结 安装 1.下载安装包 到官网下载适配的安装包&#xff1a;https://www.docker.com/products/docker-desktop/ 2.双击安装软件 选择ok 等待安装依赖 安装完成以后会重启电脑&am…

【已解决】黑马点评项目Redis版本替换过程中误删数据库后前端显示出现的问题

为了实现基于Redis的Stream结构作为消息队列&#xff0c;实现异步秒杀下单的功能&#xff0c;换Redis版本 Redis版本太旧了&#xff0c;所以从3.2.1换成了5.0.14 此时犯了一个大忌&#xff0c;因为新的Redis打开后&#xff0c;没有缓存&#xff0c;不知道出了什么问题&#xf…

Odoo 免费开源 ERP:通过 JavaScript 创建对话框窗口的技术实践分享

作者 | 老杨 出品 | 上海开源智造软件有限公司&#xff08;OSCG&#xff09; 概述 在本文中&#xff0c;我们将深入研讨如何于 Odoo 18 中构建 JavaScript&#xff08;JS&#xff09;对话框或弹出窗口。对话框乃是展现重要讯息、确认用户操作以及警示用户留意警告或错误的行…