天天看点

Waymo 新研究:为了自动驾驶,用280万张图片“重建”一个旧金山

Waymo 新研究:为了自动驾驶,用280万张图片“重建”一个旧金山

在自动驾驶算法的整个生命周期里,重现环境的3D模型是十分重要的一环。

作者 | 科斯加

编辑 | 文 靓

业内普遍认为,海量数据、高精地图和虚拟仿真,是自动驾驶“升维”的必由之路。

不过,就目前的行业现状来看,距离自动驾驶技术真正落地还有很长的路要走。因此,除了在真实道路上进行持续测试,研究人员也一直在模拟环境中探寻各种长尾场景,希望以此将现实中不常出现的变量也一一化解。

比如,Cruise 的虚拟测试车每天在模拟场景中运行20 万个小时;行业领头羊 Waymo,在模拟器中每天可获得百年的驾驶经验,测试里程累计超过150 亿英里;英伟达则开发了强大的云计算平台—— NVIDIA DRIVE Sim,可以生成用于训练车辆感知系统的数据集;......

但如前所言,算法“打怪升级”之路困难重重。比如处理瞬态物体(汽车、行人等)的存在,天气和照明条件的变化,还有模型容量和内存和计算约束方面的限制,即使在恒定条件下,想在错综复杂的环境里一次性完成训练,无异于“天方夜谭”。

对此,来自UC Berkeley、Waymo、Google AI 的研究人员利用280多万张图像训练了一个Block-NeRFs 的网格,渲染出整片旧金山市区的3D 环境。这也是迄今为止最大的神经网络场景表征。

图注:用Block-NeRFs渲染旧金山街区的效果展示

从视频来看,纯自动生成的建筑效果已经比微软模拟飞行里“AI生成+人工调试”的建筑物更好,秒杀一众基于实景照片再由AI重建的3D模型。

这篇震惊四座的成果——《Block-NeRF:可扩展的大场景神经视图合成》,也被很多网友称之为Google Maps 2.0 或者Neural Google Maps。

Waymo 新研究:为了自动驾驶,用280万张图片“重建”一个旧金山

图注:Wayno新研究论文截图

Block-NeRF 是一种神经辐射场的变体,可以表征大规模环境。它最大的亮点在于,能将 NeRF 的应用场景从小微、单个场景对象扩展到的城市级别。这种分解将渲染时间与场景大小解藕,因此在环境更新时只需做分块更新,而不用对场景全量地重新训练。

Waymo 新研究:为了自动驾驶,用280万张图片“重建”一个旧金山

如图所示,重建场景被分成了多个 Block-NeRF,每个 Block-NeRF 都在特定 Block-NeRF 原点坐标(橙色点)的某个原型区域(橙色虚线)内的数据上进行训练。

研究者通过外观嵌入和学习姿态细化来扩展 ,以此收集数据中相对应的环境变化和姿态错误,并为NeRF 添加曝光条件,从而在推理过程中修改曝光。

ECCV 2020横空出世的NeRF(Neural Radiance Field,神经辐射场)绝对是近年来最受欢迎的技术。它在一系列挑战性场景中效果惊艳,展示出极高的保真度。

NeRF的内核主有两部分:

用神经网络权重建模场景的辐射场和密度。

体积渲染(Volume rendering)用于合成新视角视图,通过给定环境的输入图像及相机姿态,然后合成从未观察过的视点渲染场景,从而允许用户以高视觉保真度在重建的环境中导航。

Waymo 新研究:为了自动驾驶,用280万张图片“重建”一个旧金山

图注:NeRF的体积渲染原理

而变形后的模型就是Block-NeRF。扩大Block-NeRF 的网络容量将能够表征越来越大的场景。然而,这种方法本身有许多限制:渲染时间随着网络的大小而变化,网络不适配单个计算设备,更新或扩展环境需要重新训练整个网络。

为此,研究者提出将大型环境划分为多个单独训练的 Block-NeRF,然后在推理时动态渲染和组合。

