占用网络如何提升自动驾驶对异形障碍物的识别能力
在自动驾驶感知技术的发展过程中,过去很长一段时间内,主流方案依赖于3D目标检测方法。该方法的基本思路是在三维空间中识别特定物体,并用长方体进行包围。这种方法在识别车辆、行人和自行车等常见目标时表现良好,能够准确测量目标的尺寸和位置。
然而,现实交通环境远比实验室数据集复杂。当道路上出现形状不规则的障碍物,如侧翻的油罐车、散落的纸箱或吊臂伸出的起重机时,传统方法就显得力不从心。这是因为这些物体难以用标准的长方体来描述。
为应对这一问题,占用网络(Occupancy Network)应运而生。该方法摒弃了物体识别的思路,转而将空间划分为无数个边长为十几厘米的小立方体,称为“体素(Voxels)”。占用网络的核心在于判断每一个体素是否被物理实体占据,从而实现对任何形状障碍物的识别。
传统视觉感知的局限性
在深入了解占用网络之前,有必要回顾传统感知方法在识别异形物体时的不足。早期的自动驾驶系统依赖于目标分类,即系统需要先识别物体类别,再判断其位置。这种方式在面对“本体裂纹”或“语义裂缝”时极易出错。
例如,如果算法仅训练过标准货车,那么当它遇到一辆拖挂车时,可能会忽略拖挂部分的延伸部分,导致系统误判空间状态。这种空间理解上的缺陷,可能使自动驾驶车辆在变道时发生碰撞。
此外,传统3D目标检测方法还面临形状刚性的问题。该方法使用固定长宽高的长方体来拟合物体,但在实际应用中,很多障碍物是可变形或中空的。例如,正在喷洒水雾的洒水车或吊臂悬空的工程车,其物理占据状态难以用传统方法描述。
视觉感知还存在深度信息缺失的问题。尽管可以通过算法将二维图像转换为三维坐标,但在远距离场景下,深度误差会迅速放大。激光雷达虽然能提供精准的距离信息,但其高昂成本限制了其在大规模应用中的可行性。
在这种背景下,如何通过低成本的摄像头实现类似激光雷达的空间建模能力,成为行业关注的重点。占用网络正是通过将感知维度从二维提升至三维,为纯视觉方案提供了新的可能性。
占用网络的场景理解机制
占用网络的核心理念是将周围物理空间进行数字化建模。它不再试图理解物体的具体语义,而是关注“这个空间点上是否存在障碍”。通过环视摄像头捕获的360度图像,系统可以利用特征映射技术,将二维像素转换为三维向量空间。
在这一过程中,Transformer架构发挥了重要作用。它通过注意力机制,对多个视角下的图像信息进行整合,从而在系统内部构建出一个密集的三维体素网格。相比传统点云技术,占用网络生成的网格不仅包含物体表面信息,还保留了空间占据状态。
以特斯拉为例,其占用网络能够在约10毫秒内完成一次全局空间预测。系统将世界划分为极小的立方体,并为每个体素赋予占据概率。当概率超过设定阈值时,规划器会将其视为障碍物。
为了优化计算资源,占用网络引入了“按需分配”策略。靠近车辆行驶区域的体素划分更为精细,以识别路障等细节;而在远离车辆的区域,则采用较粗的划分方式。
此外,现代占用网络还融合了时序特征,不仅基于当前画面进行判断,还结合过去几十至几百毫秒的图像特征。这种时序融合机制能有效过滤噪点,并帮助系统理解物体的运动方式。
通过这种时空建模,车辆不仅能获得立体空间的感知,还能具备某种“物理常识”。例如,系统可以通过体素移动趋势判断前方障碍是静态还是动态。
如何应对“看不见的风险”
占用网络最突出的优势在于其对异形障碍物的鲁棒性。在传统感知框架下,这些物体往往难以被识别。而占用网络专注于几何重构,对物体的形状、颜色或类别不敏感,它只需要判断某个空间是否被占据。
这类似于在黑暗中用手感知障碍物:传统方法要求系统识别出是椅子还是桌子,而占用网络只需判断前方有无阻挡。
占用网络对“悬空障碍物”也具备天然优势。传统BEV(鸟瞰图)技术容易在升维过程中丢失高度信息,而占用网络通过Z轴的多层体素划分,可清晰区分路面隔离带与空中限高杆。
此外,占用网络还能有效处理遮挡问题。当大货车遮挡后方视野时,传统点云方法难以判断后方是否存在障碍物。而占用网络则能基于学习到的几何先验,预测被遮挡区域的占据状态,从而提升避障安全性。
占用流:从空间到动态预测
如果说占用网络解决了空间识别问题,那么“占用流(Occupancy Flow)”则赋予了系统对动态世界的预测能力。占用流不仅能识别哪些空间被占据,还能描述每个体素的运动矢量。
通过分析这些矢量,系统可以预判周围物体的运动方向和速度。这种基于局部连贯性的建模方式,使系统在处理行人突然穿出或车辆加塞等高风险场景时,能比传统方法更快做出反应。
在模型训练方面,占用网络采用NeRF等离线重建技术进行自动标注。车辆在实际行驶中收集的视觉数据被上传至云端,通过NeRF技术还原为3D场景,并作为真值用于训练车端模型。
这种“云端重构—车端预测”的闭环机制,使占用网络能够从全球数百万车辆的行驶数据中持续学习,从而不断提升其泛化能力。