CN105652873B - 一种基于Kinect的移动机器人避障方法 - Google Patents
一种基于Kinect的移动机器人避障方法 Download PDFInfo
- Publication number
- CN105652873B CN105652873B CN201610123781.2A CN201610123781A CN105652873B CN 105652873 B CN105652873 B CN 105652873B CN 201610123781 A CN201610123781 A CN 201610123781A CN 105652873 B CN105652873 B CN 105652873B
- Authority
- CN
- China
- Prior art keywords
- barrier
- robot
- class
- point
- kinect
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 230000004888 barrier function Effects 0.000 claims abstract description 181
- 238000012545 processing Methods 0.000 claims abstract description 7
- 230000033001 locomotion Effects 0.000 claims description 22
- 230000011218 segmentation Effects 0.000 claims description 8
- 230000010355 oscillation Effects 0.000 claims description 6
- 208000010877 cognitive disease Diseases 0.000 claims description 5
- 230000000007 visual effect Effects 0.000 claims description 5
- 238000004891 communication Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 4
- 238000000605 extraction Methods 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 3
- 230000000694 effects Effects 0.000 claims description 2
- 230000007613 environmental effect Effects 0.000 abstract description 8
- 230000007547 defect Effects 0.000 abstract description 5
- 238000005381 potential energy Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 4
- 239000000969 carrier Substances 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
Abstract
本发明公开一种基于Kinect的移动机器人避障方法,在室内环境中,通过Kinect传感器获取环境信息,通过对深度信息的处理识别出障碍物特征,分离出不同障碍物,并实现对障碍物尺寸的估计和对特殊障碍物的识别,根据障碍物信息确定对应的障碍物场景,从而确定对应的避障策略,并结合人工势场法,为未知室内环境中智能移动机器人的实时避障提供了一种适应性强、实时性好、路径较为平滑的解决方案。本发明提高了对环境信息的掌握,因而适用于更多室内场景,同时,结合人工势场法进行避障,利用了人工势场法的优点并通过环境信息解决了一些人工势场法存在缺陷的情况。
Description
技术领域
本发明涉及移动机器人技术领域,更具体地,涉及一种基于Kinect的移动机器人避障方法。
背景技术
智能移动机器人技术是机器人学中的一个重要分支,是一项有着广阔应用前景的高新技术,它在工业自动化、军事、农业、建筑、医疗、家居等诸多领域均有广泛的应用。在智能车的众多功能中,避障是最基础、最低层次的功能,只有机器人能够在环境中自主行走,其他高级功能才能够被安全的加入系统。在移动机器人避障中,室内环境中的障碍物规避是其中一个重要课题。移动机器人在室内行走时,可能遇到的障碍物场景很多,如桌子、椅子、门口、墙壁、楼梯、走廊、吊灯、柜子等等,目前,对于适用于多个场景的未知环境机器人自主导航还没有有效的解决方案。
识别出障碍物特征后必须选择合适的避障策略使得移动机器人能够实时有效的避开障碍物。在众多局部路径规划算法中,人工势场法由于其实现简单、实时性好、不需要预先知道障碍物信息、避障路径比较平滑等优点而得到广泛应用。人工势场法的基本原理是把移动机器人在环境中的运动视为一种在抽象的人造受力场中的运动,目标点对移动机器人有“吸引力”,引力大小随二者间距离减小而减小,一定范围内的障碍物对移动机器人有“排斥力”,斥力大小随二者间距离减小而增大,最后通过合力来控制移动机器人的运动,其目标是使移动机器人能够远离障碍到达目标点。人工势场法的主要缺陷在于复杂场景中或某些特殊场景下容易出现局部最小点、振荡等问题,导致避障失败。
发明内容
本发明为克服上述现有技术所述的至少一种缺陷,提供一种基于Kinect的移动机器人避障方法。为未知室内环境中智能移动机器人的实时避障提供了一种适应性强、实时性好、路径较为平滑的解决方案。
为解决上述技术问题,本发明的技术方案如下:
一种基于Kinect的移动机器人避障方法,所述方法包括以下步骤:
S1:假设地面大致平坦,在开始避障前,采用Kinect传感器的深度摄像头获取无障碍物的深度图,提取地面平面方程;
S2:采用Kinect传感器的深度摄像头获取机器人前方的深度图;
S3:根据获取的机器人前方的深度图,估计障碍物的尺寸并识别障碍物的类型;
S4:根据不同障碍物场景确定对应的避障策略。
在一种优选的方案中,步骤S1中,提取地面平面方程具体包括以下步骤:
S1.1:Kinect传感器的深度摄像头读取清除障碍物的深度图作为地面帧;
S1.2:使用Kinect深度摄像头标定后的内参,将深度图转化为以Kinect摄像头中心点为原点的摄像头坐标系中的点云,对点云使用RANSAC算法提取出拟合平面,即得到地面平面方程。
在一种优选的方案中,步骤S1中,所述RANSAC算法的基本步骤是:随机选择深度图中的3个点平面ax+by+cz+d=0,检查剩余的点到平面的距离是否小于预设的阈值A,这里设A为0.005m,若小于阈值A则认为该点在平面上,计算符合平面方程的点的个数;重复上一步骤,直到符合平面方程的点的个数大于预设的阈值B,即得到平面方程ax+by+cz+d=0。
在一种优选的方案中,步骤S3中,根据障碍物的特点,障碍物分为以下几类:
第1类:高于机器人的障碍物;如吊灯、桌子的桌面部分等,该类障碍物不影响机器人运动,需要被去除;
第2类:下陷障碍物,如下行的楼梯;
第3类:无法绕过去的障碍物,如正对的墙壁、转角等;
第4类:左右对立的障碍物,如去除较高部分的门口、桌子;
第5类:走廊,即一侧是墙壁的情形;
第6类:过近的障碍物,如机器人刚开始运动或由于转向或动态障碍物而导致突然出现的过近障碍物;
第7类:其他普通障碍物,如椅子、垃圾桶、柜子等。
在一种优选的方案中,步骤S3中,识别障碍物类型的具体方法包括以下步骤:
S3.1:识别第6类障碍物:计算有效点占比τa=有效点个数/(640*480),若τa<某一常数a,即点云中有效点过少,这可能是机器人刚开始运动或转向时突然遇到过近的障碍物,导致不在机器人可视范围内的点过多,即判断为第6类障碍物,此时机器人应停止运动;
S3.2:识别第1类、第2类障碍物:在机器人开始运动后,每次获取深度图后,转化为点云并计算各点到地面平面间距离h1,去除h1<0.08m的点即地面点,机器人高度约为0.42m,则去除h1>0.5m的障碍物即第1类障碍物,对于第2类障碍物,h1>0.08m,可直接当作普通障碍物处理;
S3.3:识别第5类障碍物:对剩余点云使用RANSAC算法提取平面,计算内点占比τb=平面内点个数/点云总个数,若τb>某一常数b,且获得的平面法向量与地面平面法向量大致正交(夹角与90°相差小于一定范围),则认为当前障碍物为一面墙壁,即判断为第5类障碍物;
S3.4聚类分割并识别第3类、第4类障碍物:聚类分割的基本原理是通过体积生长过程,对剩余点云进行分组,将与相邻集群之间距离小于预设的阈值C的点组成一类,使得同一类中不能分出更多个小的聚类,且两个不同聚类之间的最小距离大于该阈值;该过程的主要目的是保证同一物体不会被分为多个聚类,同时相距较近的物体合为一个聚类,从而减少障碍物的个数,简化计算,更重要的是,之后计算避障速度时不需要考虑两障碍物之间的距离是否能够通过,从而解决了左右对立的障碍物情形下人工势场法出现问题的情况。对于每个聚类,计算出其最左边、最右边和最近的点来代表该聚类;
当聚类个数为1时,根据障碍物的左右边界计算障碍物横向宽度,判断是否为第3类障碍物,若是,则判断聚类中具有最小深度的点在机器人的左边还是右边,使机器人向最小深度更大的方向转向;
当聚类个数为2时,判断是否左边障碍物的最右边界点在机器人的左边且右边障碍物的最左边界点在机器人的右边,若是,则认为是第4类障碍物;以以上两个边界点作为障碍物点,二者的中点作为目标点,使用人工势场法计算机器人避障速度;
S3.5:识别第7类障碍物:若聚类分割后判断不属于第3类或第4类障碍物,则属于第7类障碍物,使用人工势场法计算避障速度,之后将机器人的水平速度vx、纵向速度vz和自旋速度vr依次使用串口通信传输给机器人,然后进入下一次计算。
在一种优选的方案中,步骤S3.3中,识别到第5类障碍物时,计算墙壁法向量与摄像头坐标系中x轴的夹角α,α∈[0°,90°],设置机器人的自旋速度vr=±k*sinα,其中k为一个常数,当墙壁在机器人右侧时vr取负号;当α=0°时,计算墙壁与y-z平面间距离d,若d<某一常数dm,则令水平速度即左右速度vx=±k,当墙壁在机器人右侧时取负号,否则令纵向速度即前进速度vz=k;从而使得机器人能够旋转至与墙壁平行后与墙壁保持一定距离沿墙行走;若τb≤b,则进入下一步继续处理。
在一种优选的方案中,步骤S4中,根据不同障碍物场景采用改进的人工势场法确定避障策略,其具体方法为:
(1)对于U型障碍物,采用向最小深度更大的方向转向的方法解决局部最小点问题,对于左右对立的障碍物,由于聚类时已经将机器人不能通过的位置进行融合,因此不需要考虑是否能够通过,而只需要考虑左右障碍物的边界,保证能够有效从二者中间通过;
(2)局部极小点和振荡问题往往是由于每个障碍物均被单独处理,而没有考虑障碍物的整体分布情况而导致,因而采用对象分组的方法,对相距较近的障碍物分为一组,将同一组障碍物当作一个虚拟的障碍物来进行处理,这通过障碍物检测部分的聚类方法来实现;
(3)对于障碍物和机器人的尺寸,考虑使用机器人尺寸在每个障碍物外部进行扩充,并使用障碍物与机器人之间的最小距离作为斥力公式中的距离,同时在聚类时以机器人尺寸为参照来进行聚类和分离障碍物,从而保证机器人能够有效避开障碍物。
与现有技术相比,本发明技术方案的有益效果是:本发明公开一种基于Kinect的移动机器人避障方法,在室内环境中,通过Kinect传感器获取环境信息,通过对深度信息的处理识别出障碍物特征,分离出不同障碍物,并实现对障碍物尺寸的估计和对特殊障碍物的识别,根据障碍物信息确定对应的障碍物场景,从而确定对应的避障策略,并结合人工势场法,为未知室内环境中智能移动机器人的实时避障提供了一种适应性强、实时性好、路径较为平滑的解决方案。本发明提高了对环境信息的掌握,因而适用于更多室内场景,同时,结合人工势场法进行避障,利用了人工势场法的优点并通过环境信息解决了一些人工势场法存在缺陷的情况。
附图说明
图1为移动机器人的系统结构图。
图2为基于Kinect的移动机器人避障方法的流程图。
图3为移动机器人所受到的合力示意图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1
本方案中移动机器人的系统结构图如图1所示,本实施例中机器人为小车。机器人在行进过程中,通过Kinect传感器检测环境信息,由USB接口将数据传送到上位机,上位机通过获取到的深度信息进行障碍物特征提取、不同障碍物的分离和识别,根据障碍物信息确定对应的避障策略,并结合改进的人工势场法计算小车的运动速度使其能够避开障碍物,上位机通过串口通信将此速度发送给嵌入式运动控制器,运动控制器通过动作执行器控制小车的运动。另外,本方案中还加入了测速模块,测速模块通过运动执行器采集机器人全向轮的当前速度信息,发送到运动控制器,运动控制器根据测速模块提供的实时速度信息,对全向轮的运动速度进行闭环控制,从而实现对移动机器人的速度控制。本方案中采用的机器人要求能够同时自旋和移动。
如图2所示,本发明提供一种基于Kinect的移动机器人避障方法,所述方法包括以下步骤:
S1:假设地面大致平坦,在开始避障前,读取无障碍物的深度图作为地面帧,使用Kinect深度摄像头标定后的内参,将深度图转化为以Kinect摄像头中心点为原点的摄像头坐标系中的点云,对点云使用RANSAC算法提取出拟合平面,即得到地面平面方程。
RANSAC算法的基本步骤是:随机选择深度图中的3个点平面ax+by+cz+d=0,检查剩余的点到平面的距离是否小于预设的阈值A,这里设A为0.005m,若小于阈值A则认为该点在平面上,计算符合平面方程的点的个数;重复上一步骤,直到符合平面方程的点的个数大于预设的阈值B,即得到平面方程ax+by+cz+d=0。
S2:采用Kinect传感器的深度摄像头获取机器人前方的深度图;Kinect可同时获取深度图像和彩色图像,这里仅使用深度图像,Kinect的可视范围为0.8~4.0m,近景模式下,可视范围为0.4~3.5m,获取深度图像的频率为30帧/s。
S3:在小车行进过程中,根据获取的机器人前方的深度图,估计障碍物的尺寸并识别障碍物的类型;
根据障碍物的特点,障碍物分为以下几类:
第1类:高于机器人的障碍物;如吊灯、桌子的桌面部分等,该类障碍物不影响机器人运动,需要被去除;
第2类:下陷障碍物,如下行的楼梯;
第3类:无法绕过去的障碍物,如正对的墙壁、转角等;
第4类:左右对立的障碍物,如去除较高部分的门口、桌子;
第5类:走廊,即一侧是墙壁的情形;
第6类:过近的障碍物,如机器人刚开始运动或由于转向或动态障碍物而导致突然出现的过近障碍物;
第7类:其他普通障碍物,如椅子、垃圾桶、柜子等。
在具体实施过程中,步骤S3中,识别障碍物类型的具体方法包括以下步骤:
S3.1:识别第6类障碍物:计算有效点占比τa=有效点个数/(640*480),若τa<某一常数a,即点云中有效点过少,这可能是机器人刚开始运动或转向时突然遇到过近的障碍物,导致不在机器人可视范围内的点过多,即判断为第6类障碍物,此时机器人应停止运动。
S3.2:识别第1类、第2类障碍物:在机器人开始运动后,每次获取深度图后,转化为点云并计算各点到地面平面间距离h1,去除h1<0.08m的点即地面点,机器人高度约为0.42m,则去除h1>0.5m的障碍物即第1类障碍物,对于第2类障碍物,h1>0.08m,可直接当作普通障碍物处理。
S3.3:识别第5类障碍物:对剩余点云使用RANSAC算法提取平面,计算内点占比τb=平面内点个数/点云总个数,若τb>某一常数b,且获得的平面法向量与地面平面法向量大致正交(夹角与90°相差小于一定范围),则认为当前障碍物为一面墙壁,即判断为第5类障碍物;识别到第5类障碍物时,计算墙壁法向量与摄像头坐标系中x轴的夹角α,α∈[0°,90°],设置小车的自旋速度vr=±k*sinα,其中k为一个常数,当墙壁在小车右侧时vr取负号;当α=0°时,计算墙壁与y-z平面间距离d,若d<某一常数dm,则令水平速度即左右速度vx=±k,当墙壁在小车右侧时取负号,否则令纵向速度即前进速度vz=k;从而使得小车能够旋转至与墙壁平行后与墙壁保持一定距离沿墙行走;若τb≤b,则进入下一步继续处理。
在具体实施过程中,为减小数据冗余,提高处理效率,必须先对点云进行下采样滤波。使用体素化网格法,通过输入的点云数据创建一个三维体素栅格(可把体素栅格想象为微小的空间三维立方体的集合),然后在每个体素(即,三维立方体)内,用体素中所有点的重心来近似显示体素中其他点,这样该体素内所有点就用一个重心点最终表示,对于所有体素处理后得到过滤后的点云。这种方法比用体素中心来逼近的方法更慢,但它对于采样点对应曲面的表示更为准确。
由于Kinect摄像头获取到的深度图中存在稀疏的离群点即噪点,为了去除噪点,避免聚类结果出现问题,需要对剩余点云进行离群点移除滤波。计算点云中每个点到它的所有临近点的平均距离,假设得到的结果是一个高斯分布,其形状由均值和标准差决定,平均距离在标准范围(由全部距离平均值和方差定义)之外的点,被定义为离群点并从点云集中去除。
为便于避障,使用投影滤波将剩余点云映射到地面平面,并以Kinect摄像头在地面的映射作为原点,地面平面作为x-y平面进行坐标系转换获得地面平面内的占点图(occupancy map)。
S3.4:聚类分割并识别第3类、第4类障碍物:聚类分割的基本原理是通过体积生长过程,对剩余点云进行分组,将与相邻集群之间距离小于预设的阈值C的点组成一类,使得同一类中不能分出更多个小的聚类,且两个不同聚类之间的最小距离大于该阈值;该过程的主要目的是保证同一物体不会被分为多个聚类,同时相距较近的物体合为一个聚类,从而减少障碍物的个数,简化计算,更重要的是,之后计算避障速度时不需要考虑两障碍物之间的距离是否能够通过,从而解决了左右对立的障碍物情形下人工势场法出现问题的情况。对于每个聚类,计算出其最左边、最右边和最近的点来代表该聚类;
当聚类个数为1时,根据障碍物的左右边界计算障碍物横向宽度,判断是否为第3类障碍物,若是,则判断聚类中具有最小深度的点在小车的左边还是右边,使小车向最小深度更大的方向转向;
当聚类个数为2时,判断是否左边障碍物的最右边界点在小车的左边且右边障碍物的最左边界点在小车的右边,若是,则认为是第4类障碍物;以以上两个边界点作为障碍物点,二者的中点作为目标点,使用人工势场法计算小车避障速度。
S3.5:识别第7类障碍物:若聚类分割后判断不属于第3类或第4类障碍物,则属于第7类障碍物,使用人工势场法计算避障速度,之后将小车的水平速度vx、纵向速度vz和自旋速度vr依次使用串口通信传输给小车,然后进入下一次计算。
S4:根据不同障碍物场景采用改进的人工势场法确定避障策略。
人工势场法把目标看作低势能点,目标对机器人产生了一个吸引力,障碍物为高势能点,对机器人作用了一个斥力。在此环境中,就如同自然物体会从高处向低处运动一样,机器人最终能绕开高势能点到达低势能点处。机器人就是在这种引力和斥力的共同作用下进行运动的,最终躲避障碍物,到达目标位置处。
机器人坐标为q,机器人受到场的强度为U(q),目标、障碍物的坐标分别为qg、qr,那么由目标、障碍物对机器人产生的吸引势能和斥力势能分别为Uatt(q)和Urep(q),则空间中某一机器人受到的引力和斥力势能场作用为:
U(q)=Uatt(q)+Urep(q) (1)
其中:
式中ρg(q)=||q-qg||为机器人与目标点的距离;ρr(q)=min(||q-qr||)为障碍物区域与机器人间的距离的最小值;ξ,η分别为相应的引力增益系数和斥力增益系数;ρ0为正常数,表示障碍物区域可对机器人产生斥力影响的最大距离。
根据势场力是势场强度的梯度函数,则机器人受到目标的引力Fatt和障碍物的斥力Frep为:
Fatt(q)=-grad[Uatt(q)]=ξ(q-qg) (4)
式中,用qc表示障碍物区域Cobs上距离机器人位置q最近的一个坐标,即ρr(q)=||q-qc||,则▽ρ(q)是由qc指向q的单位向量,即:
机器人所受到的合力Fsum如图3,公式表达为:
Fsum(q)=Fatt(q)+Frep(q) (7)
传统的人工势场法存在以下几个主要问题:(1)当遇到左右对立的障碍物或U型障碍物时,可能出现合力为零的情况,导致机器人陷入局部最小点;(2)在复杂障碍物场景中易导致振荡,使机器人徘徊抖动;(3)未考虑机器人和障碍物的尺寸。
本发明针对传统人工势场法存在的以上问题,提出的改进方法如下:
(1)对于U型障碍物,采用向最小深度更大的方向转向的方法解决局部最小点问题,对于左右对立的障碍物,由于聚类时已经将机器人不能通过的位置进行融合,因此不需要考虑是否能够通过,而只需要考虑左右障碍物的边界,保证能够有效从二者中间通过。
(2)局部极小点和振荡问题往往是由于每个障碍物均被单独处理,而没有考虑障碍物的整体分布情况而导致,因而采用对象分组的方法,对相距较近的障碍物分为一组,将同一组障碍物当作一个虚拟的障碍物来进行处理,这通过障碍物检测部分的聚类方法来实现。
(3)对于障碍物和机器人的尺寸,考虑使用小车尺寸在每个障碍物外部进行扩充,并使用障碍物与小车之间的最小距离作为斥力公式中的距离,同时在聚类时以小车尺寸为参照来进行聚类和分离障碍物,从而保证机器人能够有效避开障碍物。
本发明在未知的室内环境中,机器人采用Kinect传感器检测障碍物,对障碍物进行特征提取、聚类和分离,并实现对障碍物尺寸的估计和对特殊障碍物的识别,根据不同障碍物场景确定对应的避障策略,并结合人工势场法,为未知室内环境中移动机器人的实时避障提供了一种适应性强、实时性好、路径较为平滑的解决方案。本发明具有以下优点:
(1)使用Kinect进行环境感知,通过对深度信息的处理识别出障碍物特征,分离出不同障碍物,并实现对障碍物尺寸的估计和对特殊障碍物的识别,根据障碍物信息来进行避障,从而保证小车在室内环境的不同场景如门口、走廊、桌子、椅子等情况下均能避障,与一般的避障和路径规划算法相比,对环境信息的掌握更全面,能适用于更多场景,且对于不同场景采用不同的方式进行避障,更接近人类的避障行为。
(2)对于不能绕开的障碍物如正对的墙壁、转角等,提出了基于最小深度的避障方式。
(3)对于桌子等可以从下面通行的障碍物,提出了去除高于小车的部分,剩余部分通过聚类为左右两个障碍物从中间通行的避障方式.
(4)将基于深度信息的障碍物检测与人工势场法相结合,保留了人工势场法实现简单、实时性好、不需要预先知道障碍物信息、避障路径比较平滑等优点的基础上,解决了一些人工势场法存在局部最小点或振荡等缺陷的情形,如U型障碍物。并将障碍物和机器人尺寸加入考虑,对人工势场法本身进行了改进。
相同或相似的标号对应相同或相似的部件;
附图中描述位置关系的用语仅用于示例性说明,不能理解为对本专利的限制;
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (3)
1.一种基于Kinect的移动机器人避障方法,其特征在于,所述方法包括以下步骤:
S1:假设地面大致平坦,在开始避障前,采用Kinect传感器的深度摄像头获取无障碍物的深度图,提取地面平面方程;
S2:采用Kinect传感器的深度摄像头获取机器人前方的深度图;
S3:根据获取的机器人前方的深度图,估计障碍物的尺寸并识别障碍物的类型;
S4:根据不同障碍物场景确定对应的避障策略;
步骤S1中,提取地面平面方程具体包括以下步骤:
S1.1:Kinect传感器的深度摄像头读取清除障碍物的深度图作为地面帧;
S1.2:使用Kinect深度摄像头标定后的内参,将深度图转化为以Kinect摄像头中心点为原点的摄像头坐标系中的点云,对点云使用RANSAC算法提取出拟合平面,即得到地面平面方程;
步骤S1.2中,所述RANSAC算法的基本步骤是:随机选择深度图中的3个点平面ax+by+cz+d=0,检查剩余的点到平面的距离是否小于预设的阈值A,这里设A为0.005m,若小于阈值A则认为该点在平面上,计算符合平面方程的点的个数;重复上一步骤,直到符合平面方程的点的个数大于预设的阈值B,即得到平面方程ax+by+cz+d=0;
步骤S3中,根据障碍物的特点,障碍物分为以下几类:
第1类:高于机器人的障碍物;
第2类:下陷障碍物;
第3类:无法绕过去的障碍物;
第4类:左右对立的障碍物;
第5类:走廊;
第6类:过近的障碍物;
第7类:其他普通障碍物;
步骤S3中,识别障碍物类型的具体方法包括以下步骤:
S3.1:识别第6类障碍物:计算有效点占比τa=有效点个数/(640*480),若τa<某一常数a,即点云中有效点过少,这是机器人刚开始运动或转向时突然遇到过近的障碍物,导致不在机器人可视范围内的点过多,即判断为第6类障碍物,此时机器人应停止运动;
S3.2:识别第1类、第2类障碍物:在机器人开始运动后,每次获取深度图后,转化为点云并计算各点到地面平面间距离h1,去除h1<0.08m的点即地面点,机器人高度为0.42m,则去除h1>0.5m的障碍物即第1类障碍物,对于第2类障碍物,h1>0.08m,可直接当作普通障碍物处理;
S3.3:识别第5类障碍物:对剩余点云使用RANSAC算法提取平面,计算内点占比τb=平面内点个数/点云总个数,若τb>某一常数b,且获得的平面法向量与地面平面法向量大致正交,即夹角与90°相差小于一定范围,则认为当前障碍物为一面墙壁,即判断为第5类障碍物;
S3.4聚类分割并识别第3类、第4类障碍物:对剩余点云进行分组,将与相邻集群之间距离小于预设的阈值C的点组成一类,使得同一类中不能分出更多个小的聚类,且两个不同聚类之间的最小距离大于该阈值;对于每个聚类,计算出其最左边、最右边和最近的点来代表该聚类;
当聚类个数为1时,根据障碍物的左右边界计算障碍物横向宽度,判断是否为第3类障碍物,若是,则判断聚类中具有最小深度的点在机器人的左边还是右边,使机器人向最小深度更大的方向转向;
当聚类个数为2时,判断是否左边障碍物的最右边界点在机器人的左边且右边障碍物的最左边界点在机器人的右边,若是,则认为是第4类障碍物;以以上两个边界点作为障碍物点,二者的中点作为目标点,使用人工势场法计算机器人避障速度;
S3.5:识别第7类障碍物:若聚类分割后判断不属于第3类或第4类障碍物,则属于第7类障碍物,使用人工势场法计算避障速度,之后将机器人的水平速度vx、纵向速度vz和自旋速度vr依次使用串口通信传输给机器人,然后进入下一次计算。
2.根据权利要求1所述的基于Kinect的移动机器人避障方法,其特征在于,步骤S3.3中,识别到第5类障碍物时,计算墙壁法向量与摄像头坐标系中x轴的夹角α,α∈[0°,90°],设置机器人的自旋速度vr=±k*sinα,其中k为一个常数,当墙壁在机器人右侧时vr取负号;当α=0°时,计算墙壁与y-z平面间距离d,若d<某一常数dm,则令水平速度即左右速度vx=±k,当墙壁在机器人右侧时取负号,否则令纵向速度即前进速度vz=k;从而使得机器人能够旋转至与墙壁平行后与墙壁保持一定距离沿墙行走;若τb≤b,则进入下一步继续处理。
3.根据权利要求1所述的基于Kinect的移动机器人避障方法,其特征在于,步骤S4中,根据不同障碍物场景采用改进的人工势场法确定避障策略,其具体方法为:
(1)对于U型障碍物,对于左右对立的障碍物,由于聚类时已经将机器人不能通过的位置进行融合,因此不需要考虑是否能够通过,而只需要考虑左右障碍物的边界,保证能够有效从二者中间通过;
(2)局部极小点和振荡问题往往是由于每个障碍物均被单独处理,而没有考虑障碍物的整体分布情况而导致,因而采用对象分组的方法,对相距较近的障碍物分为一组,将同一组障碍物当作一个虚拟的障碍物来进行处理,这通过障碍物检测部分的聚类方法来实现;
(3)对于障碍物和机器人的尺寸,考虑使用机器人尺寸在每个障碍物外部进行扩充,并使用障碍物与机器人之间的最小距离作为斥力公式中的距离,同时在聚类时以机器人尺寸为参照来进行聚类和分离障碍物,从而保证机器人能够有效避开障碍物。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610123781.2A CN105652873B (zh) | 2016-03-04 | 2016-03-04 | 一种基于Kinect的移动机器人避障方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610123781.2A CN105652873B (zh) | 2016-03-04 | 2016-03-04 | 一种基于Kinect的移动机器人避障方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105652873A CN105652873A (zh) | 2016-06-08 |
CN105652873B true CN105652873B (zh) | 2018-10-09 |
Family
ID=56492890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610123781.2A Active CN105652873B (zh) | 2016-03-04 | 2016-03-04 | 一种基于Kinect的移动机器人避障方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105652873B (zh) |
Families Citing this family (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106096559A (zh) * | 2016-06-16 | 2016-11-09 | 深圳零度智能机器人科技有限公司 | 障碍物检测方法及系统以及运动物体 |
WO2018006302A1 (zh) * | 2016-07-06 | 2018-01-11 | 尚艳燕 | 一种平衡车障碍物规避方法和装置 |
CN107622666B (zh) * | 2016-07-13 | 2020-11-24 | 尚艳燕 | 一种平衡车巡航执法方法和装置 |
CN108431715B (zh) | 2016-07-21 | 2021-08-10 | 苏州宝时得电动工具有限公司 | 自动识别前方物体的自移动设备及其识别方法 |
CN106289232B (zh) * | 2016-07-24 | 2019-06-21 | 广东大仓机器人科技有限公司 | 一种基于深度传感器的机器人避障方法 |
CN106054900B (zh) * | 2016-08-08 | 2018-11-09 | 电子科技大学 | 基于深度摄像头的机器人临时避障方法 |
CN106200645B (zh) * | 2016-08-24 | 2019-07-26 | 北京小米移动软件有限公司 | 自主机器人、控制装置和控制方法 |
WO2018090205A1 (en) * | 2016-11-15 | 2018-05-24 | SZ DJI Technology Co., Ltd. | Method and system for image-based object detection and corresponding movement adjustment maneuvers |
WO2018145183A1 (en) * | 2017-02-13 | 2018-08-16 | Vale S.A. | Multi-terrain inspection robotic device and methods for configuring and guiding the same |
CN106909149B (zh) * | 2017-03-14 | 2020-09-22 | 深圳蓝因机器人科技有限公司 | 一种深度摄像头避障的方法及装置 |
CN107127773A (zh) * | 2017-04-05 | 2017-09-05 | 武汉科技大学 | 一种机器人抓取物品的方法 |
CN106956276B (zh) * | 2017-04-05 | 2020-04-17 | 武汉科技大学 | 一种机器人、Kinect红外设备及抓取物品的系统 |
CN107092252A (zh) * | 2017-04-11 | 2017-08-25 | 杭州光珀智能科技有限公司 | 一种基于机器视觉的机器人主动避障方法及其装置 |
CN107179768B (zh) * | 2017-05-15 | 2020-01-17 | 上海木木机器人技术有限公司 | 一种障碍物识别方法及装置 |
CN107464258A (zh) * | 2017-07-28 | 2017-12-12 | 南京华捷艾米软件科技有限公司 | 一种从图像中提取三维平面的方法 |
CN107436610B (zh) * | 2017-07-31 | 2018-08-10 | 中南大学 | 一种智能室外环境的车辆及机器人运载导航方法及系统 |
CN107609520B (zh) * | 2017-09-15 | 2020-07-03 | 四川大学 | 障碍物识别方法、装置及电子设备 |
CN109753982B (zh) * | 2017-11-07 | 2021-09-03 | 北京京东乾石科技有限公司 | 障碍点检测方法、装置和计算机可读存储介质 |
CN108256430B (zh) * | 2017-12-20 | 2021-01-29 | 北京理工大学 | 障碍物信息获取方法、装置及机器人 |
CN108241373B (zh) * | 2017-12-29 | 2022-12-30 | 日照市越疆智能科技有限公司 | 避障方法和智能机器人 |
CN110659547B (zh) * | 2018-06-29 | 2023-07-14 | 比亚迪股份有限公司 | 物体识别方法、装置、车辆和计算机可读存储介质 |
CN109002039B (zh) * | 2018-07-06 | 2021-04-06 | 达闼科技(北京)有限公司 | 避障提醒方法、相关装置及计算机可读存储介质 |
CN109141364B (zh) * | 2018-08-01 | 2020-11-03 | 北京进化者机器人科技有限公司 | 障碍物检测方法、系统及机器人 |
CN109074668B (zh) * | 2018-08-02 | 2022-05-20 | 达闼机器人股份有限公司 | 路径导航方法、相关装置及计算机可读存储介质 |
CN110893617B (zh) * | 2018-09-13 | 2021-09-17 | 深圳市优必选科技有限公司 | 障碍物检测方法、装置及存储装置 |
CN109214348A (zh) * | 2018-09-19 | 2019-01-15 | 北京极智嘉科技有限公司 | 一种障碍物检测方法、装置、设备及存储介质 |
CN109324615A (zh) * | 2018-09-20 | 2019-02-12 | 深圳蓝胖子机器人有限公司 | 办公楼送货控制方法、装置以及计算机可读存储介质 |
CN109271944B (zh) | 2018-09-27 | 2021-03-12 | 百度在线网络技术(北京)有限公司 | 障碍物检测方法、装置、电子设备、车辆及存储介质 |
CN109375618A (zh) * | 2018-09-27 | 2019-02-22 | 深圳乐动机器人有限公司 | 清洁机器人的导航避障方法及终端设备 |
CN109144072A (zh) * | 2018-09-30 | 2019-01-04 | 亿嘉和科技股份有限公司 | 一种基于三维激光的机器人智能避障方法 |
CN109298715B (zh) * | 2018-11-09 | 2021-12-07 | 苏州瑞得恩光能科技有限公司 | 机器人行进控制系统及行进控制方法 |
CN109597415B (zh) * | 2018-12-06 | 2020-03-10 | 山东大学 | 基于月球表面安全着陆区的巡视器路径规划方法及系统 |
CN111354027A (zh) * | 2018-12-21 | 2020-06-30 | 沈阳新松机器人自动化股份有限公司 | 一种移动机器人的视觉避障方法 |
CN111380532B (zh) * | 2018-12-29 | 2022-06-28 | 深圳市优必选科技有限公司 | 路径规划方法、装置、终端及计算机存储介质 |
CN109645897A (zh) * | 2019-01-10 | 2019-04-19 | 轻客小觅智能科技(北京)有限公司 | 一种扫地机的障碍物检测方法及系统 |
CN110070570B (zh) * | 2019-03-20 | 2023-05-26 | 重庆邮电大学 | 一种基于深度信息的障碍物检测系统及方法 |
CN110262512B (zh) * | 2019-07-12 | 2022-03-29 | 北京机械设备研究所 | 一种移动机器人脱离u形障碍陷阱的避障方法及系统 |
CN112388622B (zh) * | 2019-08-14 | 2022-04-08 | 中国电信股份有限公司 | 信号测量控制方法、装置、机器人和可读存储介质 |
CN112445215A (zh) * | 2019-08-29 | 2021-03-05 | 阿里巴巴集团控股有限公司 | 自动导引车行驶控制方法、装置及计算机系统 |
CN110879991B (zh) * | 2019-11-26 | 2022-05-17 | 浙江光珀智能科技有限公司 | 一种障碍物识别方法及系统 |
CN110974088B (zh) * | 2019-11-29 | 2021-09-24 | 深圳市杉川机器人有限公司 | 扫地机器人控制方法、扫地机器人及存储介质 |
CN111046776B (zh) * | 2019-12-06 | 2023-06-09 | 杭州成汤科技有限公司 | 基于深度相机的移动机器人行进路径障碍物检测的方法 |
CN111340854A (zh) * | 2019-12-19 | 2020-06-26 | 南京理工大学 | 基于ICamshift算法的移动机器人目标跟踪方法 |
CN111142521A (zh) * | 2019-12-25 | 2020-05-12 | 五邑大学 | 基于vslam对不同地形的规划方法、装置和存储介质 |
WO2021134296A1 (zh) * | 2019-12-30 | 2021-07-08 | 深圳元戎启行科技有限公司 | 障碍物检测方法、装置、计算机设备和存储介质 |
CN111339996B (zh) * | 2020-03-20 | 2023-05-09 | 北京百度网讯科技有限公司 | 静态障碍物的检测方法、装置、设备及存储介质 |
CN112000123B (zh) * | 2020-07-20 | 2023-03-14 | 南京信息工程大学 | 一种旋翼无人机避障控制系统及其控制方法 |
CN112179353B (zh) * | 2020-09-30 | 2023-07-18 | 深圳银星智能集团股份有限公司 | 自移动机器人的定位方法、装置、机器人及可读存储介质 |
CN112348827B (zh) * | 2020-10-26 | 2021-07-13 | 深圳市瑞云科技有限公司 | 一种基于聚类算法的vr游戏系统和方法 |
CN112947419B (zh) * | 2021-01-27 | 2023-03-21 | 河北工业职业技术学院 | 避障方法、装置及设备 |
CN112882479B (zh) * | 2021-01-28 | 2022-11-22 | 南通大学 | 一种基于内外角累积状态的路径规划方法 |
CN113190004A (zh) * | 2021-05-07 | 2021-07-30 | 河南科技大学 | 一种基于算法融合的无人驾驶车辆避碰路径规划方法 |
CN113741467B (zh) * | 2021-09-07 | 2023-10-13 | 深圳大方智能科技有限公司 | 一种竖直墙面施工方法及施工机器人 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106651A (zh) * | 2012-07-16 | 2013-05-15 | 清华大学深圳研究生院 | 一种基于三维hough变换的获取视差平面的方法 |
CN104287946A (zh) * | 2014-10-24 | 2015-01-21 | 中国科学院计算技术研究所 | 盲人避障提示装置及方法 |
CN104390645A (zh) * | 2014-12-09 | 2015-03-04 | 重庆邮电大学 | 一种基于视觉信息的智能轮椅室内导航方法 |
CN104793620A (zh) * | 2015-04-17 | 2015-07-22 | 中国矿业大学 | 基于视觉特征捆绑和强化学习理论的避障机器人 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9117281B2 (en) * | 2011-11-02 | 2015-08-25 | Microsoft Corporation | Surface segmentation from RGB and depth images |
-
2016
- 2016-03-04 CN CN201610123781.2A patent/CN105652873B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106651A (zh) * | 2012-07-16 | 2013-05-15 | 清华大学深圳研究生院 | 一种基于三维hough变换的获取视差平面的方法 |
CN104287946A (zh) * | 2014-10-24 | 2015-01-21 | 中国科学院计算技术研究所 | 盲人避障提示装置及方法 |
CN104390645A (zh) * | 2014-12-09 | 2015-03-04 | 重庆邮电大学 | 一种基于视觉信息的智能轮椅室内导航方法 |
CN104793620A (zh) * | 2015-04-17 | 2015-07-22 | 中国矿业大学 | 基于视觉特征捆绑和强化学习理论的避障机器人 |
Non-Patent Citations (2)
Title |
---|
基于切点优化人工势场法的三维避障规划;第2-3节;《系统仿真学报》;20140831;第26卷(第8期);第2-3节 * |
基于改进人工势场法的移动机器人路径规划研究;黄兴华;《中国优秀硕士学位论文全文数据库》;20110315;第四章 * |
Also Published As
Publication number | Publication date |
---|---|
CN105652873A (zh) | 2016-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105652873B (zh) | 一种基于Kinect的移动机器人避障方法 | |
US11842500B2 (en) | Fault-tolerance to provide robust tracking for autonomous and non-autonomous positional awareness | |
US10717193B2 (en) | Artificial intelligence moving robot and control method thereof | |
US10852729B2 (en) | Moving robot and control method thereof | |
JP6288221B2 (ja) | 深層畳み込みニューラルネットワークによるレイヤベースの物体検出の強化 | |
CN110555412B (zh) | 基于rgb和点云相结合的端到端人体姿态识别方法 | |
Linder et al. | Multi-model hypothesis tracking of groups of people in RGB-D data | |
US11422566B2 (en) | Artificial intelligence robot cleaner | |
EP3447448A1 (en) | Fault-tolerance to provide robust tracking for autonomous and non-autonomous positional awareness | |
AU2017255209A1 (en) | Mobile robot and mobile robot control method | |
Eppenberger et al. | Leveraging stereo-camera data for real-time dynamic obstacle detection and tracking | |
Choi et al. | Human body orientation estimation using convolutional neural network | |
Maier et al. | Vision-based humanoid navigation using self-supervised obstacle detection | |
Tsalatsanis et al. | Vision based target tracking and collision avoidance for mobile robots | |
Hu et al. | Bayesian fusion of ceiling mounted camera and laser range finder on a mobile robot for people detection and localization | |
Zheng et al. | Fall detection and recognition based on gcn and 2d pose | |
Swadzba et al. | Dynamic 3D scene analysis for acquiring articulated scene models | |
Gupta et al. | A novel approach of human motion tracking with the mobile robotic platform | |
Zhang et al. | InstaLoc: One-shot Global Lidar Localisation in Indoor Environments through Instance Learning | |
Kimura et al. | Automatic extraction of moving objects from uav-borne monocular images using multi-view geometric constraints | |
Han et al. | Pedestrian detection and tracking for mobile service robots | |
Madokoro et al. | Unsupervised semantic indoor scene classification for robot vision based on context of features using Gist and HSV-SIFT | |
Rui et al. | Moving object tracking based on mobile robot vision | |
Kwak et al. | Human action recognition using accumulated moving information | |
Bevilacqua et al. | Occlusion robust vehicle tracking based on SOM (self-organizing map) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |