基于多线激光雷达的圆柱面检测

2020-07-13 11:31王建华赵明绘张山甲
探测与控制学报 2020年3期
关键词:激光雷达圆柱半径

张 程,王建华,郑 翔,赵明绘,张山甲

(上海海事大学航运技术与控制工程交通运输行业重点实验室,上海 201306)

0 引言

随着对无人艇在狭窄航道、码头以及内陆河流等水面场景中的迫切应用需求的提升,无人艇现有水面环境感知能力却无法很好地应对上述水面环境的复杂性,所以如何提升无人艇水面环境感知能力已经成为研究热点,而作为其中重要一环的水面场景理解问题更是得到重点关注。在水面场景中,圆柱面外形一直是重要的结构元素,比如桥底基座、钻井平台底座、灯塔、浮标、码头揽桩和船上桅杆等。所以检测这些场景中的圆柱面是水面场景理解的线索之一。

圆柱面检测的相关研究已经开展了多年,现有圆柱面检测方法根据使用的传感器大致可以分为两类。第一类是使用三维激光扫描仪,文献[1]利用小区域点云子集的法线向量迭代计算提取属于圆柱面的潜在点集,然后通过均值漂移聚类方法,准确估计圆柱面的参数;但是其计算结果与点云规模有直接的关系,只能用于大规模点云(几十万到几百万个点之间)中检测圆柱面。文献[2]通过分层聚类方法提取出点云中的圆柱面,但是计算非常耗时,并且在点云规模较小时会导致错误的圆柱面参数计算结果。文献[3]通过利用鲁棒主成分分析完成圆柱面的分割,并且利用鲁棒LTS回归模型以及代数圆拟合计算得到圆柱面的参数;虽然该方法对于噪声和异常值具有鲁棒性,但是其需要较大规模的点云。文献[4]直接利用RANSAC对几何形状进行检测,作者说明了该方法可以应用于各种各样的点云数据并且具有较高的鲁棒性,但是并没有对相应的几何形状建立数学模型。文献[5]提出了一种新颖的方法,作者结合现实环境约束条件(如圆柱垂直于或水平于地面),将计算部分缩小在可能方向上的小部分区域,这种方法尽管降低了计算复杂度,但是对于异常值的鲁棒性不强,并且在实际应用中也会受到阻碍。

第二类是使用具有测距功能的相机(如:RGB-D相机、TOF相机等),文献[6]使用二维霍夫变换估计圆柱面大致方向,然后用三维霍夫变换同时检测圆柱面的半径与位置,虽然该方法一定程度上降低了霍夫变换在维数空间上的计算复杂性,但是需要场景中存在平面环境以及克服点云规模对于鲁棒性的影响。文献[7—9]利用一些先验知识(如圆柱体垂直于桌面),将前一种方法的计算速度提高了几个数量级。

但关于水面场景中的点云圆柱面检测,现有文献较少,这是因为国内外对于无人艇在水面场景理解方面的研究处于上升阶段有许多不足之处需要研究[10],并且原有检测方法中的点云来自于一些精密传感器(如三维激光扫描仪、全站仪、对光照敏感的测距相机等),这些传感器不是体积较大、价格昂贵就是需要相对稳定、安全的使用环境。但是水面环境下,风浪带来的晃动以及水的反光性使得在无人艇上使用上述传感器不具备现实条件,所以需要一种适用于无人艇的测距传感器。

近年来,随着技术的飞速发展,低成本、低分辨率以及具有良好适应能力的激光雷达的出现不仅提升了自主驾驶设备[11-12]的环境感知能力,也为水面场景理解问题的解决提供一条新的路径。但与上述方法使用的传感器不同的是,激光雷达产生的是稀疏、局部特征不明显且噪声较大的点云,需要一种适合激光雷达的圆柱面检测方法。所以本文针对无人艇在水面场景理解中,使用点云特征是稀疏、局部特征不明显的多线激光雷达时遇到的圆柱面检测问题,提出了基于多线激光雷达的圆柱面检测方法。

1 多线激光雷达

激光雷达(light detection and ranging, LiDAR)属于环境感知传感器的一种,由于激光本身具有单色性好、亮度高、灵敏度高等良好特性,使得激光雷达具有距离分辨率高、抗干扰能力强、体积小且对电磁干扰不敏感等环境感知的优势,所以适用于无人艇上的环境感知。多线激光雷达是按照激光扫描线数从激光雷达种类中划分出来的。

多线激光雷达主要由控制部件、多个激光发射接收器、机械旋转部件、信息处理部件等其他部分组成[12-13]。多线激光雷达接通电源后,首先多个激光发射器发射固定周期、波长的激光脉冲信号到空间中,当激光光束照射到物体时会产生反射回波信号,反射后的回波信号会被多个激光接收器接收进行光电信号转换,之后经过信息处理部件转换成三维直角坐标系下的坐标格式,完成上述的一次测距过程后,控制部件控制机械旋转部件旋转进行下一次的测距过程,直到按照设定的扫描方式完成一次扫描周期过程。由于激光发射接收器的数目、尺寸以及机械旋转部件转动速度的限制,多线激光雷达的点云会出现稀疏、局部特征不明显的特征,其具体工作原理如图1所示。

图1 激光雷达工作原理图Fig.1 LiDAR working principle

多线激光雷达通过发送、接收脉冲激光光束实现非接触距离测量和多维度扫描,测量方式主要有飞行时间测量法、干涩测量法以及三角测量法;现有多线激光雷达测量方式大都采用飞行时间测量法。飞行时间测量法的测距主要是通过激光雷达内部集成的高精度计时器记录激光发射时刻T1和接收时刻T2,两者时间差被称为飞行时间,在光速C已知的情况下,目标物的距离计算如下式:

DL=C(T2-T1)

(1)

式(1)中,T2为激光接收时刻,T1为激光发射时刻,C为光速,DL为目标物到激光雷达的距离。

2 多线激光雷达的圆柱面检测方法

2.1 圆柱面检测原理

(2)

圆柱面轴线上一点P0(x0,y0,z0)T,圆柱面轴线单位向量L(a,b,c)T和圆柱面底圆半径r0中所包含的七个参数可以唯一确定一个圆柱面。

多线激光雷达的每线激光束扫描圆柱体时,形成的点阵在圆柱面上的部分会有两个特征:

1) 由于每线激光束与圆柱面轴线方向夹角的存在,所以点阵具有明显的椭圆弧特征;

2) 由于圆柱面是沿轴线方向对称的,所以圆柱面上的点阵也具有对称特征。

所以圆柱面的七个参数,可以先从激光雷达每线形成的点阵中提取出属于圆柱面的点云子集,通过拟合在圆柱面上形成的点阵椭圆方程后,再对拟合得到的多个椭圆方程进行优化计算得到。

图2 激光雷达扫描圆柱示意图Fig.2 LiDAR scanning cylinder

2.2 圆柱面检测方法

2.2.1圆柱面提取

由于激光雷达自身以及现场环境的影响,点云数据不可避免地带有噪声,这些噪声会影响圆柱面的拟合精度,所以需要对点云数据进行降噪处理。前期实际实验验证,激光雷达的噪声类似于高斯噪声,所以本文对点阵使用移动平均滤波[15]进行降噪处理。

本文圆柱面点云的提取基于2.1节中的两个特征,从点阵中提取圆柱面上点云,提取原理如下:

(3)

(4)

式(3)、式(4)中,Pi代表第i个点属于圆柱面上的概率;Ki代表斜率的相关性;Di代表距离的相关性;ζ为归一化因子;j表示点阵中的三维点总数;φ表示点在圆柱面上的概率值;S表示提取出的点云的对称性,值越小对称性越高;g表示提取到的可能属于圆柱面上的点云的索引值;Ri表示第i个点代表的深度值;τ表示点云在圆柱面上时,计算出的S值。

2.2.2圆柱面拟合预处理

将激光雷达扫描圆柱面得到的不完整圆柱面点云数据通过RANSAC方法进行平面拟合,假设平面方程为:

F(X,Pplane)=XTPplane+d=0

(5)

式(5)中,X=(x,y,z)T为圆柱面上任意点云坐标;Pplane为平面单位法向量且Pplane=(k,m,n)T;d为原点至平面的距离。RANSAC方法依据测量点至平面距离平方和满足阈值的原则求取最佳平面方程参数Pplane和d,因此误差方程为:

ei=F(Xi,P)

(6)

对圆柱面上的点云列出误差方程,利用阈值判断,找寻满足阈值最多的点数,然后确定参数Pplane,d。

第i点在平面上的投影点的坐标(xpi,ypi,zpi)T为:

(7)

求出投影坐标后,由于点阵投影是一段三维椭圆弧,对于三维椭圆拟合其方程复杂难以有效求解,可以经过坐标转换将其转换为二维椭圆拟合。

(8)

(9)

2.2.3圆柱面拟合

