1. 课程导入与任务定义
无人飞行器(UAV)要在真实三维空间中安全飞行,必须回答两个连续的问题:“我周围有什么?”和“这些东西对我意味着什么?”前者是环境感知,后者是障碍理解。本课程围绕这两个问题展开,目标不是训练大家调参跑通某个开源仓库,而是建立一套从传感器原始数据到飞行决策可用信息的完整工程认知。
1.1 问题边界:感知与理解的分工
环境感知解决的是“几何与物理属性”的估计问题:障碍物在哪里、多大、以什么速度运动、地面是否可通行。它的输出通常是点云、占据栅格、深度图、目标检测框或语义分割掩膜。障碍理解则在此基础上引入任务语义与飞行约束:一个 0.3 m 高的纸箱对地面机器人是障碍,对巡航高度 5 m 的固定翼无人机可能完全无关;一片树冠在避障意义上需要绕行,但在应急迫降评估中却可能被视为“不可降落区域”。因此,感知回答“是什么、在哪里”,理解回答“对当前任务是否构成威胁、应如何处置”。
本课程的问题边界可概括为:在机载计算与传感器资源受限的前提下,把多源异构传感数据转化为可用于局部避障、路径重规划与安全决策的环境表示。不涉及全局任务规划、集群协同编队等上层内容,但会明确感知结果如何以接口形式交给规划与控制模块。
1.2 典型任务链
一条完整的感知—理解链路通常包含五个环节:多传感器采集与时间同步、数据预处理与标定、环境表示构建、障碍检测与语义理解、风险输出与决策接口。以一台搭载双目相机、激光雷达和 IMU 的四旋翼在树林中低速前飞为例:双目与激光雷达分别产生深度图和点云,IMU 提供姿态与运动先验;标定模块把各传感器统一到机体坐标系;融合模块构建局部占据栅格或 ESDF(欧氏符号距离场);理解模块区分树干、枝叶与地面,并估计可通行间隙;最终输出“前方 8 m 处存在宽约 1.2 m 的通道,建议右偏 15°”这类结构化风险信息。
1.3 性能指标:怎么判断“感知得够好”
评价感知系统不能只看“能不能检测到”,而要从四个维度综合判断。第一是实时性:从传感器曝光到输出风险信息的端到端延迟,通常要求不超过 100 ms,否则在 5 m/s 飞行速度下,100 ms 意味着 0.5 m 的位置滞后,足以让避障失效。第二是精度与召回:障碍物定位误差建议控制在 0.2 m 以内,漏检率低于 1%,虚警率则需结合任务容忍度权衡——避障场景宁可虚警也不可漏检。第三是鲁棒性:强光、弱纹理、雨雾、动态行人等条件下指标不能断崖式下降。第四是资源约束:机载平台功耗常限制在 10~30 W,算力在 10~100 TOPS 量级,重量和体积同样敏感。
需要特别强调的是,这些指标之间存在耦合。提高分辨率能改善精度,但会增加延迟和算力;降低检测阈值能减少漏检,却会引入更多虚警并加重规划负担。课程后续章节会反复回到这种权衡关系上。
1.4 课程项目说明
本课程设置一个贯穿式项目:为一台搭载双目相机与 16 线激光雷达的四旋翼,构建局部环境感知与障碍理解模块,并在仿真与嵌入式平台上完成验证。项目分三个阶段推进。
阶段一:仿真环境搭建与数据生成。在 Gazebo 或 AirSim 中搭建包含树木、建筑、动态行人的场景,配置传感器插件,采集同步的双目图像、点云与 IMU 数据。示例参数可设为:双目基线 0.12 m、分辨率 640×480、帧率 20 Hz;激光雷达水平视场 360°、垂直视场 ±15°、测距范围 0.5~50 m。
阶段二:算法实现与数据集回放。完成传感器标定、点云与深度图融合、局部占据栅格构建、障碍聚类与语义分类。使用 KITTI、nuScenes 或自采数据集回放,统计检测精度、延迟与资源占用。示例验收标准:在 20 Hz 输入下,单帧处理时间不超过 40 ms,障碍物检测召回率不低于 95%。
阶段三:机载部署与飞行验证。将算法移植到 Jetson Orin Nano 或类似嵌入式平台,通过 ROS 2 节点发布风险信息,在仿真中完成避障飞行,并记录飞行轨迹与最小安全距离。示例验收标准:在 3 m/s 前飞速度下,与障碍物最小距离不小于 1.5 m,无碰撞完成 50 m 林间通道穿越。