1. 课程导入
各位搞定位的同行,大家好。我是你们这门课的老朋友,一个在组合导航和融合定位里摸爬滚打了十几年的工程师。今天咱们开篇聊聊多源融合定位——说白了,就是怎么把GPS、惯导、视觉、激光雷达这些传感器的数据揉在一起,得到一个更靠谱的位置估计。
你可能会问:一个传感器不够用吗?嗯,我早年做车载定位的时候也这么想,直到有一次在隧道里GPS信号全丢,车差点偏到对向车道……从那以后我就明白,单一传感器总有掉链子的时候。多源融合不是炫技,是刚需。
1.1 多源融合定位概述
多源融合定位,本质上是一个“取长补短”的过程。GNSS提供绝对位置,但容易受遮挡和多路径影响;惯性导航短时精度高,但误差随时间累积;视觉和激光雷达能感知环境,但计算量大且依赖特征。把它们组合起来,就能在大多数场景下保持稳定输出。
我个人习惯把融合架构分成三类:松耦合、紧耦合和深耦合。松耦合最简单,各传感器独立解算,最后加权平均;紧耦合在观测域融合,比如用伪距和惯导预积分一起优化;深耦合则深入到信号层面,一般消费级产品用不到。你想想看,大部分工业级应用其实紧耦合就够用了。
1.2 误差来源分类
搞融合定位,第一关就是认识误差。我把误差分成三大类,这样好记:
- 传感器固有误差:比如陀螺的零偏、加速度计的刻度因子、相机的畸变。这些误差通常可以通过标定补偿一部分,但残差依然存在。
- 环境相关误差:多路径效应、大气延迟、光照变化、动态遮挡。这类误差最头疼,因为它是时变的,而且很难建模。
- 融合算法误差:模型线性化误差、时间不同步、数据丢帧、滤波器假设不成立。嗯,这里要注意,很多时候算法本身也会引入偏差。
我记得有一次做无人机定位,视觉里程计因为快速旋转产生了运动模糊,特征匹配全错了。当时我排查了半天,最后发现是曝光时间设置不合理——这属于环境与传感器耦合的误差,光靠算法很难扛住。
| 误差类别 | 典型来源 | 特性 |
|---|---|---|
| 传感器固有 | 零偏、噪声、刻度因子 | 慢变或常值,可标定 |
| 环境相关 | 多路径、大气、遮挡 | 时变、空间相关 |
| 算法相关 | 线性化、同步、丢帧 | 与系统设计强相关 |
1.3 鲁棒优化的必要性
为什么常规的卡尔曼滤波不够?因为真实世界充满了“非高斯”的异常。比如GNSS突然跳变几米,或者激光雷达被灰尘遮挡产生离群点。标准的最小二乘或卡尔曼滤波对这类异常非常敏感——一个坏点就能把整个状态估计拉偏。
鲁棒优化,说白了就是让算法学会“怀疑”观测。我常用的手段包括:马氏距离检验、Huber损失函数、自适应协方差调节。举个例子,在自动驾驶项目中,我们曾用抗差卡尔曼滤波,把GNSS多路径导致的定位跳变从2.3米降到了0.4米。效果立竿见影。
你可能会问:鲁棒优化和自适应滤波有什么区别?我的理解是:自适应滤波侧重在线调整模型参数(比如噪声协方差),而鲁棒优化侧重抑制异常观测的影响。两者经常结合使用,但出发点不同。
上面这张图把本章的核心逻辑串起来了。从多传感器输入,到误差分类,再到鲁棒优化模块,最后输出可靠的位置。你会发现,误差建模是基础,鲁棒优化是保障,两者缺一不可。
好了,绪论就聊到这儿。这一章我们搭好了框架,后面每一章都会深入具体的误差模型和鲁棒方法。你准备好了吗?