简述
2022 年,特斯拉宣布即将在其车辆中发布全新算法。该算法被称为occupancy networks,它应该是对Tesla 的HydraNet 的改进。
自动驾驶汽车行业在技术上分为两类:基于视觉的系统和基于激光雷达的系统。后者使用激光传感器来确定物体的存在和距离,而视觉系统则纯粹基于相机。特斯拉的Tesla Vision就是单纯的基于视觉实现。
但基于视觉的系统存在很多缺陷,并且仍然面临着许多由物体检测失败或其他问题引起的崩溃。
如果您看到不属于数据集的对象怎么办?在基于激光雷达的系统中,您可以通过激光检测来物理确定物体的存在,但在摄像头系统中,您必须首先使用神经网络检测物体。
仅仅因为这一点,就造成了很多麻烦。在 CVPR(计算机视觉和模式识别)2022 上,特斯拉自动驾驶新负责人推出了一种新型算法,名为:occupancy networks。
occupancy networks
在“经典网络”中遇到很多问题,遮挡物的问题,结构是2D的等等,占用网络是一种不同类型的算法,基于名为占用网格映射的机器人学思想;它包括将世界划分为网格单元,然后定义哪个单元被占用,哪个单元空闲。
上图是代表传统的经典网络所识别的物体。
占用网络的思路是获得体积占用率。所以它是 3D 的,使用“占用”而不是检测,另外是多视角的。
所以它看起来像这样:
实际上没有得到物体的确切形状,而是一个近似形状。还可以在静态和动态对象之间进行预测。它的运行速度超过 100 FPS,因此它的内存效率非常高。
占用网络通过3个核心思想来解决这些问题:体积鸟瞰图、占用检测和体素分类。
1、鸟瞰图
在 Tesla AI Day 2020 上,介绍了esla的鸟瞰网络。该网络展示了如何将检测到的物体、可驾驶空间和其他物体放入 2D 鸟瞰图中。
占用网络的作用是查找占用量。
2、固定矩形
在设计感知系统时,我们经常尝试将我们的检测与固定输出联系起来。如果您看到一辆卡车,您将放置一个 7x3 的矩形,如果您看到一个行人,您将在占用网格中使用一个 1x1 的矩形。问题是,你无法预测悬垂的障碍物。
如果汽车顶部有梯子,如果卡车有侧拖车或扶手;那么你的矩形就不再起作用了。
这里的占用网络足够精确,可以看到这一点:
其工作方式如下:
将世界分成微小(或超微小)的立方体或体素
预测每个体素是空闲还是被占用
3、物体检测
对象检测存在一个主要问题:它仅检测属于数据集一部分的对象。如果您检测到不属于数据集的东西,也许就会崩溃。
所以当思考和训练模型来预测“无论对象的类别如何,该单元格是空闲还是被占用?”时,都在避免此类问题。
左侧却没有检测到,因为Tesla数据集没有。
4、架构
左边,你可以看到特斯拉的摄像头(总共8个:前面、侧面、后面等等......)。
首先,它们被发送到由Regnet和BiFPN组成的骨干网;这些是 2022 年最先进的特征提取器(如果您愿意,您可以将其替换为其他东西)。
然后,注意力模块采用位置图像编码,并使用键、值和固定 查询(汽车与非汽车、公共汽车与非公共汽车、交通标志与非交通标志)来生成占用特征量。这是一个你需要理解注意力的概念。
这会生成一个占用特征体积,然后与之前的体积(t-1、t-2 等)融合,以获得4D占用网格
最后,我们使用反卷积来检索原始大小并获得两个输出:占用量和占用流量。
5、光流估计和占用流
特斯拉在这里实际上所做的是预测光流。在计算机视觉中,光流是像素从一帧移动到另一帧的变化。
在这种情况下,我们得到了每个体素的流动,从而得到了每辆车的运动;这对于解决遮挡问题非常有帮助,而且对于其他问题(例如预测、规划等)也非常有帮助......
占用流实际上显示了每个对象的方向:红色:向前 - 蓝色:向后 - 灰色:静止,等等......(我们实际上有一个代表每个可能方向的色块)。
6、神经网络
Tesla 的 NeRF
神经辐射场(NERF) 最近取代了 3D 重建,特斯拉是这个领域的大师。核心思路是从多视图图像重建场景。
可以用来重建建筑物,这可以使用一辆汽车或在城镇周围行驶的特斯拉车队来完成。
这些 NeRF 是如何使用的?主要用于健全性检查。
由于我们的占用网络生成 3D 体积,因此我们可以将这些 3D 体积与 3D 重建体积(离线训练)进行比较,从而比较我们重建的 3D 场景是否与“地图”匹配(NeRF 生成 3D 重建)。
在这些重建过程中还可能出现图像模糊、雨、雾等问题。为了解决这个问题,他们使用车队平均(每次车辆看到场景时,它都会更新全局 3D 重建场景)和描述符而不是像素。
将描述符与NeRF一起使用。
与此同时,特斯拉还宣布了一种名为“隐式网络”的新型网络,其主要思路是相似的:通过查找视图是否被占用来避免碰撞。
全部评论 (0)