跳转至

47. 毫米波雷达、人体跟踪与深度学习

47.1 学习目标

把不同感知算法放进同一安全框架:输入是否可信,识别结果如何转成控制,目标丢失时怎样停止。

毫米波雷达(Millimeter-Wave Radar)发射毫米波段电磁波,并根据回波估计目标的距离、方向或相对速度。深度学习(Deep Learning)模型从样本中学习图像或传感器数据的特征,运行模型得到结果的过程称为推理(Inference)。这些结果都有误差,接入运动控制前要先观察稳定性和延迟。

47.2 适用范围

毫米波跟随/停障、人体骨架跟踪和 ROS 2 深度学习识别。模型与硬件加速环境按主控选择。

47.3 操作前检查

  • 底盘速度上限和急停已验证。
  • 传感器话题频率、坐标和盲区已记录。
  • 首次运行关闭运动输出,只观察结果。

47.4 工作原理

毫米波雷达对距离和速度敏感,视觉模型可以输出类别、包围目标的矩形框或人体关节点。置信度(Confidence Score)表示模型对当前识别结果的相对把握,不能等同于结果一定正确。感知数据可能抖动或短时丢失,因此控制层要设置滤波、置信度门槛、距离阈值、超时和速度限幅,再把连续多帧结果转换成运动命令。

47.5 操作步骤

  1. 只启动传感器与识别,记录原始输入和结果话题。
  2. 静态目标、移动目标、遮挡和无目标分别测试。
  3. 检查结果坐标系及时间戳,必要时转换到 base_link。
  4. 接入控制时,从极低速度开始,设置目标丢失立即归零。
  5. 融合毫米波与 Nav2 时,确认障碍进入代价地图而非另一个节点直接争用 cmd_vel。
  6. 深度学习模型记录框架、权重、输入尺寸、主控和推理速度。

47.6 验收标准

  • 识别结果与实物方向、距离一致。
  • 无目标、遮挡、节点退出时输出速度为零。
  • 感知频率满足控制需求,延迟有记录。
  • 导航与跟随不会同时无仲裁发布速度。

47.7 故障排查

现象 检查
跟随方向反了 坐标系和横向误差符号
目标丢失仍前进 超时、缓存和最后命令清零
毫米波停障过敏 阈值、安装角度、静态杂波和滤波
推理卡顿 输入尺寸、硬件加速、模型版本和 CPU/GPU 占用

本章代码:人体骨架消息与跟随节点

使用 ros1/maintenance/bodyreader 的 package.xml、launch/bodyfollow.launch、src/bodydata_process.cpp、src/follower.cpp 和 msg/body.msg。验收:能定位人体消息与跟随节点;边界:依赖 Astra/OpenNI 运行时和相机,当前只作静态阅读。

章节导航

上一章:多机编队与 Qt 控制界面 · 返回本篇 · 下一章:语音与多模态交互