< br/>通信作者:13904810908@163.com < br/>
(1.哈尔滨理工大学自动化学院,黑龙江哈尔滨150080;2.中国科学院自动化研究所,北京100190)
(1.School of Automation,Harbin University of Science and Technology,Harbin 150080,China;2.Institute of Automation,Chinese Academy of Sciences,Beijing 100190,China)
computer vision;obstacles detection;obstacles avoidance;pedestrians detection;mapping
DOI: 10.6043/j.issn.0438-0479.201810008
备注
< br/>通信作者:13904810908@163.com < br/>
提出了一个主动视觉即时定位与地图构建(SLAM)系统,能够避开障碍物,预测行人运动方向并且躲避行人,同时能够在未知环境中获得有效路径和进行稀疏三维点云地图构建.该系统由机器人平台、RGB-D摄像机和双目摄像机构成.RGB-D摄像机基于RGB-D上半身探测器进行行人检测与跟踪,同时使用RGB-D摄像机进行三维地图构建.双目摄像机通过获取深度信息寻找可通行路径.该系统实现了主动地图构建并且避免了由传统方法构建的静态地图包含行人的情况.实验验证了该系统的有效性.
We present an active visual Simultaneous Localization and Mapping (SLAM) system which is capable of avoiding obstacles,predicting the direction of pedestrians and avoiding pedestrians.Simultaneously,SLAM can obtain effective paths and 3-D map in unknown environments.It consists of a robot platform,an RGB-D camera and a stereo camera.The RGB-D camera is used for 3-D mapping and pedestrian detection as well as tracking by RGB-D upper-body detectors.The stereo camera finds a passable path by leveraging the depth information.The proposed system enables active mapping and avoids the typical situations,in which people will
引言
计算机视觉在许多研究领域中发挥了独特的优势[1-4],其中视觉即时定位与地图构建(SLAM)技术是计算机视觉一个重要的应用.视觉SLAM 是目前一种流行且被广泛使用的技术,用于对未知静态或者变化
缓慢的环境进行地图构建[5-6].目前,在未知环境中大部分导航算法的运行效果欠佳,因此导航方案通常假定地图已经提前给出[7].在构建未知环境的地图时需要人工操纵机器人在环境中行走,不仅耗费人力而且缺乏智能性.因此,本文中着重于将躲避障碍物、行人检测与跟踪整合到视觉SLAM 框架中,使机器人能够实现主动构建地图的功能,而不需要人为操控机器人构建地图.
在早期关于主动视觉SLAM 的工作中,Blaer等[8]使用差分驱动机器人自动获取数据.通过在初步获取的二维地图上解决守望者路线问题(WRP)[9],建立了粗略的环境模型,随后由三维视图规划器从体素空间中获取标记点以更新和改进原始模型.Okada等[10]提出了类似的室内地图构建算法,该方法仍需要工作人员在二维地图上做进一步处理.这些方法对于地图重建虽然都是有效的,但是它们受到需要了解环境的先验知识的限制,因而在未知环境中工作效果欠佳.
Kruno等[11]提出了一个有效的二维SLAM 算法,能够在未知环境中工作(类似于文献[12-13]中所述的环境).它采用基于跳变沿采样技术[14],在“跳跃边缘”附近生成扫描位置,并重复评估是否为潜在探索区域以选择探索路标点.Meng等[15]提出了一个智能机器人系统,它能够在未知环境中进行三维建图.机器人在运行时使用传感器执行主动SLAM 算法以构建环境的立体模型(三维建图).Kim 等[16]提出了一种智能导航算法用于解决视觉SLAM 区域覆盖问题.他们均引入了感知驱动导航算法(PDN),这是一种集成的导航算法,可以使用奖励框架自动平衡探索和再访.Darko等[17]提出了一种用于绘制未知室内环境的算法,它基于主动SLAM 方法,移动机器人配备了激光传感器对周围环境进行建图,同时定位其当前位置.通过自动设置目标点来对先前未知的环境构建地图或重新访问已知的环境来提高地图精度.Moreno等[18]提出了一种视觉SLAM 方法,该方法能够在未知环境中构建地图,并且采用一种人工势场方法来躲避静态与动态障碍.Lizuka等[19]提出了一种在动态环境中导航的方法,能够实现在动态环境中定位以及躲避移动的障碍物,他们使用具有特征标记的激光雷达(LRF)来构建地图,并采用人工势场方法来躲避障碍物.这些方法克服了传统SLAM 算法的一些缺点,它可以在未知环境中进行自主建图.然而,这些算法缺乏躲避动态障碍物、应对环境中行人的策略,并且在构造地图时无法区分行人和周围环境,会把行人与环境无差别的构建到地图中.
在有关行人运动方向预测的工作中,Goldhammer等[20]提出了一种利用多项式最小二乘近似和多层感知机器人工神经网络预测行人轨迹的方法.该方法使用基于摄像头的头部跟踪作为输入数据来预测未来2.5s.Ishiguro等[21]提出了一种基于级联粒子滤波器的行人轨迹预测方案,能够对行人实时跟踪.这些方法能够有效地对行人轨迹进行预测,但是计算量大,占用资源多,与其他功能同时运行时影响程序的运行.
本文中设计了一种主动视觉SLAM 系统,提出一种实时主动三维点云地图构建方法,在该方法中,机器人能够躲避静态和动态障碍物,并预测行人的方向来躲避行人,避免传统方法中行人出现在地图中的情况.并且不需要人工操纵机器人,节省了人力,使得机器人能够自行适应新的环境.
1 主动视觉SLAM 系统描述
1.1 系统结构本文中所提出主动视觉SLAM 系统结构如图1所示,系统由3部分构成:分别为躲避障碍物、行人运动方向预测以及稀疏点云地图构建.本文中使用的移动机器人系统如图2所示.它配备了RGB-D 摄像机和双目摄像机.两者的功能相似,但是两者测量深度的原理不同,RGB-D 摄像机直接读取深度,不需要用双目计算深度,提高了可靠性.由于使用单个相机实现全部的功能运行效果欠佳,因此,本文中分别使用RGB-D摄像机和双目摄像机实现不同部分的功能.所提出的系统基于机器人操作系统(ROS)[22]框架.系统运行以避障功能驱动,通过双目摄像机获取的深度信息寻找移动方向,当深度图像中的某个纵向区域达到一定的阈值且横向宽度足够机器人通过时,则该区域所在方向即移动机器人将移动的方向.在避障过程中采用RGB-D摄像机通过RGB-D 上身探测器[23]检测行人,预测行人移动方向,躲避行人,保障行人安全.稀疏点云地图构建贯穿于整个系统运行过程中,通过RGB-D摄像机实现,通过去除与行人相关的点,以达到行人不会出现在三维地图中的目的.
1.2 躲避障碍物系统在未知环境中实现有效的运行,需要在没有先验环境信息的情况下进行有效的路径寻找.因此,在这个过程中,躲避障碍物是十分必要的,本文中提出的系统使用双目视觉获取的深度信息来避开障碍物.
当进入未知环境时,机器人通过双目摄像机获取周围环境的彩色图像和深度图像,找到可通行的路径.如图2所示,双目摄像机的安装位置约在机器人的垂直中心位置.因此,如图3(a)、(b)所示,裁剪图像的上面1/3部分和下面1/3部分来选择感兴趣区域(ROI),减少计算量并避免无关区域对障碍物检测的干扰.由于图像中存在大量噪声和双目视觉测量深度产生的误差,导致曲线变化剧烈,部分区域深度信息有误,使机器人无法选取正确的路径.如图图3(a)所示,图像中的白色盒子与相机距离较近,但与盒子对应的曲线却显示距离较远.
为了解决上述问题,采用高斯滤波算法对深度图像去除噪声,并通过等式f(x)= Σ2i=-2f(x +i)平滑曲线图4中所示的深度值f(x),其中x 表示曲线的横坐标值.当f(x)大于一定的深度值时,将该部分作为候选区域;当候选区域的宽度达到一定阈值能够确保机器(a)彩色图像通过双目摄像机获取,图像中红色点表示不可通行区域,蓝色点表示候选区域,绿色点表示可通行区域;(b)深度图像通过双目摄像机获取,与彩色图像相对应;(c)经过处理之后的区域显示结果;(d)经过高斯滤波后的深度图像.
人通过时,候选区域被选为可通行区域.因此,等式f(x)= Σ2i=-2f(x+i)忽略图像前两列和后两列像素并不影响有效路径的选择.对图像和曲线处理后的结果分别如图3(c)、(d)和图4处理后曲线所示.图4中曲线与深度图像相对应,横坐标表示深度图像中的横轴坐标值,纵坐标表示深度图像中每一列中深度的最小值.相较于处理前的效果,处理后的图像中得到的可通行区域更加准确,曲线更平滑,有助于系统稳定地运行.1.3 行人运动方向预测在机器人运动过程中,需要考虑在环境中有行人四处走动的情况.为了确保行人的安全,机器人在遇到人时应能产生适当的应对策略.例如:当机器人遇到行人时,相较于与行人向着相同的方向运动,机器人向行人行走方向相反的方向运动更加合适.在本文中提出的系统中,对行人运动的方向进行了预测并且提供了机器人相应的运动策略.
为了确定行人移动的方向,本文采用RGB-D 上身检测器检测与跟踪行人.检测器的核心是基于深度数据生成ROI区域,减少检测器的搜索空间.该检测器从人体上半身的标注中学习连续归一化深度模板,并将深度模板在多个尺度提取的深度ROI上滑动,计算归一化距离分数.该过程的输出是距离矩阵,矩阵表示模板与每个尺度的ROI重叠部分的距离.最后使用非最小值抑制使检测的结果更加精确.
为了预测行人的运动方向,使用以下等式来获取行人沿着x 轴和y 轴的分速度.根据像素坐标系与世界坐标系之间的变换关系:
其中:K 是相机的内参矩阵;T 是相机的外参矩阵;Z是从行人到相机光心的距离;Puv和Pw 分别是行人在像素坐标系和世界坐标系中的坐标.通过上述等式获得行人在世界坐标系中的坐标:
Pw =T-1K-1ZPuv . (4)
根据一段时间内x 轴和y 轴坐标之间的变化(分别为ΔXw和ΔYw )来计算沿着x 轴和y 轴的行人的速度.
vx= ΔXw/Δt, (5)
vy= ΔYw/sub>/Δt. (6)
如图5(a)所示,在相机坐标系中,把行人运动的方向分为8个方向,坐标轴箭头所指的方向表示行人运动速度的正方向.行人的运动方向可以根据vx 和vy的值来确定,根据图5(b)机器人进行相应的运动,当检测到行人的运动方向为图5(a)中的⑥⑦⑧方向时,则机器人沿着顺时针方向旋转,以实现机器人运动方向与行人运动方向相反,反之亦然,实现躲避行人的功能.
1.4 三维地图构建地图构建基于移动机器人躲避障碍物和预测行人运动方向来进行.机器人的运动策略如图6所示.机器人在移动的同时进行地图构建.在传统三维点云地图构建的过程中,无法区分人与环境,因此在地图构建完成后,行人可能会出现在地图中.在本文中,使
用上一节提到的行人检测和跟踪方法将行人从地图中去除. 本文中的地图构建方法基于ORB-SLAM2[24]算法.ORB-SLAM2是基于单目、双目和RGB-D 摄像机的SLAM 系统,包括地图重用、回环检测和重定位功能.此方法着重于建立全局一致的地图,以便在各种环境中进行可靠定位.与其他SLAM 方法的比较表明,ORB-SLAM2算法在大多数情况下精度较高.如图7所示,像素坐标系中的坐标与世界坐标系中的坐标之间存在一一对应关系.因此,在通过方程(2)~(4)构造点云图时,本文中提出的方法根据行人检测对行人框选并去除彩色图像中与行人相关的像素,从而在点云地图中避免出现行人.当行人离开原来的位置并且机器人再次到达该区域时,该区域将被重建,从而得到完整的地图.
2 实验与结果
为了评估所提出的方法,分别在数据集和真实场景中进行了实验.实验分为3部分,分别验证躲避障碍物、预测行人运动方向和三维地图构建的有效性.在实验中,使用图2 所示的EAI平台.平台配备了Kinect传感器和ZED 传感器.该平台直径406mm,高210mm,采用差分驱动方式驱动,额定负载50kg,配有5V 和12V 电源输出接口.平台后续配备了ZED传感器和Kinect传感器,其中ZED传感器用于
障碍物检测,Kinect传感器用于行人检测和三维地图构建.本文中方法通过在Ubuntu操作系统下的机器人操作系统(ROS)中实现.ROS是一个适用于机器人的开源的源操作系统,它提供了操作系统应有的服务,包括硬件抽象、底层设备控制、常用函数的实现、进程间消息传递以及包管理;它也提供用于获取、编译和跨计算机运行代码所需的工具和库函数.
在第一个实验中,地图构建方法在TUM RGB-D数据集[25]中得到了验证,数据集中包含来自RGB-D传感器的室内序列,数据分为几个类别,以评估不同纹理、照明和结构下的目标重建和SLAM 方法.图
8(a)显示ORB-SLAM2算法的结果在这个数据集上运行的结果,图8(b)显示了本文中算法在这个数据集上运行的结果.从图中可以看出,在ORB-SLAM2算法中人会出现在地图中,影响地图的可用性.通过本文中提出的方法,成功避免了人出现在地图中的情况,增加了地图的可用性.
图9显示了通过双目视觉避开障碍物的实验,实
图8 传统方法与本文中方法的对比
Fig.8 Comparisonoftraditionalpointcloudmap constructionmethodswiththemethodsinthispaper图 11显示了一个三维点云图.与前两个实验相同,实验在大厅进行.移动机器人是通过躲避障碍物功能来驱动.由于大厅中会有行人走动,所以当遇到行人时,将启用行人运动方向预测的功能.在地图构建过程中,有行人出现,但是从图 11可以看出点云图箭头方向表示机器人的运动方向.
整体完整,未出现行人存在于点云地图中的情况,验证了本文方法的有效性. 表1展示了系统各部分的处理速度,从表格中可以看出,避障部分的处理速度最快,能够达到56 帧/s的处理速度.行人方向预测部分和三维点云地图构建部分的处理速度稍慢,但是都能够实时运行.最后,系统各部分同时运行时,能够达到26帧/s的处理速度,能够实时运行.表格中数据是在i7-7700kCPU,频率4.2GHz,32GB内存,GTX1080显卡笔记本电脑条件下获得的.3 结 论
本文中提出了一个主动视觉SLAM 系统,用于躲避障碍物,并且能够同时预测行人运动方向和在未知环境中进行三维地图构建.移动机器人通过双目相机获取深度信息躲避障碍物.采用RGB-D 上身探测器检测和跟踪行人以预测行人的运动方向;机器人可以根据行人的方向避开行人.同时基于行人检测和跟踪方法避免行人出现在地图中,使构建的地图更加完整,可用性更强.最后,通过实验验证了该系统的有效性.以后,我们将扩展系统功能,弥补现有的功能缺陷,实现多智能体协作地图重建任务.
- [1] RANFTB,STILLERC.Theroleofmachinevisionfor intelligentvehicles[J].IEEE TransactionsonIntelligent Vehicles,2016,1(1):8-19.
- [2] ONITA D,VARTAN N,KADAR M,etal.Qualitycontrol inporcelainindustrybasedoncomputervisiontechniques [C]∥2018InternationalYoungEngineersForum (YEFECE).CostadaCaparica:IEEE,2018:79-84.
- [3] RODRIGUEZ-VAZQUEZ A,FERNANDEZ-BERNIJ,LENERO-BARDALLOJA,etal.Cmosvisionsensors:embeddingcomputervisionatimagingfront-ends[J].IEEE Circuits and Systems Magazine,2018,18(2):90-107.
- [4] GHYARBS,BIRAJDAR G K.Computervisionbased approachtodetectriceleafdiseasesusingtextureand colordescriptors[C]∥2017InternationalConferenceon InventiveComputingandInformatics (ICICI).Coimbatore:IEEE,2017:1074-1078.
- [5] DURRANT-WHYTE H,BAILEY T.Simultaneous localizationand mapping:part Ⅰ [J].IEEE Robotics AutomationMagazine,2006,13(2):99-110.
- [6] LEONARDJJ,DURRANT-WHYTEHF.Simultaneous mapbuildingandlocalizationforanautonomousmobile robot[C]∥IEEE/RSJInt Workshop on Intelligent RobotsandSystems.Osaka:IEEE,1991:1442-1447.
- [7] CHAVESS M,KIM A,EUSTICE R M.Opportunistic samplingbasedplanningforactivevisualslam[C]∥2014 IEEE/RSJInternationalConferenceonIntelligentRobots andSystems.Chicago:IEEE,2014:3073-3080.
- [8] BLAER P S,ALLEN P K.Dataacquisitionandview planning for 3-D modeling tasks [C]∥ IEEE/RSJ International Conference on Intelligent Robots and Systems.SanDiego:IEEE,2007:417-422.
- [9] CHIN W P,NTAFOSS.Optimum watchmanroutes[J].Information ProcessingLetters,1988,28(1):39-44.
- [10] OKADAY,MIURAJ.Explorationandobservation planningfor 3D indoor mapping [C]∥ 2015 IEEE/SICE InternationalSymposiumonSystemIntegration (SII).Nagoya:IEEE,2015:599-604.
- [11] RUNOL K ,KITANOV A,MAUROVII,etal.Fast activeslamforaccurateandcompletecoveragemapping ofunknownenvironments[C]∥InternationalConference onIntelligentAutonomousSystemspadova.Berlin:Springer,2014:415-428.
- [12] AKULOVI M,ILE A,PETROVII.Explorationand mappingofunknownpolygonalenvironmentsbasedon uncertainrangedata[J].Automatika,2011,52(2):118-131.
- [13] BORRMANN D,NCHTER A,DJAKULOVIC M,et l.Theprojectthermalmapper-thermal3D mappingof indoor environments for saving energy [J].Ifac SymposioumonRoboticControl,2012,45(22):31-38.
- [14] YAMAUCHIB.Afrontier-basedapproachforautonomous exploration[C]∥IEEE InternationalSymposium on omputationalIntelligenceinRoboticsandAutomation. onterey:IEEE,2002:146-151.
- [15] MENGZH,SUN H,QIN HL,etal.Intelligentrobotic systemforautonomousexplorationandactiveslamin unknownenvironments[C]∥IEEE/SICEInternational SymposiumonSystemIntegration.Taipei:IEEE,2017:651-656.
- [16] KIM A,EUSTICE R M.Perception-drivennavigation:activevisualslamforroboticareacoverage[C]∥IEEE InternationalConferenceonRoboticsand Automation.Karlsruhe:IEEE,2013:3196-3203.
- [17] DARKO T,SALAKA E,OSMANKOVIC D,etal.Activeslam-basedalgorithmforautonomousexploration withmobilerobot[C]∥IEEEInternationalConference onIndustrialTechnology.Seville:IEEE,2015:74-79.
- [18] MORENC A,MARCO A,CALVO H.VisualSLAM andobstacleavoidanceinrealtimefor mobilerobots navigation[C]∥InternationalConferenceonMechatronics,Electronicsand Automotive Engineering.Cuernavaca:IEEE,2015:44-49.
- [19] LIZUKA S,NAKAMURA T,SUZUKI S.Robot navigationin dynamic environment using Navigation function APF with SLAM [C]∥2014 10th France-Japan/ 8th Europe-Asia Congress on Mecatronics.Tokyo:IEEE,2015:89-92.
- [20] GOLDHAMMER M,KHLER S,DOLL K,etal.Camerabasedpedestrianpathpredictionby meansof polynomialleast-squaresapproximationand multilayerperceptronneuralnetworks[C]∥SaiIntelligentSystems Conference.London:IEEE,2016:390-399.
- [21] ISHIGURO T,MIYAMOTO R.Anefficientprediction schemefor pedestriantracking with cascade particle filter and its implementation on Cell/B.E[C]∥InternationalSymposium onIntelligentSignalProcessing andCommunicationSystems.Kanazawa,IEEE,2010:29-32.
- [22] QUIGLEY M,CONLEYK,GERKEYBP,etal.Ros:an open-sourcerobotoperatingsystem[J].ICRA Workshop onOpenSourceSoftware,2009,3:5.
- [23] JAFARIO H,MITZEL D,LEIBE B.Real-timergbd basedpeopledetectionandtrackingfor mobilerobots and head-worn cameras [C]∥IEEE International ConferenceonRoboticsand Automation.Hong Kong:IEEE,2014:5636-5643.
- [24] MUR-ARTAL R,TARDSJ D.Orb-slam2:an opensourceslamsystemformonocular,stereo,and RGB-Dcameras[J].IEEE Transactionson Robotics,2017,33(5):1255-1262.
- [25] STURM J,ENGELHARD N,ENDRES F,etal.AbenchmarkfortheevaluationofRGB-Dslamsystems[C]∥IEEE/RSJ International Conference on Intelligent RobotsandSystems.Vilamoura:IEEE,2012:573-580.