DetNet

前言

自己尝试复现了DetNet,效果确实很好,DetNet

 

这篇文章开头就说,他是在backbone上进行改进,检测网络的其他部分沿用的FPN结构的配置。在ms coco检测和实例分割数据集上都达到了start of art。目前代码还没有公布。

 

0.本文内容

  1. 为什么要提出DetNet结构
  2. DetNet结构是什么样的
  3. 它的效果如何
  4. 对结果的分析

1. 为什么提出DetNet结构

目前,检测网络的backbone都是使用预训练的分类网络模型,比如:Vgg,resnet50,resnet101等。这些分类网络在分类任务中效果十分喜人,但是它们似乎并不完全适合检测任务,原因如下:

  • 目前流行的检测网络模型FPN,RetinaNet等通常会在分类模型后面多加几个stage作为自己的backbone,这么做是为了能够处理多种scale物体的检测问题。而多加的这几个stage没有预训练的权值,只能自己从头学。(个人理解:深层网络有利于获得大物体的信息且语义信息更加丰富,而用于分类的模型可能还不够深)。
  • 物体检测不仅需要识别出物体的类别还要检测出物体的具体位置,而分类模型中downsample虽然能增大感受野,但是物体的位置信息损失很严重。

综合以上两点原因,提出了更适合用于检测的backbone模型。

p.s. 这篇文章还具体阐述了FPN,RetinaNet存在的问题,个人理解如下

  • 首先,P6,P7多加的这几个stage没有预训练的权值,只能自己从头学。
  • 其次,大物体在较深层网络进行检测,但他的位置边界信息由于多次downsample的干扰,已经比较模糊,不够精确了。
  • 最后,小物体使用浅层网络(有位置信息)和深层网络(有语义信息)特征融合进行检测,但小物体信息在深层网络中有可能变得不可见(由于多次的downsample)。

2. DetNet结构是什么样的

2.1 整体结构

DetNet是在FPN的架构上进行修改的,前4个stage和FPN完全一样,从第5个stage开始有变化。如下图(注意这里作者因为空间问题,少画了一层,4x表示第2个stage结果):

C图是DetNet的backbone结构

从上图C子图可以看到,第5,6stage的featuremap的分辨率和第4stage一样,那么他的5,6stage是什么样子的呢?

2.2 具体结构

见下图:

解释下:

  • 上图中A子图是在原始bottleneck(c图)结构上,把中间3x3卷积换成了带洞3x3卷积(dilated convolution )
  • B子图是在A的基础上把identity通路替换成1x1的卷积。
  • D子图想说的是stage5,stage6都是由B->A->A的结构组成。两个stage之间没有downsample的操作。
  • E子图表示stage5,6产生的featuremap通道数都为256,和以往的resnet结构不一样(以往每个stage通道数都加倍)。stage5,6产生的featuremap分变率一样,因此不需要upsample就可以和top-down的featuremap相加。

2.3 DetNet结构图表

3. 它的效果如何

首先,在ImageNet分类任务上训练DetNet,然后把训练好的DetNet作为检测网络的backbone。

  • 和使用resnet50(baseline,有与训练权值),resnet101的FPN进行对比,如下表:


可以从表上看出了,效果确实比baseline提升了2个点的mAP。为了说明是不因为参数比baseline多而带来的效果提升,特意把backbone换成resnet101,依旧比resnet101好了0.4个点。

  • 为了说明确实是结构带来的提升,不使用分类任务的与训练权值,从头开始训练,结果对比:

  • 在COO数据测试集上和之前的start of art效果进行对比:

从结果上看,效果确实是不错的,等到作者放出代码,可以好好研究研究。这个结构的取得好结果的原因:

  • 把整个backbone先在ImageNet上预训练,整个检测网络的整个backbone都有与训练参数(虽然不使用预训练参数,从头训练检测效果也比baseline好)
  • stage5,6分辨率保持在16x,downsample次数少,可以保持大物体位置信息的完整,小物体信息在深层网络完全不可见的可能性减少。
  • 使用带洞卷积,可以保证较大的感受野。

4. 对结果的分析

这篇文章做了实验,探究这种网络到底提升了哪些物体的检测性能。
p.s. 个人理解(不知道是否正确)

  • 大物体应该是在较深层的网络进行检测,检测包括确定类别+位置回归
  • 小物体位置信息在浅层网络获取,类别信息在深层(主要)+浅层获取

综上,深层网络的优化(增大分辨率)对大物体的位置回归(主要),类别确定有较大提升;而对小物体的类别信息有较大提升,但对位置回归帮助较小。

4.1 mean average(AP)

首先,探究对大物体的影响,文中通过AP来衡量检测网络的准确程度(感觉是大物体位置容易不准确,所以用AP来探究检测大物体的性能)

可以看到,大物体在AP85下,DetNet59比ResNet50好很多,而在AP50下提升不明显。
原因:在阈值为50时,对位置精度要求不高,所以二者差距不大;而阈值为85时,对位置精度要求很高,这时候DetNet精度高(深层网络的分辨率较大,大物体的位置信息损失较少)的优势凸显出来了。

4.2 mean recall(AR)

接着探究对小物体的影响,文中通过AR来衡量检测网络找到检测物体的能力(感觉是小物体容易miss,所以针对小物体使用recall来衡量)

可以看到,小物体在AP50下,DetNet59比ResNet50好很多,而在AP85下提升不明显。
原因:DetNet从深层网络返回的小物体的类别信息基本没有miss(深层网络的分辨率较大,小物体的类别信息保存较好),所以在50情况下AR可以较高;但是,当阈值增大到85时,要求位置信息更加准确(只有类别信息不足以保证AR高),但是小物体的位置信息在浅层已经获得,所以深层网络的优化对小物体位置信息没有帮助

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值