1. 激光雷达点云畸变原理详解
第一次用VLP-16采集行驶中的点云数据时,我被地面上扭曲的"橡皮泥"效果惊呆了——本该笔直的道路标线变成了波浪形,建筑物边缘像被拉长的口香糖。这种被称为运动畸变的现象,本质上是时空不同步导致的坐标系错乱。
以常见的16线激光雷达为例,其工作原理就像用16支笔同时画圆:每支笔(激光束)按固定间隔(约55μs)依次在纸上留下墨点。如果纸是静止的,画出的就是完美的同心圆;但若一边画一边移动纸张,圆环就会扭曲变形。具体到VLP-16硬件:
- 垂直方向:16个激光器以2°间隔排列,覆盖-15°到+15°的俯仰角
- 水平方向:10Hz扫描频率下,每帧完成360°旋转,产生约28800个点
- 时序特性:每个点的采集时刻=起始时刻+线束编号×55μs+水平角增量×时间
实测数据显示,当车辆以60km/h行驶时,单帧扫描期间(100ms)车辆移动1.67米。这意味着最早和最晚采集的两个点,实际空间位置相差近两米,却被迫"挤"在同一坐标系下——这就是畸变的根源。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 运动补偿的三大技术路线
2.1 纯估计算法方案
最早尝试用ICP算法做补偿时,我发现一个有趣现象:把两帧连续点云直接做匹配,补偿后的效果反而比单帧处理更差。后来才明白,运动畸变补偿本质是帧内配准问题。主流纯估计方法包括:
- VICP算法:在传统ICP基础上引入速度估计,适合低速场景
- NDT匹配:利用正态分布变换处理大范围畸变
- 特征匹配法:提取地面、角点等稳定特征进行约束
这些方法在无GPS的室内机器人上表现尚可,但遇到高速公路场景就露馅了。有次测试显示,120km/h时速下纯算法补偿的误差达到0.8米,完全无法满足自动驾驶需求。
2.2 传感器辅助方案
给雷达装上IMU后,效果立竿见影。这里有个关键细节:IMU数据与点云的时间对齐。我们开发的时间同步方案包含:
- 硬件同步:采用PPS信号触发IMU采样,误差<1ms
- 软件补偿:对非同步设备,用双线性插值法补偿时间差
- 运动建模:
- 低速(<30km/h):匀速模型
T = v * Δt - 高速:匀加速模型 `T = v0 * Δt + 0.5
- 低速(<30km/h):匀速模型
