目标检测00-06:mmdetection(Foveabox为例)-白话给你讲论文-翻译无死角-2

以下链接是个人关于mmdetection(Foveabox-目标检测框架)所有见解,如有错误欢迎大家指出,我会第一时间纠正。有兴趣的朋友可以加微信:17575010159 相互讨论技术。若是帮助到了你什么,一定要记得点赞!因为这是对我最大的鼓励。 文末附带 \color{blue}{文末附带} 文末附带 公众号 − \color{blue}{公众号 -} 公众号 海量资源。 \color{blue}{ 海量资源}。 海量资源

目标检测00-00:mmdetection(Foveabox为例)-目录-史上最新无死角讲解

本论文名为: F o v e a B o x : B e y o u n d A n c h o r − B a s e d O b j e c t D e t e c t i o n \color{red}{本论文名为: FoveaBox: Beyound Anchor-Based Object Detection} 本论文名为:FoveaBox:BeyoundAnchorBasedObjectDetection

4.Experiments

我们的实验是基于 MS COCO 以及 Pascal VOC 两个基线数据集。对于 COCO 数据,训练集为 trainval35k。如果没有特别指出,默认使用 ResNet-50-FPN 骨干和600像素的训练和测试图像来进行消融研究。我们主要的结果,报告了在 COCO AP test-dev 数据集上的 COCO AP ,它没有公共标签,需要使用评估服务器。对于Pascal VOC,所有模型都在trainval2007和trainval2012上进行训练,并按照惯例在test2007子集上进行评估。

A. Main Results
   Foveabox 和目标最先进算法比较的结果如下Table I:
在这里插入图片描述
其中的第一组为 2 阶段的模型,第二组为一阶段的模型,第三组为我们提出的Foveabox。 可以看我们的所有模型变体都超过了之前的模型的结果。

B. Ablation Study
1.Qualitative Results: 如下Fig.5展示了我们网络输出的结果(上片博客有图解):
在这里插入图片描述
点和 box 概率大于 0.5 进行显示(没有经过 NMS 处理)。对于每个对象,虽然有几个活动点(大于0.5的概率值)。但是他们都是和 ground truth 十分接近的。所以其能证明 Foveabox 能够能够不需要候选框直接生成准确,鲁棒性好的 目标边界框。

2.Various Anchor Densities and FoveaBox : 基于 anchor 实现的算法,如何去密集的覆盖可能存在目标的所有空间。基于 anchor 的方式使用一个固定的采样网格,在每个空间位置使用多个 anchor 点是一种流行的方法来实现目标的高覆盖率,我们在每个位置上附加更密集的 anchor 时,我们总是可以得到更好的性能。为了验证这一假设,我们对RetinaNet中每个空间位置和每个金字塔级别使用的尺度和宽高比 anchor 的数量进行了扫描。这样对于每个位置,其 anchor 的数量变成了 12 个。超过了之前的 6~9 个。实验结果如下表格 Table II 所示:
在这里插入图片描述
可以看到 anchor 也会出现饱和的现象,也就是达到一定极限之后,增加 anchor 数目很难提高网络的性能。
   过密的 anchor 不仅增加了前-背景优化的难度,而且还可能造成定位模糊的界定问题。对于每个输出空间位置,都有一个锚,锚的标签由带有ground-truth的IoU定义,些锚被定义为阳性样本,其他的为负样本。但是,它们共享相同的输入特性。分类器不仅需要区分不同位置的样本,还需要区分同一位置的不同 anchor。
   相比之下,FoveaBox明确地预测了每个位置的一个目标,并且不比基于锚的最佳模型的性能差。相比于基于 anchor 的算法,我们的模型有如下优势:
