[发明专利]一种针对机器人导航的虚拟墙自动生成方法有效
申请号: | 201810047468.4 | 申请日: | 2018-01-18 |
公开(公告)号: | CN108334080B | 公开(公告)日: | 2021-01-05 |
发明(设计)人: | 庄严;王栎斐;闫飞 | 申请(专利权)人: | 大连理工大学 |
主分类号: | G05D1/02 | 分类号: | G05D1/02 |
代理公司: | 大连理工大学专利中心 21200 | 代理人: | 李晓亮;潘迅 |
地址: | 116024 辽*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供一种针对机器人导航的虚拟墙自动生成方法,属于移动机器人自主导航技术领域。该虚拟墙自动生成方法先获取障碍物密集区域的激光点;对激光点进行栅格化处理,并对栅格化后的激光点构建德洛内三角网,生成邻接矩阵;对德洛内三角网进行初始化:生成长度矩阵、属性矩阵和邻接三角形矩阵;基于虚拟墙构建算法与矩阵信息,剔除德洛内三角网中长度大于阈值的边界边,进而获取到虚拟墙的几何图形。本发明能够针对先验地图中的障碍物密集区域,自动生成将该区域包围的虚拟墙,一方面提升机器人的导航工作效率,另一方面保留障碍物密集场景中有利于定位的丰富的环境特征,可用于移动机器人非结构化场景下导航等领域。 | ||
搜索关键词: | 一种 针对 机器人 导航 虚拟 自动 生成 方法 | ||
【主权项】:
1.一种针对机器人导航的虚拟墙自动生成方法,其特征在于,该虚拟墙自动生成方法先获取障碍物密集区域的激光点;对激光点进行栅格化处理,并对栅格化后的激光点构建德洛内三角网,生成邻接矩阵;对德洛内三角网进行初始化,生成长度矩阵、属性矩阵和邻接三角形矩阵;基于虚拟墙构建算法与矩阵信息,剔除德洛内三角网中长度大于阈值的边界边,得到虚拟墙的几何图形;具体包括以下步骤:第一步,移动机器人通过SLAM算法进行360度的全局激光点云扫描,得到以原始激光点云为存储方式的先验地图;第二步,对先验地图中的障碍物密集区域进行圈选观察先验地图的密集区域,选取密集区域的中心处的某点为圆心,圆心点与O点的距离为length,夹角为θ,圆的半径为R,其中O点为激光点云原点;遍历先验地图中的原始激光点云,若当前被遍历的激光点坐标(x,y)位于圈选范围内,满足公式(1),则保留该激光点,并将保留的激光点存入局部激光点云;若当前被遍历的激光点坐标(x,y)不在圈选范围内,则直接舍弃;(x‑length×cosθ)2+(y‑length×sinθ)2<=R (1)第三步,通过栅格化对保留激光点云进行精简,得到栅格点云;第四步,对栅格点云中的点构建德洛内三角网,德洛内三角网存储采用图的邻接矩阵方式存储,采用两个数组表示图:一个一维数组存储三角网中顶点信息,,作为顶点数组;一个二维数组存储图中的边的信息,二维数组称为邻接矩阵;若德洛内三角网内有n个顶点,则存在两个数组,顶点数组为vertex[n]={v0,v1,v2,...,vn},邻接矩阵arc[n][n]为:
其中,i≤n,j≤n;E为德洛内三角网内中边的集合,(vi,vj)表示顶点vi到顶点vj的边;第五步,根据第四步得到的德洛内三角网的邻接矩阵,对德洛内三角网进行初始化,求取德洛内三角网的长度矩阵、属性矩阵和邻接三角形矩阵;定义如下:1)长度矩阵定义长度矩阵Lth[n][n],用于存储边的长度,定义为:
其中,vi的二维坐标为(xi,yi),vj的二维坐标为(xj,yj);2)属性矩阵定义属性矩阵为Pty[n][n],用于存储边的属性;根据邻接矩阵arc[n][n],对属性矩阵进行定义:若arc[i][j]=1,且只存在一个k值,满足arc[i][k]=1且arc[j][k]=1,则Pty[i][j]=1,表示(vi,vj)为边界边;若arc[i][j]=1,且存在两个k值,满足arc[i][k]=1且arc[j][k]=1,则Pty[i][j]=2,表示(vi,vj)为内部边;若arc[i][j]=0,则Pty[i][j]=0;3)邻接三角形矩阵定义邻接三角形矩阵为Adj[n][n],用于存储每条边的邻接三角形;根据邻接矩阵arc[n][n],对邻接三角形矩阵进行定义:若arc[i][j]=1,且只存在一个k值,满足arc[i][k]=1且arc[j][k]=1,则Pty[i][j]=vk,表示边(vi,vj)含有一个邻接三角形,且三角形顶点为vi,vj和vk;若arc[i][j]=1,且存在两个k值,满足arc[i][k]=1且arc[j][k]=1,存在的两个k值用m和n表示,则Pty[i][j]=vm,vn,表示边(vi,vj)含有两个邻接三角形,且三角形顶点分别为vi,vj,vm和vi,vj,vn;若arc[i][j]=0,则Pty[i][j]=0;第六步,从德洛内三角网的最外层边开始向内不断地删去超过长度限制R的边,最终得到虚拟墙的几何图形;通过如下步骤进行虚拟墙提取:1)遍历属性矩阵,查找出德洛内三角网中所有的边界边;2)初始化队列,从长度矩阵中查找出所有长度大于R的边界边,并将其压入队列;3)若队列为空,则执行步骤8);若队列非空,则执行步骤4);4)从队列顶部弹出一条边(vi,vj),通过查找邻接三角形矩阵的Adj[i][j]元素,得到边(vi,vj)的邻接三角形T的其他顶点vk,执行步骤5);5)找到T中另外两条边(vi,vk)和(vj,vk),将属性矩阵中Pty[i][k]和Pty[j][k]置为1,即将他们设定为新的边界边;为了使他们符合边界边只有一个邻接三角形条件,再将邻接三角形矩阵的Adj[i][k]中的元素vj和Adj[j][k]中的元素vi删除,执行步骤6);6)查找长度矩阵,将(vi,vk)和(vj,vk)中长度大于R的边压入队列,执行步骤7);7)将边(vi,vj)对应的属性矩阵中的元素Pty[i][j]置为0,即剔除边(vi,vj)作为边界边的属性,执行步骤3);8)遍历属性矩阵,提取所有边界边,形成虚拟墙。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连理工大学,未经大连理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201810047468.4/,转载请声明来源钻瓜专利网。