CN116481516B - 机器人、地图创建方法和存储介质 - Google Patents
机器人、地图创建方法和存储介质 Download PDFInfo
- Publication number
- CN116481516B CN116481516B CN202310736958.6A CN202310736958A CN116481516B CN 116481516 B CN116481516 B CN 116481516B CN 202310736958 A CN202310736958 A CN 202310736958A CN 116481516 B CN116481516 B CN 116481516B
- Authority
- CN
- China
- Prior art keywords
- map
- robot
- key frame
- pose
- image
- 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 42
- 238000003860 storage Methods 0.000 title claims abstract description 14
- 238000013507 mapping Methods 0.000 claims abstract description 40
- 230000004927 fusion Effects 0.000 claims abstract description 37
- 238000004590 computer program Methods 0.000 claims description 20
- 238000012545 processing Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000004140 cleaning Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 235000012054 meals Nutrition 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- 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/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3837—Data obtained from a single source
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Computer Graphics (AREA)
- Manipulator (AREA)
Abstract
本申请涉及一种机器人、地图创建方法和存储介质。所述方法包括:获取通过所述图像采集设备采集的图像关键帧,以及所述图像关键帧在第一坐标系中对应的第一机器人位姿;所述第一坐标系是待生成的新地图对应的坐标系;根据所述第一机器人位姿以及所述图像关键帧,生成所述新地图;将所述第一机器人位姿映射至历史地图对应的第二坐标系中,得到第二机器人位姿;基于所述第二机器人位姿以及所述图像关键帧,生成所述新地图与所述历史地图的融合地图;在所述融合地图中删除冗余地图点,得到创建完成的地图。采用本方法能够提高地图创建效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种机器人、地图创建方法和存储介质。
背景技术
随着智能机器人的广泛应用,常常通过构建工作场景的地图来保证机器人在工作场景中稳定定位。当机器人的工作场景较大并且环境复杂时,一次建图往往不能覆盖所有工作场景的区域。因此,当机器人的工作场景扩大时,怎样创建场景扩大后的工作环境地图成为重要的问题。传统技术中,当机器人的工作场景扩大时,需要重新构建全部的地图,花费较长时间才能完成地图的构建,地图创建的效率低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高地图创建效率的机器人、地图创建方法和存储介质。
第一方面,本申请提供了一种机器人,所述机器人上搭载有图像采集设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器用于执行所述计算机程序时实现如下步骤:
获取通过所述图像采集设备采集的图像关键帧,以及所述图像关键帧在第一坐标系中对应的第一机器人位姿;所述第一坐标系是待生成的新地图对应的坐标系;
根据所述第一机器人位姿以及所述图像关键帧,生成所述新地图;
将所述第一机器人位姿映射至历史地图对应的第二坐标系中,得到第二机器人位姿;
基于所述第二机器人位姿以及所述图像关键帧,生成所述新地图与所述历史地图的融合地图;
在所述融合地图中删除冗余地图点,得到创建完成的地图。
第二方面,本申请还提供了一种地图创建方法,所述地图创建方法应用于机器人,所述机器人上搭载有图像采集设备,所述方法包括:
获取通过所述图像采集设备采集的图像关键帧,以及所述图像关键帧在第一坐标系中对应的第一机器人位姿;所述第一坐标系是待生成的新地图对应的坐标系;
根据所述第一机器人位姿以及所述图像关键帧,生成所述新地图;
将所述第一机器人位姿映射至历史地图对应的第二坐标系中,得到第二机器人位姿;
基于所述第二机器人位姿以及所述图像关键帧,生成所述新地图与所述历史地图的融合地图;
在所述融合地图中删除冗余地图点,得到创建完成的地图。
第三方面,本申请还提供了一种地图创建装置。所述装置包括:
获取模块,用于获取通过所述图像采集设备采集的图像关键帧,以及所述图像关键帧在第一坐标系中对应的第一机器人位姿;所述第一坐标系是待生成的新地图对应的坐标系;
生成模块,用于根据所述第一机器人位姿以及所述图像关键帧,生成所述新地图;
映射模块,用于将所述第一机器人位姿映射至历史地图对应的第二坐标系中,得到第二机器人位姿;
所述生成模块,还用于基于所述第二机器人位姿以及所述图像关键帧,生成所述新地图与所述历史地图的融合地图;
删除模块,用于在所述融合地图中删除冗余地图点,得到创建完成的地图。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取通过所述图像采集设备采集的图像关键帧,以及所述图像关键帧在第一坐标系中对应的第一机器人位姿;所述第一坐标系是待生成的新地图对应的坐标系;
根据所述第一机器人位姿以及所述图像关键帧,生成所述新地图;
将所述第一机器人位姿映射至历史地图对应的第二坐标系中,得到第二机器人位姿;
基于所述第二机器人位姿以及所述图像关键帧,生成所述新地图与所述历史地图的融合地图;
在所述融合地图中删除冗余地图点,得到创建完成的地图。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取通过所述图像采集设备采集的图像关键帧,以及所述图像关键帧在第一坐标系中对应的第一机器人位姿;所述第一坐标系是待生成的新地图对应的坐标系;
根据所述第一机器人位姿以及所述图像关键帧,生成所述新地图;
将所述第一机器人位姿映射至历史地图对应的第二坐标系中,得到第二机器人位姿;
基于所述第二机器人位姿以及所述图像关键帧,生成所述新地图与所述历史地图的融合地图;
在所述融合地图中删除冗余地图点,得到创建完成的地图。
上述机器人、地图创建方法、装置、存储介质和计算机程序产品,其中,机器人获取通过图像采集设备采集的图像关键帧,以及图像关键帧在第一坐标系中对应的第一机器人位姿;第一坐标系是待生成的新地图对应的坐标系;根据第一机器人位姿以及图像关键帧中特征点的像素坐标,生成新地图。在历史地图对应的第二坐标系中,确定第一机器人位姿对应的第二机器人位姿,从而将机器人在新地图中的位姿映射到历史地图的坐标系中。基于第二机器人位姿以及图像关键帧,生成新地图与历史地图的融合地图;在融合地图中删除冗余地图点,得到创建完成的地图。实现了将新地图和历史地图进行融合。在机器人的工作场景扩大时,可以在已有的历史地图的基础上进行扩展建图,不需要重新创建全部工作场景的地图,缩短了地图创建的时间,提高了地图创建的效率。
附图说明
图1为一个实施例中地图创建方法的应用环境图;
图2为一个实施例中地图创建方法的流程示意图;
图3为一个实施例中新地图生成方法的流程示意图;
图4为另一个实施例中新地图生成方法的流程示意图;
图5为一个实施例中第二机器人位姿确定方法的流程示意图;
图6为另一个实施例中地图创建方法的流程示意图;
图7为一个实施例中地图创建装置的结构框图;
图8为一个实施例中机器人的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供一种机器人,该机器人可以独立实现本申请的地图创建方法;此外,该机器人也可以应用于如图1所示的应用环境中,与服务器协同实现本申请的地图创建方法。
其中,机器人102获取通过图像采集设备采集的图像关键帧,以及图像关键帧在第一坐标系中对应的第一机器人位姿;第一坐标系是待生成的新地图对应的坐标系;根据第一机器人位姿以及图像关键帧,生成新地图;将第一机器人位姿映射至历史地图对应的第二坐标系中,得到第二机器人位姿;基于第二机器人位姿以及图像关键帧,生成新地图与历史地图的融合地图;在融合地图中删除冗余地图点,得到创建完成的地图。
此外,机器人102在得到创建完成的地图之后,可以将该创建完成的地图作为工作地图发送至服务器,从而服务器可以将该工作地图分发至其它机器人,以使其它机器人可以利用该工作地图进行任务处理,如执行清洁任务或配送任务等,从而可以使没有搭载图像采集设备的其它机器人(如搭载激光雷达的机器人),也可以将自身的工作地图与机器人102所得的工作地图结合进行任务处理,提高任务处理的效率。
其中,机器人102可以但不限于是各种配送机器人、扫地机器人、清洁机器人、送餐机器人、服务机器人、导航机器人或者作业机器人等。机器人102上搭载有图像采集设备,通过图像采集设备可以对工作环境进行图像采集。
在一个实施例中,如图2所示,提供了一种地图创建方法,以该方法应用于图1中的机器人为例进行说明,包括以下步骤:
S202,获取通过图像采集设备采集的图像关键帧,以及图像关键帧在第一坐标系中对应的第一机器人位姿;第一坐标系是待生成的新地图对应的坐标系。
其中,图像采集设备为搭载在机器人上、用于对机器人的工作环境进行图像采集的设备,可以是各种用于采集RGB(Red Green Blue,红绿蓝)图像或深度图的镜头、摄像头、相机或者摄像机等。本实施例中,以图像采集设备为RGB相机为例进行说明。图像关键帧为从机器人采集的工作环境图像中选取的部分图像。例如,图像关键帧为从工作环境图像中选取的第1帧、第10帧图像。
第一机器人位姿是机器人在采集图像关键帧时的位姿,可以包括机器人的位置和姿态。位置用于表示机器人在空间中的定位信息,可以用矩阵表示。例如,位置可以表示为,其中,/>分别是机器人在X轴、Y轴与Z轴的位置坐标。姿态用于表示机器人在空间中的状态,包括俯仰角(Pitch)、偏航角(Yaw)和翻滚角(Roll),该姿态可以用矩阵表示。例如,姿态可以表示为/>。
在一个实施例中,机器人上搭载有图像采集设备,图像采集设备的镜头朝上,对天花板进行拍摄。机器人从拍摄所得的图像中提取图像关键帧。
在一个实施例中,S202具体包括:获取通过图像采集设备对工作环境进行采集所得的环境图像,并将首帧环境图像确定为图像关键帧;从第二帧环境图像开始遍历,将当前遍历到的环境图像和前一图像关键帧进行特征点匹配,得到匹配结果,并在匹配结果满足匹配条件时,将当前遍历到的环境图像设置为图像关键帧。
其中,匹配结果可以用当前遍历到的环境图像和前一图像关键帧间特征点的匹配率来表示。匹配条件可以是匹配率小于预设值;或者匹配条件也可以是匹配率在预设范围内等。
机器人首先提取各环境图像中的特征点。例如,机器人可以通过FAST(FeaturesFrom Accelerated Segment Test,角点检测算法)、BRIEF(Binary Robust IndependentElementary Features,二进制独立冗余特征提取)或者ORB(Oriented FAST andRotatedBRIEF)等特征点提取算法提取环境图像中的特征点。然后机器人将首帧环境图像确定为图像关键帧,并对首帧环境图像中的特征点创建关联的地图点,并将创建的地图点和首帧环境图像进行关联。机器人将第二帧环境图像和首帧环境图像进行特征点匹配,如果第二帧环境图像和首帧环境图像中特征点的匹配结果满足匹配条件,则将第二帧环境图像设置为图像关键帧;如果第二帧环境图像和首帧环境图像中特征点的匹配结果不满足匹配条件,则将第二帧环境图像设置为非图像关键帧。如果第二帧环境图像被设置为图像关键帧,则在第二帧环境图像的特征点中,选取与首帧环境图像中特征点相匹配的特征点,并将相匹配的特征点对应的地图点和第二帧环境图像进行关联。对于第三帧环境图像,如果第二帧环境图像被设置为图像关键帧,则机器人将第三帧环境图像和第二帧环境图像进行特征点匹配,如果第二帧环境图像未被设置为图像关键帧,则机器人将第三帧环境图像和首帧环境图像进行特征点匹配,并在匹配结果满足匹配条件时,将第三帧环境图像设置为图像关键帧。若第三帧环境图像被设置为图像关键帧,则在第三帧图像中选取和前一图像关键帧中特征点相匹配的特征点,如果对这些特征点创建了地图点,则将第三帧图像和地图点进行关联;对于尚未创建地图点的特征点,针对这些特征点创建地图点,并将创建的地图点和第三帧图像以及前一图像关键帧进行关联。依次类推,机器人按照相同的原理对其余环境图像进行关键帧设置,并将图像关键帧中的特征点和地图点相关联。
S204,根据第一机器人位姿以及图像关键帧,生成新地图。
其中,新地图为包含机器人扩大后的工作场景的地图。由于图像关键帧中包含特征点,特征点关联了地图点,而第一机器人位姿是机器人在采集各图像关键帧时的位姿,根据第一机器人位姿以及图像关键帧中特征点的像素坐标,可以确定各特征点所关联的地图点的空间坐标,根据该空间坐标可以生成新地图。
S206,将第一机器人位姿映射至历史地图对应的第二坐标系中,得到第二机器人位姿。
其中,历史地图是历史创建的地图。例如,若机器人为配送机器人,之前的工作环境为一楼的配送区域,则历史地图为对一楼的配送区域创建的地图。第二坐标系为历史地图对应的坐标系,可以为世界坐标系。由于第一坐标系和第二坐标系间具有特定的映射关系,根据该映射关系可以将第一机器人位姿映射至第二坐标系中,得到第二机器人位姿。
在一个实施例中,S206具体包括:在图像关键帧和创建历史地图时拍摄的历史关键帧中查询相似关键帧;根据相似关键帧中的匹配特征点,确定第一坐标系和第二坐标系间的映射关系;根据映射关系将第一机器人位姿映射至第二坐标系中,得到第二机器人位姿。
S208,基于第二机器人位姿以及图像关键帧,生成新地图与历史地图的融合地图。
其中,融合地图是包含新地图中地图点与历史地图中地图点的地图。机器人确定新地图中地图点在第二坐标系中的第二空间坐标,根据第二空间坐标将新地图中地图点添加在历史地图中,得到融合地图。
在一个实施例中,S208具体包括:在图像关键帧的特征点中,确定关联了新地图中地图点的目标特征点;根据第二机器人位姿以及目标特征点的像素坐标,确定目标特征点关联的地图点在第二坐标系中的第二空间坐标;根据第二空间坐标将新地图中地图点添加至历史地图中,得到融合地图。
第二机器人位姿是机器人在第二坐标系中的位姿,根据第二机器人位姿以及目标特征点的像素坐标,可以确定目标特征点关联的地图点在第二坐标系中的第二空间坐标。例如,机器人可以通过三角化求解三维空间坐标的方法,根据第二机器人位姿以及目标特征点的像素坐标进行计算,得到目标特征点关联的地图点在第二坐标系中的第二空间坐标。
机器人根据第二机器人位姿以及目标特征点的像素坐标,确定目标特征点关联的地图点在第二坐标系中的第二空间坐标,并根据第二空间坐标将新地图中地图点添加至历史地图中。从而可以对新地图和历史地图进行融合,在机器人的工作场景扩大时,将工作场景扩大部分的新地图添加至历史地图中,提高了创建地图的效率。
S210,在融合地图中删除冗余地图点,得到创建完成的地图。
由于部分新地图中地图点和历史地图中地图点可能重复,也即二者中部分地图点可能为同一三维空间中点对应的地图点,重复的地图点为冗余地图点。机器人在得到融合地图后,将融合地图中的冗余地图点删除,得到创建完成的地图。
在一个实施例中,S210具体包括:分别基于每个历史关键帧确定查询区域;若在查询区域中查找到第二机器人位姿,确定查询区域对应的目标历史关键帧;在历史地图中,确定目标历史关键帧关联的历史地图点,并将所确定的历史地图点作为冗余地图点;在融合地图中删除冗余地图点以及目标历史关键帧,得到创建完成的地图。
机器人首先确定拍摄历史关键帧时的历史位姿,然后根据历史位姿确定查询区域。在一个实施例中,机器人可以历史位姿为中心,按照查询半径确定查询区域。查询半径例如可以根据需要进行设置,例如可以设置为1米、2米或者5米等。若在查询区域中查找到第二机器人位姿,说明机器人在创建新地图时到达过该查询区域或者附近,新地图中有该查询区域或者附近的地图点,机器人将查询区域对应的历史关键帧关联的历史地图点作为冗余地图点进行删除。
机器人若在历史关键帧对应的查询区域中查找到第二机器人位姿,在历史地图中,确定查询区域对应的目标历史关键帧关联的历史地图点,并将所确定的历史地图点作为冗余地图点并在融合地图中删除冗余地图点,得到创建完成的地图。从而可以实现新地图和历史地图的融合,避免创建完成的地图中有重复的冗余地图点。
上述实施例中,获取通过图像采集设备采集的图像关键帧,以及图像关键帧在第一坐标系中对应的第一机器人位姿;第一坐标系是待生成的新地图对应的坐标系;根据第一机器人位姿以及图像关键帧中特征点的像素坐标,生成新地图。在历史地图对应的第二坐标系中,确定第一机器人位姿对应的第二机器人位姿,从而将机器人在新地图中的位姿映射到历史地图的坐标系中。基于第二机器人位姿以及图像关键帧,生成新地图与历史地图的融合地图;在融合地图中删除冗余地图点,得到创建完成的地图。实现了将新地图和历史地图进行融合。在机器人的工作场景扩大时,可以在已有的历史地图的基础上进行扩展建图,不需要重新创建全部工作场景的地图,缩短了地图创建的时间,提高了地图创建的效率。
在一个实施例中,如图3所示,S204具体包括如下步骤:
S302,确定图像关键帧中的特征点;特征点关联了新地图中地图点。
其中,特征点是图像中能够反映图像特征的像素点。例如,特征点可以是图像边缘的像素点。又例如,特征点可以是有特定颜色的像素点。机器人从图像关键帧中提取特征点,特征点关联了新地图中地图点。
S304,根据第一机器人位姿以及特征点的像素坐标进行计算,得到特征点在第一坐标系中的第一空间坐标。
机器人根据拍摄图像关键帧时的第一机器人位姿,以及图像关键帧中的特征点的像素坐标进行计算,可以得到特征点在新地图对应的第一坐标系中的第一空间坐标。例如,机器人可以通过三角化方法,根据第一机器人位姿和特征点的像素坐标进行计算,得到特征点在第一坐标系中的第一空间坐标,也即得到特征点在新地图中的空间坐标。
S306,计算第一空间坐标对应的投影误差。
机器人在得到特征点在第一坐标系中的第一空间坐标时,可以根据第一机器人位姿对第一空间坐标进行投影,然后将投影所得的坐标值和特征点的像素坐标间的差值作为投影误差。
S308,基于投影误差对第一机器人位姿和第一空间坐标进行优化,分别得到优化后的第一机器人位姿与优化后的第一空间坐标。
机器人根据投影误差对第一机器人位姿和第一空间坐标进行优化,得到优化后的第一机器人位姿与优化后的第一空间坐标,使根据优化后的第一机器人位姿与优化后的第一空间坐标计算所得的投影误差最小。
S310,根据优化后的第一机器人位姿与优化后的第一空间坐标生成新地图。
机器人根据各特征点对应的优化后的第一空间坐标,将特征点关联的地图点添加至新地图中,以完成新地图的绘制。
在一个实施例中,机器人可以通过回环检测算法,对优化后的第一机器人位姿的漂移进行修正,根据修正后的第一机器人位姿生成新地图。
在一个实施例中,如图4所示,S310具体包括如下步骤:
S402,在图像关键帧中选取目标关键帧,并在其他图像关键帧中选取目标关键帧对应的第一相似关键帧。
其中,目标关键帧为图像关键帧中的特定帧,例如,目标关键帧可以是图像关键帧中的最后一帧。机器人在选取了目标关键帧时,在目标关键帧之外的其他图像关键帧中选取与目标关键帧相似的图像关键帧,作为第一相似关键帧。
S404,确定目标关键帧与第一相似关键帧中相匹配的特征点。
机器人在目标关键帧与第一相似关键帧中确定相匹配的特征点。具体地,机器人可以分别计算目标关键帧中各特征点对应的描述子,以及第一相似关键帧中各特征点对应的描述子,根据二者的描述子确定相匹配的特征点。
S406,根据相匹配的特征点在第一坐标系中的空间坐标,以及相匹配的特征点在目标关键帧中的像素坐标,确定目标关键帧对应的目标位姿。
假设机器人所确定的目标关键帧为E,目标关键帧对应的第一相似关键帧为S,机器人可以获得S中与E相匹配的特征点在第一坐标系中的空间坐标,将所获得的空间坐标作为E中特征点在第一坐标系中的空间坐标。根据E中特征点在第一坐标系中的空间坐标,以及E中特征点的像素坐标,确定机器人采集目标关键帧E时对应的目标位姿。
S408,根据目标位姿对优化后的第一机器人位姿进行调整,得到调整后位姿。
机器人在获取目标关键帧E对应的目标位姿时,可以根据目标位姿对优化后的第一机器人位姿进行调整。具体地,机器人可以对E与S之间的各图像关键帧对应的优化后的第一机器人位姿进行调整。例如,机器人可以通过PoseGraph优化方法对E与S之间的各图像关键帧对应的位姿进行调整,得到调整后位姿。
S410,遍历图像关键帧,并将当前遍历到的图像关键帧作为当前图像关键帧;基于调整后位姿,在图像关键帧中选取与当前图像关键帧对应的第二相似关键帧。
机器人从首个图像关键帧开始遍历,对于当前遍历到的图像关键帧(即当前图像关键帧),通过词袋模型从图像关键帧中查找当前图像关键帧对应的第二相似关键帧。在一个实施例中,对于每个当前图像关键帧,机器人根据该图像关键帧对应的调整后位姿确定目标区域,在目标区域范围内查找当前图像关键帧对应的第二相似关键帧。例如,目标区域可以是以调整后位姿为中心点的圆形区域,圆形区域的半径可以为1米、3米或者5米等。
S412,根据第二相似关键帧与当前图像关键帧间相匹配的特征点对当前图像关键帧对应的调整后位姿进行修正,直至遍历至最后一个图像关键帧,得到每个图像关键帧对应的修正后位姿。
机器人在确定当前图像关键帧对应的第二相似关键帧时,确定第二相似关键帧与当前图像关键帧间相匹配的特征点(假设分别为特征点A和A’)。然后获取第二相似关键帧中相匹配的特征点(特征点A)对应的空间坐标,根据该空间坐标和当前图像关键帧中相匹配的特征点(特征点A’)的像素坐标,重新确定当前图像关键帧对应的位姿,然后根据重新确定的位姿对当前图像关键帧和第二相似关键帧间所有图像关键帧对应的调整后位姿进行修正。例如,机器人可以通过PoseGraph优化方法对当前图像关键帧和第二相似关键帧间所有图像关键帧对应的调整后位姿进行修正。
S414,基于修正后位姿以及优化后的第一空间坐标生成新地图。
机器人根据优化后的第一空间坐标将地图点添加至新地图,并在新地图中保存修正后位姿。
上述实施例中,机器人首先对第一机器人位姿进行调整,然后对调整后位姿进行修正,并基于修正后位姿以及优化后的第一空间坐标生成新地图。从而可以修正位姿漂移,提高机器人位姿的准确性,进而提高了创建完成的地图的准确性。
在一个实施例中,如图5所示,S206具体包括如下步骤:
S502,在历史关键帧中,查询图像关键帧中的目标关键帧对应的第三相似关键帧。
其中,历史关键帧是机器人在创建历史地图的过程中采集的关键帧。机器人在创建历史地图的过程中,对工作环境进行图像采集,从采集的历史图像中选取历史关键帧。目标关键帧为图像关键帧中的特定关键帧。例如,目标关键帧可以为图像关键帧中的首个关键帧。第三相似关键帧为与目标关键帧相似的历史关键帧。例如,若历史关键帧A与目标关键帧相似,则历史关键帧A为目标关键帧对应的第三相似关键帧。在一个实施例中,机器人可以通过词袋模型,在历史关键中查找目标关键帧对应的第三相似关键帧。
S504,根据目标关键帧与第三相似关键帧,确定目标关键帧在第二坐标系中的目标位姿。
机器人确定目标关键帧与第三相似关键帧中相匹配的特征点,根据第三相似关键帧中相匹配的特征点在第二坐标系的空间坐标,以及目标关键帧中相匹配的特征点的像素坐标,确定目标关键帧在第二坐标系中的目标位姿。例如,机器人可以通过PnP(Perspective-n-Point,透视n点)算法,根据第三相似关键帧中相匹配的特征点在第二坐标系的空间坐标,以及目标关键帧中相匹配的特征点的像素坐标,确定目标关键帧在第二坐标系中的目标位姿,从而将目标关键帧在新地图对应的第一坐标系中的位姿转换到历史地图对应的第二坐标系中。
S506,基于目标位姿,将第一机器人位姿映射至历史地图对应的第二坐标系中,得到映射位姿。
机器人在确定了目标关键帧对应的目标位姿后,根据目标位姿将各图像关键帧对应的第一机器人位姿映射至历史地图对应的第二坐标系中。具体地,机器人首先确定各图像关键帧与目标关键帧在第一坐标系中的相对位置,根据相对位置以及目标关键帧在第二坐标系中的目标位姿,确定各图像关键帧在第二坐标系中的映射位姿。
S508,对映射位姿进行优化,并将优化后的映射位姿作为第二机器人位姿。
机器人在确定映射位姿后,对映射位姿进行优化,以提高映射位姿的准确性,然后将优化后的映射位姿作为第二机器人位姿。
在一个实施例中,S508具体包括:机器人对各图像关键帧进行遍历,当遍历至图像关键帧F时,在图像关键帧F周围目标区域内,通过词袋模型查找与图像关键帧F最相似的历史关键帧T。然后通过特征匹配算法,确定F与T之间相匹配的特征点,并通过PnP算法,根据相匹配的特征点计算F在第二坐标系中的位姿。在对全部的图像关键帧遍历完成后,通过PoseGraph优化方法,对各图像关键帧在第二坐标系中的位姿进行优化,得到优化后的映射位姿。
上述实施例中,机器人在历史关键帧中,查询图像关键帧中的目标关键帧对应的第三相似关键帧;根据目标关键帧与第三相似关键帧,确定目标关键帧在第二坐标系中的目标位姿;基于目标位姿,将第一机器人位姿映射至历史地图对应的第二坐标系中,得到映射位姿;对映射位姿进行优化,并将优化后的映射位姿作为第二机器人位姿。从而将第一坐标系中的第一机器人位姿转换到历史地图对应的第二坐标系,并提高了优化后的映射位姿的准确性,实现了新地图和历史地图的融合。
在一个实施例中,机器人上还搭载了运动传感器;S202具体包括:获取通过图像采集设备采集的图像关键帧,以及通过运动传感器输出的位姿;分别确定各图像关键帧对应的采集时间点;根据输出的位姿以及采集时间点进行计算,得到机器人采集各图像关键帧时的第一机器人位姿。
其中,运动传感器为用于检测机器人运动数据的传感器。例如,运动传感器可以为轮式里程计。机器人在运动过程中,通过运动传感器可以检测机器人的位姿,然后根据各图像关键帧对应的采集时间点,对运动传感器输出的位姿进行插值,得到机器人采集各图像关键帧时的第一机器人位姿。
上述实施例中,机器人获取通过图像采集设备采集的图像关键帧,以及通过运动传感器输出的位姿;分别确定各图像关键帧对应的采集时间点;根据输出的位姿以及采集时间点进行计算,得到机器人采集各图像关键帧时的第一机器人位姿。从而可以根据第一机器人位姿生成新地图并实现新地图和历史地图的融合,在机器人的工作场景扩大时,可以在已有的历史地图的基础上进行扩展建图,提高了地图创建的效率。
在一个实施例中,如图6所示,地图创建方法包括如下步骤:
S602,获取通过图像采集设备采集的图像关键帧,以及图像关键帧在第一坐标系中对应的第一机器人位姿;第一坐标系是待生成的新地图对应的坐标系。
其中,机器人在运动过程中,通过运动传感器可以检测机器人的位姿,然后根据各图像关键帧对应的采集时间点,对运动传感器输出的位姿进行插值,得到机器人采集各图像关键帧时的第一机器人位姿。
在一个实施例中,S602具体可以包括:获取通过图像采集设备对工作环境进行采集所得的环境图像,并将首帧环境图像确定为图像关键帧;从第二帧环境图像开始遍历,将当前遍历到的环境图像和前一图像关键帧进行特征点匹配,得到匹配结果,并在匹配结果满足匹配条件时,将当前遍历到的环境图像设置为图像关键帧。
S604,确定图像关键帧中的特征点;根据第一机器人位姿以及特征点的像素坐标进行计算,得到特征点在第一坐标系中的第一空间坐标。
S606,计算第一空间坐标对应的投影误差;基于投影误差对第一机器人位姿和第一空间坐标进行优化,分别得到优化后的第一机器人位姿与优化后的第一空间坐标。
S608,在图像关键帧中选取目标关键帧,并在其他图像关键帧中选取目标关键帧对应的第一相似关键帧;确定目标关键帧与第一相似关键帧中相匹配的特征点。
S610,根据相匹配的特征点在第一坐标系中的空间坐标,以及相匹配的特征点在目标关键帧中的像素坐标,确定目标关键帧对应的目标位姿。
S612,根据目标位姿对优化后的第一机器人位姿进行调整,得到调整后位姿;遍历图像关键帧,并将当前遍历到的图像关键帧作为当前图像关键帧;基于调整后位姿,在图像关键帧中选取与当前图像关键帧对应的第二相似关键帧。
S614,根据第二相似关键帧与当前图像关键帧间相匹配的特征点对当前图像关键帧对应的调整后位姿进行修正,直至遍历至最后一个图像关键帧,得到每个图像关键帧对应的修正后位姿。
S616,基于修正后位姿以及优化后的第一空间坐标生成新地图。
S618,在历史关键帧中,查询图像关键帧中的目标关键帧对应的第三相似关键帧;根据目标关键帧与第三相似关键帧,确定目标关键帧在第二坐标系中的目标位姿。
S620,基于目标位姿,将第一机器人位姿映射至历史地图对应的第二坐标系中,得到映射位姿;对映射位姿进行优化,并将优化后的映射位姿作为第二机器人位姿。
S622,在图像关键帧的特征点中,确定关联了新地图中地图点的目标特征点;根据第二机器人位姿以及目标特征点的像素坐标,确定目标特征点关联的地图点在第二坐标系中的第二空间坐标;根据第二空间坐标将新地图中地图点添加至历史地图中,得到融合地图。
S624,分别基于每个历史关键帧确定查询区域;若在查询区域中查找到第二机器人位姿,确定查询区域对应的目标历史关键帧。
S626,在历史地图中,确定目标历史关键帧关联的历史地图点,并将所确定的历史地图点作为冗余地图点;在融合地图中删除冗余地图点以及目标历史关键帧,得到创建完成的地图。
上述S602至S626的具体内容可以参考上文的具体实现过程。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的地图创建方法的地图创建装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个地图创建装置实施例中的具体限定可以参见上文中对于地图创建方法的限定,在此不再赘述。
在一个实施例中,如图7所示,提供了一种地图创建装置,包括:获取模块702、生成模块704、映射模块706和删除模块708,其中:
获取模块702,用于获取通过图像采集设备采集的图像关键帧,以及图像关键帧在第一坐标系中对应的第一机器人位姿;第一坐标系是待生成的新地图对应的坐标系;
生成模块704,用于根据第一机器人位姿以及图像关键帧,生成新地图;
映射模块706,用于将第一机器人位姿映射至历史地图对应的第二坐标系中,得到第二机器人位姿;
生成模块704,还用于基于第二机器人位姿以及图像关键帧,生成新地图与历史地图的融合地图;
删除模块708,用于在融合地图中删除冗余地图点,得到创建完成的地图。
上述实施例中,获取通过图像采集设备采集的图像关键帧,以及图像关键帧在第一坐标系中对应的第一机器人位姿;第一坐标系是待生成的新地图对应的坐标系;根据第一机器人位姿以及图像关键帧中特征点的像素坐标,生成新地图。在历史地图对应的第二坐标系中,确定第一机器人位姿对应的第二机器人位姿,从而将机器人在新地图中的位姿映射到历史地图的坐标系中。基于第二机器人位姿以及图像关键帧,生成新地图与历史地图的融合地图;在融合地图中删除冗余地图点,得到创建完成的地图。实现了将新地图和历史地图进行融合。在机器人的工作场景扩大时,可以在已有的历史地图的基础上进行扩展建图,不需要重新创建全部工作场景的地图,缩短了地图创建的时间,提高了地图创建的效率。
在一个实施例中,生成模块704,还用于:
确定图像关键帧中的特征点;特征点关联了新地图中地图点;
根据第一机器人位姿以及特征点的像素坐标进行计算,得到特征点在第一坐标系中的第一空间坐标;
计算第一空间坐标对应的投影误差;
基于投影误差对第一机器人位姿和第一空间坐标进行优化,分别得到优化后的第一机器人位姿与优化后的第一空间坐标;
根据优化后的第一机器人位姿与优化后的第一空间坐标生成新地图。
在一个实施例中,生成模块704,还用于:
在图像关键帧中选取目标关键帧,并在其他图像关键帧中选取目标关键帧对应的第一相似关键帧;
确定目标关键帧与第一相似关键帧中相匹配的特征点;
根据相匹配的特征点在第一坐标系中的空间坐标,以及相匹配的特征点在目标关键帧中的像素坐标,确定目标关键帧对应的目标位姿;
根据目标位姿对优化后的第一机器人位姿进行调整,得到调整后位姿;
遍历图像关键帧,并将当前遍历到的图像关键帧作为当前图像关键帧;基于调整后位姿,在图像关键帧中选取与当前图像关键帧对应的第二相似关键帧;
根据第二相似关键帧与当前图像关键帧间相匹配的特征点对当前图像关键帧对应的调整后位姿进行修正,直至遍历至的最后一个图像关键帧,得到每个图像关键帧对应的修正后位姿;
基于修正后位姿以及优化后的第一空间坐标生成新地图。
在一个实施例中,映射模块706,还用于:
在历史关键帧中,查询图像关键帧中的目标关键帧对应的第三相似关键帧;
根据目标关键帧与第三相似关键帧,确定目标关键帧在第二坐标系中的目标位姿;
基于目标位姿,将第一机器人位姿映射至历史地图对应的第二坐标系中,得到映射位姿;
对映射位姿进行优化,并将优化后的映射位姿作为第二机器人位姿。
在一个实施例中,生成模块704,还用于:
在图像关键帧的特征点中,确定关联了新地图中地图点的目标特征点;
根据第二机器人位姿以及目标特征点的像素坐标,确定目标特征点关联的地图点在第二坐标系中的第二空间坐标;
根据第二空间坐标将新地图中地图点添加至历史地图中,得到融合地图。
在一个实施例中,删除模块708,还用于:
分别基于每个历史关键帧确定查询区域;
若在查询区域中查找到第二机器人位姿,确定查询区域对应的目标历史关键帧;
在历史地图中,确定目标历史关键帧关联的历史地图点,并将所确定的历史地图点作为冗余地图点;
在融合地图中删除冗余地图点以及目标历史关键帧,得到创建完成的地图。
在一个实施例中,机器人上还搭载了运动传感器;获取模块,还用于:
获取通过图像采集设备采集的图像关键帧,以及通过运动传感器输出的位姿;
分别确定各图像关键帧对应的采集时间点;
根据输出的位姿以及采集时间点进行计算,得到机器人采集各图像关键帧时的第一机器人位姿。
在一个实施例中,获取模块702,还用于:
获取通过图像采集设备对工作环境进行采集所得的环境图像,并将首帧环境图像确定为图像关键帧;
从第二帧环境图像开始遍历,将当前遍历到的环境图像和前一图像关键帧进行特征点匹配,得到匹配结果,并在匹配结果满足匹配条件时,将当前遍历到的环境图像设置为图像关键帧。
上述地图创建装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种机器人,其内部结构图可以如图8所示。该机器人包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该机器人的处理器用于提供计算和控制能力。该机器人的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该机器人的输入/输出接口用于处理器与外部设备之间交换信息。该机器人的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种地图创建方法。该机器人的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该机器人的输入装置可以是显示屏上覆盖的触摸层,也可以是机器人外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的机器人的限定,具体的机器人可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种机器人,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random AccessMemory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种机器人,所述机器人上搭载有图像采集设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器用于执行所述计算机程序时实现如下步骤:
获取通过所述图像采集设备采集的图像关键帧,以及所述图像关键帧在第一坐标系中对应的第一机器人位姿;所述第一坐标系是待生成的新地图对应的坐标系;
确定所述图像关键帧中的特征点;所述特征点关联了所述新地图中地图点;根据所述第一机器人位姿以及所述特征点的像素坐标进行计算,得到所述特征点在所述第一坐标系中的第一空间坐标;计算所述第一空间坐标对应的投影误差;基于所述投影误差对所述第一机器人位姿和所述第一空间坐标进行优化,分别得到优化后的第一机器人位姿与优化后的第一空间坐标;根据所述优化后的第一机器人位姿与所述优化后的第一空间坐标生成所述新地图;
在历史关键帧中,查询所述图像关键帧中的目标关键帧对应的第三相似关键帧;根据所述目标关键帧与所述第三相似关键帧,确定所述目标关键帧在第二坐标系中的目标位姿;基于所述目标位姿,将所述第一机器人位姿映射至历史地图对应的第二坐标系中,得到映射位姿;对所述映射位姿进行优化,并将优化后的所述映射位姿作为第二机器人位姿;
在所述图像关键帧的特征点中,确定关联了所述新地图中地图点的目标特征点;根据所述第二机器人位姿以及所述目标特征点的像素坐标,确定所述目标特征点关联的地图点在所述第二坐标系中的第二空间坐标;根据所述第二空间坐标将所述新地图中地图点添加至所述历史地图中,得到融合地图;
分别基于每个所述历史关键帧确定查询区域;若在所述查询区域中查找到所述第二机器人位姿,确定所述查询区域对应的目标历史关键帧;在所述历史地图中,确定所述目标历史关键帧关联的历史地图点,并将所确定的历史地图点作为冗余地图点;在所述融合地图中删除所述冗余地图点以及所述目标历史关键帧,得到创建完成的地图。
2.根据权利要求1所述的机器人,其特征在于,所述图像采集设备的镜头朝上,对天花板进行拍摄。
3.根据权利要求2所述的机器人,其特征在于,所述根据所述优化后的第一机器人位姿与所述优化后的第一空间坐标生成所述新地图的步骤包括:
在所述图像关键帧中选取目标关键帧,并在其他所述图像关键帧中选取所述目标关键帧对应的第一相似关键帧;
确定所述目标关键帧与所述第一相似关键帧中相匹配的特征点;
根据所述相匹配的特征点在所述第一坐标系中的空间坐标,以及所述相匹配的特征点在所述目标关键帧中的像素坐标,确定所述目标关键帧对应的目标位姿;
根据所述目标位姿对优化后的第一机器人位姿进行调整,得到调整后位姿;
遍历所述图像关键帧,并将当前遍历到的图像关键帧作为当前图像关键帧;
基于所述调整后位姿,在所述图像关键帧中选取与所述当前图像关键帧对应的第二相似关键帧;
根据所述第二相似关键帧与所述当前图像关键帧间相匹配的特征点对所述当前图像关键帧对应的调整后位姿进行修正,直至遍历至最后一个图像关键帧,得到每个所述图像关键帧对应的修正后位姿;
基于所述修正后位姿以及所述优化后的第一空间坐标生成所述新地图。
4.根据权利要求1所述的机器人,其特征在于,所述根据所述第二机器人位姿以及所述目标特征点的像素坐标,确定所述目标特征点关联的地图点在所述第二坐标系中的第二空间坐标,包括:
通过三角化求解三维空间坐标的方法,根据所述第二机器人位姿以及所述目标特征点的像素坐标进行计算,确定所述目标特征点关联的地图点在所述第二坐标系中的第二空间坐标。
5.根据权利要求1所述的机器人,其特征在于,所述目标关键帧是所述图像关键帧中的最后一帧或首个关键帧。
6.根据权利要求1所述的机器人,其特征在于,所述图像关键帧中的特征点是图像边缘的像素点。
7.根据权利要求1所述的机器人,其特征在于,所述机器人上还搭载了运动传感器;所述获取通过所述图像采集设备采集的图像关键帧,以及所述图像关键帧在第一坐标系中对应的第一机器人位姿包括:
获取通过所述图像采集设备采集的图像关键帧,以及通过所述运动传感器输出的位姿;
分别确定各所述图像关键帧对应的采集时间点;
根据所述输出的位姿以及所述采集时间点进行计算,得到所述机器人采集各所述图像关键帧时的第一机器人位姿。
8.根据权利要求1所述的机器人,其特征在于,所述获取通过所述图像采集设备采集的图像关键帧包括:
获取通过所述图像采集设备对工作环境进行采集所得的环境图像,并将首帧所述环境图像确定为图像关键帧;
从第二帧所述环境图像开始遍历,将当前遍历到的所述环境图像和前一图像关键帧进行特征点匹配,得到匹配结果,并在所述匹配结果满足匹配条件时,将当前遍历到的所述环境图像设置为图像关键帧。
9.一种地图创建方法,其特征在于,所述地图创建方法包括权利要求1-8任一项所述的机器人所实现的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-8任一项所述的机器人所实现的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310736958.6A CN116481516B (zh) | 2023-06-21 | 2023-06-21 | 机器人、地图创建方法和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310736958.6A CN116481516B (zh) | 2023-06-21 | 2023-06-21 | 机器人、地图创建方法和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116481516A CN116481516A (zh) | 2023-07-25 |
CN116481516B true CN116481516B (zh) | 2023-10-13 |
Family
ID=87221764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310736958.6A Active CN116481516B (zh) | 2023-06-21 | 2023-06-21 | 机器人、地图创建方法和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116481516B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110146098A (zh) * | 2019-05-06 | 2019-08-20 | 北京猎户星空科技有限公司 | 一种机器人地图扩建方法、装置、控制设备和存储介质 |
WO2020233724A1 (zh) * | 2019-05-23 | 2020-11-26 | 全球能源互联网研究院有限公司 | 一种基于视觉slam的电网作业环境地图的构建方法及系统 |
WO2021057743A1 (zh) * | 2019-09-27 | 2021-04-01 | Oppo广东移动通信有限公司 | 地图融合方法及装置、设备、存储介质 |
CN113674409A (zh) * | 2021-07-20 | 2021-11-19 | 中国科学技术大学先进技术研究院 | 基于视觉多机器人即时定位与同步建图方法、系统及介质 |
CN113724383A (zh) * | 2021-07-30 | 2021-11-30 | 深圳市普渡科技有限公司 | 机器人拓扑地图生成系统、方法、计算机设备及存储介质 |
-
2023
- 2023-06-21 CN CN202310736958.6A patent/CN116481516B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110146098A (zh) * | 2019-05-06 | 2019-08-20 | 北京猎户星空科技有限公司 | 一种机器人地图扩建方法、装置、控制设备和存储介质 |
WO2020233724A1 (zh) * | 2019-05-23 | 2020-11-26 | 全球能源互联网研究院有限公司 | 一种基于视觉slam的电网作业环境地图的构建方法及系统 |
WO2021057743A1 (zh) * | 2019-09-27 | 2021-04-01 | Oppo广东移动通信有限公司 | 地图融合方法及装置、设备、存储介质 |
CN113674409A (zh) * | 2021-07-20 | 2021-11-19 | 中国科学技术大学先进技术研究院 | 基于视觉多机器人即时定位与同步建图方法、系统及介质 |
CN113724383A (zh) * | 2021-07-30 | 2021-11-30 | 深圳市普渡科技有限公司 | 机器人拓扑地图生成系统、方法、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116481516A (zh) | 2023-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110568447B (zh) | 视觉定位的方法、装置及计算机可读介质 | |
CN108717710B (zh) | 室内环境下的定位方法、装置及系统 | |
CN110738143B (zh) | 定位方法及装置、设备、存储介质 | |
WO2022121640A1 (zh) | 机器人重定位方法、装置、机器人和可读存储介质 | |
JP2020509506A (ja) | カメラ姿勢情報の決定方法、装置、デバイス及び記憶媒体 | |
US11682170B2 (en) | Generating three-dimensional geo-registered maps from image data | |
JP6096634B2 (ja) | 仮想現実を用いた3次元地図表示システム | |
CN110648363A (zh) | 相机姿态确定方法、装置、存储介质及电子设备 | |
CN112750203A (zh) | 模型重建方法、装置、设备及存储介质 | |
KR102464271B1 (ko) | 포즈 획득 방법, 장치, 전자 기기, 저장 매체 및 프로그램 | |
CN112243518A (zh) | 获取深度图的方法、装置及计算机存储介质 | |
CN114782646A (zh) | 房屋模型的建模方法、装置、电子设备和可读存储介质 | |
CN116109765A (zh) | 标注对象的三维渲染方法、装置、计算机设备、存储介质 | |
CN114981845A (zh) | 图像扫描方法及装置、设备、存储介质 | |
CN113808269A (zh) | 地图生成方法、定位方法、系统及计算机可读存储介质 | |
CN116740669B (zh) | 多目图像检测方法、装置、计算机设备和存储介质 | |
JP2002163647A (ja) | レンズ歪み係数算出装置および算出方法、レンズ歪み係数算出プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
CN117726747A (zh) | 补全弱纹理场景的三维重建方法、装置、存储介质和设备 | |
CN116481516B (zh) | 机器人、地图创建方法和存储介质 | |
CN113298871B (zh) | 地图生成方法、定位方法及其系统、计算机可读存储介质 | |
US11961256B2 (en) | Method for indoor localization using deep learning | |
US11908096B2 (en) | Stereoscopic image acquisition method, electronic device and storage medium | |
CN114750147B (zh) | 机器人的空间位姿确定方法、装置和机器人 | |
CN116698007A (zh) | 融合地图构建方法、装置、机器人和存储介质 | |
CN116824068B (zh) | 面向复杂动态场景中点云流的实时重建方法、装置及设备 |
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 |