(七)论文阅读 | 目标检测之ASFF


简介

在这里插入图片描述

图1:论文原文

论文是 2019 2019 年的一篇关于目标检测的论文,其主要创新点是在 F P N {\rm FPN} 形式等结构的网络中提出一种自适应特征融合方式。
论文原文 源码


0. Abstract

在摘要部分,作者指出特征金字塔 F P N {\rm FPN} 是一种常用的用于解决多尺寸检测的方案,但不同层的特征不同,直接融合会丢失有价值信息( C V P R   2018 {\rm CVPR\ 2018} 年也有一篇关于 F P N {\rm FPN} 中融合不同层特征的检测网络PANet)。论文提出一种自适应特征融合( A S F F {\rm ASFF} )方法,在基于 Y O L O v 3 {\rm YOLOv3} 上,网络在 M S   C O C O {\rm MS\ COCO} 数据集上的实验结果为 38.17 % A P   60 F P S 42.4 % A P   45 F P S 43.9 % A P   29 F P S {\rm 38.17\%AP\ 60FPS、42.4\%AP\ 45FPS、43.9\%AP\ 29FPS}
本文贡献:(一)提出一种自适应特征融合方法, A S F F {\rm ASFF} ;(二) A S F F {\rm ASFF} 可以提高 F P N {\rm FPN} 形式网络的性能;(三) A S F F {\rm ASFF} 实现简单、计算量小。


1. Introduction

引言部分,首先介绍了经典 C N N {\rm CNN} 、公开数据集和多尺度检测网络。 S S D {\rm SSD} 首次利用金字塔式的特征,通过复用不同层的特征信息预测不同尺寸的目标。但这种自下而上的结构对小目标检测不具有鲁棒性,因为 S S D {\rm SSD} 中用于小目检测的前面层语义信息不足从而导致了准确率低。 F P N {\rm FPN} 结合自下而上和自上而下的结构,通过侧路连接融合相邻层的特征,间接地综合了底层语义信息和高层语义信息。但作者指出 F P N {\rm FPN} 中特征直接融合方法仍遗漏了大量语义信息。 N A S {\rm NAS} - F P N {\rm FPN} 通过 N A S {\rm NAS} 方法得到的 F P N {\rm FPN} 结构中融合方法进一步提高了网络性能。 S N I P {\rm SNIP} 中使用尺度归一化方法,在多尺度图像金字塔中选择性地训练和推理使用合适的目标尺寸。但这种方法显著地增加了推理时间。
相比于图像金字塔,特征金字塔的一大缺点是不同尺度特征的不一致性,特别是对于一阶段检测器。确切地说,在 F P N {\rm FPN} 形式的网络中启发式地选择特征,高层语义信息中检测大目标、低层语义信息中检测小目标。当某个目标在某一层被当做正类时,相应地该目标区域在其它层被当做负类。如果一幅图像中既有大目标也有小目标,那么不同层间的特征的不一致性将会影响最后检测结果(大目标的检测在某一层,小目标的检测在另一层,但是网络的多尺寸检测不会仅仅检测一个特定的区域,而是综合整幅图进行检测。在特征融合时,其它层很多无用的信息也会融合进来)。针对上述问题,论文指出了一些现存的解决方法。
论文提出了一种自适应特征融合方法,让网络自动学习滤除其它层无用的信息,保留有用信息以高效地融合特征。确切地说,对于某一层的特征,其它层的特征首先整合并调整为相同分辨率,然后通过训练找到最佳融合方式。如在不同层的相同位置处,有些特征包含无用信息被滤除,而有些特征包含有用信息被加强。
A S F F {\rm ASFF} 特点:(1)寻找最佳融合方式的过程是可微分的,可以应用于反向传播;(2)可以应用于任何 F P N {\rm FPN} 形式的网络中;(3)实现简单、计算量小。
在这里插入图片描述

图2:在MS COCO数据集上的实验对比


2. Related Work

S S D F P N P A N e t D L A N A S {\rm SSD、FPN、PANet、DLA、NAS} - F P N T r i d e n t N e t {\rm FPN、TridentNet、} Libra R-CNN等。
A S F F {\rm ASFF} 的提出主要基于以下工作:Islam等引入了控制向前传递信息的门单元,以借助深层特征来辅助浅层特征滤除信息中的模糊和歧义。但作者指出语义分割中不需要在目标检测中的启发式特征选择,因为语义分割中是在所有层的特征上预测相同的标签(目标检测需要在特定层上预测一个目标,而语义分割是像素级操作,可以在综合所有层的预测结果而不会产生模糊性)。Daniel等提出在卷积和反卷积之间的跳跃连接上引入 s i g m o i d {\rm sigmoid} 门单元,用于视觉计数。这优化了同一层间特征图的信息流动,但不能解决特征金字塔中的特征不一致性的问题。ACNet中自适应地确定特征节点间的连接状态,在处理内部特征时可以灵活地切换全局推理和局部推理,在分类、检测和分割任务上具有 S O T A {\rm SOTA} 表现。


3. Method

3.1 Strong Baseline

论文使用 Y O L O v 3 {\rm YOLOv3} 为基础框架,其 b a c k b o n e {\rm backbone} D a r k N e t {\rm DarkNet} - 53 {\rm53} ,检测部分为一个三层的特征金字塔。此外,论文使用了一系列训练技巧包括: m i x u p {\rm mixup} 方法、 S G D R {\rm SGDR} C G B N {\rm CGBN} ,添加一个 A n c h o r {\rm Anchor} - F r e e {\rm Free} 分支同 A n c h o r {\rm Anchor} - B a s e d {\rm Based} 共同训练、在 S m o o t h   L 1 {\rm Smooth\ L1} 损失上添加一个 I o U   L o s s {\rm IoU\ Loss} 。基于这些技巧, Y O L O v 3 {\rm YOLOv3} 的结果从 33.0 % m A P   52 F P S {\rm 33.0\%mAP\ 52FPS} 提升为 38.8 % m A P   50 F P S {\rm 38.8\%mAP\ 50FPS}

3.2 Adaptively Spatial Feature Fusion

以往特征融合多采用值相加或拼接的形式,论文使用的方法是学习不同尺寸下特征的权重后再融合。在这里插入图片描述

图3:网络结构

如图 3 3 ,左边是 F P N {\rm FPN} 结构,下采样倍数分别是 32   16   8 32\ 16\ 8 。对于预测部分,以 A S F F {\rm ASFF} - 3 3 为例,它由 L e v e l   1 {\rm Level\ 1} L e v e l   2 {\rm Level\ 2} L e v e l   3 {\rm Level\ 3} 共同得到。假设来自 L e v e l   1 {\rm Level\ 1} 部分的为 X 1 3 {\rm X^{1→3}} ,学习到的权重为 α 3 {\rm α^3} ,其他两部分类似。最后融合三部分后得到 A S F F {\rm ASFF} - 3 3 。得到 A S F F {\rm ASFF} - 1 1 A S F F {\rm ASFF} - 2 2 类似。

如上图是网络结构,它由两部分组成:固定尺寸和自适应融合。
固定尺寸,由于不同下采样倍数得到的特征图分辨率不同,所以在融合前需要固定大小。做法是首先使用 1 × 1 1×1 卷积降维、上采样使用插值实现、下采样使用步长为 2 2 3 × 3 3×3 卷积和最大池化实现。
自适应融合,令 x i j n l {\rm x}^{n→l}_{ij} 表示由第 l l 层得到的第 n n 层的特征图上 ( x , y ) (x,y) 处的特征向量,在第 l l 层融合特征的方式: y i j l = α i j l x i j 1 l + β i j l x i j 2 l + γ i j l x i j 3 l (3.1) {\rm y}^l_{ij}=α^l_{ij}·{\rm x}^{1→l}_{ij}+β^l_{ij}·{\rm x}^{2→l}_{ij}+γ^l_{ij}·{\rm x}^{3→l}_{ij}\tag{3.1} y i j l {\rm y}^l_{ij} 表示特征图 y l {\rm y}^l ( i , j ) (i,j) 处的输出, α i j l α^l_{ij} β i j l β^l_{ij} γ i j l γ^l_{ij} 为在第 l l 层网络学习到的权重。规定 α i j l + β i j l + γ i j l = 1 α^l_{ij}+β^l_{ij}+γ^l_{ij}=1 α i j l , β i j l , γ i j l [ 0 , 1 ] α^l_{ij},β^l_{ij},γ^l_{ij}∈[0,1] ,定义为: α i j l = e λ α i j l l e λ α i j l + e λ β i j l + e λ γ i j l (3.2) α^l_{ij}=\frac{e^{λ^l_{α^l_{ij}}}}{e^{λ^l_{α_{ij}}}+e^{λ^l_{β_{ij}}}+e^{λ^l_{γ_{ij}}}}\tag{3.2}

这里是 s o f t m a x {\rm softmax} 的形式, λ l λ^l_* 1 × 1 1×1 卷积分别作用在 x n l {\rm x}^{n→l} 上得到(类似于向量间的内积,由于这里 α i j l α^l_{ij} 是标量,所以是通道共享的),由此也可通过反向传播学习。

得到的 y n {\rm y}^n 为三个尺度的检测,类似于 Y O L O v 3 {\rm YOLOv3}

3.3 Consistency Property

本节分析 A S F F {\rm ASFF} 为什么能够做到特征融合时的一致性。不失一般性,首先讨论未经尺寸变化的 l e v e l   1 {\rm level\ 1} 中位置 ( x , y ) (x,y) 处的梯度: L x i j 1 = y i j 1 x i j 1 L y i j 1 + x i j 1 2 x i j 1 y i j 2 x i j 1 2 L y i j 2 + x i j 1 3 x i j 1 y i j 3 x i j 1 3 L y i j 3 (3.3) \frac{∂L}{∂{\rm x}^{1}_{ij}}=\frac{∂{\rm y}^{1}_{ij}}{∂{\rm x}^{1}_{ij}}·\frac{∂L}{∂{\rm y}^{1}_{ij}}+\frac{∂{\rm x}^{1→2}_{ij}}{∂{\rm x}^{1}_{ij}}·\frac{∂{\rm y}^{2}_{ij}}{∂{\rm x}^{1→2}_{ij}}·\frac{∂L}{∂{\rm y}^{2}_{ij}}+\frac{∂{\rm x}^{1→3}_{ij}}{∂{\rm x}^{1}_{ij}}·\frac{∂{\rm y}^{3}_{ij}}{∂{\rm x}^{1→3}_{ij}}·\frac{∂L}{∂{\rm y}^{3}_{ij}}\tag{3.3} 在计算中设置 x i j 1 l x i j 1 1 \frac{∂{\rm x}^{1→l}_{ij}}{∂{\rm x}^{1}_{ij}}≈1 ,上式即写为: L x i j 1 = y i j 1 x i j 1 L y i j 1 + y i j 2 x i j 1 2 L y i j 2 + y i j 3 x i j 1 3 L y i j 3 (3.4) \frac{∂L}{∂{\rm x}^{1}_{ij}}=\frac{∂{\rm y}^{1}_{ij}}{∂{\rm x}^{1}_{ij}}·\frac{∂L}{∂{\rm y}^{1}_{ij}}+\frac{∂{\rm y}^{2}_{ij}}{∂{\rm x}^{1→2}_{ij}}·\frac{∂L}{∂{\rm y}^{2}_{ij}}+\frac{∂{\rm y}^{3}_{ij}}{∂{\rm x}^{1→3}_{ij}}·\frac{∂L}{∂{\rm y}^{3}_{ij}}\tag{3.4} 基于 R e t i n a N e t {\rm RetinaNet} Y O L O v 3 {\rm YOLOv3} 中的特征融合方式,这里设置 y i j 1 x i j 1 = 1 \frac{∂{\rm y}^{1}_{ij}}{∂{\rm x}^{1}_{ij}}=1 y i j l x i j 1 l = 1 \frac{∂{\rm y}^{l}_{ij}}{∂{\rm x}^{1→l}_{ij}}=1 ,上式即写为: L x i j 1 = L y i j 1 + L y i j 2 + L y i j 3 (3.5) \frac{∂L}{∂{\rm x}^{1}_{ij}}=\frac{∂L}{∂{\rm y}^{1}_{ij}}+\frac{∂L}{∂{\rm y}^{2}_{ij}}+\frac{∂L}{∂{\rm y}^{3}_{ij}}\tag{3.5} 假设根据某种匹配机制, l e v e l   1 {\rm level\ 1} (最小特征图上)上位置 ( x , y ) (x,y) 被分配为一个目标的中心, L y i j 1 \frac{∂L}{∂{\rm y}^{1}_{ij}} 为正样本的梯度。因为在其他 l e v e l {\rm level} 上相应位置被视为背景,所以 L y i j 2 \frac{∂L}{∂{\rm y}^{2}_{ij}} L y i j 3 \frac{∂L}{∂{\rm y}^{3}_{ij}} 为负样本梯度。这种不一致性干扰了梯度 L x i j 1 \frac{∂L}{∂{\rm x}^{1}_{ij}} ,降低了原始特征 x 1 {\rm x}^1 的训练效率。
一种解决上述问题的方法是忽略其它 l e v e l {\rm level} 上相应的位置,即设置 L y i j 2 = L y i j 3 = 0 \frac{∂L}{∂{\rm y}^{2}_{ij}}=\frac{∂L}{∂{\rm y}^{3}_{ij}}=0 ,但这种做法中 y i j 2 {\rm y}^2_{ij} y i j 3 {\rm y}^3_{ij} 的松弛性使得网络在次优 l e v e l {\rm level} 上产生更多较差的预测结果。在 A S F F {\rm ASFF} 中,梯度的计算采用以下方式: L x i j 1 = α i j 1 L y i j 1 + α i j 2 L y i j 2 + α i j 3 L y i j 3 (3.6) \frac{∂L}{∂{\rm x}^{1}_{ij}}=α^1_{ij}·\frac{∂L}{∂{\rm y}^{1}_{ij}}+α^2_{ij}·\frac{∂L}{∂{\rm y}^{2}_{ij}}+α^3_{ij}·\frac{∂L}{∂{\rm y}^{3}_{ij}}\tag{3.6} 其中 α i j 1 , α i j 2 , α i j 3 [ 0 , 1 ] α^1_{ij},α^2_{ij},α^3_{ij}∈[0,1] ,如果 α i j 2 0 α^2_{ij}→0 α i j 3 0 α^3_{ij}→0 则梯度内的不一致性就会缓解。由于上述系数可以通过网络的反向传播学习,所以往往能够产生有效的系数。

3.4 Training,Inference,and Implementation

训练,令 Θ Θ 为网络参数、 Φ Φ 为控制特征融合的参数。通过最小化损失函数 L ( Θ , Φ ) L(Θ,Φ) 同时优化 Θ Θ Φ Φ ,其中 L L 来自于 Y O L O v 3 {\rm YOLOv3} 加上 I o U   L o s s {\rm IoU\ Loss} 同时预测 a n c h o r {\rm anchor} 的形状和边界框回归。将 m i x u p {\rm mixup} 应用在预训练的 D a r k N e t 53 {\rm DarkNet53} 上,所有层采用 M S R A {\rm MSRA} 初始化方法。
推理,同 Y O L O v 3 {\rm YOLOv3} 一样,首先预测 a n c h o r {\rm anchor} 的形状,然后边界框回归,接着使用 N M S   0.6 {\rm NMS\ 0.6}
实施 P y T o r c h   v 1.0.1 {\rm PyTorch\ v1.0.1} C U D A   10.0 {\rm CUDA\ 10.0} C U D N N   v 7.1 {\rm CUDNN\ v7.1} 等。


4. Experiments

这部分实验主要对比训练技巧的使用,消融实验结果1:
在这里插入图片描述

图4:消融实验结果1对比

其中 B o F {\rm BoF} 为使用 3.1 3.1 中提到的所有技巧, G A {\rm GA} 为使用 G u i d e d   A n c h o r {\rm Guided\ Anchor} I o U {\rm IoU} I o U   L o s s {\rm IoU\ Loss}

这部分实验主要对比是否忽略相邻层上对应区域,消融实验结果2:
在这里插入图片描述

图5:消融实验结果2对比

图中 ε i g n o r e ε_{ignore} 表示忽略区域与目标区域的比值。

这部分实验主要对比 A S F F {\rm ASFF} 的有效性,消融实验结果3:
在这里插入图片描述

图6:消融实验结果3对比

这里 c o n c a t {\rm concat} 表示融合方式为拼接, s u m {\rm sum} 表示融合方式为相加。

可视化:
在这里插入图片描述

图7:可视化

由图 7 7 ,列表示学习的权重热图、行表示不同层的热图。目标旁红色数字表示该目标由哪层检测得到,这里将各层热图大小统一了。由第二行中的网球可以得到,它由 l e v e l   3 {\rm level\ 3} 检测得到;相应地,它在 l e v e l   1 {\rm level\ 1} l e v e l   2 {\rm level\ 2} 中被抑制,且最后的融合操作加强了其在 l e v e l   3 {\rm level\ 3} 中的响应。此外,第一行中的网球拍,它最后由 l e v e l   1 {\rm level\ 1} 检测得到,但其在融合前在 l e v e l   2 {\rm level\ 2} l e v e l   3 {\rm level\ 3} 中响应较强,但经 A S F F {\rm ASFF} 后,网球拍在 l e v e l   1 {\rm level\ 1} 中响应最大。

实验结果对比:
在这里插入图片描述

图8:实验结果对比


5. Conclusion

本文提出了一种高效的特征融合方法,并在 F P N {\rm FPN} 形式网络中表现 S O T A {\rm SOTA} A S F F {\rm ASFF} 使经典 Y O L O v 3 {\rm YOLOv3} 网络性能大大提高,同时也提出一种有效的特征融合方式,可以迁移到不同检测网络中。

由于没有阅读源码,本文只总结了 A S F F {\rm ASFF} 的大体结构和信息,详细内容请阅读论文原文


参考

  1. Liu S, Huang D, Wang Y. Learning Spatial Fusion for Single-Shot Object Detection[J]. arXiv preprint arXiv:1911.09516, 2019.


发布了12 篇原创文章 · 获赞 0 · 访问量 622

猜你喜欢

转载自blog.csdn.net/Skies_/article/details/104796757