李艳杰, 刘 宸, 眭 晋
目前楼梯识别方法主要分为基于视觉传感器的楼梯识别方法和基于激光传感器的楼梯识别方法。Se S等人采用基于单目视觉传感器的方法,对图像进行Gabor滤波,进而用消失点约束来寻找阶梯边缘特征直线,最后利用单一性搜索方法估计楼梯偏移角。Lu X等人采用了融合立体视觉提取的三维边缘点信息和单目视觉提取的图像边缘线的方法,获得了楼梯的结构参数,但精度有限,识别效果受环境影响比较大。与摄像头对比,激光测距仪有测量精度高、受光照条件影响小、测量范围大等优点,在楼梯参数估计方面被大量使用。Theeravithayangkura C等人采取将单线激光雷达进行旋转的方式获得稠密的三维点云,再将三维点云逐列提取线段并将线段聚合后提取楼梯的竖直平面,最后依据提取出的平行的竖直平面来构建楼梯模型,但识别效果非常依赖提取线段的断点位置,如果楼梯比较老旧、形状不够规则,无法保证成功构建楼梯模型。Oßwald S等人通过单线激光俯仰的方式获得三维点云,采用改进的线段分组方法进行平面提取,进而估计楼梯结构参数。该方法依然对于楼梯有较高的要求,只有楼梯平面比较规则时才会有较好的效果。
本文提出了一种新的楼梯结构参数估计方法,该方法精度较高、通用性强、对楼梯形状是否规则没有过高要求,可以通过后期校正处理光照等影响。
本文根据室内楼梯环境特点,考虑其他应用(如自主避障)需求,以及前人经验,应用Pointgrey FL3-GE-03S2C-C工业千兆以太网相机和Velodyne VLP-16三维激光雷达组成的测距系统采集楼梯地形环境信息。工业相机采集的数据为分辨率为640×480的彩色图片;激光雷达采集的数据为雷达坐标系下的坐标值。执行攀爬任务前,机器人位于楼梯不远处且大致正对楼梯。图1(a)为使用工业相机采集的楼梯模型图像数据。图1(b)为激光雷达采集图像的俯视图,其中紧密排列的矩形即为楼梯,特征明显,且容易用数学方法表示和计算相关参数。
图1 实验用楼梯及点云数据
如图2所示为技术方案。
图2 技术方案
定义机器人正前方为Y正轴,正右方为X正轴,正上方为Z正轴,将激光点云数据变换到机器人坐标系下表示。
将图1(b)点云数据投影到XY平面,发现在激光雷达位置高于台阶时,有相当大的概率会使激光点落到台阶水平面上,给直线的提取带来问题,所以,保留激光雷达坐标系下Z>0的激光点。
为了利用霍夫变换算法,本文将激光点云俯视图处理为二值图像。处理时要记录下每一个像素与点云数据的对应关系,目的是利用从图像中提取出的特征线段坐标选出落到台阶立面上的点云数据。
利用霍夫变换提取直线。提取出楼梯特征直线后,首先区分楼梯台阶直线和扶手直线。
如果机器人与楼梯呈一个较小的角度,为了能够融合视觉和激光传感器进行识别,必须要调整姿态到近似正对楼梯。此时,扶手直线与台阶直线的斜率乘积近似为-1,则提取出的直线可用斜率的正负区分为2组。根据直线几何关系挑选出特征直线,进而估算出机器人相对楼梯的位置,并调整机器人位姿,使其正对楼梯。
当机器人正对楼梯,将提取出的直线根据斜率绝对值大小分为2组,各组结合斜率、相邻直线间距离等信息去除干扰直线并确定特征直线。挑选出与各直线对应的点云,根据各直线对应的点云在机器人坐标系中的坐标,即可计算出楼梯的宽度和深度。
通过相机与激光雷达进行联合标定,确定了点云坐标系与图像坐标系的映射关系,通过计算获得激光点云映射到图像坐标系中的坐标,点云直线的实际距离可用激光点云数据计算得出,台阶高度根据映射到图像中的点云直线距离与台阶边缘直线距离的比例关系计算,如图3所示。
图3 点云直线与台阶边缘直线比例关系示意
图4 台阶点云三维图
由于基于图像信息进行结构参数确定的效果受光照条件、边缘和特征提取效果等因素影响较大,并不一定能够准确估计出结构参数,所以,在攀爬楼梯过程中要对台阶高度进行校正。本文采用了GNSS组合惯导系统NV-GI310实时获得机器人的运动信息。该传感器在室外和室内条件可保持高精度数据输出。利用机器人的俯仰角,根据直角三角形的性质进行台阶高度校正。
机器人在逐渐由摆臂引导到楼梯上到完全脱离地面的时间内,俯仰角随时间增加,直到完全脱离地面,俯仰角趋于稳定,如图5所示(图中由于传感器安装问题,机器人俯仰角为传感器测量值的相反数。横坐标长度不随着时间的增加而增加,只显示固定时间内的俯仰角变化情况。下图为上图的延续,其中,上图横坐标为42 s处的点与下图横坐标为8 s的点为同一点)。
图5 俯仰角变化曲线
如图6所示,W为采用文中方法获得的台阶宽度,α为机器人攀爬过程中的俯仰角增量,台阶高度h为
h=W·tanα
(1)
图6 台阶高度校正几何示意
此楼梯所有结构参数都确定完毕,攀爬过程中可根据参数自主进行构型优化,改变重心,增加攀爬稳定性。
在如图7所示无人平台上进行了测试,传感器系统包括Pointgrey FL3-GE-03S2C-C工业千兆以太网相机、Velodyne VLP—16三维激光雷达和NV-GI310组合惯导系统,搭载平台为中科院沈阳自动化研究所研发的“单人携带型”履腿复合式机器人。该系统中激光雷达共有16个激光束,垂直分辨率为0.2°,水平分辨率为0.1°~0.4°,最远探测距离为100 m并且能保证典型距离下误差在±3 cm以内。相机分辨率为640×480,镜头为焦距4 mm的工业低畸变镜头。组合惯导系统水平姿态精度保持在0.05°以内。对前文介绍过的试验楼梯进行了不同距离的场景下进行了测试。
图7 试验无人平台
图8(a)为经过图像处理后,提取出的特征直线。图8(b)为点云直线映射到可见光图像中。
图8 数据处理过程
表1 为机器人正对楼梯,在不同距离下的测试结果。
表1 不同距离下的结构参数测量结果及误差 m
由于机器人自身结构问题,距离楼梯距离需大于等于0.4 m。可以看出,扶手距离平均误差为0.023 18 m,最大误差为0.035 6 m;台阶宽度平均误差为0.017 71 m,最大误差为0.032 2 m;台阶高度平均误差为0.018 78 m,最大误差为0.021 8 m。表中表明的扶手距离和台阶宽度的测量值普遍大于实际值(台阶宽度为0.281 0 m;台阶高度为0.162 3 m;楼梯扶手距离为0.673 2 m),而不是在实际值附近上下摆动,经分析认为是由楼梯模型平面度不够或激光雷达测量误差引起的,如图8(a)所示,点云图像提取出的边缘是一个包围住了特征直线的轮廓,在此基础上进行特征提取就只能在轮廓上进行,这必然会带来误差,误差的大小受模型平面度和激光测量误差影响;而台阶高度测量值则普遍小于实际值的情况,经分析,主要原因是模型中台阶边缘靠下约0.02 m处有一个由不同木板贴合出现的规则的直线边缘,造成了伪楼梯边缘的产生。
由于台阶高度、宽度精度在0.02 m左右,扶手距离精度在0.023 m左右,可以满足履腿复合式机器人自主攀爬楼梯需要的结构参数精度要求。
本文提出了一种基于视觉和激光传感器的楼梯目标检测与结构参数确定方法,能够可靠、快速地识别楼梯目标并获得楼梯的结构参数,为履带式机器人自主安全通过楼梯提供了有效参考。方法中结合传感器系统采用了将三维点云作为图像的处理方法,有一定创新性。
参考文献:
[1] Se S,Brady M.Vision-based detection of staircases[C]∥Proceedings of the Fourth Asian Conference on Computer Vision,Taipei:Springer,2000:535-540.
[2] Lu X,Manduchi R.Detection and localization of curbs and stairways using stereo vision[C]∥Proceedings of the 2005 IEEE International Conference on Robotics and Automation,Barcelona,Spain:IEEE,2005:4648-4654.
[3] 朱万彬,钟 俊,莫仁芸.激光位移传感器在角度测量中的应用[J].传感器与微系统,2010,29(6)131-133.
[4] 曹 鹏,尹文庆,吴林华,等.基于激光传感器的稻种轮廓形状测量方法研究[J].传感器与微系统,2017,36(3):29-32.
[5] Theeravithayangkura C,Takubo T,Mae Y,et al.Stair recognition of with laser range scanning by limb mechanism robot ‘ASTERISK’[C]∥Proceedings of IEEE International Conference on Robotics and biomimetics,Bangkok,Thailand:IEEE,2009:915-920.
[6] Oßwald S,Gutmann J S,Hornung A,et al.From 3D point clouds to climbing stairs: A comparision of plane segmentation approaches for humanoids[C]∥The 11th IEEE/RAS International Conference on Humanoid Robots,Bled,Slovenia:IEEE,2011:93-98.