CN113459088B - 地图调整方法、电子设备及存储介质 - Google Patents

地图调整方法、电子设备及存储介质 Download PDF

Info

Publication number
CN113459088B
CN113459088B CN202110626460.5A CN202110626460A CN113459088B CN 113459088 B CN113459088 B CN 113459088B CN 202110626460 A CN202110626460 A CN 202110626460A CN 113459088 B CN113459088 B CN 113459088B
Authority
CN
China
Prior art keywords
map
target
straight line
coordinate system
determining
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
CN202110626460.5A
Other languages
English (en)
Other versions
CN113459088A (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.)
Shenzhen Silver Star Intelligent Group Co Ltd
Original Assignee
Shenzhen Silver Star Intelligent Group Co Ltd
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 Shenzhen Silver Star Intelligent Group Co Ltd filed Critical Shenzhen Silver Star Intelligent Group Co Ltd
Priority to CN202110626460.5A priority Critical patent/CN113459088B/zh
Publication of CN113459088A publication Critical patent/CN113459088A/zh
Application granted granted Critical
Publication of CN113459088B publication Critical patent/CN113459088B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本申请适用于机器人技术领域,提供了地图调整方法、电子设备及存储介质,包括:获取传感器数据,所述传感器数据包括机器人的环境探测传感器探测目标环境得到的各个探测点的信息;根据所述传感器数据,确定各个所述探测点在建图坐标系中的坐标,所述建图坐标系为根据所述机器人的初始位姿信息确定的坐标系;根据各个所述探测点在所述建图坐标系中的坐标,确定基准直线;其中,所述基准直线上包含的所述探测点的数量大于或者等于预设阈值;根据所述基准直线与目标坐标系的坐标轴之间的夹角,调整当前已建地图,得到目标地图。本申请实施例能够调整得到不倾斜的目标地图,减少机器人的定位误差。

Description

地图调整方法、电子设备及存储介质
技术领域
本申请属于机器人技术领域,尤其涉及一种地图调整方法、电子设备及存储介质。
背景技术
目前,机器人通常能够通过即时定位与地图构建(simultaneous localizationand mapping,SLAM)技术,构建该机器人周围环境对应的地图。然而,机器人在构建地图时,通常是以机器人启动时的初始位置为起始点开始构建地图的,这种方式构建出的地图可能存在一定的倾斜,该倾斜的地图不便于后续的定位与运动决策,从而影响机器人的工作效率。
发明内容
有鉴于此,本申请实施例提供了地图调整方法、电子设备及存储介质,以解决现有技术中机器人构建得到的地图存在倾斜的问题。
本申请实施例的第一方面提供了一种地图调整方法,包括:
获取传感器数据,所述传感器数据包括机器人的环境探测传感器探测目标环境得到的各个探测点的信息;
根据所述传感器数据,确定各个所述探测点在建图坐标系中的坐标,所述建图坐标系为根据所述机器人的初始位姿信息确定的坐标系;
根据各个所述探测点在所述建图坐标系中的坐标,确定基准直线;其中,所述基准直线上包含的所述探测点的数量大于或者等于预设阈值;
根据所述基准直线与目标坐标系的坐标轴之间的夹角,调整当前已建地图,得到目标地图;其中,所述当前已建地图为基于各个所述探测点在所述建图坐标系中的坐标构建得到的地图,所述目标坐标系为预设的能够平直呈现地图的坐标系,所述目标地图以所述目标坐标系为参考坐标系的地图。
可选地,所述根据各个所述探测点在所述建图坐标系中的坐标,确定基准直线,包括:
根据各个所述探测点在所述建图坐标系中的坐标,确定目标数目条直线;
从所述目标数目条直线中确定基准直线。
可选地,若所述机器人的初始位置与墙壁的距离小于预设距离,则所述从所述目标数目条直线中确定基准直线,包括:
将所述目标数目条直线中与所述建图坐标系的指定坐标轴相交为正的直线确定为基准直线。
可选地,所述从所述目标数目条直线中确定基准直线,包括:
从所述目标数目条直线中确定两条互相平行的直线;
将所述两条互相平行的直线中,包含的探测点数较多的直线确定为基准直线。
可选地,所述从所述目标数目条直线中确定基准直线,包括:
从所述目标数目条直线中确定两条互相垂直的直线;
将所述两条互相垂直的直线中,包含的探测点数较多的直线确定为基准直线。
可选地,所述从所述目标数目条直线中确定基准直线,包括:
从所述目标数目条直线中,确定包含的探测点数最多的直线为基准直线。
可选地,所述根据所述基准直线与目标坐标系的坐标轴之间的夹角,调整当前已建地图,得到目标地图,包括:
根据所述基准直线与所述目标坐标系的第一坐标轴之间的夹角,确定旋转角度;
根据所述旋转角度,旋转所述当前已建地图,得到目标地图。
可选地,在所述根据所述旋转角度,旋转所述当前已建地图,得到目标地图之后,还包括:
获取新增的传感器数据;
根据所述新增的传感器数据及所述旋转角度,扩建所述目标地图。
本申请实施例的第二方面提供了一种地图调整装置,包括:
第一获取单元,用于获取传感器数据,所述传感器数据包括机器人的环境探测传感器探测目标环境得到的各个探测点的信息;
探测点坐标确定单元,用于根据所述传感器数据,确定各个所述探测点在建图坐标系中的坐标,所述建图坐标系为根据所述机器人的初始位姿信息确定的坐标系;
基准直线确定单元,用于根据各个所述探测点在所述建图坐标系中的坐标,确定基准直线;其中,所述基准直线上包含的所述探测点的数量大于或者等于预设阈值;
调整单元,用于根据所述基准直线与目标坐标系的坐标轴之间的夹角,调整当前已建地图,得到目标地图;其中,所述当前已建地图为基于各个所述探测点在所述建图坐标系中的坐标构建得到的地图,所述目标坐标系为预设的能够平直呈现地图的坐标系,所述目标地图以所述目标坐标系为参考坐标系的地图。
本申请实施例的第三方面提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,当所述处理器执行所述计算机程序时,使得电子设备实现如所述地图调整方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被处理器执行时,使得电子设备实现如所述地图调整方法的步骤。
本申请实施例的第五方面提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述第一方面所述的地图调整方法。
本申请实施例与现有技术相比存在的有益效果是:本申请实施例中,通过获取传感器数据,并根据传感器数据确定机器人探测目标环境得到的各个探测点对应在建图坐标系中的坐标,之后,根据各个探测点在该建图坐标系中的坐标,确定基准直线,并根据该基准直线与目标坐标系的坐标轴之间的夹角,调整当前已建地图,得到目标地图。由于基准直线为包含的探测点的数量大于预设阈值的直线,即,该基准直线为包含尽量多的探测点的直线,因此,该基准直线能够反映基于各个探测点所构建的当前已建地图的主方向;从而使得,根据该基准直线和目标坐标系的坐标轴之间的夹角,能够调整该当前已建地图的主方向,得到以目标坐标系为参考坐标系的目标地图。由于该目标坐标系为预设的能够平直呈现地图的坐标系,因此该目标地图为能够平直呈现目标环境的信息的地图,即能够将原本可能存在倾斜的当前已建地图调整为不倾斜的目标地图,减少机器人后续的定位误差,便于机器人基于该目标地图准确地实现运动决策,提高机器人的工作效率。并且,该平直呈现的目标地图能够更直观准确地呈现目标环境的情况,从而方便用户查看,便于用户对机器人的工作情况进行追踪,进而提高用户与机器人的交互效率,提高用户体验。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1是本申请实施例提供的一种当前已建地图的示意图;
图2是本申请实施例提供的一种目标地图的示意图;
图3是本申请实施例提供的一种地图调整方法的实现流程示意图;
图4是本申请实施例提供的一种地图调整装置的示意图;
图5是本申请实施例提供的电子设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
目前,机器人在构建地图时,通常是以机器人启动时的初始位置为起始点开始构建地图的,这种方式构建出的地图可能存在一定的倾斜,该倾斜的地图不便于后续的定位与运动决策,从而影响机器人的工作效率。
为了解决该技术问题,本申请提供了一种地图调整方法、装置、电子设备及存储介质,通过获取传感器数据,并根据传感器数据确定机器人探测目标环境得到的各个探测点在建图坐标系中的坐标,之后,根据各个探测点在该建图坐标系中的坐标,确定基准直线,并根据该基准直线与目标坐标系的坐标轴之间的夹角,调整当前已建地图,得到目标地图。由于基准直线为包含的探测点的数量大于预设阈值的直线,即,该基准直线为包含尽量多的探测点的直线,因此,该基准直线能够反映基于各个探测点所构建的当前已建地图的主方向;从而使得,根据该基准直线和目标坐标系的坐标轴之间的夹角,能够调整该当前已建地图的主方向,得到以目标坐标系为参考坐标系的目标地图。由于该目标坐标系为预设的能够平直呈现地图的坐标系,因此该目标地图为能够平直呈现目标环境的信息的地图,即能够将原本可能存在倾斜的当前已建地图调整为不倾斜的目标地图,减少机器人后续的定位误差,便于机器人基于该目标地图准确地实现运动决策,提高机器人的工作效率。并且,该平直呈现的目标地图能够更直观准确地呈现目标环境的情况,从而方便用户查看,便于用户对机器人的工作情况进行追踪,进而提高用户与机器人的交互效率,提高用户体验。
示例性地,图1示出了以机器人启动时的起始位置作为起始点构建得到的当前已建地图,该当前已建地图存在一定的倾斜,导致目标环境中原本平直的墙壁在该当前已建地图中呈现为锯齿状的边缘线。图2示出了经过本申请实施例的地图调整方法,对该当前已建地图进行调整后得到的目标地图,该目标地图能够平直地呈现目标环境的信息,使得目标环境中平直的墙壁在地图中更加准确地呈现(具体呈现为较为平直的边缘线),以便机器人自身的定位和运动决策,也便于用户查看。
实施例一:
图3示出了本申请实施例提供的一种地图调整方法的流程示意图,该地图调整方法的执行主体为电子设备,该电子设备可以为机器人(例如扫地机器人),还可以为能够与机器人建立通信连接的其它电子设备。如图3所述的地图调整方法详述如下:
在S301中,获取传感器数据,所述传感器数据包括机器人的环境探测传感器探测目标环境得到的各个探测点的信息。
本申请实施例中,传感器数据为机器人的环境探测传感器探测目标环境得到的数据,其具体包含了探测目标环境得到的各个探测点的信息。其中,目标环境为机器人当前所处的环境;机器人的环境探测传感器具体为用于检测机器人所处环境及状况的传感器,可以包括激光雷达、超声波传感器、图像传感器、力觉传感器、听觉传感器中的任意一项或者多项。具体地,各个探测点具体对应的为目标环境中存在的物体(例如墙壁或者其它障碍物)对应的点云数据中的点,例如激光雷达数据中的激光点。当环境探测传感器探测到目标环境中的墙壁或者其它障碍物等物体时,生成对应的探测点的信息。具体地,本申请实施例的探测点的信息可以包括该探测点与机器人当前的距离信息。
在S302中,根据所述传感器数据,确定各个所述探测点在建图坐标系中的坐标,所述建图坐标系为根据所述机器人的初始位姿信息确定的坐标系。
本申请实施例中,建图坐标系(也可以成为SLAM坐标系)为根据机器人的初始位姿信息确定的二维坐标系,该建图坐标系为机器人基于SLAM技术构建地图时需要参考的坐标系。具体地,机器人的初始位姿信息指的是机器人启动环境探测传感器开始获取第一帧传感器数据时,该机器人的位姿信息。具体地,根据该初始位姿信息包括初始位置的信息和初始朝向的信息,以该初始位置作为坐标原点,以该初始朝向作为x轴正方向,以垂直该初始朝向的方向作为y轴正方向,即可构建得到该建图坐标系。在本步骤中,获取到传感器数据后,根据该传感器数据包含的各个探测点的信息,确定各个探测点在该建图坐标系中的坐标。
可选地,本申请实施例的环境探测传感器包括激光雷达,上述的传感器数据包括预设数目帧激光雷达数据,对应地,上述的步骤S302,包括:
对于每帧激光雷达数据中包含的探测点,根据所述探测点在所述激光雷达数据中的信息以及获取所述激光雷达数据时所述机器人的位姿信息,确定所述探测点在所述建图坐标系中的坐标。
具体地,机器人在需要通过SLAM技术进行地图构建时,启动激光雷达开始获取激光雷达数据。其中,每获取到一帧激光雷达数据时,存储该帧激光雷达数据以及记录该时刻机器人的位姿信息(x,y,th),之后,根据该帧激光雷达数据中包含的探测点的信息以及该位姿信息,确定该探测点在建图坐标系中的坐标。具体地,机器人在每确定一帧激光雷达数据中的各个探测点在建图坐标系中的坐标后,即可以对应构建一块地图,该地图可以为直接以建图坐标系为坐标系的二维点云地图,也可以为以预设的栅格坐标系为坐标系的二维栅格地图,该栅格坐标系为根据建图坐标系以及预设的栅格大小确定的与建图坐标系的原点、坐标轴重合,并且以该预设的栅格大小为最小单元的坐标系。
作为示例而非限定的是,机器人的位姿信息(x,y,th)中,x表示机器人在机器人坐标系下的第一水平轴方向(可以称为x轴方向)上的坐标值,y表示机器人在该机器人坐标系下的第二水平轴方向(该第二水平轴方向与第一水平轴方向垂直,可以称为y轴方向)的坐标值,th表示机器人位置连线与该机器人坐标系的竖直轴(与第一水平轴、第二水平轴构成的水平面相垂直的轴,可以称为z轴)之间所成的夹角,机器人位置连线指的是机器人当前在机器人坐标系下的位置点与该机器人坐标系的原点之间的连线。
具体地,对于一帧激光雷达数据,其包含的各个探测点的信息包括激光点的序号i及距离r的信息,可以用(i,r)表示。其中,激光点的序号i能够表示该激光点为激光雷达按角度顺序扫描到的第几个激光点,根据激光雷达的扫描精度以及该序号i,可以确定该激光点对应的角度信息。示例性地,该激光雷达的扫描精度为1度,即,激光雷达每移动一度扫描得到对应的一个激光点,扫描360度即可得到360个激光点,得到一帧激光雷达数据。本申请实施例中,对于一个探测点,即一个激光点来说,可以先根据该激光点的序号i和距离r将极坐标表示形式的激光点的坐标转换为预设的激光雷达坐标系下的坐标,该预设的激光雷达坐标系为笛卡尔坐标系。示例性地,设激光雷达的扫描精度为1度,对于第j帧激光雷达数据中的一个激光点,根据该激光点的序号i及距离r的信息(i,r),以及以下的激光雷达坐标转换公式,可以求得该激光点对应的激光雷达坐标
在确定激光点在激光雷达坐标系下的激光雷达坐标后,可以根据该激光雷达坐标,以及激光雷达在采集该激光点所在的该帧激光雷达数据时机器人的位姿信息,求取该激光点对应在建图坐标系下的坐标(xj,i,yj,i)。其中,当该帧激光雷达数据为第一帧激光雷达数据时,该位姿信息即为初始位姿信息。具体地,对于第j帧激光雷达数据中的第i个激光点,其从激光雷达坐标/>转换到建图坐标系的坐标(xj,i,yj,i)的转换公式如下:
其中,(xj,yj,thj)表示采集该第j帧激光雷达数据时机器人的位姿信息。
在S303中,根据各个所述探测点在所述建图坐标系中的坐标,确定基准直线;其中,所述基准直线上包含的所述探测点的数量大于或者等于预设阈值。
在确定各个探测点在建图坐标系的坐标后,可以根据各个探测点在建图坐标系中的坐标,通过随机抽样一致算法(Random sample consensus,RANSAC),求得能够包含预设阈值及其以上数量的探测点的直线,从而确定该基准直线。具体地,上述的传感器数据包含的探测点的数量需要足够大,例如传感器数据的帧数大于预设帧数,从而使得该预设帧数包含的探测点的总数目足够大,能够准确地进行直线确定。
在S304中,根据所述基准直线与目标坐标系的坐标轴之间的夹角,调整当前已建地图,得到目标地图;其中,所述当前已建地图为基于各个所述探测点在所述建图坐标系中的坐标构建得到的地图,所述目标坐标系为预设的能够平直呈现地图的坐标系,所述目标地图以所述目标坐标系为参考坐标系的地图。
本申请实施例中,当前已建地图为根据当前获取到的传感器数据,基于各个探测点在建图坐标系中的坐标构建得到的地图。具体地,机器人在每获取到一帧传感器数据后,即可自动构建对应的一块地图;当获取到预设数目帧传感器数据后,即可根据累计生成的各块地图拼接得到该当前已建地图。在一个实施例中,机器人构建的地图为直接显示连续的探测点的二维点云地图,则该当前已建地图为直接以该建图坐标系为坐标系的地图。在另一个实施例中,机器人构建的地图为二维栅格地图,该二维栅格地图的栅格坐标系为根据建图坐标系以及预设的栅格大小确定的与建图坐标系的原点、坐标轴重合,但坐标值为离散的整数值的坐标系;具体地,可以根据各个探测点在建图坐标系中的坐标,以及预设的建图坐标系与栅格坐标系的转换关系,确定各个探测点对应在栅格坐标系中的位置,从而构建得到二维栅格地图。
本申请实施例中,目标坐标系为预设的能够平直呈现地图的坐标系,具体为与电子设备的显示单元的画面坐标系的坐标轴重合、平行或者垂直的坐标系,使得以该目标坐标系为参考坐标系的目标地图能够在显示单元中不倾斜、平直地显示。
在本步骤中,具体可以根据先计算基准直线与目标坐标系的坐标轴之间的夹角,之后,根据该夹角,将该当前已建地图进行旋转,使得旋转后的当前已建地图中与该基准直线对应的位置与该目标坐标系的坐标轴平行或者垂直垂直,从而使得当前已建地图的主方向调整至与目标坐标系的坐标轴平行或者垂直,得到平直显示的目标地图。
可选地,上述的步骤S303包括:
S30301:根据各个所述探测点在所述建图坐标系中的坐标,确定目标数目条直线;
S30302:从所述目标数目条直线中确定基准直线。
本申请实施例中,具体根据各个探测点在建图坐标系中的坐标,通过RANSAC算法确定出目标数目条直线,之后,再从目标数目条直线中选择最优的一条直线作为基准直线,从而能够进一步提高确定出的基准直线的准确性。
具体地,上述的步骤S30301,包括:
A1:输入各个探测点在建图坐标系中的坐标作为初始的探测点集合的信息;
A2:将迭代次数iterNum初始化为1。
A3:若当前迭代次数iterNum大于预设最大迭代次数lineMaxIter,则返回所有选定直线的直线参数并结束,否则,从当前的探测点集合中随机采样两个点p1、p2,根据p1和p2在建图坐标系中的坐标,确定待定直线line及其直线参数。
A4:分别计算各个探测点到该待定直线的距离,将与该待定直线的距离小于误差距离的探测点确定为内点,并统计得到该待定直线的内点数目m。
A5:计算理想迭代次数。设传感器数据包含的探测点的总数为n;预设的内点先验概率为probability,表示迭代过程从n个探测点中随机选取出的点均为内点的概率;w为每次从n个探测点中选取到一个内点的概率,w=内点的数目m/探测点的总数n,则理想迭代次数k为:
k=log(1-probability)/log(1-wn)
A6:若当前的迭代次数iterNum大于或者等于理想迭代次数k,则返回该待定直线的直线参数,并执行步骤A7;否则,将迭代次数iterNum加1,并返回执行步骤A3。
A7:若该待定直线的内点数目m大于预设阈值MinLinePointNum,则执行步骤A8,否则执行步骤A9。
A8:根据该待定直线的内点,重新拟合直线,确定出更新后的更为准确的直线参数,将该更新后的直线参数作为选定直线的直线参数进行保存。
A9:若当前选定直线的数量达到最大直线个数maxIterNum,则直接返回所有选定直线的直线参数并结束;否则,将各个探测点中已被确定为选定直线上的内点的探测点剔除后得到更新后的探测点集合,返回执行上述的步骤A3。
通过上述的步骤A1~A9,可以准确地得到目标数目条直线。其中,根据探测点不同的分布情况,该目标数目最小为1,最大为预设的最大直线个数maxIterNum。当该目标数目为1时,即只存在一条由探测点构成的直线时,则直接以该条直线作为基准直线。当目标数目大于1时,则从目标数目条直线中选取一条作为基准直线。
可选地,若所述机器人的初始位置与墙壁的距离小于预设距离,则所述从所述目标数目条直线中确定基准直线,包括:
将所述目标数目条直线中与所述建图坐标系的指定坐标轴相交为正的直线确定为基准直线。
本申请实施例中,若机器人的初始位置与墙壁的距离小于预设距离,即机器人开始启动建图时的位置靠近墙壁,此时,说明当前以机器人的初始位置为原点构建的建图坐标系的坐标轴能够与该墙壁贴近,该墙壁对应的直线在建图坐标系中显示为与该建图坐标系的指定坐标轴(例如x轴)相交为正的直线。而由于墙壁对应的直线所在的方向能够准确地表示地图的主方向,因此,在确定了目标数目条直线后,可以查找与该建图坐标系的坐标轴的x轴相交为正的直线,将该直线确定为基准直线。具体地,对于直线参数为ax+by+c=0的直线,若其满足x=-c/a,且x>0,则该直线即为与x轴相交为正的直线。
示例性地,在一个实施例中,若检测到机器人从充电桩开始启动进行建图,则确定该机器人的初始位置与墙壁的距离小于预设距离。由于充电桩通常是靠墙设置的,因此,当机器人从充电桩开始启动进行建图时,说明机器人开始见图时的位置(即初始位置)靠近墙壁,因此,此时可以直接以目标数目条直线中与该建图坐标系的x轴相交为正的直线确定为基准直线。
本申请实施例中,由于能够在机器人的初始位置为与墙壁的距离小于预设距离时,将目标数目条直线中与建图坐标系的指定坐标轴相交为正的直线,即墙壁对应的直线确定为基准直线,使得后续根据该基准直线,能够将该当前已建地图中该墙壁对应的直线调整至与目标坐标系的坐标轴平行或者垂直,使得墙壁对应的直线能够在目标地图中平直地呈现。
可选地,所述从所述目标数目条直线中确定基准直线,包括:
从所述目标数目条直线中确定两条互相平行的直线;
将所述两条互相平行的直线中,包含的探测点数较多的直线确定为基准直线。
具体地,当目标数目大于或者等于3时,从目标数目条直线中确定两条互相平行的直线。进一步地,当目标数目较大时,可以先从目标数目条直线中选择点数最多的指定数目(例如4)条直线,之后,再从这指定数目条直线中确定两条互相平行的直线。
具体地,本申请实施例中,互相平行指的是在误差范围内平行。具体地,设直线1的直线方程为a1x+b1y+c1=0,直线2的直线方程为a2x+b2y+c2=0,则先计算两条直线之间的夹角余弦值并根据该夹角余弦值,确定余弦绝对值tmocv=fabs(cosθ),其中fabs()为求取绝对值的函数。之后,将该余弦绝对值tmov与平行误差阈值pThresh进行比较,若tmov大于pThresh,则判断直线1和直线2在误差范围内互相平行。其中,该平行误差阈值pThresh为预设的略小于1的值,例如0.9、0.99等。进一步地,通过该方法,求取目标数目或者指定数目条直线中所有互相平行的直线,并将各组互相平行的直线中,对应的余弦绝对值tmov最大的一组互相平行的直线确定为最为平行的一组直线,将该组直线中的两条直线最终确定为本步骤得到的两条互相平行的直线。在确定两条互相平行的直线后,将这两条互相平行的直线中,包含的探测点数较多的直线确定为基准直线。
举以下例子说明所述“将所述两条互相平行的直线中,包含的探测点数较多的直线确定为基准直线”,例如,假设两条互相平行的直线包括直线甲和直线乙,其中,直线甲所包含的探测点数为8,直线乙所包含的探测点数为10,直线乙所包含的探测点数比直线甲所包含的探测点数多,故可将直线乙确定为基准直线。
本申请实施例中,通过确定互相平行的两条直线,并将两条直线中探测点较多的直线确定为基准直线,能够使得该基准直线能够最大化地反映基于各个探测点所构建的当前已建地图的主方向,提高后续地图调整的准确性。
可选地,所述从所述目标数目条直线中确定基准直线,包括:
从所述目标数目条直线中确定两条互相垂直的直线;
将所述两条互相垂直的直线中,包含的探测点数较多的直线确定为基准直线。
除了可以通过确定互相平行的直线的方式,本申请实施例中,还可以通过从目标数目条直线中确定两条互相垂直的直线的方式来确定基准直线。在一个实施例中,具体可以在从目标数目条直线中无法确定出互相平行的两条直线后,再执行从所述目标数目条直线中确定两条互相垂直的直线的步骤。
具体地,本申请实施例中,互相垂直指的是在误差范围内垂直。具体地,类似上述的算法求取得到两条直线的余弦绝对值tmov后,将该余弦绝对值与垂直误差阈值vThresh进行比较,若tmov小于vThresh,则判断这两条直线互相垂直。其中,该垂直误差阈值vThresh为接近0的值,例如0.1、0.01等。进一步地,通过该方法,求取目标数目或者指定数目直线中所有互相垂直的直线,并将各组互相垂直的直线中,对应的余弦绝对值最小的一组互相垂直的直线确定为最为垂直的一组直线,将该组直线中的两条直线最终确定为本步骤得到的两条互相垂直的直线。在确定两条互相垂直的直线后,将两条互相垂直的直线中,包含的探测点数较多的直线确定为基准直线。
本申请实施例中,通过确定互相垂直的两条直线,并将两条直线中探测点较多的直线确定为基准直线,能够使得该基准直线能够较准确地反映基于各个探测点所构建的当前已建地图的主方向,提高后续地图调整的准确性。
可选地,所述从所述目标数目条直线中确定基准直线,包括:
从所述目标数目条直线中,确定包含的探测点数最多的直线为基准直线。
本申请实施例中,在确定出目标数目条直线后,从目标数目条直线中确定包含的探测点最多的直线作为最能够反映当前已建地图的主方向的基准直线。在一些实施例中,可以优先查找目标数目条执行中互相平行的直线或者互相垂直的直线,在无法从目标数目条直线中查找到互相平行或者互相垂直的直线后,再执行本步骤,将目标数目条直线中包含的探测点数最多的直线作为基准直线。
本申请实施例中,包含的探测点数最多的直线能够尽量准确地反映当前已建地图的主方向,从而提高后续基于该基准直线进行地图调整的准确性。
可选地,上述的步骤S304,包括:
S30401:根据所述基准直线与所述目标坐标系的第一坐标轴之间的夹角,确定旋转角度;
S30402:根据所述旋转角度,旋转所述当前已建地图,得到目标地图。
在步骤S30401中,在确定基准直线后,具体可以求取基准直线与目标坐标系的第一坐标轴之间的夹角,该第一坐标轴可以为从目标坐标系中任意指定的一个坐标轴,例如,可以为水平坐标轴。之后根据该基准直线与该第一坐标轴的夹角,可以确定当前的旋转角度mMainAngle。
在一个实施例中,可以通过求取该基准直线与第一坐标轴的余弦值,之后通过反余弦函数求得该基准直线与该第一坐标轴的夹角Linecos(单位为度),之后,直接以该夹角Linecos或者该夹角加上90度作为旋转角度mMainAngle(单位为度)。
在另一个实施例中,可以根据建图坐标系与目标坐标系的坐标转换关系,计算该基准直线在目标坐标系中的直线参数;之后,根据该直线参数,确定该基准直线在目标坐标系中的斜率,根据该斜率与反正切函数,求得该基准直线与目标坐标系的水平坐标轴的夹角thLine(单位为度)。之后,根据该夹角thLine与以下的角度转换公式,求得旋转角度mMainAngle(单位为度):
其中fabs()为求取绝对值的函数。通过以上的角度转换公式,可以将旋转角度约束为-45度到45度之间的值,从而减少调整地图时需要旋转的幅度,提高地图调整效率。示例性地,若求得当前基准直线与目标坐标系的水平坐标轴的夹角thLine为100度,则根据该角度转换公式,求得当前的旋转角度为90-100=-10度,则确定将当前已建地图逆时针旋转10度,即可使得基准直线与目标坐标系的水平坐标轴垂直、目标坐标系的竖直坐标轴平行,从而能够得到在目标坐标系中平直呈现的目标地图。
在步骤S30402中,根据求取到的旋转角度,对该当前已建地图进行旋转,得到目标地图。在一个实施例中,该当前已建地图为包含连续的探测点的信息的二维点云地图,则可以直接根据旋转角度对该当前已建地图进行旋转,得到目标地图。
可选地,若该当前已建地图为二维栅格地图,则需要将离散的栅格坐标转换为连续的SLAM坐标,再进行相应的旋转操作。此时,上述的步骤S30402,包括:
根据二维栅格地图的栅格坐标系与建图坐标系的转换关系,将二维栅格地图中原始的栅格坐标转换为建图坐标系中的SLAM坐标;
根据所述旋转角度,对各个SLAM坐标计算旋转变换,得到旋转后的SLAM坐标;
根据建图坐标系与栅格坐标系的转换关系,将旋转后的SLAM坐标对应转换成更新后的栅格坐标;
根据原始的栅格坐标中的栅格值(具体可以为0~1的概率值,表示该栅格对应的实际位置中存在障碍物的概率)填充至更新后的栅格坐标中,得到旋转后的二维栅格地图,将该旋转后的二维栅格地图作为目标地图。
作为示例而非限定的是,原始的栅格坐标系中的单个栅格值可为0或者1。例如,假设存在两个栅格值,包括栅格值A和栅格B,其中,栅格值A、栅格B具体可为分别为0、1。
进一步地,由于二维栅格地图在坐标转换过程中,可能会由于坐标值的插值或者尾数舍入等操作,导致最终得到的旋转后的二维栅格地图中有些栅格被重复赋值,而有些栅格没有赋值,从而导致二维栅格地图中存在一些空洞(即本该有值却由于旋转导致没有值的栅格),因此本申请实施例中,还可以对旋转后的二维栅格地图进行进一步优化:
B1:对于旋转后的二维栅格地图,若每个栅格坐标均有栅格值(具体为存在障碍物的概率值),则直接以该旋转后的二维栅格地图作为目标地图;否则,执行步骤B2;
B2:对于二维栅格地图中,没有存在值的各个栅格坐标(简称为空洞栅格坐标),依次判断该空洞栅格坐标的邻域(可以为4邻域、8邻域、D邻域等)是否有栅格值,若其邻域中存在为0的栅格坐标,则确定该空洞栅格坐标对应的位置不存在障碍物,判定该空洞栅格坐标的栅格值为0;相反地,若其邻域中的各个栅格坐标均存在栅格值,则确定该栅格坐标对应的位置实际有较大概率存在障碍物,取该邻域的栅格坐标的栅格值的平均值作为该空洞栅格坐标的栅格值。将对各个空洞栅格坐标进行处理后得到的二维栅格地图作为目标地图。
通过以上的优化处理,能够得到更加准确的目标地图,提高地图调整方法的准确性。
可选地,在上述的步骤S304之后,还包括:
获取新增的传感器数据;
根据所述新增的传感器数据及所述旋转角度,扩建所述目标地图。
本申请实施例中,在对当前已建地图进行调整后,若机器人尚未完成对目标环境的建图操作,则继续获取新增的传感器数据,例如获取下一帧激光雷达数据。
在获取新增的传感器数据后,根据获取该传感器数据时的机器人的位姿信息以及该旋转角度,确定调整后的与目标坐标系的坐标轴平行或者垂直的位姿信息。根据该调整后的位姿信息以及该传感器数据中包含的各个探测点的信息,计算出各个探测点对应在目标坐标系中的坐标,并在步骤S304的目标地图的基础上增加当前该传感器数据对应的地图区域的信息,从而直接准确地扩建能够平直展示的目标地图,高效准确地实现后续的地图构建。
可选地,上述的当前已建地图上设有各帧传感器数据的轨迹节点的信息,该轨迹节点具体对应为机器人扫描目标环境获取该帧传感器数据时的位置信息,因此,各个轨迹节点连接得到的为机器人在建图时的移动轨迹。对应地,在根据旋转角度,旋转当前已建地图后,将当前已建地图上的轨迹节点的信息同样旋转该旋转角度,使得旋转后的轨迹节点能够准确地呈现于目标地图上。
在一个实施例中,上述步骤S301中的传感器数据为预设数目帧激光雷达数据,则在执行步骤S304后,可以根据该目标地图的显示效果,重新调整该预设数目,并重新执行步骤S301~S304,从而保证目标地图的准确性。
本申请实施例中,通过获取传感器数据,并根据传感器数据确定机器人探测目标环境得到的各个探测点对应在建图坐标系中的坐标,之后,根据各个探测点在该建图坐标系中的坐标,确定基准直线,并根据该基准直线与目标坐标系的坐标轴之间的夹角,调整当前已建地图,得到目标地图。由于基准直线为包含的探测点的数量大于预设阈值的直线,即,该基准直线为包含尽量多的探测点的直线,因此,该基准直线能够反映基于各个探测点所构建的当前已建地图的主方向;从而使得,根据该基准直线和目标坐标系的坐标轴之间的夹角,能够调整该当前已建地图的主方向,得到以目标坐标系为参考坐标系的目标地图。由于该目标坐标系为预设的能够平直呈现地图的坐标系,因此该目标地图为能够平直呈现目标环境的信息的地图,即能够将原本可能存在倾斜的当前已建地图调整为不倾斜的目标地图,减少机器人后续的定位误差,便于机器人基于该目标地图准确地实现运动决策,提高机器人的工作效率。并且,该平直呈现的目标地图能够更直观准确地呈现目标环境的情况,从而方便用户查看,便于用户对机器人的工作情况进行追踪,进而提高用户与机器人的交互效率,提高用户体验。
实施例二:
图4示出了本申请实施例提供的一种地图调整装置的结构示意图,为了便于说明,仅示出了与本申请实施例相关的部分:
该地图调整装置包括:第一获取单元41、探测点坐标确定单元42、基准直线确定单元43、调整单元44。其中:
第一获取单元41,用于获取传感器数据,所述传感器数据包括机器人的环境探测传感器探测目标环境得到的各个探测点的信息。
探测点坐标确定单元42,用于根据所述传感器数据,确定各个所述探测点在建图坐标系中的坐标,所述建图坐标系为根据所述机器人的初始位姿信息确定的坐标系。
基准直线确定单元43,用于根据各个所述探测点在所述建图坐标系中的坐标,确定基准直线;其中,所述基准直线上包含的所述探测点的数量大于或者等于预设阈值。
调整单元44,用于根据所述基准直线与目标坐标系的坐标轴之间的夹角,调整当前已建地图,得到目标地图;其中,所述当前已建地图为基于各个所述探测点在所述建图坐标系中的坐标构建得到的地图,所述目标坐标系为预设的能够平直呈现地图的坐标系,所述目标地图以所述目标坐标系为参考坐标系的地图。
可选地,所述基准直线确定单元43,包括:
目标直线确定模块,用于根据各个所述探测点在所述建图坐标系中的坐标,确定目标数目条直线;
基准直线确定模块,用于从所述目标数目条直线中确定基准直线。
可选地,若所述机器人的初始位置与墙壁的距离小于预设距离,则所述基准直线确定模块,具体用于将所述目标数目条直线中与所述建图坐标系的指定坐标轴相交为正的直线确定为基准直线。
可选地,所述基准直线确定模块,具体用于从所述目标数目条直线中确定两条互相平行的直线;将所述两条互相平行的直线中,包含的探测点数较多的直线确定为基准直线。
可选地,所述基准直线确定模块,具体用于从所述目标数目条直线中确定两条互相垂直的直线;将所述两条互相垂直的直线中,包含的探测点数较多的直线确定为基准直线。
可选地,所述基准直线确定模块,具体用于从所述目标数目条直线中,确定包含的探测点数最多的直线为基准直线。
可选地,所述调整单元,具体用于根据所述基准直线与所述目标坐标系的第一坐标轴之间的夹角,确定旋转角度;根据所述旋转角度,旋转所述当前已建地图,得到目标地图。
可选地,所述地图调整装置,还包括:
第二获取单元,用于获取新增的传感器数据;
扩建单元,用于根据所述新增的传感器数据及所述旋转角度,扩建所述目标地图。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
实施例三:
图5是本申请一实施例提供的电子设备的示意图。如图5所示,该实施例的电子设备5包括:处理器50、存储器51以及存储在所述存储器51中并可在所述处理器50上运行的计算机程序52,例如地图调整程序。所述处理器50执行所述计算机程序52时实现上述各个地图调整方法实施例中的步骤,例如图3所示的步骤S301至S304。或者,所述处理器50执行所述计算机程序52时实现上述各装置实施例中各模块/单元的功能,例如图4所示第一获取单元41至调整单元44的功能。
示例性的,所述计算机程序52可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器51中,并由所述处理器50执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序52在所述电子设备5中的执行过程。
所述电子设备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 (8)

1.一种地图调整方法,其特征在于,包括:
获取传感器数据,所述传感器数据包括机器人的环境探测传感器探测目标环境得到的各个探测点的信息;
根据所述传感器数据,确定各个所述探测点在建图坐标系中的坐标,所述建图坐标系为根据所述机器人的初始位姿信息确定的坐标系;
根据各个所述探测点在所述建图坐标系中的坐标,确定基准直线;其中,所述基准直线为直线而非线段,所述基准直线上包含的所述探测点的数量大于或者等于预设阈值;
根据所述基准直线与目标坐标系的坐标轴之间的夹角,调整当前已建地图,得到目标地图;其中,所述当前已建地图为基于各个所述探测点在所述建图坐标系中的坐标构建得到的地图,所述目标坐标系为预设的能够平直呈现地图的坐标系,所述目标地图为以所述目标坐标系为参考坐标系的地图;
其中,所述根据各个所述探测点在所述建图坐标系中的坐标,确定基准直线,包括:
根据各个所述探测点在所述建图坐标系中的坐标和随机抽样一致算法,确定目标数目条直线;
从所述目标数目条直线中确定基准直线;包括:若所述目标数目大于或者等于3,则从所述目标数目条直线中确定两条互相平行的直线;将所述两条互相平行的直线中,包含的探测点数较多的直线确定为基准直线。
2.如权利要求1所述的地图调整方法,其特征在于,若所述机器人的初始位置与墙壁的距离小于预设距离,则所述从所述目标数目条直线中确定基准直线,包括:
将所述目标数目条直线中与所述建图坐标系的指定坐标轴相交为正的直线确定为基准直线。
3.如权利要求1所述的地图调整方法,其特征在于,所述从所述目标数目条直线中确定基准直线,还包括:
从所述目标数目条直线中确定两条互相垂直的直线;
将所述两条互相垂直的直线中,包含的探测点数较多的直线确定为基准直线。
4.如权利要求1所述的地图调整方法,其特征在于,所述从所述目标数目条直线中确定基准直线,还包括:
从所述目标数目条直线中,确定包含的探测点数最多的直线为基准直线。
5.如权利要求1至4任意一项所述的地图调整方法,其特征在于,所述根据所述基准直线与目标坐标系的坐标轴之间的夹角,调整当前已建地图,得到目标地图,包括:
根据所述基准直线与所述目标坐标系的第一坐标轴之间的夹角,确定旋转角度,其中,所述第一坐标轴为从所述目标坐标系中任意指定的一个坐标轴;
根据所述旋转角度,旋转所述当前已建地图,得到目标地图。
6.如权利要求5所述的地图调整方法,其特征在于,在所述根据所述旋转角度,旋转所述当前已建地图,得到目标地图之后,还包括:
获取新增的传感器数据;
根据所述新增的传感器数据及所述旋转角度,扩建所述目标地图。
7.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,当所述处理器执行所述计算机程序时,使得电子设备实现如权利要求1至6任一项所述方法的步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,当所述计算机程序被处理器执行时,使得电子设备实现如权利要求1至6任一项所述方法的步骤。
CN202110626460.5A 2021-06-04 2021-06-04 地图调整方法、电子设备及存储介质 Active CN113459088B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110626460.5A CN113459088B (zh) 2021-06-04 2021-06-04 地图调整方法、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110626460.5A CN113459088B (zh) 2021-06-04 2021-06-04 地图调整方法、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN113459088A CN113459088A (zh) 2021-10-01
CN113459088B true CN113459088B (zh) 2023-07-18

