UniPAD:通用自动驾驶预训练模式!各类感知任务都可支持

作者 | 刀刀宁  编辑 | 自动驾驶Daily

原文链接:https://zhuanlan.zhihu.com/p/663315667

点击下方卡片,关注“自动驾驶之心”公众号

ADAS巨卷干货,即可获取

点击进入→自动驾驶之心【大模型】技术交流群

本文只做学术分享,如有侵权,联系删文

最近,新论文推陈出新的速度着实太快有点读不过来的感觉。可以看到的是,语言视觉多模态大模型融合已经是业界共识了,UniPad 这篇文章就比较有代表性,多模态的输入,类世界模型的预训练基座模型,同时又方便扩展到多个传统视觉应用。并且还解决了将大语言模型的预训练方法用到 3D 场景的问题,所以给统一的感知基座大模型提供了可能。

UniPAD 是一种基于 MAE 和 3D rendering 的自监督学习方法,可以训练一个性能优秀的基座模型,继而可以在该模型上微调训练下游诸如深度估计、目标检测、分割等诸多任务。因为该工作设计了一个统一的 3D 空间表示方法,使得它可以轻松地融入到 2D 和 3D 框架中,体现了较大的灵活性,这是很符合基座模型应该的定位的。

阅读时的思考与疑问点:

掩码自编码技术 和 3D 可微分渲染技术的关系是什么?简单说:掩码自编码是为了利用 Autoencoder 的自监督训练能力,渲染技术是为了生成图片后和原始图片之间进行损失函数计算并进行监督训练。所以逻辑还是很清晰的。

这篇文章在使用基座模型预训练的方法,再微调下游的检测方法和分割方法。这个方法也可以帮助理解当下的大模型与下游任务的配合方法。

看起来是没有结合时序信息的。毕竟纯视觉 50.2 的 NuScenes NDS 目前在带时序的检测方法(StreamPETR、Sparse4D 等)比较中还是弱了一些。所以 4D 的 MAE 方法,也是值得一试的,其实 GAIA-1 已经提到了类似的思路。

运算量与内存使用量如何?

具体方法:

UniPAD 隐式地编码了 3D 空间信息,这里主要受到了掩码自编码(MAE、VoxelMAE 等)的启发,本文利用了生成式的 mask 来完成体素特征的加强,用来重建场景中连续的 3D 形状结构以及它们在 2D 平面上的复杂外观特征。

在我们的实验中,UniPAD的优越性得到了充分体现。相较于传统的激光雷达、摄像头,以及激光雷达-摄像头融合基线,UniPAD 分别提高了 9.1、7.7 和 6.9 的 NDS 。值得一提的是,在nuScenes验证集上,我们的预训练流程为3D目标检测实现了73.2的NDS,并在3D语义分割任务上取得了79.4的 mIoU 分数,与之前的方法相比,取得了最好的成绩。

整体架构:

b413adc769f81080e7af09ecc3370537.png

整体架构。该框架 LiDar 和多镜头图片作为输入,这些多模态数据会通过掩蔽生成器(Mask Generator)被填充为零。被掩码遮蔽的 embedding 会被转换到体素空间,在这样的 3D 空间中通过渲染技术生成RGB或深度预测结果。这时没有被掩码遮蔽的原始图像就可以做为生成数据进行监督学习了。

Mask Generator

这里的 Masked AutoEncoder 的 mask 是通过 Mask Generator 来生成的。可以理解为通过数据增量的方式来提高了训练难度,以寄希望于增强模型的表示能力和泛化能力。引入了一个 Mask 生成器,通过有选择性地遮挡某些区域,同时还区分了点云数据和图像数据。在点云数据中,采用了分块遮罩(block-wise masking)的策略;对于图像,采用了稀疏卷积(sparse convolution)的方法,只在可见区域进行计算。当输入数据被 mask 掉后,后续的编码特征在对应的被 mask 区域会被设置为 0,从而在模型的处理中被忽略,同时也为后续的监督学习提供了可以用来预测目标以及其对应的 groundtruth 。

统一的表示形式

为了使预训练方法适用于各种不同的数据模态,寻找一个统一的表示形式就很重要。过往 BEV 和 OCC 等方法都在寻找一个统一的标识形式,将3D点投影到图像平面中会导致深度信息的丢失,而将它们合并到 BEV 鸟瞰图中则会遗漏与高度相关的细节。所以本文提出将两种模态都转换为3D体积空间,也就是类似 OCC 类似的 3D 体素空间。

渲染方法:

可微分渲染技术应该是作者认为论文最大的亮点了,本文通过类似 NERF 的采样射线穿过多视图图像或点云,通过神经网络结构预测每个 3D 点的颜色或深度,最后再通过射线穿过的路径获取 2D 的映射。这样可以更好地利用图像中的几何或纹理线索,提高模型的学习能力和应用范围。

我们将场景表示为 SDF(implicit signed distance function field),当输入是采样点的 3D 坐标 P(沿射线的相应深度 D)与 F(the feature embedding can be extracted from the volumetric representation by trilinear interpolation)时,SDF 可以看做一个 MLP ,来预测采样点的 SDF 值。这里 F 可以理解为 P 点所在的 encode 编码。继而得到输出:N(condition the color field on the surface normal)和 H(geometry feature vector),这时就可以通过一个以 P、D、F、N、H 为输入的 MLP 获取到 3D 采样点的 RGB 值和深度值,再通过射线叠加 3D 采样点到 2D 空间就得到了渲染结果。而这里射线 Ray 的采用方法,和 Nerf 的方法基本相同。

渲染方法还需要进行内存开支的优化工作,这里先按下不表。不过这个问题是个比较关键的落地问题。

Mask 与渲染方法的本质是训练一个 pretrain 模型,pretrain 是可以没有后续分支的就可以根据预测 mask 来完成训练。pretrain 的后续工作会分别通过不同的分支产生 rgb 和 depth 预测,也就是后续可以再通过 det/seg 等任务结合的时候去微调,也就实现了一种即插即用的能力。

Loss 损失函数:

Loss 函数并不复杂。

2e604d0e98bbab90be932db8f3c29756.png

实验结果:

617a21d9d8e81a5c095d1387697277b1.png baf11b0eb92bb43e15f5a84684c0a844.png

和近期其他工作对比:

其实 GAIA-1 已经在用时序上的 Mask AutoEncoder 思路,只不过作为监督数据的是不同时刻的一整帧数据,但是 UniPAD 则是在 3D 空间中去随机抠出一部分 mask 来监督预测。倒是蛮期待能看到两者结合的方法的。

另外,UniPAD 完全可以看成是一种多模态大模型的尝试,也可以看做是一种世界模型。虽然文章中没有非常强调这些。

总结:

本文应该算是 3D 领域较为新颖的 Masked Autoencoder 方法了。因为 MAE 方法是用在了基座模型预训练阶段,所以支持了多个不同模态的信息,所以自然而然的可以扩展到微调下游很多任务,这和 LLM 的设计思路非常的接近,都注重于在预训练阶段捕捉多模态信息,为各种任务提供统一的基础。这种方法为3D领域的研究提供了新的思路和可能性。

该方法不仅在3D领域具有潜力,还可以扩展到 4D 时序领域,以及优化其内存与计算量等方面还可以产生很多新的工作,为未来的研究提供了新的思路和可能性。

① 全网独家视频课程

BEV感知、毫米波雷达视觉融合多传感器标定多传感器融合多模态3D目标检测点云3D目标检测目标跟踪Occupancy、cuda与TensorRT模型部署协同感知语义分割、自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码即可学习

51023725cf14ae91b26e283acded3df9.png 视频官网:www.zdjszx.com

② 国内首个自动驾驶学习社区

近2000人的交流社区,涉及30+自动驾驶技术栈学习路线,想要了解更多自动驾驶感知(2D检测、分割、2D/3D车道线、BEV感知、3D目标检测、Occupancy、多传感器融合、多传感器标定、目标跟踪、光流估计)、自动驾驶定位建图(SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案、AI模型部署落地实战、行业动态、岗位发布,欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频,期待交流!

27d31d2fa63058de048a7561d2cb9cdd.png

③【自动驾驶之心】技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D目标检测、BEV感知、多模态感知、Occupancy、多传感器融合、transformer、大模型、点云处理、端到端自动驾驶、SLAM、光流估计、深度估计、轨迹预测、高精地图、NeRF、规划控制、模型部署落地、自动驾驶仿真测试、产品经理、硬件配置、AI求职交流等方向。扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)

097d7af9ea17d1e375e8151205d40030.jpeg

④【自动驾驶之心】平台矩阵,欢迎联系我们!

9669e8889e91ad1ed26c74424d55f9e2.jpeg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值