CN112097772B - 机器人及其地图构建方法和装置 - Google Patents

机器人及其地图构建方法和装置 Download PDF

Info

Publication number
CN112097772B
CN112097772B CN202010843669.2A CN202010843669A CN112097772B CN 112097772 B CN112097772 B CN 112097772B CN 202010843669 A CN202010843669 A CN 202010843669A CN 112097772 B CN112097772 B CN 112097772B
Authority
CN
China
Prior art keywords
robot
particle
particles
positions
estimated
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
Application number
CN202010843669.2A
Other languages
English (en)
Other versions
CN112097772A (zh
Inventor
何婉君
刘志超
熊友军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ubtech Robotics Corp
Original Assignee
Ubtech Robotics Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ubtech Robotics Corp filed Critical Ubtech Robotics Corp
Priority to CN202010843669.2A priority Critical patent/CN112097772B/zh
Publication of CN112097772A publication Critical patent/CN112097772A/zh
Priority to PCT/CN2020/140420 priority patent/WO2022036981A1/zh
Application granted granted Critical
Publication of CN112097772B publication Critical patent/CN112097772B/zh
Priority to US18/171,630 priority patent/US20230205212A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Optics & Photonics (AREA)
  • Electromagnetism (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本申请提供了一种机器人的地图构建方法,包括通过粒子滤波方法获取机器人的粒子位置;检测机器人的粒子位置是否与机器人的历史轨迹点的位置匹配;如果机器人的粒子位置与机器人历史轨迹点的位置匹配,则通过图优化方法优化机器人的轨迹;根据优化后的轨迹构建地图。通过双重优化后的机器人的轨迹构建地图,从而能够有效的结合粒子滤波和图优化方法来降低粒子定位误差,有利于得到更为准确的地图。

Description

机器人及其地图构建方法和装置
技术领域
本申请属于机器人领域,尤其涉及机器人及其地图构建方法和装置。
背景技术
随着机器人技术的不断发展,越来越多的机器人应用到了人们的生活和工作中,给人们生活和工作带来了方便。在机器人自动执行任务过程中,通常需要获取场景地图信息。机器人根据所获取的场景地图信息,可以自动完成所需要执行的任务。
在对机器人所在场景进行建图时,通常使用粒子滤波方法或图优化方法对机器人进行定位。但是,在大型场景中,由于粒子群无法匹配收敛至正确的位置,或者图像优化方法所采用的单一路径进行更新时,由于测量误差,会导致机器人轨迹偏差较大,不利于降低机器人所构建的地图的误差。
发明内容
有鉴于此,本申请实施例提供了一种机器人及其地图构建方法和装置,以解决现有技术中机器人构建地图时,由于测量误差,导致机器人轨迹念头较大,不利于降低所构建的地图的误差的问题。
本申请实施例的第一方面提供了一种机器人的地图构建方法,所述方法包括:
通过粒子滤波方法获取机器人的粒子位置;
检测机器人的粒子位置是否与机器人的历史轨迹点的位置匹配;
如果机器人的粒子位置与机器人历史轨迹点的位置匹配,则通过图优化方法优化机器人的轨迹;
根据优化后的轨迹构建地图。
结合第一方面,在第一方面的第一种可能实现方式中,通过粒子滤波方法获取机器人的粒子位置,包括:
估计机器人在地图中所对应的粒子位置;
根据扫描的障碍物信息确定机器人位置与估计的粒子位置的匹配度;
根据机器人与粒子的匹配度,获取所估计的粒子位置的权重;
根据粒子的权重,对粒子重新采样,得到筛选后的粒子,并返回执行估计机器人在地图中所对应的粒子位置的步骤,直到筛选后的粒子符合预设要求。
结合第一方面的第一种可能实现方式,在第一方面的第二种可能实现方式中,根据扫描的障碍物信息确定机器人位置与估计的多个粒子位置的匹配度,包括:
获取机器人所扫描的障碍物的扫描位置;
根据所估计的多个粒子位置获取所对应的障碍物的估计位置;
根据扫描位置与估计位置的距离,确定机器人与粒子位置的匹配度。
结合第一方面的第二种可能实现方式,在第一方面的第三种可能实现方式中,根据扫描位置与估计位置的距离,确定机器人与粒子位置的匹配度,包括:
分别确定粒子位置对应的各个障碍物的估计位置,与机器人扫描的障碍物的扫描位置之间的最短距离;
根据粒子位置中的各个障碍物的估计位置与扫描位置的最短距离,计算所估计的粒子位置与机器人的匹配度。
结合第一方面的第一种可能实现方式,在第一方面的第四种可能实现方式中,根据机器人与粒子的匹配度,获取所估计的粒子位置的权重,包括:
根据机器人与粒子在不同时刻的粒子位置的匹配度之和,得到粒子的权重值;
将多个粒子的权重值归一化处理,得到归一化后的粒子所对应的粒子位置的权重。
结合第一方面,在第一方面的第五种可能实现方式中,检测机器人的粒子位置是否与机器人的历史轨迹点的位置匹配,包括:
获取当前时间的多个粒子的当前位姿;
获取当前时间之前的多个时刻分别确定的历史轨迹点;
将所述当前位姿与所述历史轨迹点进行匹配。
结合第一方面的第五种可能实现方式,在第一方面的第五种可能实现方式中,通过图优化方法优化机器人的轨迹,包括:
根据历史轨迹点构建图网络,确定图网络中的节点位姿和边位姿;
根据所述节点位姿和边位姿确定误差优化函数,根据所述误差优化函数对历史轨迹点中的粒子位姿进行优化。
本申请实施例的第二方面提供了一种机器人的地图构建装置,所述装置包括:
粒子位置获取单元,用于通过粒子滤波方法获取机器人的粒子位置;
位置匹配单元,用于检测机器人的粒子位置是否与机器人的历史轨迹点的位置匹配;
轨迹优化单元,用于如果机器人的粒子位置与机器人历史轨迹点的位置匹配,则通过图优化方法优化机器人的轨迹;
地图构建单元,用于根据优化后的轨迹构建地图。
本申请实施例的第三方面提供了一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面任一项所述方法的步骤。
本申请实施例与现有技术相比存在的有益效果是:在机器人逐步移动过程中,可以通过粒子滤波优化机器人的粒子位置,并在检测到机器人与历史轨迹点的位置匹配时,通过图优化进一步优化机器人的轨迹,根据双重优化后的机器人的轨迹构建地图,从而能够有效的结合粒子滤波和图优化方法来降低粒子定位误差,有利于得到更为准确的地图。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种机器人的地图构建方法的实现流程示意图;
图2是本申请实施例提供的通过粒子滤波方法获取机器人的粒子位置的实现流程示意图;
图3是本申请实施例提供的图网络示意图;
图4是本申请实施例提供的一种机器人的地图构建装置的示意图;
图5是本申请实施例提供的机器人的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
图1为本申请实施例提供的一种机器人的地图构建方法的实现流程示意图,详述如下:
S101,通过粒子滤波方法获取机器人的粒子位置。
粒子滤波是利用粒子集来表示概率,由后验概率中抽取的随机状态粒子来表达其分布。机器人在接收到激光数据后,对扫描得到的每一帧激光数据进行位姿匹配,并对机器人的位姿进行运动估计,通过运动估计和扫描匹配后,对粒子权重进行更新,并对更新了权重的粒子进行重采样,保证粒子的多样性。通过粒子滤波方法获取机器人的粒子位置的过程可以如图2所示,包括:
S201,估计机器人在地图中所对应的粒子位置。
机器人可以根据轮式编码器所输出的里程数据,通过里程计运动模型对机器人的位姿进行估计,获取机器人所对应的多个粒子位置。其中,粒子位置用于表示机器人的位置,在粒子滤波过程中,粒子位置也即地图中的粒子。
在可能的实现方式中,还可以通过机器人的其它传感设备,估计机器人在地图中所对应的粒子位置。比如,可以通过速度传感器、方位传感器检测机器人移动的距离和移动的方向,通过移动速度和移动方向估计机器人在当前时刻的位置,确定机器人位置所对应的粒子位置。
其中,当前时刻所估计的机器人的粒子位置,可以采用当前时刻之前的前一时刻的机器人对应的粒子位置为基础进行运动估计。前一时刻的机器人对应的粒子位置可以包括多个,可以根据前一时刻的多个粒子位置,估计得到当前时刻机器人对应的多个粒子位置。前一时刻的粒子位置,可以为通过粒子滤波方法优化后的粒子群,即前一时刻的粒子位置可以包括一个或者多个。或者,前一时刻的粒子位置,也可以为机器人通过采集的障碍物信息所确定的位置。
S202,根据扫描的障碍物信息确定机器人位置与估计的粒子位置的匹配度。
在当前时刻,通过运动或者其它传感设备获取所估计的机器人的粒子位置后,可以获取当前时刻所采集的障碍物信息。
根据S201所估计的机器人在当前时刻的粒子位置,结合在当前时刻之前由机器人所扫描得到的障碍物信息,可以得到所估计的粒子位置分别对应的障碍物信息。该障碍物信息可以包括粒子位置与障碍物之间的距离,以及粒子位置与障碍物的方位关系等。
可以将所估计的当前时刻的每个粒子位置对应的障碍物信息,与当前采集的障碍物信息进行比较,包括与各个障碍物的距离的比较,以及与各个障碍物的方位关系的比较。可以根据距离和方位信息的匹配度,确定粒子位置与机器人位置的匹配度。
在一种实现方式中,可以将扫描的障碍物,与粒子位置对应的障碍物进行匹配计算,查找所扫描的障碍物最接近的粒子位置对应的障碍物,并获取扫描的障碍物与最接近的粒子位置对应的障碍物之间的距离。比如,当扫描到N(N大于或等于1)个障碍物时,在待匹配计算的粒子位置对应障碍物中,分别查找N个障碍物最接近的障碍物,并分别计算扫描的各个障碍物与最接近的障碍物之间的距离。假设扫描的障碍物在地图(可以为栅格地图)中的位姿为Pmapi,所估计的粒子位置所对应的障碍物位姿为Phiti,扫描的各个障碍物与最接近的障碍物之间的距离表示为dis(Pmapi,Phiti)。在一种可能的实现方式中,该粒子位置与该激光帧扫描的障碍物信息的匹配度可以表示为:
Figure BDA0002642313280000061
S203,根据机器人与粒子的匹配度,获取所估计的粒子位置的权重。
计算得到机器人与粒子的匹配度后,可以将该匹配度作为机器人在该粒子位置的权重,即粒子位置的权重。
在一种实现方式中,粒子位置的权重w可以表示为所有时刻加起来的权重和。即通过计算各个时刻的粒子位置的权重w1、w2……wi,对于第i时刻的粒子位置的权重,可以表示为:w1+w2+…+wi
在一种实现方式中,为了便于衡量各个时刻的粒子的权重,在得到粒子位置的权重w后,可以将权重进行归一化处理,归一化权重
Figure BDA0002642313280000062
表示当前粒子位置的权重除以所有粒子位置的权重和,通过公式表示为:
Figure BDA0002642313280000063
Figure BDA0002642313280000071
其中scoret为某时刻的粒子匹配度,wi为某粒子的权重,M为粒子的数目。
S204,根据粒子的权重,对粒子重新采样,得到筛选后的粒子,并返回执行估计机器人在地图中所对应的粒子位置的步骤,直到筛选后的粒子符合预设要求。
获取到当前时刻的各个粒子位置对应的权重后,可以根据该权重进行粒子重采样。在重采样过程中,权重较大的粒子位置被采样选中的机率较高,权重较小的粒子位置被采样选中的机率较低。
可以通过预先设定的指标来判断粒子权重的相似度,即判断粒子分布是否均匀。比如,可以使用监测指标Neff来评价粒子的相似度:
Figure BDA0002642313280000072
Figure BDA0002642313280000073
为第i个粒子的归一化权重,M为粒子的数目。
当监测指标低于预设的阈值时,表明粒子分布不均,某些粒子离真实值较近,某些粒子离真实值较远,需要进行重采样。重采样将删除权重较小的粒子位置,在权重较大的粒子位置周围进行多次采样,构成新的粒子集合。直到监测指标大于或等于预设的阈值,表明粒子均匀分布在真实值附近。
S102,检测机器人的粒子位置是否与机器人的历史轨迹点的位置匹配。
在可能的实现方式中,检测机器人的粒子位置是否与机器人的历史轨迹点的位置匹配时,可以根据机器人在当前时间对应的粒子群中选择权重最大的粒子,与权重最大的粒子所构成的历史轨迹进行位置匹配。如果当前时刻的粒子与历史轨迹中的粒子的位姿的差异小于预设的差异阈值(粒子可以为权重最大的粒子,也可以粒子滤波处理后的粒子群),则可确定当前的粒子位置与历史轨迹产生回环,当前的粒子位置即为回环点。
在可能的实现方式中,如果当前时刻的粒子与历史轨迹中的粒子的位姿的匹配度小于预设的差异阈值(粒子可以为权重最大的粒子,也可以粒子滤波处理后的粒子群),并且匹配的历史轨迹的粒子不与当前时刻的粒子相连,则可确定当前的粒子位置与历史轨迹产生回环,当前的粒子位置即为回环点。这样可以避免机器人未移动时被误认为产生回环。
S103,如果机器人的粒子位置与机器人历史轨迹点的位置匹配,则通过图优化方法优化机器人的轨迹。
当机器人当前时刻的位姿,与历史轨迹中的粒子的位姿的差异小于预设的差异阈值,或者进一步确认匹配的历史轨迹的粒子不与当前时刻的粒子相连,则确认当前时刻的粒子位置为回环点。如图3所示,在这个回环中的各个时刻的粒子位置即为回环的节点。节点之间通过边连接表示位姿约束关系,连接当前时刻的粒子与回环点的边可以称为回环边,通过节点、边构成图网络。
如图3所示,节点位姿表示为T1,T2...Tn,节点i和节点j之间的边相对位姿为Tij,优化误差函数可表示为eij=ln(Tij -1Ti -1Tj)。可以使用LM(Levenberg-Marquardt,莱文贝格-马夸特)方法进行优化,可对轨迹进行调整,获得整体误差最小的各轨迹节点位姿。
对图优化修正处理后的粒子具有较高的准确度。在修正处理后的粒子的基础上,可以进一步通过强制重采样,删除权重较小的粒子,在权重较高的粒子位姿为基础,采样构成新的粒子集合,并将所有采样的粒子权重设置为1/M(共采样M个粒子)进一步计算匹配度,直到所筛选的粒子符合预设的要求。
S104,根据优化后的轨迹构建地图。
机器人的粒子位置经过粒子滤波和图优化处理后,可以获取较为精确的历史轨迹,可以选取权重较高的粒子,遍历整个历史轨迹对应的激光数据,对激光数据进行拼接,得到二维激光图像,比如可以得到二维激光栅格地图等。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图4为本申请实施例提供的一种机器人的地图构建装置的示意图,所述机器人的地图构建装置包括:
粒子位置获取单元401,用于通过粒子滤波方法获取机器人的粒子位置;
位置匹配单元402,用于检测机器人的粒子位置是否与机器人的历史轨迹点的位置匹配;
轨迹优化单元403,用于如果机器人的粒子位置与机器人历史轨迹点的位置匹配,则通过图优化方法优化机器人的轨迹;
地图构建单元404,用于根据优化后的轨迹构建地图。
图4所示的机器人的地图构建装置,与图1所示的机器人的地图构建方法对应。
图5是本申请一实施例提供的机器人的示意图。如图5所示,该实施例的机器人5包括:处理器50、存储器51以及存储在所述存储器51中并可在所述处理器50上运行的计算机程序52,例如机器人的地图构建程序。所述处理器50执行所述计算机程序52时实现上述各个机器人的地图构建方法实施例中的步骤。或者,所述处理器50执行所述计算机程序52时实现上述各装置实施例中各模块/单元的功能。
示例性的,所述计算机程序52可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器51中,并由所述处理器50执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序52在所述机器人5中的执行过程。
所述机器人可包括,但不仅限于,处理器50、存储器51。本领域技术人员可以理解,图5仅仅是机器人5的示例,并不构成对机器人5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述机器人还可以包括输入输出设备、网络接入设备、总线等。
所称处理器50可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器51可以是所述机器人5的内部存储单元,例如机器人5的硬盘或内存。所述存储器51也可以是所述机器人5的外部存储设备,例如所述机器人5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器51还可以既包括所述机器人5的内部存储单元也包括外部存储设备。所述存储器51用于存储所述计算机程序以及所述机器人所需的其他程序和数据。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

1.一种机器人的地图构建方法,其特征在于,所述方法包括:
通过粒子滤波方法获取机器人的粒子位置;
在当前时间对应的粒子群中选择权重最大的粒子,与权重最大的粒子所构成的历史轨迹进行位置匹配,检测机器人的粒子位置是否与机器人的历史轨迹点的位置匹配;
如果机器人的粒子位置与机器人历史轨迹点的位置匹配,则通过图优化方法优化机器人的轨迹;
根据优化后的轨迹构建地图。
2.根据权利要求1所述的方法,其特征在于,通过粒子滤波方法获取机器人的粒子位置,包括:
估计机器人在地图中所对应的粒子位置;
根据扫描的障碍物信息确定机器人位置与估计的粒子位置的匹配度;
根据机器人与粒子的匹配度,获取所估计的粒子位置的权重;
根据粒子的权重,对粒子重新采样,得到筛选后的粒子,并返回执行估计机器人在地图中所对应的粒子位置的步骤,直到筛选后的粒子符合预设要求。
3.根据权利要求2所述的方法,其特征在于,根据扫描的障碍物信息确定机器人位置与估计的多个粒子位置的匹配度,包括:
获取机器人所扫描的障碍物的扫描位置;
根据所估计的多个粒子位置获取所对应的障碍物的估计位置;
根据扫描位置与估计位置的距离,确定机器人与粒子位置的匹配度。
4.根据权利要求3所述的方法,其特征在于,根据扫描位置与估计位置的距离,确定机器人与粒子位置的匹配度,包括:
分别确定粒子位置对应的各个障碍物的估计位置,与机器人扫描的障碍物的扫描位置之间的最短距离;
根据粒子位置中的各个障碍物的估计位置与扫描位置的最短距离,计算所估计的粒子位置与机器人的匹配度。
5.根据权利要求2所述的方法,其特征在于,根据机器人与粒子的匹配度,获取所估计的粒子位置的权重,包括:
根据机器人与粒子在不同时刻的粒子位置的匹配度之和,得到粒子的权重值;
将多个粒子的权重值归一化处理,得到归一化后的粒子所对应的粒子位置的权重。
6.根据权利要求1所述的方法,其特征在于,检测机器人的粒子位置是否与机器人的历史轨迹点的位置匹配,包括:
获取当前时间的多个粒子的当前位姿;
获取当前时间之前的多个时刻分别确定的历史轨迹点;
将所述当前位姿与所述历史轨迹点进行匹配。
7.根据权利要求6所述的方法,其特征在于,通过图优化方法优化机器人的轨迹,包括:
根据历史轨迹点构建图网络,确定图网络中的节点位姿和边位姿;
根据所述节点位姿和边位姿确定误差优化函数,根据所述误差优化函数对历史轨迹点中的粒子位姿进行优化。
8.一种机器人的地图构建装置,其特征在于,所述装置包括:
粒子位置获取单元,用于通过粒子滤波方法获取机器人的粒子位置;
位置匹配单元,用于在当前时间对应的粒子群中选择权重最大的粒子,与权重最大的粒子所构成的历史轨迹进行位置匹配,检测机器人的粒子位置是否与机器人的历史轨迹点的位置匹配;
轨迹优化单元,用于如果机器人的粒子位置与机器人历史轨迹点的位置匹配,则通过图优化方法优化机器人的轨迹;
地图构建单元,用于根据优化后的轨迹构建地图。
9.一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述方法的步骤。
CN202010843669.2A 2020-08-20 2020-08-20 机器人及其地图构建方法和装置 Active CN112097772B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202010843669.2A CN112097772B (zh) 2020-08-20 2020-08-20 机器人及其地图构建方法和装置
PCT/CN2020/140420 WO2022036981A1 (zh) 2020-08-20 2020-12-28 机器人及其地图构建方法和装置
US18/171,630 US20230205212A1 (en) 2020-08-20 2023-02-20 Mapping method for mobile robot, mobile robot and computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010843669.2A CN112097772B (zh) 2020-08-20 2020-08-20 机器人及其地图构建方法和装置

Publications (2)

Publication Number Publication Date
CN112097772A CN112097772A (zh) 2020-12-18
CN112097772B true CN112097772B (zh) 2022-06-28

Family

ID=73754192

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010843669.2A Active CN112097772B (zh) 2020-08-20 2020-08-20 机器人及其地图构建方法和装置

Country Status (3)

Country Link
US (1) US20230205212A1 (zh)
CN (1) CN112097772B (zh)
WO (1) WO2022036981A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112097772B (zh) * 2020-08-20 2022-06-28 深圳市优必选科技股份有限公司 机器人及其地图构建方法和装置
CN112946660A (zh) * 2021-01-28 2021-06-11 西北工业大学 一种基于多波束前视声呐的同时定位与建图方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105892461A (zh) * 2016-04-13 2016-08-24 上海物景智能科技有限公司 一种机器人所处环境与地图的匹配识别方法及系统
CN107063264A (zh) * 2017-04-13 2017-08-18 杭州申昊科技股份有限公司 一种适用于大规模变电站环境的机器人地图创建方法
CN109556611A (zh) * 2018-11-30 2019-04-02 广州高新兴机器人有限公司 一种基于图优化和粒子滤波的融合定位方法
CN110487276A (zh) * 2019-08-20 2019-11-22 北京理工大学 一种基于相关分析的采样矢量匹配定位方法
CN111337018A (zh) * 2020-05-21 2020-06-26 上海高仙自动化科技发展有限公司 定位方法及装置、智能机器人及计算机可读存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9037396B2 (en) * 2013-05-23 2015-05-19 Irobot Corporation Simultaneous localization and mapping for a mobile robot
CN105509755B (zh) * 2015-11-27 2018-10-12 重庆邮电大学 一种基于高斯分布的移动机器人同步定位与地图构建方法
US9927814B2 (en) * 2016-03-28 2018-03-27 Fetch Robotics, Inc. System and method for localization of robots
CN109343540A (zh) * 2018-11-30 2019-02-15 广东工业大学 一种基于回环检测的slam后端轨迹优化方法
CN110472585B (zh) * 2019-08-16 2020-08-04 中南大学 一种基于惯导姿态轨迹信息辅助的vi-slam闭环检测方法
CN112097772B (zh) * 2020-08-20 2022-06-28 深圳市优必选科技股份有限公司 机器人及其地图构建方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105892461A (zh) * 2016-04-13 2016-08-24 上海物景智能科技有限公司 一种机器人所处环境与地图的匹配识别方法及系统
CN107063264A (zh) * 2017-04-13 2017-08-18 杭州申昊科技股份有限公司 一种适用于大规模变电站环境的机器人地图创建方法
CN109556611A (zh) * 2018-11-30 2019-04-02 广州高新兴机器人有限公司 一种基于图优化和粒子滤波的融合定位方法
CN110487276A (zh) * 2019-08-20 2019-11-22 北京理工大学 一种基于相关分析的采样矢量匹配定位方法
CN111337018A (zh) * 2020-05-21 2020-06-26 上海高仙自动化科技发展有限公司 定位方法及装置、智能机器人及计算机可读存储介质

Also Published As

Publication number Publication date
CN112097772A (zh) 2020-12-18
WO2022036981A1 (zh) 2022-02-24
US20230205212A1 (en) 2023-06-29

Similar Documents

Publication Publication Date Title
US10852139B2 (en) Positioning method, positioning device, and robot
CN111536964B (zh) 机器人定位方法及装置、存储介质
CN110587597B (zh) 一种基于激光雷达的slam闭环检测方法及检测系统
CN111209978B (zh) 三维视觉重定位方法、装置及计算设备、存储介质
CN110969649A (zh) 一种激光点云与地图的匹配评价方法、介质、终端和装置
CN112097772B (zh) 机器人及其地图构建方法和装置
CN115063454A (zh) 多目标跟踪匹配方法、装置、终端及存储介质
CN112198878A (zh) 一种即时地图构建方法、装置、机器人及存储介质
CN114593735B (zh) 一种位姿预测方法及装置
CN115249266A (zh) 航路点位置预测方法、系统、设备及存储介质
CN113252023A (zh) 基于里程计的定位方法、装置及设备
CN114091515A (zh) 障碍物检测方法、装置、电子设备和存储介质
CN111113405B (zh) 一种机器人获得位置服务的方法及机器人
CN112833912B (zh) 一种v-slam地图校验方法、装置及设备
WO2022252482A1 (zh) 机器人及其环境地图构建方法和装置
CN113440054B (zh) 扫地机器人充电基座范围的确定方法和装置
CN115147497A (zh) 一种标定方法、装置及电子设备
CN116486063A (zh) 检测框标定方法、装置、设备及计算机可读存储介质
CN110609561A (zh) 一种行人跟踪方法、装置、计算机可读存储介质及机器人
CN116958266B (zh) 闭环检测方法、装置、通信设备及存储介质
CN115077467B (zh) 清洁机器人的姿态估计方法、装置及清洁机器人
US20230288526A1 (en) Beacon map construction method, device, and computer-readable storage medium
CN114739382A (zh) 机器人及其建图方法、装置及存储介质
CN117893403A (zh) 地图拼接方法,电子设备及存储介质
CN117523165A (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