由于激光雷达点阵在圆柱面上具有对称椭圆弧特征,且经过降噪之后激光雷达的噪声依旧存在,所以需要一种考虑噪声或者遮挡情况的椭圆有效拟合方法。传统方法[16]是采取基于代数距离的椭圆拟合,其问题在于将所有的拟合点都当做准确点,这将造成一定的误差。

本文利用2.1节中激光雷达形成的点阵在圆柱面上的两个特征,对传统的椭圆拟合方法进行了改进,提出了基于代数距离的最小平方短轴倾角椭圆拟合方法,并且不将所有的点都列为拟合点,其具体步骤描述如下。

1) 依据椭圆弧几何对称这一特性,利用下式随机选取拟合点:

(10)

Ax2+Bxy+Cy2+Dx+Ey+1=0

(11)

为了便于描述,我们做如下定义:

U=[A,B,C,D,E,1]T

V=[x2,xy,y2,x,y,1]T

则优化目标为:

(12)

其中,

根据拉格朗日乘子法,引入拉格朗日因子λ,构造拉格朗日函数并求导得:

VVTU=λHU

(13)

通过求解等式(13)中的广义特征值问题得到式(12)的最优解,并且根据最优解求得椭圆的几何特征参数为:椭圆中心坐标 (Xc,Yc)T, 长短半轴ac,bc,短轴倾角θ,其中θ的计算式如下:

(14)

3) 将s依次按照设定值重复执行步骤1)、步骤2),选取min|θ|2对应的椭圆系数U′=[A′,B′,C′,D′,E′,1]T作为最终的椭圆拟合结果。

对于每个点阵执行上述的步骤后,获得多组椭圆的几何特征参数,对椭圆的三维中心坐标进行奇异值分解,得到圆柱面的轴线单位向量(a,b,c)T,计算式如(15):

(15)

式(15)中,Ac为多线激光雷达的椭圆三维中心坐标构成的L1×3的矩阵,L1为激光雷达的总线数;Uc为由Ac的左奇异向量uc构成的L1×L1正交矩阵;Wc为由奇异值δ构成的L1×3对角矩阵;Vc为由Ac的右奇异向量vc构成的3×3正交矩阵;轴线单位向量(a,b,c)T取Vc的第一列向量。

圆柱面轴线上一点(x0,y0,z0)T设为某线点阵所在平面与轴线的交点,其计算式如式(16):

(16)

圆柱面底圆半径r0通过式(17)得到。

(17)

式(17)中,βi是第i线点阵所在平面的法向量与单位向量(0,0,1)T的夹角,单位是rad;bci是第i个椭圆拟合计算得到的短轴值,单位是mm。

3 仿真与实验验证

由于传感器差异以及现有检测方法使用条件的限制,所以无法通过相关方法的对比实验验证本文方法的优缺点,只能验证本文方法具有一定的有效

性和准确性。该部分首先通过仿真实验分析验证本文圆柱面检测方法的有效性;进而通过实际实验分析验证圆柱面检测方法的准确性。

3.1 仿真实验

为了验证本文方法的有效性,首先根据圆柱面方程的真值参数以及激光雷达的点云特点,模拟出真实的具有噪声的点云数据,随后不同实验条件下,通过比较用本文方法检测出来的圆柱面参数与真值参数的关系来验证方法的有效性。点云场景仿真实验过程如图3所示。

图3(a)为根据设定的圆柱面真值参数,绘制的圆柱面;图3(b)为理论上,激光雷达扫面圆柱面形成的无噪声的点云;图3(c)为在图3(b)中点云加入类似激光雷达噪声的点云数据;图3(d)为在不同试验条件下,比较使用本文方法计算出的圆柱面参数与圆柱面真值参数的关系。

3.1.1不同材质表面的影响

前期实验表明,激光雷达在不同材质的物体表面形成的点云数据,其噪声具有不一致性,为了验证本文的圆柱面检测方法在该事实下的有效性。本文通过在上述已经具有噪声的仿真圆柱面点云数据中加入均值为0的不同标准差σ的高斯噪声模拟该事实来验证方法的有效性。不同噪声的仿真实验分别进行2 000次保证实验的有效,实验使用的圆柱面真值参数为:P0(660,6 500,-360)T,L(0,0.131 1,0.991 4)T,r0=564 mm。

图3 仿真实验场景

图4(a)表示不同噪声下的圆柱面底圆半径与真值半径的差值和检测半径的标准差;图4(b)表示不同噪声下轴线上一点与真值点的欧式距离;图4(c)表示不同噪声下轴线向量与真值向量的夹角。通过表1和图4可以得知,随着高斯噪声的增加,本文方法检测出来的圆柱面结果小范围内变化。图4(a)表明虽然随着噪声的增加检测的半径值数据离散程度增加,但是检测得到的底圆半径值误差始终在5 mm内;轴线上一点与真值点的欧式距离代表着两点之间的实际距离,其值越小说明两点之间越靠近,图4(b)中的欧式距离不超过8 mm,说明轴线上一点与真值点近似于一点;轴线向量与真值向量的夹角代表两向量之间的相似程度,图4(c)中的夹角不超过0.84°说明轴线向量与真值向量近似于相同。综上所述,本文用的椭圆的拟合方法具有一定的稳定性,并且圆柱面检测方法对于不同的物体表面不具有敏感性。

图4 噪声影响变化图

表1 不同高斯噪声的圆柱面检测结果

3.1.2距离的远近影响

激光雷达与圆柱面距离的远近会带来两方面的影响,激光雷达靠近圆柱面时,每线激光束扫描圆柱面形成的椭圆弧的范围ω会减小;远离圆柱面时,其每线激光束扫描圆柱面得到的点云数Ptot将会减少;为了验证这两种变化对于检测方法的影响,通过

用Dc变化表示激光雷达与圆柱面之间的距离远近;同时也计算出点云数和椭圆弧形成的范围,研究两者对于圆柱面检测的影响。距离影响实验中,每次进行2 000次仿真实验,使用的部分真值为:L(0,0.131 1,0.991 4)T,r0=564 mm。

图5(a)表示不同距离下的圆柱面底圆半径与真值半径的差值和检测半径的标准差;图5(b)表示不同距离下轴线向量与真值向量的夹角。通过表2和图5可知,不同距离下的仿真影响实验时,检测半径值数据的离散程度大致一样,半径误差值在5 mm内;轴线向量与真值向量之间的夹角随着距离的增加而增大,说明点云数的变化相比于椭圆弧范围的变化对于检测的影响要大一些;距离的变化使得点云数Ptot和椭圆弧的范围ω相应的变化,但是因为变化关系是相反的,所以激光雷达与圆柱面两者距离范围在2.5~8.5 m时,距离的远近对圆柱面的检测影响不大。

表2 不同距离圆柱面检测结果

图5 距离影响变化图

3.1.3圆柱面底圆半径的影响

在水面场景中,不同的场景需求(如圆柱是装饰物或者是承重基座)造成了圆柱面底圆半径的多样性,所以需要研究半径Rc的大小对于圆柱面检测结果的影响。圆柱面底圆半径影响仿真实验中,每个半径的仿真实验进行2 000次,使用的圆柱面部分真值为:P0(660,2 500,-360)T,L(0,0.131 1,0.991 4)T。图6(a)表示不同半径下轴线上一点与真值点的欧式距离;图6(b)表示不同半径下轴线向量与真值向量的夹角。

图6 半径影响变化图

表3 不同半径圆柱面检测结果

通过表3和图6可以看出,随着圆柱面底圆半径的增加,检测出的圆柱面半径值与半径真值比较,误差逐渐减小;两点之间的欧式距离随着半径的增加而减小;两向量之间的夹角也随着半径的增加而减小。综上分析,圆柱面底圆半径的大小对于圆柱面的检测有着较大的影响,但即使在圆柱面底圆半径值小的圆柱的检测中,提出的方法也具有一定的有效性。

3.1.4圆柱面上部分点云无效的影响

在实际应用中,用激光雷达检测圆柱面时,会遇到圆柱面上有遮挡物或者激光雷达有几线激光束没有扫描到圆柱面上的情况,这会使得圆柱面上部分点云无效。所以需要研究Nlidar线点云无效时对圆柱面检测结果的影响。圆柱面上部分点云无效的影响实验中,每次实验进行2 000次,实验使用的圆柱面真值参数为:P0(660,6 500,-360)T,L(0,0.131 1,0.991 4)T,r0=564 mm。

表4 部分点云无效时圆柱面检测结果

图7(a)—(c)分别表示在缺失不同数目的激光雷达线束点云下,半径、轴线上一点以及轴线向量与其真值比较之间的变化。通过表4和图7可以看出,随着缺失线束数目的增加,检测出的圆柱面半径值与半径真值比较,误差稳定在6 mm范围内;轴线向量与真值向量之间的夹角以及轴线上一点与真值点的欧式距离这两者与真值的变化关系是相反的,对于检测结果来说,两者的变化在一定区域内是稳定的。综上分析,缺失一定数目的激光雷达线束点云,对于检测结果的影响小。

通过上述在不同试验条件下的仿真实验结果可以看到,本文提出的圆柱面检测方法具有一定的抗干扰性和有效性,对不完整圆柱面点云有良好的识别效果和辨识能力。

图7 点云无效影响变化图

3.2 实际实验

实际实验中的圆柱面点云来自于RS-LIDAR-16小型多线激光雷达,其测量精度为±20 mm,水平扫描角度360°,水平角度分辨率0.18°;垂直扫描角度30°,垂直角度分辨率2°,测量距离为1~150 m。图8(a)为利用实验室的无人艇“海翔”号,在学校湖边搭建的人工

圆柱形实验场景;图8(b)为由于水域管制,只能采集点云的“滴水湖”湖边圆柱形实验场景;图8(c)为在图8(b)的基础上人为加入遮挡物的场景。利用本文提出的方法对实测的三个圆柱面三次不同距离的点云进行检测,三个圆柱面部分检测结果如图9所示。9次实验计算出来的圆柱面参数结果如表5—表7所示。

图8 实际实验场景

图9 三个圆柱面部分检测结果图

表5 圆柱面1参数检测结果

表6 圆柱面2参数检测结果

表7 圆柱面3参数检测结果

圆柱1为一段直径250 mm左右的PVC水管,如图8(a)所示,圆柱1检测出的圆柱面底圆半径误差在15 mm内,因为没有实际实验场景中圆柱的实际精准数学模型,针对实际实验点云数据,本文通过查询相关文献[17—18],利用圆柱面圆度的分布评

定圆柱面的检测结果,圆柱1的3次实际实验圆度分布如图10所示。从偶然误差的几大特性分析来看:圆度的分布呈现随机性和正态性;正负圆度出现的概率大致相等,符合误差的对称性;圆度的均值大致接近0,符合误差的抵偿性。所以圆柱1的检测结果具有一定的准确性。

圆柱2为一段直径304 mm左右的钢管柱,如图8(b)所示。圆柱2检测出的圆柱面底圆半径误差在4 mm内,比圆柱1的误差小很多,因为圆柱1和圆柱2相比,不仅半径小一点并且表面光滑反光,对于激光雷达这种依靠激光检测距离的传感器有一定的干扰,符合厂家对于该款激光雷达性能特点的描述。圆柱2的圆度分析和圆柱1相同。

图10 圆柱1圆度直方分布图

图11 圆柱2圆度直方分布图

图12 圆柱3圆度直方分布图

圆柱3在圆柱2的基础上人为加入遮挡物,如图8(c)中所示,标号7代表1个线束激光点云失效的实验,标号8代表3个线束激光点云失效的实验,标号9代表4个线束激光点云失效的实验。和圆柱2三次检测结果相比,圆柱3三次检测出的圆柱面底圆半径误差虽然都在4 mm内,但是圆柱3的圆柱面底圆半径误差浮动更小,说明圆柱面上部分点云无效对于圆柱面检测的影响小;圆柱3的圆度分析和圆柱1相同。

综上所述,可以得出使用本文提出的检测方法得到的圆柱面参数结果具有一定的准确性。可以满足用于解决无人艇在水面场景理解中遇到的圆柱面检测问题。

4 结论

本文提出了基于多线激光雷达的圆柱面检测方法。该方法通过利用多线激光雷达扫描圆柱面时形成的对称椭圆弧点阵特征,建立不等式提取出属于圆柱面的点云,并且利用改进的椭圆拟合方法对经过拟合预处理的圆柱面点阵断面坐标进行二维平面椭圆拟合,然后利用拟合结果优化计算出圆柱面的参数。仿真与实验验证结果表明,本文提出的检测方法,可以使用在需要使用多线激光雷达检测圆柱面的场景中,即使圆柱面上的点云有部分失效,该方法依旧具有有效性和准确性。

猜你喜欢
激光雷达圆柱半径
环肋对耐压圆柱壳碰撞响应的影响
直击多面体的外接球的球心及半径
激光雷达实时提取甘蔗垄间导航线
圆柱的体积计算
法雷奥第二代SCALA?激光雷达
融合激光雷达与超声波数据的障碍物检测方法
Ouster发布首款全固态数字激光雷达
圆锥曲线“角度式”焦半径公式的应用
四种方法确定圆心和半径
万有引力定律应用时应分清的几个概念