论文题目:FCOS: Fully Convolutional One-Stage Object Detection
其亮点:
- 基于FCN构建全卷积检测器,使得视觉任务(如语义分割)可以统一在FCN框架
- anchor-free,proposal free,避免了训练阶段关于anchor或者proposal的iou计算.更重要的是,避免了一切与anchor有关的超参数
- 简单的Backbone;neck;head检测算法框架
原始anchor-base的缺点:
- 检测器对anchor的大小、纵横比、数量比较敏感;在RetinaNet,更改这些超参数会影响性能高达4% ap(coco基准).因此在使用基于anchor的检测器时要仔细调关于anchor的超参数
- 由于anchor的比例和纵横比在初始时保持固定,检测器在处理形状变化较大的候选对象时能力不够
- 为了实现较高的召回率,anchor-base的检测器将anchor密集地放置在图像特征中,导致训练过程加大了正负样本的不平衡,当然也显著增加训练过程的计算量(一般通过计算与GT之间的IOU来计算loss,anchor生成的proposal越多,计算量就越大)
本文方法:
逐像素回归预测
信息表示:
对于训练目标ground-truth bounding boxes,我们用其四元向量表示:
其中
代表了边框的左上角点坐标,
代表了边框的右上角坐标,
代表了其目标框的类别.
backbone CNN网络提取的特征图
属于第
层,其中缩放的步幅(stride)为
. 对于特征图中的每一对坐标点
,我们可以与原始图像建立一一对应关系
;
不同于anchor-base的检测器,fcos对每一个特征图上的坐标
都作为训练样本进行回归(也就是像素级别回归).
如同上面的对应关系,如果(x,y)落在任何一个ground-truth bounding box中,那么它是一个正训练样本,其标签是ground-truth的标签
,如果不落在box中,则该样本则为负样本,
.
除此之外,fcos还对每一个像素进行回归预测一个四元组向量
,分别代表了其四个边框到中心点的距离;
某个点落入边框
内,则回归的目标为: