点云学习笔记1——激光雷达的原理
- 一、激光雷达的分类
- 1)机械式激光雷达:
- 2)混合式激光雷达(MEMS):
- 3)固态激光雷达:
- 1.1、单线激光雷达
- 1.2、四线激光雷达
- 1.3、16/32/64线激光雷达
- 二、激光雷达的数据
- 三、激光雷达能做什么?
- 3.1、障碍物检测与分割
- 3.2、可通行空间检测
- 3.3、高精度电子地图制图与定位
- 3.4、交通参与者的轨迹预测
- 四、激光雷达参数
- 4.1、探测距离
- 4.2、视场(FoV)
- 4.3、扫描模式
- 4.4、抗串扰抗干扰度
- 4.5、检测率
- 4.6、多次回波
- 4.7、测距精度和准确度
如下图所示,激光雷达的发射器发射出一束激光,激光光束遇到物体后,经过漫反射,返回至激光接收器,雷达模块根据发送和接收信号的时间间隔乘以光速,再除以2,即可计算出发射器与物体的距离。
首先激光发射系统中激励源周期性地驱动激光器,发射激光脉冲,激光调制器通过光束控制器控制发射激光的方向和线数,最后通过发射光学系统,将激光发射至目标物体;扫描系统负责以稳定的转速旋转起来,实现对所在平面的扫描,并产生实时的平面图信息;激光接收系统中光电探测器接受目标物体反射回来的激光,产生接收信号;信息处理系统中接收信号经过放大处理和数模转换,经由信息处理模块计算,获取目标表面形态、物理属性等特性,最终建立物体模型。
一、激光雷达的分类
目前激光雷达的分类标准有很多种,常见的一种是按照内部有无旋转部件来划分,可以分为机械旋转激光雷达、混合式激光雷达以及固态激光雷达。
1)机械式激光雷达:
通过机械旋转实现激光扫描的激光雷达,激光发射部件在竖直方向上排布成激光光源线阵,可通过透镜在竖直面内产生不同指向的激光光束;在步进电机的驱动下持续旋转,竖直面内的激光光束由“线”变成“面”,经旋转扫描形成多个激光“面”,从而实现探测区域内的3D扫描;
2)混合式激光雷达(MEMS):
将微机电系统(MEMS)与振镜结合形成MEMS振镜,通过振镜旋转完成激光扫描,驱动电路驱动激光器产生激光脉冲同时驱动MEMS振镜旋转,激光在旋转振镜的反射下实现扫描,经发射光学单元准直后射出;
3)固态激光雷达:
取消了机械扫描结构,水平和垂直方向的激光扫描均通过电子方式来实现,相比于MEMS激光保留“微动”机械结构,其电子化更彻底。
固态激光雷达主要包括光学相控阵(OPA)激光雷达和面阵闪光(Flash)激光雷达两种。
- a:光学相控阵(OPA)激光雷达,是由若干发射接收单元组成一个矩形阵列,通过改变阵列中不同单元发射光线的相位差,达到调节发射波角度和方向的目的;激光光源经过光分束器后进入光波导阵列,在波导上通过外加控制的方式改变光波的相位,利用波导间的光波相位差来实现光束扫描;
- b:面阵闪光(Flash)激光雷达:采用类似相机的工作模式,运行时,直接法射出一大片覆盖探测区域的激光,随后由高灵敏度接收器阵列计算每个像素对应的距离信息,记录光子飞行的时间信息,从而完成对周围环境的绘制。
激光雷达根据安装位置的不同,分类两大类。一类安装在无人车的四周,另一类安装在无人车的车顶。
安装在无人车四周的激光雷达,其激光线束一般小于8,常见的有单线激光雷达和四线激光雷达。
安装在无人车车顶的激光雷达,其激光线束一般不小于16,常见的有16/32/64线激光雷达。
1.1、单线激光雷达
单线激光雷达是目前成本最低的激光雷达。成本低,意味着量产的可能性大。
前两天朋友圈刷屏的“北京首个自动驾驶测试场启用”新闻中出现的福田自动驾驶汽车就使用了4个单线激光雷达,分别布置于无人车的前后左右,用于车身周围障碍物的检测,如下图。
单线激光雷达的原理可以通过下图理解。
单束激光发射器在激光雷达内部进行匀速的旋转,每旋转一个小角度即发射一次激光,轮巡一定的角度后,就生成了一帧完整的数据。因此,单线激光雷达的数据可以看做是同一高度的一排点阵。
单线激光雷达的数据缺少一个维度,只能描述线状信息,无法描述面。如上图,可以知道激光雷达的面前有一块纸板,并且知道这块纸板相对激光雷达的距离,但是这块纸板的高度信息无从得知。
1.2、四线激光雷达
如上图所示,四线激光雷达基本都像这样。
全新的奥迪A8为了实现Level 3级别的自动驾驶,也在汽车的进气格栅下布置的四线激光雷达ScaLa。
有了之前单线激光雷达的原理介绍,四线激光雷达的工作原理就很容易理解了。
如下图所示,不同的颜色代表不同的激光发射器。
四线激光雷达将四个激光发射器进行轮询,一个轮询周期后,得到一帧的激光点云数据。四条点云数据可以组成面状信息,这样就能够获取障碍物的高度信息。
根据单帧的点云坐标可得到障碍物的距离信息。
根据多帧的点云的坐标,对距离信息做微分处理,可得到障碍物的速度信息。
实际应用时,在购买激光雷达的产品后,其供应商也会提供配套的软件开发套件(SDK,Software Development Kit),这些软件开发套件能很方便地让使用者得到精准的点云数据,而且为了方便自动驾驶的开发,甚至会直接输出已经处理好的障碍物结果。
如下图绿的的矩形框即为障碍物相对于自车的位置,矩形框的前端有个小三角,表示障碍物的运动方向。
1.3、16/32/64线激光雷达
16/32/64线的激光雷达的感知范围为360°,为了最大化地发挥他们的优势,常被安装在无人车的顶部。
三款激光雷达的技术参数和成本如下图。
360°的激光数据可视化后,就是大家经常在各种宣传图上看到的效果,如下图。
图中的每一个圆圈都是一个激光束产生的数据,激光雷达的线束越多,对物体的检测效果越好。比如64线的激光雷达产生的数据,将会更容易检测到路边的马路牙子。
16/32/64线的激光雷达只能提供原始的点云信号,没有对应的SDK直接输出障碍物结果。因此各大自动驾驶公司都在点云数据基础上,自行研究算法完成无人车的感知工作。
二、激光雷达的数据
激光雷达的点云数据结构比较简单。以N线激光雷达为例来讲解点云的数据结构。
在实际的无人驾驶系统中,每一帧的数据都会有时间戳,根据时间戳进行后续和时间有关的计算(如距离信息的微分等)。因此N线激光雷达的点云数据结构如下图。
每一线点云的数据结构又是由点云的数量和每一个点云的数据结构组成。由于激光雷达的数据采集频率和单线的点云数量都是可以设置的,因此1线点云数据中需要包含点云数量这个信息。
最底层的是单个点云的数据结构。点的表达既可以使用theta/r的极坐标表示,也可以使用x/y/z的3维坐标表示。
每个点云除了坐标外,还有一个很重要的元素,那就是激光的反射强度。激光在不同材料上的反射强度是不一样的。以3维坐标的表示方法为例,单个点云的数据结构如下图。X/Y/Z方向的偏移量是以激光雷达的安装位置作为原点。
三、激光雷达能做什么?
激光雷达点云数据的一般处理方式是:数据预处理(坐标转换,去噪声等),聚类(根据点云距离或反射强度),提取聚类后的特征,根据特征进行分类等后处理工作。
以百度Apollo 2.0目前已开放的功能为例,看看激光雷达能完成哪些工作。
3.1、障碍物检测与分割
利用高精度地图限定感兴趣区域(ROI,Region of Interest)后,基于全卷积深度神经网络学习点云特征并预测障碍物的相关属性,得到前景障碍物检测与分割。
3.2、可通行空间检测
利用高精度地图限定ROI后,可以对ROI内部(比如可行驶道路和交叉口)的点云的高度及连续性信息进行判断点云处是否可通行。
3.3、高精度电子地图制图与定位
利用多线激光雷达的点云信息与地图采集车载组合惯导的信息,进行高精地图制作。自动驾驶汽车利用激光点云信息与高精度地图匹配,以此实现高精度定位。
3.4、交通参与者的轨迹预测
根据激光雷达的感知数据与障碍物所在车道的拓扑关系(道路连接关系)进行障碍物的轨迹预测,以此作为无人车规划(避障、换道、超车等)的判断依据。
四、激光雷达参数
4.1、探测距离
4.2、视场(FoV)
4.3、扫描模式
4.4、抗串扰抗干扰度
4.5、检测率
4.6、多次回波
4.7、测距精度和准确度
参考:
1、无人驾驶技术入门(六)| 工程师又爱又恨的激光雷达
2、虹科】带您了解激光雷达参数和技术规格