多种激光传感器实验对比与评估
2018-04-07徐晴雯renSchwertfeger
徐晴雯,Sören Schwertfeger
(中国科学院上海微系统与信息技术研究所,上海200000)
激光传感器通常可以为机器人提供周围环境的距离信息,机器人可利用这些信息避障、定位和建图,尤其是在同步定位与建图(SLAM)[1]中。一般在室内等结构化环境中,通常采用2D激光测距仪,但对于室外非结构环境,通常希望获得三维环境数据。现有的三维传感器无法获得被遮挡物体的距离信息,因此又被称为2.5D传感器。
之前已有研究利用不同的评估准则如准确度[2]评估了不同的传感器[3]。一般结构光相机和时间差(Time of Fight)相机[4-5]的误差远大于激光扫描仪,这两种距离传感器的最大缺点是当场景中日光较多时,传感器效果较差。此外,还有不少关于3D激光测距仪测试准则的研究[6-10]。
文中主要研究了3种主要的2.5D激光传感器:结构光RGBD传感器、多束激光同时扫描多方向的传感器和高精度静态传感器,并将部分结果与2D激光传感器比较[11],对比各种传感器的优缺点,为实际应用中的传感器选择提供帮助。
1 精确度评估方法
有目的地比较不同传感器的精度,选择一个简单可行的准则十分重要,该准则需要简单明了地解释实验结果。本文选择精确度作为评价准则,它是表征测量分辨率的重要特征之一,和测量结果的可重现性有着很大关联[12]。本文的主要目标是比较不同类型传感器之间的精度以及判断同种类型传感器的不同个体间表现是否有差异。
传感器的精度测量常被用来表征同一特征的相似程度。在接下来的实验部分,我们利用传感器来扫描平面,然后评估传感器数据描述该平面或者平面上的邻近线段的精确度。实验内容包括两部分:在相同测量距离下,改变传感器激光束和平面物体间的入射角以比较入射角对传感器精度的影响;在入射角相同的情况下,改变测量距离以评估测量距离对传感器精度的影响。
通过拟合线段或平面数据来比较传感器是常用的评估方式之一[13-14],评估结果除了受传感器本身的影响,也与实际平面提取过程有关[15]。在模型拟合阶段,首先建立目标模型,其次用不同的算法计算激光点集与模型之间的距离。
总之,实验的主要方法可以分为两部分:模型拟合算法和精确度评估准则。在本实验中,采用随机采样一致算法(RANSAC)进行模型拟合,利用均方差(MSE)作为精确度评估准则。
1.1 随机采样一致算法
RANSAC是一种基于统计学的迭代方法,广泛应用于计算机科学中。该算法可简要描述如下。
1)给定N个点的集合和拟合模型(直线、平面等);
2)重复3)至5);
3)选取最少的点数以确定该平面;
4)利用选取的点计算该模型的参数;
5)统计样本值个数(与模型距离小于阈值的点);
6)直到落在阈值内的样本点的个数最多。
RANSAC是一种稳定的模型拟合算法,尤其是在有扰动的情况下。如图1所示,对于大框中的平面而言,绿色框中的点是异常值,图中还存在其他一些类似的异常值。在这些异常值的影响下,经典算法之一最小二乘法不能拟合出较为准确的平面。但RANSAC算法因其良好的鲁棒性仍可以拟合出准确平面。
文中RANSAC算法用来完成直线拟合与平面拟合。平面拟合适用于2.5D传感器,直线拟合适用于实验中所有传感器,但处理稠密的2.5D数据时,手动截取直线将会导致部分误差。为了减少误差,笔者截取相邻的3条直线,其总宽度小于直线上相邻点的两倍距离。
图1 平面点云数据
1.2 均方差
均方差作为评估准则被广泛应用于多个领域,如信号处理、统计学和计算机视觉[17],常用来比较实验结果。
假设有样本点集S={(xi,yi,zi)|i=1,2,...,N}与拟合好的平面Ax+By+Cz+D=0,则MSE可由式(1),(2)表示,反映了点云拟合的误差。
在本实验中,选取MSE作为精确度评估准则有以下优点:
1)简单。计算复杂度低,无未知参数;可逐一计算,节约内存;
2)有明确的物理含义。在信号处理中,MSE常用来表示误差的能量[16]。在本实验中,MSE很好地描述了离散点和拟合模型之间的误差;
3)便于优化,MSE有很好的性质:凸性、可微性和对称性。
2 实验过程
如图2所示,本实验中的传感器包括4个2D激光测距仪(Hokuyo URG-04LX-UG01 2个,Hokuyo UST-10LX 2个),6个2.5D激光扫描仪(Asus xTion 2个,Velodyne VLP-16 1个,Velodyne HDL-32E 2个,FARO Focus X330 1个)。图3中对比了这些传感器的部分属性,可由数据手册查阅。考虑到Faro不能在线使用,在属性对比中不考虑其电源与连接方式。此外,在本实验中同一型号的传感器不止一个,可以方便测试同一型号传感器的不同个体之间是否存在差异,以降低实验的偶然性。根据传感器的测量范围,该实验可分为3个测试部分,即测量距离分别为2 m,4 m和10 m情况下的测试。所有的实验均在较暗环境下进行以保证传感器的性能不受光线影响。
图2 本次实验中用到的传感器
图3 传感器规格
2.1 原始数据采集
本实验选取一光滑的涂漆金属门作为目标平面,如图4所示,我们将传感器置于距目标平面两米处,且在距离不变的情况下,改变入射角(即图4中入射激光与平面的夹角θ)。在每次测试中,固定测量距离,分别在入射角θ为 45°、60°和 90°时进行实验。在收集数据时,利用已有机器人操作系统(ROS)1的优势,使用rosbag命令记录原始数据。
图4 实验装置
2.2 模型数据提取
原始数据类型为ROS中的sensor_msgs/PointCloud2,为了使大部分软件可以处理该数据,我们首先将其转换为PointXYZ类型的数据。PointXYZ是坐标(x,y,z)的三元集,在二维情况下,z=0。其次,利用CloudCompare软件来分割模型。CloudCompare是专门用于三维点云数据处理和分析的开源免费软件。
2.3 模型拟合
在初步手动提取模型所需的传感器数据后,模型拟合被极大简化了,可利用点云库(PCL)3来完成模型拟合。在拟合的过程中,利用RANSAC算法来确定模型参数。一旦参数确定,即可以计算离散点到拟合模型的距离,进而计算均方差并进行比较。
3 结果与分析
考虑到传感器数据的不同,本文对所有的传感器都进行直线拟合,仅对2.5D传感器(Kinect,Velodyne和Faro)进行平面拟合。根据传感器的有效测量范围,所有传感器都进行2 m和4 m测试,仅对Velodyne和Faro作10 m测试。
3.1 直线拟合结果
每个传感器总共收集九组扫描数据(3个不同距离下的3个不同角度),处理后比较均方差。需要说明的是,Faro有4种不同的扫描质量设置(最低1x,最高4x),此时分辨率均配置为最高分辨率(即一个完整的扫描有7亿点),但我们用到的只是场景中和模型相关的点。在下文分析中,Hokuyo URG-04LXUG01简写为 04LX,Hokuyo UST-10LX简写为10LX。若同一型号的传感器不止一个,则在名字后加上编号。
表1 2 m测试直线拟合结果
表1至3为不同距离下各传感器直线拟合测试的结果。从这些表中可看出,在同一测量距离下,每个传感器的精度在不同角度下基本相同。同一类型传感器的不同个体之间区别不大。根据拟合效果降序排列,依次为Faro,Velodyne HDL-32E,Hokuyo测距仪,Velodyne VLP-16和Kinect。需要说明的是,Faro扫描仪无法实时扫描,完成依次扫描大约需要几分钟;其他传感器均可实时返回数据,且每次扫描只需几毫秒。通过表1和表2对比发现,04LX和Kinect在4 m测试中均方差远大于2 m测试的情况,查阅图3可知,这两个传感器的量程均在4 m左右,此时传感器的性能较差。
表2 4 m测试直线拟合结果
表3 10 m测试直线拟合结果
3.2 平面拟合结果
由于2D传感器的返回结果无法构成平面,仅对2.5D传感器进行平面拟合分析。
表4到6为不同距离下各传感器平面拟合的结果。在2 m、4 m和10 m测试中,Faro和Velodyne的平面拟合均方差都十分稳定,其中Faro的拟合均方差远小于Velodyne。在Velodyne的两个不同型号中,HDL-32E的表现略胜一筹,但VLP-16的拟合均方差也在可接受范围内。与直线拟合测试中相似的情况是,Kinect在4 m测试中的均方差都远大于2 m测试中的均方差,由此可见,虽然官方给出的Kinect量程为4 m,但是在4 m处Kinect的精度下降较多,不适合作精确测量。
针对Faro的大量程特点,本文将覆纸平板作为目标平面,进行了71米测试。结果如表7所示,拟合均方差与入射夹角有关,当夹角越小时,拟合均方差越大;当扫描质量设置越高时,拟合均方差越小,但所需的扫描时间越长,设扫描质量为1x是所需要的扫描时间为1,则2x,3x,4x所需的扫描时间分别为1.78,3.32,6.41。
表4 2 m测试平面拟合结果
表5 4 m测试平面拟合结果
表6 10 m测试平面拟合结果
表7 Faro远距离平面拟合结果
4 结论
本文采用RANSAC算法来拟合由不同传感器采集的点云的线性和平面模型,通过计算样本点与模型之间的均方误差来表示每次扫描的精度。每个传感器的精度随着距离的增加而下降,尤其是当距离接近传感器的量程时。
总的来说,实验结果表明,当距离不超过10 m时,精度与入射角之间没有明显联系,被测试的传感器在其量程范围内均具有较高精度。在实验距离为71 m的条件下对Faro进行测试时,很明显可以发现,角度对均方差有一定的影响,且当入射角越小时,均方差越大,传感器精度越低。
此外,不同的传感器在其量程内具有不同的精度。结果表明,Faro扫描仪的精度最高,其次是Velodyne、Hokuyo和 Kinect。然而,Faro的扫描时间最长,不能用作实时传感器。在实际使用中,通常将Faro的扫描数据作为真实值,在选择其他激光测距仪时,通常需要综合考虑其价格以及适用量程。
参考文献:
[1]李捐.基于单目视觉的移动机器人SLAM问题的研究[D].哈尔滨:哈尔滨工业大学,2013.
[2]解菁,高宏堂,叶孝佑,等.提高激光传感器用于现场校准装置精度的研究[J].光学技术,2012(4):398-402.
[3]房宏,于晶晶.基于激光传感器的机器人位姿跟踪[J].激光杂志,2015(10):91-94.
[4]辛菁,苟蛟龙,马晓敏,等.基于Kinect的移动机器人大视角3维V-SLAM[J].机器人,2014(5):560-568.
[5] 张露,郑顺义,杨锦锦.基于Kinect的点云精度分析[J].郑州师范教育,2015(2):51-54,96.
[6]Kaartinen H,Hyypp"A J,Kukko A,et al.Benchmarking the performance of Mobile laser scanning systems using a permanent test field[J].Sensors,2012,12(9):12814-12835.
[7]曲杨.高精度低成本激光振镜扫描3D视觉系统关键技术研究[D].哈尔滨:哈尔滨工业大学,2016.
[8]赵文.3D非扫描激光雷达成像性能及距离估计技术研究[D].北京:北京理工大学,2014.
[9]赵文,韩绍坤.3D非扫描成像激光雷达距离精度的Cramer-Rao下限[J].北京理工大学学报,2014(5):501-505,511.
[10]庞亚军.激光3D视觉系统高灵敏度信号检测高精度时间测量技术研究[D].哈尔滨:哈尔滨工业大学,2013.
[11]程健.基于三维激光雷达的实时目标检测[D].杭州:浙江大学,2014.
[12]Venterea R T,Spokas K A,Baker J M.Accuracy and precision analysis of chamber-based nitrous oxide gas flux estimates[J].Soil Science Society of AmericaJournal,2009,73(4):1087-1093.
[13]陈汉清,王乐洋.点云数据平面拟合的加权总体最小二乘方法[J].工程勘察,2015(11):59-63,69.
[14]李孟迪,蒋胜平,王红平.基于随机抽样一致性算法的稳健点云平面拟合方法[J].测绘科学,2015(1):102-106.
[15]苍桂华,李明峰,岳建平.以入射角定权的点云数据加权总体最小二乘平面拟合研究[J].大地测量与地球动力学,2014(3):95-98,103.
[16]叶珉吕,花向红,陈西江,等.基于正交整体最小二乘平面拟合的点云数据去噪方法研究[J].测绘通报,2013(11):37-39.