单独建模另这些 Block-NeRF 灵活性达到最大,可扩展到任意大的环境。使NeRF对数月内不同环境条件下采集的数据具有鲁棒性,为每个单独的 NeRF 添加了外观嵌入( appearance embeddings)、学习姿态精化和可控曝光,并引入了一种用于相邻NeRF 之间的外观对齐程序,以便无缝组合。

比如,在每个十字交叉路口放置一个Block-NeRF,其需要覆盖和交叉路口相连任何街道的75%,这样任何两个相邻的Block-NeRF都可以有50%的重叠度。

图注:3 个月内收集的数据重建了旧金山的阿拉莫广场社区

Block-NerF 的基础是NerFs 和mip-NerFs。mip-NeRF 是抗锯齿神经辐射场的动态方法。当输入图像从不同的角度拍摄时,这消除了因设置导致的NeRF 性能降低的混叠问题。从数百万张照片中,Block-NeRF 通过组合大量NeRF 来重建一个实质性的、连贯的环境。

图注:新模型是 mip-NeRF 中提出的模型的扩展

从本质上讲,研究团队将城市规模的场景划分为许多容量较低的模型,这也大大降低了整体计算成本。Block-NeRF 能高效地处理瞬态对象,使用分割算法将它们过滤掉。

同时,谷歌还优化了外观代码以匹配光照条件,从而可以动态选择相关的Block-NeRF 进行渲染,并在遍历场景时以平滑的方式进行合成,还能够基于每个 Block-NeRF 到新视图的距离计算插值权重。

重建后的效果也十分惊人。鉴于数据的各个部分是在不同环境条件捕获的,算法遵循NeRF-W 生成式潜在优化(Generative Latent Optimization),这也提升了perimage 外观嵌入向量。让NeRF 可以解释多个外观变化的条件,例如变化的天气和照明。同时操纵这些外观嵌入也成为可能,在观察到的不同条件之间进行插值(比如,多云与晴朗的天空,白天或黑夜)。

图注:外观代码允许模型表示不同的照明和天气条件

Waymo 新研究:为了自动驾驶,用280万张图片“重建”一个旧金山

图注:生成的模型中包含曝光条件,这有助于解释训练数据中存在的曝光量变化

Waymo 新研究:为了自动驾驶,用280万张图片“重建”一个旧金山

图注:多段数据的模型消融实验结果。外观嵌入帮助网络避免添加几何图形来解释环境中的变化,消除曝光导致准确性降低的问题。姿势优化有助于锐化结果,并消除重复物体的重影,如第一行中的电线杆

写在最后

从论文中可以看出,Block-NeRF的“主战场”是自动驾驶相关领域,主攻如何将NeRF扩展到城市大范围场景。但该研究更多集中在横向范围的扩展上,对于纵向范围的研究并未过多涉及。

在Block-NeRFs的加持下,也许元宇宙的物理空间表达又多了一种流畅的方式。以后的街景地图或将不再是“点+全景图片”的形式,而是连续真实、视角可以任意切换的灵活场景。

研究人员表示,Block-NeRF不是万能的,仍有许多问题亟待解决。比如虚拟环境里,一些车辆和阴影移除效果不佳,植被外观在季节变化中逐渐模糊。同时,AI 也无法自动处理训练数据中时间不一致的问题,需要人为地重新训练有“bug”的模块。

目前,无法渲染动态对象的场景限制了Block-NeRF 对机器人闭环模拟任务的适用性,解决此类问题,可能需要对动态对象直接建模。

论文链接: arxiv.org/abs/2202.05263

链接 :

END

Waymo 新研究:为了自动驾驶,用280万张图片“重建”一个旧金山

自动驾驶时代,车载摄像头的新故事

Waymo 新研究:为了自动驾驶,用280万张图片“重建”一个旧金山

替代激光雷达?4D 成像毫米波雷达的「热」与「痛」

继续阅读