论文笔记:一阶段全卷积目标检测FCOS: Fully Convolutional One-Stage Object Detection

本文提出了一种全卷积one-stage目标检测算法(FCOS),以逐像素预测的方式解决目标检测问题,类似于语义分割。且不需要锚框,采用逐像素回归预测,多尺度特征以及center-ness三种策略,凭借非极大值抑制(NMS),实现了优于以前基于锚框的one-stage检测算法的效果。

论文笔记:一阶段全卷积目标检测FCOS: Fully Convolutional One-Stage Object Detection_第1张图片anchor-based虽然anchor能带来很大的准确率提升,但也会带来一些缺点:
(1)准确率对anchor的尺寸、长宽比和数量较为敏感,这些超参都会人工细调。
(2)anchor的尺寸和长宽是固定的,如果目标的相关属性相差较大,会比较难预测。
(3)为了高召回,通常会使用密集的anchor布满输入,大多为负样本,导致训练不平衡。
(4)anchor需要IOU等复杂计算。

anchor-based算法将输入图像上的位置作为锚框的中心点,并且对这些锚框进行回归。FCOS直接对feature map中每个位置对应原图的边框都进行回归,换句话说FCOS直接把每个位置都作为训练样本,这一点和FCN用于语义分割相同。

FCOS与许多基于FCN的思想是统一的,FCOS可以作为二阶检测器的区域建议网络(RPN),其性能明显优于基于锚点的RPN算法。

1. 逐像素回归预测

具体思路如下:
首先,我们可以将feature_map中的每一个点(x,y)映射回原始的输入图片中;
然后,如果这个映射回原始输入的点在相应的GT的BB范围之内,而且类别标签对应,我们将其作为训练的正样本块,将类别C**设置为目标类别,否则将其作为负样本块(即为背景);
接着,我们回归的目标是(l,t,r,b),即中心点与BB的left、top、right和bottom之间的距离,具体如下图所示:
论文笔记:一阶段全卷积目标检测FCOS: Fully Convolutional One-Stage Object Detection_第2张图片 当像素落在多个GT中时,直接选择区域最小的作为回归目标。相对于anchor-based的IOU判断,FCOS利用了尽可能多的前景样本,能生成更多的正样本来训练回归器。而原始的基于anchor的算法需要通过计算预设的anchor和对应的GT之间的IOU值,当该IOU值大于设定的阈值 时才将其看做正样本块。
本文定义训练损失函数如下:
论文笔记:一阶段全卷积目标检测FCOS: Fully Convolutional One-Stage Object Detection_第3张图片Lcls表示分类loss,本文使用的是Focal loss;Lreg表示回归loss,本文使用的是IOU loss。

2.多尺度策略

论文笔记:一阶段全卷积目标检测FCOS: Fully Convolutional One-Stage Object Detection_第4张图片FCOS算法使用了{P3, P4, P5, P6, P7}这五个尺度的特征映射。其中P3、P4、P5是由主干CNNs网络的特征层 C3、C4、C5经过一个1*1的卷积加上上采样得到的,而P6、P7则是接着P5进行了步长为2的卷积操作得到的(相当于降采样),因此,特征级别P3、P4、P5、P6和P7分别有步长8、16、32、64和128。最终对这五个尺度都做逐像素回归。
本文为了能够更好的利用这种多尺度特征,在每一个尺度的特征层都限定了边界框回归的范围。不满足范围则认为是负样本,不进行回归预测。

而且这种约束带来的额外的效果在于,由于不同尺寸的物体被分配到不同的特征层进行回归,又由于大部分重叠发生在尺寸相差较大的物体之间,因此多尺度预测可以在很大程度上缓解目标框重叠情况下的预测性能。 如果一个位置,即使使用多层次预测,仍然被分配到多个ground-truth boxes,我们只需选择面积最小的ground-truth boxes作为其目标。

3.center-ness

由于FCOS算法使用了逐像素回归策略,在提升召回率的同时,会产生许多低质量的中心点偏移较多的预测边界框。基于此,作者提出了一个简单而有效的策略center-ness来抑制这些低质量检测到的边界框,且该策略不引入任何超参数。
论文笔记:一阶段全卷积目标检测FCOS: Fully Convolutional One-Stage Object Detection_第5张图片center-ness策略在每一个层级预测中添加了一个回归的分支,该分支与分类并行,相当于给网络添加了一个损失,而该损失保证了预测的边界框尽可能的靠近中心。该损失的公式如下。
论文笔记:一阶段全卷积目标检测FCOS: Fully Convolutional One-Stage Object Detection_第6张图片非极大值抑制(NMS)就可以滤除中心比较偏的低质量的边界框,提高检测性能。

4.实验

4.1 实验细节
在训练阶段,文中使用ResNet-50作为backbone网络,使用SGD优化器,初始学习率为0.01,batch_size=16,在迭代60K和80K时权重分别降低到十分之一,weight_decay和 momentum分别设置为0.0001和0.9,使用ImagNet预训练权重进行初始化,将输入图片裁剪为短边不小于800,长边不小于1333大小。整个网络是在COCO数据集上面训练得到的。

4.2 结果对比
论文笔记:一阶段全卷积目标检测FCOS: Fully Convolutional One-Stage Object Detection_第7张图片

你可能感兴趣的:(论文解读,网络,算法,卷积,机器学习,深度学习)