一、激光雷达的原理
1.1 工作原理
LiDAR(Light Detection and Ranging),是激光探测及测距系统的简称,另外也称Laser Radar 或LADAR(Laser Detection and Ranging)。
激光雷达是一种光学遥感技术,它通过首先向目标物体发射一束激光,再根据接收-反射的时间间隔来确定目标物体的实际距离。然后根据距离及激光发射的角度,通过简单的几何变化可以推导出物体的位置信息。由于激光的传播受外界影响小,LiDAR能够检测的距离一般可达100m以上。 LIDAR是一种集激光,全球定位系统(GPS)和惯性导航系统(INS)三种技术与一身的系统,用于获得数据并生成精确的DEM。这三种技术的结合,可以高度准确地定位激光束打在物体上的光斑。 LIDAR系统包括一个单束窄带激光器和一个接收系统。激光器产生并发射一束光脉冲,打在物体上并反射回来,最终被接收器所接收。接收器准确地测量光脉冲从发射到被反射回的传播时间。因为光脉冲以光速传播,所以接收器总会在下一个脉冲发出之前收到前一个被反射回的脉冲。鉴于光速是已知的,传播时间即可被转换为对距离的测量。结合激光器的高度,激光扫描角度,从GPS得到的激光器的位置和从INS得到的激光发射方向,就可以准确地计算出每一个地面光斑的坐标X,Y,Z。激光束发射的频率可以从每秒几个脉冲到每秒几万个脉冲。举例而言,一个频率为每秒一万次脉冲的系统,接收器将会在一分钟内记录六十万个点。 与传统雷达使用无线电波相比较,LiDAR使用激光射线,商用LiDAR使用的激光射线波长一般在600nm到1000nm之间,远远低于传统雷达所使用的波长。因此LiDAR在测量物体距离和表面形状上可达到更高的精准度,一般可以达到厘米级。
LiDAR系统一般分为三个部分:
第一是激光发射器,发射出波长为600nm到1000nm之间的激光射线;第二部分是扫描与光学部件,主要用于收集反射点距离与该点发生的时间和水平角度(Azimuth);第三个部分是感光部件,主要检测返回光的强度。
因此我们检测到的每一个点都包括了空间坐标信息(x, y, z)以及光强度信息(i)。光强度与物体的光反射度(reflectivity)直接相关,所以根据检测到的光强度也可以对检测到的物体有初步判断。
1.2 点云
无人车所使用的LiDAR并不是静止不动的。在无人车行驶的过程中,LiDAR同时以一定的角速度匀速转动,在这个过程中不断地发出激光并收集反射点的信息,以便得到全方位的环境信息。LiDAR在收集反射点距离的过程中也会同时记录下该点发生的时间和水平角度(Azimuth),并且每个激光发射器都有编号和固定的垂直角度,根据这些数据我们就可以计算出所有反射点的坐标。LiDAR每旋转一周收集到的所有反射点坐标的集合就形成了点云(point cloud)。
如图所示,LiDAR通过激光反射可以测出和物体的距离distance,因为激光的垂直角度是固定的,记做a,这里我们可以直接求出z轴坐标为sin(a)*distance。由cos(a)*distance我们可以得到distance在xy平面的投影,记做xy_dist。LiDAR在记录反射点距离的同时也会记录下当前LiDAR转动的水平角度b,根据简单的集合转换,可以得到该点的x轴坐标和y轴坐标分别为cos(b)*xy_dist和sin(b)*xy_dist。
二、激光雷达的应用
2.1 高清地图的绘制
这里的高清地图不同于我们日常用到的导航地图。高清地图是由众多的点云拼接而成,主要用于无人车的精准定位。高清地图的绘制也是通过LiDAR完成的。安装LiDAR的地图数据采集车在想要绘制高清地图的路线上多次反复行驶并收集点云数据。后期经过人工标注,过滤一些点云图中的错误信息,例如由路上行驶的汽车和行人反射所形成的点,然后再对多次收集到的点云进行对齐拼接形成最终的高清地图。
2.2 基于点云定位
2.2.1 重要性
很多人都有这样的疑问:如果有了精准的GPS,不就知道了当前的位置,还需要定位吗?其实不然。目前高精度的军用差分GPS在静态的时候确实可以在“理想”的环境下达到厘米级的精度。这里的“理想”环境是指大气中没有过多的悬浮介质而且测量时GPS有较强的接收信号。然而无人车是在复杂的动态环境中行驶,尤其在大城市中,由于各种高大建筑物的阻拦,GPS多路径反射(Multi-Path)的问题会更加明显。这样得到的GPS定位信息很容易就有几十厘米甚至几米的误差。对于在有限宽度上高速行驶的汽车来说,这样的误差很有可能导致交通事故。因此必须要有GPS之外的手段来增强无人车定位的精度。
2.2.2 实现方式
上文提到过,LiDAR会在车辆行驶的过程中不断收集点云来了解周围的环境。我们可以很自然想到利用这些环境信息来定位。这里我们可以把这个问题用一个简化的概率问题来表示:已知t0时刻的GPS信息,t0时刻的点云信息,以及t1时刻无人车可能所在的三个位置:P1、P2和P3(这里为了简化问题,假设无人车会在这三个位置中的某一个)。求t1时刻车在这三点的概率。根据贝叶斯法则,无人车的定位问题可以简化为如下概率公式:
右侧第一项表示给定当前位置,观测到点云信息的概率分布。其计算方式一般分局部估计和全局估计两种。局部估计较简单的做法就是通过当前时刻点云和上一时刻点云的匹配,借助几何推导,可以估计出无人车在当前位置的可能性。就是两个小规模点云的计算和比较,认为当前时刻的点云是上一时刻的点云济宁过一个角度或者位置的转换获得的。全局估计就是利用当前时刻的点云和上面提到过的高清地图做匹配,可以得到当前车相对地图上某一位置的可能性。就是使用小规模的 点云和大规模的点云去做比较,从而获得位置。
在实际中一般会两种定位方法结合使用。右侧第二项表示对当前位置预测的概率分布,这里可以简单的用GPS给出的位置信息作为预测。通过计算P1、P2和P3这三个点的后验概率,就可以估算出无人车在哪一个位置的可能性最高。通过对两个概率分布的相乘,可以很大程度上提高无人车定位的准确度。
2.3 障碍物检测
2.3.1 重要性
众所周知,在机器视觉中一个比较难解决的问题就是判断物体的远近,基于单一摄像头所抓取的2D图像无法得到准确的距离信息。而基于多摄像头生成深度图的方法又需要很大的计算量,不能很好地满足无人车在实时性上的要求。另一个棘手的问题就是光学摄像头受光照条件的影响巨大,物体的识别准确度很不稳定。
上图左侧展示了光线不好的情况下图像特征匹配的问题:由于相机曝光不充分,没有匹配成功。上图中间展示了2D物体特征匹配成功的例子:啤酒瓶的模板可以在2D图像中成功识别。但是如果将镜头拉远,如上图右所示,我们只能识别出右侧的啤酒瓶只是附着在另一个3D物体的表面而已。2D物体由于维度缺失的问题很难在这个情境下做出正确的识别。
2.3.2 实现方式
利用LiDAR所生成的点云可以很大程度上解决上述两个问题,借助LiDAR的特性,我们可以对反射障碍物的远近、高低甚至是表面形状有较为准确的估计,从而大大提高障碍物检测的准确度,而且这种方法在算法的复杂度上低于基于摄像头的视觉算法,因此更能满足无人车的实时性需求。
2.3.3 面临挑战
LiDAR也面临着许多挑战,包括技术、计算性能以及价格挑战。
技术挑战:空气中悬浮物计算性能挑战:计算量大成本挑战:造价昂贵
LiDAR的造价也是要考虑的重要因素之一。好的传感器价格在10W美元之上。
LiDAR的精度也会受到天气的影响。空气中悬浮物会对光速产生影响。大雾及雨天都会影响LiDAR的精度,如下图所示。
LiDAR在运行中会捕获大量的点,基本上在每秒几十万的级别,而且我们需要对这些点进行较为复杂的几何运算和坐标转换,这对于我们的处理起来说无疑是一个巨大的挑战。
下篇预告:GPS和惯性传感器
参考链接:
/
/forum.php
如有问题,欢迎随时联系我