扫码加入

  • 正文
  • 相关推荐
申请入驻 产业图谱

占用网络是怎么让自动驾驶识别异形障碍物的?

23小时前
365
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

 

感知系统对于自动驾驶来说,就像是眼睛和翻译官的角色。这套系统不仅要捕捉到周围环境的光影信号,更需要将这些支离破碎的像素点转化为计算机能够理解的物理实体。

在过去很长一段时间里,行业内主流的感知方案是基于目标检测的思维方式,也就是在三维空间中寻找特定的物体,并用一个紧凑的长方体框将它们圈定出来。这种被称为“3D目标检测”的方法在处理常见的汽车、行人和自行车时表现得非常高效,它能告诉车辆前方有一辆多少米长、多少米宽的小轿车。

然而,现实交通环境的复杂程度远超实验室里预定义的标签库。当道路上出现一辆侧翻的油罐车、一个散落的纸箱,或者是一个伸出吊臂的起重机时,传统的画框式算法就会显得捉襟见肘,因为这些东西的形状极不规则,很难用一个标准的方盒子去准确描述。

为了解决这些“不在名单上”的风险,占用网络应运而生。它不再尝试去辨认每个物体的具体身份,而是将整个物理世界切分成无数个微小的、边长通常只有十几厘米的立方体,这些小方块被称为“体素”。

占用网络只需要判断每一个体素是否被物理实体所占据。这种从“物体检测”到“空间占据预测”的逻辑转变,让自动驾驶系统具备了识别任何形状障碍物的能力。

传统视觉感知有何痛点?

在深入探讨占用网络之前,有必要先厘清下传统感知方案在面对异形物体时的痛点。早期的自动驾驶算法高度依赖“分类”逻辑,也就是系统必须先知道一个东西是什么,才能确定它在哪。这种逻辑在处理“本体裂纹”或“语义裂缝”时非常脆弱。

举个例子,如果一个算法的训练集里全都是标准的货车,当它在路上遇到一辆拉着长木材、木材向后延伸出车厢数米的拖挂车时,系统可能只会把车头和车厢识别为一个长方体,而忽略掉那些向外延伸的木材。

对于自动驾驶汽车来说,这种对空间理解的缺失是非常致命的,因为这意味着规划器可能会认为车后方的空间是空的,从而在变道时发生碰撞。

此外,传统3D目标检测还存在着形状刚性的挑战。它尝试用一个长、宽、高固定的立方体去套住所有物体,但在现实中,很多障碍物是可变形的或者是中空的。

像是一辆正在施工的洒水车,它喷出的水雾在视觉上可能很模糊,或者一辆造型奇特的工程车,其吊臂悬浮在半空中。传统的方盒子无法描述这种“悬空”或“非连续”的物理占据,就会将吊臂下方的空地也标记为不可通行,或者干脆完全漏掉悬空的吊臂。

这种对空间细节的粗糙处理,使得车辆在复杂的城市窄路或施工区域行驶时,表现得畏首畏尾或者极度危险。

视觉感知还有一个固有缺陷是深度信息的缺失。虽然我们可以通过算法将二维图像转化为三维坐标,但在远距离场景下,这种转化的误差会呈指数级增长。仅靠几个像素点的变化来推断地平线上一个物体的距离是非常不可靠的。激光雷达虽然能通过物理反射解决距离问题,但其成本限制了自动驾驶的大规模普及。

在这种背景下,如何用廉价的摄像头实现媲美激光雷达的空间建模能力,成为了感知技术演进的核心驱动力。占用网络正是在这种需求下,通过将感知空间从二维平面提升到三维体素,为纯视觉方案补齐了最后一块短板。

占用网络的是如何实现场景理解的?

占用网络的核心理念是将车辆周围的物理空间彻底“数字化”。它不再尝试去理解具体的物体语义,而是将感知的焦点回归到最原始的问题,这个点上到底有没有东西。

为了实现这一点,系统会通过环视摄像头捕获360度的图像数据,然后利用特征提升,将这些二维的像素特征映射到一个三维的向量空间中。

在这个过程中,Transformer架构起到了至关重要的作用。它像是一组敏锐的探测波,在三维空间中进行“位置查询”,通过注意力机制去寻找不同视角的图像中哪些像素点指向了同一个物理空间点,从而在系统内部构建起一个密集的、充满了特征信息的立体网格。

这种体素化的表示方法与传统的点云数据有着异曲同工之妙,但它比点云更进一步。点云仅仅是物体的表面反射点,而占用网络生成的体素网格是连续的、稠密的。它不仅记录了物体的表面,还隐含了空间的占据状态。

特斯拉的占用网络可以在大约10毫秒内完成一次全局的空间预测,这个速度远超人类的反应极限。它会将世界划分为一个个极小的立方体,并为每个立方体赋予一个“占据概率”。如果某个位置的占据概率超过了设定的阈值,规划器就会将其视为障碍物,从而在路径搜索中自动绕开该区域。

值得一提的是,占用网络在提升空间分辨率方面也有一套精妙的算法。由于车载芯片的内存和算力是有限的,系统不可能对所有的空间都进行同样精细的划分。

因此,先进的算法会采用“按需分配”的策略,在靠近车辆行驶路径的区域,体素划分得非常细致,足以看清路面上一个小小的路障;而在远离车辆或者天空中不影响行驶的区域,则使用较粗的网格以节省计算资源。

