FCOS论文阅读

FCOS: Fully Convolutional One-Stage Object Detection
看完paper以后觉得作者的行文思路很清晰啊
参考:
https://my.oschina.net/u/4302374/blog/3383676
https://arxiv.org/abs/1904.01355

文章首先说了基于anchor的检测器存在一些问题,然后说了一下基于全卷积的anchor-free的检测器有着远大的前景,但是过去的基于anchor-free的检测器有一些缺点,接下来作者通过一些技巧解决了这些问题,使得基于anchor-free的检测器也能达到和基于anchor的相同效果

下面我也安装作者的思路分成三块来谈

基于anchor的检测器有以下缺点
1.超参调整比较难(此处主要指anchor的size和ratio和数量)
2.anchor形状固定,物体形状各异,对于不同的物体泛化能力不行
3.使用anchor机制,为了提高召回,设置稠密的anchor,其中大量anchor是负样本,会造成类间不平衡问题
4.使用anchor会带来IOU等计算量

基于FCN(Fully Convolutional Networks)的检测器存在的问题

基于FCN的检测器存在的问题
1.召回低
2.出现物体重叠的时候,会有歧义性,有多个框重叠了,那么重叠区域的像素会属于多个物体,而一般基于FCN的检测器都是回归(4+C)的特征图,此处的4是指当前像素到框的位置,而这个点同属于多个框,那么应该填什么值呢?
3.偏离中心的那些像素预测的框不准确,那么该怎么抑制它们呢?

作者做的改进

1.针对低召回问题
首先作者通过实验发现,基于FCN的检测器在大stride本身就有很大的best possible recall(召回上限),加上作者使用了FPN,BPR完全可以媲美基于anchor的检测器
2.重叠问题
作者将不同大小的物体分摊到不同尺寸大小的特征图上,在分完层级以后作者发现,重叠的框很少了
FCOS论文阅读

FCOS论文阅读
作者使用了多个head来回归???并且使用exp(x),这块不是很清楚,后续看看代码补一补

3.偏离中心的像素预测不准确问题
FCOS论文阅读
作者使用了一个mask来做边缘抑制
FCOS论文阅读
在测试的时候将该值乘以相应的得分score

类似的算法,在文本检测EAST算法中,使用收缩后的score map可以抑制一些低置信的score map

总结,FCOS模型非常简介,超参少,效果好