专栏名称: AI科技大本营
迎来到AI科技大本营。这里汇集了优秀的AI学习者,技术大咖和产业领袖;提供接地气的实战课程。在这里和优秀的人一起成长。
目录
相关文章推荐
爱可可-爱生活  ·  【[924星]LegendApp/legen ... ·  昨天  
爱可可-爱生活  ·  【EasyR1:基于veRL的高效、可扩展多 ... ·  昨天  
爱可可-爱生活  ·  【[236星]fly-to-podman:帮 ... ·  昨天  
AI前线  ·  微软力推新视频游戏 AI 模型,超 10 ... ·  3 天前  
人工智能那点事  ·  “80后已死5.2%”?这么离谱的假消息! ... ·  3 天前  
51好读  ›  专栏  ›  AI科技大本营

MatrixNets:可替代FPN,用于目标检测的可感知比例和长宽比的网络结构

AI科技大本营  · 公众号  · AI  · 2020-01-15 17:12

正文


译者 | 刘畅
出品 | AI科技大本营(ID:rgznai100)

本文介绍了一种新的网络MatrixNets(xNets),它是新的用于目标检测的深层结构。xNets将具有相似大小和高宽比的目标映射到专门的层中,从而使xNets是一种可感知比例和长宽比的网络结构。作者利用xNets来增强单阶段(One-stage)目标检测框架。
首先,作者将xNets应用于基于锚(anchor)的目标检测,用于预测目标中心并回归左上角和右下角。其次,作者根据预测的左上角和右下角,将MatrixNets用于基于角点(corner)的目标检测。每个角点都会预测目标的中心位置。作者还通过将嵌入层替换为中心回归来增强基于角点的检测。

本文的最终架构在MS COCO上实现了47.8的mAP,比CornerNet高出+5.6 mAP,同时也缩小了单级(one-stage)和两级(two-stage)目标检测器之间的差距。该代码已经开源,代码地址是 https://github.com/arashwan/matrixnet
引言

目标检测是计算机视觉中的研究热点,在目标跟踪,实例分割和图像字幕等任务中有许多应用。目标检测框架可以分为两类:两阶段检测器和一阶段检测器。两阶段检测器利用区域提取网络来查找固定数量的目标候选对象。然后,使用第二个网络预测每个候选人的得分并完善其边界框。此外,一阶段检测器也可以分为两类:基于锚的检测器和基于角点(或关键点)的检测器。基于锚的检测器包含许多锚框,它们用于预测每个锚的偏移量和类别。另一方面,基于corner的检测器可预测左上角和右下角的热力图,并使用特征来相互匹配。

在不同尺度上检测物体是目标检测的主要挑战。 在尺度感知架构方面最大的进步之一是特征金字塔网络(FPN)。 FPN的设计可以让网络有尺度不变性。 小的目标映射到金字塔的较浅层,而较大目标映射到较深层。 由于目标的大小相对于该层的下采样在金字塔层中间几乎保持一致,因此可以在所有层之间共享单个输出子网。

尽管FPN提供了一种优雅的方式来处理不同大小的目标,但它们并没有为不同长宽比的目标做针对性的处理。 诸如高塔,长颈鹿或小刀之类的目标对FPN的设计提出了挑战: 能否根据其宽度或高度将这些目标映射到某层上呢? 根据其较大的尺寸将目标分配给某层会出现由于主动下采样而导致较小的尺寸丢失信息,反之亦然。 这个问题在像MS-COCO这样的数据集中很普遍。 图2展示了目标数量与目标的最大边除以最小边的直方图。 我们发现50%的目标最大/最小值大于1.75,而14%的最大/最小值大于3。

在这项工作中,我们介绍了MatrixNets(xNets),这是一种可感知比例和长宽比的CNN网络结构。 如图1所示,xNets有几个矩阵层,每个层会处理一个具有特定大小和纵横比的目标。 xNet将不同大小和长宽比的目标分配给层,以使它们分配的层内目标大小接近统一。 通过这种分配,可以平等地收集有关纵横比和比例的目标信息。 xNets可以应用于任何骨干网,类似于FPN。 我们通过在主干网络上附加“-X”来表示这一点,即ResNet50-X。

为了探索xNets的应用,我们首先将xNets用于基于锚的一阶段对象检测。 我们决定只考虑每个特征图只有一个框的情况,从而使其类似于anchor-free的架构。 在第二个应用中,我们使用xNet用于基于corner的目标检测。 我们展示了如何利用xNet改进CornerNet的架构。 在MS-COCO上,本文设计的单级目标检测器达到了SOTA性能(47.8 mAP)。

方法
MatrixNets(xNet)就是使用矩阵对不同大小和比例的目标进行建模。 l_i,j表示矩阵中的神经网络层。 每一层有一个宽度下采样和高度下采样系数2^(i-1)和2^(j-1)。 矩阵中的左上角l_1,1表示base layer。 对角线的层是不同大小的正方形层,可以等效于FPN。 而非对角线的层则是xNets独有的层。 层l_1,1是图像大小最大的层,每向右一步,宽度减半,向下一步,高度减半。
Layer generation

