中科大开源发布新一代目标检测方法FreeAnchor算法

中科大开源发布新一代目标检测方法FreeAnchor算法_第1张图片

中国科学院大学与厦门大学和深圳鹏程实验室共同提出了一种自由锚匹配的一阶段物体检测方法FreeAnchor。

通过目标和特征的自由匹配,该方法突破了“Object as Box”和“Objectas Point”建模思想,并探索了Object as Distribution的新思想。

FreeAnchor显着超越了MS-COCO数据集上的两阶段检测方法FPN,结果由NeurIPS 2019收到。

背景

在过去几年中,卷积神经网络(CNN)在视觉对象检测方面取得了巨大成功。为了使用有限卷积特征来表示具有各种外观,宽高比和空间布局的对象,大多数基于CNN的检测器利用具有多个尺度和多个宽高比的锚帧作为对象定位的参考点。通过将每个对象分配给单个或多个锚帧,可以确定特征并对对象进行排序和定位。具有锚帧的物体检测器利用空间关系,即物体和锚帧(IoU)的交叉比,作为锚帧分割的唯一标准。基于与对象的边界框(Box)进行空间对齐的锚点最适合于对对象进行分类和定位的直觉,并且网络在每个锚帧的损失的监督下独立学习。但是,在下文中,我们认为这种直觉是不准确的,并且手动设计IoU以匹配对象和特征的方法不是最佳选择。

一方面,对于“偏心”物体,其最具辨别力的特征并不靠近物体的中心。空间对齐的锚定帧可以对应于较少的代表性特征,这限制了目标分类和定位能力。另一方面,当将多个对象放在一起时,使用IoU标准来匹配具有适当锚帧/特征的对象是不可行的。要解决的问题是如何将锚框架/特征与对象完美匹配。

该研究提出了一种学习匹配锚帧的物体检测方法。目标是丢弃手动设计的锚帧划分并优化以下三个视觉对象检测学习目标。首先,为了实现高召回率,检测器需要确保至少一个锚帧的预测对于每个对象足够准确。其次,为了实现较高的检测精度,检测器需要将定位较差的锚帧(大边界框回归误差)作为背景进行分类。第三,锚箱的预测应该与非最大抑制(NMS)程序兼容,即分类得分越高,定位越准确。否则,当使用NMS过程时,可以通过精确定位但低分类得分来抑制锚帧预测。

为了实现上述目标,我们将对象 - 锚帧匹配表示为最大似然估计(MLE)过程,并从每个对象的锚帧集中选择最具代表性的锚帧。定义每个锚帧集的似然概率是包中每个锚箱预测置信度的最大值,确保存在至少一个锚帧,并且对对象分类和定位具有高置信度。同时,具有大定位误差的锚帧被分类为背景。在训练期间,似然概率被转换为损失函数,然后驱动对象 - 锚匹配和检测器学习。

中科大开源发布新一代目标检测方法FreeAnchor算法_第2张图片

图1:手工制作的锚点赋值(顶部)和FreeAnchor(底部)的比较。FreeAnchor

允许每个物体在探测器训练期间灵活地匹配来自锚的“袋”的最佳锚。

算法思想

对于原始单级探测器,给定输入图像,使用图像中的对象,在通过网络向前传播之后,将根据IoU的手动设计指南通过分类和回归来预测每个锚帧。每个对象被分成一个对象或分成一个背景,匹配矩阵表示该对象是否被分成锚帧。定义正例锚框集合为, 负例锚框集合为。整体损失可写为:

根据最大似然估计,原始总损失可以转换为似然概率:

中科大开源发布新一代目标检测方法FreeAnchor算法_第3张图片

该似然概率描述了基于CNN的目标检测框架,严格约束锚帧分类和回归的优化,但忽略了匹配矩阵的学习。

为了优化对象 - 锚匹配,我们引入了自由锚帧匹配似然概率来扩展基于CNN的检测框架。引入的似然概率与检测召回率和准确度的要求相结合,以确保与NMS的兼容性。首先,根据锚帧与对象之间的空间关系,选择n个具有较大IoU的锚块,为每个对象构造锚帧集。

为了优化召回率,对于每个对象,必须确保存在至少一个锚帧,并且其预测(包括分类和回归)接近真实注释。可能性概率如下:

为了提高检测精度,检测器需要将定位较差的锚帧分类为背景,可能性概率如下:

其中 是错过所有物体的概率,表示锚框正确预测物体的概率。为了与NMS过程兼容,应具有以下三个属性:

(1)关于锚框预测结果与物体之间的交并比单调递增。

(2)小于阈值t时,为0.

(3)对于物体,存在一个满足的。这些属性可以定义一个饱和线性函数来实现:

中科大开源发布新一代目标检测方法FreeAnchor算法_第4张图片

为了实现上述三个属性,自由锚框匹配似然概率定义如下:

它结合了召回,准确性和NMS兼容的目标。通过优化该似然概率,我们同时最大化回忆可能性和精确可能性,并在探测器训练期间实现自由对象 - 锚匹配。

为了在CNN检测框架中实现上述锚对象匹配方法,我们定义了自由锚框匹配似然概率,并将似然概率转换为匹配损失,如下:

max函数用于为每个对象选择最佳锚帧。在训练期间,从锚箱组A中选择单个锚箱,然后使用锚箱来更新网络参数θ。然而,在训练的早期阶段,对于随机初始化的网络参数,所有锚帧的置信度都很小,并且具有最高置信度的锚帧不一定合适。因此,我们使用Mean-max函数来选择锚框,定义如下:

中科大开源发布新一代目标检测方法FreeAnchor算法_第5张图片

当训练不充分时,如图2所示,Mean-max函数将接近平均函数,这意味着锚集中的几乎所有锚帧都用于训练。随着训练的进行,一些锚帧的置信度增加,并且Mean-max函数更接近max函数。当网络被完全训练时,Mean-max函数可以从该组锚帧中为每个对象选择最佳锚帧。

中科大开源发布新一代目标检测方法FreeAnchor算法_第6张图片

最后,使用Mean-max函数替换自定义损失中的max函数,增加平衡因子w1 w2,并将Focal Loss应用于第二个损失项。结果如下:

其中 是每个物体对于锚框集合的似然概率集合。通过从FocalLoss继承参数α和γ,得到和。

中科大开源发布新一代目标检测方法FreeAnchor算法_第7张图片

FreeAnchor基于先进的单级探测器RetinaNet。通过用上述自由锚帧匹配损失替换RetinaNet的损失,我们将RetinaNet更新为自由锚帧匹配检测器FreeAnchor。

效果

1.学习锚框匹配:提出的学习匹配方法可以选择合适的锚框来表示感兴趣的对象,如图3所示:

中科大开源发布新一代目标检测方法FreeAnchor算法_第8张图片

图4:学习匹配锚(左)与手工锚分配的比较,(右)为“笔记本电脑”对象。 红点表示锚中心。 较暗(较红)的点表示较高相信的信心。 为清楚起见,我们从所有40个锚中选择16个长宽比为1:1的锚为了说明。 (最好看的颜色)

手动设计的锚帧分配在两种情况下失败:对象特征偏心和拥挤的场景。FreeAnchor有效地缓解了这两个问题。对于易于出现特征偏心的细长物体类别,如牙刷,滑雪板,沙发和领带,FreeAnchor明显优于RetinaNet基线,如图4所示。对于其他物体类别,包括时钟,交通灯和运动球FreeAnchor 性能与RetinaNet相当。其原因在于学习匹配过程驱动网络激活每个对象的锚盒集内的至少一个锚箱,以便预测正确的类别和位置。激活的锚帧不必与对象空间对齐,只是用于分类和定位对象的最具代表性的特征。

中科大开源发布新一代目标检测方法FreeAnchor算法_第9张图片

图5:方形和细长的性能比较对象。

我们在拥挤的场景中进一步比较RetinaNet和FreeAnchor的性能,如图5所示。随着单个图像中对象数量的增加,FreeAnchor对RetinaNet的增强变得更加明显。这表明FreeAnchor能够学习匹配锚帧,并为拥挤场景中的对象选择更合适的锚帧。

中科大开源发布新一代目标检测方法FreeAnchor算法_第10张图片

图6:性能比较对象拥挤。

2.保证与NMS的兼容性:为了评估锚帧预测与NMS的兼容性,我们将NMS召回率()定义为给定IoU阈值τ的NMS之前和之前的召回率的比率。根据COCO中AP的定义,NR定义为τ的平均值,从0.50到0.05到0.90NRτ。在表1中,我们将RetinaNet和FreeAnchor与NRτ进行比较。可以看出,FreeAnchor的NR值明显高于RetinaNet,这意味着与NMS的兼容性更高。验证了自由锚框架匹配损失可以实现分类和定位的联合优化。

中科大开源发布新一代目标检测方法FreeAnchor算法_第11张图片

性能

表2比较了FreeAnchor和RetinaNet基线。FreeAnchor将AP提升至3.5%左右,培训和测试时间成本可忽略不计,这是对具有挑战性的通用对象检测任务的重大改进。

中科大开源发布新一代目标检测方法FreeAnchor算法_第12张图片

在表3中,FreeAnchor与其他方法进行了比较。它明显超过了两阶段FPN方法,也优于最新的基于点的检测方法。FreeAnchor通过较少的训练迭代次数(135K vs 500K)和较少的网络参数(96.9M对210.1M)超越了CornerNet。

中科大开源发布新一代目标检测方法FreeAnchor算法_第13张图片

FreeAnchor的本质是通过目标和特征的自由匹配为每个对象实现合适的锚帧,这基本上为每个对象选择适当的CNN特征。FreeAnchor突破了“Object as Box”和“Object as Point”建模思想,并通过最大似然估计为对象范围内的特征分配不同的置信度来建立无参数分布。分配的新理念。

论文地址:https://arxiv.org/pdf/1909.02466

论文源码关注微信公众号:“图像算法”或者微信搜索账号imalg_cn关注公众号

你可能感兴趣的:(FreeAnchor,目标检测,图像算法,imalg,NMS,图像算法)