导读
在智能交通、自动驾驶等城市应用快速发展的背景下,全球导航卫星系统(GNSS)的定位精度与可靠性成为关键支撑。然而,城市环境中高楼、车辆等遮挡物会导致 GNSS 信号发生反射或折射,产生非视距(NLOS)误差,这类误差可使定位偏差达百米级,严重制约 GNSS 在复杂城市场景的应用。尽管现有研究提出了信号处理优化、多传感器融合、3D 地图辅助及传统机器学习等 NLOS 处理方法,但普遍存在样本标注主观(依赖观测残差)、特征分析不充分(多依赖信噪比与仰角)、实时性与精度失衡等问题,难以满足动态城市场景的需求。

为此,百度地图与武汉大学合作撰写了《A reliable NLOS error identification method based on LightGBM driven by multiple features of GNSS signals》一文,从数据集构建、特征选择与模型设计三方面获得了技术突破,提出了一套高效、高精度的 NLOS 误差识别方案。
一、关键创新
1.提出 "鱼眼相机 + 惯性导航" 融合的 NLOS 客观标注方案,解决传统样本标注主观性问题
现有 NLOS 识别研究多依赖 GNSS 观测残差进行样本标注,易受观测噪声、多路径干扰影响,标注结果客观性不足。本文创新采用鱼眼相机与高精度惯性导航设备结合的方式构建数据集:通过 Entaniya Fisheye M12 280 鱼眼相机(视场 280°)捕获天空图像,基于 Kannala-Bandt 模型校正光学畸变,并通过 "边缘检测 - 轮廓补全 - 分水岭算法" 精确提取天空区域;同时利用 SPAN ISA-100C 惯性设备获取载体姿态与位置,计算卫星在相机像素坐标系中的投影位置,对比天空区域与卫星位置实现 LOS/NLOS 信号的直接、可视化标注。
2.构建多维度 GNSS 信号特征体系并量化相关性,突破传统单一特征识别的局限性
传统方法多依赖信噪比(SNR)、仰角(EA)等少数特征识别 NLOS,难以全面刻画信号差异。本文从 GNSS 原始观测出发,系统提取 6 个对 NLOS 敏感的关键特征 ------SNR(信号强度)、EA(遮挡关联度)、伪距一致性(PRC,伪距可靠性验证)、相位一致性(PC,相位突变捕捉)、码载差(CMC,NLOS 误差放大)、多路径观测(MP,伪距偏差量化),并通过相关性热图量化特征与 LOS/NLOS 标签的关联程度(仰角相关系数 0.269 最高,伪距一致性 0.003 最低)。
3. 采用优化的 LightGBM 模型实现 NLOS 高效高精度识别,平衡定位可靠性与实时性
针对传统机器学习模型(如 XGBoost、CatBoost)在动态城市场景下 "精度低" 或 "效率差" 的矛盾,本文选择 LightGBM 作为分类模型,并利用其核心优化机制适配车载场景:通过直方图算法将连续特征离散化,降低计算复杂度;采用深度约束的 Leaf-wise 生长策略,在提升拟合能力的同时抑制过拟合;结合梯度单侧采样(GOSS)减少样本量,兼顾精度与速度。
二、技术细节
1.NLOS 样本标注技术

样本标注依赖 "鱼眼相机 + 惯性导航" 融合系统,核心硬件参数如下:
- 鱼眼相机: 采用 Entaniya Fisheye M12 280(视场角 280°)与 MV-SUA1201M-T 工业相机,采样率 1fps,通过 GNSS 接收机时钟校准实现时间同步,确保与 GNSS 观测数据时间戳匹配。
- 校准模型: 采用 Kannala-Bandt 模型修正鱼眼镜头畸变,该模型通过多项式描述入射角度θ(光线与光轴夹角)与畸变后出射角度关系:

其中ki为畸变系数,需通过棋盘格校准实验获取。同时,通过校准获取相机内参矩阵K(包含 x/y 轴缩放因子与成像中心偏移量),用于 3D 空间点到像素坐标的转换。

- 惯性导航设备: 采用 SPAN ISA-100C(角随机游走 0.012°・h⁻¹/²),提供载体姿态数据,用于卫星坐标从地心地固坐标系(ECEF)到载体坐标系(b 系)的转换。
天空区域提取采用 "预处理 - 边缘检测 - 轮廓补全 - 分水岭分割" 四步流程,解决鱼眼图像边缘不连续与纹理缺失问题:
① 预处理: 将彩色图像转换为灰度图,降低观测噪声对边缘检测的干扰;
② 边缘检测: 通过 Canny 算子提取图像边缘,初步区分天空与遮挡物(建筑、树木),但此时边缘可能因像素误差存在局部离散;
③ 轮廓补全: 采用轮廓检测算法(如 OpenCV 的findContours)对离散边缘进行连接,生成完整、连续的天空轮廓,作为后续分割的 "先验种子";
④分水岭分割: 基于梯度信息将图像分割为不同区域,结合 "高亮度、中心性、弱纹理" 的天空区域属性,最终确定天空范围(如下图e中白色区域)。

