CN111735433B - 建立二维地图的方法和装置 - Google Patents
建立二维地图的方法和装置 Download PDFInfo
- Publication number
- CN111735433B CN111735433B CN201910226609.3A CN201910226609A CN111735433B CN 111735433 B CN111735433 B CN 111735433B CN 201910226609 A CN201910226609 A CN 201910226609A CN 111735433 B CN111735433 B CN 111735433B
- Authority
- CN
- China
- Prior art keywords
- point cloud
- model
- dimensional point
- area
- target
- 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
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C11/00—Photogrammetry or videogrammetry, e.g. stereogrammetry; Photographic surveying
- G01C11/02—Picture taking arrangements specially adapted for photogrammetry or photographic surveying, e.g. controlling overlapping of pictures
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C11/00—Photogrammetry or videogrammetry, e.g. stereogrammetry; Photographic surveying
- G01C11/04—Interpretation of pictures
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Automation & Control Theory (AREA)
- Processing Or Creating Images (AREA)
Abstract
本公开是关于一种建立二维地图的方法和装置,属于导航技术领域。所述方法包括:获取目标区域的三维点云模型;确定目标区域中的地面在三维点云模型中对应的地面平面,确定目标区域中的障碍物在三维点云模型中对应的模型点;将模型点在地面平面中对应的投影区域,确定为目标区域中的障碍物区域;基于目标区域中的障碍物区域,建立目标区域的二维地图。由于图像拍摄部件可以拍摄到各个高度的障碍物,并计算障碍物在实际中的高度和相对于可移动设备的距离,因此这样建立的目标区域的二维地图包含的障碍物的信息更加全面,不容易缺少某些障碍物的信息。通过本公开实施例提供的方法建立的二维地图的准确性更高。
Description
技术领域
本公开是关于导航技术领域,尤其是关于一种建立二维地图的方法和装置。
背景技术
在自主导航领域中,可移动设备可以依靠自身安装的激光雷达在目标区域中进行自主导航。在进行自主导航之前需要对目标区域进行建图,得到目标区域的二维地图。其中,二维地图中标注有目标区域中的各障碍物对应的位置范围。在得到二维地图之后,可移动设备才能基于二维地图规划从当前位置移动至目标位置的行进路线,再沿着行进路线移动至目标位置。
在对目标区域进行建图的过程中,首先可移动设备可以在目标区域内行进,在行进的过程中,通过激光雷达扫描目标区域,基于扫描结果建立二维地图。由于激光雷达可以扫描的俯仰角度有限,只能扫描高度和激光雷达的安装高度相同或者相近的障碍物。因此,如果任一障碍物的高度比激光雷达的安装高度低了很多,激光雷达就不能扫描到该障碍物。进而,基于扫描结果建立的二维地图中,缺少该障碍物的位置范围,二维地图的准确性较低。
发明内容
为了克服相关技术中存在的问题,本公开提供了以下技术方案:
根据本公开实施例的第一方面,提供一种建立二维地图的方法,所述方法包括:
获取目标区域的三维点云模型;
确定所述目标区域中的地面在所述三维点云模型中对应的地面平面,确定所述目标区域中的障碍物在所述三维点云模型中对应的模型点;
将所述模型点在所述地面平面中对应的投影区域,确定为所述目标区域中的障碍物区域;
基于所述目标区域中的障碍物区域,建立所述目标区域的二维地图。
可选地,所述确定所述目标区域中的地面在所述三维点云模型中对应的地面平面,包括:
确定预先存储的可移动设备的高度;
沿水平方向,将所述三维点云模型中低于所述可移动设备的高度的部分,切分成多个高度相同的三维点云切片模型;
确定每个三维点云切片模型实际包含的点的数量占所述三维点云切片模型能够容纳的点的数量的比值;
在所述多个三维点云切片模型中,确定比值大于预设比值阈值的目标三维点云切片模型;
将所述目标三维点云切片模型中高度最低的平面在所述三维点云模型中对应的平面,确定为所述目标区域中的地面在所述三维点云模型中对应的地面平面。
可选地,所述确定所述目标区域中的障碍物在所述三维点云模型中对应的模型点,包括:
将所述多个三维点云切片模型中除所述目标三维点云切片模型之外的三维点云切片模型中包括的模型点,确定为所述目标区域中的障碍物在所述三维点云模型中对应的模型点。
可选地,所述将所述模型点在所述地面平面中对应的投影区域,确定为所述目标区域中的障碍物区域,包括:
确定每个所述模型点与所述地面平面之间的垂线的垂足;
将所述垂足在所述地面平面中组成的投影区域,确定为所述目标区域中的障碍物区域。
可选地,所述方法还包括:
确定初始位置和目标位置,基于所述目标区域的二维地图,确定从所述初始位置移动至所述目标位置的第一行进路线;
基于所述第一行进路线,向所述目标位置行进。
可选地,所述方法还包括:
在向所述目标位置行进的过程中,每当达到预设周期时,获取所述可移动设备当前所处局部区域的三维点云模型,确定所述局部区域中的地面在所述局部区域的三维点云模型中对应的地面平面,确定所述局部区域中的障碍物在所述局部区域的三维点云模型中对应的局部区域模型点,将所述局部区域模型点在所述局部区域的三维点云模型中对应的地面平面中对应的投影区域,确定为所述局部区域中的障碍物区域,基于所述局部区域中的障碍物区域,建立所述局部区域的二维地图;
基于当前的位姿,将所述局部区域的二维地图叠加到所述目标区域的二维地图上,确定叠加后的目标区域的二维地图;
基于所述叠加后的目标区域的二维地图,确定从当前位置移动至所述目标位置的第二行进路线。
根据本公开实施例的第二方面,提供一种建立二维地图的装置,所述装置包括:
获取模块,用于获取目标区域的三维点云模型;
确定模块,用于确定所述目标区域中的地面在所述三维点云模型中对应的地面平面,确定所述目标区域中的障碍物在所述三维点云模型中对应的模型点;将所述模型点在所述地面平面中对应的投影区域,确定为所述目标区域中的障碍物区域;
建图模块,用于基于所述目标区域中的障碍物区域,建立所述目标区域的二维地图。
可选地,所述确定模块,用于:
确定预先存储的可移动设备的高度;
沿水平方向,将所述三维点云模型中低于所述可移动设备的高度的部分,切分成多个高度相同的三维点云切片模型;
确定每个三维点云切片模型实际包含的点的数量占所述三维点云切片模型能够容纳的点的数量的比值;
在所述多个三维点云切片模型中,确定比值大于预设比值阈值的目标三维点云切片模型;
将所述目标三维点云切片模型中高度最低的平面在所述三维点云模型中对应的平面,确定为所述目标区域中的地面在所述三维点云模型中对应的地面平面。
可选地,所述确定模块,用于:
将所述多个三维点云切片模型中除所述目标三维点云切片模型之外的三维点云切片模型中包括的模型点,确定为所述目标区域中的障碍物在所述三维点云模型中对应的模型点。
可选地,所述确定模块,用于:
确定每个所述模型点与所述地面平面之间的垂线的垂足;
将所述垂足在所述地面平面中组成的投影区域,确定为所述目标区域中的障碍物区域。
可选地,所述确定模块,还用于确定初始位置和目标位置,基于所述目标区域的二维地图,确定从所述初始位置移动至所述目标位置的第一行进路线;
所述装置还包括:
行进模块,用于基于所述第一行进路线,向所述目标位置行进。
可选地,所述建图模块,还用于在向所述目标位置行进的过程中,每当达到预设周期时,获取所述可移动设备当前所处局部区域的三维点云模型,确定所述局部区域中的地面在所述局部区域的三维点云模型中对应的地面平面,确定所述局部区域中的障碍物在所述局部区域的三维点云模型中对应的局部区域模型点,将所述局部区域模型点在所述局部区域的三维点云模型中对应的地面平面中对应的投影区域,确定为所述局部区域中的障碍物区域,基于所述局部区域中的障碍物区域,建立所述局部区域的二维地图;
所述确定模块,还用于基于当前的位姿,将所述局部区域的二维地图叠加到所述目标区域的二维地图上,确定叠加后的目标区域的二维地图;基于所述叠加后的目标区域的二维地图,确定从当前位置移动至所述目标位置的第二行进路线。
根据本公开实施例的第三方面,提供一种计算机设备,所述计算机设备包括处理器、通信接口、存储器和通信总线,其中:
所述处理器、所述通信接口和所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序,以实现上述建立二维地图的方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述建立二维地图的方法。
根据本公开实施例的第五方面,提供一种导航系统,所述导航系统包括可移动设备和服务器,所述可移动设备包括多个图像拍摄部件,其中:
所述可移动设备,用于通过所述多个图像拍摄部件拍摄目标区域的环境图像,将所述目标区域的环境图像发送至所述服务器;
所述服务器,用于接收所述目标区域的环境图像,基于所述目标区域的环境图像,建立所述目标区域的三维点云模型;确定所述目标区域中的地面在所述三维点云模型中对应的地面平面,确定所述目标区域中的障碍物在所述三维点云模型中对应的模型点;将所述模型点在所述地面平面中对应的投影区域,确定为所述目标区域中的障碍物区域;基于所述目标区域中的障碍物区域,建立所述目标区域的二维地图。
本公开的实施例提供的技术方案可以包括以下有益效果:
通过本公开实施例提供的方法,可以通过环境图像建立三维点云模型,基于三维点云模型,建立标注有障碍物对应的区域的二维地图。由于图像拍摄部件可以拍摄到各个高度的障碍物,并计算障碍物在实际中的高度和相对于可移动设备的距离,因此这样建立的目标区域的二维地图包含的障碍物的信息更加全面,不容易缺少某些障碍物的信息。通过本公开实施例提供的方法建立的二维地图的准确性更高。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。在附图中:
图1是根据一示例性实施例示出的一种建立二维地图的方法的流程示意图;
图2是根据一示例性实施例示出的一种建立二维地图的方法的流程示意图;
图3是根据一示例性实施例示出的一种建立二维地图的方法的流程示意图;
图4是根据一示例性实施例示出的一种二维地图的示意图;
图5是根据一示例性实施例示出的一种建立二维地图的装置的结构示意图;
图6是根据一示例性实施例示出的一种计算机设备的结构示意图。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本公开实施例提供了一种建立二维地图的方法,该方法可以在服务器或者可移动设备等计算机设备中执行。可移动设备可以是机器人、扫地机器人、物流小车、巡检小车等。可移动设备的结构可以见图1所示,可以包括移动底盘和多目装置等部件。多目装置可以是多个图像拍摄部件,多个图像拍摄部件可以以环形的方式布置一周,每两个图像拍摄部件作为一对图像拍摄部件,每对图像拍摄部件可以朝向一个特定的拍摄方向,多对图像拍摄部件可以拍摄到可移动设备周围的环境图像。在移动底盘的中心位置上还可以设置有移动底盘差速驱动部件,移动底盘差速驱动部件可以通过悬挂部件固定在移动底盘的中心位置上。在移动底盘差速驱动部件的两侧可以分别设置一个脚轮,用于移动可移动设备。
如图2所示,本公开实施例提供的可移动设备可以进行离线建图,得到目标区域的二维地图。可以确定重定位地图,基于重定位地图确定深度图,再基于深度图确定二维地图。在进行离线建图之后,导航系统通过地图服务器可以加载二维地图,基于二维地图确定全局代价地图。在可移动设备移动的过程中,还可以基于实时采集的深度信息,建立局部区域的二维地图。基于局部区域的二维地图,建立局部代价地图。在检测到可移动设备移动失败时,可以启动恢复行为功能,清空局部代价地图中的障碍物,重新规划局部行进路线。导航系统还可以基于全局代价地图和目标位姿,进行全局规划,确定全局行进路线。在可移动设备移动的过程中,需要确定当前位姿。可以通过VSLAM(Visual SFM-Based Positioning,视觉实时定位建模)定位功能和图像拍摄部件之间的坐标系的变换关系,确定当前位姿。此外,还可以基于局部代价地图,进行局部规划,确定局部行进路线。在进行局部规划之后,生成用于控制可移动设备行进的速度指令,向移动底盘控制器发送速度指令,以控制可移动设备行进。通过里程计源确定相距初始位置的位姿。
本公开一示例性实施例提供了一种建立二维地图的方法,如图3所示,该方法的处理流程可以包括如下的步骤:
步骤S210,获取目标区域的三维点云模型。
可移动设备可以在环境中的所有区域行进一周,在行进的过程中通过多目装置拍摄可移动设备周围的环境图像。这样,在可移动设备在环境中的所有区域都行进一周之后,可以采集到环境中的所有区域的环境图像。
由于单个图像拍摄部件拍摄的环境图像P1是二维的,缺少了深度信息,因此需要借助另一个图像拍摄部件拍摄的环境图像P2,来确定环境图像P1中的每个像素点的深度信息。可移动设备中设置有多对图像拍摄部件,每对图像拍摄部件包括左图像拍摄部件和右图像拍摄部件,可以以左图像拍摄部件拍摄的环境图像为准,借助右图像拍摄部件拍摄的环境图像,来确定左图像拍摄部件拍摄的环境图像中的每个像素点的深度信息。这样,每个左图像拍摄部件拍摄的环境图像中的每个像素点在不仅有横坐标信息和纵坐标信息之外,还有每个像素点对应的深度信息。
可以以每对图像拍摄部件中的左图像拍摄部件为准,分别建立图像拍摄部件坐标系。其中,图像拍摄部件坐标系是以当前的图像拍摄部件的光心为原点,以垂直地面且穿过原点的线为Z轴,以图像拍摄部件正对的且穿过原点的线为Y轴,以在水平面内与Y轴垂直的线为X轴,建立的坐标系。由此可以得到多个图像拍摄部件坐标系。在这些图像拍摄部件坐标系中,可以选定一个图像拍摄部件坐标系为本体坐标系。
可以基于可移动设备在采集环境中的所有区域的环境图像的起始位置建立世界坐标系,世界坐标系为可移动设备在起始位置时的本体坐标系,世界坐标系固定不变,而本体坐标系会随着可移动设备的移动而进行平移和旋转。
对于在每个时间点上拍摄的环境图像,可以将其他图像拍摄部件坐标系下的像素点根据其他图像拍摄部件坐标系和本体坐标系的转换关系,转换到本体坐标系下。这样,对于在每个时间点上拍摄的环境图像,可以确定以本体坐标系为参考的每个像素点对应的横坐标信息、纵坐标信息和深度信息,作为深度图。
在可移动设备行进的过程中,可以控制所有图像拍摄部件以相同的频率在相同的时间点拍摄环境图像。但是为了减少运算量,可以在这些环境图像中,每隔预设帧数取一帧环境图像作为关键帧,基于关键帧确定深度图。
在确定关键帧对应的深度图的同时,还可以记录拍摄关键帧时可移动设备所处的位姿。其中,位姿包括可移动设备所处的位置和姿态,姿态为可移动设备相对于世界坐标系的旋转角度。
在确定了拍摄关键帧时可移动设备所处的位姿之后,可以基于深度图确定八叉树地图。八叉树地图是一种用于描述三维空间的树状数据结构。八叉树地图的每个节点表示一个正方体的体积元素,每个节点有八个子节点,这八个子节点所表示的体积元素加在一起就等于父节点的体积。一般中心点作为节点的分叉中心。
基于深度图确定八叉树地图的作用是,将在不同位姿上获取的深度图拼接为一整个图,同时还可以综合其他深度图去除某一深度图中数据存在的误差,并且除此以外,还可以将静态障碍物纳入到八叉树地图中,忽略动态障碍物的影响。
最终,可以基于八叉树地图和图像拍摄部件的内参,确定目标区域的三维点云模型。在目标区域的三维点云模型中存在大量的点,每个点都有横坐标信息、纵坐标信息和深度信息。其中,横坐标信息和纵坐标信息表示目标区域中对应的一个实物点和可移动设备之间的在水平面中的距离。深度信息表示目标区域中对应的一个实物点和可移动设备之间的在垂直于水平面的方向上的距离。需要说明的是,目标区域的三维点云模型中的点对应于目标区域中的大部分除空气以外的实物点,包括地面上的点、家具上的点、电器上的点等。
步骤S220,确定目标区域中的地面在三维点云模型中对应的地面平面,确定目标区域中的障碍物在三维点云模型中对应的模型点,将模型点在地面平面中对应的投影区域,确定为目标区域中的障碍物区域。
首先,可以确定预先存储的可移动设备的高度,该可移动设备的高度可以是可移动设备实际的高度再加上预留高度值。在可移动设备行进的过程中,只关心比可移动设备的高度低的那些障碍物,那种中间是空心的比如桌子的下面,如果桌子的下面的高度高于可移动设备的高度,可移动设备是可以钻进去的,不认为该桌子是障碍物。
接着,沿水平方向,将三维点云模型中低于可移动设备的高度的部分,切分成多个高度相同的三维点云切片模型。可以对可移动设备的高度在三维点云模型中对应的水平面以下的部分,即向着Z轴负轴的方向沿水平方向进行切分,同时可以设置图像拍摄部件在三维点云模型中对应的水平面与Z轴的交点的高度为零,这样就可以确定三维点云模型中每个点的高度。
随后,可以确定每个三维点云切片模型实际包含的点的数量占三维点云切片模型能够容纳的点的数量的比值。在得到多个三维点云切片模型之后,可以以每个三维点云切片模型中高度最低的平面为基准平面,将三维点云切片模型内部所有点向基准平面进行投影,得到投影区域。可以计算投影区域占基准平面的比值,作为每个三维点云切片模型实际包含的点的数量占三维点云切片模型能够容纳的点的数量的比值。
然后,在多个三维点云切片模型中,确定比值大于预设比值阈值的目标三维点云切片模型。可以在所有三维点云切片模型对应的比值中,确定大于预设比值阈值的值,继而确定出的比值对应的三维点云切片模型就是目标三维点云切片模型,也即包括了地面平面的三维点云切片模型。由于地面上的东西最多,实物点最多,因此包括了地面平面的三维点云切片模型中实际包含的点的数量占三维点云切片模型能够容纳的点的数量的比值非常大。如果对包括了地面平面的三维点云切片模型进行投影,可以得到一个几乎所有区域都是阴影区域的图像。
最后,将目标三维点云切片模型中高度最低的平面在三维点云模型中对应的平面,确定为目标区域中的地面在三维点云模型中对应的地面平面。需要选取一个平面作为地面平面,可以选择目标三维点云切片模型中高度最低的平面在三维点云模型中对应的平面,作为目标区域中的地面在三维点云模型中对应的地面平面。假如图像拍摄部件在三维点云模型中对应的水平面与Z轴的交点的高度为零,可移动设备的顶部的高度为0.5米,可移动设备的底部也即地面的高度可以为-0.5米。
在确定了目标区域中的地面在三维点云模型中对应的地面平面之后,可以确定目标区域中的障碍物在三维点云模型中对应的模型点。在一种可能的实现方式中,确定目标区域中的障碍物在三维点云模型中对应的模型点的步骤可以包括:将多个三维点云切片模型中除目标三维点云切片模型之外的三维点云切片模型中包括的模型点,确定为目标区域中的障碍物在三维点云模型中对应的模型点。
在所有三维点云切片模型中,除了包括了地面平面的三维点云切片模型之外,都可以认为是包括了障碍物对应的模型点的三维点云切片模型。即高于地面平面对应的三维点云切片模型的所有点都可以作为目标区域中的障碍物在三维点云模型中对应的模型点。
步骤S230,将模型点在地面平面中对应的投影区域,确定为目标区域中的障碍物区域。
在前面的过程中,可以以每个三维点云切片模型中高度最低的平面为基准平面,将三维点云切片模型内部所有点向基准平面进行投影,得到投影区域。接着,可以将每个投影区域再向地面平面进行投影,得到模型点在地面平面中对应的投影区域。随后,可以将模型点在地面平面中对应的投影区域,确定为目标区域中的障碍物区域。
在将每个投影区域再向地面平面进行投影之前,可以将地面平面作为空白平面,地面平面之前的点都清除掉。这样投影后的地面平面,就是所有障碍物对应的障碍物区域。可以直接将三维点云切片模型对应的投影区域中的点的高度改为地面平面的高度,如-0.5米。这样,就可以达到将三维点云切片模型对应的投影区域向地面平面进行投影的效果。
或者,在一种可能的实现方式中,还可以确定每个模型点与地面平面之间的垂线的垂足,将垂足在地面平面中组成的投影区域,确定为目标区域中的障碍物区域。
可以直接将所有模型点向地面平面进行投影,即确定每个模型点与地面平面之间的垂线的垂足,接着,可以将垂足在地面平面中组成的投影区域,确定为目标区域中的障碍物区域。
步骤S240,基于目标区域中的障碍物区域,建立目标区域的二维地图。
可以基于目标区域中的障碍物区域,建立目标区域的二维地图。在目标区域的二维地图中,如图4所示,阴影部分即为障碍物区域对应的投影区域,空白部分即为可行进区域对应的区域。
在一种可能的实现方式中,本公开实施例提供的方法还可以包括:确定初始位置和目标位置,基于目标区域的二维地图,确定从初始位置移动至目标位置的第一行进路线;基于第一行进路线,向目标位置行进。
在建立了目标区域的二维地图之后,可以通过深度信息,确定可移动设备初始位置,获取用户输入的目标位置。或者,也可以获取用户输入的目标位姿,即包括了目标位置和目标姿态。基于目标区域的二维地图,确定从初始位置移动至目标位置的第一行进路线。最后,可以基于第一行进路线,向目标位置行进。在行进的过程中,无需严格按照第一行进路线行进。因为在实际行进的过程中,在行进路线上会出现新的障碍物。例如,在建立目标区域的二维地图时,障碍物一般都是静止的,不会轻易移动,但是实际情况中,会有人走进来,或者人将某一物体搬入到目标区域中,这都会影响可移动设备沿着第一行进路线向目标位置行进。
在一种可能的实现方式中,本公开实施例提供的方法还可以包括:在向目标位置行进的过程中,每当达到预设周期时,获取可移动设备当前所处局部区域的三维点云模型,确定局部区域中的地面在局部区域的三维点云模型中对应的地面平面,确定局部区域中的障碍物在局部区域的三维点云模型中对应的局部区域模型点,将局部区域模型点在局部区域的三维点云模型中对应的地面平面中对应的投影区域,确定为局部区域中的障碍物区域,基于局部区域中的障碍物区域,建立局部区域的二维地图;基于当前的位姿,将第一行进路线局部区域的二维地图叠加到第一行进路线目标区域的二维地图上,确定叠加后的目标区域的二维地图;基于叠加后的目标区域的二维地图,确定从当前位置移动至目标位置的第二行进路线。
由于在实际情况中,会有人走进来,或者人将某一物体搬入到目标区域中,这都会影响可移动设备沿着第一行进路线向目标位置行进,因此可以按照预设的周期,不断地规划一小段第二行进路线,如果没有新的障碍物进来,第二行进路线可能会和第一行进路线是重合的,如果有新的障碍物进来,第二行进路线可能是绕开新的障碍物之后,再回到第一行进路线上的。
在可移动设备向目标位置行进的过程中,每当达到预设周期时,获取可移动设备当前所处局部区域的三维点云模型,确定局部区域中的地面在局部区域的三维点云模型中对应的地面平面,确定局部区域中的障碍物在局部区域的三维点云模型中对应的局部区域模型点,将局部区域模型点在局部区域的三维点云模型中对应的地面平面中对应的投影区域,确定为局部区域中的障碍物区域,基于局部区域中的障碍物区域,建立局部区域的二维地图。
可以按照预设的周期重复执行上面的过程,这样每个周期都可以得到局部区域的二维地图。然后,可以将局部区域的二维地图叠加到目标区域的二维地图中。这样,静态障碍物和动态障碍物的信息都会被标注在叠加后的目标区域的二维地图中。进而,可以参照叠加后的目标区域的二维地图,规划从当前位置移动至目标位置的第二行进路线。
通过本公开实施例提供的方法,可以通过环境图像建立三维点云模型,基于三维点云模型,建立标注有障碍物对应的区域的二维地图。由于图像拍摄部件可以拍摄到各个高度的障碍物,并计算障碍物在实际中的高度和相对于可移动设备的距离,因此这样建立的目标区域的二维地图包含的障碍物的信息更加全面,不容易缺少某些障碍物的信息。通过本公开实施例提供的方法建立的二维地图的准确性更高。
本公开又一示例性实施例提供了一种建立二维地图的装置,如图5所示,该装置包括:
获取模块510,用于获取目标区域的三维点云模型;
确定模块520,用于确定所述目标区域中的地面在所述三维点云模型中对应的地面平面,确定所述目标区域中的障碍物在所述三维点云模型中对应的模型点;将所述模型点在所述地面平面中对应的投影区域,确定为所述目标区域中的障碍物区域;
建图模块530,用于基于所述目标区域中的障碍物区域,建立所述目标区域的二维地图。
可选地,所述确定模块520,用于:
确定预先存储的可移动设备的高度;
沿水平方向,将所述三维点云模型中低于所述可移动设备的高度的部分,切分成多个高度相同的三维点云切片模型;
确定每个三维点云切片模型实际包含的点的数量占所述三维点云切片模型能够容纳的点的数量的比值;
在所述多个三维点云切片模型中,确定比值大于预设比值阈值的目标三维点云切片模型;
将所述目标三维点云切片模型中高度最低的平面在所述三维点云模型中对应的平面,确定为所述目标区域中的地面在所述三维点云模型中对应的地面平面。
可选地,所述确定模块520,用于:
将所述多个三维点云切片模型中除所述目标三维点云切片模型之外的三维点云切片模型中包括的模型点,确定为所述目标区域中的障碍物在所述三维点云模型中对应的模型点。
可选地,所述确定模块520,用于:
确定每个所述模型点与所述地面平面之间的垂线的垂足;
将所述垂足在所述地面平面中组成的投影区域,确定为所述目标区域中的障碍物区域。
可选地,所述确定模块520,还用于确定初始位置和目标位置,基于所述目标区域的二维地图,确定从所述初始位置移动至所述目标位置的第一行进路线;
所述装置还包括:
行进模块,用于基于所述第一行进路线,向所述目标位置行进。
可选地,所述建图模块530,还用于在向所述目标位置行进的过程中,每当达到预设周期时,获取所述可移动设备当前所处局部区域的三维点云模型,确定所述局部区域中的地面在所述局部区域的三维点云模型中对应的地面平面,确定所述局部区域中的障碍物在所述局部区域的三维点云模型中对应的局部区域模型点,将所述局部区域模型点在所述局部区域的三维点云模型中对应的地面平面中对应的投影区域,确定为所述局部区域中的障碍物区域,基于所述局部区域中的障碍物区域,建立所述局部区域的二维地图;
所述确定模块520,还用于基于当前的位姿,将所述局部区域的二维地图叠加到所述目标区域的二维地图上,确定叠加后的目标区域的二维地图;基于所述叠加后的目标区域的二维地图,确定从当前位置移动至所述目标位置的第二行进路线。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
通过本公开实施例提供的装置,可以通过环境图像建立三维点云模型,基于三维点云模型,建立标注有障碍物对应的区域的二维地图。由于图像拍摄部件可以拍摄到各个高度的障碍物,并计算障碍物在实际中的高度和相对于可移动设备的距离,因此这样建立的目标区域的二维地图包含的障碍物的信息更加全面,不容易缺少某些障碍物的信息。通过本公开实施例提供的装置建立的二维地图的准确性更高。
需要说明的是:上述实施例提供的建立二维地图的装置在建立二维地图时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将可移动设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的建立二维地图的装置与建立二维地图的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本公开再一示例性实施例提供了一种导航系统,导航系统包括可移动设备和服务器,可移动设备包括多个图像拍摄部件。
可移动设备,用于通过多个图像拍摄部件拍摄目标区域的环境图像,将目标区域的环境图像发送至服务器。
服务器,用于接收目标区域的环境图像,基于目标区域的环境图像,建立目标区域的三维点云模型;确定目标区域中的地面在三维点云模型中对应的地面平面,确定目标区域中的障碍物在三维点云模型中对应的模型点;将模型点在地面平面中对应的投影区域,确定为目标区域中的障碍物区域;基于目标区域中的障碍物区域,建立目标区域的二维地图。
关于上述实施例中的系统,其中可移动设备、服务器执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图6示出了本公开一个示例性实施例提供的计算机设备1900的结构示意图。该计算机设备1900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)1910和一个或一个以上的存储器1920。其中,所述存储器1920中存储有至少一条指令,所述至少一条指令由所述处理器1910加载并执行以实现上述实施例所述的建立二维地图的方法。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (9)
1.一种建立二维地图的方法,其特征在于,所述方法包括:
获取目标区域的三维点云模型;
确定预先存储的可移动设备的高度;
沿水平方向,将所述三维点云模型中低于所述可移动设备的高度的部分,切分成多个三维点云切片模型;
确定每个三维点云切片模型实际包含的点的数量占所述三维点云切片模型能够容纳的点的数量的比值;
在所述多个三维点云切片模型中,确定比值大于预设比值阈值的目标三维点云切片模型;
将所述目标三维点云切片模型中高度最低的平面在所述三维点云模型中对应的平面,确定为所述目标区域中的地面在所述三维点云模型中对应的地面平面;
将所述多个三维点云切片模型中除所述目标三维点云切片模型之外的三维点云切片模型中包括的模型点,确定为所述目标区域中的障碍物在所述三维点云模型中对应的模型点;
将所述模型点在所述地面平面中对应的投影区域,确定为所述目标区域中的障碍物区域;
基于所述目标区域中的障碍物区域,建立所述目标区域的二维地图。
2.根据权利要求1所述的方法,其特征在于,所述将所述模型点在所述地面平面中对应的投影区域,确定为所述目标区域中的障碍物区域,包括:
确定每个所述模型点与所述地面平面之间的垂线的垂足;
将所述垂足在所述地面平面中组成的投影区域,确定为所述目标区域中的障碍物区域。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定初始位置和目标位置,基于所述目标区域的二维地图,确定从所述初始位置移动至所述目标位置的第一行进路线;
基于所述第一行进路线,向所述目标位置行进。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在向所述目标位置行进的过程中,每当达到预设周期时,获取所述可移动设备当前所处局部区域的三维点云模型,确定所述局部区域中的地面在所述局部区域的三维点云模型中对应的地面平面,确定所述局部区域中的障碍物在所述局部区域的三维点云模型中对应的局部区域模型点,将所述局部区域模型点在所述局部区域的三维点云模型中对应的地面平面中对应的投影区域,确定为所述局部区域中的障碍物区域,基于所述局部区域中的障碍物区域,建立所述局部区域的二维地图;
基于当前的位姿,将所述局部区域的二维地图叠加到所述目标区域的二维地图上,确定叠加后的目标区域的二维地图;
基于所述叠加后的目标区域的二维地图,确定从当前位置移动至所述目标位置的第二行进路线。
5.一种建立二维地图的装置,其特征在于,所述装置包括:
获取模块,用于获取目标区域的三维点云模型;
确定模块,用于确定预先存储的可移动设备的高度;沿水平方向,将所述三维点云模型中低于所述可移动设备的高度的部分,切分成多个三维点云切片模型;确定每个三维点云切片模型实际包含的点的数量占所述三维点云切片模型能够容纳的点的数量的比值;在所述多个三维点云切片模型中,确定比值大于预设比值阈值的目标三维点云切片模型;将所述目标三维点云切片模型中高度最低的平面在所述三维点云模型中对应的平面,确定为所述目标区域中的地面在所述三维点云模型中对应的地面平面;将所述多个三维点云切片模型中除所述目标三维点云切片模型之外的三维点云切片模型中包括的模型点,确定为所述目标区域中的障碍物在所述三维点云模型中对应的模型点;将所述模型点在所述地面平面中对应的投影区域,确定为所述目标区域中的障碍物区域;
建图模块,用于基于所述目标区域中的障碍物区域,建立所述目标区域的二维地图。
6.根据权利要求5所述的装置,其特征在于,所述确定模块,用于:
确定每个所述模型点与所述地面平面之间的垂线的垂足;
将所述垂足在所述地面平面中组成的投影区域,确定为所述目标区域中的障碍物区域。
7.根据权利要求5所述的装置,其特征在于,所述确定模块,还用于确定初始位置和目标位置,基于所述目标区域的二维地图,确定从所述初始位置移动至所述目标位置的第一行进路线;
所述装置还包括:
行进模块,用于基于所述第一行进路线,向所述目标位置行进。
8.根据权利要求7所述的装置,其特征在于,所述建图模块,还用于在向所述目标位置行进的过程中,每当达到预设周期时,获取所述可移动设备当前所处局部区域的三维点云模型,确定所述局部区域中的地面在所述局部区域的三维点云模型中对应的地面平面,确定所述局部区域中的障碍物在所述局部区域的三维点云模型中对应的局部区域模型点,将所述局部区域模型点在所述局部区域的三维点云模型中对应的地面平面中对应的投影区域,确定为所述局部区域中的障碍物区域,基于所述局部区域中的障碍物区域,建立所述局部区域的二维地图;
所述确定模块,还用于基于当前的位姿,将所述局部区域的二维地图叠加到所述目标区域的二维地图上,确定叠加后的目标区域的二维地图;基于所述叠加后的目标区域的二维地图,确定从当前位置移动至所述目标位置的第二行进路线。
9.一种导航系统,其特征在于,所述导航系统包括可移动设备和服务器,所述可移动设备包括多个图像拍摄部件,其中:
所述可移动设备,用于通过所述多个图像拍摄部件拍摄目标区域的环境图像,将所述目标区域的环境图像发送至所述服务器;
所述服务器,用于接收所述目标区域的环境图像,基于所述目标区域的环境图像,建立所述目标区域的三维点云模型;确定预先存储的可移动设备的高度;沿水平方向,将所述三维点云模型中低于所述可移动设备的高度的部分,切分成多个三维点云切片模型;确定每个三维点云切片模型实际包含的点的数量占所述三维点云切片模型能够容纳的点的数量的比值;在所述多个三维点云切片模型中,确定比值大于预设比值阈值的目标三维点云切片模型;将所述目标三维点云切片模型中高度最低的平面在所述三维点云模型中对应的平面,确定为所述目标区域中的地面在所述三维点云模型中对应的地面平面;将所述多个三维点云切片模型中除所述目标三维点云切片模型之外的三维点云切片模型中包括的模型点,确定为所述目标区域中的障碍物在所述三维点云模型中对应的模型点;将所述模型点在所述地面平面中对应的投影区域,确定为所述目标区域中的障碍物区域;基于所述目标区域中的障碍物区域,建立所述目标区域的二维地图。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910226609.3A CN111735433B (zh) | 2019-03-25 | 2019-03-25 | 建立二维地图的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910226609.3A CN111735433B (zh) | 2019-03-25 | 2019-03-25 | 建立二维地图的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111735433A CN111735433A (zh) | 2020-10-02 |
CN111735433B true CN111735433B (zh) | 2022-05-20 |
Family
ID=72645926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910226609.3A Active CN111735433B (zh) | 2019-03-25 | 2019-03-25 | 建立二维地图的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111735433B (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103955920B (zh) * | 2014-04-14 | 2017-04-12 | 桂林电子科技大学 | 基于三维点云分割的双目视觉障碍物检测方法 |
CN105045263B (zh) * | 2015-07-06 | 2016-05-18 | 杭州南江机器人股份有限公司 | 一种基于Kinect深度相机的机器人自定位方法 |
CN105843223B (zh) * | 2016-03-23 | 2018-11-20 | 东南大学 | 一种基于空间词袋模型的移动机器人三维建图与避障方法 |
CN106908052B (zh) * | 2017-02-09 | 2020-06-02 | 北京光年无限科技有限公司 | 用于智能机器人的路径规划方法及装置 |
CN108873908B (zh) * | 2018-07-12 | 2020-01-24 | 重庆大学 | 基于视觉slam和网络地图结合的机器人城市导航系统 |
WO2020024234A1 (zh) * | 2018-08-02 | 2020-02-06 | 深圳前海达闼云端智能科技有限公司 | 路径导航方法、相关装置及计算机可读存储介质 |
-
2019
- 2019-03-25 CN CN201910226609.3A patent/CN111735433B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111735433A (zh) | 2020-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6896077B2 (ja) | 車両自動パーキングシステム及び方法 | |
CN113110457B (zh) | 在室内复杂动态环境中智能机器人的自主覆盖巡检方法 | |
CN106599108A (zh) | 一种三维环境中多模态环境地图构建方法 | |
US11282164B2 (en) | Depth-guided video inpainting for autonomous driving | |
CN110986920B (zh) | 定位导航方法、装置、设备及存储介质 | |
CN110764110B (zh) | 路径导航方法、装置及计算机可读存储介质 | |
Kim et al. | UAV-UGV cooperative 3D environmental mapping | |
CN115639823B (zh) | 崎岖起伏地形下机器人地形感知与移动控制方法及系统 | |
CN110597265A (zh) | 一种扫地机器人回充方法和装置 | |
CN113607161B (zh) | 机器人导航路径宽度获取系统、方法、机器人及存储介质 | |
CN111735433B (zh) | 建立二维地图的方法和装置 | |
CN112082542A (zh) | 数字模型校正 | |
CN115034987B (zh) | 一种基于slam和调度系统的地图双向更新适配装置 | |
CN114459483B (zh) | 基于机器人导航用地标导航地图构建与应用方法、系统 | |
US11865724B2 (en) | Movement control method, mobile machine and non-transitory computer readable storage medium | |
Baslan et al. | Navigation and vision system of a mobile robot | |
Lieret et al. | Automated exploration, capture and photogrammetric reconstruction of interiors using an autonomous unmanned aircraft | |
Kurdi et al. | Navigation of mobile robot with cooperation of quadcopter | |
CN114911223A (zh) | 一种机器人导航方法、装置、机器人及存储介质 | |
Subramanyam | Chartopolis-A Self Driving Car Test Bed | |
Gujarathi et al. | Design and Development of Autonomous Delivery Robot | |
Landzettel et al. | A micro-rover navigation and control system for autonomous planetary exploration | |
Sánchez-Montero et al. | Reinforcement and Curriculum Learning for Off-Road Navigation of an UGV with a 3D LiDAR | |
CN114742884B (zh) | 一种基于纹理的建图、里程计算、定位方法及系统 | |
Winkens et al. | Optical truck tracking for autonomous platooning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |