zoukankan      html  css  js  c++  java
  • FCOS: Fully Convolutional One-Stage Object Detection

    论文:FCOS: Fully Convolutional One-Stage Object Detection

    0.简介

    摘要:

    • one-stage;44.7% in AP with single-model and single-scale testing
    • solve object detection in a per-pixel prediction fashion
    • anchor-free
    • simple。所有anchor相关的超参没有了;不用通过计算IOU来决定谁是能参与训练与预测的positive sample。(当然,选出的高分positive样本,在训练时,还是要和ground truth计算IOU的)

    作者点名叫板FasterRCNN, SSD, YOLO这些anchor-based模型,指出如下存在的问题:

    1. 模型效果对anchor的超参敏感。如每个点对应的anchor数量、大小、比例。
    2. 尽管anchor设置了几个大小、比例,但这些尺寸仍然是固定的。无法处理尺度跨度较大的目标们。
    3. 正负样本不平衡。每张图有180K个anchor-boxes,但大部分都是负样本。
    4. 决定哪些是正样本来参与训练与预测,也需要如IOU这样很大 的运算量。

    并呼吁整个领域一起思考,所谓的目标检测范式——anchor,真的是必需的吗?

    作者称自己新的框架有如下优势:

    1. 现在目标检测和其他任务结合了。可以复用其他领域(语义分割)关于FCN的idea。
    2. 减少了设计的参数。
    3. 避免计算了IOU来决定谁是能参与训练与预测的positive sample。效率高。
    4. FOCS也可以被当作一个RPN,用到two-stage检测器中。比anchor-based的RPN更好用。

    1.网络结构

    FCOS

    ResNet+FPN网络,后接几个分支,其中一个是分类,分类采用的C个分类器二分类,这些都不用多说,重点是Regression和Center-ness分支。Regression不是预测anchor-box/proposed-rigon的调整了,而是直接预测feature-map上一点所属于某一目标的框的大小、比例及位置(l, t , r ,b)。Center-ness是为了减少一些低质量的点预测出的目标框,每个点预测出一个(0,1)的系数,它描述的是此点与预测出的框的中心的举例。最终给预测框排序是按Center-ness与分类得分乘积的结果来排。

    2.框回归——直接、自由

    regression

    作者舍弃anchor-based的方法,回归阶段不是预测anchor-box/proposed-rigon的调整,直接预测一个物体的大小、比例,完全自由,输出结果(l, t, r ,b)——此点到物体框的左、上、右、下距离,就确定了整个物体框的大小、比例,而点也不是在框的正中心了。如果一个位置的点,落在了多个bounding box里,就产生了歧义,作者直接规定选择最小面积的那个作为他的回归目标(这里说的应该是多尺寸网络的问题吧,指特征图上一个点在不同尺度分支里预测了多个物体,返回到原图正好是一个点,那么在原图中选择要区域小的那个)。

    3.Center-ness

    center-ness

    在FOCS中用了多尺度预测后,发现距离那些anchor-based算法还有不小差距。作者观察到是因为是由于很多距离物体中心很远的location点预测出了质量很低的bounding box。于是在网络中加入center-ness ,来抑制这些点。

    与分类分支平行的地方加入center-ness分支(在COCO数据集上,如果加在与regression平行的地方会得到更好的AP,但本文默认前者设计,正如第一节中的网络结构图),对于feature map上的每个点,此分支输出一个(0,1)的数值,它描述的是此点距离它负责的物体的框的中心的距离(注意因为在FCOS中,position点已经不是物体框正中心了嘛。),在测试阶段,选择positiive的bounding box所根据的final score排序,来源于center-ness×分类得分。(训练阶段应该是没有这样操作一下,只是把这部分算了一下BCE-loss加在总的loss里了)最后NMS得出最终检测结果。

    center-ness-math

  • 相关阅读:
    判断奇偶数2
    判断奇偶数
    15.09.29
    .
    Java代码
    Handler 接收Parcelable ArrayList时返回空的错误
    Android Binder设计与实现
    xml解析代码示例
    解析rss和atom文件出现乱码问题
    使用Html.fromHtml将html格式字符串应用到textview上面
  • 原文地址:https://www.cnblogs.com/importGPX/p/13489350.html
Copyright © 2011-2022 走看看