深度学习——锚框(笔记)

本文详细介绍了目标检测中的锚框概念,包括其在算法中的作用:生成预设框并预测物体类别与位置偏移。loU-交并比用于评估框间相似度,而非极大值抑制(NMS)则用于去除冗余预测。通过实例和流程图展示锚框标号与NMS操作,突出了基于锚框的算法核心原理。
摘要由CSDN通过智能技术生成

1.锚框的解释

目标检测算法中,通常会在输入图像中采样大量区域,然后判断这些区域是否包含所感兴趣的目标,并调整区域边界从而更加准确的预测目标真实的边缘框

①一类目标检测算法是基于锚框

提出多个框被称为锚框的区域(边缘框)

预测每个锚框里是否含有关注的物体

④如果是,预测从这个锚框到真实边缘框的偏移

边缘框:图像真实的位置,标号的位置

锚框:计算机预测的位置

“算法本身不知道标号物体真实的位置,如果直接对位置预测比较困难。算法的操作是先提出一些框,在锚框里有没有关注的物体。如果有关注的物体,锚框慢慢调整到真实边缘框的位置。两次预测:物体类别和位置”

2.loU-交并比:锚框与真实框的相似度

①loU是用来计算两个框之间的相似度

0表示无重叠 1表示有重叠

②这是Jacquard指数的一个特殊情况

  给定两个集合A和B

 A是锚框 B是边缘框 分子是交集,分母是并集。两个重合的时候结果是1

 

3.赋予锚框标号

训练集中,每个锚框看作训练样本。为了训练模型,需要每个锚框的类别(class,与锚框 相关对象的类别)和偏移量(offset,真实边缘框相对于锚框的偏移量)标签。

①每个锚框是一个训练样本

②每个锚框,要么框住了背景,要么关联上一个真实的边缘框锚框所框住的物体的标号与所关联的边缘框物体的标号相同。锚框的偏移就是关联边缘框的偏移,偏移量根据锚框和真实边缘框的相对位置以及大小进行标记)

③可能会生成大量的锚框,将导致大量的负类样本

“学习的过程是在各位置上都学习一个正确的锚框,预测的时候,只要物体出现,网络就知道在哪里标上正确的bbox”

4.图示锚框标号

 

①列:标注好的边缘框,4列表示4个边缘框

行:锚框

②每个锚框跟边缘框算loU值,在每个方格中的值表示

③将整个矩阵中的最大值挑选出来,假设x23,那么将边缘框3中的标号给锚框2,删除X23所在的行和列

 在剩下的矩阵找最大值,假设是X71。锚框7跟边缘框1关联起来,同时删除所在的行和列

 

以此类推,直到所有的边缘框与对应的锚框关联。

锚框的生成:

①固定生成

②根据图片生成锚框

5.使用非极大值抑制(NMS)输出

 

①每个锚框预测一个边缘框时,有很多相似且重叠的锚框

NMS可以合并相似的预测

Ⅰ选中是非背景类的最大预测值(对类的预测的softmax值,越接近于1置信度越高)

Ⅱ去掉所有其他和它loU值大于θ的预测(也就是去掉和最大预测值相似度比较高的其它锚框)

Ⅲ重复上述过程直到所有预测要么选中,要么去掉

 

【总结】

①一类目标检测算法是基于锚框来预测

②首先生成大量的锚框,并赋予标号,每个锚框作为一个样本进行训练

③预测时,使用NMS来去掉冗余的预测

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值