Advertisement

HRDNet: High-resolution Detection Network for Small Objects论文阅读

阅读量:

摘要

小目标检测具有挑战性,因为小目标往往不包含足够的细节信息,甚至在深层网络中可能消失。通常,将高分辨率图像输入网络可以缓解这一问题。然而,简单地增大分辨率又会带来更多问题:一方面,它加剧了目标尺度的巨大变化;另一方面,它会引入难以承受的计算开销 。为了在保留高分辨率图像优势的同时不引入新问题,我们提出了高分辨率检测网络(HRDNet)。HRDNet 使用多深度主干网络接受多分辨率输入。为了充分利用多种特征,我们在 HRDNet 中提出了多深度图像金字塔网络(MD‑IPN)和多尺度特征金字塔网络(MS‑FPN)。MD‑IPN 通过多条深度不同的网络支路,保持了多种位置信息:高分辨率输入经过浅层网络以保留更多位置信息并降低计算成本,而低分辨率输入经过深层网络以提取更丰富的语义信息。通过从高到低分辨率提取多样化特征,MD‑IPN 能够在提升小目标检测性能的同时,保持中大目标的检测效果。MS‑FPN 则旨在对 MD‑IPN 生成的多尺度特征组进行对齐与融合,以缓解这些多尺度多层级特征之间的信息不平衡问题 。在 MS COCO2017、Pascal VOC2007/2012 以及典型小目标数据集 VisDrone2019 上进行了大量实验和消融研究。值得一提的是,我们提出的 HRDNet 在这些数据集上均取得了最新的最优性能,且在小目标检测上表现尤为突出。

1 引言

目标检测是一个具有广泛应用前景的挑战性任务。随着深度学习的飞速发展,目标检测取得了显著进展。根据候选框(proposal)生成方式的不同,目标检测算法可分为两阶段方法和单阶段方法。与两阶段检测器(如 [Cai and Vasconcelos, 2018; Ren et al., 2017])相比,单阶段方法(如 [Lin et al., 2017b; Liu et al., 2016])结构更简单,因此在保持较高速度的同时仅有轻微的精度损失。尽管多数成功方法基于锚框机制,但近年来的先进算法多数转向了无锚检测,例如 CornerNet [Law and Deng, 2018]、FCOS [Tian et al., 2019]、FSAF [Zhu et al., 2019a] 等。这些基于卷积神经网络(CNN)的检测方法能够先在低层级特征中提取线条、圆形等基本图像元素,再“迭代组合”成目标,但也因此它们对小目标的检测能力相对不足。

通常,上述检测方法只要能获得足够强大的骨干网络特征,其检测性能便可得到保障。大多数情况下,更深的网络骨干能够提取更丰富的多层级特征,并通过特征金字塔网络(FPN)进行融合以提升检测效果。然而,深度增加必然带来更高的计算成本和内存消耗。

检测性能通常对输入图像的分辨率高度敏感。高分辨率图像保留了更多细节和位置信息,更有利于小目标检测;但它同样引入了新的问题

1、容易破坏大目标的检测效果(参见表 1);
2、检测往往需要更深的网络以获得更强的语义表示,从而带来难以承受的计算成本。

因此,在小目标检测中,既需要高分辨率图像,也需要深层骨干来处理小尺度图像,但我们必须在大目标与小目标检测性能,以及高性能与低计算复杂度之间做出权衡。

为了解决上述问题,我们提出了高分辨率检测网络(HRDNet)。如图 1 所示,HRDNet 由两部分组成:多深度图像金字塔网络(MD‑IPN)和多尺度特征金字塔网络(MS‑FPN)。HRDNet 的核心思想是:对低分辨率图像采用深层骨干进行处理,以获取强语义特征;对高分辨率图像则采用浅层骨干进行处理,以保留更多细节和位置信息。浅层骨干在高分辨率图像上提取特征的有效性已在 [Pang et al., 2019a] 中得到验证。通过 HRDNet,我们不仅能够在高分辨率下获得小目标的丰富细节,还能通过融合多深度、多尺度网络来兼顾效率与效果。

MD‑IPN 可视为一种多流图像金字塔网络(如图 1 所示),用于调和小目标与大目标检测性能,以及检测性能与计算复杂度之间的矛盾。它通过不同分辨率的输入形成一个固定递减比例 α∈[0,1] 的图像金字塔:高分辨率输入由浅层骨干处理,低分辨率输入由深层骨干处理。MD‑IPN 的输出是一系列多尺度特征组,每组包含多层级的特征图。
在这里插入图片描述

由于多尺度特征组在尺度流和层级流方向上都具有多路信息传递,传统的 FPN 无法直接应用于这里。为此,我们提出了多尺度特征金字塔网络(MS‑FPN),如图 2 所示,它不仅在多层级金字塔内部实现自上而下的信息传递,还在不同尺度的流之间进行跨流特征融合。
在这里插入图片描述

我们的主要贡献如下:

我们全面分析了小目标检测依赖的关键因素,以及性能与效率之间的权衡,提出了一种兼顾图像金字塔与特征金字塔的新型高分辨率检测网络 HRDNet。

在 HRDNet 中,我们设计了多深度多流模块 MD‑IPN,以平衡小、中、大目标的检测性能;同时提出了 MS‑FPN,以有效融合来自不同语义层次和尺度的特征表示。

大量消融实验验证了所提方法的有效性和效率。在多个基准数据集上的检测成绩表明,HRDNet 在整体目标检测及小目标检测方面均达到了最新的最优水平。我们希望该方法能为后续小目标检测研究提供有益启示。

2 相关工作

目标检测是计算机视觉中许多下游任务的基础。当前最先进的检测网络包括单阶段模型(如 RetinaNet [Lin et al., 2017b]、Yolo-v3 [Farhadi and Redmon, 2018]、CenterNet [Duan et al., 2019]、FSAF [Zhu et al., 2019a]、CornerNet [Law and Deng, 2018])和两阶段模型(如 Faster R-CNN [Ren et al., 2017]、Cascade R-CNN [Cai and Vasconcelos, 2018] 等)。然而,本文提出的 HRDNet 是一个更为通用的框架,可作为上述大多数检测模型(例如 RetinaNet 和 Cascade R-CNN)的骨干网络。

小目标检测
在大多数数据集上,检测性能往往受限于小目标检测的效果,因此出现了大量针对小目标检测的研究。例如,Kisantal 等人 [Kisantal et al., 2019] 提出了对小目标进行过采样并复制粘贴的方法;Perceptual GAN [Li et al., 2017] 生成超分辨率特征并将其堆叠到小目标的特征图中以增强表示;DetNet [Li et al., 2018] 在保持空间分辨率的同时拥有更大感受野,以提升小目标检测;SNIP [Singh and Davis, 2018] 对图像进行多分辨率缩放,只训练与真实目标尺度相近的样本;SNIPER [Singh et al., 2018] 则利用目标框周围的区域以减少背景干扰。与这些方法不同,我们将图像金字塔与特征金字塔相结合,不仅有效提升了小目标的检测性能,还能保证对中大目标的检测效果。

高分辨率检测
已有一些研究尝试在高分辨率图像上进行目标检测。Pang 等人 [Pang et al., 2019a] 针对高分辨率遥感图像提出了快速的微小目标检测网络;Růžić̌ka 和 Franchetti [Růzǐckǎ and Franchetti, 2018] 则提出了一种注意力流水线,在 4K/8K 视频上利用 YOLO v2 [Redmon and Farhadi, 2017] 实现快速检测。然而,这些工作并未充分探讨高分辨率图像对小目标检测的影响,而这正是我们的关注点。

特征层级不平衡
为了捕捉不同尺度目标的语义信息,目标检测中常采用多层级特征。但多层级特征在语义表达上存在严重不平衡问题。Feature Pyramid Network (FPN) [Lin et al., 2017a] 引入自顶向下的路径来传递语义信息,在一定程度上缓解了这一不平衡;基于 FPN,PANet [Liu et al., 2018a] 添加了自底向上的路径以增强深层的位置信息;Libra R-CNN [Pang and Chen, 2019] 则从样本级、特征级和目标级三个角度揭示并尝试解决了不平衡问题;Pang 等人 [Pang et al., 2019b] 提出轻量化模块来生成金字塔式增强特征。然而,这些方法仅关注多层级特征的不平衡。本文从新的角度出发,提出多尺度 FPN 模块,不仅解决多层级特征的不平衡,也兼顾了来自不同尺度特征组之间的信息不平衡。

3 高分辨率检测网络

显然,高分辨率图像对于小目标检测至关重要。然而,高分辨率图像会给深层网络带来难以承受的计算开销。同时,如表 1 所示,高分辨率还会加剧目标尺度的变化,反而削弱大目标的检测性能。为了在保持各类目标检测性能的同时,平衡计算成本与目标尺度变化,我们提出了高分辨率检测网络(HRDNet)。HRDNet 是一种通用框架,可与任意检测方法结合使用。
在这里插入图片描述

3.1 多深度图像金字塔网络(MD‑IPN)

更具体地,HRDNet 由两大新模块组成:多深度图像金字塔网络(MD‑IPN)和多尺度特征金字塔网络(MS‑FPN)。在 MD‑IPN 中,图像金字塔由不同深度的骨干网络并行处理——对低分辨率图像使用深层 CNN,而对高分辨率图像使用浅层 CNN(见图 1)。随后,为了融合 MD‑IPN 生成的多尺度多层级特征组,我们提出了更合理的特征金字塔结构 MS‑FPN(见图 2)。
在这里插入图片描述

3.2 多尺度特征金字塔网络(MS‑FPN)

在这里插入图片描述
在这里插入图片描述

4 实验

4.1 实验细节

数据集
我们在典型的小目标检测数据集 VisDrone2019 [Zhu et al., 2019b],以及传统目标检测数据集 MS COCO2017 [Lin et al., 2014] 和 Pascal VOC2007/2012 [Everingham et al., 2010] 上进行了实验。

VisDrone2019 是由 AISKYEYE 团队采集的数据集,包含 288 段视频,总计 261,908 帧和 10,209 张静态图像,涵盖了各种位置、环境、目标类型和密度场景。正如第 1 节所述,VisDrone2019 的图像分辨率普遍高于 COCO,范围从 960 到 1360 像素不等。

MS COCO 和 Pascal VOC 是目标检测中最常用的基准数据集,广泛用于评估模型性能。我们在这些数据集上遵循标准设置进行训练与评估。

按照常规做法,我们在 COCO 的训练集上训练模型,并在 COCO 的验证集上进行测试。对于 Pascal VOC,我们使用 Pascal VOC 2007 和 2012 的所有训练集与验证集联合训练模型,并在 Pascal VOC 2007 的测试集上进行评估。

在 COCO 和 Pascal VOC 数据集中,大多数图像的分辨率为 500–800 像素,训练阶段通常会将其缩放为 1333×800 或 1000×600。而 VisDrone2019 [Du et al., 2019] 数据集中的图像分辨率则较高,范围为 960–1360 像素。如图 4 所示,与 MS COCO 相比,VisDrone2019 中的图像包含更多的目标,且几乎所有目标都非常小,因而更加具有挑战性。

训练设置
我们遵循 mmdetection [Chen et al., 2019] 中的常规训练策略。VisDrone2019 模型在四张 Nvidia 2080Ti GPU 上训练,COCO 模型则在八张 Nvidia P100 GPU 上训练。优化器采用 SGD,每张 GPU 上的 mini-batch 为 2。初始学习率为 0.02,在第 7 和第 11 个 epoch 分别衰减 10 倍。权重衰减系数为 1×10⁻⁴。

我们使用线性预热策略(linear warm-up),预热迭代次数为 500,预热起始学习率为 1/3 初始值。图像金字塔通过线性插值方式生成,分辨率缩减比例 α 设置为 0.5。

为了适应 VisDrone2019 中的高分辨率图像并避免 GPU 显存溢出,我们将训练集中的每张原始图像等分裁剪为 4 张无重叠的图像块 。这样我们就获得了一个新的训练集,由裁剪后的图像组成。

推理设置
推理阶段使用与训练阶段相同的图像分辨率。非极大值抑制(NMS)的 IoU 阈值为 0.5,置信度阈值为 0.05。除非特别说明,我们的多尺度测试默认使用三个尺度

4.2 消融研究

图像分辨率对小目标检测的影响
我们在 VisDrone2019 数据集上进行了大量消融实验,以说明输入图像分辨率对检测性能的影响。表 1 显示,在相同实验设置下,随着图像分辨率的提高,检测性能显著提升。对于小目标,提升尤为明显。此外,在相同分辨率下,HRDNet 相较于最新的 Cascade R-CNN 表现更优。
有趣的是,当输入分辨率增加时,单骨干模型(例如 Cascade R-CNN)在大尺度目标(如卡车、蓬车、公交车)上的性能却大幅下降(下降 1.1–7.6%) ;而 HRDNet 在这些类别上却出现了明显的性能提高(提升 1–5.2%)。由此可见,单纯提高图像分辨率而不考虑目标尺度的剧烈变化并不是理想的检测方案,更遑论小目标检测了。

探索最优图像分辨率
我们已展示了图像分辨率对小目标检测的重要性,但更高的分辨率是否就一定带来更优性能?是否存在一个最优分辨率?在本节中,我们将展示不同分辨率下的检测性能变化。图 3 给出了在不同分辨率(从长边 2666 开始,每次步长 400)下,AP[@0.05:0.95]、AP50、AP75 随分辨率变化的曲线。最终,HRDNet 在 3800×2800 像素时获得了最佳性能。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
我们在 ResNet10+18 骨干和 ResNet18+101 骨干上分别进行了实验。表 2 中的结果表明,按深度对齐的多尺度 FPN 优于简单 FPN,也优于按分辨率对齐的版本。因此,我们在最终架构中采用了按深度对齐的 MS-FPN。
在这里插入图片描述
高效且高效的 HRDNet
HRDNet 是一个多流网络,可能有人会担心其模型尺寸和速度。我们在表 3 中将 HRDNet 与最新的单骨干基线模型进行了参数量和速度的对比,结果表明,HRDNet 在保持相似参数量的同时,不仅性能更优,速度也更快。
在这里插入图片描述
与单骨干模型集成的对比
为进一步证明 HRDNet 的性能提升并非仅仅源自更多参数,我们在相同实验设置下,将双流 HRDNet 与两 单骨干模型的集成进行了对比(表 4)。集成模型在 NMS 之前融合各自的预测框和得分,然后进行一次 NMS 。我们发现,高分辨率输入的单骨干模型虽然性能优于低分辨率版本,但仍不如 HRDNet;这得益于 HRDNet 中所设计的新颖多尺度多层级融合方法。这些实验进一步证明了 MS-FPN 对 HRDNet 的关键作用。
在这里插入图片描述

4.3 与最先进方法的比较

VisDrone2019
为了展示我们模型和技术方案的优势,我们将 HRDNet 与当前最流行、最先进的方法进行了对比。表 6 显示,在 VisDrone2019 DET 验证集上,我们提出的 HRDNet 取得了最佳性能。值得注意的是,基于 ResNeXt50+101 的 HRDNet 相比使用 ResNet152 的 HFEA,AP 提升超过 3.0%。
在这里插入图片描述表 6:在 VisDrone2019 DET 验证集上与最先进目标检测模型的比较。对于 DSOD 的结果,仅展示未使用模型集成的真实效果。表中仅列出在 VisDrone2019 训练集上训练的结果。带 “y” 的结果表示在相同环境和基础代码下训练与测试。“++” 表示推理时使用多尺度等策略。

COCO2017
除了在 VisDrone2019 上的实验,我们还在更大规模、更复杂且标准化的 COCO2017 测试集上进行了评估,以验证方法的通用性。表 5 显示,HRDNet 在该数据集上也达到了最先进的结果,尤其是在小目标(APsmall)上相比近期模型提升了超过 4.9%。
在这里插入图片描述表 5:MS COCO test‑dev 上的最新性能。HRDNet 中 ResNet101 分支的输入分辨率与上述其他模型相同,即 1333 × 800;而 ResNet152 分支的输入图像尺寸则减半。“++” 表示在推理时使用了多尺度等策略。

Pascal VOC2007/2012
Pascal VOC 数据集中小目标并不多。我们在该数据集上进行的实验表明,HRDNet 不仅提升了小目标检测性能,同时对大目标的检测效果也保持良好。
在这里插入图片描述

5 结论

单纯提高图像分辨率而不做任何网络改动,会相对削弱大目标的检测性能;同时,目标尺度的剧烈变化也进一步限制了高分辨率图像的检测效果。基于此,我们提出了针对小目标检测的新型网络 HRDNet,并设计了多深度图像金字塔网络(MD‑IPN)与多尺度特征金字塔网络(MS‑FPN)来解决上述问题。实验表明,HRDNet 在小目标检测数据集 VisDrone2019 上实现了最先进的性能,同时在 MS COCO 和 Pascal VOC 等其他基准数据集上也表现优异。

全部评论 (0)

还没有任何评论哟~