基于神经网络的2D到3D机器学习方法
首先分享一件颇具趣味性的事情。一位代号为 @Tristan 的 Twitter 技术工程师,近期公开了他攻破的 FSD Beta 内部 3D Voxel NN(体素神经网络)。其呈现效果酷似《西部世界》中那种狂野且粗糙的渲染画面,虽无法做到毫发毕现,但具备一项关键能力——能够识别那些落在传统识别结果
首先分享一件颇具趣味性的事情。一位代号为 @Tristan 的 Twitter 技术工程师,近期公开了他攻破的 FSD Beta 内部 3D Voxel NN(体素神经网络)。其呈现效果酷似《西部世界》中那种狂野且粗糙的渲染画面,虽无法做到毫发毕现,但具备一项关键能力——能够识别那些落在传统识别结果分类范围之外的“长尾目标”与场景。
@Tristan 是一名活跃于 Twitter 和 GitHub 的技术工程师,目前任职于 Facebook。他的个人兴趣聚焦于机器学习和逆向工程。正因如此,他与一批长期活跃在互联网上的汽车科技黑客,对破解特斯拉的车机系统、特别是自动驾驶系统,怀有极高的热情。毕竟,这是公众所能接触到的、为数不多的、已实现批量商用的完整 AI 系统。
11月25日,@Tristan 在 Twitter 上公开了他破解的 Autopilot 感知堆栈中的新功能,大致可称为“Voxel 3D Birdseye View Model”——一种基于体素的 3D 矢量空间感知模型。该功能最早出现在约一个半月前的 2021.36 版本中,而当前正在测试的 FSD Beta 10.5 版本中再次被发掘。目前尚不确定此 NN 模型是否在线参与实际识别任务,但功能确已存在。而且,其针对性十分明确,旨在解决纯视觉系统下表现欠佳的静态物体识别难题。先来看一段被黑客提取出的 Voxel 3D Birdseye View 模型识别结果。
@Tristan 并未提供这段视频对应的真实世界场景,但大致可以理解为:车辆行驶在道路上,从摄像头提供的 2D 视觉信号中“还原”出的 3D Voxel 静态物体信息。这包括但不限于:道路区域内的隔离设施、道路边缘的大致轮廓,以及道路外围的第一排临街建筑物与各类交通实体。
先别急着探究 FSD Beta 是如何将视频信号转换为 3D Voxel 场景的。理解这项技术的关键,在于弄明白什么是“体素(Voxel)”。

图二【Tesla voxel 3d model-2.png】来自 spatial.com 的体素概念截图。
体素本质上是 3D 像素,但并非正方形,而是完美的立方体。理论上,体素是复制现实的理想建模技术。你可以想象,真实世界就是由类似体素的元素构成(当然,它们小得多,可理解为“亚原子粒子”)。只要体素密度足够高(类似于 2D 平面的分辨率),再配合适当的渲染技术,就能用体素复制出在视觉与行为上无法与真实事物区分的物体。例如下图,如果计算机的渲染能力足够强劲,就能构建出基于立方体体素的虚拟物理实体。只要体素足够细密,肉眼在一定距离内根本无法分辨。

图三【Tesla voxel 3d model-3.png】来自 spatial.com 的体素概念截图。
基于体素的建模在今天拥有非常具体的应用场景。许多科学学科都借助它来快速确定体积数据。例如,在基于体素的形态测量学中,研究人员可以用体素比较脑组织浓度的差异;地质学家常利用它模拟地形、海拔等地质特征。更广泛地,科学家可以用它可视化和测量城市中从流体到绿地等任何事物的体积。体素在需要对单个粒子进行建模的模拟技术中也很实用,比如智能材料模拟。
但我们关注的重点,是自动驾驶领域对 3D 目标实时建模的特殊需求——这与上述科学领域的精密应用有显著差异。这引出了两个核心问题:
为什么说自动驾驶领域的 3D 目标实时建模很特殊?
从当前硬件配置来看,除了特斯拉剑走偏锋、选择“纯视觉”路线仅依赖摄像头外,几乎所有其他主流自动驾驶厂商都选择了视觉+超视觉的机器感知方案,需要配备完整的摄像头、激光雷达和毫米波雷达阵列(低速泊车场景的超声波雷达暂且不谈)。对于后者的综合性传感器配置而言,获取静态场景/物体的测量信息并不困难。在无外界干扰的情况下,激光雷达通过激光反射点云信息,可以直接测量并描述车辆四周的环境,从而直接获取 3D 建模结果。可能因激光雷达在车身上的安装位置和角度不同会有些差异,但像 Waymo 那种车顶 360 度旋转的大型激光雷达,便可直接拿到最终的 3D 结果。没错,直接!
但对于特斯拉的纯视觉方案来说,摄像头基于成像平面的感光原理,只能获取车辆四周的部分信息(缺少关键的深度信息)。因此,必须存在一个看似“悖论”的数据处理过程:
真实的物理世界 → 小孔成像投影变换 → 像平面形成 2D 像 → 神经网络 → Voxel 3D 场景信息
单一视觉传感器的优势,恰恰也正是它自身的劣势。
为什么自动驾驶领域的 Voxel 3D 建模需求,与上述科学领域有显著区别?
从视频中 Voxel 3D 场景信息便能看出:至少在特斯拉的实现中,针对静态周围场景的 Voxel 体素体积较大,远大于前面提到的各类科学应用中的 3D 建模体素,因此最终呈现效果上不够细腻。不太确定的是,大尺寸体素是否能显著降低建模的算力需求?是否能带来更高的建模置信度?或者,是否足以弥补特斯拉纯视觉信息对道路静态场景理解力不足的现状?下面通过参考 FSD Beta 系统摄像头捕捉的视觉场景,及其对应的实际 Voxel 3D 建模结果,来尝试解答这些问题。

图四【Tesla voxel 3d model-4.png】来自 @Tristan 推特视频截图。

图五【Tesla voxel 3d model-5.png】来自 @Tristan 推特视频截图。
图四和图五对应显示了一个道路中央带有隔离标识的双向车道。第一眼看去,确实很难看出 2D 图与 3D 图之间的对应关系,这实际上就是大型体素的 3D 化处理效果。注:图五中的绿色方块是模拟出的主车位置(两张图的位置有些不匹配,但不影响对比分析)。
红色箭头:这是场景中最具代表性的一个物体,也是特斯拉纯视觉面临的最大长尾问题之一。如果针对静态物体的识别任务头,并没有对这种黄色的道路隔离指示牌进行预分类定义和针对性训练,那么类似道路中央的障碍物很可能被特斯拉纯视觉忽略。图五中可以看到,识别结果是一个稳定的、叠加增高的体素立柱。
紫色箭头:图五中紫色箭头所指的边界高度体素,整齐划一,对应了图四中的路缘石。这种高于路面一个体素高度的路缘石结构被准确、连续地识别出来,能够有力补充特斯拉纯视觉对马路上可行驶区域边界的识别置信度。这里可以思考一下,精准模拟路缘石可能的高度、形状和缺损,对“可行驶区域”边界的界定其实没有特别好的增益。连贯、稳定地识别出路缘石边界就足够了。
蓝色箭头:图五中高出路缘石高度的体素,对应图四中的灌木绿化带。因为面积较大,所以呈现出连贯的趋势。
绿色箭头:图五中绿色箭头的体素柱状结构,对应图四中的路边电线杆。目前还不清楚不同颜色的体素代表什么具体含义,可能是识别结果的置信度,也可能是高度。
综上可以看到,路侧更远处、更高处的场景识别,目前是没有输出的,仿佛被人切了一刀。这其实很好理解——在距离“可行驶区域”一定距离外的空间高度信息,对自动驾驶系统并无增益,可以忽略。后面还会看到一个例子:特斯拉的这种体素场景识别技术,可以识别地下车库的顶棚。对于带有顶棚结构的室内场景和隧道场景,高度识别还是有实际意义的。
经过这个理解过程,再看图五的 Voxel 3D 输出,就不会是之前那种一头雾水的感觉了。当然,图五所代表的识别结果仍然是低信息密度的。但考虑到特斯拉纯视觉识别堆栈的识别结果不会以 Voxel 3D 场景为唯一准绳,针对静态场景尤其是障碍物的 Voxel 3D 识别结果,一定是视觉识别输出的补充,从而保障“防撞”等关键任务。
再来看一个实际的静态场景处理前后对比:

图六【Tesla voxel 3d model-6.png】来自 @Tristan 推特视频截图。

图七【Tesla voxel 3d model-7.png】来自 @Tristan 推特视频截图。
图六和图七的对比非常明确,主要表达了对公路路面三角锥的 Voxel 3D 识别。因为三角锥本身的椎体结构(底部粗、顶部细),所以体素识别结果也基本是这个趋势。当然,就单个三角锥来说,Voxel 3D 的识别结果不能令人满意——太粗糙了,以至于如果单独看图七,根本无法分辨这些堆状障碍物到底是什么东西。但它所能表达的“指定位置上有障碍物”这个性质,是足够有价值的:FSD Beta 的路径规划模块需要考虑这些障碍物,并加以避让。当然,从历史经验看,特斯拉纯视觉的静态物体识别任务头是可以对三角锥这种常见交通物体进行识别和分类的,并不需要额外依赖 Voxel 3D 的 NN 识别输出。但如果遇到各种交通场景长尾现象中、障碍物属性无法穷尽的客观事实时,Voxel 3D 的输出就十分必要了。

图八【Tesla FSD beta v9-18.png】。

图九【Tesla FSD beta v9-31.png】。
从之前捕捉到的 FSD Beta 路测场景中,可以看到大量特斯拉纯视觉难以识别的长尾现象。图八中的货车卸货斜板结构;图九中位于道路可行驶区域内部的西雅图轻轨支柱等等。对于激光雷达、毫米波雷达这类有源传感器来说,识别类似障碍物并非难题。但对于纯视觉方案,如果不按照视觉+NN 的标准数据收集和训练方法,对道路中央的支柱、货车尾部的卸货斜板等目标物体提前建立分类并进行训练,那么就永远不会被特斯拉纯视觉的 HydraNets 所识别,从而对自动驾驶系统构成真实威胁。
FSD Beta 所采用的 Voxel 3D NN 的技术细节并未披露。从一般性的公开方法来看,从单个 2D 图像中恢复出 Voxel 3D 信息的方法,基于标准的 Encoder-Decoder 结构。以一篇公开论文(V3DOR 网络)为例,可以大致说明其背后的技术原理。
V3DOR 即 Visual 3D Object Reconstruction,是典型的 Encoder-Decoder 架构的 NN。Encoder 编码部分从摄像头像平面输出的 2D 图像中获取“合适的”特征;Decoder 解码部分在这些特征的基础上恢复目标物或场景的 3D 信息。整体训练数据来自一个名为 ShapeNet 的数据集。随着该数据集近期规模的不断丰富和演进,V3DOR 的性能也在稳步进化,号称达到行业领先水平。实际上,利用激光雷达技术或结构光摄影技术,部署在消费电子产品(如手机)上,来拍摄实际物体并生成矢量化的 3D 目标物成像,已经是一个比较成熟的技术。以从 iPhone 12 Pro 开始进入 iPhone 系列的激光雷达模块为例,效果如下:

图十【Tesla voxel 3d model-9.png】来自互联网。
从近景的货柜开始,打开 iPhone 的激光雷达传感器进行扫描。你会发现,激光雷达传感器与肉眼不同,它看到的只有远近关系,而没有材质。受限于机身尺寸和需求差异,iPhone Pro 和 iPad Pro 上的雷达传感器只能识别几米的距离。上图中可以看到,深度信息只包含镜头周边的场景,包括左手的冰柜和左手的货架,而过远的地方则无法识别。

图十一【Tesla voxel 3d model-10.png】来自互联网。
如果综合利用 iPhone 机体内的其他传感器,比如陀螺仪和网格系统,情况会不同。iPhone 会通过陀螺仪来记录设备姿态(这意味着拿着 iPhone 可以亦步亦趋地朝前走,而陀螺仪/IMU 可以记录你和 iPhone 的姿态,从而生成基准网格,并将运动过程中激光雷达的所有记录信息按照相对位置保存并纳入网格系统)。当扫描开始后,它通过一套网格系统来记录被拍摄物品所处的位置。上图所示,便是拍摄过程中的网格视图。

图十二【Tesla voxel 3d model-11.png】来自互联网。
激光雷达扫描到的信息是无数的位置关系,仅整理成网格形式还不够精细、准确。为将这些信息变成可用的模型,可以使用多边形网面图,也被称为 Mesh。上图所示,货柜被进一步处理成一个个三角形组成的一张网。这张网所具备的凹凸代表,便是真实世界中物品所具备的形状和深度关系。Mesh+Grid 的后台技术,将激光雷达结构化的深度信息有条理地整理出来了。

图十三【Tesla voxel 3d model-14.png】来自互联网。
最后,将拍到的图片根据位置一一还原到扫描到的场景中,会得到完整的、带有纹理的图片。

图十四【Tesla voxel 3d model-15.png】来自互联网。
这个流程很可能不是实时的。对于自动驾驶来说,拥有激光雷达传感器当然是件好事。但对于选择纯视觉方案的特斯拉来说,没有激光雷达,相关自动驾驶的识别和感知能力、尤其是对于未分类障碍物的需求,却丝毫不能缺失。因此,从视觉出发、甚至苛刻到必须从单张 2D 视觉图像文件出发,实时构造出道路环境下的深度信息——难!且必要!!

图十五【Tesla voxel 3d model-16.png】来自论文《Voxel-Based 3D Object Reconstruction from Single 2D Image Using Variational Autoencoders》。
如上图所示,V3DOR 网络具备典型的 Encoder-Decoder 架构。底部的蓝色框内呈现了 2D 到 3D 变换的过程。对于一个标准的 2D 图像文件,需要以下处理过程:
图形文件的预处理过程:针对任何给定的图形文件,V3DOR 需要对其进行灰度处理和 Normalize 一般化处理,以降低图形文件之间的差异。首先,目标要转换成 3D 信息,目标物体和场景的颜色并不重要。一般化处理包括统一到固定像素(这里是 128x128 像素),以降低 CPU 和 RAM 负荷;每像素的灰度尺度用 0-255 之间的数值表述;同时还需要将目标物尽可能放置在文件的尺寸中心,尽可能捕捉更多可以表征 3D 信息的特征。
Encoder 编码部分:编码部分共有七层 2D 卷积层。论文中给出的实际是标准的平面卷积参数,分别是(64, 3×3, 2),(64, 5×5, 2),(128, 7×7, 2),(128, 5×5, 2),(256, 3×3, 2),(256, 4×4, 2),(512, 2×2, 2)。以上卷积参数格式为(filter channels, spatial filter dimensions, stride)。可以看到一个大趋势——和我们日常使用的 2D CNN 主流参数没有区别,都是越往后 channel 越大,可以学习到越来越多的高层语义信息。
Encode 编码部分最终输出的所谓隐含变量(Latent Variable)是 1 维的,size 为 512,是一个数组格式。当进入隐含变量表达时,将其通过一个全连接网络扩展为 8192 维数组。按照作者的说法,可以将更多从 2D 图像中学到的特征充分表达出来,以便后续的 Decoder 解码部分可以据此恢复出较好的立体信息。
Decoder 解码部分:隐含变量(一个 8192 维数组)作为学习来的特征,被送入 Decoder 执行解码。Decoder 根据输入的隐含变量执行一个类似形变的操作,将形变结果填入一个只有一个 channel 的 3D 空间内。注意,这个 V3DOR 的输出空间是一个 32x32x32 的立体空间,只有一个 channel,也就是立体空间内各向等质,不再做任何特征上的区分。可以打个类比:就好像 3D 打印出来的模型,通体一个材质,但可以充分反映物体的 3D 属性,这就是最大的成功。
具体的 Decoder 解码器包含 5 层 3D transpose,具体参数格式为:((filter channels, filter dimensions, stride),类似于 3D CNN。具体指标为:五层(64, 5×5×5, 2),(32, 3×3×3, 2),(32, 5×5×5, 2),(21, 3×3×3, 2),(1, 3×3×3, 1)。
至此,V3DOR 将 2D 图形(128x128 像素)转换为 3D 空间物体表象(32x32x32,单位不明),且为矢量格式。
这可能让人困惑:这不就是空手套白狼吗?怎么就 Encoder-Decoder 大变活人,凭空变出 3D 信息了?其实可以这样想:给你一张车辆的 2D 图片,你必然能想象出它的 3D 外观,这是建立在大量“先验或经验”基础上的——比如汽车有四个轮子,汽车基本是个长方体,车顶结构或者方正或者溜背等等。人类大脑内部有大量逻辑关系,提示你那些看不到的车体部分是什么结构和尺寸。对于 V3DOR 也一样,只要有足够大的样本数据库,NN 可以用一种最“笨”的办法学得人类的这种推理经验,本质就是监督学习。
如果延伸考虑,类似 V3DOR 这样的 NN 结构在 FSD Beta 内部,大概应该是一个相对独立的应用。而且对于摄像头 raw data 的处理,可能在特征参数要求上和其他识别任务不同而独立存在,也可能共用一个 backbone,不确定。因为缺乏明确的技术描述,只能大概推测 Voxel 3D 场景任务任务头在 HydraNets 中的大致位置,如下图:

图十六【Tesla voxel 3d model-8.png】来自 Tesla AI Day 主题演讲视频截图。
这个推测基于 Voxel-3D 任务作为一个标准任务头,坐落于标准 CNN backbone 基础之上。但也有可能不是,不过这不影响对这个功能的理解。
最后,回到我们之前提到过的单一传感器——摄像头的悖论。Elon Musk 不知道是不是最早被 Mobileye 的 Shashua 教授洗了脑,执拗地坚持使用摄像头,而且还是“独眼”摄像头,放弃毫米波雷达,不屑激光雷达,从而不带丝毫的立体信息。这成功把自己逼入了“感知绝境”。在这个独眼基础上,FSD Beta 想不聪明都不行,而且至少要等同于人类驾驶智能才有可能迈入 L4 境界,甚至因为独眼而更难。
在现有的神经网络架构下,感知技术普遍建立在监督学习基础上。这意味着机器需要知道——通过训练,我要学什么?才有可能学得足够好。但现实是长尾的,千奇百怪、层出不穷,这条道路在可靠性上就行不通。因此,必要的机器测量(比如激光雷达),在面对奇怪长尾场景时,就显得尤为必要…… 除非…… Tesla 可以从摄像头中恢复出足够精度和可靠性的、类激光雷达的输出。
这就是这个悖论的起点。不要测量,要感知,可感知结果不能确保安全的前提下,通过感知技术实现基本等效的测量结果——沿着道路环境用摄像头 raw data 恢复出 3D 世界,但并不对其进行识别操作。其本质,又回到了曾极力避免的机器“测量”的本意上。
你是一名 AI 行业编辑,请围绕下面这条热点输出一份资讯解读:
热点:基于神经网络的2D到3D机器学习方法要求:
1. 先用一句话解释这条热点在讲什么
2. 再总结它为什么重要
3. 说明会影响哪些 AI 产品或内容方向
4. 最后给出 3 个适合资讯站使用的标题
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
相关热点生成式AI被美国国防信息系统局纳入观察名单,用于前瞻性研究。DISA首席技术官表示正探索其在国防通信与安全领域的应用价值,同时需防范信息误导、数据泄露等风险。美军人工智能投入从2016年6亿增至2021年25亿美元。
企业AI应用需从单点工具升级为决策核心,由最高决策者推动。零一万物推出万策AI平台及老板AI、投资官AI、销冠AI三款产品,辅助经营、投资与销售决策,实现订单额增长5倍、商机转化率提升2倍。
机器学习与深度学习在半导体制造中用于提升良率,涵盖缺陷自动分类、深沟槽蚀刻工艺优化、3DNAND深层缺陷检测及芯片贴装角填充检测等环节,通过决策树神经网络、四层前馈模型及迁移学习等方法实现高效分类与工艺优化。
LlamaIndex负责数据连接与索引,Ragflow负责工作流编排,二者协同构建高效、可扩展的RAG应用。通过事件驱动的工作流,实现文档摄取、检索、重排序与答案生成,支持流式输出,适用于问答、文本生成等场景。
- 日榜
- 周榜
- 月榜
热点快看
