目标检测IOU和NMS详解

1. 目标检测中两个重要的概念:IOU和NMS

1, 具体来说,它是两边界框相交部分面积与相并部分面积之比,如下所示:

在这里插入图片描述

2.原理

这里详细解释一下计算的原理:
一般来说我们给定框的坐标有两种形式:
[x,y,w,h] (或者说是[x,y,h,w] 原理一样) 其中这里的x,y代表框的中心坐标,w代表宽,h代表高度。那么我们用中心坐标分别加上(减去)w/2和h/2就能把框四个角的坐标求出来。
[x1,y1,x2,y2] x1,y1代表左上角的顶点坐标,x2,y2代表右下角的坐标。也就是把对角的两个坐标给出。两种形式计算IoU的区别不大,以第一种形式为例子:
在这里插入图片描述
我们想要把两个框相交区域的面积(即深蓝色区域)S求出来,那么就要知道这个区域的宽和高,也就是图中的w和h。首先,我们根据给的[x,y,w,h] 坐标框可以把两个框的所有坐标计算出来:
在这里插入图片描述
看上图的两个虚线框,虚线框将两个框的上边线(下边线)框在了一起,要求h,我们只需要看Y轴方向,两条上边线的Y坐标分别是4(篮框)和3(黄框),两者取小即Ymax=3,同理下边线要取大即Ymin=2,很明显:
h=Ymax-Ymin=1,w同理。总结就是上取小下取大,右取小左取大

在这里插入图片描述
在这里插入图片描述

IOU全名为(Intersection over Union),又称为交并比,通常被应用在目前目标检测算法的评价中,IOU值越高,说明算法对目标的预测精度越高,下面本文将以图的方式来解释IOU的定义。
假设A是真实框(人为标记的框),C为预测框(目标检测算法预测的框),B为真实框A和预测框C的交集。
IOU的计算公式为:

在这里插入图片描述
IOU值越大,代表预测框和真实框的重叠面积越大,说明预测框预测的越为精准,此预测框的参数可以更好的代表该目标物在图像中的位置。
在这里插入图片描述
上图中黑框1代表的是人工标记真实框,红框2和黄框3分别是不同目标检测算法确定的预测框,其中预测狂3和真实框1的IOU值大于预测狂2和真实框1的IOU值,说明确定预测框3的目标检测算法较确定预测框2的目标检测算法精度高。
IOU虽然可以用来检测算法性能的好坏,但是其存在一些弊端,如下图,当预测框3太大时,此时框3的IOU和框2的IOU一样大,但是框2和框3所对应的目标检测算法性能却不相同。

在这里插入图片描述

3.IoU计算

下面我来带大家手动计算一下IoU:
在这里插入图片描述

如上图所示,黄色矩形与蓝色矩形相交,他们的顶点A、B、C、D分别是:

A:(0,0) B:(3,2) C:(6,8) D:(9,10)

此时IoU的计算公式应为:
在这里插入图片描述
所以,别看两个矩形相交了不少,但IoU的值其实只有0.23。

在这里插入图片描述

4. NMS

NMS也即非极大值抑制

所谓非极大值抑制:依靠分类器得到多个候选框,以及关于候选框中属于类别的概率值,根据分类器得到的类别分类概率做排序,具体算法流程如下:

(1)将所有框的得分排序,选中最高分及其对应的框
(2)遍历其余的框,如果和当前最高分框的重叠面积(IOU)大于一定阈值,我们就将框删除。(为什么要删除,是因为超过设定阈值,认为两个框的里面的物体属于同一个类别,比如都属于狗这个类别。我们只需要留下一个类别的可能性框图即可。)
(3)从未处理的框中继续选一个得分最高的,重复上述过程。

举例说明:(1)(2),这里设定交并比>=0.6就删除对比框图,留下最高分的框图;对于低于阈值的框图留下,然后在剩下的框图中排序,选出置信度值高的框图,然后重复交并比比较这个过程。
(1)选出Dog这个框图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
依次类推,最终保留一个置信度最大的值的框.

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

windows 11 PC查询连接过的wlan密码

1:管理员打开cmd 2:输入netsh wlan show profiles 3:netsh wlan show profiles Shw2024-5G keyclear 密码关键内容:12345678

全时守护,无死角监测:重点海域渔港视频AI智能监管方案

一、方案背景 随着海洋经济的快速发展和海洋资源的日益紧缺,对重点海域渔港进行有效监控和管理显得尤为重要。视频监控作为一种高效、实时的管理手段,已成为渔港管理中不可或缺的一部分。当前,我国海域面积广阔,渔港众多&#xf…

Token Labeling(NeurIPS 2021, ByteDance)论文解读

paper:All Tokens Matter: Token Labeling for Training Better Vision Transformers official implementation:https://github.com/zihangJiang/TokenLabeling 出发点 ViTs的局限性:尽管ViTs在捕捉长距离依赖方面表现出色, 但…

Postman导出excel文件

0 写在前面 在我们后端写接口的时候,前端页面还没有出来,我们就得先接口测试,在此记录下如何使用postman测试导出excel接口。 如果不会使用接口传参可以看我这篇博客如何使用Postman 1 方法一 2 方法二 3 写在末尾 虽然在代码中写入文件名…

Linux 推出 Redis 分支 Valkey

Valkey——一个开源高性能键值存储 Redis 公司宣布更改开源许可之后,社区里出现了多个 Redis 分支,如 Redict、Valkey 等 2024 年 3 月 21 日,Redis 背后企业 Redis 的 CEO Rowan Trollope 宣布,该项目的许可证类型将从原本的 BS…