卫星可见性判断与标签生成,通过 "卫星天空图生成 - 像素位置匹配" 实现:
- 卫星天空图生成: 首先基于 GNSS 星历计算卫星在 ECEF 坐标系的位置,结合惯性导航提供的坐标,转换为载体坐标系下的位置;随后计算卫星在 b 系的仰角与方位角,并通过鱼眼投影模型计算成像半径,最终转换为像素坐标。

- 标签判定:若卫星像素坐标落在天空区域内,标记为 LOS(标签 0);若落在遮挡区域内,标记为 NLOS(标签 1)。最终构建包含 149613 条样本的数据集,按 7:3 比例划分为训练集(104729 条)与验证集(44884 条),每条样本包含 6 个 GNSS 特征与 1 个标签。
2.模型选型与核心优化
选择 LightGBM 作为分类模型,核心原因是其适配城市车载动态场景的 "高精度 + 高效率" 需求,相比传统梯度提升模型(XGBoost、CatBoost)具有三大优势:
- 解决 XGBoost"训练慢、内存高" 问题: XGBoost 需遍历所有特征值寻找分裂点,而 LightGBM 通过直方图算法降低计算复杂度;
- 解决 CatBoost "连续特征拟合弱" 问题: CatBoost 侧重类别特征处理,对 GNSS 连续特征(如 SNR、PRC)的拟合精度低于 LightGBM;
- 支持实时推理: 车载场景要求单 epoch 推理时间≤100μs,LightGBM 可满足该需求,而 XGBoost 推理耗时更高。
模型通过四项关键优化平衡精度与效率:
- 直方图算法: 将连续特征离散化为 255 个 bin,分裂时仅遍历 bin 而非所有样本,计算复杂度从O(n)降至O(k)(k 为 bin 数),训练速度提升 10 倍以上;
- 深度约束 Leaf-wise 生长: 优先分裂增益最大的叶子节点,而非传统 Level-wise 的 "逐层分裂",同时限制最大深度为 10、最小叶子样本数为 20,避免过拟合的同时减少冗余节点;
- 梯度 - based 单侧采样(GOSS): 保留梯度绝对值前 20% 的样本(对模型更新贡献大),对剩余 80% 低梯度样本随机采样,通过权重补偿保持分布一致性,样本量减少 60% 仍不损失精度;
- 独家特征捆绑(EFB): 将互斥性强的特征捆绑为 "超级特征",虽本文 6 个 GNSS 特征无强互斥性,但该机制为后续多系统特征扩展预留空间。
对比其他模型,在武汉车载动态数据中,LightGBM 的精度与效率均优于 XGBoost、CatBoost:
- 精度指标: LightGBM 的精确率(92.55%)、召回率(92.43%)、F1-score(0.9232)分别高于 XGBoost(91.71%、91.77%、0.9125)与 CatBoost(88.02%、88.16%、0.8685),且 NLOS 漏检率(5.49%,即 NLOS 误判为 LOS 的比例)显著低于 XGBoost(7.05%)与 CatBoost(10.53%),减少定位偏差风险;
- 效率指标: LightGBM 训练时间(25.49s)仅为 XGBoost(130.74s)的 19.5%,测试时间(0.97s)为 XGBoost(1.24s)的 78.2%,单 epoch 测试时间(21.61μs)满足车载实时性需求,而 CatBoost 虽速度最快(训练 4.65s、测试 0.02s),但精度不足。
3.模型训练与推理方法
从 GNSS 原始观测中提取 6 个对 NLOS 敏感的关键特征,各特征定义与计算方式明确:
- 信噪比(SNR): 反映信号强度,直接从 GNSS 接收机获取,LOS 信号 80% 分布在 40-50dB,NLOS 信号分散在 20-50dB;
- 仰角(EA): 关联遮挡概率,低仰角(≤20°)卫星 96.5% 为 NLOS,LOS 信号峰值分布在 40-60°;
- 伪距一致性(PRC): 基于多普勒观测验证伪距可靠性,计算公式如下

- 相位一致性(PC): 捕捉相位突变,计算公式如下

- 码载差(CMC) :放大 NLOS 误差,经双差与 epoch 差消除系统误差后,公式为

- 多路径观测(MP) :量化伪距偏差,通过双频组合计算
采用 Z-score 标准化消除量纲差异,确保 SNR(dB)、PRC(m)等不同单位特征对模型的贡献均衡。

离线训练阶段:
① 对训练集特征进行 Z-score 标准化;
② 采用 5 折交叉验证优化超参数;
③ 以 "二分类交叉熵" 为目标函数,训练 LightGBM 模型,保存验证集 F1-score 最高的模型。
在线推理阶段:
① 实时提取 GNSS 接收机的 6 个特征;
② 对特征标准化;
③ 输入模型,输出 LOS(概率≥0.5)或 NLOS(概率 < 0.5);
④ 剔除 NLOS 观测用于定位解算。
此外,还需要通过网格搜索确定核心超参数,平衡精度与过拟合风险:采用二分类核心指标量化性能,重点关注准确率、召回率和F1-score 。
三、测试结果
论文通过三类实验验证方法有效性:特征数量对识别性能的影响、不同模型的精度与效率对比、NLOS 剔除后的定位性能提升,所有实验基于武汉城区车载动态数据开展。