a.因为我们每个特征图像素位置只预测一个目标,所以其输出大小缩小为基于 anchor 的 1/A(表示每个位置anchor的数量)。
b.在训练过程中,没有模糊不清的优化目标,并且更加直截了当。
c.FoveaBox 有一些超参数,其更加的灵活。这样我们不需要大量地设计锚来看到一个相对更好的选择

  1. FoveaBox Is More Robust to Box Distribution: FoveaBox的主要优点之一是对边界框的可靠预测,为了证实则一点,我们根据 ground-truth 的长宽比 u = m a x ( h w w h ) u = max(\frac{h}{w} \frac{w}{h}) u=max(whhw),把验证集的 boxes 分成三组。我们比较 FoveaBox 与 RetinaNet 不同长宽比的检测效果,如下 Table III 所示:
    在这里插入图片描述
    我们可以看到当 u u u 比较小的时候,两个模型都获得了不错的效果,当 u u u 增加时,RetinaNet 性能衰减比较大。一些定性的结果如下 Fig. 6 所示:
    在这里插入图片描述

  2. Generating High-Quality Region Proposals: 将分类目标更改为类不可知论头很简单,可以生成 region proposals(二阶段检测需要的操作)。我们比较了基于 FPN 的RPN的性能,并且在 minival 数据集评估了不同 region proposals 数目的平均召回率(AR)。如下 Table IV 所示:
    在这里插入图片描述
    可以看到一个惊人的结果,很明显我们的 Foveabox 要好很多。这证明的了我们的模型能够获得高质量的 proposals。

  3. Across Model Depth and Scale: Table VI 展示了使用不同主干网络,输入图像分辨率的结果,如下所示:

在这里插入图片描述
训练和推理过程与基线模型是完全相同的,可以看到 FoveaBox 一致领先 0.9~1.4AP,我们比较了他们的推理速度,相对于 RetinaNet 提高了1.1 到1.3倍。

  1. Analysis of η and σ: η η η 主要是控制目标分配到金字塔特征的范围。如果 η η η 增加,其对应的金字塔特征能够包含更多尺寸的目标。Table VII 展示了 η η η 对性能的影响,如下所示:
    在这里插入图片描述
    另外还有一个重要的超参数,收缩因子 σ σ σ。其对是对正负样本进行控制。在这片文章中, σ = 0.4 , η = 2 σ = 0.4 , η = 2 σ=0.4,η=2 当做其他实验的默认设置。

  2. IoU-Based Assignment v.s. Fovea Area: 另外一种方式定义正/负样本是首先从box分支获取预测的box,后根据IoU在预测盒和地面真盒之间分配目标标签,如下表格 Table IX 所示:
    在这里插入图片描述
    可以看到 Foveabox 的方式提高了0.4AP。

  3. Better Head and Feature Alignment: 最近的很多研究,在一阶段目标检测都涉及到了 Feature Alignment。在 FoveaBox 中,基于 box 的偏移量,我们也采用了 deformable convolution 对 classification branch 进行提炼。FoveaBox 添加这些技巧之后,效果也很好,详细的说,我们修改 classification branch 让其变得复杂,做 以及特征对齐和GN。通过这种方式,FoveaBox 使用 ResNet-50 为主干网络,能达到 40.1的AP。如下 Table V 所示,证明了 Foveabox 的普遍性:
    在这里插入图片描述
    为了采用 feature alignment,使用 3 × 3 deformable convolutional layer(DCN) 去实现这种变换。如下图Fig.7:
    在这里插入图片描述
    这里的 deformable convolutional 输出的是 box 对应的 ( t ^ x 1 , t ^ y 1 , t ^ x 2 , t ^ y 2 ) (\hat{t}_{x_1},\hat{t}_{y_1},\hat{t}_{x_2},\hat{t}_{y_2}) (t^x1,t^y1,t^x2,t^y2)
       我们也比较了box branch 分支前去提炼最终的 classification branch 分支,表X给出了box branch不同层的性能和速度。如下所示:
    在这里插入图片描述
    可以看到使用最后一层进行提炼能达到最好的结果。

  4. Per-Class Difference: Fig. 8 展示了 FoveaBox 与 RetinaNet 预测不同类别的 AP 结果,其都是使用 800x800 的图片作为输入,主干网络为 ResNet-50-FPN。
    在这里插入图片描述
    上面标示比 FoveaBox 提高的mAP,下面标示降低的 mAP。

  5. Speed: 我们评估了FoveaBox的推理时间和其他速度比较方法。实验在单个Nvidia V100 GPU上平均运行10次。由于实现的不同,速度字段可以远程反映模型的实际运行时间。结果如下所示:
    在这里插入图片描述

结语

到这里为止,实验部分就翻译完成,下面我们就是对代码进行深度解析了。

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

江南才尽,年少无知!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值