3. 动态障碍物类型梳理:运动物体分类、速度范围、尺寸与形状
3.1 用户场景
城区低速无人配送车、园区巡检机器人、室内服务机器人在实际运行中,最常见的交互对象是运动中的行人、自行车/电动滑板车、宠物、儿童玩具车、其他机器人以及偶尔进入的机动车辆。运营团队反馈,感知算法在处理这些对象时出现误检、漏检、速度估计失准,导致频繁急停或绕行失败。典型场景包括:
- 人行道上行人突然横穿(0.5~1.5 m/s)
- 非机动车道上电动自行车从后方快速接近(3~8 m/s)
- 居民区儿童追逐皮球(速度跳跃、尺寸非刚性)
- 仓库内其他AGV相向而行(速度稳定但尺寸轮廓近似)
3.2 业务问题
现有原型使用的障碍物类型表仅包含“人、车、动物”三个粗糙标签,缺失速度区间、尺寸边界和形状可变性等关键属性。这导致:
- 预测模型无法适配不同运动模式——行人可突然转向,车辆轨迹平滑,动物随机性强。
- 尺寸模型不统一——将行人框设为 0.6m×1.8m 在地面投影上偏小,导致垂直传感器俯仰角计算不准。
- 速度范围缺省——规划器默认所有障碍物最高速度 2 m/s,遇到电动车时反应时间不足。
3.3 用户访谈
项目组对三地运营团队(上海、深圳、西安)共 9 名一线工程师进行了结构化访谈,提炼关键发现:
| 角色 | 典型诉求 | 关键描述 |
|---|---|---|
| 感知算法工程师 | 需要明确各类障碍物的最小/最大外接长方体尺寸 | “现在框架里行人写死 1.8m 高,但弯腰捡东西时高度只有 0.9m” |
| 预测算法工程师 | 需要速度离散化区间用于训练多模态轨迹 | “自行车/电动车速度跨度太大,应该拆成两类” |
| 系统集成测试员 | 希望有覆盖度检查清单,防止漏测特殊形状 | “拖挂式行李箱、带婴儿车的行人经常被当成静止物体” |
3.4 需求拆解
根据用户场景和访谈结论,将动态障碍物类型按三个正交维度拆解:
- 运动物体分类:行人(含儿童、轮椅使用者)、自行车/电动自行车、摩托车、轿车/SUV、动物(狗、猫、鸟类)、其他AGV/机器人、异形(手推车、移动垃圾桶)。
- 速度范围:低速(0~1 m/s)、中速(1~3 m/s)、高速(3~8 m/s)、超高速(>8 m/s,仅当车辆进入封闭园区时出现)。
- 尺寸与形状:按最小包围盒(1‑sigma)及主要形状特征(刚体/非刚体、凸包/凹包、水平截面形状)。
拆解输出: 每个类型必须同时标注三个维度的属性,才能被下游预测和规划模块使用。例如“行人(低速,非刚体,近似圆柱+肢体摆动)”。
3.5 方案表达
以下表格展示完整类型矩阵的前 6 类(产品级文档应包含全部 12 类):
| 类型 ID | 运动物体分类 | 速度范围(m/s) | 典型尺寸 L×W×H(m) | 形状特征 |
|---|---|---|---|---|
| DYN-001 | 行人(直立) | 0.3~1.8 | 0.5×0.5×1.8 | 圆柱体 + 周期性肢体外伸 |
| DYN-002 | 行人(弯腰/儿童) | 0.2~1.2 | 0.4×0.4×1.0 | 椭球体,高度可变 |
| DYN-003 | 自行车/电动自行车 | 2.0~6.5 | 1.8×0.6×1.2 | 刚性主体 + 非刚性轮胎凸出 |
| DYN-004 | 摩托车 | 3.0~8.0 | 2.0×0.7×1.3 | 刚性主体,排气凸出 |
| DYN-005 | 轿车/SUV | 1.5~15.0 | 4.5×1.8×1.5 | 凸包长方体,后视镜凸出 |
| DYN-006 | 动物(狗) | 0.5~3.0 | 0.6×0.3×0.4 | 非刚体,奔跑时身体拉长 |
方案表达同时包含一个 YAML 配置片段,用于存储分类参数供感知感知模块加载:
# dynamic_obstacle_types.yaml
categories:
- id: DYN-001
name: pedestrian_upright
speed_range:
min: 0.3
max: 1.8
bounding_box_dims:
length: 0.5
width: 0.5
height: 1.8
shape: cylinder_with_limb
is_rigid: false
- id: DYN-003
name: bicycle_ebike
speed_range:
min: 2.0
max: 6.5
bounding_box_dims:
length: 1.8
width: 0.6
height: 1.2
shape: rigid_body_tire_protrusion
is_rigid: true
3.6 指标验证
在原型开发阶段,需验证该分类体系的有效性:
- 类型覆盖度 ≥ 95%:通过标注 2000 帧路测数据,逐帧统计是否存在未覆盖的类型。
- 速度区间准确度 平均绝对误差 ≤ 0.3 m/s:对每类障碍物采样 100 个速度值,与高精度基准(RTK+IMU)对比。
- 尺寸偏差容忍度 L/W/H 偏差 ≤ 10%:使用手动标注框作为真值。
验证工具链: 使用自驾开源工具 nuScenes devkit 或内部标注平台,批量计算分类混淆矩阵与尺寸误差热图。
3.7 验收标准
- 分类清单覆盖所有已知主流动态障碍物类型(≥ 12 类),每类包含明确的速度区间、尺寸范围和形状描述。
- 配置文件中每个类型 ID 与工程代码中的枚举一一对应,且通过静态检查。
- 在仿真环境中随机生成 500 个障碍物(按类型分布),感知模块的输出属性与真实属性偏差满足:速度 < 0.3 m/s、尺寸 < 10% 相对误差、形状标签正确率 > 90%。
3.8 交付物模板
| 交付物名称 | 格式 | 说明 |
|---|---|---|
| 动态障碍物类型矩阵 | 电子表格(.xlsx) | 12+ 行,每行包含分类、速度、尺寸、形状特征及来源说明 |
| 类型配置文件 | YAML | 供感知/预测模块加载,含枚举值、速度上下限、尺寸边界 |
| 验证报告模板 | .md / .pdf | 包含预定义指标(覆盖度、精度)、抽样方法、阈值判定表 |
| 验收测试用例 | 仿真场景 JSON | 为每类障碍物预设至少 5 个不同运动轨迹的场景 |
交付物模板应被集成到产品需求文档(PRD)附录中,后续章节会引用这里的类型 ID 定义预测模块的约束规则。