VLAN 划分案例详解

vlan 的应用在网络项目中是非常广泛的,基本上大部分的项目都需要划分 vlan,这里从基础的 vlan 的知识开始,了解 vlan 的划分原理。 为什么需要 vlan: 1、什么是 VLAN? VLAN(Virtual LAN)&…

SpringCloud------Sentinel(微服务保护)

目录 雪崩问题 处理方式!!!技术选型 Sentinel 启动命令使用步骤引入依赖配置控制台地址 访问微服务触发监控 限流规则------故障预防流控模式流控效果 FeignClient整合Sentinel线程隔离-------故障处理线程池隔离和信号量隔离​编辑 两种方式优缺点设置方式 熔断降级-----…

【JavaEE-多线程背景-线程等待-线程的六种状态-线程安全问题-详解】

🌈个人主页:SKY-30 ⛅个人推荐:基于java提供的ArrayList实现的扑克牌游戏 |C贪吃蛇详解 ⚡学好数据结构,刷题刻不容缓:点击一起刷题 🌙心灵鸡汤:总有人要赢,为什么不能是我呢 &…

高性能、安全、低碳绿色的趋势下,锐捷网络发布三擎云办公解决方案 3.0

桌面虚拟化作为云时代的主流和热门技术,已经取得了广泛应用。随着生成式 AI 爆炸式发展,CSDN 看到,人工智能正在引发计算、开发、交互三大范式的全面升级,技术开发或将迎来一次全新的科技变革周期,因此 VDI 云桌面随之…

20分钟迁移完阿里云ECS跨区域迁移,用老操作系统作为新服务操作系统

由于特殊原因或者数据备份需要迁移ecs服务器 跨区域复制 镜像复制 由于特殊原因或者数据备份需要迁移ecs服务器 1.老服务快照 选择ecs实例,点开实例 进入云盘 https://ecs.console.aliyun.com/disk 在云盘上点击建立快照 https://oss.console.aliyun.com/bu…

C# 位移运算符 <<、>>, 以及 operator 关键字 重载运算符

关键字 operator operator关键字用于在类或结构声明中声明运算符。运算符声明可以采用下列四种形式之一: public static result-type operator unary-operator ( op-type operand ) public static result-type operator binary-operator ( op-type operand, op-ty…

IO、进程、线程03

第一题&#xff1a;预习 opendir 和 readdir函数 opendir 和 readdir 是两个在C语言&#xff08;特别是使用POSIX标准的系统&#xff0c;如Linux和UNIX&#xff09;中用于目录遍历的函数。这两个函数属于标准的C库中的目录操作部分&#xff0c;通常与<dirent.h>头文件一…

国内新能源汽车芯片自给,承认差距,任重道远

【科技明说 &#xff5c; 科技热点关注】 据近日工信部电子五所元器件与材料研究院高级副院长罗道军表示&#xff0c;中国拥有最大的新能源车产能&#xff0c;芯片用量也是越来越多。但是芯片的自给率目前不到10%&#xff0c;是结构性的短缺。 中国拥有最大新能源车产能&#…

万界星空科技MES系统车间设备管理模块的功能

MES系统&#xff08;制造执行系统&#xff09;中的车间设备管理模块是生产环境中不可或缺的一部分&#xff0c;它负责监控、管理和优化车间内所有设备的性能、利用率和维护活动。以下是该模块详细的功能描述&#xff1a; 1. 设备状态监控与实时数据采集 实时监控&#xff1a;通…

【Node.js】会话控制

express 中操作 cookie cookie 是保存在浏览器端的一小块数据。 cookie 是按照域名划分保存的。 浏览器向服务器发送请求时&#xff0c;会自动将 当前域名下可用的 cookie 设置在请求头中&#xff0c;然后传递给服务器。 这个请求头的名字也叫 cookie &#xff0c;所以将 c…

cs224w笔记(p1-p4)

视频b站&#xff1a;1.1 - Why Graphs字幕版gamma_哔哩哔哩_bilibili p4前是数据结构基本内容主要涉及图的基本知识&#xff08;略&#xff09;。下面是未在考研数据结构范围内的知识。 节点中心性是图论和网络分析中用来衡量图中节点重要性的一个概念。 包括&#xff1a;度中…

解决:Linux上SVN 1.12版本以上无法直接存储明文密码

问题&#xff1a;今天在Linux机器上安装了SVN&#xff0c;作为客户端使用&#xff0c;首次执行SVN相关操作&#xff0c;输入账号密码信息后&#xff0c;后面再执行SVN相关操作&#xff08;比如"svn update"&#xff09;还是每次都需要输入密码。 回想以前在首次输入…

基于springboot+vue+uniapp的高校就业招聘系统小程序

开发语言&#xff1a;Java框架&#xff1a;springbootuniappJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#…

Grafana :利用Explore方式实现多条件查询

背景 日志统一推送到Grafana上管理。所以&#xff0c;有了在Grafana上进行日志搜索的需求&#xff0c;而进行日志搜索通常需要多条件组合。 解决方案 通过Grafana的Explore的方式实现多条件查询。 直接看操作步骤&#xff1a; 在主页搜索框中输入“Explore” 进入这个界面…

llama 2 改进之 RMSNorm

RMSNorm 论文&#xff1a;https://openreview.net/pdf?idSygkZ3MTJE Github&#xff1a;https://github.com/bzhangGo/rmsnorm?tabreadme-ov-file 论文假设LayerNorm中的重新居中不变性是可有可无的&#xff0c;并提出了均方根层归一化(RMSNorm)。RMSNorm根据均方根(RMS)将…