基于二维激光测距仪的道路可行区域提取
基于二维激光测距仪的道路可行区域提取
作者:侯学勇;刘士荣
机器人自主导航技术吸引着众多研究机构和学者的目光,道路提取是该领域的重要研究内容之一。 道路提取是将道路的可行区域与路边非可行区域进行识别,为机器人提供安全可行的区域.在自主移动机器人系统中,主动式传感器主要有毫米波雷达和激光雷达. 毫米波雷达的优点有受天气环境的限制少、测距远、测量准确,但是扫描范围窄、体积大,对近距离障碍物的检测较为困难. 激光雷达分为单线型、多线型和面阵型等类型,其主要特点为受天气环境的影响少、精度高、功耗小等,因此能够在较复杂的环境中检测出道路的可行区域. 激光测距仪是主动非接触式的,且几乎不受外界因素影响.
国内外一些学者已针对基于激光测距仪的道路检测方法进行了一系列研究,例如: 了基于神经网络的方法进行道路的分割与跟踪. 此方法首先提取道路的高度、色彩和纹理等特征信息训练神经网络,然后进行道路的检测. 一种利用激光测距仪结合Kalman 滤波进行道路的提取与跟踪的算法,该方法适用于弯曲等各种道路. Kalman 滤波要依赖状态和观测方程,且噪声要服从正态分布,计算过程复杂,其实际应用受到限制. 提出了一种利用最大熵原理结合观测数据直接构造适合于“连续运动”目标跟踪的方法. 此方法适用于连续运动目标,具有较强的实时性,但是没有考虑预测误差对预测结果的影响.考虑了状态和误差两种变量,首先对测量的数据进行分类,并根据连续有限状态信息和误差信息,构造一组模糊中心,实时预测系统状态和误差,进而提取道路边界. 此方法有效地避免了误差的积累,也适合要求高速的系统. 根据最大熵原理,采用模糊聚类方法对每一帧数据进行分类并拟合出直线,并根据直线的位置和角度的不同提取路面. 此算法处理的效果较好,但算法较复杂,实时性难以保证。
为了快速有效地提取道路的可行区域,根据采用八邻域搜索结合高度信息对种子点进行分割的基本思想,本文提出了一种全局搜索方法及基于二维激光测距仪的夹角与高度差双阈值相结合的提取算法. 该搜索方法只针对机器人感兴趣的道路区域,减少对非道路区域的检测时间,同时采用隔行的思想减少数据点的检测,提高了系统实时性. 用该算法检测路面时,只要路边和路面具有激光测距仪能探测出的高度差,无论路边是规则的几何形状还是不规则形状,可行区域都能成功地被提取出来,道路上的障碍物也能被检测出来.
1.1道路及搭载测距仪的移动机器人模型描述
本文主要针对平坦道路,其路边一般有两种形式: 规则的台阶形状和无规则的几何形状,即跳变和渐变. 在结构化或半结构化的道路中,道路与非道路区域一般存在高度差,本文利用该特 征区分道路与非道路区域. 检测前方路面状况, 只需在每一帧激光扫描数据中检测出道路左、右边 界点及其之间的所有点,过滤冗余数据,减少数 据的搜索时间. 在机器人前方道路内区域没有障碍物的情况下,归类并提取这些点,就能检测出 机器人前方的可行区域. 当道路内存在障碍物时, 将前一帧无障碍物时的可行区域宽度作为参考, 采用双阈值思想和前方障碍物检测原理判断出障 碍物的位置及机器人安全行驶的区域.
2道路可行区域提取
2. 1八邻域搜索与全局搜索
八邻域搜索是图像处理中的一种常用的邻域搜索方法,即把搜索范围限制在以种子点( i,j ) 为中心的八邻域.八邻域搜索是一种局部搜索法,能够找出种子点邻域的局部状况,但无法反映道路的全局情况,需结合全局搜索法. 本文采用全局搜索方法:先从下到上、隔行搜索一帧数据,然后在每帧数据中从中间开始先向左、再向右搜索种子点.
2. 2路边边界检测
在向左搜索时,令 n03 是以 0 号种子点为起点、邻域 3 号点为终点的向量,n08 是以 0 号种子点 为起点、邻域 8 号点为终点的向量. 则此平面的法向量 n03 × n08 与单位向量 n0 的夹角为〈n03 × n08 , n0 〉. 设非零常量 Ti( i = 1,2) 、K T 分别表示夹角阈值和高度差阈值对于草丛等路边来说,没有一定的几何规则,相邻点间的高程变化大. 这里采用面积阈值的思想进行区别植被点与路面点,面积阈值反映的是种子点邻域的疏密情况.
2.3障碍物检测
对于平坦路面,路边边界检测的方法比较好, 但是前方出现障碍物时,则需要另外处理,否则会将障碍物误作路边. 八邻域搜索的障碍物检测如图 3 所示,β 为测距仪的倾斜角,K T 为高度差阈值. 同时考虑角度阈值 T2 和 T3 与高度差阈值KT ,其原理为算法流程如下:
① 判断是否已经采集了四帧数据,若没有,则重复①;
② 初始化阈值及测距仪的相关参数;
③ 根据先从下到上、隔行,再从每帧数据中间开始先向左、后向右的搜索思想,进行种子点( i,j )及种子点八邻域的搜索;
④ 对点( i,j) 进行中值滤波;
⑤ 计算点( i,j) 的距离矩阵、角度矩阵等;
⑥ 根据式( 8) 确定点( i,j ) 与( i,j + 1) 的局部情况判断左侧路边边界,根据式( 9) 确定点( i,j ) 与 ( i,j - 1) 的局部情况判断右侧路边边界,进而根据数组 C 中元素 1 的个数是否大于面积阈值 M 判断是否为规则路边,若没到路边则根据公式判断是否为路面上的障碍物;
⑦ 判断是否检测到右侧路边,若没有,则返回
③重新搜索;
⑧ 判断是否还有 4 帧数据,若有,则返回③重新搜索.
3实验分析
为验证本文算法的有效性,在实验室的过道上 进行实验. 采用 P3-DX 作为实验平台,该平台搭载 LMS200 型单线测距仪. 测距仪固定在机器人平台的顶端,采用略向下倾斜的方案. 测距仪的参数设定如下: 扫描角度为 0° ~ 180°,扫描间隔角度 1°,数据串口方式 RS-232,数据传输速率9. 6 kbit / s,倾斜角度( 安装) 17. 5°,D = 386 mm.阈值设定如下: K T = 20. 0 mm,T1 = 45°,T2 = 90°,T3 = 10°,M = 4.
3.1无障碍物道路的可行区域提取
该试验环境在实验室走廊内搭建而成,其中,左侧路边是砖石墙壁,右侧路边是泡沫材质的墙壁,道路上没有障碍物。由于右侧墙壁倾斜,原始数据投影到 水平面上是一条较宽的线,从无障碍物路面的提取结果可以看出,用本文的方法可以顺利地检测到路边的边界点( 水平线段) ,左侧路边规则光滑,提取的精度较高,右侧路边倾斜 不光滑,提取的轮廓效果比较明显. 本文算法处理这样环境的一帧数据需要约 4 ms 时间,能满足导航的要求. 在这种无障碍物的结构化环境下,本文的方法能够比较准确地提取出道路的左右边界, 因此也就能确定机器人的可行区域.
3. 2有障碍物道路的可行区域提取
在道路上人工设置障碍物,障碍物近靠着左侧路边,可以被看成是无规则的 路边或者是前进方向上的无规则障碍物.用本文的方法提取障碍物比较理想,比较准确地找到障碍物及路边的边界,能够确定道路的可行区域. 本文算法在检测有障碍物的这一段路面时,参考右边无障碍区域的点,进行下一个数据点的检测与归类,能够准确地检测到障碍物的位置及可行区域的形状. 当检测到障碍物,停止对同一帧道路中心左侧剩下点的检测,提高了实时性. 道路右侧比较规则,能够准确地提取到右侧路边边界,确定道路可行区域的范围. 结果表明,本文的方法能够快速有效地提取出这种半结构化环境的可行区域及障碍物.
由以上两个实验结果可见,本文算法比较准 确地检测到障碍物及路边的轮廓,从而提取出路 面上的障碍物与可行区域. 此过程不需要处理所有数据,只对机器人感兴趣区域的数据进行检测, 实时性好.
4结论
1)本文采用八邻域局部搜索和全局搜索,结合角度和高度差双阈值的方法进行道路的可行区域提取. 算法具有简单明了、可行性高、实用性好等优点.
2)本文算法能适应形状规则和不规则的路边,扩大了其使用范围,同时有效地减少了算法的等待时间和对非可行区域的检测时间,提高了系统的实时性,具有实际应用价值.
3)激光测距仪不受复杂纹理等条件的影响,扩大了算法的使用条件.
4)若使用多台激光测距仪并结合信息融合技术,则可完成前方较宽区域的环境探测.
本文章转自爱学术(aixueshu.com),如有侵权,请联系删除