第4章:高精地图采集技术:激光雷达点云采集、相机图像采集、IMU/GNSS组合导航采集方案

做高精地图,第一步就是采集。这一步要是没做好,后面建图、定位全是白搭。我见过太多团队,算法调得飞起,结果一上实车数据就崩——问题往往出在采集环节。

今天咱们聊聊三种核心采集手段:激光雷达、相机、IMU/GNSS组合导航。这三者各有各的脾气,配合好了才能产出高质量的地图数据。

4.1 激光雷达点云采集:精度与效率的博弈

激光雷达,说白了就是拿激光束扫一圈,得到一堆三维点。每个点都带着XYZ坐标和反射强度。我个人习惯把点云采集分成两个维度看:硬件选型和采集策略。

4.1.1 硬件选型

市面上主流的有机械旋转式和固态式。机械式的,比如Velodyne HDL-64,能扫360度,但寿命短、震动敏感。固态式的,比如禾赛AT128,体积小、可靠性高,但视场角有限。

类型 线数 视场角 典型场景
机械旋转式 16/32/64/128 360°水平 城市道路、高速
固态式 等效128线 120°×25° 园区、封闭区域

嗯,这里要注意:线数不是越高越好。64线够用,128线更好,但数据量翻倍,处理压力也大。我在项目中遇到过,为了追求极致精度上了128线,结果回传带宽不够,丢帧严重。后来降回64线,配合多趟采集,效果反而更好。

4.1.2 采集策略

点云采集最怕什么?运动畸变。车在动,激光在转,扫出来的点云是扭曲的。解决办法有两个:

  • 硬件同步:用GPS时间戳给每个点打标,后期做运动补偿
  • 采集速度:控制在30-40km/h,太快了点云稀疏,太慢了效率低

我的经验:采集前一定要做标定。激光雷达和IMU之间的外参,哪怕偏了0.1度,建出来的地图都会出现重影。我曾经因为标定板没放平,白跑了一整天数据。

4.2 相机图像采集:视觉信息的黄金搭档

激光雷达给的是几何信息,相机给的是语义信息。车道线、交通标志、路沿——这些在点云里很难分辨,但在图像里一目了然。

4.2.1 相机选型与配置

我建议用工业相机,别用消费级的。工业相机快门同步、曝光控制都更可靠。分辨率方面,200万像素够用,500万更好。帧率一般10-15fps,和激光雷达的扫描频率匹配。

相机安装位置也有讲究:

  • 前向:主视野,覆盖车道线、交通标志
  • 侧向:覆盖路沿、停车位
  • 后向:覆盖后方车道、变道辅助

避坑指南:我曾经遇到过,相机镜头没擦干净,采集回来的图像全是光晕。后期算法怎么调都识别不准。后来才发现是镜头上有油污。所以,采集前一定要检查镜头清洁度。

4.2.2 图像与点云的融合

图像和点云怎么对齐?靠标定。我们需要知道相机内参(焦距、畸变)和外参(相对于激光雷达的位姿)。

标定流程大致如下:

  1. 放置标定板,采集多组图像和点云
  2. 提取图像中的角点,点云中的平面
  3. 用PnP算法求解外参
  4. 验证投影误差,小于1个像素才算合格
# 伪代码:点云投影到图像
def project_point_to_image(point_3d, camera_matrix, dist_coeffs, extrinsics):
    # 将激光雷达坐标系下的点转换到相机坐标系
    point_cam = extrinsics @ point_3d
    # 投影到像素平面
    x = point_cam[0] / point_cam[2]
    y = point_cam[1] / point_cam[2]
    # 应用畸变校正
    u, v = undistort(x, y, camera_matrix, dist_coeffs)
    return u, v

4.3 IMU/GNSS组合导航:定位的脊梁骨

没有组合导航,前面采集的点云和图像就是一堆散沙。为什么?因为你需要知道每一帧数据是在哪里采集的。

4.3.1 为什么需要组合导航

GNSS(GPS/北斗)精度有限,城市峡谷里经常丢星。IMU(惯性测量单元)短时间精度高,但长时间会漂移。两者互补,才能得到稳定的位姿。

组合导航的核心思想:用GNSS修正IMU的长期漂移,用IMU填补GNSS的短期缺失。

4.3.2 采集方案配置

我推荐用RTK级别的GNSS接收机,配合光纤陀螺IMU。成本高,但精度有保障。具体参数:

传感器 精度 更新频率
RTK-GNSS 2-5cm 10Hz
光纤陀螺IMU 0.01°/h 200Hz
轮速计 0.1m/s 100Hz

关键点:IMU和GNSS的时间同步必须做到微秒级。我见过一个项目,因为时间戳差了10毫秒,融合出来的轨迹出现了周期性抖动。后来用PPS信号硬同步才解决。

4.4 多传感器融合采集方案

把上面三种传感器装到一起,就是一套完整的采集系统。但装到一起不等于融合好。你需要考虑:

  • 时间同步:所有传感器用同一个GPS时钟
  • 空间同步:所有传感器外参标定到位
  • 数据存储:点云、图像、位姿数据按时间戳对齐存储

下面这张图展示了整个采集系统的数据流:

激光雷达 点云数据 相机 图像数据 IMU/GNSS 位姿数据 时间同步 GPS时钟 PPS信号 时间戳对齐 数据帧同步 数据融合 点云+位姿 图像+位姿 外参标定 运动补偿 数据压缩 → 存储

你看,整个流程就是:三个传感器各自采集原始数据,经过时间同步后,再融合成带位姿信息的点云和图像。最后存成标准格式,比如PCD、PNG、CSV。

我的建议:采集前一定要做一次完整的系统联调。我曾经因为IMU的安装角度偏了2度,导致整个采集数据作废。后来我养成了一个习惯:每次采集前,先跑一段已知路径,验证定位精度。

好了,这一章的内容就这些。采集技术是基础,但也是最容易出问题的地方。你想想看,如果采集的数据本身就有问题,后面再怎么优化算法也是白费力气。所以,多花点时间在采集方案上,绝对值得。

可可精品资料库