专栏名称: 极市平台
极市平台是由深圳极视角推出的专业的视觉算法开发与分发平台,为视觉开发者提供多领域实景训练数据库等开发工具和规模化销售渠道。本公众号将会分享视觉相关的技术资讯,行业动态,在线分享信息,线下活动等。 网站: http://cvmart.net/
目录
相关文章推荐
薪人薪事企小薪  ·  DeepSeek让管理者的工作逻辑,彻底变了 ·  昨天  
智联招聘HR公会  ·  智联安全体系坚如磐石,为用户卓越护航 ·  昨天  
51好读  ›  专栏  ›  极市平台

ECCV2024|ViewFormer:高效的多视图时空建模占据网络

极市平台  · 公众号  ·  · 2024-07-06 22:41

正文

↑ 点击 蓝字 关注极市平台
作者丨自动驾驶之心
来源丨自动驾驶之心
编辑丨极市平台

极市导读

一种新颖的多视图时空建模方法,通过引入占据流任务和view-guided transformers,为自动驾驶感知任务提供了新的视角和解决方案。 >> 加入极市CV技术交流群,走在计算机视觉的最前沿

我们组最近的工作 ViewFormer: Exploring Spatiotemporal Modeling for Multi-View 3D Occupancy Perception via View-Guided Transformers (https://arxiv.org/abs/2405.04299)主要讨论多视角相机时空感知问题,虽然围绕占据网格任务展开,但实施方法聚焦在时空特征建模方面,同样适用于其他主流智驾感知任务。该方法近期还获得了 RoboDrive Challenge (https://robodrive-24.github.io/)Occupancy赛道冠军。观点如下:

  1. 基于Transformer的稀疏多视图特征交互方案中,主流方法主要沿用类BEVFormer的方法,先将3D参考点投影到图像上,再利用2D的deformable attn.收集特征,文中我们将该方案称为projection-first方法。受限于传感器布局,不同相机之间的共视区域通常较少,多数3D参考点本身仅能投影到单张图像内,导致该方法仅能为query收集到单图像的特征,有违多视图感知的初衷。针对该问题我们提出了learning-first方案,先学习3D局部点集,再利用局部3D点集去收集多视图特征,我们将各query的局部点集定义在各query视角坐标系下,使得点集offset量不随query坐标变化,通过引入车身四周旋转不变性来加速收敛。 总的来说,在我们learning-first方案中,query能否收集到多视图的特征的过程变成了一种数据驱动的方式,不再像projection-first方法受限于传感器布局。
  2. 在temporal modeling方面,我们主要考虑工程实用性和通用性,在特征图层面实现了online video多帧交互的建模方案。为了充分发挥temporal优势,我们还引入occupancy flow的任务,在flow任务上,本文关注真正occupancy level的flow,而非object level的flow,两者的区别主要是object flow为object框内的occ.赋值了相同的flow vector,真的occupancy flow会有更加细粒度的表示。题外话,occ. flow与目标的整体性是对立的,让PnC同学看到会比较头疼...本文旨在探讨细粒度4D场景的潜力,或许可以为未来e2e框架提供更好的感知表示。

下面会就几个核心部分展开讨论。

1.  View Attention

projection-first方案 vs. learning-first view attn.

如图所示,左边图(a)是上文提到的类BEVFormer的projection-first方法,可能出现的问题是3D参考点如果不能投影到某个图像上,就不会为该query收集该图像特征。与之相对,右边图(b)是我们的learning-first view attn.,通过先学习定义在view坐标系的3D点集,再用点集收集多视图特征,使得能否收集多视图特征这件事变成了一种数据驱动的方式。

2.  Overview

ViewFormer overview

整个ViewFormer框架流程图如上图,我们直接用voxel级别的query,在View Attn.模块中收集当前帧多视图的特征。在时序交互模块Streaming Temporal Attn.模块中,为了降低算力和存储开销,voxel query会被压缩为BEV query,当前帧的BEV query会同时和存储在Streaming Memory Queue中的历史多帧BEV特征做交互,时序这部分算子直接用的deformable attn.,时序交互完,更新后的BEV query会被升维到voxel query,最终voxel query在head部分会负责预测occ.状态和occ. flow。当前帧的BEV特征会被压入Streaming Memory Queue中成为后续帧的历史特征。训练和推理都遵循一致的online video形式。

3.  Occupancy Flow

Object flow vs. occ. flow

已有方法中,利用数据集目标框的标注来生成occ.的flow,但一目标框内的所有occ.都被赋了相同的值,如图中(a)和(c),这显然有违细粒度occ.感知任务的初衷。我们通过跟踪目标框内每个occ.点,制作了occ.级别的flow GT,如图(b)和(d)。通过可视化可以看到,对于旋转的车辆,细粒度的occ. flow能表示出车头和车尾不同的速度方向,这种细粒度的4D场景表示在场景感知中具备更大的潜力。

4.  实验部分

相同基准下我们超过了Occ3D数据集第一界竞赛的冠军方案FB-OCC 2.74个百分点。其他更多基准以及数据集的比较可以从文中查看。

5.  消融实验

在对learning-first的view attn.消融实验中,与projection-first方法相同复杂度下,view attn. 模块能直接提升1.2个百分点。是否将可学习的点集定义在view坐标系下(VC),确实影响精度,补充材料里也详细比较了收敛速度问题。

我们也将view attn.移植到了地图构建算法MapTR和3D目标检测算法DETR3D中,去分别替换掉他们方法的多视图特征提取模块(其均是类似projection-first方案),显著提升的性能表示projection-first方案确实对多种任务性能阻碍,在上述两个需求大感受野的目标级别任务上该问题会更凸显一些。

时序部分的实验,temporal modeling部分相较单帧感知提升了3.26 mIoU,可以看到同时与多帧交互能带来稳定提升,我们实验中历史帧大于4帧之后这部分带来的增益就不再增加了。由于历史帧特征都是在online video数据流中暂存在memory queue中的,与多帧交互几乎不增加训练和推理耗时。

6.  可视化

上图(a)和(b)分别是以objection flow为GT和occ. flow为GT训练的网络预测的flow结果,可以看到对于旋转的车辆,occ. flow可以更有意义的表示出车辆旋转的动态。


公众号后台回复“ 数据集 ”获取100+深度学习各方向资源整理







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