博客专栏

EEPW首页 > 博客 > Anchor-free目标检测 | 工业应用更友好的新网络(3)

Anchor-free目标检测 | 工业应用更友好的新网络(3)

发布人:CV研究院 时间:2021-09-16 来源:工程师 发布文章

贡献:

1.通过检测bbox的一对角点来检测出目标。

2.提出corner pooling,来更好的定位bbox的角点。

19.png

上图是top-left corner的 Corner Pooling过程。在水平方向,从最右端开始往最左端遍历,每个位置的值都变成从最右到当前位置为止,出现的最大的值。同理,bottom-right corner的Corner Pooling则是最左端开始往最右端遍历。同样的,在垂直方向上,也是这样同样的Pooling的方式。

以左上角点为例,当我们决定此点是否个corner点的时候,往往会沿着水平的方向向右看,看看是否与物体有相切,还会沿着垂直方向向下看,看看是否与物体相切。简而言之,其实corner点是物体上边缘点和坐边缘点的集合,因此在pooling的时候通过Corner Pooling的方式能够一定程度上体现出当前点出发的射线是否与物体相交。

ExtremeNet:

20.jpg

作者使用了最佳的关键点估计框架,通过对每个目标类预测4个多峰值的heatmaps来寻找极值点。另外,作者使用每个类center heatmap来预测目标中心。仅通过基于几何的方法来对极值点分组,如果4个极值点的几何中点在center map上对应的分数高于阈值,则这4个极值点分为一组。

offset的预测是类别无关的,而极值点的预测是类别相关的。对每种极值点heatmap,不包含center map,预测2张offset map(分别对应XY轴方向)。网络的输出是5xC heatmaps和4x2offset maps,C是类别数。

分组算法的输入是每个类的5个heatmaps,一个center heatmap和4个extreme heatmaps,通过检测所有的峰值来提取出5个heatmaps的关键点。给出4个极值点,计算几何中心,如果几何中心在center map上对应高响应,那么这4个极值点为有效检测。作者使用暴力枚举的方式来得到所有有效的4个关键点。

贡献:

1.将关键点定义为极值点。

2.根据几何结构对关键点进行分组。

CornerNet和ExtremeNet的区别:

1.CornerNet通过预测角点来检测目标的,而ExtremeNet通过预测极值点和中心点来检测目标的。

2.CornerNet通过角点embedding之间的距离来判断是否为同一组关键点,而ExtremeNet通过暴力枚举极值点、经过中心点判断4个极值点是否为一组。

FSAF:

让每个实例选择最好的特征层来优化网络,因此不需要anchor来限制特征的选择。

21.jpg

一个anchor-free的分支在每个特征金字塔层构建,独立于anchor-based的分支。和anchor-based分支相似,anchor-free分支由分类子网络和回归子网络。一个实例能够被安排到任意层的anchor-free分支。训练期间,基于实例的信息而不是实例box的尺寸来动态地为每个实例选择最合适的特征层。选择的特征层学会检测安排的实例。推理阶段,FSAF模块和anchor-based分支独立或者联合运行。

22.jpg

在RetinaNet的基础上,FSAF模块引入了2个额外的卷积层,这两个卷积层各自负责anchor-free分支的分类和回归预测。具体的,在分类子网络中,feature map后面跟着K个3x3的卷积层和sigmoid,在回归子网络中,feature map后面跟着4个3x3的卷积层和ReLU。

23.jpg

实例输入到特征金字塔的所有层,然后求得所有anchor-free分支focal loss和IoU loss的和,选择loss和最小的特征层来学习实例。训练时,特征根据安排的实例进行更新。推理时,不需要进行特征更新,因为最合适的特征金字塔层自然地输出高置信分数。

FCOS:

24.png

和语义分割相同,检测器直接将位置作为训练样本而不是anchor。具体的,如果某个位置落入了任何gt中,那么该位置就被认为是正样本,并且类别为该gt的类别。基于anchor的检测器,根据不同尺寸安排anchor到不同的特征层,而FCOS直接限制边界框回归的范围(即每个feature map负责一定尺度的回归框)。

Center-ness:

25.png

为了剔除远离目标中心的低质量预测bbox,作者提出了添加center-ness分支,和分类分支并行。

26.png

优点:

1.将检测和其他使用FCN的任务统一起来,容易重用这些任务的思想。

2.proposal free和anchor free,减少了超参的设计。

3.不使用trick,达到了单阶段检测的最佳性能。

4.经过小的修改,可以立即拓展到其他视觉任务上。

FoveaBox:

人类眼睛的中央凹:视野(物体)的中心具有最高的视觉敏锐度。FoveaBox联合预测对象中心区域可能存在的位置以及每个有效位置的边界框。由于特征金字塔的特征表示,不同尺度的目标可以从多个特征层中检测到。

27.jpg

FoveaBox添加了2个子网络,一个子网络预测分类,另一个子网络预测bbox。

Object Fovea:

28.jpg

目标的中央凹如上图所示。目标中央凹只编码目标对象存在的概率。为了确定位置,模型要预测每个潜在实例的边界框。

FSAF、FCOS、FoveaBox的异同点:

1.都利用FPN来进行多尺度目标检测。

2.都将分类和回归解耦成2个子网络来处理。

3.都是通过密集预测进行分类和回归的。

4.FSAF和FCOS的回归预测的是到4个边界的距离,而FoveaBox的回归预测的是一个坐标转换。

5.FSAF通过在线特征选择的方式,选择更加合适的特征来提升性能,FCOS通过center-ness分支剔除掉低质量bbox来提升性能,FoveaBox通过只预测目标中心区域来提升性能。

总结:

1.各种方法的关键在于gt如何定义

2.主要是基于关键点检测的方法和密集预测的方法来做Anchor-Free

3.本质上是将基于anchor转换成了基于point/region

下一期我们详细说说商汤的《CentripetalNet: Pursuing High-quality Keypoint Pairs for Object Detection》,基于向心偏移的anchor-free目标检测网络centripetalnet,为基于关键点的目标检测方法研究带来了新思路。

29.png

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

隔离器相关文章:隔离器原理
电流传感器相关文章:电流传感器原理


关键词: AI

相关推荐

技术专区

关闭