1.一种室内移动机器人视觉导航方法,其特征在于:包括以下步骤:控制移动机器人运动,通过移动机器人上的激光雷达对环境进行扫描得到点云信息,根据点云信息构建出二维平面地图,以及通过移动机器人上的深度相机对环境中物体进行扫描,获取环境中目标物体的语义信息;
选取目标物体的语义信息在二维平面地图中所对应的点云区域,利用RANSAC算法对所对应的点云区域进行分割,得到目标物体对应的点云区域的平面与圆柱面;
将目标物体对应的点云区域的平面与圆柱面进行点云信息拟合,对平面进行拟合提取后,进行拟合三维模型,将目标物体对应的点云区域的二维坐标扩展为三维坐标,得到三维物体坐标;
将三维物体坐标通过相机坐标系转化到机器人坐标系上,然后通过机器人坐标系转化到二维平面地图上,实现三维物体坐标在二维平面地图上的标定,得到增强的语义地图;
基于增强的语义地图,将目的地发送给移动机器人,使移动机器人在自身位置与目的地位置之间进行路径规划。
2.根据权利要求1所述的一种室内移动机器人视觉导航方法,其特征在于:二维平面地图构建包括:将不同时间或不同位置下获得的点云信息进行匹配,以确定点云数据之间的相对位置关系,得到点云匹配结果;
通过IMU传感器获取移动机器人的姿态信息,并根据姿态信息估计机器人在三维空间中的位置和方向,得到姿态估计结果;
根据点云匹配结果和姿态估计结果,估计移动机器人在全局坐标系下的位姿;
将所有已知位姿下获得的点云信息投影到一个全局坐标系中,并使用SLAM算法构建二维平面地图;
当移动机器人移动时,重新执行上述步骤进行更新二维平面地图。
3.根据权利要求1所述的一种室内移动机器人视觉导航方法,其特征在于:环境中目标物体的语义信息获取包括:深度相机对环境中物体进行扫描得到的物体图片通过labelme进行数据集的制作,制作完成后导入yolov5s算法中进行训练,以实现对环境中物体的检测。
4.根据权利要求1所述的一种室内移动机器人视觉导航方法,其特征在于:RANSAC算法过程包括:从原始数据集中随机选取一组样本作为初始内点集合,并根据这些样本估计出一个初始模型;
利用选定的样本拟合一个模型,并将其应用于整个数据集上;
对于每个数据点,根据预设的阈值判断其是否属于内点,如果是,则加入内点集合,否则加入外点集合;
根据当前内点集合重新估计模型参数,并记录内点数量作为评价指标,如果这个评价指标优于之前任何一次迭代,则更新当前最优模型和内点集合。
5.根据权利要求1所述的一种室内移动机器人视觉导航方法,其特征在于:点云信息拟合包括先进行平面拟合,然后进行三维模型拟合,先假设P为输入的点云,输出为最佳的形状参数BS,对于圆柱体{P*,a,r},P*是圆柱体轴线上的点,a是圆柱体的方向轴线,r是半径,从原始点云中任意选取三个点,根据三点来提取平面,该平面的方程计算如下:z=Ax+By+Cz (1)平面拟合包括以下步骤:
在点云数据集中任意选择三个点
{P1(x1,y1,z1),P2(x2,y2,z2),P3(x3,y3,z3)};
根据{P1(x1,y1,z1),P2(x2,y2,z2),P3(x3,y3,z3)}的位置确定一个平面S,由公式(2)确定参数A,B,C,统计平面S上的点的个数,设定平面厚度阈值ε为0.2,计算P中任意一点Pi到平面S的距离di,统计di<ε的点的个数,记为S的得分数;
步骤d1,将上述步骤重复K次,选择出得分最高的平面S*,其中K的计算公式为:上述公式中m指的是点云中点数的总值,n代表点云中特征点数量,由于m和n值相对较大,采用近似进行计算,得到公式如下:
3 k
1‑(1‑(1‑τ)) =Φ (5)公式中,τ指的是位于平面S*之外点所占比例的值,Φ代表经过K次采样之后平面被选中的概率;
三维模型拟合包括以下步骤:
假设圆柱表面的形状方程,圆柱面上的点到其轴线的距离恒等于半径r0,假设在圆柱面上任意取一点P,假设圆柱轴线上一点用P0(x0,y0,z0)表示,(a,b,c)为圆柱轴线向量,即:求出x0,y0,z0,a,b,c和r0这七个参数;
随机搜索圆柱面上一点的若干临近点拟成平面,计算圆柱面上的每个点的单位法向量;
将每个点的单位法向量当作点,再把这些点拟合成平面,得到平面法向量,即圆柱轴线向量初始值x0,y0,z0;
得到轴线后,对圆柱进行坐标转换,使圆柱轴线向量坐标(x0,y0,z0)变换为平行轴Z轴的向量,这样圆柱面上的点(x0,y0)的坐标就是一个平面圆形,用他们拟合圆心,即(x1,y1,z1)和半径r。
6.根据权利要求1所述的一种室内移动机器人视觉导航方法,其特征在于:目的地发送方式为用户通过wifi在用户端发送,其中用户端为PC机或者手机。
7.根据权利要求1所述的一种室内移动机器人视觉导航方法,其特征在于:移动机器人的路径规划分为全局路径规划和局部路径规划。全局路径规划算法采用A‑star算法。局部路径规划算法是TEB算法,其中,A‑star算法包括以下步骤:
将室内移动机器人的起始点记为节点Q,并将其放入Open List中,同时将环境中的已经确定为障碍物覆盖区域的节点或未知中的节点记为障碍物节点并在Closed List中存放。
在Q周围搜索寻找可以到达的节点,将代价栅格地图中代价值为0的节点补充到Open List中。
从Open List中弹出节点S,并将其加入Closed List中。同时计算各个可到达节点的f(r)值,选择f(r)值最小的节点作为室内移动机器人ROS小车下一步要移动的节点。
如果此时Open List是空的,则表示此次搜索失败,即没有找到可行的路线。如果目标节点在Closed List中,则算法搜索成功;否则将遍历当前节点r邻域内全部栅格,计算各个栅格的f(n)值并在f(n)中选择最小的节点t当作室内移动机器人ROS小车要移动的下一个节点,然后从Open List中取出当前节点后放入Closed List中。
判断节点t是否在Open List和Closed Lis之中:如果既不包含在Open List又不包含在Closed Lis中,则将其补充到Open List当中;如果在Open List之中,则将本次计算出的t节点f(n)和预先存储在Open List中时代价值fpre(r)大小进行比较,如果f(r)小于fpre(r),则用f(r)值更新已经存储的fpre(r)值,并将m节点加入Closed List之中;若在Closed List之中,则跃过此节点,返回到上一步比较并扩展其他子节点。
重复以上步骤直至搜索到目标点或者Open List为空为止;
其中,TEB算法包括以下步骤:
获取到全局路径规划算法所规划出的全局路径;
全局路径下按照等时间间隔插入w个状态点,根据各个点之间的距离与时间差算出速度,进而微分算出加速度与角速度的值;
通过约束目标函数加入约束条件,约束函数使得小车能够更好的实现避障、速度适中、转弯轨迹平滑、最快路径;
通过通用图优化算法进行轨迹优化,由于TEB算法生成的局部轨迹是由一系列离散的位姿组成的,需要将这些离散的位姿组成的轨迹通过优化过程,真正实现时间短、距离短、避障的目的;
优化完成后,输出速度指令作为运动小车运动的条件。
8.一种室内移动机器人视觉导航装置,其特征在于,包括:
二维平面地图构建和语义信息获取模块,用于控制移动机器人运动,通过移动机器人上的激光雷达对环境进行扫描得到点云信息,根据点云信息构建出二维平面地图,以及通过移动机器人上的深度相机对环境中物体进行扫描,获取环境中目标物体的语义信息;
点云信息获取与分割模块,用于选取目标物体的语义信息在二维平面地图中所对应的点云区域,利用RANSAC算法对所对应的点云区域进行分割,得到目标物体对应的点云区域的平面与圆柱面;
点云信息拟合模块,用于将目标物体对应的点云区域的平面与圆柱面进行点云信息拟合,对平面进行拟合提取后,进行拟合三维模型,将目标物体对应的点云区域的二维坐标扩展为三维坐标,得到三维物体坐标;
三维物体目标确定模块,用于将三维物体坐标通过相机坐标系转化到机器人坐标系上,然后通过机器人坐标系转化到二维平面地图上,实现三维物体坐标在二维平面地图上的标定,得到增强的语义地图;
路径规划模块,用于基于增强的语义地图,将目的地发送给移动机器人,使移动机器人在自身位置与目的地位置之间进行路径规划。
9.一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现如权利要求1‑7任一项所述室内移动机器人视觉导航方法。