论文阅读瞎记(一)FCOS: Fully Convolutional One-Stage Object Detection (CVPR2019)

swin主干网络
asff
CBAM
SPPF
FCN 全卷积网络,语义分割,深度重建,关键点检测 Fully convolutional networks for semantic segmentation.
CornerNet
BPR(best possible recall)作为FCOS与retina的评估参数是如何计算的:BPR is defined as the ratio of the number of ground-truth boxes a detector can recall at the most divided by all ground-truth boxes. A ground-truth box is considered being recalled if the box is assigned to at least one sample (i.e., a location in FCOS or an anchor box in anchor-based detectors) during training.
one stage检测算法包括有YOLO系列,SSD,FSSD,DSOD,Tiny DSOD,RefineNet,FCOS
weight decay(权值衰减)
Retina中的low-quality matches是什么,为何能够提升模型效果
DenseNet
AP对应的AR是啥
消融实验中对lrtb的Normalization具体操作是什么
GroupNormalization

训练时不需要计算重叠,后处理只有NMS,也不需要与bbox相关的超参数
基于anchor base方法的缺点:
1.效果对于尺寸,长宽比以及box数量敏感。依赖相关超参数
2.适用场景固定,对于不同场景尤其是小尺寸物体适应性差,需要重新调节超参数
3.保证高recall需要输出大量boxs(比如FPN,输出180K个)其中多为负样本,加重了样本不平衡
4.检测结果适用IOU计算方式复杂

DenseBox剪裁并缩放图像到固定大小,为了多尺度预测就需要使用图像金字塔。

为了抑制低质量检测,使用center-ness来预测当前位置与gtbox中心的偏离量,用于降权低质量预测以及合并NMS的预测结果。此方法是FCN-based前计策超越anchor-based检测器的关键。

新的检测框架有着以下优点:
1、检测与FCN可解决的工作比如分割问题联系了起来,其中的一些技巧变得易于共用
2、提议与anchor变得不再需要,减少超参数,简化训练
3、限制了anchor box,避免了后处理中复杂的计算(比如IOU)训练时匹配anchor box与gt box,加速训练并减少内存占用
4、FCOS可以替换双阶段中RPN部分并带来提升
5、可以单独提取出并少量修改用于处理其他视觉工作比如实例分割,关键点检测

yolov1只使用处于物体中心的特征做预测,recall偏低。FCOS使用gt box中所有的点做预测并且使用center-ness降权低质量检测框。

CornerNet(anchor free)检测一组角,需要训练一个距离向量来为同一个实例box聚集角,后处理复杂
DenseBox(anchor free)难以处理重叠box且recall较低,被认为不适合用于一般物体检测
上面的问题可以被极大缓解通过多级FPN预测

对于特征图中(x,y)位置的特征可以通过(s/2)+sx 和(s/2)+sy映射回原始图像
相比于anchor-base方法将输入图像位置作为box中心并基于anchor box回归目标框,anchor free直接回归目标框位置。直接将位置作为训练样本,与分割使用的FCNs相似

在gt box中的预测框与类别都视作正样本作为当前框的预测,否则视为负样本。网络输出的4D向量(l,t,r,b)用于回归目标位置,这四个值是当前位置到边界框做左上右下的距离。处于重叠位置的预测视为模糊样本,选择最小的预测框作为回归框,之后的多级预测可以极大地减少模糊样本。
回归目标位置可以被表示为(x,y为当前预测位置)
在这里插入图片描述

与anchor-base方法不同的是,FCOS可以利用gt box中的所有预测训练回归。

网络输出:

对应数据集,网络最后一层输出80维分类向量与4维预测框坐标.与focal loss相似的是没有训练多分类器而是训练了C个二值分类器.在backbone后面为分类与回归分支分别添加了四个卷积层.由于回归目标值恒正,使用exp(x)指数函数来映射回归分支顶端输出的0~正无穷的值.FCOS比两个不知名的anchor-base网络少9倍的最终输出

损失函数

在这里插入图片描述论文中正样本选取概率大于0.05。

FCOS中利用FPN进行多尺度预测

网络最终输出特征图经过16倍下采样会使得 best possible recall (BPR)相对较低。anchor-base检测器可以通过降低IOU阈值来缓解低recall。FCOS在大步长,没有定位的情况下看上去BPR会比anchor-base的低很多。实际上BPR在Detectron官方应用上面超过了RetinaNet.重叠样本对检测的影响会通过使用多尺度预测来降低。

Center-ness

在这里插入图片描述

