3. 动态障碍物类型梳理:运动物体分类、速度范围、尺寸与形状

3.1 用户场景

城区低速无人配送车、园区巡检机器人、室内服务机器人在实际运行中,最常见的交互对象是运动中的行人、自行车/电动滑板车、宠物、儿童玩具车、其他机器人以及偶尔进入的机动车辆。运营团队反馈,感知算法在处理这些对象时出现误检、漏检、速度估计失准,导致频繁急停或绕行失败。典型场景包括:

  • 人行道上行人突然横穿(0.5~1.5 m/s)
  • 非机动车道上电动自行车从后方快速接近(3~8 m/s)
  • 居民区儿童追逐皮球(速度跳跃、尺寸非刚性)
  • 仓库内其他AGV相向而行(速度稳定但尺寸轮廓近似)

3.2 业务问题

现有原型使用的障碍物类型表仅包含“人、车、动物”三个粗糙标签,缺失速度区间、尺寸边界和形状可变性等关键属性。这导致:

  1. 预测模型无法适配不同运动模式——行人可突然转向,车辆轨迹平滑,动物随机性强。
  2. 尺寸模型不统一——将行人框设为 0.6m×1.8m 在地面投影上偏小,导致垂直传感器俯仰角计算不准。
  3. 速度范围缺省——规划器默认所有障碍物最高速度 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.80.5×0.5×1.8圆柱体 + 周期性肢体外伸
DYN-002行人(弯腰/儿童)0.2~1.20.4×0.4×1.0椭球体,高度可变
DYN-003自行车/电动自行车2.0~6.51.8×0.6×1.2刚性主体 + 非刚性轮胎凸出
DYN-004摩托车3.0~8.02.0×0.7×1.3刚性主体,排气凸出
DYN-005轿车/SUV1.5~15.04.5×1.8×1.5凸包长方体,后视镜凸出
DYN-006动物(狗)0.5~3.00.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 验收标准

  1. 分类清单覆盖所有已知主流动态障碍物类型(≥ 12 类),每类包含明确的速度区间、尺寸范围和形状描述。
  2. 配置文件中每个类型 ID 与工程代码中的枚举一一对应,且通过静态检查。
  3. 在仿真环境中随机生成 500 个障碍物(按类型分布),感知模块的输出属性与真实属性偏差满足:速度 < 0.3 m/s、尺寸 < 10% 相对误差、形状标签正确率 > 90%。

3.8 交付物模板

交付物名称格式说明
动态障碍物类型矩阵电子表格(.xlsx)12+ 行,每行包含分类、速度、尺寸、形状特征及来源说明
类型配置文件YAML供感知/预测模块加载,含枚举值、速度上下限、尺寸边界
验证报告模板.md / .pdf包含预定义指标(覆盖度、精度)、抽样方法、阈值判定表
验收测试用例仿真场景 JSON为每类障碍物预设至少 5 个不同运动轨迹的场景

交付物模板应被集成到产品需求文档(PRD)附录中,后续章节会引用这里的类型 ID 定义预测模块的约束规则。

动态障碍物类型分类结构图 动态障碍物类型 行人相关 自行车/电瓶车 机动车 动物 其他机器人 速度: 0.2~1.8 m/s 尺寸: 0.4~0.6 × 0.4×1.8 速度: 2.0~6.5 m/s 尺寸: 1.8×0.6×1.2 速度: 1.5~15.0 m/s 尺寸: 4.5×1.8×1.5 速度: 0.5~3.0 m/s 尺寸: 0.6×0.3×0.4 速度: 0.5~2.0 m/s 尺寸: 0.8×0.6×1.0 每个一级分类下挂载速度范围、典型尺寸、形状特征 形状特征:刚体/非刚体、凸包/圆柱/椭球、有无外伸部件