3. 环境感知与地图构建:传感器概述与地图表示

各位同学,大家好。今天我们来聊聊无人机任务规划里最基础、也最绕不开的一环——环境感知与地图构建。

说白了,无人机要飞得聪明,首先得知道自己在哪,周围有什么。我刚开始做无人机那会儿,总觉得算法是核心,传感器随便买买就行。结果有一次试飞,GPS信号被高楼挡了,飞机直接懵了,差点撞树。嗯,从那以后,我再也不敢小看传感器选型了。

3.1 传感器概述

无人机感知环境,靠的就是这几样东西:GPS、IMU、激光雷达、视觉传感器。它们各有各的脾气,也各有各的用处。

3.1.1 GPS(全球定位系统)

GPS 是无人机的“天眼”。它告诉你飞机在经纬度上的绝对位置。精度嘛,民用级大概在 2-5 米。够用吗?说实话,在开阔地带飞飞航线还行,但你要是想贴着树梢飞,或者进隧道,GPS 就靠不住了。

注意:GPS 信号容易受遮挡。高楼、峡谷、密林都会导致信号丢失或漂移。我建议你永远不要把 GPS 当作唯一的定位源。

3.1.2 IMU(惯性测量单元)

IMU 是无人机的“内耳”。它测量加速度和角速度,用来推算飞机的姿态和短时位移。IMU 的优点是快,每秒能更新几百次。缺点是会漂移——时间一长,误差就累积起来了。

我记得有一次做室内定位实验,只用 IMU 积分位置,飞了 30 秒,位置误差就超过了 10 米。所以 IMU 必须配合其他传感器做融合,才能用。

3.1.3 激光雷达(LiDAR)

激光雷达是“触手”。它发射激光束,测量反射回来的时间,从而得到周围物体的精确距离。精度可以到厘米级。我习惯用 16 线或 32 线的激光雷达做室外环境建模,效果很稳。

但激光雷达也有缺点:贵、重、怕雨雾。你想想看,大雾天激光打出去就散射了,啥也测不到。

3.1.4 视觉传感器(相机)

视觉传感器是“眼睛”。它获取的图像信息最丰富,能识别颜色、纹理、甚至物体类别。成本低,重量轻,是消费级无人机的标配。

不过视觉的短板也很明显:光照影响大,晚上就瞎了;而且计算量大,需要好的处理器。

传感器 优点 缺点 典型用途
GPS 绝对位置,全天候 精度低,易遮挡 室外导航
IMU 高频,短时精度高 长期漂移 姿态估计,短时定位
激光雷达 高精度,不受光照影响 贵,怕雨雾 建图,避障
视觉 信息丰富,成本低 受光照影响大,计算量大 目标识别,SLAM

3.2 地图表示方法

传感器采集了数据,怎么存成地图?这里有好几种思路。我按自己的理解,把它们分成四类。

3.2.1 栅格地图与八叉树地图

栅格地图是最直观的。把空间切成一个个小格子,每个格子标记为“占用”或“空闲”。简单吧?但问题来了:如果空间很大,格子数量会爆炸。比如一个 1000x1000 米的区域,1 米分辨率,就要 100 万个格子。

八叉树地图就是来解决这个问题的。它用树形结构,只在有障碍物的地方细分格子,空旷的地方用大格子表示。这样内存占用能减少 80% 以上。

我在项目中做过一个实验:同样一片树林,栅格地图用了 500MB,八叉树地图只用了 80MB。效果还更好。

核心要点:八叉树地图是三维空间建模的标配。它兼顾了精度和效率。我建议你优先掌握。

3.2.2 概率地图与拓扑地图

概率地图不是直接说“这里有没有障碍”,而是说“这里有障碍的概率是多少”。比如一个格子,传感器扫到 10 次,8 次显示有障碍,那它的占用概率就是 0.8。这样做的好处是能处理传感器噪声。

拓扑地图则更抽象。它只记录关键节点和它们之间的连接关系,比如“从 A 点走到 B 点,中间经过 C 点”。这种地图适合做路径规划,因为计算量小。但缺点是不够精细,没法做避障。

你想想看,如果你只想让无人机从仓库飞到门口,拓扑地图就够了。但如果你要它在货架间穿梭,那必须用栅格或八叉树地图。

3.3 SLAM 技术简介

SLAM,全称是 Simultaneous Localization and Mapping,中文叫“同步定位与地图构建”。

这名字听着挺唬人,其实核心问题就一个:无人机在一个未知环境里,一边飞,一边要回答两个问题——“我在哪?”和“周围长啥样?”而且这两个问题是互相依赖的:要知道自己在哪,得先有地图;要建地图,又得先知道自己在哪。

是不是有点鸡生蛋蛋生鸡的感觉?

SLAM 就是解决这个循环依赖的。它用滤波或优化方法,同时估计无人机位姿和地图。我最早接触的是 EKF-SLAM(扩展卡尔曼滤波),后来主流变成了图优化 SLAM,比如 ORB-SLAM 和 Cartographer。

我曾经在一个地下车库做测试,GPS 完全没信号,全靠视觉 SLAM 跑了 500 米,最后定位误差不到 1 米。说实话,当时挺震撼的。

个人经验:SLAM 的难点不在算法本身,而在工程落地。传感器标定、时间同步、计算资源分配,这些才是真正坑人的地方。我建议你从开源框架(比如 ORB-SLAM3)入手,先跑通再改。

3.4 本章知识体系图

下面这张图,是我自己画的。它把本章的核心内容串在了一起。你可以把它当作一张“地图”,帮你理清思路。

环境感知与地图构建 传感器概述 GPS IMU 激光雷达 视觉 地图表示方法 栅格地图 八叉树地图 概率地图 拓扑地图 SLAM 技术简介 传感器 地图 SLAM

这张图把本章的三个核心模块串起来了:传感器是输入,地图是输出,SLAM 则是把两者结合起来的核心技术。你顺着这个逻辑去理解,就不会觉得乱。


公众号:蓝海资料掘金营,微信deep3321