实验 1:特征数量对识别性能的影响
目的:验证多特征融合的必要性,实验设计为 "从低相关性到高相关性逐步增加特征",共 6 组方案(表 2):

得出结论:
① 特征数量与性能正相关: 随着特征从 1 个增加到 6 个,F1-score 提升 36.4%,精确率提升 15.3%,错误识别数减少 67.2%;
② 高相关性特征贡献显著:加入 EA(仰角,相关性最高)后,F1-score 从 0.8435 跃升至 0.9232,提升 9.4%,说明 EA 是核心区分特征;
③ 低相关性特征不可替代: PRC(相关性 0.003)虽单独使用精度低,但与其他特征融合后,可补充伪距异常信息,提升模型鲁棒性。
实验 2:不同模型的精度与效率对比
目的:对比 LightGBM 与当前主流分类模型(XGBoost、CatBoost)的性能,结果如表 3(精度)与表 4(性能):

得出结论:
① 精度最优: LightGBM 的精确率(92.55%)高于 XGBoost(91.71%)与 CatBoost(88.02%),且 NLOS 漏检率(n_FP / 总 NLOS=2464/44884≈5.49%)显著低于 XGBoost(7.05%)与 CatBoost(10.53%),减少定位偏差风险;
② 效率平衡:
- CatBoost 速度最快(训练 4.65s,测试 0.02s),但精度最低,无法满足高可靠定位需求;
- XGBoost 精度接近 LightGBM,但训练时间(130.74s)是 LightGBM 的 5.1 倍,实时性差;
- LightGBM 在精度与效率间最优:训练时间仅为 XGBoost 的 19.5%,测试时间为 XGBoost 的 78.2%,单 epoch 测试时间 21.61μs,满足车载实时性需求(≤100μs)。
实验 3:NLOS 剔除后的定位性能提升
目的:验证 NLOS 识别对 GNSS 标准点定位(SPP)精度的改善,分为 "双频多系统" 与 "单频多系统" 两类场景,定位结果与 RTK/SINS 参考轨迹对比。
① 双频多系统(GPS+BDS+Galileo)
定位误差统计(表 5):

- RMS 显著降低: 东向误差减少近一半(47.82%),北向误差减少超 50%(56.68%),天向误差减少 36.68%;
- 异常值消除: 包含 NLOS 时,东向存在 > 40m 的异常定位点(图 19 紫色点),剔除后定位点紧贴参考轨迹(蓝色点);
- 复杂场景鲁棒性: 在高楼密集区(图 21),剔除 NLOS 后,定位轨迹(黄色点)与参考轨迹(绿色点)重合度显著提升,无明显偏移。
② 单频多系统(实用场景)
城市车载场景中,单频接收机成本更低、普及率更高,因此补充单频定位实验(表 6):
得出结论:单频场景下,剔除 NLOS 后精度仍显著提升,天向误差减少 45.24%,验证了方法在低成本设备上的实用性。
为验证 NLOS 剔除对卫星观测数量的影响,论文统计了实验路线的卫星数量与位置精度因子(PDOP):
- 卫星数量: 全程可见卫星数 15-25 颗,剔除的 NLOS 卫星数 3-8 颗,保留 12-18 颗 LOS 卫星,满足 SPP 定位的最少卫星数要求(≥4 颗);
- PDOP 变化: 包含 NLOS 时,PDOP 多在 3-5(中等精度);剔除 NLOS 后,PDOP 降至 2-3(高精度),说明 LOS 观测的几何分布更优,进一步提升定位精度。
四、整体结论
我们提出的 "基于 GNSS 多特征驱动与 LightGBM 的 NLOS 误差识别方法",通过客观数据集构建、多特征融合、高效模型设计,解决了城市 GNSS 定位的 NLOS 识别难题,主要贡献如下:
① 客观数据集构建: 首次将鱼眼相机与惯性导航融合,实现 LOS/NLOS 信号的直接标注,解决传统残差标注的主观性问题,数据集包含 14.9 万条样本,覆盖多场景,为后续研究提供基础;
② 多特征深度分析: 系统提取 6 个 GNSS 关键特征(SNR、EA、PRC、PC、CMC、MP),量化分析 NLOS 与 LOS 的差异,验证多特征融合的必要性,F1-score 较单一特征提升 36.4%;
③ 高效高精度模型: LightGBM 模型通过直方图、Leaf-wise 生长等优化,在精度(F1=0.9232)与效率(训练 25.49s)间达到平衡,NLOS 漏检率仅 5.49%,优于 XGBoost 与 CatBoost;
④ 定位性能显著提升: 剔除 NLOS 后,双频 SPP 的东、北、天向 RMS 分别提升 47.82%、56.68%、36.68%,单频场景提升 31.55%-45.24%,有效解决城市峡谷定位难题。