文伟松, 谭 彧, 朱 凯, 梁盛好
(中国农业大学 工学院,北京 100083)
基于激光扫描的移动机器人行走环境直线检测*
文伟松, 谭 彧, 朱 凯, 梁盛好
(中国农业大学 工学院,北京 100083)
提出一种移动机器人行走环境直线检测算法;对激光传感器采集的环境信息作预处理,设计分割、提取规则将离散距离信息转化为具备明显特征的直线段序列,考虑传感器误差用最小二乘法拟合直线段;计算拟合误差作为直线分割提取的阈值自动调整条件,实现阈值自动调整。基于极坐标内直线协方差矩阵计算Mahalanobis距离,实现直线合并,不丢失环境信息同时降低其直线存储量。与传统的Split-and-Merge算法相比,解决了对分割阈值参数敏感的问题。经过实验证明:直线检测算法能够有效检测出直线特征。
移动机器人; 直线检测; 阈值
移动机器人自主导航已成为智能机器人领域研究热点,移动机器人的智能作业显著提高农业水平;农业机器人智能导航中环境特征检测是当前的研究重点,普通工作环境一般可通过直线段描述,直线段具有理解简易,存储容易的特点;当前的机器人导航技术主要有视觉导航、激光导航、GPS加惯性导航等;其中激光导航通过检测环境直线,基于卡尔曼滤波等方法实现机器人实时自定位和地图创建(SLAM)。SLAM技术的出现意味着机器人智能导航进入新阶段[1~4],通过激光测距等传感器持续获取环境特征并关联数据,得到环境的实时地图并实现实时导航,直线检测在农业机器人智能导航中尤为重要。文献[5]中论述了几种提取直线的算法,其中,IEPF算法和Split-and-Merge[6]算法在提取激光传感器数据中直线特征中性能好,但对于环境特征原始模型过多时,算法空间复杂度o(f(m))快速上升。其次,IEPF算法在提取直线过程中,对阈值敏感,单一固定的阈值可能导致提取误差超出合理值。其中,Incremental算法简单快速,但对算法内部参数值敏感;Hough变换提取直线最初用于图像处理,优势是算法稳定但对提取复杂环境直线特征效率低;Line regression算法在文献[7]中被实验验证,缺点是算法复杂;随机抽样一致性(RANSAC)算法通用性强,可同时用于提取圆弧,直线等特征,可以在存在非直线内点情况下做粗略的特征拟合,易于实现但环境特征提取精度低;最大期望(EM)算法在视觉图像中直线特征提取中广泛应用[8,9],缺点是算法的初始参数不易获得。为了降低对环境特征的存储量,有多种方法计算直线参数之间的统计学距离作为直线合并的判断条件[10,11],以实现直线合并,以快速实现对环境特征的感知与理解;有效的直线检测算法在机器人自主规划实时性方面具有重要作用[12,13]。
本文以移动机器人为研究对象,以Robopeak公司的Rplidar激光传感器获取机器人行走环境信息,考虑以上论述的算法局限性,研究一种直线检测算法,自动调整直线分割、提取的阈值,实现移动机器人行走环境直线检测。
激光传感器读取环境信息得到环境点云地图W={(ρj,θj)|j=1,…,N)},以激光传感器中心为原点坐标,其中,(ρj,θj)为对应坐标系内环境点,直线特征描述如下[14]
(1)
式中 ρj为环境点距离激光原点距离,θj为测距点相对于激光朝向夹角, -π≤αj≤π,其中环境数据预处理、分割和提取过程如图1。
图1 激光数据处理过程
2)最小二乘拟合区域包A中每个区域,求取直线拟合误差,若某条直线拟合误差超过阈值EκMax,则重新设置搜索阈值ΔκA,重复步骤⑴,直到满足直线拟合误差要求。拟合完成后得到直线特征S{T,S1,S2,…,ST},其中Sl为环境直线的五维特征向量sl(θl,θsl,θel,dl,ll,κl,bl),其中直线法向角θl、直线起始点角度θsl、终点角度θel、激光原点到直线垂线长度dl、直线长度ll、直线斜率κl和直线截距bl。
3)合并直线:提取完直线后对端点相距较近且平行的直线合并成一条直线,不丢失主要环境信息的前提下减小了环境特征存储量。
1.1 直线检测
本文中研究的算法根据环境距离数据自动调整阈值,克服IEPF算法等阈值参数值敏感的问题,并对直线段序列做合并处理减小直线存储量;环境特征提取速度直接影响机器人导航实时性,在不丢失环境主要信息同时减小环境特征数量能有效提高导航算法速度。环境直线提取如图2,以激光内部坐标原点作为图2中坐标系原点,X,Y坐标则确定了每一个环境点到激光原点几何距离。
算法实现包括环境数据点预处理、直线提取、直线拟合和直线合并四部分。首先算法在逆时针读取原始距离的同时,按照连续直线模式,线段确认模式、直线膨胀模式、转折点处理模式和分割点处理模式四种模式处理环境点与激光原点距离值Ce(e=1,…,n)。当两个相邻环境点e和e+1之间几何距离超过阈值 ,则标记e点为分割点。
1.1.1 数据点处理
从环境获取得到距离信息数据包{N,L1,L2,…,LN},激光传感器采集环境点及距离表示如图2所示,设环境点Lj与Lk之间距离djk。从第一个点L1开始计算与下一个相邻点距离,当两点之间距离小于ΔκA时,将点1存入数据包A1,依次向前计算相邻点之间距离,当环境点Lj与Lk之间距离djk。从第一个点L1开始计算与下一个相邻点距离,当两点之间距离小于ΔκA时,将点1存入数据包A1,依次向前计算相邻点之间距离,当环境点Lj与Lk之间距离djk>ΔκA时,将Lk存入一个新的数据包Ak,直到遍历结束所有环境点,按此方法将图2中所有环境点分成两个数据包A1,A2。其中Lx与Ln两点为数据包A1,A2分界点,Lx与Ln之间距离dxn>ΔκA。对激光采集的原始数据预处理之后,数据包内数据为连续直线上点,可能包含具有转折点的折线。
图2 激光传感器采集环境距离数据模型
1.1.2 直线提取
环境数据点预处理后,对数据包内环境点数据进一步处理,依次从各个数据包提取直线;设定转折点判断阈值δline。提取规则如下:
1.1.3 直线段拟合
直线提取结束后得到子数据包子Aend{(A11,A12,…)(A21,A22,…)(Ak1,Ak2,…)},每一个子数据包对应一条直线。通过整体最小二乘拟合和计算直线相关的参数得到直线的五维特征Sl(θl,θsl,θel,dl,ll,κl,bl),在拟合过程中转换成卡迪尔坐标系内坐标做运算;区域包内每个拟合点拟合误差vyl如下
(2)
得到误差方程矩阵
AδX=H+V
(3)
其中
1.1.4 直线合并
由于传感器的偶然误差,在采集环境点过程中可能丢失部分点,导致实际上连续的环境轮廓在分割结束后得到多条邻近的不同直线。故提出,在拟合结束后,对于接近平行且相距较近的直线则对其做合并处理,对直线做合并处理可在不丢失主要环境信息的条件下,减少环境特征的存储量。通过计算直线参数(ρi,θi)协方差矩阵cov(ρ,θ),基于统计学方法计算每条直线之间马氏距离,若任何两条直线间马氏距离小于给定阈值δMah,则合并两条直线,并计算得到新直线及五维特征向量Sl。直线协方差矩阵cov(ρ,θ)
(4)
由前面提取得直线及直线上的点,可得直线协方差矩阵cov(ρ,θ)各个值
(5)
(6)
(7)
其中
(8)
(9)
(10)
(11)
式中wi,wj为环境距离数据点权值,实验用激光每次采样输出环境点距离数据时也输出采样点信号质量qc,该参数由激光输出数据中解析得到;取wi=qc,wj=qc;(ρi,θi)为环境点距离及角度,(r,α)为直线参数,其中,ρ,θ可认为是两个统计学上相互独立的两个变量。
马氏距离是一种有效计算两个未知样本集的相似度的方法。与欧氏距离不同的是,它考虑到各种特性之间的联系,针对前面求取的直线参数协方差矩阵M。提取后的直线可看成是关于(ρi,θi)的样本,假设两个直线L1和L2,则两直线样本之间马氏距离D(L1,L2)
(12)
计算直线样本之间马氏距离,若样本点Li和Lj马氏距离D(Li,Lj)<δMah,则合并两个直线,得到新直线,在得到直线在极坐标表示后,同时为了直线的直观理解,将直线参数转换成直角坐标表示。
2.1 实验结果
本实验以Rplidar激光传感器在实验室走廊做实验,检测走廊拐角及一个障碍的轮廓直线。Rplidar传感器每帧得到360个数据,激光采集的数据通过无线通信发送到PC实现文中直线检测算法。图3(a)中包含了激光传感器直接采集的环境距离点,原点为激光传感器中心位置,网格分度值900 mm;L1,L2,L3,L4,L5为检测的环境直线轮廓,其中L3和L4之间连接处对应图(b)中一个墙角拐点,L5和L6之间连接处对应图(b)中另一个墙角拐点,由于激光传感器量程限制,只提取量程范围内环境数据点。表1中分析了6条直线拟合点平均误差,由拟合总误差除以直线内数据点个数。
图3 直线检测试验结果
线段序号包含点数Pi直线斜率k直线截距b拟合点平均误差SM=Ek/Pi/mmL189-1.650-37501.40L2190.08012.020.44L39-1.6301636.01.99L4250.6101454.61.56L5290.5601927.21.47L69-1.6401646.13.05
2.2 实验分析
结合图3(b),采用文中研究的移动机器人行走环境直线检测算法检测环境直线,包括直线L1,L2,L3,L4,L5,L6,各条直线相关参数如表1。其中,直线L2拟合平均误差最小,环境点最大拟合误差均在5 mm范围内。且对墙角拐弯处特征提取有效;同时采用直线合并在不丢失主要环境信息条件下降低直线段存储量。误差分析方面,从表1求得直线参数表可知,直线拟合误差均较小,也表明拟合程度高。环境数据点在卡迪尔坐标系内拟合如图4,直观得到直线L1点数最多,验证了文中研究的直线检测算法的有效性。
图4 数据点拟合结果
1)通过激光传感器采集环境距离数据,采用文中提出的直线检测算法能有效检测出直线,如图3中近距离的直线L3,L4和远距离的直线L1,通过自动调整阈值的方法能有效消除环境直线欠分割问题。
2)文中算法求出了环境特征直线在激光传感器坐标系内几何参数,为移动机器人在导航提供了环境特征,同时为移动机器人智能导航中姿态求解建提供理论基础。
[1]BaileyT,Durrant-WhyteH.Simultaneouslocalizationandmapping(SLAM):PartII[J].Robotics&AutomationMagazine,IEEE,2006,13(3):108-117.
[2]DissanayakeMWMG,NewmanP,ClarkS,etal.Asolutiontothesimultaneouslocalizationandmapbuilding(SLAM)proble-m[J].IEEETransactionsonRobotics&Automation,2001,17(3):229-241.
[3]BaileyT,NietoJ,NebotE.ConsistencyoftheFastSLAMalgorithm[C]∥IEEEInternationalConferenceonRobotics&Automation,2006:424-429.
[4]NguyenV,MartinelliA,TomatisN,etal.Acomparisonoflineextractionalgorithmsusing2Dlaserrangefinderforindoormobilerobotics[C]∥ConferenceonintelligentRobotsandSystems(IROS),2005.
[5]BorgesGA,AldonMJ.Asplit-and-mergesegmentationalgorithmforlineextractionin2Drangeimages[C]∥The15thInternationalConferenceonPattenRecognition,2000.
[6]SiadatA.Anoptimizedsegmentationmethodfora2Dlaser-scannerappliedtomobilerobotnavigation[C]∥Proceedingsofthe3rdIFACSymposiumonIntelligentComponentsandInstrumentsforControlApplications,1997.
[7]ArrasKO,SiegwartR.Featureextractionandsceneinterpretationformap-basednavigationandmapbuilding[C]∥ProceedingsoftheSymposiumonIntelligentSystemsandAdvancedManufac-turing,1997.
[8]BorgesGA,AldonMJ.Lineextractionin2Drangeimagesformobilerobotics[J].JournalofIntelligentandRoboticsSystems,2004,40:267-297.
[9] 丁克良,沈云中,欧吉坤.整体最小二乘法直线拟合[J].辽宁工程技术大学学报:自然科学版,2010(1):44-47.
[10] 严春美,吕晓荣,许云红.移动医疗服务技术研究进展与发展前景[J].传感器与微系统,2013,32(2):1-3,7.
[11] 鲍庆勇,李舜酩,沈 峘,等.自主移动机器人局部路径规划综述[J].传感器与微系统,2009,28(9):1-4,11.
[12] 赵 鹏.子母式机器人系统设计与协调控制研究[D].北京:中科院自动化研究所,2015:41-47.
谭 彧,女,通讯作者,教授,主要从事机器人技术、嵌入式技术的研究工作,E—mail:tanyu@cau.edu.cn。
Straight line detection of walking environment of mobile robot based on laser scanning*
WEN Wei-song, TAN Yu, ZHU Kai, LIANG Sheng-hao
(College of Engineering,China Agricultural University,Beijing 100083,China)
A walking environment line detection algorithm for mobile robot is proposed;preprocessing on environment information is performed,segmentation and extraction regulation to transform discrete distance information into line segments with distinct feature is designed.Fit straight line segments by least square method considering sensor errors.Compute fitting error as criteria of threshold automatic adjustment.Computing Mahalanobis distance between lines in polar coordinates,achieve line merging to reduce storage contents of line features under the circumstance of retaining all the environment information.Comparing to the Split-and-Merge algorithm,solve the problem of sensitivity of threshold parameters.It is proved by experiments that the proposed algorithm can effectively detects line features of environment.
mobile robot; straight line detection; threshold
10.13873/J.1000—9787(2017)03—0120—04
2016—04—21
国家科技支撑计划项目(2014BAD08B10—0102)
TP 242
A
1000—9787(2017)03—0120—04
文伟松(1994-),男,硕士研究生,主要研究方向为测控技术、嵌入式技术。