计算机视觉知识点(一)——交并比(IoU)及其若干改进

交并比(IoU)

  • 前言
  • IoU
    • 公式及示意图
    • IoU Loss
    • 缺点
  • GIoU Loss
    • 公式及示意图
    • 缺点
  • DIoU
    • 公式及示意图
  • CIoU


前言

目标检测是一个常见的计算机视觉任务,在目标检测任务中,交并比作为评判检测框的标准具有很重要的意义,在实际的应用中,人们又对最初的IoU进行了诸多的改进。本文将对IoU以及他的改进形式的思路以及公式进行详细通俗的介绍。

IoU

IoU是最早的用于评价预测框与实际框差距的标准,并被用于设置关于预测框回归的损失函数,其思路就是计算预测框与实际框相交区域的面积以及相并区域的面积

假设我们是在这样一张图片上进行目标检测
在这里插入图片描述

那么我们令蓝框为真实框,绿框为预测框,以这个图片的人脸检测为例介绍IoU

公式及示意图

I o U = T ∩ P T ∪ P , 其中 T 为实际框, P 为预测框 IoU=\frac{T \cap P}{T \cup P},其中T为实际框,P为预测框 IoU=TPTP,其中T为实际框,P为预测框

通俗来看
在这里插入图片描述
从直观上讲,就如上图,我们假设蓝框是真实框,绿框为预测框,上下红色阴影部分的面积之比就是IoU

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

IoU Loss

IoU越大说明真实框与预测框的重合度越高,即越好,所以我们可以使用IoU重建损失函数,一般有两种方式
I o U   L o s s = 1 − I o U 或 I o U   L o s s = − l n I o U IoU \space Loss =1-IoU或IoU\space Loss=-lnIoU IoU Loss=1IoUIoU Loss=lnIoU

缺点

失效情况我们首先来看图
在这里插入图片描述
如果真实框与预测框没有重合区域,就会出现这样的情况
在这里插入图片描述
这种情况并不是少数,因为在模型训练初期,模型的参数趋近于混乱,所以基本上预测框和乱标的没什么太大差别,如果真实框与预测框没有相重合,拟合会较为困难,因为所有的没有重合的损失值都为1,并且没有指明梯度下降的合理方向。他的问题是只考虑了真实框与预测框的相交情况,并没有考虑框的位置关系

GIoU Loss

公式及示意图

G I o U   L o s s = 1 − I o U + ∣ C − T ∪ P ∣ ∣ C ∣ ,其中 T 为真实框, P 为预测框, C 为两个框的最小边界 GIoU\space Loss=1-IoU+\frac{|C-T \cup P|}{|C|},其中T为真实框,P为预测框,C为两个框的最小边界 GIoU Loss=1IoU+CCTP,其中T为真实框,P为预测框,C为两个框的最小边界
在这里插入图片描述
如果是上述不相交的情况
在这里插入图片描述
此时虽然1-IoU仍然为1,但是加入的一项会使得两个不相交的框距离越远损失越大,这样可以通过新加入的这一项继续进行梯度下降,这里的GIoU Loss可以大于1

缺点

当一个框被另一个框框住的时候,被框住的框无论在哪个位置,得出的GIoU Loss的值都是完全相同的,这种情况下又会影响梯度下降的方向
在这里插入图片描述
在这里插入图片描述
在这种情况下,绿框在蓝框里面,无论绿框如何移动,只要它还在蓝框内部,他的损失值就不变,显然这也是不利于框的拟合的,为了解决这种情况,可以采用DIoU

DIoU

公式及示意图

D I o U   L o s s = 1 − I o U + ρ 2 ( c T , c P ) d 2 其中 ρ 2 ( c T , c P ) 是真实框中心 ( c T ) 与预测框中心 ( c P ) 的欧氏距离 d 2 是两框对角线距离的平方 DIoU \space Loss=1-IoU+\frac{\rho^2(cT,cP)}{d^2} \\其中\rho^2(cT,cP)是真实框中心(cT)与预测框中心(cP)的欧氏距离 \\ d^2是两框对角线距离的平方 DIoU Loss=1IoU+d2ρ2(cT,cP)其中ρ2(cT,cP)是真实框中心(cT)与预测框中心(cP)的欧氏距离d2是两框对角线距离的平方
在这里插入图片描述
使用DIoU时,不仅可以解决框不相交的问题,又解决了框在内部情况下遇到的问题,此时我们考虑了框的重合度和中心点的距离,还只剩下高宽比这种评价指标。如果深入理解DIoU可以发现在DIoU中,通过IoU和中心距离比的协调,高宽比实际上已经隐含在里边了,不过为了更加容易收敛,仍然可以在多考虑高宽比这一条件并加到损失函数中去

CIoU

这个损失函数画图并不是很好表示,所以只对公式进行讲解,如果理解不了也可以使用DIoU,DIoU也已经达到了很好的效果了
C I o U   L o s s = 1 − I o U + ρ 2 ( c T , c P ) d 2 + α v 其中 ρ 2 ( c T , c P ) 是真实框中心 ( c T ) 与预测框中心 ( c P ) 的欧氏距离 d 2 是两框对角线距离的平方 CIoU \space Loss=1-IoU+\frac{\rho^2(cT,cP)}{d^2}+ \alpha v \\其中\rho^2(cT,cP)是真实框中心(cT)与预测框中心(cP)的欧氏距离 \\ d^2是两框对角线距离的平方 CIoU Loss=1IoU+d2ρ2(cT,cP)+αv其中ρ2(cT,cP)是真实框中心(cT)与预测框中心(cP)的欧氏距离d2是两框对角线距离的平方
v = 4 π 2 ( a r c t a n w T h T − a r c t a n w P h P ) 2 v=\frac{4}{\pi ^2}(arctan\frac{wT}{hT}-arctan\frac{wP}{hP})^2 v=π24(arctanhTwTarctanhPwP)2
α = v 1 − I o U + v \alpha=\frac{v}{1-IoU}+v α=1IoUv+v
其中 w T , h T 是真实框的高宽, w P , h P 是预测框的高宽 其中wT,hT是真实框的高宽,wP,hP是预测框的高宽 其中wThT是真实框的高宽,wPhP是预测框的高宽

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

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

相关文章

【百面成神】java web基础7问,你能坚持到第几问

前 言 🍉 作者简介:半旧518,长跑型选手,立志坚持写10年博客,专注于java后端 ☕专栏简介:纯手打总结面试题,自用备用 🌰 文章简介:java web最基础、重要的8道面试题 文章目…

SAP 系统中过账码or记账码

SAP中过账码和记账码是指同一个事物。 在实际业务中,记账码就是只有“借”和“贷”, 而SAP中Posting Code肩负着更多的任务: 1)界定科目类型, 2)借贷方向, 3)凭证输入时画面上的字…

运算放大器:电压比较器、电压跟随器、同相比例放大器

目录一、单限电压比较器二、滞回电压比较器三、窗口电压比较器四、正点原子直流电机驱动器电路分析实战1、电压采集电路2、电流采集电路3、过流检测电路Ⅰ、采用分压后的输入电压:Ⅱ、采用理想电压源的输入电压:Ⅲ、同相输入电压采用的是非理想电压源&am…

自考本科数据结构导论(02142)历年(应用题+算法题)真题汇总【20年4月-22年10月】

文章目录2020年4月应用题算法设计题2020年10月应用题算法设计题2021年4月应用题算法设计题2021年10月应用题算法设计题2022年4月应用题算法设计题2022年10月应用题算法设计题2020年4月 应用题 有二叉树如题29图所示,写出该二叉树的先序遍历、中序遍历和后序遍历序列。 如题…

AI真的快让我们失业了,从ChatGPT到Midjourney

参考文章: https://mp.weixin.qq.com/s/3RdHPPhYgDfB6KY6Y9Sk2A跟AI有关的新闻,一个接着一个。前一天你还和往常一样进入梦乡,第二天醒来就能被新的AI新闻“炸弹”震得心惊。 以ChatGPT为代表的AI语言模型,以Midjourney为代表的…

五、寄存器方式LED灯控制

寄存器方式LED灯控制 1、原理 电路图中相同网络标号表示它们是连接在一起,STM32F103ZET6的PC0-PC7 管脚连接D1-D8发光二极管阴极,如要使 D1 指示灯亮,只需控制 PC0 管脚输出低电平。 2、工程文件 Keil工程包含main.c、stm32f10x.h、start…

vue开发常用的工具有哪些

个人简介:云计算网络运维专业人员,了解运维知识,掌握TCP/IP协议,每天分享网络运维知识与技能。座右铭:海不辞水,故能成其大;山不辞石,故能成其高。个人主页:小李会科技的…

开启新航路,拓尔思发力AIGC市场 | 爱分析调研

2022年,随着AI聊天机器人GhatGPT在世界范围内持续火爆,极具创意、表现力、个性化且能快速迭代的AIGC技术成功破圈,成为全民讨论热点。 AIGC是指在确定主题下,由算法模型自动生成内容,包括单模态内容如文本、图像、音频…

【Leetcode】队列的性质与应用

文章目录225. 用队列实现栈示例:提示:分析:题解:622. 设计循环队列示例:提示:分析:题解:225. 用队列实现栈 请你仅使用两个队列实现一个后入先出(LIFO)的栈&…

个人时间管理网站—Git项目管理

🌟所属专栏:献给榕榕🐔作者简介:rchjr——五带信管菜只因一枚😮前言:该专栏系为女友准备的,里面会不定时发一些讨好她的技术作品,感兴趣的小伙伴可以关注一下~👉文章简介…

面试官:如何保证接口幂等性?一口气说了9种方法!

本文已经收录到Github仓库,该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校招社招分享等核心知识点,欢迎star~ Github地址 大家好,我是大彬~ 今…

idea 关于git使用总结分享

文章目录前言idea 关于git使用总结分享1. git 目录指定自己的git2. git 回滚到指定提交3. git 回滚某个文件4. 从远程仓库分支拉取最新代码5. 切换分支6. 上传到远程仓库7. git 关联上游服务8. 从上游分支拉取最新的代码9. 从上游仓库上取一个新的branch到远程仓库前言 如果您觉…

【LeetCode】二叉树的后序遍历(递归,迭代)

目录 题目要求:给你一棵二叉树的根节点 root ,返回其节点值的 后序遍历 方法一:递归 方法二:迭代 思路分析: 代码展示: 复杂度分析 方法三:迭代进阶 思路分析: 代码展示&a…

python玄阶斗技--tkinter库

目录 一.tkinter库介绍 二.功能实现 1.窗口创建 2.Button 按钮 3.Entry 文本输入域 4.text 文本框 5.Listbox 多选下拉框 6.Radiobutton 多选项按钮 7.Checkbutton 多选按钮 8.Scale 滑块(拉动条) 9.Scroolbar 滚动条 10.Menu 菜单栏 11. messagebox 消息框 12…

比肩ChatGPT的国产AI:文心一言——有话说

🔗 运行环境:chatGPT,文心一言 🚩 撰写作者:左手の明天 🥇 精选专栏:《python》 🔥 推荐专栏:《算法研究》 #### 防伪水印——左手の明天 #### 💗 大家好&am…

剑指offer-二维数组中的查找

文章目录题目描述题解一 无脑暴力循环题解二 初始二分法🌕博客x主页:己不由心王道长🌕! 🌎文章说明:剑指offer-二维数组中的查找🌎 ✅系列专栏:剑指offer 🌴本篇内容:对剑…

怎么设计一个秒杀系统

1、系统部署 秒杀系统部署要单独区别开其他系统单独部署,这个系统的流量肯定很大,单独部署。数据库也要单独用一个部署的数据库或者集群,防止高并发导致整个网站不可用。 2、防止超卖 100个库存,1000个人买,要保证不…

脉诊(切脉、诊脉、按脉、持脉)之法——入门篇

认识脉诊何谓脉诊?脉诊的渊源脉诊重要吗?脉诊确有其事,还是故弄玄虚?中医科学吗?如何脉诊?寸口脉诊法何谓脉诊? 所谓脉诊,就是通过把脉来诊断身体健康状况的一种必要手段。 …

ShowMeAI周刊 | AI独立开发者:帆船旅行但月入万刀;创业吧!新黄金时代来了;资本看好哪些创业方向;被AI震麻的一周again

这是ShowMeAI周刊的第8期。聚焦AI领域本周热点,及其在各圈层泛起的涟漪;拆解AI独立开发者的盈利案例,关注中美AIGC的创业者们,并提供我们的商业洞察。欢迎关注与订阅! | 👀日报&周刊合辑 ⌛ 『Danielle…

vue3 解决各场景 loading过度 ,避免白屏尴尬!

Ⅰ、前言 当我们每次打卡页面,切换路由,甚至于异步组件,都会有一个等待的时间 ;为了不白屏,提高用户体验,添加一个 loading 过度动画是 非常 常见的 ;那么这几种场景我们应该把 loading 加在哪…