这种“分辨率在关键处发力”的设计,使得占用网络能够在实时性与准确性之间找到完美的平衡点。

为了确保预测的准确性,现代占用网络还会引入时序融合机制。它不只是根据当前的一帧画面做判断,还会参考过去几十毫秒甚至几百毫秒的特征流。这种跨时间的特征比对,不仅能过滤掉单帧图像中可能出现的噪点,还能让系统感知到物体是如何在三维空间中移动的。

这种时空的交织,让车辆不仅拥有“立体感”,还拥有了某种程度上的“物理常识”。如当系统看到一组体素正在向前快速移动时,它能通过历史数据的一致性判断出这大概率是一个动态的交通参与者,而不是路边静止的建筑残骸。

占用网络如何解决“看不见的风险”?

占用网络最引以为傲的能力,就是它对“长尾障碍物”或异形物体有极高鲁棒性。在传统的自动驾驶逻辑中,异形物体几乎就是“无法识别”的。但是因为占用网络本质上是在做三维空间的几何重构,它对物体的外观、颜色或者类别完全不敏感。它只关心一点,如果在一个特定的空间坐标上,摄像头观察到了持续的视觉遮挡和特征反馈,那么这个空间就是“被占据”的。

这就好比在黑夜中用手摸索前方的障碍。传统算法像是必须通过手感猜出摸到的是椅子还是桌子才能避开,而占用网络则只要发现手伸不过去,就立刻认定那里有东西。

这种“几何优先”的思维方式彻底解决了语义裂缝问题。无论障碍物是一辆翻倒的洒水车、一堆凌乱的建筑材料,还是一棵横在路中央的断树,占用网络都能精准地描绘出它们在三维空间中的实际轮廓,而不会像传统算法那样,试图用长方体去强行套住这些形状奇诡的东西。

此外,占用网络对于处理“悬空障碍物”具有天然的优势。这是BEV(鸟瞰图)技术在升维过程中最容易遗失的信息。在传统的BEV架构下,所有东西都被压扁到了一个二维的地平面上,系统很难区分一个物体到底是长在地上,还是悬在空中。

而占用网络通过在Z轴(高度轴)上的多层体素划分,可以清晰地识别出路面上的隔离带和横跨路面的限高杆之间的空间差异。它能告诉车辆,底盘可以安全通过某些低矮的坑洼,但车顶可能会撞上前方低垂的树枝。这种全方位的几何理解,让自动驾驶汽车在应对复杂的施工现场或不规则的立交桥下空间时,具备类似人类驾驶员的直觉。

此外,占用网络还具备卓越的“脑补”能力,这在处理遮挡问题时尤为关键。当一辆大货车遮挡住了后方的部分视野时,传统的点云方案只能看到货车的侧面,而无法知道货车后面是否还藏着其他东西。

占用网络通过深度学习积累的几何先验,可以在一定程度上预测被遮挡区域的占据状态,并将这些预测信息提供给下游的避障算法。这种对未知空间的防御性建模,极大地提升了车辆在十字路口或视线受阻区域行驶时的安全性。

占用流如何实现预测能力?

如果说三维体素解决了空间识别的问题,那么“占用流”(Occupancy Flow)则赋予了系统对动态世界的预测能力。

占用流不仅能告诉我们哪些空间被占用了,还能给出每一个被占用体素的运动矢量。通过分析这些矢量的颜色和方向,规划算法可以清晰地预判周围物体的运动轨迹。

占用流的引入,本质上是引入了物理世界的守恒定律。它意识到,一个体素如果现在被占据了,它下一刻要么留在原地,要么会移动到相邻的体素位置。这种局部的连贯性约束,使得系统在处理行人鬼探头、车辆紧急加塞等高风险场景时,能够比传统基于目标追踪的方法更快地做出反应。

系统不再需要经历“识别物体-关联历史帧-计算速度-生成预测轨迹”的长链条,而是直接观察体素占据状态的流转趋势。这种毫秒级的响应速度提升,往往就是避免一场碰撞的关键。

在模型训练中,占用网络也利用了许多前沿的技术手段来提升自身的进化速度。由于人工标注三维体素是一项几乎不可能完成的任务,行业内普遍采用“NeRF(神经辐射场)”等离线重建技术进行自动标注。

车辆在行驶过程中会通过众包的形式收集海量的视觉数据,在云端通过NeRF技术还原出极其真实的3D场景,并以此作为真值来训练车端的小模型。这种“云端重构、车端预测”的闭环,让占用网络能够从全球数百万辆车的日常行驶中不断学习,从而持续增强其泛化能力。

最后的话

占用网络不仅是感知的终点,更是实现“端到端”自动驾驶的重要基石。当感知系统输出的是一幅连续的、带有物理属性的四维占用图时,下游的规划和控制模块就可以寻找那些概率最低的空隙进行穿梭。

这种深度的集成,消除了模块间由于信息压缩导致的误差,让自动驾驶汽车的行为变得更加拟人、更加流畅。虽然目前占用网络还面临着远距离精度不足、计算功耗高等挑战,但随着车载算力的爆发和算法的迭代,这种让万物皆可被感知的技术方法,必将彻底重塑人类出行的安全标准。

相关推荐