深度学习基础—交并比与非极大值抑制

1.交并比


(1)定义

交并比是用来衡量目标检测算法的表现的函数。定义如下:

用预测框和真实框的面积的交集除以预测框和真实框的面积的并集,得到的结果本次算法预测的交并比。研究函数可以发现,交并比的范围为[0,1](1说明预测框与真实框重叠,0说明完全不重合),其值越大,说明算法表现越优(定位准)。

(2)阈值

关于上图,预测框是网络给出的紫框,真实框是红框,那目标检测算法给出结果是优还是劣?通过计算交并比,只能得到一个数字说明重合的程度,因此可以给出阈值,如果超过这个阈值,就认为算法表现好,如果小于这个阈值,就认为算法表现差。一般初始阈值设为0.5,如果希望严格一点,就可以设置为超过0.5的值,比如0.6、0.7等等。loU越高,边界框越精确。

2.非极大值抑制


假设我们需要在下面图片里检测汽车,将图片划分为19×19网格,理论上车只有一个中点,所以它应该只被分配到一个格子里。实际上,可能1、2、3、4、5、6编号的格子都认为自己的区域有车,出现了多个定位,而图片中只有两辆车,应该只有两个定位,因此可以使用非极大值抑制算法,将汽车分类概率最高的格子保留,同一辆汽车的其他低分类概率的格子的定位删除。这也是非极大值抑制要做的事情。

非极大值抑制需要用到交并比LOU,因此假设交并比阈值为0.5,而分类概率阈值设为0.6(低于0.6的不认为是汽车分类),非极大值抑制算法步骤:

Step1:删除分类概率pc小于等于0.6的定位边框。

Step2:选择当前剩余边框中pc最大的概率值作为算法的输出,即分类概率。

Step3:计算和Step2中选择的最大概率值边框重叠的边框的交并比,并删除交并比大于等于0.5的定位边框(因为这些边框和最大概率的边框重叠的太多,很有可能表示同一个对象的定位)。

Step4:重复循环Step2-Step3,直到不再剩余要被删除的边框。

以上图为例,首先去除小于0.6的边框后剩余的边框均用蓝色表示,选择最大的概率的边框0.9,高亮该边框,计算与该边框重叠的边框0.6和0.7,发现交并比均大于0.5,因此需要删去,这里选择较暗的蓝色表示抑制。

接着还存在没有被删去的边框,即左边黑色轿车附近,选择概率最大的0.8,抑制交并比大于0.5的概率0.7表示的边框,即上图所示的结果。于是最终检测出两个汽车对象,即高亮框的范围。

非极大值意味着只输出概率最大的分类结果,但抑制很接近而不是最大的其他预测结果,所以这方法叫做非极大值抑制。

注意:如果同时检测多个对象,比如说行人、汽车、摩托,那么输出向量就会有三个额外的分量(c1、c2和c3)。正确的做法是独立进行三次非极大值抑制,对每个输出类别都做一次,因此实际上计算的边框的概率应该是pc乘c1、c2或c3。

相关推荐
巷955几秒前
OpenCV图像形态学:原理、操作与应用详解
人工智能·opencv·计算机视觉
深蓝易网30 分钟前
为什么制造企业需要用MES管理系统升级改造车间
大数据·运维·人工智能·制造·devops
xiangzhihong837 分钟前
Amodal3R ,南洋理工推出的 3D 生成模型
人工智能·深度学习·计算机视觉
狂奔solar1 小时前
diffusion-vas 提升遮挡区域的分割精度
人工智能·深度学习
资源大全免费分享1 小时前
MacOS 的 AI Agent 新星,本地沙盒驱动,解锁 macOS 操作新体验!
人工智能·macos·策略模式
跳跳糖炒酸奶1 小时前
第四章、Isaacsim在GUI中构建机器人(2):组装一个简单的机器人
人工智能·python·算法·ubuntu·机器人
AI.NET 极客圈1 小时前
AI与.NET技术实操系列(四):使用 Semantic Kernel 和 DeepSeek 构建AI应用
人工智能·.net
Debroon2 小时前
应华为 AI 医疗军团之战,各方动态和反应
人工智能·华为
俊哥V2 小时前
阿里通义千问发布全模态开源大模型Qwen2.5-Omni-7B
人工智能·ai
果冻人工智能2 小时前
每一条广告都只为你而生: 用 人工智能 颠覆广告行业的下一步
人工智能