Family

ID=77872394

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110626460.5A Active CN113459088B (zh) 2021-06-04 2021-06-04 地图调整方法、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN113459088B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114474094A (zh) * 2022-02-16 2022-05-13 苏州书农科技有限公司 基于多关节机械臂实现采摘的控制方法、系统及装置
CN115290068B (zh) * 2022-07-20 2023-04-07 尚科宁家(中国)科技有限公司 基于地磁方向的地图摆正方法和清洁机器人

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100663026B1 (ko) * 2004-12-15 2006-12-28 엘지전자 주식회사 네비게이션 시스템의 지도 표시방법
CN107976194B (zh) * 2017-11-24 2021-12-21 北京奇虎科技有限公司 环境地图的调整方法及装置
CN112215887B (zh) * 2019-07-09 2023-09-08 深圳市优必选科技股份有限公司 一种位姿确定方法、装置、存储介质及移动机器人
CN112747734B (zh) * 2019-10-31 2024-04-30 深圳拓邦股份有限公司 环境地图方向调整方法、系统及装置

Also Published As

Publication number Publication date
CN113459088A (zh) 2021-10-01

Similar Documents

Publication Publication Date Title
US11422261B2 (en) Robot relocalization method and apparatus and robot using the same
CN109521403B (zh) 多线激光雷达的参数标定方法及装置、设备及可读介质
CN107194962B (zh) 点云与平面图像融合方法及装置
CN109282822B (zh) 构建导航地图的存储介质、方法和设备
US20230400585A1 (en) Fusion positioning method and apparatus, device and computer-readable storage medium
CN113459088B (zh) 地图调整方法、电子设备及存储介质
CN110873883B (zh) 融合激光雷达和imu的定位方法、介质、终端和装置
CN110471409B (zh) 机器人巡检方法、装置、计算机可读存储介质及机器人
CN104778688A (zh) 点云数据的配准方法及装置
CN112595323A (zh) 机器人及其建图方法和装置
CN110561423A (zh) 位姿变换的方法、机器人及存储介质
CN113510703A (zh) 机器人位姿的确定方法、装置、机器人及存储介质
US20200209365A1 (en) Laser data calibration method and robot using the same
CN111177295A (zh) 建图重影消除方法、装置、计算机可读存储介质及机器人
Jelinek et al. Fast total least squares vectorization
CN115436920A (zh) 一种激光雷达标定方法及相关设备
CN113777593B (zh) 基于伺服电机辅助运动的多激光雷达外参标定方法和装置
CN112198878B (zh) 一种即时地图构建方法、装置、机器人及存储介质
CN113362445B (zh) 基于点云数据重建对象的方法及装置
CN112381873A (zh) 一种数据标注方法及装置
CN116929343A (zh) 位姿估计方法、相关设备及存储介质
CN116642490A (zh) 基于混合地图的视觉定位导航方法、机器人及存储介质
CN111368860A (zh) 重定位方法及终端设备
CN114359400A (zh) 一种外参标定方法、装置、计算机可读存储介质及机器人
CN112685860B (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 518000 1701, building 2, Yinxing Zhijie, No. 1301-72, sightseeing Road, Xinlan community, Guanlan street, Longhua District, Shenzhen, Guangdong Province

Applicant after: Shenzhen Yinxing Intelligent Group Co.,Ltd.

Address before: 518000 building A1, Yinxing hi tech Industrial Park, Guanlan street, Longhua District, Shenzhen City, Guangdong Province

Applicant before: Shenzhen Silver Star Intelligent Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant