美文网首页
【CV论文笔记】Single-Shot Refinement N

【CV论文笔记】Single-Shot Refinement N

作者: 蘑菇轰炸机 | 来源:发表于2020-02-16 13:50 被阅读0次

    本文主要用于介绍Shifeng Zhang团队于2018年提出的一种目标检测算法RefineDet。本笔记主要为方便初学者快速入门,以及自我回顾。

    论文链接:https://arxiv.org/pdf/1711.06897.pdf
    Github源码地址:https: //github.com/sfzhang15/RefineDet.

    为更好的理解该论文,建议先行阅读Faster R-CNN和SSD的相关论文,这里也附上本菇之前写的2篇论文笔记供大家参考~
    Faster R-CNN理解
    SSD理解

    基本目录如下:

    1. 摘要
    2. 核心思想
    3. 总结

    ------------------第一菇 - 摘要------------------

    1.1 论文摘要

    在目标检测领域,现在普遍的看法都是二阶段的模型有更高的准确率而单阶段的模型有更好的时效性。本文新提出的一种网络架构RefineDet就同时吸收了两种模式的优点,又同时克服了他们的缺点。RefineDet由2部分组成,一部分是anchor refinement module,另一部分是object detection module。具体来说,前者用于帮助过滤掉那些明显的负样本,同时粗略的估计出每一个目标所在的位置。后者用于精确的定位和预测目标的类别。同时,我们还设计了一种新的模块,transfer connection block,用于将第一个模块所提取出的特征信息传到第二个模块。整体网络的训练也是端到端的。我们新的网络在一些最新数据集上的表现都能比肩当今流行的其他算法框架。

    ------------------第二菇 - 核心思想------------------

    2.1 背景介绍

    关于目标检测算法领域的单阶段和多阶段的算法框架的比较这里就不多说了,只能说各有千秋,不过最近的趋势也确实是两者的融合,或者说两者之间的界限,不再那么的清晰。比如,本文的这套RefineDet框架,其实本质上来讲,第一个模块干的事情就是之前RPN干的,第二个模块干的事情就是之前SSD干的,哈哈哈,不过既然整套网络框架的训练都是端到端一起训练,损失函数也是一起反向传播回去的,我们就姑且认为,本文提出的还是一种单阶段的模型吧~而且从最后的实验结果来看,准确率也确实超过了传统两阶段以Faster R-CNN为代表的框架,看来这种模式有待继续发扬光大???这里我也没看过源代码就不乱说了~

    不过出于记笔记的心态,还是要大致理清一下整套网络的具体思路。

    2.2 RefineDet网络架构详解

    直接先上一张原文中的架构图,

    RefineDet网络架构示意图.jpg
    2.2.1 Anchor Refinement Module

    逐一来看,上面虚线框中的模块就是Anchor Refinement Module.

    文中对该模块的作用描述就是,

    The ARM aims to remove negative anchors so as to reduce search space for the classifier and also coarsely adjust the locations and sizes of anchors to provide better initialization for the subsequent regressor

    其实就是可以简单理解为一个RPN网络的作用,去事先筛选出一批合适的区域。值得注意的是,经过4层特征提取操作后,也是要仍入到2个分支中去的,一个用于定位,一个用于分类(2分类,区分目标/背景)。整体的架构就是把2个基础网络(VGG-16/ResNet-101)移除分类层,然后最后用于分类和定位的是多层特征融合的结果。

    2.2.2 Object Detection Module

    下图虚线框中的模块就是Object Detection Module.

    文中对该模块的作用描述就是,

    whereas ODM aims to regress accurate object locations and predict multi-class labels based on the refined anchors.

    其作用也十分明确,就是用于精准定位和分类的。只不过他的特征输入是通过TCB(Transfer Connection Block)而来的,然后再接分类预测层。

    我们来看一下,TCB的网络结构图是怎么样的,

    TCB网络架构图.jpg

    非常简单明了,只不过大家要注意到这里有融合从底层而来的特征信息,因此,整个ODM又有点像FPN(可参考我之前的笔记)哈哈~

    2.2.3 Two-Step Cascaded Regression

    好吧,我一开始以为是整一套网络结构走2次。。但其实这里作者的意思就是ARM-ODM的组合就形成了一种Two-Step Cascaded Regression。。。因为ARM先出了一个结果,再扔到ODM中再出一个结果,就相当于对整个框进了2次定位,其准确性会有提升(尤其是小物体)~用原文中的话讲就是,

    the ARM generates the refined anchor boxes, and the ODM takes the refined anchor boxes as input for further detection, leading to more accurate detection results, especially for the small objects.

    2.2.4 Negative Anchor Filtering

    其实就是如果第一阶段产生的一个anchor box的negative confidence大于一定的阈值就直接过滤掉,不参与到ODM中。。。(这里。。。其实我也有点疑惑。。为什么单独列出来,我以为是常规操作。。。orz)

    剩下的关于训练细节以及结果展示,这里就不多说了~有兴趣的同学可以钻研一下代码,可能会比较有趣~能学到一些调参细节之类的~

    ------------------第三菇 - 总结------------------

    3.1 总结

    到这里,整篇论文的核心思想已经说清楚了。本论文主要是提出了一种用于目标检测算法的新的思路和网络架构RefineDet,并实验证明了该网络的可行性,为后续发展奠定了基础。

    简单总结一下本文就是先罗列了一下该论文的摘要,再具体介绍了一下本文作者的思路,也简单表述了一下,自己对整个RefineDet网络架构的理解。希望大家读完本文后能进一步加深对该论文的理解。有说的不对的地方也请大家指出,多多交流,大家一起进步~😁

    相关文章

      网友评论

          本文标题:【CV论文笔记】Single-Shot Refinement N

          本文链接:https://www.haomeiwen.com/subject/ofqkxhtx.html