3. 在线定位基础

在线定位是高精地图更新与自动驾驶闭环中的“时空基准”。没有稳定、连续、可对齐的位姿输出,地图更新就不知道“变化发生在哪里”,车辆也无法把感知结果与先验地图匹配。本节从系统分类入手,梳理 GNSS、INS、视觉、激光雷达四类定位手段的原理与互补关系,并落到坐标系与时间同步这两个工程中最容易被忽视、却最常导致定位漂移和融合失败的基础问题。

一、定位系统分类:绝对、相对与组合

按参考基准划分,定位系统可分为绝对定位与相对定位。绝对定位直接给出全局坐标,如 GNSS 输出经纬高;相对定位描述的是相对于上一时刻或局部起点的运动增量,如轮速计、IMU 积分、视觉里程计、激光里程计。绝对定位无累积误差但易受遮挡和多路径影响,相对定位短时平滑连续但误差随时间累积。工程上几乎不会单独使用一种,而是采用组合定位:以 GNSS 提供全局约束,以 INS 提供高频姿态与短时递推,以视觉和激光雷达提供环境特征约束,通过滤波器或因子图融合输出连续位姿。

按传感器模态划分,又可分为卫星定位、惯性定位、视觉定位和激光雷达定位。四者的观测频率、精度特性、环境依赖和失效条件差异明显,理解这些差异是设计融合策略的前提。

四类定位原理与融合输出 GNSS 卫星定位 伪距/载波相位测距 至少4颗卫星解算 RTK/PPP 可达厘米级 遮挡/多路径易失效 INS 惯性定位 陀螺仪测角速度 加速度计测比力 积分递推位姿,频率高 零偏导致误差累积 视觉定位 特征点/光流跟踪 对极几何/PNP 解位姿 与地图匹配可全局定位 受光照/纹理影响 激光雷达定位 点云配准 ICP/NDT 与先验点云地图匹配 厘米级、抗光照 雨雪/空旷场景退化 多源融合定位 ESKF / 因子图优化 · 全局约束 + 高频递推 输出连续、平滑、可对齐的位姿 坐标系基础 ECEF → ENU → 车体 → 传感器 外参标定决定融合正确性 WGS84 与局部地图原点对齐 时间同步基础 PPS + PTP/NTP 统一时钟 硬件触发与时间戳对齐 运动补偿消除时间偏差

二、四类定位原理要点

GNSS 通过测量接收机到多颗卫星的伪距或载波相位,结合卫星星历解算接收机位置。单点定位米级,RTK 依靠基准站差分可到厘米级,PPP 则依赖精密星历与钟差产品。其核心弱点是城市峡谷、隧道、树荫下的遮挡与多路径,以及卫星几何分布不佳时的精度衰减。

INS 由陀螺仪和加速度计组成,通过积分角速度和比力得到姿态、速度和位置。它的优势是输出频率高、短时平滑、不依赖外部环境;劣势是零偏和噪声随时间积分导致漂移,必须依靠外部观测校正。GNSS/INS 组合正是用 GNSS 的长期稳定约束抑制 INS 漂移,同时用 INS 在 GNSS 失锁期间维持递推。

视觉定位 从图像中提取特征点或直接使用光度信息,通过帧间匹配估计相对运动,或与先验视觉地图匹配获得全局位姿。视觉里程计在纹理丰富、光照稳定时精度高、成本低,但遇到逆光、夜间、白墙或动态遮挡时容易退化。

激光雷达定位 将当前点云与先验点云地图做配准,常用 ICP、NDT 或基于特征的匹配。它不受光照影响、测距精度高,在结构化道路中可稳定输出厘米级位姿;但在长直走廊、空旷广场等几何退化场景中,配准约束不足,需要引入 GNSS 或视觉约束。

三、坐标系与时间同步:融合的两条生命线

坐标系解决“在哪里”的问题。常见链路是:GNSS 输出 WGS84 经纬高,经投影转为 ECEF 或 ENU 局部坐标,再通过外参变换到车体坐标系,最后到各传感器坐标系。任何一级外参错误都会让融合结果整体偏移。工程中必须明确每个坐标系的定义、轴向、原点和变换方向,并定期复核标定参数。

时间同步解决“什么时候”的问题。不同传感器采样时刻不同,若时间戳未对齐,高速运动下会产生显著的位置误差。典型做法是用 PPS 秒脉冲配合 PTP/NTP 统一各设备时钟,采用硬件触发保证曝光与扫描同步,并在融合前做运动补偿。下表给出四类定位手段的关键特性对比。

定位手段 观测量 典型精度 输出频率 主要失效场景
GNSS 伪距/载波相位 米级~厘米级 1~20 Hz 遮挡、多路径、城市峡谷
INS 角速度、比力 短时高精度,长时漂移 100~1000 Hz 零偏累积、无外部校正
视觉 特征点、光度 分米级~厘米级 10~60 Hz 弱纹理、逆光、夜间、动态遮挡
激光雷达 点云距离与几何 厘米级 10~20 Hz 几何退化、雨雪、空旷场景

四、典型场景与工程误区

以城市高架下的地图更新采集为例:车辆进入高架阴影区,GNSS 可见卫星骤减,RTK 固定解丢失。此时若仅依赖 GNSS,位姿会跳变;正确做法是让 INS 在失锁期间递推,同时用激光雷达与先验点云地图匹配提供全局约束,视觉里程计补充局部平滑。三者通过 ESKF 融合,输出连续位姿,保证更新要素的坐标一致。

常见误区一:只关注单传感器精度,忽略时间同步。若相机与激光雷达时间戳相差 50 ms,在 60 km/h 下车辆已移动约 0.83 m,足以让融合结果错位。

常见误区二:外参标定后长期不复核。车辆振动、碰撞或传感器拆装都会改变外参,导致点云与图像配准偏移,进而污染地图更新结果。

常见误区三:把 GNSS 失锁当作“没有定位”。实际上 INS 递推和激光/视觉匹配仍可维持短时高精度,关键是融合框架要能动态调整各观测权重。

工程建议:在数据采集车上统一使用 PPS 作为硬件触发基准,所有传感器时间戳写入同一时钟域;建立外参标定与复核流程,每次采集前检查 GNSS 固定解状态、IMU 零偏和点云配准残差;融合输出中保留各传感器健康度与协方差,便于后续地图更新时判断位姿可信度。

# 时间同步检查示例(伪代码)
for sensor in [gnss, imu, camera, lidar]:
    ts = sensor.timestamp          # 统一到 PPS 时钟域
    assert abs(ts - ref_time) < 5ms, "时间戳偏差超限"

# 外参复核:点云投影到图像,检查边缘对齐残差
residual = project(lidar_points, T_cam_lidar, K)
assert residual.mean() < 2.0, "外参可能漂移,需重新标定"

综上,在线定位不是单一传感器的独角戏,而是绝对与相对、全局与局部、高频与低频观测的协同。理解 GNSS、INS、视觉、激光雷达各自的原理边界,守住坐标系与时间同步两条底线,才能为高精地图更新提供可信的时空基准。