3、传感器基础(二):激光雷达(LiDAR)工作原理、点云数据特点、机械式与固态式对比

好,咱们接着聊传感器。上一章我把摄像头讲透了,这一章轮到激光雷达了。说实话,在我刚入行那会儿,激光雷达还是个稀罕物,一台64线的机械式雷达能顶一辆小轿车的钱。现在呢?固态雷达已经把价格打下来了,但技术选型反而更让人纠结了。

我个人习惯把激光雷达比作自动驾驶的「硬骨头」——它不像摄像头那样直观,也不像毫米波雷达那样「粗糙」。它给你的是精确到厘米的三维信息,但处理起来也够你喝一壶的。咱们今天就把这块硬骨头啃下来。

3.1 激光雷达工作原理:它到底怎么「看」世界的?

说白了,激光雷达的原理特别简单:发射激光,等它反射回来,算时间差。就这么回事。

具体来说,激光雷达内部有一个激光发射器,发出一束脉冲激光,打到物体表面后反射回来,被接收器捕获。通过记录激光往返的时间,乘以光速再除以2,就能算出距离。这就是大名鼎鼎的TOF(Time of Flight,飞行时间)测距法。

核心公式:

距离 = (光速 × 飞行时间) / 2

举个例子:如果激光往返耗时 100 纳秒,那么距离就是 (3×10⁸ m/s × 100×10⁻⁹ s) / 2 = 15 米。

嗯,这里要注意:除了TOF,还有调频连续波(FMCW)的方案。FMCW不测时间,而是测发射和接收信号的频率差。我在项目里主要用TOF,因为技术成熟、成本低。但FMCW有个好处——它能直接测速度,而且抗干扰能力强。不过目前量产车还是TOF占主流。

你想想看,一个激光雷达要「看」清周围环境,光测一个点肯定不够。所以它得旋转或者扫描,把一个个点拼起来。这就引出了点云的概念。

3.2 点云数据特点:一堆点里藏着什么秘密?

点云,就是激光雷达采集到的所有三维点的集合。每个点都包含X、Y、Z坐标,以及反射强度(Intensity)信息。有些雷达还能提供回波次数——比如打到玻璃上,会有两次回波。

我在项目中遇到过一个问题:点云数据看着密密麻麻,但真正有用的信息其实很稀疏。为什么?因为激光雷达的扫描线是有限的。比如一个32线的雷达,垂直方向只有32条线,中间有大量空白区域。这就导致远处物体的点云特别稀疏,一个行人可能只有三五个点。

点云数据有几个显著特点,我总结一下:

  • 稀疏性:相比图像,点云数据非常稀疏。一张1080p的图像有200万个像素,而一帧32线点云可能只有几万个点。
  • 无序性:点云里的点没有固定的排列顺序。你交换两个点的位置,点云还是那个点云。这给深度学习模型的设计带来了挑战。
  • 近密远疏:离雷达越近,点越密;越远,点越稀。这是由激光雷达的角分辨率决定的。
  • 反射强度差异:不同材质反射强度不同。比如路面的反光标识强度很高,而黑色轮胎强度很低。这个信息可以用来辅助分类。

避坑指南:我曾经在处理点云时,直接用了原始坐标做聚类,结果发现远处的物体总是被漏检。后来才意识到,点云的密度分布不均匀,必须做距离补偿或者体素化处理。建议你在做点云处理时,先统计一下不同距离下的点密度,心里有个数。

点云数据的存储格式也值得一提。最常见的格式是PCD(Point Cloud Data)LAS。但在自动驾驶领域,我们通常用ROS bag或者NumPy数组来存储。一个典型的点云数据格式如下:

# 点云数据示例(XYZ + Intensity)
x: 2.345, y: 1.234, z: 0.567, intensity: 85
x: 2.456, y: 1.345, z: 0.678, intensity: 92
x: 2.567, y: 1.456, z: 0.789, intensity: 78
...

3.3 机械式与固态式对比:选哪个?

这个问题,我几乎每次面试都会被问到。说白了,机械式和固态式就是「老牌贵族」和「新锐黑马」的较量。

机械式激光雷达,就是那个头顶上转来转去的「小风扇」。它通过电机带动激光收发模块旋转,实现360°水平扫描。Velodyne的HDL-64E是经典代表,当年Google无人车用的就是它。

机械式的优点很明显:视场角大(360°)、技术成熟、点云质量高。但缺点也致命:有机械旋转部件,寿命短、成本高、体积大。我记得有一次测试,机械雷达的电机坏了,整个系统直接瘫痪。从那以后,我对机械式的可靠性就打了个问号。

固态激光雷达,没有旋转部件,靠电子方式控制激光束的指向。主要有三种技术路线:

  • MEMS微振镜:用一个小镜子反射激光,通过振动改变方向。成本低,但视场角有限。
  • OPA光学相控阵:通过控制光波的相位来改变光束方向。全固态,但工艺难度大。
  • Flash面阵:一次性发射大面积激光,像相机一样成像。结构简单,但探测距离短。

我建议你重点关注MEMS方案,因为目前量产车用得最多。比如Livox的Horizon系列,就是MEMS路线的代表。

下面这张表,是我根据自己的经验整理的,你可以收藏一下:

对比维度 机械式 固态式(MEMS)
水平视场角 360° 通常 90°~120°
垂直视场角 通常 30°~40° 通常 25°~30°
线数 16线、32线、64线、128线 等效线数(非均匀分布)
可靠性 低(有旋转部件) 高(无运动部件)
成本 高(数万至数十万) 低(数千至数万)
体积
点云均匀性 好(均匀分布) 一般(中心密、边缘疏)
典型应用 Robotaxi、高精地图采集 量产乘用车、低速无人车

注意:固态雷达的「等效线数」是个营销概念。比如某款固态雷达标称「等效128线」,实际上它的垂直分辨率并不均匀——中心区域可能达到128线的密度,但边缘区域可能只有32线的密度。选型时一定要看角分辨率点云密度分布图,别被数字忽悠了。

那么,实际项目中怎么选?我的经验是:

  • 如果你做的是L4级Robotaxi,对感知精度要求极高,而且不差钱,那机械式还是首选。360°视场角带来的感知连续性,固态雷达暂时还比不了。
  • 如果你做的是量产乘用车,要兼顾成本和可靠性,那固态雷达是必然趋势。目前主流方案是前向一个MEMS雷达(120°视场角),再加两个角雷达补盲。
  • 如果你做的是低速物流车,对探测距离要求不高,那Flash方案性价比最高。

最后说一句:不管选哪种雷达,标定都是绕不开的坎。机械式雷达需要做外参标定(把雷达坐标系对齐到车体坐标系),固态雷达还需要做内参标定(补偿MEMS振镜的非线性误差)。我建议你从一开始就把标定流程固化下来,否则后面调试会非常痛苦。

好了,这一章的内容就到这里。下一章咱们聊聊毫米波雷达——那个「看似简单,实则暗藏玄机」的传感器。