FoveaBox: Beyond Anchor-based Object Detector

Intro

本文是一篇one-stage anchor free的目标检测文章,大体检测思路为,网络分两路,一路预测k个channel的map,每个channel代表一个类别的概率,即输出为w×h×k,另一路预测位置,输出即为w×h×4。想法其实很容易想到,但是本文之所以work我认为很重要的一个trick是gt label的分配,positive area和negative area,回归是预测log偏移,。

我本来看了abstract之后以为是预测whk的label map,然后根据这个map上某个类别的分布去确定框,然后利用这里的信息去修正框的位置。然后看了图发现是两路预测,我直观感觉他可以合并成一路,其中cls map作为中间层输出,或者是回归支路利用上cls map的信息。

Method

Backbone是FPN,FPN的每层后面接一个subnet,subnet分为两路分别去预测cls map和回归位置。

如图所示就是大体结构:

这就是本文的想法,那么有了这个想法,下一个问题就是怎么训练,哪些位置我要分配为参与训练的样本,如何分配?

作者的想法就是,首先gt在特征图上映射了一个区域,这个区域向内缩放得到一个小box认为是正样本,对应一个类别,这个区域向外放大得到一个大box,大box和小box之内认为是困难样本不参与训练,大box之外认为就是负样本,所以正样本的数量往往是比较小的,可能就那么几个点被分为正样本,取决于缩放的系数。

公式为:

l是fpn的层index。公式3就是将gt映射到对应fpn层的feature map,然后求出映射后的box的中心c,公式4就是进行缩放和扩增的操作,以确定正负样本。

上面分类说完了,然后就是回归,

回归转换为根据feature map上一点对应层和对应的xy方向index映射到原图上,与gt做差之后变换,网络学习到的是一种变换。由公式5可见x、y其实是在特征图上的位置,然后除以尺度z取log使网路更容易学习到目标。

网络学习到的就是t。

加0.5可以防止出现log0.

思考

  1. FoveaBox是两路预测的,如我上面说的,能否一路完成,假设我们先训练cls map,那么当cls map确定了,其实理论上可以帮助loc框定位的学习的。所以思考是否可以将cls map和feature同时作为loc层的输入,两个信息结合来帮助回归框的学习。
  2. 关于标签的分配作者是采用了一个系数进行缩放和放大划分,能否使用正态分布对label进行分配,靠近中间概率接近1,靠近旁边概率减小,一定阈值以外认为是负样本。
  3. 可否换一种回归方式,比如年龄识别中用的coarse-to-fine的stage-wise-regression方式来回归框,比如一个框的坐标值121 可以由三个不同粒度的值相加得到,121 = 100 + 20 + 1。

[论文理解] FoveaBox: Beyond Anchor-based Object Detector的更多相关文章

  1. [论文理解] Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks

    Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks 简介 Faster R-CNN是很经典的t ...

  2. [论文理解]Focal Loss for Dense Object Detection(Retina Net)

    Focal Loss for Dense Object Detection Intro 这又是一篇与何凯明大神有关的作品,文章主要解决了one-stage网络识别率普遍低于two-stage网络的问题 ...

  3. 论文阅读 | FoveaBox: Beyond Anchor-based Object Detector

    论文阅读——FoveaBox: Beyond Anchor-based Object Detector 概述 这是一篇ArXiv 2019的文章,作者提出了一种新的anchor-free的目标检测框架 ...

  4. 论文阅读 | FCOS: Fully Convolutional One-Stage Object Detection

    论文阅读——FCOS: Fully Convolutional One-Stage Object Detection 概述 目前anchor-free大热,从DenseBoxes到CornerNet. ...

  5. 新文预览 | IoU-aware Single-stage Object Detector for Accurate Localization

    论文基于RetinaNet提出了IoU-aware sinage-stage目标检测算法,该算法在regression branch接入IoU predictor head并通过加权分类置信度和IoU ...

  6. [论文理解] CornerNet: Detecting Objects as Paired Keypoints

    [论文理解] CornerNet: Detecting Objects as Paired Keypoints 简介 首先这是一篇anchor free的文章,看了之后觉得方法挺好的,预测左上角和右下 ...

  7. 论文阅读之 DECOLOR: Moving Object Detection by Detecting Contiguous Outliers in the Low-Rank Representation

    DECOLOR: Moving Object Detection by Detecting Contiguous Outliers in the Low-Rank Representation Xia ...

  8. 论文笔记之:Natural Language Object Retrieval

    论文笔记之:Natural Language Object Retrieval 2017-07-10  16:50:43   本文旨在通过给定的文本描述,在图像中去实现物体的定位和识别.大致流程图如下 ...

  9. [论文理解]关于ResNet的进一步理解

    [论文理解]关于ResNet的理解 这两天回忆起resnet,感觉残差结构还是不怎么理解(可能当时理解了,时间长了忘了吧),重新梳理一下两点,关于resnet结构的思考. 要解决什么问题 论文的一大贡 ...

随机推荐

  1. Qt5配置winpCap

    在网上查了很多资料,搞了差不多一天总算解决Qt5使用winPcap配置的问题了!记录一下 以便后续忘记 1.下载winpcap4.1.3,百度即可搜索到 2.下载winpCap开发者工具包http:/ ...

  2. Python学习计划-首篇

    概述 Python语言这几年的热度一直持续上升,有多火也不用我再介绍了,光从近几年编程语言排行榜的上升热度就能看出,因此我也计划学习一下python语言,并且将每次的学习收获记录下来.一方面是记录下来 ...

  3. go语言json转map

    package util import ( "encoding/json" "fmt" ) // json转map函数,通用 func JSONToMap(st ...

  4. 第九章·Logstash深入-Logstash配合rsyslog收集haproxy日志

    rsyslog介绍及安装配置 在centos 6及之前的版本叫做syslog,centos 7开始叫做rsyslog,根据官方的介绍,rsyslog(2013年版本)可以达到每秒转发百万条日志的级别, ...

  5. ad gebber

    双层 四层

  6. Task扩展方法取消操作

    /// <summary> /// 任务扩展,传入取消操作 /// </summary> public static class TaskExtensionDemo { //因 ...

  7. 移动端的文本框获取焦点时导致fixed或absolute定位的按钮被手机键盘顶上去的问题

    var win_h = $(window).height();//关键代码 window.addEventListener('resize', function () { if($(window).h ...

  8. java线程基础巩固---构造Thread对象你也许不知道的几件事

    关于Thread的构造在JDK文档中如下: 之后会把上面所有的构造都会学习到,这次主要是去研究一下图上标红的默认构造,当然大家肯定对于它都有些不屑,这有啥可学的,不new一个然后start线程不就启动 ...

  9. 基于Hexo的个人博客搭建(下)

    5.服务器端测试 —5.1 clone到/var/www/html git clone /home/git/repos/myblog.git /var/www/html chown -R  git:g ...

  10. 【转】用win7(64位)远程桌面连接linux(Ubuntu14.04)详细教程

    转自:http://blog.csdn.net/qq754438390/article/details/50042511 亲测,确实是可以.非常感谢原博. 用win7(64位)远程桌面连接linux( ...