目录
概况
创新点详解
1、跨注意力动态融合 Cross-Attention Dynamic Fusion
(1)特征提取
(2)体素特征编码
(3) BEV特征提取
(4)特征动态融合
①线性变换
②对Q(BEV特征)和K(图像特征)进行点积运算
③Softmax运算
④特征加权融合
⑤将计算出来的特征与图像原特征进行连接
2、同步数据增强 Synchronous Data Augmentation
1)点云数据增强:
2)图像数据增强:
总结
论文地址:
[PDF] DyFusion: Cross-Attention 3D Object Detection with Dynamic Fusion | Semantic Scholar
代码地址:
GitHub - bijiangf/DyfusionV1 at master
概况
在自动驾驶领域,激光雷达和摄像传感器发挥着不可或缺的作用,为精确的三维目标检测提供关键的观测数据。现有的融合算法有效地利用了两个传感器的互补数据。然而,这些方法通常将原始点云数据和像素级图像特征连接起来,不幸的是,这一过程会引入错误,并导致每个模态中嵌入的关键信息的丢失。为了解决特征信息丢失的问题,本文提出了一种跨注意力动态融合(Cross-Attention Dynamic Fusion, CADF)策略,对两个异构数据源进行动态融合。此外,我们认识到这两种不同模式的数据扩充不足的问题。为了解决这个问题,我们提出了一种同步数据增强(SDA)策略,旨在提高训练效率。我们已经使用KITTI和nuScenes数据集测试了我们的方法,结果很有希望。值得注意的是,我们表现最好的模型在KITTI测试基准上获得了82.52%的mAP,优于其他最先进的方法。
从上面这段论文的原文中我们可以看出这篇论文的核心创新点在于:
- CADF策略—跨注意力动态融合
- SDA策略—同步数据增强
分别用于解决:
- 特征信息丢失问题
- 两种模式的数据扩充不足问题
CADF(右)利用交叉注意融合点云和图像特征。SDA(左)采用同步增强策略来提高模型的鲁棒性 。
创新点详解
1、跨注意力动态融合 Cross-Attention Dynamic Fusion
我们提出了跨注意动态融合(CADF)策略,该策略利用跨注意机制动态组合跨模态特征。通过动态加权对模型进行校正,减少了信息损失,减小了误差。
论文认为传统的计算机视觉多模态方法常用的融合策略都过于简单,比如直接运用算术运算和拼接来整合图像和点云特征。但这样操作会导致两个潜在的问题,最终导致融合的有效性降低
- 由于点云输入的分散性,直接将密集的图像特征融合到点云上会导致图像语义信息的丢失。
- 这种方法可能会引入数据冗余,阻碍重要信息的聚合并引入噪声。
基于此种考量论文提出了 新的跨注意力动态融合(CADF)策略来动态融合异构数据源。CADF框架图如下图所示。与传统方法不同,CADF采用动态加权对特征进行动态融合,使每个点云能够更好地捕捉和融合图像特征,从而更有效地利用图像中的全局语义信息。
CADF的框架图
首先,将BEV和图像特征分别线性变换为Q矩阵和K矩阵。将这些相乘得到注意力矩阵A,然后将其归一化。得到的矩阵用于权衡和融合BEV和图像特征。通过将结果矩阵与原始图像特征进行拼接得到融合特征
(1)特征提取
为了从原始图像输入中提取全局特征表示,文章提出的CADF采用ResNet-50架构作为2D特征学习的骨干模块。ResNet-50—广泛应用于计算机视觉任务,比如多雾图像 OR ConvGRU-CNN。在文章的方法中,ResNet-50从原始图像中提取全局特征映射,在每张图像的基础上生成高维特征表示。
式中,f 表示ResNet-50网络,θx 表示网络参数。
(2)体素特征编码
CADF策略使用体素特征编码(Voxel Feature Encoding, VFE)来处理点云数据。
式中,f 表示VFE层,θp 表示VFE层的参数,Pj 表示第 j 个体素中的点云数据。
(3) BEV特征提取
通过正交映射将体素特征表示投影到BEV (Bird’s Eye View)平面上,获取点云数据在BEV视角下的位置坐标和相关特征向量。将所有体素的特征向量按照一定的规则进行聚合,得到一个体素特征向量。
式中 i ,j 为BEV平面的位置坐标,k 为特征向量的维数,l, m, n为体素的索引,g 为聚合函数,可以是池化、平均或最大化函数。
(4)特征动态融合
①线性变换
对BEV特征和图像特征分别进行线性变换,得到两个新的特征映射:和,其中d为特征向量的维度。
式中,V为BEV特征矩阵,hx为图像特征向量,Wq和Wk为可学习的线性变换矩阵。
②对Q(BEV特征)和K(图像特征)进行点积运算
得到一个注意力矩阵
其中 i, j, k,l 表示注意矩阵中的位置坐标,:表示所有特征向量,√d用于缩放点积结果,以避免梯度爆炸或消失的问题
③Softmax运算
将注意力矩阵A进行softmax运算,得到归一化的注意力矩阵P,可以表示为:
④特征加权融合
接下来,对BEV特征矩阵V进行加权,用P(这里的P对应图中的A,即为Softmax之后的矩阵A)进行融合,得到融合特征矩阵F,其表达式为:
⑤将计算出来的特征与图像原特征进行连接
有同学可能就有疑问了,这为什么融合了之后还要与BEV特征进行二次融合啊,意义是什么?
交叉注意模块中的注意矩阵A量化了BEV表示与图像嵌入之间的特征相似性,确定了融合过程中不同位置特征的权重分配。所以说这个矩阵A对于二次融合,就像一个权重一样起了作用。而为了实现这一点,softmax操作将A中的值映射到[0,1]范围进行加权融合。所得到的融合输出hf同时包含BEV和图像特征,从而增强了点云和图像的空间关系和语义信息的表示
2、同步数据增强 Synchronous Data Augmentation
此外,我们还引入了异构数据的同步数据增强(SDA)策略,以增强模型的鲁棒性,并解决异构模式数据增强不足的问题。通过同步增强点云特征和图像数据,我们的模型能够学习更通用的信息表示,从而通过获取更多可转移的嵌入来提高其泛化能力。
作者认为先前大多数增强策略仅适用于点云数据,增加了样本量,避免了点云稀疏导致的效率降低。但仅增加点云忽略了与图像数据的一致性和对应性,可能导致模型过拟合。
为了避免过拟合并改进模型泛化,因而提出了一种同步数据增强(SDA)策略,在增强点云的同时对相应的图像数据进行同步增强,保持模态之间的对应关系。
这种SDA策略避免了训练过程中的不一致问题,从而提高了模型的准确性和鲁棒性。此外,SDA可以同时对点云和图像数据进行各种变换,增加了数据集的多样性。这使模型能够更好地适应不同的场景和环境。
1)点云数据增强:
为了消除噪声和增加数据集的多样性,文章从VoxelNet和SECOND中汲取灵感,对点云应用了各种数据增强技术。我们执行随机旋转、缩放、平移、裁剪和子采样,解释如下。从[-π/4, π/4]随机采样点云进行旋转。我们通过随机缩放[0.95,1.05]和变换[-0.1,0.1]来增强数据。对于随机裁剪,参数在[-0.1,0.1]中随机选取。
子采样将每个点云减少到512个点。这些增强显著增加了点云的多样性,提高了模型的鲁棒性和泛化性。
从训练数据集中随机选择并连接目标子集到每一帧中,增加了目标的数量和多样性,提高了训练速度和效率。点云稀疏意味着帧可能包含很少的对象,从而阻止网络完全学习对象的特征。因此,引入更多的对象可以提高模型的准确性和鲁棒性。此外,更多的目标增强了对不同场景的适应性,提高了泛化能力。因此,这种增强方法有效地提高了模型的性能
2)图像数据增强:
文章设计了一种创新的方法来增强图像数据的意识。将从3D对象标签注释中提取的深度数据与Mixup方法融合以实现这一目标。具体来说:
①首先将原始图像与增强点云对齐,
②然后执行部分裁剪。
③然后根据其深度信息将相应的透明度应用于每个裁剪区域,从而表示图像中的深度信息。
为了生成增强图像,文章首先对目标物体按深度排序,并从原始图像中裁剪出相同的区域。然后,我们使用Mixup方法中的混合比例将每个裁剪的区域与相应的目标图像混合。这确保了增强图像与原始图像保持连续性。
此外,还根据增强图像中每个物体所在区域的深度顺序对其透明度进行衰减。这保证了增强图像与原始图像之间的一致性。
通过将深度信息整合到图像数据中,模型可以从点云和增强图像表示中学习,从而提高了性能和鲁棒性。综上所述,该方法是一种有效的增强图像数据深度感知的数据增强技术。
总结
本文提出了一种新的图像点云融合方法DyFusion。方法引入了CADF,这是一种利用交叉注意有效整合图像和点云特征的创新方法。这种集成不仅减少了错误,而且解决了特性丢失的挑战。文章还设计了SDA策略来解决数据扩充不足的问题,这有助于在训练数据中引入更多的变量,从而提高模型的鲁棒性和泛化能力。