[论文理解] FoveaBox: Beyond Anchor-based Object Detector
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.
思考
- FoveaBox是两路预测的,如我上面说的,能否一路完成,假设我们先训练cls map,那么当cls map确定了,其实理论上可以帮助loc框定位的学习的。所以思考是否可以将cls map和feature同时作为loc层的输入,两个信息结合来帮助回归框的学习。
- 关于标签的分配作者是采用了一个系数进行缩放和放大划分,能否使用正态分布对label进行分配,靠近中间概率接近1,靠近旁边概率减小,一定阈值以外认为是负样本。
- 可否换一种回归方式,比如年龄识别中用的coarse-to-fine的stage-wise-regression方式来回归框,比如一个框的坐标值121 可以由三个不同粒度的值相加得到,121 = 100 + 20 + 1。
[论文理解] FoveaBox: Beyond Anchor-based Object Detector的更多相关文章
- [论文理解] 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 ...
- [论文理解]Focal Loss for Dense Object Detection(Retina Net)
Focal Loss for Dense Object Detection Intro 这又是一篇与何凯明大神有关的作品,文章主要解决了one-stage网络识别率普遍低于two-stage网络的问题 ...
- 论文阅读 | FoveaBox: Beyond Anchor-based Object Detector
论文阅读——FoveaBox: Beyond Anchor-based Object Detector 概述 这是一篇ArXiv 2019的文章,作者提出了一种新的anchor-free的目标检测框架 ...
- 论文阅读 | FCOS: Fully Convolutional One-Stage Object Detection
论文阅读——FCOS: Fully Convolutional One-Stage Object Detection 概述 目前anchor-free大热,从DenseBoxes到CornerNet. ...
- 新文预览 | IoU-aware Single-stage Object Detector for Accurate Localization
论文基于RetinaNet提出了IoU-aware sinage-stage目标检测算法,该算法在regression branch接入IoU predictor head并通过加权分类置信度和IoU ...
- [论文理解] CornerNet: Detecting Objects as Paired Keypoints
[论文理解] CornerNet: Detecting Objects as Paired Keypoints 简介 首先这是一篇anchor free的文章,看了之后觉得方法挺好的,预测左上角和右下 ...
- 论文阅读之 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 ...
- 论文笔记之:Natural Language Object Retrieval
论文笔记之:Natural Language Object Retrieval 2017-07-10 16:50:43 本文旨在通过给定的文本描述,在图像中去实现物体的定位和识别.大致流程图如下 ...
- [论文理解]关于ResNet的进一步理解
[论文理解]关于ResNet的理解 这两天回忆起resnet,感觉残差结构还是不怎么理解(可能当时理解了,时间长了忘了吧),重新梳理一下两点,关于resnet结构的思考. 要解决什么问题 论文的一大贡 ...
随机推荐
- vue 编辑
点击文字修改 <div class="baseInfo"> <p class="title">基本信息</p> <p ...
- linux安装RabbitMQ yum
一.RabbitMQ概念RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erlang语言开发 ...
- ETL 工具和 BI 工具
ETL是数据仓库中的非常重要的一环,是承前启后的必要的一步.ETL负责将分布的.异构数据源中的数据如关系数据.平面数据文件等抽取到临时中间层后进行清洗.转换.集成,最后加载到数据仓库或数据集市中,成为 ...
- 【异常】Phoenix异常:java.lang.ArithmeticException: Rounding necessary
1 异常sql upsert into WMBIGDATA.ODS_ES_CHARGING_STATION(id,evcosType,address,serviceTel,supportOrder,o ...
- 20、linux启动流程和救援模式
1.Linux启动流程 2.Linux运行级别 1.什么是运行级别,运行级别就是操作系统当前正在运行的功能级别 System V init运行级别 systemd目标名称 作用 0 runlevel0 ...
- three.js之正投影摄像机与透视投影摄像机的区别
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 内核模式构造-Event构造(WaitLock)
internal sealed class SimpleWaitLock:IDisposable { //Enter()和Leave()中使用m_AutoResetEvent都将迫使调用线程做用户模式 ...
- Tomcat基础知识
介绍Tomcat之前先介绍下Java相关的知识. 各常见组件: 1.服务器(server):Tomcat的一个实例,通常一个JVM只能包含一个Tomcat实例:因此,一台物理服务器上可以在启动多个JV ...
- css全部理解
如何设置标签样式 给标签设置长宽 只有块儿级标签才可以设置长宽 行内标签设置了没有任何作用(仅仅只取决于内部文本值) 字体颜色 color后面可以跟多种颜色数据 颜色英文 red #06a0de 直接 ...
- vs2017 gitee项目无法提交同步的解决办法
下载扩展跟更新: gitee插件 然后命令行输入: git push --set-upstream origin master 参考 https://www.cnblogs.com/slwangzi ...