3. 环境感知与状态表示
行为决策与轨迹生成系统并非在真空中运行,其输入质量直接决定了输出轨迹的安全性、舒适性与可行性。在自动驾驶或机器人系统中,环境感知模块负责回答“周围有什么”,而决策规划模块需要回答“我该怎么办”。两者之间的桥梁,正是本章要探讨的“状态表示”问题——即如何将原始传感器数据(点云、图像、毫米波雷达回波)经过障碍物检测、地图构建、目标预测等处理,转化为决策与规划模块能够高效消费的结构化输入。本章将系统梳理障碍物检测的输出形式、栅格地图与高精地图的差异与适用场景、预测模块的关键输出,并重点讲解感知信息向决策规划输入转化的接口设计与数据协议。
3.1 障碍物检测:从原始点云到结构化目标列表
3.1.1 核心原理:检测与跟踪的融合
障碍物检测的目标是将传感器原始数据转化为“目标列表”,每个目标包含空间位置、几何尺寸、运动状态和语义类别。在LiDAR为主的方案中,典型流程为:点云预处理(去噪、地面分割)→ 聚类或深度学习方法提取候选目标 → 3D边界框回归 → 多目标跟踪(如卡尔曼滤波或匈牙利匹配)→ 输出稳定的目标ID与运动状态。在视觉为主的方案中,则通过2D检测 + 深度估计 + 多视角融合实现类似输出。关键点在于:检测是逐帧的,而跟踪赋予目标时间一致性,这是决策模块判断“目标是否危险”的基础。
3.1.2 输出字段与质量标准
| 字段 | 单位 | 典型值/范围 | 决策规划用途 |
|---|---|---|---|
| 目标ID | - | 整数,唯一且稳定 | 跨帧关联、预测跟踪 |
| 类别 | - | 车辆/行人/骑行者/未知 | 行为预测模型选择、风险权重 |
| 位置 (x,y) | m | 车体坐标系下 ±100m | 碰撞检测、路径规划约束 |
| 尺寸 (l,w,h) | m | 车辆: 4.5×1.8×1.5 | 膨胀半径计算、可通行空间判断 |
| 速度 (vx,vy) | m/s | [-30, 30] | 动态障碍物预测、紧急制动判断 |
| 朝向角 θ | rad | [-π, π] | 运动模型初始化、轨迹预测 |
| 置信度 | - | [0,1],阈值通常0.5 | 决策置信度加权、降级策略 |
3.1.3 案例拆解:城市路口行人横穿场景
某城市L4级自动驾驶测试车行驶至无保护左转路口,感知模块在t=0时刻检测到右侧路沿旁一个行人目标(ID=17),类别为“行人”,位置(12.3m, -4.5m),速度(0.2m/s, 0.1m/s),置信度0.92。跟踪模块在连续5帧中保持ID稳定,且速度估计收敛。此时决策模块判断该行人处于静止状态,但预测模块根据行人朝向(面向车道)和历史运动趋势,输出两条预测轨迹:轨迹A(概率0.6)为继续静止等待,轨迹B(概率0.4)为未来2秒内启动横穿。决策模块据此将行人状态标记为“潜在横穿者”,在规划中增加虚拟障碍物膨胀区域,并将速度限制从15m/s降至8m/s。若感知模块仅输出单帧检测而无跟踪ID,决策模块将无法判断该行人是静止还是缓慢移动,可能误判风险等级。
3.2 栅格地图与高精地图:两种空间表示的分工与融合
3.2.1 栅格地图:动态占据的实时表达
栅格地图将车辆周围环境离散化为均匀网格,每个格子存储占据概率。其优势在于:无需语义理解即可表达任意形状的障碍物,对未知物体鲁棒;计算简单,适合实时更新。典型参数:分辨率0.2m,视野80m×40m,更新频率10Hz。栅格地图通常由多帧点云投影到BEV视角并做概率累积生成,同时进行膨胀处理(根据车辆尺寸将障碍物边界外扩)。决策规划中,栅格地图主要用于:局部路径规划的代价地图、无车道线区域的自由空间搜索、以及紧急避障的可行区域判断。
3.2.2 高精地图:先验语义的静态层
高精地图提供厘米级精度的车道几何、拓扑关系、交通标志等静态信息。与栅格地图不同,高精地图不随传感器实时更新,而是作为先验知识在启动时加载,并在运行中通过定位模块进行匹配。其核心价值在于:将规划问题从“自由空间搜索”简化为“车道约束下的轨迹优化”。例如,高精地图明确给出车道中心线、停止线位置、限速值,决策模块可以直接基于这些语义元素进行行为选择(如是否允许变道、是否需停车让行)。
3.2.3 对比与融合策略
| 维度 | 栅格地图 | 高精地图 |
|---|---|---|
| 数据来源 | 实时传感器融合 | 离线采集+人工标注 |
| 更新频率 | 10~20Hz | 低频(地图更新/OTA) |
| 语义信息 | 无(仅占据概率) | 丰富(车道/标志/拓扑) |
| 不确定性 | 显式概率表达 | 假设高置信度 |
| 规划用途 | 局部避障、自由空间 | 全局引导、行为决策 |
| 失效模式 | 动态物体拖尾、遮挡 | 地图过期、定位漂移 |
实际系统中,两者互补:高精地图提供“应该走哪条车道”,栅格地图提供“当前哪里被占据”。融合策略通常为:以高精地图为骨架,将栅格地图中的动态障碍物叠加到车道坐标系中,形成“带语义的局部占用图”。例如,在变道决策中,高精地图判断目标车道存在且合法,栅格地图进一步确认该车道内无动态障碍物,两者同时满足才允许变道。
3.3 预测模块输出:从当前状态到未来可能性
3.3.1 预测输出的核心内容
预测模块的任务是估计其他交通参与者的未来状态分布。输出通常包含:多模态轨迹集合(每条轨迹为时间序列的位置点)、每条轨迹的概率、以及轨迹的不确定性(协方差)。例如,对一辆接近路口的车辆,预测模块可能输出:轨迹1(概率0.5)直行通过,轨迹2(概率0.3)减速停车,轨迹3(概率0.2)左转。这些轨迹的时间范围通常为3~8秒,时间步长0.1~0.2秒。决策模块利用这些信息进行风险评估——如果所有预测轨迹均与自车规划轨迹无冲突,则安全;若存在高概率冲突,则需减速或改变策略。
3.3.2 预测与决策的交互模式
预测并非单向输出,而是与决策形成闭环。当决策模块选择“加速通过路口”时,预测模块应相应调整对其他车辆的预测假设(例如假设对方会减速让行)。这种交互式预测在复杂交互场景(如无保护左转、匝道汇入)中至关重要。实际系统中,常采用“假设-验证”循环:决策模块提出候选行为,预测模块基于该行为重新评估风险,若风险可接受则执行,否则调整行为。
3.3.3 案例拆解:高速匝道汇入场景
自车以20m/s行驶在加速车道上,准备汇入主路。感知模块检测到主路后方来车A(速度25m/s,距离自车后方30m)和前方车辆B(速度18m/s,距离自车前方40m)。预测模块对车辆A输出两条轨迹:轨迹A1(概率0.7)保持当前速度继续直行,轨迹A2(概率0.3)减速让行。对车辆B输出轨迹B1(概率0.9)保持匀速,轨迹B2(概率0.1)减速。决策模块计算:若自车以25m/s加速汇入,与轨迹A1在3.2秒后存在潜在冲突点,冲突概率0.7×0.9=0.63,超过安全阈值0.3。因此决策模块选择“减速等待”策略,将自车速度降至15m/s,等待车辆A通过后再汇入。此时预测模块更新车辆A的预测——由于自车减速,车辆A更可能保持速度(概率升至0.85),冲突概率降至0.1以下,决策模块确认安全后执行汇入。
3.4 感知信息转化为决策与规划输入:接口设计与数据协议
3.4.1 坐标系与时间同步
所有感知输出必须统一到同一坐标系和时间基准。通常采用车体坐标系(原点在后轴中心,x向前,y向左)作为感知输出的基准,再由规划模块转换到全局坐标系(如UTM)。时间同步方面,每个感知帧必须携带精确时间戳,且与规划模块的主时钟对齐(误差<5ms)。若时间不同步,高速场景下1ms误差可导致0.02m的位置偏差,在紧急制动场景中可能造成误判。
3.4.2 数据帧结构与传输
// 感知输出数据帧示例(简化protobuf定义)
message PerceptionFrame {
uint64 timestamp_ms = 1; // 主时钟时间戳
uint32 frame_id = 2; // 帧序号
repeated Obstacle obstacles = 3; // 障碍物列表
OccupancyGrid grid = 4; // 栅格地图
MapReference hd_map_ref = 5; // 高精地图引用
}
message Obstacle {
uint32 id = 1;
enum Type { UNKNOWN=0; CAR=1; PEDESTRIAN=2; CYCLIST=3; }
Type type = 2;
float x = 3; float y = 4; float z = 5;
float length = 6; float width = 7; float height = 8;
float theta = 9;
float vx = 10; float vy = 11;
float confidence = 12;
repeated PredictedTrajectory trajectories = 13;
}
传输层通常采用共享内存(同机部署)或DDS/ROS2(分布式部署),要求端到端延迟(传感器采集→感知处理→决策规划)小于100ms。在功能安全要求下,还需设计降级通道:当感知数据质量下降(如置信度普遍低于阈值)时,决策模块应切换至保守模式(如减速至安全停车)。
3.4.3 常见误区与工程复盘
- 误区一:将栅格地图直接作为规划输入而不做语义过滤。栅格地图中的“动态噪点”(如树叶、飞鸟)会导致规划轨迹频繁抖动。应在栅格地图生成时结合语义信息进行滤波。
- 误区二:忽略预测的不确定性。仅使用单一最可能轨迹进行决策,在预测概率分布较分散时(如行人犹豫是否横穿),会低估风险。应使用概率加权或保守策略。
- 误区三:高精地图与实时感知冲突时盲目信任高精地图。例如地图显示车道畅通,但感知发现前方有施工锥桶,此时应以实时感知为准,并触发地图更新请求。
综上所述,环境感知与状态表示是行为决策与轨迹生成系统的“眼睛”和“记忆”。障碍物检测提供动态目标的结构化描述,栅格地图提供实时占据空间,高精地图提供先验语义约束,预测模块则打开未来可能性的窗口。四者通过统一的时间戳、坐标系和数据结构,共同构成决策规划模块的完整输入。工程实践中,必须重视接口的鲁棒性设计——包括降级策略、延迟补偿和不确定性传递,才能确保系统在复杂真实环境中安全可靠运行。