【目标检测】FCOS: Fully Convolutional One-Stage Object Detection

论文《FCOS: Fully Convolutional One-Stage Object Detection》 ICCV2019

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

代码:https://github.com/tianzhi0549/FCOS/

https://github.com/shanglianlm0525/PyTorch-Networks

https://github.com/Adelaide-AI-Group/FCOS

https://github.com/Lausannen/NAS-FCOS

https://github.com/VectXmy/FCOS.Pytorch

原文链接:https://blog.csdn.net/shanglianlm/article/details/89007219

                  https://zhuanlan.zhihu.com/p/63868458

1、概述

本文提出一种基于像素级预测一阶全卷积目标检测(FCOS)来解决目标检测问题,类似于语音分割。目前大多数先进的目标检测模型,例如RetinaNet、SSD、YOLOv3、Faster R-CNN都依赖于预先定义的锚框。相比之下,本文提出的FCOS是anchor box free,而且也是proposal free,就是不依赖预先定义的锚框或者提议区域。通过去除预先定义的锚框,FCOS完全的避免了关于锚框的复杂运算,例如训练过程中计算重叠度,而且节省了训练过程中的内存占用。更重要的是,本文避免了和锚框有关且对最终检测结果非常敏感的所有超参数。由于后处理只采用非极大值抑制(NMS),所以本文提出的FCOS比以往基于锚框的一阶检测器具有更加简单的优点。

本文创新点:

  1. 使用语义分割的思想来解决目标检测问题;
  2. 摒弃了目标检测中常见的anchor boxes和object proposal,使得不需要调优涉及anchor boxes和object proposal的超参数(hyper-parameters);
  3. 训练过程中避免大量计算GT boxes和anchor boxes 之间的IoU,使得训练过程占用内存更低;
  4. 提出的可以FCOS代替二阶段检测中的RPN,且性能更优;

FCOS优势:

  1. FCOS与许多基于FCN的思想是统一的,因此可以更轻松的重复使用这些任务的思路。
  2. 检测器实现了proposal free和anchor free,显著的减少了设计参数的数目。设计参数通常需要启发式调整,并且设计许多技巧。另外,通过消除锚框,新探测器完全避免了复杂的IOU计算以及训练期间锚框和真实边框之间的匹配,并将总训练内存占用空间减少了2倍左右。
  3. FCOS可以作为二阶检测器的区域建议网络(RPN),其性能明显优于基于锚点的RPN算法。
  4. FCOS可以经过最小的修改便可扩展到其他的视觉任务,包括实例分割、关键点检测。

2、网络介绍

本文主要网络架构:
[Backbone] + [FPN] + [Classification+Regression+Center-ness]

【目标检测】FCOS: Fully Convolutional One-Stage Object Detection_第1张图片

2.1、提出FCOS(Fully Convolutional One-Stage Object Detector)

【目标检测】FCOS: Fully Convolutional One-Stage Object Detection_第2张图片

2.2、多尺度预测(Multi-level Prediction with FPN)

使用基于FPN的多尺度预测提高召回率和缓解重叠bounding boxes带来的二义性。使用来自5层步长分别为8, 16, 32, 64 和 128的feature map P3,P4,P5,P6,P7,其中P6,P7分别是P5,P6的下采样。

不同于基于anchor的检测方法在不同层回归不同尺度的anchor boxes,FCOS指定每层回归的目标尺寸m2, m3, m4, m5, m6, m7 分别为 0, 64,128, 256, 512...不满足每层目标回归尺寸的目标不会被回归,因此可以有效地减轻重叠目标带来的二义性(作者假设重叠目标大小差异较大)。


2.3、Center-ness

“center-ness”抑制低质量检测框的产生,快速过滤负样本,降低NMS负担,提高召回率和检测性能。center-ness用来度量当前位置和物体中心间的距离,即FCOS将点的坐标在目标中位置因素也加入考虑,越靠近中间权重越大。

å¨è¿éæå¥å¾çæè¿°

在训练的过程中我们会约束中center-ness的值,使得其接近于0,使得分布在目标位置边缘的低质量框能够尽可能的靠近中心。在最终使用该网络的过程中,非极大值抑制(NMS)就可以轻松滤除这些低质量的边界框,提高检测性能。

【目标检测】FCOS: Fully Convolutional One-Stage Object Detection_第3张图片

3、实验结果

3.1、召回率

【目标检测】FCOS: Fully Convolutional One-Stage Object Detection_第4张图片

在召回率方便表现接近目前最先进的基于锚框的检测器。

3.2、有无Center-ness的结果对比

【目标检测】FCOS: Fully Convolutional One-Stage Object Detection_第5张图片

None”表示没有使用中心。

“中心度”表示使用预测回归向量计算得到的中心度。“中心度”是指利用提出的中心度分支预测的中心度。中心度分支提高了所有指标下的检测性能。

3.3、与先进的一阶、二阶检测器效果对比

【目标检测】FCOS: Fully Convolutional One-Stage Object Detection_第6张图片

 

 

你可能感兴趣的:(目标检测)