当前位置:   article > 正文

稀疏3D检测-Sparse4Dv1v2v3_sprase4d 稀疏检测

sprase4d 稀疏检测

0. Multi-view 3D detection

LSS(Lift-Splat-Shoot)利用深度估计将图像特征提升到3D空间,并将特征拍到BEV平面。后续工作将lift-splats操作应用于3D检测领域。
Bevformer将时序信息以BEV特征cat一起引入时序信息。
DETR3D中通过预测的3D点投影到图像平面后获取图像特征,并且将deformable attention(Deformable DETR)应用于多视觉检测中。
PETR系列方法中,2D图像特征转换成3D的感知特征。对于每个instance feature,采用global cross attention来实现多视角的特征融合。由于融合模块计算复杂度仍与特征图尺寸相关,因此其仍然属于dense算法的范畴,对高分辨率的图像特征输入不够友好。
Sparse4D系列在3D空间中设置显式anchor,将它们投影到图像视图中以聚合局部特征,并通过迭代方式细化anchor。
在这里插入图片描述

Sparse 系列

资源:
SparseDrive:https://arxiv.org/abs/2405.19620
git: https://github.com/swc-17/SparseDrive/
Sparse4D: https://arxiv.org/abs/2211.10581
Sparse4Dv2: https://arxiv.org/abs/2305.14018
Sparese4Dv3: https://arxiv.org/abs/2311.11722
git: https://github.com/linxuewu/Sparse4D
Sparse4D

1 sparse4D v1 & v2

在这里插入图片描述

1.1 v1 Deformable 4D Aggregation
  • 4D 关键点生成:基于每个instance 的3D anchor信息, 可以生成一系列3D关键点,分为固定关键点和可学习关键点。我们将固定关键点设置为anchor box的各面中心点及其立体中心点,可学习关键点坐标通过instance feature接一层全连接网络得到。在Sparse4D 中,采用了7个固定关键点 + 6个可学习关键点的配置fix_scare和learned scale(FC)。然后,结合instance 自身的速度信息以及自车的速度信息,对这些3D关键点进行运动补偿,获得其在历史时刻中的位置。结合当前帧和历史帧的3D关键点,获得了每个instance 的4D 关键点。默认base anchor使用了nuscenes_kmeans900.npy,其中聚类了x,y,z,其余whlyaw都是默认1,其余0.
  • 4D 特征采样:在获得每个instance在当前帧和历史帧的3D关键点后,根据相机的内外参将其投影到对应的多视角多尺度特征图上进行双线性插值采样。从而得到Multi-Keypoint,Multi-Timestamp, Multi-Scale, Multi-View 的特征表示;[points_2d, attention weights, feature]进入deformable_aggregation_function,融合有两个function{add,cat}。
  • 层级化特征融合:在采样得到多层级的特征表示后,需要进行层级化的特征融合,分为了三层:
    • Fuse Multi-Scale/View:对于一个关键点在不同特征尺度和视角上的投影,采用了加权求和的方式,权重系数通过将instance feature和anchor embed输入至全连接网络中得到;
    • Fuse Multi-Timestamp:对于时序特征,采用了简单的recurrent策略(concat + linear)来融合;LinearFusionModule
    • Fuse Multi-Keypoint:最后,采用求和的方式融合同一个instance不同keypoint的特征;
      实例由三部分表示,分别是anchor、实例特征和anchor embedding(anchor, instance feature and anchor embedding)。
  • anchor是结构化信息,表示实例的状态,具有实际的物理意义。两部分组成。默认使用
  • instance feature是从图像中提取的高阶语义特征,主要来自图像编码器。
  • anchor embedding就是anchor的特征编码,用一个小的anchor编码器Ψ将anchor的结构化信息映射到高维空间。
    [Image]

1.2 v2 Instance Temporal Propagation:

anchor中加入了时序动态补偿,在Sparse4D-V2中,将decoder分为单帧层和时序层。单帧层以新初始化的instance作为输入,输出一部分高置信度cls得分的instance至时序层;时序层的instance除了来自于单帧层的输出以外,还来自于历史帧(上一帧)。我们将历史帧的instance投影至当前帧,其中,instance feature保持不变,anchor box通过自车运动和目标速度投影至当前帧,anchor embed通过对投影后的anchor进行编码得到。StreamPETR 中,采用了隐式的query时序转换方式,即把velocity、ego pose、timestamp都编码成特征,然后再和query feature做一些乘加操作;

1.3 v2 Efficient Deformable Aggregation

对Deformable Aggregation运算速率进行优化。对deformable aggregation模块进行了底层的分析和优化,让其并行计算效率显著提升,显存占用大幅降低。

1.4 v2 Camera Parameter Encoding

将相机参数进行编码,将相机投影矩阵通过全连接网络映射到高维特征空间得到camera embed。在计算deformable aggregation中的attention weights

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/993357
推荐阅读
相关标签