对角线层可以从主干网络的不同阶段或者使用特征金字塔主干获得,为了减少其他参数的引入,在生成矩阵层时,共享了对角线层。 上三角的层在对角线层上使用步幅为1x2的卷积,而左下角则使用步幅为2x1的卷积。
Layer ranges

作者定义了分配给矩阵每一层目标的宽度和高度范围。 该范围需要反映矩阵层的特征向量的感受野。 矩阵中的向右的每一步可以使水平方向的感受野加倍,而向下的每一步可以使垂直方向的感受野加倍。 一旦定义了第一层的范围,就可以使用上述规则为其余矩阵层生成范围。 如第一层l_1,1的H[24px,48px],W[24px,48px]。 那l_1,2层的H[24px,48px],W[48px,96px]。
Center-based 目标检测

如下图所示,包含了4个阶段,(a-b)使用xNet作为主干网络,(c)使用共享输出的子网络,对于每一个矩阵层,可以预测其层内目标的中心热力图,左上角回归值和右下角回归值。 (d)作者将所有层的输出与soft非极大值抑制相结合,以获得最后的输出。


Corner-based 目标检测

如下图所示,包含了4个阶段,(a-b)同样是使用xNet作为其主干网络,(c)使用共享输出的子网络,对每一个矩阵层,预测左上角和右下角角点的热力图,角点偏移和目标中心点的预测。 (d)作者使用中心预测对同一层中的角点进行匹配,然后将所有层的输出与soft非极大抑制相结合,以获得最终输出。

实验

作者使用了8个Titan XP GPU的服务器来训练所有网络。 代码是使用PyTorch [14]实现的。 为了进行评估,作者使用了MS COCO检测数据集。 首先使用MS COCO的“ train-2017”集训练模型,并在“ val-2017”上进行了验证,最后在“ test-dev2017”集上进行了测试。 作者使用“ val-2017”数据集来确定了模型和消融实验。 为了与其他检测器进行比较,作者使用了在“ test-dev2017”上的结果。
在以下小节中,作者将对Centers-xNet和Corners-xNet检测器的性能进行比较。 然后,作者会将本文检测器与其他检测器进行比较。 最后,作者做了消融实验,来评估模型不同部分的作用。
Centers-xNet vs Corners-xNet

作者想比较Centers-xNet和Corners-xNet之间的性能差别。 表格1展示了在不同测试图像大小下的结果对比。 测试图像的大小将直接影响小、中、大物体的mAP。 此观察结果可用于调整我们主要感兴趣目标的mAP。 为了保持一致,后续的测试图像大小固定为900px。

下图是这两个网络的可视化结果比对。 可以发现,(a)中的对比显示corner-based的方法可以有更好的检测效果,(b)中的对比显示corner-based方法检测的目标框会更贴近目标,(c)中可以看出center-based方法对于有遮挡的目标,检测效果更优一些。

与其它检测器的对比

如表格2所示,作者将Centers-xNet和Corners-xNet的最佳检测器与其他单级检测器进行了比较。Corners-xNet在单比例和多比例输入图像上都居于首位。它还缩小了单级和两级检测器之间的距离。Centers-xNet与其他基于anchor的网络结构具有相同的性能。这些结果证明了使用MatrixNet作为目标检测骨干网络的有效性。
消融实验

作者做的消融实验是关于矩阵层、层范围(layer range)、训练图像的crop大小。

一个5层的MatrixNet网络等效于FPN,因此我们将其用作向主干添加更多矩阵层的baseline。表格3列出了使用不同矩阵层下的mAP。与FPN(5层MatrixNet)相比,使用19层MatrixNet可将性能提高5.1点。19层MatrixNet网络中的额外层比FPN层小得多,因为矩阵中向右或向下的每一步都会将宽度或高度减少一半。图6展示了其可视化的比较结果。
结论
在这项工作中,作者介绍了MatrixNet,这是一种可感知比例和长宽比的目标检测网络结构。作者使用MatrixNets解决了基于角点的目标检测的基本限制,他们还使用MatrixNet作为基于anchor的目标检测网络主干,在这两种应用中,作者均展示出结果mAP较基线有显著的提升。
作者将MatrixNet视为对FPN网络改进的backbone。本文展示了使用MatrixNet进行一阶段目标检测的结果,这可以在将来扩展到两阶段目标检测。MatrixNets还可以在其他计算机视觉任务(例如实例分割、关键点检测和全景分割任务)中替代FPN。

原文链接:
https://arxiv.org/abs/1908.04646

(*本文为AI科技大本营编译文章,转载请微信联系1092722531)



精彩推荐



人工智能数学基础系列公开课 通过人工智能热点问题开始,引出其中蕴涵的数学原理,然后构建解决实际问题的数学模型和方法,兼具趣味性与实用性。


1月16日晚8 :00 , 哈工大屈教授在线直播课---『看得见 』的数学,带大家解密计算机视觉背后的数学知识!







请到「今天看啥」查看全文