使用多尺度预测之后,FCOS与anchor-base方法仍有差距,这是由于大量低质量预测框使得定位于实际中心过远。
引入了一种不需要超参数的简单策略来抑制低质量bbox。center-ness分支并行于分类分支,中心度描述了从预测位置到物体中心位置归一化的距离。
在这里插入图片描述
使用开跟来降低center-ness的降低。中心度取值范围0-1,所以使用二值交叉熵计算损失。
推理时,bbox置信度由中心度乘以对应分类分数。因此中心度可以降权远离物体中心的预测,低置信度的预测最终被NMS剔除,显著提高效果。
另一个可选择的中心度计算方法是只选取GTbox中心部分的预测作为正样本,这需要一个额外的超参数。

实验

使用高分辨率检测基准数据集COCOtrainval35k, 115K用于训练,其中分出5K用于val,20K测试。

训练细节

默认使用ResNet-50作为backbone,RetinaNet的超参数不变。我们网络使用0.01的学习率,batchsize16,优化器SGD训练了90Kiterations。之后下降10倍学习率分别迭代60K和80K个iterations。权值衰减和动量分别为0.0001与0.9.使用ImageNet的预训练权重。

推理细节

图像经过推理获得bbox与class,后处理与Retina相同

消融学习

FPN多尺度预测

前面提到过基于FCN检测是考虑到GT框重叠导致的低召回与模糊样本。这两个问题在多级预测中可以被极大解决
在这里插入图片描述

BPR(Best Possible Recalls)

BPR被定义为网络最多能够recall的GT框与真实全部GT框的比值。在训练中如果box被赋值了至少一个样本,那么认为这个GT框是被召回的。在没有FPN只有level4的输出是,FCOS可以获得95.55%的BPR。在使用FPN之后结果逼近使用了全部低质量匹配的结果。由于当前检测器的最佳召回远低于90%,FCOS与anchor-base之间BPR1%的微小差距并不会影响到检测器的效果。FCOS对比anchor-base获得到了更好的AR结果。

在这里插入图片描述

模糊样本

在这里插入图片描述
另一个基于FCN的检测器需要考虑的问题是由于重叠产生的大量的模糊样本,在只有level4的特征被使用是模糊样本比例为23.16%,使用FPN之后由于大多数模糊样本被不同尺度的特征图赋值,模糊样本降至7.14%,因为多个重叠的同类物体的预测都是同一类,并没有预测错类别,所以如果进一步如果不考虑同类样本重叠导致的模糊,只考虑不同类别的重叠样本,模糊样本下降至3.75%.经过实验在实际推理中只有2.3%的bbox输出来自于模糊样本,只考虑不同类别的模糊样本则只有1.5%.且由于1.5%的模糊样本与gtbox有小面积的关联,所以这些重叠位置只是有风险漏掉大的物体.

Centerness-ness消融实验

在这里插入图片描述center-ness用于降权远离物体中心的bbox.表中可以看到centerness可以增强AP从33.5到37.1,超过了retinanet的35.9.值得注意的是retinanet使用了两个阈值来标记正负样本,这样做可以抑制低质量预测.使用阈值筛选出gtbox重新部分的预测作为正样本可以得到更好的效果.center-ness也可以直接通过回归分支计算出来而不需要另外并行与分类的分支.但效果会略低于使用单独的分支.

FCOS VS anchor-base检测器

在这里插入图片描述FCOS与RetinaNet有两点不同.1是为除了最后一层卷积新添加了GroupNormalization,使训练稳定.2是在RetinaNet中使用P5生成P6与P7而不是使用C5,这样可以稍微提升效果.FCOS效果比Cornernet好不少,而且Cornernet需要通过嵌入的向量来聚集corner对.

扩展RPN

在这里插入图片描述

尝试使用FCOS代替双阶段中的RPN网络,例如FasterRCNN.实验效果明显提升.

总结

FCOS相比其他流行的但阶段检测器有着更简单的设计,减少计算,不需要基于anchor的超参数.在单阶段中达到sota,并可以替换RPN来提升faster rcnn的效果.

Center-Ness可视化

在这里插入图片描述
使用center-ness对低质量预测进行降权,使用NMS滤除.bbox与对应的gt框的IOU小就会被判断为低质量.如果低IOU但是高confidence的预测就容易成为FP.上图中每个点代表一个预测.使用center-ness之前,有许多低质量bbox有着高confidence.使用center-ness之后,这些点被推回图中左边低置信度区域.

Qualitative Results

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值