CN114999308B - Map generation method, device, computer readable storage medium and computer equipment - Google Patents
Map generation method, device, computer readable storage medium and computer equipment Download PDFInfo
- Publication number
- CN114999308B CN114999308B CN202210794996.2A CN202210794996A CN114999308B CN 114999308 B CN114999308 B CN 114999308B CN 202210794996 A CN202210794996 A CN 202210794996A CN 114999308 B CN114999308 B CN 114999308B
- Authority
- CN
- China
- Prior art keywords
- indoor space
- coordinates
- type
- estimated
- points
- 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
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/003—Maps
- G09B29/005—Map projections or methods associated specifically therewith
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/10—Image acquisition
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Mathematical Physics (AREA)
- Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Manipulator (AREA)
Abstract
Description
技术领域Technical Field
本申请涉及计算机技术领域,特别是涉及一种地图生成方法、装置、计算机可读存储介质和计算机设备。The present application relates to the field of computer technology, and in particular to a map generation method, device, computer-readable storage medium and computer equipment.
背景技术Background Art
在自动化仓储管理中,搬运机器人变得越来越普及。作为自动化运输的重要工具,搬运机器人正逐渐替代传统的人工搬运和分拣,可以大大提高货物转载运输、自动上下货架的处理效率。In automated warehouse management, handling robots are becoming more and more popular. As an important tool for automated transportation, handling robots are gradually replacing traditional manual handling and sorting, which can greatly improve the efficiency of cargo transfer and transportation, and automatic loading and unloading of shelves.
和人工搬运一样,搬运机器人在搬运货物时需要时刻知道自身所在的位置以及搬运目的地,这就需要向搬运机器人提供所在室内空间的地图,比如,货仓的地图。目前,对搬运机器人所在室内空间构建地图,大多是通过在地面粘贴大量的二维码来实现的,需要耗费大量的人力物力。Just like manual handling, a handling robot needs to know its own location and the destination when carrying goods. This requires providing the handling robot with a map of the indoor space, such as a warehouse map. Currently, the construction of a map of the indoor space where the handling robot is located is mostly achieved by pasting a large number of QR codes on the ground, which requires a lot of manpower and material resources.
发明内容Summary of the invention
基于此,有必要针对现有的通过粘贴大量二维码的方式构建室内空间的地图耗费大量的人力物力的技术问题,提供一种地图生成方法、装置、计算机可读存储介质和计算机设备。Based on this, it is necessary to provide a map generation method, device, computer-readable storage medium and computer equipment to address the existing technical problem of constructing indoor space maps by pasting a large number of QR codes, which consumes a lot of manpower and material resources.
一种地图生成方法,应用于机器人,所述方法包括:A map generation method, applied to a robot, comprising:
从室内空间任一第一类位置点出发,对所述室内空间进行扫描;Starting from any first-category position point in the indoor space, scanning the indoor space;
当经过所述室内空间中的第一类位置点时,获取所述第一类位置点对应的绝对坐标;When passing through a first type of position point in the indoor space, obtaining the absolute coordinates corresponding to the first type of position point;
实时获取对所述室内空间中,第一类位置点和第二类位置点扫描得到的传感器数据;Acquire sensor data obtained by scanning the first type of location points and the second type of location points in the indoor space in real time;
根据所述传感器数据确定各所述第一类位置点的第一估计坐标和各所述第二类位置点的第二估计坐标;Determine, based on the sensor data, first estimated coordinates of each of the first-category position points and second estimated coordinates of each of the second-category position points;
计算所述第一估计坐标与所述绝对坐标之间的偏差;calculating a deviation between the first estimated coordinate and the absolute coordinate;
当所述偏差小于预设阈值时,依据各所述第二估计坐标生成地图。When the deviation is less than a preset threshold, a map is generated according to each of the second estimated coordinates.
在一个实施例中,所述实时获取对所述室内空间中,第一类位置点和第二类位置点扫描得到的传感器数据包括:In one embodiment, the real-time acquisition of sensor data obtained by scanning the first type of location points and the second type of location points in the indoor space includes:
实时获取视觉传感器在所述巷道中采集到的图像数据;Acquire image data collected by a visual sensor in the lane in real time;
根据所述图像数据判断图像中是否存在用于定位所述第二类位置点的第二图形码;Determining whether there is a second graphic code for locating the second type of position point in the image according to the image data;
若存在,则获取当前机器人相对于所述第一类位置点的第一偏移数据;If so, obtaining the first offset data of the current robot relative to the first type of position point;
根据所述图像确定所述第二图形码相对于当前机器人的第二偏移数据;Determine second offset data of the second graphic code relative to the current robot according to the image;
所述根据所述传感器数据确定各所述第一类位置点的第一估计坐标和各所述第二类位置点的第二估计坐标包括:Determining the first estimated coordinates of each of the first-category position points and the second estimated coordinates of each of the second-category position points according to the sensor data comprises:
根据所述第一偏移数据、所述绝对坐标和所述第二偏移数据计算所述第二图形码的估计坐标,将所述第二图形码的估计坐标作为所述第二估计坐标。The estimated coordinates of the second graphic code are calculated according to the first offset data, the absolute coordinates and the second offset data, and the estimated coordinates of the second graphic code are used as the second estimated coordinates.
在一个实施例中,所述根据所述图像数据判断图像中是否存在用于定位所述第二类位置点的第二图形码包括:In one embodiment, judging whether there is a second graphic code for locating the second type of position point in the image according to the image data comprises:
获取所述第二图形码对应的图像属性;Obtaining image attributes corresponding to the second graphic code;
根据当前采集的图像数据提取图像的图像特征;Extracting image features of the image based on currently acquired image data;
当所述图像特征与所述图像属性匹配时,确定所述图像中存在所述第二图形码。When the image feature matches the image attribute, it is determined that the second graphic code exists in the image.
在一个实施例中,所述方法还包括:In one embodiment, the method further comprises:
当所述室内空间中存在未被扫描到的盲区时;则When there is a blind area in the indoor space that has not been scanned;
返回从室内空间任一第一类位置点出发,对所述室内空间进行扫描的步骤;当所述巷道中存在未被扫描到的第二类位置点时,则Return to the step of scanning the indoor space from any first-category position point in the indoor space; when there is a second-category position point in the lane that has not been scanned,
返回从室内空间任一第一类位置点出发,对所述室内空间进行扫描的步骤。Return to the step of scanning the indoor space from any first-category position point in the indoor space.
在一个实施例中,所述传感器数据包括多个传感器采集到的数据;所述方法还包括:In one embodiment, the sensor data includes data collected by multiple sensors; the method further includes:
当所述偏差大于预设阈值时,调整各个传感器对应的信任度;When the deviation is greater than a preset threshold, adjusting the trust level corresponding to each sensor;
返回从室内空间任一第一类位置点出发,对所述室内空间进行扫描的步骤;Return to the step of scanning the indoor space from any first-category position point in the indoor space;
按照调整后的信任度对相应的传感器采集的数据进行处理;Processing the data collected by the corresponding sensor according to the adjusted confidence level;
基于处理后的各个数据确定各所述第一类位置点的第一估计坐标和各所述第二类位置点的第二估计坐标。Based on the processed data, first estimated coordinates of each of the first-category position points and second estimated coordinates of each of the second-category position points are determined.
在一个实施例中,在所述当所述偏差小于预设阈值时,依据各所述第一估计坐标生成地图之后,所述方法还包括:In one embodiment, after generating a map according to each of the first estimated coordinates when the deviation is less than a preset threshold, the method further includes:
接收待行进至目标位置的目标坐标;Receiving target coordinates of a target location to be traveled to;
在行进过程中,获取对当前所在位置扫描得到的实时数据;During the journey, obtain real-time data from scanning the current location;
根据所述实时数据确定当前所在位置的坐标;Determine the coordinates of the current location according to the real-time data;
依据当前所在位置的坐标、所述目标坐标进至所述目标位置。Go to the target location according to the coordinates of the current location and the target coordinates.
在一个实施例中,所述当经过所述室内空间中的第一类位置点时,获取所述第一类位置点对应的绝对坐标包括:In one embodiment, when passing through a first type of location point in the indoor space, obtaining the absolute coordinates corresponding to the first type of location point includes:
采集与所述第一类位置点对应的图像;Acquire images corresponding to the first type of location points;
对所述图像中的第一图形码进行解析得到所述巷道入口处的绝对坐标。The first graphic code in the image is parsed to obtain the absolute coordinates of the tunnel entrance.
在一个实施例中,所述第一类位置点包括室内空间中的巷道入口处的已知位置点;所述第二类位置点包括室内空间中的巷道中货架上各个库位对应的位置点和/或公共区域对应的位置点。In one embodiment, the first type of location points includes known location points at the entrances of lanes in the indoor space; the second type of location points includes location points corresponding to each storage location on the shelves in the lanes in the indoor space and/or location points corresponding to the public areas.
一种地图生成装置,所述装置包括:A map generating device, comprising:
扫描模块,用于从室内空间任一第一类位置点出发,对所述室内空间进行扫描;A scanning module, used to scan the indoor space from any first type position point in the indoor space;
绝对坐标获取模块,用于当经过所述室内空间中的第一类位置点时,获取所述第一类位置点对应的绝对坐标;An absolute coordinate acquisition module, used for acquiring the absolute coordinates corresponding to the first type of position points in the indoor space when passing through the first type of position points;
传感器数据获取模块,用于实时获取对所述室内空间中,第一类位置点和第二类位置点扫描得到的传感器数据;A sensor data acquisition module, used for acquiring in real time sensor data obtained by scanning the first type of location points and the second type of location points in the indoor space;
估计坐标确定模块,用于根据所述传感器数据确定各所述第一类位置点的第一估计坐标和各所述第二类位置点的第二估计坐标;an estimated coordinate determination module, configured to determine, based on the sensor data, a first estimated coordinate of each of the first-category position points and a second estimated coordinate of each of the second-category position points;
偏差计算模块,用于计算所述第一估计坐标与所述绝对坐标之间的偏差;a deviation calculation module, used for calculating the deviation between the first estimated coordinate and the absolute coordinate;
地图生成模块,用于当所述偏差小于预设阈值时,依据各所述第二估计坐标生成地图。A map generation module is used to generate a map according to each of the second estimated coordinates when the deviation is less than a preset threshold.
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述地图生成方法的步骤。A computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the processor executes the steps of the above-mentioned map generation method.
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述地图生成方法的步骤。A computer device comprises a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the processor executes the steps of the above-mentioned map generation method.
上述地图生成方法、装置、计算机可读存储介质和计算机设备,在生成地图时,从室内空间任一第一类位置点出发,对室内空间进行扫描;当经过室内空间中的第一类位置点时,获取第一类位置点对应的绝对坐标;并计算第二估计坐标与绝对坐标之间的偏差;当偏差小于预设阈值时,说明传感器采集的传感器数据足够可靠,这样基于这些传感器确定的各个位置点的估计坐标也是可靠的,因而就可以根据这些位置点的估计坐标生成地图,保证了生成的地图的精准性,且相比于通过粘贴大量的二维码生成地图,导致需要耗费大量的人力物力而言,本方案还能够大大节省人力物力。The above-mentioned map generation method, device, computer-readable storage medium and computer equipment, when generating a map, start from any first-class position point in the indoor space and scan the indoor space; when passing through the first-class position point in the indoor space, obtain the absolute coordinates corresponding to the first-class position point; and calculate the deviation between the second estimated coordinates and the absolute coordinates; when the deviation is less than the preset threshold, it means that the sensor data collected by the sensor is sufficiently reliable, so the estimated coordinates of each position point determined based on these sensors are also reliable, so that a map can be generated based on the estimated coordinates of these position points, thereby ensuring the accuracy of the generated map. Compared with generating a map by pasting a large number of QR codes, which requires a lot of manpower and material resources, this solution can also greatly save manpower and material resources.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
图1为一个实施例中地图生成方法的应用环境图;FIG1 is an application environment diagram of a map generation method in one embodiment;
图2为一个实施例中地图生成方法的流程示意图;FIG2 is a schematic diagram of a flow chart of a map generation method in one embodiment;
图3为一个实施例中根据图像数据判断图像中是否存在用于定位第二类位置点的第二图形码的流程示意图;3 is a schematic diagram of a process of determining whether a second graphic code for locating a second type of position point exists in an image according to image data in one embodiment;
图4为一个实施例中生成地图的流程示意图;FIG4 is a schematic diagram of a process of generating a map in one embodiment;
图5为一个实施例中按照生成的地图进行导航的流程示意图;FIG5 is a schematic diagram of a process of navigating according to a generated map in one embodiment;
图6为一个实施例中当已知位置点用二维码表示时生成地图的流程示意图;FIG6 is a schematic diagram of a process of generating a map when a known location point is represented by a QR code in one embodiment;
图7为另一个实施例中地图生成方法的流程示意图;FIG7 is a schematic diagram of a flow chart of a map generation method in another embodiment;
图8为一个实施例中地图生成装置的结构框图;FIG8 is a structural block diagram of a map generating device in one embodiment;
图9为另一个实施例中地图生成装置的结构框图;FIG9 is a structural block diagram of a map generating device in another embodiment;
图10为又一个实施例中地图生成装置的结构框图;FIG10 is a structural block diagram of a map generating device in yet another embodiment;
图11为一个实施例中计算机设备的结构框图。FIG. 11 is a block diagram of a computer device in one embodiment.
具体实施方式DETAILED DESCRIPTION
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
可以理解,本发明所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本发明的范围的情况下,可以将第一类位置点称为第二类位置点,且类似地,可将第二类位置点称为第一类位置点。第一类位置点和第二类位置点两者都是类位置点,但其不是同一类位置点。It is understood that the terms "first", "second", etc. used in the present invention may be used herein to describe various elements, but these elements are not limited by these terms. These terms are only used to distinguish a first element from another element. For example, a first type of location point may be referred to as a second type of location point, and similarly, a second type of location point may be referred to as a first type of location point without departing from the scope of the present invention. Both the first type of location point and the second type of location point are type of location points, but they are not the same type of location points.
图1为一个实施例中地图生成方法的应用环境图。参照图1,该地图生成方法应用于地图生成系统。该地图生成系统包括机器人110和服务器120。终端110和服务器120通过网络连接。机器人110还可以是自动引导车,可以用于根据生成的地图搬运货物。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。FIG. 1 is an application environment diagram of a map generation method in an embodiment. Referring to FIG. 1 , the map generation method is applied to a map generation system. The map generation system includes a robot 110 and a server 120. The terminal 110 and the server 120 are connected via a network. The robot 110 may also be an automatic guided vehicle, which may be used to transport goods according to the generated map. The server 120 may be implemented as an independent server or a server cluster consisting of multiple servers.
以第一类位置点为室内空间中的巷道入口处的已知位置点,第二类位置点为室内空间中的巷道中货架上各个库位对应的位置点为例进行说明,机器人110可从室内空间任一已知位置点出发,对室内空间进行扫描,并实时获取对室内空间巷道中货架上各个库位扫描得到的传感器数据,根据传感器数据确定各库位的估计坐标,当经过巷道入口处时,获取巷道入口处对应的绝对坐标,计算巷道入口处的估计坐标与绝对坐标之间的偏差,当偏差小于预设阈值时,依据各估计坐标生成地图。机器人110也可以将获取的传感器数据上报至服务器120,由服务器120根据传感器数据确定巷道中货架上各个库位的估计坐标,计算巷道入口处的绝对坐标与估计坐标之间的偏差,当计算得到的偏差小于预设阈值时,服务器120就可以依据各个库位的估计坐标生成地图。Taking the first type of location point as a known location point at the entrance of the lane in the indoor space, and the second type of location point as a location point corresponding to each storage location on the shelf in the lane in the indoor space as an example, the robot 110 can start from any known location point in the indoor space, scan the indoor space, and obtain the sensor data obtained by scanning each storage location on the shelf in the lane in the indoor space in real time, determine the estimated coordinates of each storage location based on the sensor data, and when passing through the lane entrance, obtain the absolute coordinates corresponding to the lane entrance, calculate the deviation between the estimated coordinates and the absolute coordinates at the lane entrance, and when the deviation is less than the preset threshold, generate a map based on each estimated coordinate. The robot 110 can also report the obtained sensor data to the server 120, and the server 120 determines the estimated coordinates of each storage location on the shelf in the lane according to the sensor data, calculates the deviation between the absolute coordinates at the lane entrance and the estimated coordinates, and when the calculated deviation is less than the preset threshold, the server 120 can generate a map based on the estimated coordinates of each storage location.
如图2所示,在一个实施例中,提供了一种地图生成方法。本实施例主要以该方法应用于上述图1中的机器人110来举例说明。参照图2,该地图生成方法具体包括如下步骤:As shown in FIG2 , in one embodiment, a map generation method is provided. This embodiment mainly uses the method applied to the robot 110 in FIG1 as an example. Referring to FIG2 , the map generation method specifically includes the following steps:
S202,从室内空间任一第一类位置点出发,对室内空间进行扫描。S202, starting from any first-category position point in the indoor space, scanning the indoor space.
其中,室内空间是要生成地图的空间,比如室内仓库。机器人对室内空间扫描的过程就是机器人在移动的过程中通过各个传感器对室内空间进行数据采集的过程。Among them, the indoor space is the space for which the map is to be generated, such as an indoor warehouse. The process of the robot scanning the indoor space is the process of the robot collecting data on the indoor space through various sensors during the movement.
室内空间中包括第一类位置点,第一类位置点是给定了绝对坐标的特征点,可称之为已知位置点。已知位置点可为上述的巷道入口处所处的位置点,即巷道入口处所处的位置点可均为已知位置点,绝对坐标是预先为已知位置点设定的坐标。在室内空间中,为节省人工测量特征点的成本,已知位置点的数量可以是少量的几个,比如两到三个。机器人可以从任一已知位置点出发,通过各个传感器对室内空间进行扫描。为保证巷道内地图的准确性,可以在巷道入口处设置已知位置点。比如,在室内空间中,已知位置点可以包括巷道1入口处、巷道2入口处或主干道起始点C,等等。在一些实施例中,可以在已知位置点处粘贴二维码或条形码,则已知位置点的绝对坐标可以通过解析扫描到的二维码或条形码得到。The indoor space includes a first type of position point, which is a feature point with given absolute coordinates, which can be called a known position point. The known position point can be the position point at the entrance of the lane mentioned above, that is, the position points at the entrance of the lane can all be known position points, and the absolute coordinates are the coordinates pre-set for the known position point. In the indoor space, in order to save the cost of manually measuring feature points, the number of known position points can be a small number, such as two or three. The robot can start from any known position point and scan the indoor space through various sensors. In order to ensure the accuracy of the map in the lane, a known position point can be set at the entrance of the lane. For example, in the indoor space, the known position points may include the entrance of Lane 1, the entrance of Lane 2, or the starting point C of the main road, and so on. In some embodiments, a QR code or bar code can be pasted at the known position point, and the absolute coordinates of the known position point can be obtained by parsing the scanned QR code or bar code.
S204,当经过室内空间中的第一类位置点时,获取第一类位置点对应的绝对坐标。S204, when passing through a first type of position point in the indoor space, obtaining the absolute coordinates corresponding to the first type of position point.
在一个实施例中,第一类位置点包括室内空间中的巷道入口处所处的位置点和/或已知位置点。以第一类位置点为室内空间中的巷道入口处所处的位置点为例进行说明,当经过第一类位置点巷道入口处时,获取第一类位置点巷道入口处对应的绝对坐标。In one embodiment, the first type of position point includes a position point at a lane entrance in an indoor space and/or a known position point. Taking the first type of position point as a position point at a lane entrance in an indoor space as an example, when passing through the lane entrance of the first type of position point, the absolute coordinates corresponding to the lane entrance of the first type of position point are obtained.
具体地,当机器人在移动的过程中,根据采集的图像数据确定经过了巷道入口处时,可获取为巷道入口处预先设定的绝对坐标。比如,可将室内空间中每个巷道入口处货架作为已知位置点,为巷道入口处的货架给定相应的绝对坐标,则在机器人在移动的过程中,经过这些巷道入口处时,就可以获取巷道入口处对应的绝对坐标,可以用绝对坐标对各个库位的估计坐标进行修正,得到准确度较高的地图。Specifically, when the robot passes through the lane entrance according to the collected image data during the movement, the pre-set absolute coordinates of the lane entrance can be obtained. For example, the shelves at each lane entrance in the indoor space can be used as known position points, and the corresponding absolute coordinates can be given to the shelves at the lane entrance. When the robot passes through these lane entrances during the movement, the corresponding absolute coordinates of the lane entrance can be obtained, and the estimated coordinates of each storage location can be corrected with the absolute coordinates to obtain a map with higher accuracy.
S206,实时获取对室内空间中,第一类位置点和第二类位置点扫描得到的传感器数据。S206, acquiring sensor data obtained by scanning the first type of location points and the second type of location points in the indoor space in real time.
在一个实施例中,第二类位置点包括室内空间中的巷道中货架上各个库位对应的位置点和/或公共区域对应的位置点。以第二类位置点为巷道中货架上各个库位对应的位置点为例进行说明,机器人可实时获取对室内空间巷道中货架上各个库位扫描得到的传感器数据。In one embodiment, the second type of location points include location points corresponding to each storage location on the shelves in the lanes in the indoor space and/or location points corresponding to the public area. Taking the second type of location points as location points corresponding to each storage location on the shelves in the lanes as an example, the robot can obtain sensor data obtained by scanning each storage location on the shelves in the lanes in the indoor space in real time.
其中,传感器数据是通过为机器人配置的各种传感器采集到的数据,可通过配置的传感器测量机器人当前的状态相对于初始状态的偏离方向和偏移距离,将偏离方向和偏移距离作为当前机器人对室内空间扫描到的传感器数据。传感器可包括里程计,以及由陀螺仪、加速度计、罗盘等组成的IMU(inertial measurement unit,惯性测量单元),还可以包括激光测距仪、用于采集图像数据的视觉传感器等。Among them, sensor data is data collected by various sensors configured for the robot. The configured sensors can measure the deviation direction and offset distance of the robot's current state relative to the initial state, and use the deviation direction and offset distance as the sensor data of the current robot scanning the indoor space. Sensors may include odometers, and IMUs (inertial measurement units) composed of gyroscopes, accelerometers, compasses, etc., and may also include laser rangefinders, visual sensors for collecting image data, etc.
传感器数据还可以包括视觉传感器采集的图像数据,视觉传感器可以是摄像头,机器人可对采集的图像数据进行图像处理,以确定巷道中货架上各个库位。图像数据和IMU测量的偏移数据可结合起来用于确定待生成的地图中的库位以及库位对应的坐标。The sensor data may also include image data collected by a visual sensor, which may be a camera, and the robot may perform image processing on the collected image data to determine the various stock locations on the shelves in the aisle. The image data and the offset data measured by the IMU may be combined to determine the stock locations in the map to be generated and the coordinates corresponding to the stock locations.
在一个实施例中,机器人可通过第一传感器采集图像数据,通过第二传感器采集偏移数据,第一传感器可以是视觉传感器,比如摄像头等,第二传感器比如可以是构成IMU的各种测量传感器。需要说明的是,这里的“第一”和“第二”并不用于限制传感器的数量,仅用于区分采集不同数据的传感器。In one embodiment, the robot can collect image data through a first sensor and collect offset data through a second sensor. The first sensor can be a visual sensor, such as a camera, etc., and the second sensor can be various measurement sensors constituting an IMU. It should be noted that the "first" and "second" here are not used to limit the number of sensors, but are only used to distinguish sensors that collect different data.
库位是巷道内货架上的取货点,比如,巷道1中货架1A上的库位1A01、巷道1中货架1B上的库位1B02以及巷道2中货架2A上的库位2A01,等等。生成该巷道内地图的过程就是确定这些库位的坐标的过程,在有了包括这些库位的地图后,机器人在该室内空间中移动时,可以根据这些库位的坐标确定下一步所要行进的方向和距离,从而实现地图导航。库位的坐标可以是二维的平面坐标,也可以是三维的空间坐标。在对室内空间进行扫描的过程中,机器人实时获取当前所有传感器采集的数据,在扫描到货架上的库位时,也会获取当前扫描到库位时的传感器数据。The storage location is the pickup point on the shelf in the lane, for example, storage location 1A01 on shelf 1A in lane 1, storage location 1B02 on shelf 1B in lane 1, and storage location 2A01 on shelf 2A in lane 2, etc. The process of generating the map in the lane is the process of determining the coordinates of these storage locations. After having a map including these storage locations, when the robot moves in the indoor space, it can determine the direction and distance to be moved next according to the coordinates of these storage locations, thereby realizing map navigation. The coordinates of the storage location can be two-dimensional plane coordinates or three-dimensional spatial coordinates. In the process of scanning the indoor space, the robot obtains the data collected by all current sensors in real time. When scanning the storage location on the shelf, it also obtains the sensor data of the current scanning storage location.
S208,根据传感器数据确定各第一类位置点的第一估计坐标和各第二类位置点的第二估计坐标。S208: Determine, according to the sensor data, first estimated coordinates of each first-category position point and second estimated coordinates of each second-category position point.
估计坐标是根据机器人在移动过程中采集的传感器数据计算得到的,由于传感器采集的数据存在噪声,并不一定十分准确,或者在基于传感器数据计算时对传感器数据的信任度不够高,因此,计算得到的坐标可以称为估计坐标。The estimated coordinates are calculated based on the sensor data collected by the robot during its movement. Since the data collected by the sensor is noisy and may not be very accurate, or the trust in the sensor data is not high enough when calculating based on the sensor data, the calculated coordinates can be called estimated coordinates.
具体地,以根据传感器数据确定各库位的估计坐标为例进行说明,机器人可对各个传感器的状态进行初始化设置,在初始化各个传感器后,从某一已知位置点出发对室内空间进行扫描,扫描的过程中获取传感器数据,当机器人根据图像数据确定扫描到库位时,根据当前的偏移数据确定该库位相对于已知位置点的估计坐标。已知位置点可以设置在巷道入口处。Specifically, taking the example of determining the estimated coordinates of each storage location based on sensor data, the robot can initialize the status of each sensor, and after initializing each sensor, scan the indoor space from a known position point, and obtain sensor data during the scanning process. When the robot determines that the storage location has been scanned based on the image data, the estimated coordinates of the storage location relative to the known position point are determined based on the current offset data. The known position point can be set at the entrance of the lane.
在一个实施例中,当机器人在扫描的过程中检测到下一个已知位置点时,机器人可再次对各个传感器的状态进行初始化设置,在初始化后,继续对室内空间进行扫描,在检测到货架上的库位时,可基于这一已知位置点以及当前的传感器数据计算库位的估计坐标。In one embodiment, when the robot detects the next known location point during the scanning process, the robot can initialize the status of each sensor again. After initialization, it continues to scan the indoor space. When a storage location on the shelf is detected, the estimated coordinates of the storage location can be calculated based on this known location point and the current sensor data.
比如,机器人从任一已知位置点出发时对应X轴、Y轴的初始坐标为S(0,0),机器人在初始坐标时测量的初始角度为0度,行进过程中,机器人扫描到某个库位时对应的偏移数据是5米和90度,则计算得到该库位的估计坐标是(0,5)。在一些实施例中,估计坐标可以是二维的平面坐标也可以是三维的空间坐标。For example, when the robot starts from any known position, the initial coordinates of the X-axis and Y-axis are S(0,0), and the initial angle measured by the robot at the initial coordinates is 0 degrees. During the movement, when the robot scans a certain storage location, the corresponding offset data is 5 meters and 90 degrees, then the estimated coordinates of the storage location are calculated to be (0,5). In some embodiments, the estimated coordinates can be two-dimensional plane coordinates or three-dimensional spatial coordinates.
S210,计算第一估计坐标与绝对坐标之间的偏差。S210: Calculate the deviation between the first estimated coordinates and the absolute coordinates.
以巷道入口处为例进行说明,机器人可计算巷道入口处的估计坐标与其绝对坐标之间的偏差。具体地,机器人在经过巷道入口处时,就获取对应的绝对坐标,并计算巷道入口处的估计坐标与绝对坐标之间的偏差。在一个实施例中,可通过欧式距离公式计算估计坐标和绝对坐标之间的偏差,比如,当估计坐标和绝对坐标均为二维坐标时,计算得到的估计坐标为(0.96,1.05),给定的绝对坐标为(1,1),单位均为毫米,则偏差为(毫米)。Taking the entrance of the tunnel as an example, the robot can calculate the deviation between the estimated coordinates at the entrance of the tunnel and its absolute coordinates. Specifically, when the robot passes through the entrance of the tunnel, it obtains the corresponding absolute coordinates and calculates the deviation between the estimated coordinates at the entrance of the tunnel and the absolute coordinates. In one embodiment, the deviation between the estimated coordinates and the absolute coordinates can be calculated by the Euclidean distance formula. For example, when the estimated coordinates and the absolute coordinates are both two-dimensional coordinates, the calculated estimated coordinates are (0.96, 1.05), and the given absolute coordinates are (1, 1), and the units are all millimeters. Then the deviation is (mm).
S212,当偏差小于预设阈值时,依据各第二估计坐标生成地图。S212: When the deviation is less than a preset threshold, a map is generated according to each second estimated coordinate.
具体地,可利用巷道入口处的绝对坐标对所有库位的估计坐标做闭环修正,当巷道入口处的估计坐标和绝对坐标之间的偏差较小时,说明此时基于传感器数据计算得到的估计坐标与绝对坐标较为接近,传感器数据中的噪声较低,传感器采集数据的准确性较高,那么根据传感器数据计算得到的各个库位的估计坐标准确性也较高。Specifically, the absolute coordinates at the entrance of the alley can be used to make closed-loop corrections to the estimated coordinates of all storage locations. When the deviation between the estimated coordinates and the absolute coordinates at the entrance of the alley is small, it means that the estimated coordinates calculated based on the sensor data are closer to the absolute coordinates, the noise in the sensor data is lower, and the accuracy of the sensor collected data is higher. Then, the accuracy of the estimated coordinates of each storage location calculated based on the sensor data is also higher.
在一个实施例中,偏差小于预设阈值可以是指每个巷道入口处对应的偏差都小于设定的阈值,也就是说,当机器人确定每个巷道入口处对应的偏差小于阈值时,就可以根据在扫描过程中计算得到的每个库位的估计坐标输出地图。偏差小于预设阈值也可以是机器人基于所有巷道入口处的的偏差计算得到总偏差小于设定的阈值,比如,在室内仓库中存在了n个已知了绝对坐标的巷道入口处,每个巷道入口处对应的偏差为Ei(i=1,2,3,...,n),那么总的偏差可用各个偏差之和的平均值来表示:只有在总偏差小于预设阈值时,机器人才可以根据计算得到的每个库位的估计坐标输出地图。In one embodiment, the deviation less than the preset threshold may mean that the deviation corresponding to each lane entrance is less than the set threshold. That is, when the robot determines that the deviation corresponding to each lane entrance is less than the threshold, it can output a map based on the estimated coordinates of each storage location calculated during the scanning process. The deviation less than the preset threshold may also mean that the robot calculates the total deviation based on the deviations of all lane entrances and is less than the set threshold. For example, there are n lane entrances with known absolute coordinates in an indoor warehouse, and the deviation corresponding to each lane entrance is E i (i=1,2,3,...,n). Then the total deviation can be expressed as the average of the sum of the deviations: Only when the total deviation is less than the preset threshold, the robot can output a map based on the calculated estimated coordinates of each storage location.
上述地图生成方法,在生成地图时,从室内空间任一第一类位置点出发,对室内空间进行扫描;当经过室内空间中的第一类位置点时,获取第一类位置点对应的绝对坐标;并计算第二估计坐标与绝对坐标之间的偏差;当偏差小于预设阈值时,说明传感器采集的传感器数据足够可靠,这样基于这些传感器确定的各个位置点的估计坐标也是可靠的,因而就可以根据这些位置点的估计坐标生成地图,保证了生成的地图的精准性,且相比于通过粘贴大量的二维码生成地图,导致需要耗费大量的人力物力而言,上述地图生成方法还能够大大节省人力物力。The above-mentioned map generation method, when generating a map, starts from any first-class position point in the indoor space and scans the indoor space; when passing through the first-class position point in the indoor space, the absolute coordinates corresponding to the first-class position point are obtained; and the deviation between the second estimated coordinates and the absolute coordinates is calculated; when the deviation is less than the preset threshold, it means that the sensor data collected by the sensor is sufficiently reliable, so the estimated coordinates of each position point determined based on these sensors are also reliable, and thus a map can be generated based on the estimated coordinates of these position points, thereby ensuring the accuracy of the generated map. In addition, compared with generating a map by pasting a large number of QR codes, which requires a lot of manpower and material resources, the above-mentioned map generation method can also greatly save manpower and material resources.
在一个实施例中,步骤S204包括:采集与第一类位置点对应的图像;对图像中的第一图形码进行解析得到巷道入口处的绝对坐标。In one embodiment, step S204 includes: collecting an image corresponding to the first type of location point; parsing the first graphic code in the image to obtain the absolute coordinates of the tunnel entrance.
以第一类位置点为巷道入口处的位置点为例说明,机器人可采集巷道入口处货架上的图像;对图像中的第一图形码进行解析得到巷道入口处的绝对坐标。Taking the first type of position point as the position point at the entrance of the lane as an example, the robot can collect images on the shelves at the entrance of the lane; and parse the first graphic code in the image to obtain the absolute coordinates of the entrance of the lane.
其中,第一图形码是一种包含定位信息的标记图。第一图形码可以是二维码或是条形码。室内空间中设置的已知位置点可以用第一图形码进行标记,这样,巷道入口处对应的绝对坐标就可以通过解析第一图形码得到。比如,可在巷道入口处的货架侧边粘贴第一图形码,在机器人经过巷道入口处时,可通过采集第一图形码并解析该图像码得到巷道入口处对应的绝对坐标。The first graphic code is a marking image containing positioning information. The first graphic code may be a QR code or a barcode. The known position points set in the indoor space may be marked with the first graphic code, so that the absolute coordinates corresponding to the entrance of the lane can be obtained by parsing the first graphic code. For example, the first graphic code may be pasted on the side of the shelf at the entrance of the lane. When the robot passes through the entrance of the lane, the absolute coordinates corresponding to the entrance of the lane may be obtained by collecting the first graphic code and parsing the image code.
在一个实施例中,步骤S206包括:实时获取视觉传感器在巷道中采集到的图像数据;根据图像数据判断图像中是否存在用于定位第二类位置点的第二图形码;若存在,则获取当前机器人相对于第一类位置点的第一偏移数据;根据图像确定第二图形码相对于当前机器人的第二偏移数据。步骤S208包括:根据第一偏移数据、绝对坐标和第二偏移数据计算第二图形码的估计坐标,将第二图形码的估计坐标作为第二估计坐标。In one embodiment, step S206 includes: acquiring image data collected by the visual sensor in the lane in real time; judging whether there is a second graphic code for locating the second type of position point in the image according to the image data; if there is, acquiring the first offset data of the current robot relative to the first type of position point; determining the second offset data of the second graphic code relative to the current robot according to the image. Step S208 includes: calculating the estimated coordinates of the second graphic code according to the first offset data, the absolute coordinates and the second offset data, and using the estimated coordinates of the second graphic code as the second estimated coordinates.
同样以库位和巷道入口处进行说明,机器人可实时获取视觉传感器在巷道中采集到的图像数据;根据图像数据判断图像中是否存在第二图形码;若存在,则获取当前机器人相对于巷道入口处的第一偏移数据;根据图像确定第二图形码相对于当前机器人的第二偏移数据;根据第一偏移数据、巷道入口处对应的绝对坐标和第二偏移数据计算第二图形码的估计坐标,作为库位的估计坐标。Similarly, using the storage location and the alley entrance as an example, the robot can obtain image data collected by the visual sensor in the alley in real time; determine whether there is a second graphic code in the image based on the image data; if so, obtain the first offset data of the current robot relative to the alley entrance; determine the second offset data of the second graphic code relative to the current robot based on the image; calculate the estimated coordinates of the second graphic code based on the first offset data, the absolute coordinates corresponding to the alley entrance and the second offset data, as the estimated coordinates of the storage location.
其中,图像数据包括机器人在扫描过程中采集的室内空间的图像。偏移数据包括偏离方向、偏移距离等。第一偏移数据是当前机器人相对于巷道入口处的偏移数据。第一偏移数据可以是机器人从巷道入口处行进至当前位置时传感器采集到的数据,也可以是根据机器人从已知位置点行进至巷道入口处采集到的数据、从已知位置点行进至当前位置时采集的数据计算得到的中间数据。第二偏移数据是第二图形码相对于当前机器人的视觉传感器的偏移数据。第二偏移数据可以根据采集的图像中第二图形码的像素宽度尺寸与实际宽度尺寸计算得到。第二图形码是粘贴在各个库位上的标记图码,用于定位各个库位,可以是库位二维码或库位条形码。在一些实施例中,也可以通过其它标志性物品来标记巷道中货架上的各个库位。Among them, the image data includes the image of the indoor space collected by the robot during the scanning process. The offset data includes the deviation direction, the offset distance, etc. The first offset data is the offset data of the current robot relative to the entrance of the lane. The first offset data can be the data collected by the sensor when the robot travels from the entrance of the lane to the current position, or it can be the intermediate data calculated based on the data collected when the robot travels from a known position point to the entrance of the lane and the data collected when it travels from a known position point to the current position. The second offset data is the offset data of the second graphic code relative to the visual sensor of the current robot. The second offset data can be calculated based on the pixel width size and the actual width size of the second graphic code in the collected image. The second graphic code is a marking code pasted on each storage location, which is used to locate each storage location, and can be a storage location QR code or a storage location barcode. In some embodiments, other iconic items can also be used to mark each storage location on the shelf in the lane.
具体地,机器人在巷道中移动时,可以通过摄像头采集图像数据,机器人就可以根据图像数据确定是否存在第二图形码,若存在,则机器人可以根据第二图形码的实际宽度尺寸、摄像头的焦距以及图像中第二图形码的像素宽度尺寸计算第二图形码与当前机器人的摄像头的距离,然后根据该距离以及摄像头的扭转角度计算第二图形码相对于当前机器人的摄像头高度,根据距离和高度可以得到第二图形码相对于当前机器人在各个角度上的第二偏移数据。进一步地,机器人根据当前采集到的第一偏移数据和巷道入口处对应的绝对坐标确定当前机器人的估计坐标,然后根据第二偏移数据和当前机器人的估计坐标计算得到第二图形码的估计坐标,作为该第二图形码对应的库位的估计坐标。Specifically, when the robot moves in the lane, it can collect image data through the camera, and the robot can determine whether the second graphic code exists based on the image data. If it exists, the robot can calculate the distance between the second graphic code and the camera of the current robot based on the actual width of the second graphic code, the focal length of the camera, and the pixel width of the second graphic code in the image, and then calculate the height of the second graphic code relative to the camera of the current robot based on the distance and the torsion angle of the camera. According to the distance and height, the second offset data of the second graphic code relative to the current robot at various angles can be obtained. Further, the robot determines the estimated coordinates of the current robot based on the currently collected first offset data and the absolute coordinates corresponding to the lane entrance, and then calculates the estimated coordinates of the second graphic code based on the second offset data and the estimated coordinates of the current robot as the estimated coordinates of the storage location corresponding to the second graphic code.
需要说明的是,若机器人当前的估计坐标是二维的平面坐标,则第二偏移数据可以是第二图形码相对于当前机器人在平面上的偏移信息,若估计坐标是三维的空间坐标,则第二偏移数据可以是第二图形码相对于当前机器人在空间上的偏移信息。It should be noted that if the robot's current estimated coordinates are two-dimensional plane coordinates, the second offset data may be the offset information of the second graphic code relative to the current robot on the plane; if the estimated coordinates are three-dimensional spatial coordinates, the second offset data may be the offset information of the second graphic code relative to the current robot in space.
举例说明:机器人从巷道入口处时行进至第二图形码,对应的第二偏移数据是2.5米和90度,若获取的巷道入口处对应的绝对坐标是(0,0),则当前机器人的估计坐标是(0,2.5)。机器人根据图像中第二图形码的像素尺寸大小、摄像头的扭转角度和第二图形码的实际尺寸大小计算得到第二图形码相对于当前机器人的第二偏移数据,比如,若确定第二图形码在当前机器人X轴负方向0.3米,则计算得到第二图形码在平面上的估计坐标是(-0.3,2.5),若机器人摄像头的高度是1.6米,根据扭转角度确定第二图形码在机器人摄像头下方0.4米处,则计算得到第二图形码的在空间上的估计坐标是(-0.3,2.5,1.2)。For example: when the robot moves from the entrance of the lane to the second graphic code, the corresponding second offset data is 2.5 meters and 90 degrees. If the absolute coordinates corresponding to the entrance of the lane are (0,0), the estimated coordinates of the current robot are (0,2.5). The robot calculates the second offset data of the second graphic code relative to the current robot based on the pixel size of the second graphic code in the image, the torsion angle of the camera, and the actual size of the second graphic code. For example, if it is determined that the second graphic code is 0.3 meters in the negative direction of the current robot's X-axis, the estimated coordinates of the second graphic code on the plane are calculated to be (-0.3,2.5). If the height of the robot camera is 1.6 meters, the second graphic code is determined to be 0.4 meters below the robot camera based on the torsion angle, and the estimated coordinates of the second graphic code in space are calculated to be (-0.3,2.5,1.2).
类似地,机器人可通过上述方式确定当前经过的第一类位置点的第一估计坐标:机器人实时获取视觉传感器采集到的图像数据;根据图像数据判断图像中是否存在第一图形码;若存在,则获取当前机器人相对于前次经过的第一类位置点的偏移数据;根据图像确定第一图形码相对于当前机器人的偏移数据;根据前次经过的第一类位置点对应的绝对坐标和这两种偏移数据计算第一图形码的估计坐标,作为当前经过的第一类位置点的估计坐标。Similarly, the robot can determine the first estimated coordinates of the first type of position point currently passed by in the above manner: the robot obtains image data collected by the visual sensor in real time; determines whether there is a first graphic code in the image based on the image data; if so, obtains the offset data of the current robot relative to the first type of position point passed last time; determines the offset data of the first graphic code relative to the current robot based on the image; calculates the estimated coordinates of the first graphic code based on the absolute coordinates corresponding to the first type of position point passed last time and the two offset data, as the estimated coordinates of the first type of position point currently passed.
通过对利用第一偏移数据、第二偏移数据和第一类位置点对应的绝对坐标来计算相应的第一估计坐标和第二估计坐标,可提高对估计坐标计算的准确性。By calculating the corresponding first estimated coordinates and second estimated coordinates using the first offset data, the second offset data and the absolute coordinates corresponding to the first type of position points, the accuracy of the estimated coordinate calculation can be improved.
如图3所示,在一个实施例中,根据图像数据判断图像中是否存在用于定位第二类位置点的第二图形码,包括:As shown in FIG3 , in one embodiment, judging whether there is a second graphic code for locating a second type of position point in the image according to the image data includes:
S302,获取第二图形码对应的图像属性。S302: Obtain image attributes corresponding to the second graphic code.
其中,第二图形码是与货架上的库位对应的,在定位货架上的库位时,可通过第二图形码确定是否扫描到库位。在巷道内扫描时,摄像头会扫描到巷道内的货架、地面、第二图形码等,机器人需要从采集的图像数据中确定是否存在第二图形码。图像属性包括图像中各个像素点的颜色特征、亮度特征,还可以包括像素点的深度特征等,可以预先分析第二图形码的图像属性,将第二图形码与相应的图像属性对应存储,这样,机器人就可以获取第二图形码对应的图形属性,能够确定采集的图像包括第二图形码。Among them, the second graphic code corresponds to the storage location on the shelf. When locating the storage location on the shelf, the second graphic code can be used to determine whether the storage location has been scanned. When scanning in the alley, the camera will scan the shelves, the ground, the second graphic code, etc. in the alley. The robot needs to determine whether the second graphic code exists from the collected image data. The image attributes include the color characteristics and brightness characteristics of each pixel in the image, and can also include the depth characteristics of the pixel points. The image attributes of the second graphic code can be analyzed in advance, and the second graphic code can be stored in correspondence with the corresponding image attributes. In this way, the robot can obtain the graphic attributes corresponding to the second graphic code and can determine that the collected image includes the second graphic code.
S304,根据当前采集的图像数据提取图像的图像特征。S304: extracting image features of the image based on the currently collected image data.
S306,当图像特征与图像属性匹配时,确定图像中存在第二图形码。S306: When the image feature matches the image attribute, it is determined that a second graphic code exists in the image.
具体地,在机器人获取了图像数据后,就可以按与提取图像属性相同的方式从采集的图像数据中提取图像的图像特征,并将提取的图像特征与预先存储的图像属性进行匹配,以确定当前采集的图像数据是否包括第二图形码。在将提取的图像特征与预先存储的图像属性匹配成功时,可确定机器人在当前位置采集的图像中存在第二图形码。Specifically, after the robot acquires the image data, it can extract the image features of the image from the acquired image data in the same manner as extracting the image attributes, and match the extracted image features with the pre-stored image attributes to determine whether the currently acquired image data includes the second graphic code. When the extracted image features are successfully matched with the pre-stored image attributes, it can be determined that the second graphic code exists in the image acquired by the robot at the current position.
在一个实施例中,地图生成方法还包括:实时获取对室内空间中公用区扫描得到的第三偏移数据;根据第三偏移数据、已知位置点确定机器人在公用区中当前所在位置的估计坐标。In one embodiment, the map generation method further includes: acquiring in real time third offset data obtained by scanning the common area in the indoor space; and determining the estimated coordinates of the robot's current position in the common area based on the third offset data and known position points.
其中,室内空间包括公用区和用于存货的巷道区,巷道区由相邻的货架之间的空间区域形成。具体地,还可根据在公用区扫描时当前机器人相对于已知位置点的第三偏移数据,以及已知位置点对应的绝对坐标计算当前机器人所在位置的估计坐标。机器人在公用区扫描时得到的第三偏移数据可以是通过IMU采集的。The indoor space includes a common area and an aisle area for inventory, and the aisle area is formed by the space area between adjacent shelves. Specifically, the estimated coordinates of the current robot position can also be calculated based on the third offset data of the current robot relative to the known position point when scanning the common area, and the absolute coordinates corresponding to the known position point. The third offset data obtained by the robot when scanning the common area can be collected by IMU.
在一个实施例中,地图生成方法还包括:当经过已知位置点时,获取已知位置点对应的绝对坐标;计算已知位置点的估计坐标与对应的绝对坐标之间的第二偏差;当偏差小于预设阈值时,依据各估计坐标生成地图包括:当第二偏差小于预设阈值时,根据各估计坐标生成地图。In one embodiment, the map generation method also includes: when passing through a known location point, obtaining the absolute coordinates corresponding to the known location point; calculating the second deviation between the estimated coordinates of the known location point and the corresponding absolute coordinates; when the deviation is less than a preset threshold, generating a map based on each estimated coordinate includes: when the second deviation is less than a preset threshold, generating a map based on each estimated coordinate.
在本实施例中,当机器人在公用区扫描时,可通过公用区中已知位置点对各个估计坐标进行闭环修正,从而提高公用区建图的准确性。具体地,在机器人在公用区扫描的过程中,经过已知位置点时,可根据上一位置点的估计坐标和当前机器人相对于上一位置点的偏移数据计算已知位置点的估计坐标,在修正时,可计算已知位置点的估计坐标与对应的绝对坐标之间的第二偏差,当第二偏差小于预设阈值时,说明机器人上各个传感器采集的数据误差较小,就可以依据巷道中货架上各个库位的估计坐标生成地图。In this embodiment, when the robot is scanning in the common area, each estimated coordinate can be corrected in a closed loop through the known position points in the common area, thereby improving the accuracy of the common area map. Specifically, when the robot passes through a known position point during scanning in the common area, the estimated coordinates of the known position point can be calculated based on the estimated coordinates of the previous position point and the offset data of the current robot relative to the previous position point. During the correction, the second deviation between the estimated coordinates of the known position point and the corresponding absolute coordinates can be calculated. When the second deviation is less than the preset threshold, it means that the data error collected by each sensor on the robot is small, and a map can be generated based on the estimated coordinates of each storage location on the shelf in the aisle.
在一个实施例中,方法还包括:当室内空间中存在未被扫描到的盲区时;则返回从室内空间任一第一类位置点出发,对室内空间进行扫描的步骤;当巷道中存在未被扫描到的库位时,则返回从室内空间任一第一类位置点出发,对室内空间进行扫描的步骤。In one embodiment, the method also includes: when there is a blind spot in the indoor space that has not been scanned; returning to the step of scanning the indoor space from any first-class position point in the indoor space; when there is a storage location in the alley that has not been scanned, returning to the step of scanning the indoor space from any first-class position point in the indoor space.
其中,盲区是指机器人在对室内空间进行扫描时,室内空间中还存在未被扫描到的区域。具体地,若室内空间中还存在未被扫描到的盲区,需要继续扫描以保证生成的地图足够完整,若室内空间中还存在未被扫描到的库位,则也需要继续扫描以保证得到的地图中各个库位的坐标足够准确。Among them, blind spots refer to areas that have not been scanned when the robot scans the indoor space. Specifically, if there are blind spots that have not been scanned in the indoor space, it is necessary to continue scanning to ensure that the generated map is complete enough. If there are storage locations that have not been scanned in the indoor space, it is also necessary to continue scanning to ensure that the coordinates of each storage location in the obtained map are accurate enough.
在一个实施例中,机器人可以统计在对室内空间扫描的过程中检测到的所有位置点所属的类别,获取为室内空间设定的所有位置点的预设类别,判断检测到的所有位置点所属的类别是否完全覆盖了预设类别,在没有完全覆盖时,说明当前室内空间中还存在未扫描到的盲区,机器人需要再次返回执行从室内空间任一已知位置点出发,对室内空间进行扫描的步骤,继续对室内空间中进行扫描,直至扫描到的位置点的类别完全覆盖了预设类别。In one embodiment, the robot can count the categories to which all position points detected during the scanning of the indoor space belong, obtain the preset categories of all position points set for the indoor space, and determine whether the categories to which all detected position points belong completely cover the preset categories. If not, it means that there are still blind spots that have not been scanned in the current indoor space, and the robot needs to return to execute the steps of scanning the indoor space from any known position point in the indoor space, and continue scanning the indoor space until the categories of the scanned position points completely cover the preset categories.
进一步地,机器人可在室内空间中扫描到的位置点的类别完全覆盖了预设类别时,统计扫描到的库位的数量,获室内空间中库位的总数,将统计的数量与总数进行比较,以判断室内空间中是否存在未被扫描到的库位。在室内空间中还存在未被扫描到的库位时,机器人需要再次返回执行从室内空间任一已知位置点出发,对室内空间进行扫描的步骤,继续对室内空间进行扫描,直至扫描到所有的库位。Furthermore, when the categories of the location points scanned by the robot in the indoor space completely cover the preset categories, the number of scanned storage locations is counted to obtain the total number of storage locations in the indoor space, and the counted number is compared with the total number to determine whether there are storage locations in the indoor space that have not been scanned. When there are still storage locations in the indoor space that have not been scanned, the robot needs to return to execute the step of scanning the indoor space from any known location point in the indoor space, and continue to scan the indoor space until all storage locations are scanned.
如图4所示,为一个实施例中生成地图的流程示意图。参照图4,首先在要生成地图的室内空间中设定数个给定了绝对坐标的已知位置点,机器人从任一已知位置点出发,对室内空间进行扫描,在扫描的过程中获取传感器数据,根据传感器数据得到各个库位的估计坐标,在机器人经过巷道入口处时,计算巷道入口处的估计坐标与绝对坐标之间的偏差并记录下来,机器人判断当前室内空间中是否存在还未扫描到的盲区,若是,则返回从室内空间任一已知位置点出发,对室内空间进行扫描的步骤,若否,则机器人判断当前环境室内空间中是否存在还未扫描到的库位,若是,则返回从室内空间任一已知位置点出发,对室内空间进行扫描的步骤,若否,则机器人判断记录的各个巷道入口处对应的偏差是否小于阈值,若否,则返回从室内空间任一已知位置点出发,对室内空间进行扫描的步骤,若是,则根据最后得到的各个库位的估计坐标输出地图。As shown in FIG4 , it is a schematic diagram of a process of generating a map in an embodiment. Referring to FIG4 , firstly, several known position points with given absolute coordinates are set in the indoor space where the map is to be generated, the robot starts from any known position point and scans the indoor space, obtains sensor data during the scanning process, obtains the estimated coordinates of each storage location according to the sensor data, and when the robot passes through the entrance of the lane, calculates and records the deviation between the estimated coordinates and the absolute coordinates at the entrance of the lane, and the robot determines whether there is a blind spot that has not been scanned in the current indoor space, if so, returns to the step of scanning the indoor space from any known position point in the indoor space, if not, the robot determines whether there is a storage location that has not been scanned in the current environment indoor space, if so, returns to the step of scanning the indoor space from any known position point in the indoor space, if not, the robot determines whether the deviation corresponding to each recorded entrance of the lane is less than a threshold, if not, returns to the step of scanning the indoor space from any known position point in the indoor space, if so, outputs a map according to the estimated coordinates of each storage location finally obtained.
在一个实施例中,传感器数据包括多个传感器采集到的数据;地图生成方法还包括:当偏差大于预设阈值时,调整各个传感器对应的信任度;返回从室内空间任一第一类位置点出发,对室内空间进行扫描的步骤;按照调整后的信任度对相应的传感器采集的数据进行处理;基于处理后的各个数据确定各库位的估计坐标。In one embodiment, the sensor data includes data collected by multiple sensors; the map generation method also includes: when the deviation is greater than a preset threshold, adjusting the trust level corresponding to each sensor; returning to the step of scanning the indoor space from any first-class position point in the indoor space; processing the data collected by the corresponding sensor according to the adjusted trust level; and determining the estimated coordinates of each storage location based on the processed data.
机器人在扫描室内空间时获得的传感器数据可以是由各个传感器采集的数据融合后得到的,基于数据融合得到的传感器数据进行处理,能够提高计算得到的各个库位的估计坐标的准确性。由于传感器精度、噪声数据等因素的影响,机器人在扫描室内空间时通过各个传感器采集到的传感器数据的准确性也会不同,信任度是其它传感器数据对当前传感器采集的数据之间的信任程度,在一个实施例中,信任度可用当前传感器采集的数据在融合过程中所占的权重来表示,权重值越大,代表当前传感器采集的数据真实性越高。The sensor data obtained by the robot when scanning the indoor space can be obtained by fusing the data collected by each sensor. The accuracy of the estimated coordinates of each storage location calculated can be improved by processing the sensor data obtained by data fusion. Due to the influence of factors such as sensor accuracy and noise data, the accuracy of the sensor data collected by the robot through each sensor when scanning the indoor space will also be different. The trust degree is the degree of trust between other sensor data and the data collected by the current sensor. In one embodiment, the trust degree can be represented by the weight of the data collected by the current sensor in the fusion process. The larger the weight value, the higher the authenticity of the data collected by the current sensor.
具体地,在基于传感器数据计算得到的估计坐标与实际坐标之间的偏差大于预设阈值时,可调整对各个传感器的参数中的信任度进行调整,在调整后,重新返回执行从室内空间任一已知位置点出发,对室内空间进行扫描的步骤,按照调整后的信任度对本次扫描过程中采集的数据进行融合得到新的传感器数据,并基于新的传感器数据确定各个位置点和库位的估计坐标。Specifically, when the deviation between the estimated coordinates calculated based on the sensor data and the actual coordinates is greater than a preset threshold, the trust in the parameters of each sensor can be adjusted. After the adjustment, the step of scanning the indoor space from any known position point in the indoor space is returned to the execution again, and the data collected during this scanning process is fused according to the adjusted trust to obtain new sensor data, and the estimated coordinates of each position point and storage location are determined based on the new sensor data.
相应地,机器人可再次计算巷道入口处的估计坐标与绝对坐标之间的偏差,看看偏差是否小于阈值,以确定是否能基于本次得到的估计坐标生成地图。Accordingly, the robot may calculate again the deviation between the estimated coordinates and the absolute coordinates at the entrance of the lane to see whether the deviation is less than a threshold value, so as to determine whether a map can be generated based on the estimated coordinates obtained this time.
在本实施例中,在偏差大于阈值的情况下,可对各个传感器采集的数据的信任度进行调整,提高各个特征点的估计坐标的准确性。In this embodiment, when the deviation is greater than the threshold, the trustworthiness of the data collected by each sensor may be adjusted to improve the accuracy of the estimated coordinates of each feature point.
在一个实施例中,如图5所示,地图生成方法还包括按照生成的地图进行导航的步骤,具体包括:In one embodiment, as shown in FIG5 , the map generation method further includes the step of navigating according to the generated map, specifically including:
S502,接收待行进至目标位置的目标坐标。S502, receiving the target coordinates of the target position to be traveled to.
目标位置可为目标库位。在客户成功下单后,订单系统可根据订单中的货品信息确定用于标记该货物的标识,标识比如可以是单品标识(SKU),根据该标识确定该货物在仓库中的哪个库位,作为目标库位,并将该目标库位对应的坐标下发至机器人,机器人可接收由订单系统下发的目标坐标。The target location can be a target warehouse. After the customer successfully places an order, the order system can determine the identifier used to mark the goods according to the goods information in the order. The identifier can be, for example, a single product identifier (SKU). According to the identifier, the warehouse location of the goods in the warehouse is determined as the target warehouse location, and the coordinates corresponding to the target warehouse location are sent to the robot. The robot can receive the target coordinates sent by the order system.
S504,在行进过程中,获取对当前所在位置扫描得到的实时数据。S504, during the moving process, obtaining real-time data obtained by scanning the current position.
机器人在接收到目标坐标后,就从起始位置出发,在行进途中对室内空间进行扫描,获取传感器采集的实时数据,实时数据包括对当前传感器采集到的数据进行融合处理得到的图像数据和偏移数据。After receiving the target coordinates, the robot starts from the starting position and scans the indoor space while moving to obtain real-time data collected by the sensor. The real-time data includes image data and offset data obtained by fusing the data collected by the current sensor.
S506,根据实时数据确定当前所在位置的坐标。S506, determining the coordinates of the current location according to the real-time data.
机器人可在行进的过程中,实时地根据采集的实时数据、起始点的坐标计算当前所在位置的坐标,将当前所在位置的坐标与目标坐标进行比较。During the movement, the robot can calculate the coordinates of the current position in real time based on the collected real-time data and the coordinates of the starting point, and compare the coordinates of the current position with the target coordinates.
S508,依据当前所在位置的坐标、目标坐标进至目标位置。S508, proceed to the target location according to the coordinates of the current location and the target coordinates.
机器人得到当前所在位置的坐标后,就知道当前处于地图中的哪个位置,将当前所在位置的坐标与目标坐标进行比较,从而确定自己下一步的行进路线,并按照该行进路线行进至目标坐标,到达目标库位。After the robot obtains the coordinates of its current location, it knows where it is in the map, compares the coordinates of its current location with the target coordinates, and thus determines its next route, and follows the route to the target coordinates and arrives at the target storage location.
在本实施例中,在生成了当前环境所对应的地图后,机器人就可以按照该地图以及当前扫描到的传感器数据进行导航,行进至目标库位。In this embodiment, after a map corresponding to the current environment is generated, the robot can navigate according to the map and the currently scanned sensor data to move to the target storage location.
如图6所示,为一个实施例中,当已知位置点用二维码表示时生成地图的流程示意图。参照图6,首先按照给定的绝对坐标在已知位置点处(包括巷道入口处)粘贴二维码,这些二维码可以解析得到绝对坐标;在货架上的各个库位侧边粘贴第二图形码,这些第二图形码仅用于表示各个库位;然后由机器人在室内空间中移动,在行进途中根据当前采集的传感器数据计算各个位置点的估计坐标;当机器人到达巷道入口处时,解析巷道入口处的二维码得到绝对坐标,并根据解析得到的绝对坐标和巷道入口处的估计坐标计算偏差;依据偏差对传感器数据进行校准,重新计算库位和其它位置点的估计坐标,直至扫描到全部库位且巷道入口处的估计坐标与绝对坐标之间的偏差小于预设阈值时,就根据各个库位上粘贴的第二图形码的估计坐标输出地图。As shown in FIG6 , it is a schematic diagram of a process of generating a map when a known position point is represented by a QR code in an embodiment. Referring to FIG6 , firstly, a QR code is pasted at a known position point (including an aisle entrance) according to a given absolute coordinate, and these QR codes can be parsed to obtain absolute coordinates; second graphic codes are pasted on the side of each storage location on the shelf, and these second graphic codes are only used to represent each storage location; then the robot moves in the indoor space, and during the movement, the estimated coordinates of each position point are calculated according to the currently collected sensor data; when the robot reaches the aisle entrance, the QR code at the aisle entrance is parsed to obtain absolute coordinates, and the deviation is calculated according to the absolute coordinates obtained by parsing and the estimated coordinates at the aisle entrance; the sensor data is calibrated according to the deviation, and the estimated coordinates of the storage location and other position points are recalculated, until all storage locations are scanned and the deviation between the estimated coordinates at the aisle entrance and the absolute coordinates is less than a preset threshold, then the map is output according to the estimated coordinates of the second graphic codes pasted on each storage location.
在一个实施例中,如图7所示,地图生成方法具体包括以下步骤:In one embodiment, as shown in FIG7 , the map generation method specifically includes the following steps:
S702,从室内空间任一已知位置点出发,对室内空间进行扫描。S702, starting from any known position point in the indoor space, scanning the indoor space.
S704,当经过巷道入口处时,获取巷道入口处对应的绝对坐标。S704, when passing through the tunnel entrance, obtaining the absolute coordinates corresponding to the tunnel entrance.
S706,实时获取视觉传感器在巷道中采集到的图像数据。S706, acquiring image data collected by the visual sensor in the lane in real time.
S708,获取第二图形码对应的图像属性。S708: Obtain image attributes corresponding to the second graphic code.
S710,根据当前采集的图像数据提取图像的图像特征;当图像特征与图像属性匹配时,确定图像中存在第二图形码。S710, extracting image features of an image based on currently collected image data; when the image features match image attributes, determining that a second graphic code exists in the image.
S712,获取当前机器人相对于巷道入口处的第一偏移数据;根据图像确定第二图形码相对于当前机器人的第二偏移数据。S712, obtaining first offset data of the current robot relative to the lane entrance; and determining second offset data of the second graphic code relative to the current robot according to the image.
S714,根据第一偏移数据、巷道入口处对应的绝对坐标和第二偏移数据计算第二图形码的估计坐标,作为库位的估计坐标。S714, calculating the estimated coordinates of the second graphic code according to the first offset data, the absolute coordinates corresponding to the lane entrance and the second offset data as the estimated coordinates of the storage location.
S716,计算巷道入口处的估计坐标与绝对坐标之间的偏差。S716, calculating the deviation between the estimated coordinates and the absolute coordinates at the tunnel entrance.
S718,实时获取对室内空间中公用区扫描得到的第三偏移数据;根据第三偏移数据、已知位置点确定机器人在公用区中当前所在位置的估计坐标。S718, acquiring in real time third offset data obtained by scanning the public area in the indoor space; and determining the estimated coordinates of the current position of the robot in the public area according to the third offset data and the known position points.
S720,当经过已知位置点时,计算已知位置点的估计坐标与对应的绝对坐标之间的第二偏差。S720: When passing through a known position point, calculate a second deviation between the estimated coordinates of the known position point and the corresponding absolute coordinates.
S722,当巷道入口处的估计坐标与绝对坐标之间的偏差或已知位置点的估计坐标与对应的绝对坐标之间的第二偏差小于预设阈值时,根据各估计坐标生成地图。S722, when the deviation between the estimated coordinates and the absolute coordinates at the tunnel entrance or the second deviation between the estimated coordinates and the corresponding absolute coordinates of the known position point is less than a preset threshold, generate a map according to the estimated coordinates.
S724,判断室内空间中是否存在未被扫描到的盲区;若是则返回步骤702;若否则执行步骤S726。S724, determine whether there is a blind spot in the indoor space that has not been scanned; if so, return to step 702; if not, execute step S726.
S726,判断巷道中是否存在未被扫描到的库位,若是则返回步骤702,若否则执行步骤S728。S726, determine whether there are any storage locations in the lane that have not been scanned, if so, return to step 702, if not, execute step S728.
S728,判断偏差或第二偏差是否小于预设阈值时,若是则执行步骤S732;若否则执行步骤S730。S728, when determining whether the deviation or the second deviation is less than a preset threshold, if so, execute step S732; if not, execute step S730.
S730,调整各个传感器对应的信任度,按照调整后的信任度对相应的传感器采集的数据进行处理;基于处理后的各个数据确定各库位的估计坐标。S730, adjusting the trust level corresponding to each sensor, and processing the data collected by the corresponding sensor according to the adjusted trust level; and determining the estimated coordinates of each storage location based on the processed data.
S732,接收待行进至目标库位的目标坐标。S732, receiving the target coordinates of the target storage location to be moved to.
S734,在行进过程中,获取对当前所在位置扫描得到的实时数据;根据实时数据确定当前所在位置的坐标。S734, during the moving process, obtain real-time data obtained by scanning the current position; and determine the coordinates of the current position according to the real-time data.
S736,依据当前所在位置的坐标、目标坐标进至目标库位。S736, proceed to the target storage location according to the coordinates of the current location and the target coordinates.
上述地图生成方法,在生成地图时,从室内空间任一已知位置点出发,对室内空间进行扫描,利用传感器对室内空间巷道中货架上各个库位扫描得到的传感器数据自动计算货架上各个库位的估计坐标,当对巷道入口处计算的估计坐标与给定的绝对坐标足够接近时,说明传感器采集的传感器数据足够可靠,这样基于这些传感器确定的货架上各个库位的估计坐标也是可靠的,就可以根据这些库位的估计坐标生成地图,相比于通过粘贴大量的二维码生成地图,导致需要耗费大量的人力物力而言,能够大大节省人力物力。The above-mentioned map generation method, when generating a map, starts from any known position point in the indoor space, scans the indoor space, and uses the sensor data obtained by scanning each storage location on the shelf in the aisle of the indoor space to automatically calculate the estimated coordinates of each storage location on the shelf. When the estimated coordinates calculated at the entrance of the aisle are close enough to the given absolute coordinates, it means that the sensor data collected by the sensor is reliable enough. In this way, the estimated coordinates of each storage location on the shelf determined based on these sensors are also reliable. A map can be generated based on the estimated coordinates of these storage locations. Compared with generating a map by pasting a large number of QR codes, which requires a lot of manpower and material resources, it can greatly save manpower and material resources.
应该理解的是,虽然上述各流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。It should be understood that, although each step in the above-mentioned each flow chart is shown in turn according to the indication of the arrow, these steps are not necessarily performed in turn according to the order indicated by the arrow. Unless there is clear explanation in this article, the execution of these steps does not have strict order restriction, and these steps can be performed in other orders. Moreover, at least a part of the steps in the above-mentioned each embodiment can include a plurality of sub-steps or a plurality of stages, and these sub-steps or stages are not necessarily performed at the same time, but can be performed at different times, and the execution order of these sub-steps or stages is not necessarily performed in turn, but can be performed in turn or alternately with at least a part of other steps or sub-steps or stages of other steps.
如图8所示,提供了一种地图生成装置800,该装置包括扫描模块802、绝对坐标获取模块804、传感器数据获取模块806、估计坐标确定模块808、偏差计算模块810和地图生成模块812。其中:As shown in FIG8 , a map generation device 800 is provided, which includes a scanning module 802, an absolute coordinate acquisition module 804, a sensor data acquisition module 806, an estimated coordinate determination module 808, a deviation calculation module 810 and a map generation module 812. Among them:
扫描模块802用于从室内空间任一第一类位置点出发,对室内空间进行扫描;绝对坐标获取模块804用于当经过室内空间中的第一类位置点时,获取第一类位置点对应的绝对坐标;传感器数据获取模块806用于实时获取对室内空间中,第一类位置点和第二类位置点扫描得到的传感器数据;估计坐标确定模块808用于根据传感器数据确定各第一类位置点的第一估计坐标和各第二类位置点的第二估计坐标;偏差计算模块810用于计算第一估计坐标与绝对坐标之间的偏差;地图生成模块812用于当偏差小于预设阈值时,依据各第二估计坐标生成地图。The scanning module 802 is used to scan the indoor space starting from any first-class position point in the indoor space; the absolute coordinate acquisition module 804 is used to obtain the absolute coordinates corresponding to the first-class position points when passing through the first-class position points in the indoor space; the sensor data acquisition module 806 is used to obtain the sensor data obtained by scanning the first-class position points and the second-class position points in the indoor space in real time; the estimated coordinate determination module 808 is used to determine the first estimated coordinates of each first-class position point and the second estimated coordinates of each second-class position point according to the sensor data; the deviation calculation module 810 is used to calculate the deviation between the first estimated coordinates and the absolute coordinates; the map generation module 812 is used to generate a map based on each second estimated coordinate when the deviation is less than a preset threshold.
在一个实施例中,传感器数据获取模块806还用于实时获取视觉传感器在巷道中采集到的图像数据;根据图像数据判断图像中是否存在用于定位第二类位置点的第二图形码;若存在,则获取当前机器人相对于第一类位置点的第一偏移数据;根据图像确定第二图形码相对于当前机器人的第二偏移数据。In one embodiment, the sensor data acquisition module 806 is also used to acquire image data collected by the visual sensor in the lane in real time; determine whether there is a second graphic code for locating the second type of position point in the image based on the image data; if so, obtain the first offset data of the current robot relative to the first type of position point; and determine the second offset data of the second graphic code relative to the current robot based on the image.
估计坐标确定模块808还用于根据第一偏移数据、绝对坐标和第二偏移数据计算第二图形码的估计坐标,将第二图形码的估计坐标作为第二估计坐标。The estimated coordinate determination module 808 is further configured to calculate the estimated coordinates of the second graphic code according to the first offset data, the absolute coordinates and the second offset data, and use the estimated coordinates of the second graphic code as the second estimated coordinates.
在一个实施例中,传感器数据获取模块806还用于获取第二图形码对应的图像属性;根据当前采集的图像数据提取图像的图像特征;当图像特征与图像属性匹配时,确定图像中存在第二图形码。In one embodiment, the sensor data acquisition module 806 is further used to acquire image attributes corresponding to the second graphic code; extract image features of the image based on the currently collected image data; and determine that the second graphic code exists in the image when the image features match the image attributes.
在一个实施例中,扫描模块802还用于当室内空间中存在未被扫描到的盲区时;则从室内空间任一第一类位置点出发,对室内空间进行扫描的步骤;当巷道中存在未被扫描到的第二类位置点时,则返回从室内空间任一第一类位置点出发,对室内空间进行扫描的步骤。In one embodiment, the scanning module 802 is also used for the step of scanning the indoor space from any first-category position point in the indoor space when there is a blind spot in the indoor space that has not been scanned; and when there is a second-category position point in the alley that has not been scanned, returning to the step of scanning the indoor space from any first-category position point in the indoor space.
在一个实施例中,如图9所示,传感器数据包括多个传感器采集到的数据;上述装置还包括:In one embodiment, as shown in FIG9 , the sensor data includes data collected by multiple sensors; the above-mentioned device further includes:
传感器数据修正模块814,用于当偏差大于预设阈值时,调整各个传感器对应的信任度;The sensor data correction module 814 is used to adjust the trust level corresponding to each sensor when the deviation is greater than a preset threshold;
上述估计坐标确定模块808还用于按照调整后的信任度对相应的传感器采集的数据进行处理;基于处理后的各个数据确定各第一类位置点的第一估计坐标和各第二类位置点的第二估计坐标。The estimated coordinate determination module 808 is further used to process the data collected by the corresponding sensor according to the adjusted confidence level; and determine the first estimated coordinates of each first-category position point and the second estimated coordinates of each second-category position point based on the processed data.
在一个实施例中,如图10所示,上述装置还包括:In one embodiment, as shown in FIG10 , the device further includes:
导航模块816,用于接收待行进至目标位置的目标坐标;在行进过程中,获取对当前所在位置扫描得到的实时数据;根据实时数据确定当前所在位置的坐标;依据当前所在位置的坐标、目标坐标进至目标位置。The navigation module 816 is used to receive the target coordinates of the target position to be traveled to; during the travel process, obtain the real-time data obtained by scanning the current position; determine the coordinates of the current position according to the real-time data; and travel to the target position according to the coordinates of the current position and the target coordinates.
在一个实施例中,绝对坐标获取模块804还用于采集与第一类位置点对应的图像;对图像中的第一图形码进行解析得到巷道入口处的绝对坐标。In one embodiment, the absolute coordinate acquisition module 804 is further used to collect an image corresponding to the first type of location point; and parse the first graphic code in the image to obtain the absolute coordinates of the lane entrance.
上述地图生成装置800,在生成地图时,从室内空间任一已知位置点出发,对室内空间进行扫描,利用传感器对室内空间巷道中货架上各个库位扫描得到的传感器数据自动计算货架上各个库位的估计坐标,当对巷道入口处计算的估计坐标与给定的绝对坐标足够接近时,说明传感器采集的传感器数据足够可靠,这样基于这些传感器确定的货架上各个库位的估计坐标也是可靠的,就可以根据这些库位的估计坐标生成地图,相比于通过粘贴大量的二维码生成地图,导致需要耗费大量的人力物力而言,能够大大节省人力物力。When generating a map, the above-mentioned map generating device 800 starts from any known position point in the indoor space, scans the indoor space, and automatically calculates the estimated coordinates of each storage location on the shelf by using the sensor data obtained by scanning each storage location on the shelf in the aisle of the indoor space. When the estimated coordinates calculated at the entrance of the aisle are close enough to the given absolute coordinates, it means that the sensor data collected by the sensor is reliable enough. In this way, the estimated coordinates of each storage location on the shelf determined based on these sensors are also reliable, and a map can be generated based on the estimated coordinates of these storage locations. Compared with generating a map by pasting a large number of QR codes, which requires a lot of manpower and material resources, it can greatly save manpower and material resources.
图11示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的机器人110。如图11所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和传感器。其中,传感器包括视觉传感器,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现地图生成方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行地图生成方法。FIG11 shows an internal structure diagram of a computer device in one embodiment. The computer device may specifically be the robot 110 in FIG1 . As shown in FIG11 , the computer device includes a processor, a memory, a network interface, and a sensor connected via a system bus. Among them, the sensor includes a visual sensor, and the memory includes a non-volatile storage medium and an internal memory. The non-volatile storage medium of the computer device stores an operating system and may also store a computer program, which, when executed by the processor, enables the processor to implement a map generation method. The internal memory may also store a computer program, which, when executed by the processor, enables the processor to execute a map generation method.
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。Those skilled in the art will understand that the structure shown in FIG. 11 is merely a block diagram of a partial structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different arrangement of components.
在一个实施例中,本申请提供的地图生成装置800可以实现为一种计算机程序的形式,计算机程序可在如图11所示的计算机设备上运行。计算机设备的存储器中可存储组成该地图生成装置800的各个程序模块,各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的地图生成方法中的步骤。In one embodiment, the map generating apparatus 800 provided by the present application may be implemented in the form of a computer program, which may be run on a computer device as shown in FIG11. The memory of the computer device may store various program modules constituting the map generating apparatus 800, and the computer program composed of various program modules enables the processor to execute the steps of the map generating method of various embodiments of the present application described in this specification.
例如,图11所示的计算机设备可以通过如图8所示的地图生成装置800中的扫描模块802执行步骤S202;通过绝对坐标获取模块804执行步骤S204;通过传感器数据获取模块806执行步骤S206;通过估计坐标确定模块808执行步骤S208;通过偏差计算模块810执行步骤S210;通过地图生成模块812执行步骤S212。For example, the computer device shown in Figure 11 can execute step S202 through the scanning module 802 in the map generating device 800 shown in Figure 8; execute step S204 through the absolute coordinate acquisition module 804; execute step S206 through the sensor data acquisition module 806; execute step S208 through the estimated coordinate determination module 808; execute step S210 through the deviation calculation module 810; and execute step S212 through the map generating module 812.
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述地图生成方法的步骤。此处地图生成方法的步骤可以是上述各个实施例的地图生成方法中的步骤。In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the processor executes the steps of the above-mentioned map generation method. The steps of the map generation method here may be the steps of the map generation method in the above-mentioned various embodiments.
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述地图生成方法的步骤。此处地图生成方法的步骤可以是上述各个实施例的地图生成方法中的步骤。In one embodiment, a computer readable storage medium is provided, which stores a computer program, and when the computer program is executed by a processor, the processor executes the steps of the above-mentioned map generation method. The steps of the map generation method here can be the steps of the map generation method in each of the above-mentioned embodiments.
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiments can be completed by instructing the relevant hardware through a computer program, and the program can be stored in a non-volatile computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in the present application can include non-volatile and/or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。The above-mentioned embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210794996.2A CN114999308B (en) | 2018-11-19 | 2018-11-19 | Map generation method, device, computer readable storage medium and computer equipment |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210794996.2A CN114999308B (en) | 2018-11-19 | 2018-11-19 | Map generation method, device, computer readable storage medium and computer equipment |
CN201811378230.6A CN109637339B (en) | 2018-11-19 | 2018-11-19 | Map generation method, map generation device, computer-readable storage medium and computer equipment |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811378230.6A Division CN109637339B (en) | 2018-11-19 | 2018-11-19 | Map generation method, map generation device, computer-readable storage medium and computer equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114999308A CN114999308A (en) | 2022-09-02 |
CN114999308B true CN114999308B (en) | 2024-10-18 |
Family
ID=66068728
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811378230.6A Active CN109637339B (en) | 2018-11-19 | 2018-11-19 | Map generation method, map generation device, computer-readable storage medium and computer equipment |
CN202210794996.2A Active CN114999308B (en) | 2018-11-19 | 2018-11-19 | Map generation method, device, computer readable storage medium and computer equipment |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811378230.6A Active CN109637339B (en) | 2018-11-19 | 2018-11-19 | Map generation method, map generation device, computer-readable storage medium and computer equipment |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN109637339B (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110186459B (en) * | 2019-05-27 | 2021-06-29 | 深圳市海柔创新科技有限公司 | Navigation method, mobile carrier and navigation system |
CN112214012B (en) * | 2019-07-11 | 2025-08-29 | 深圳市海柔创新科技有限公司 | Navigation method, mobile carrier and navigation system |
CN111178315B (en) * | 2020-01-03 | 2023-03-14 | 深圳市无限动力发展有限公司 | Method and device for identifying corner and computer equipment |
CN111874512B (en) * | 2020-06-10 | 2022-02-22 | 北京旷视机器人技术有限公司 | Position adjusting method and device, lifting type robot and computer storage medium |
CN112611370A (en) * | 2020-11-20 | 2021-04-06 | 上海能辉科技股份有限公司 | Vehicle for carrying truck battery and positioning system thereof |
CN113573232B (en) * | 2021-07-13 | 2024-04-19 | 深圳优地科技有限公司 | Robot roadway positioning method, device, equipment and storage medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017173424A1 (en) * | 2016-04-01 | 2017-10-05 | Locus Robotics Corporation | Navigation using planned robot travel paths |
CN108469826A (en) * | 2018-04-23 | 2018-08-31 | 宁波Gqy视讯股份有限公司 | A kind of ground drawing generating method and system based on robot |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4192940B2 (en) * | 2005-11-18 | 2008-12-10 | トヨタ自動車株式会社 | Position estimation device for moving body |
US7693757B2 (en) * | 2006-09-21 | 2010-04-06 | International Business Machines Corporation | System and method for performing inventory using a mobile inventory robot |
KR20100111795A (en) * | 2009-04-08 | 2010-10-18 | (주) 한호기술 | Self control moving system for robot and self control moving robot |
US8849036B2 (en) * | 2009-10-30 | 2014-09-30 | Yujin Robot Co., Ltd. | Map generating and updating method for mobile robot position recognition |
US9234965B2 (en) * | 2010-09-17 | 2016-01-12 | Qualcomm Incorporated | Indoor positioning using pressure sensors |
KR101272422B1 (en) * | 2012-02-29 | 2013-06-07 | 부산대학교 산학협력단 | Device and method for locationing using laser scanner and landmark matching |
JP6132659B2 (en) * | 2013-02-27 | 2017-05-24 | シャープ株式会社 | Ambient environment recognition device, autonomous mobile system using the same, and ambient environment recognition method |
KR20140108821A (en) * | 2013-02-28 | 2014-09-15 | 삼성전자주식회사 | Mobile robot and method of localization and mapping of mobile robot |
CN103353305A (en) * | 2013-06-13 | 2013-10-16 | 张砚炳 | Indoor positioning method and system based on mobile phone sensor |
CN104036223A (en) * | 2014-06-10 | 2014-09-10 | 中国人民解放军理工大学 | Indoor cargo positioning and navigation system and method based on bar bodes |
EP3249418A4 (en) * | 2015-01-22 | 2018-02-28 | Guangzhou Airob Robot Technology Co., Ltd. | Rfid-based localization and mapping method and device thereof |
US10415966B2 (en) * | 2015-04-09 | 2019-09-17 | Nec Corporation | Map generating device, map generating method, and program recording medium |
CN104793619B (en) * | 2015-04-17 | 2018-02-09 | 上海交通大学 | Based on the warehouse tunnel automatic guide vehicle guider for swinging single line laser radar |
CN105115506A (en) * | 2015-07-27 | 2015-12-02 | 深圳先进技术研究院 | Indoor positioning method and system |
CN205656496U (en) * | 2015-11-26 | 2016-10-19 | 江苏美的清洁电器股份有限公司 | Robot of sweeping floor and device is establish to indoor map thereof |
CN105467382A (en) * | 2015-12-31 | 2016-04-06 | 南京信息工程大学 | SVM (Support Vector Machine)-based multi-sensor target tracking data fusion algorithm and system thereof |
ES2585977B1 (en) * | 2016-03-15 | 2017-05-10 | Tier1 Technology, S.L. | ROBOTIZED EQUIPMENT FOR THE LOCATION OF ITEMS IN A STORE AND ITS OPERATING PROCEDURE |
CN107305376A (en) * | 2016-04-19 | 2017-10-31 | 上海慧流云计算科技有限公司 | A kind of automatic drawing robot of indoor map and method for drafting |
CN106355427B (en) * | 2016-08-12 | 2018-11-20 | 灯影科技有限公司 | Shopping guide ground drawing generating method and device |
CN106323290B (en) * | 2016-08-24 | 2019-03-12 | 北京无线体育俱乐部有限公司 | Map generation system and method |
CN106338991A (en) * | 2016-08-26 | 2017-01-18 | 南京理工大学 | Robot based on inertial navigation and two-dimensional code and positioning and navigation method thereof |
KR101868374B1 (en) * | 2016-10-20 | 2018-06-18 | 엘지전자 주식회사 | Control method of a moving-robotf |
CN106940704B (en) * | 2016-11-25 | 2019-12-20 | 北京儒博科技有限公司 | Positioning method and device based on grid map |
CN106847066B (en) * | 2017-01-09 | 2019-08-30 | 天津京东深拓机器人科技有限公司 | Warehouse map constructing method and device |
KR20180094493A (en) * | 2017-02-15 | 2018-08-23 | 최일권 | Method and system for creating indoor map |
CN108803591B (en) * | 2017-05-02 | 2025-02-18 | 北京米文动力科技有限公司 | A map generation method and robot |
CN107145578B (en) * | 2017-05-08 | 2020-04-10 | 深圳地平线机器人科技有限公司 | Map construction method, device, equipment and system |
CN107478214A (en) * | 2017-07-24 | 2017-12-15 | 杨华军 | A kind of indoor orientation method and system based on Multi-sensor Fusion |
CN107727104B (en) * | 2017-08-16 | 2019-04-30 | 北京极智嘉科技有限公司 | Navigation method, device and system combined with simultaneous positioning and map creation |
CN108537913A (en) * | 2018-06-15 | 2018-09-14 | 浙江国自机器人技术有限公司 | A kind of cruising inspection system |
CN108759853A (en) * | 2018-06-15 | 2018-11-06 | 浙江国自机器人技术有限公司 | A kind of robot localization method, system, equipment and computer readable storage medium |
-
2018
- 2018-11-19 CN CN201811378230.6A patent/CN109637339B/en active Active
- 2018-11-19 CN CN202210794996.2A patent/CN114999308B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017173424A1 (en) * | 2016-04-01 | 2017-10-05 | Locus Robotics Corporation | Navigation using planned robot travel paths |
CN108469826A (en) * | 2018-04-23 | 2018-08-31 | 宁波Gqy视讯股份有限公司 | A kind of ground drawing generating method and system based on robot |
Also Published As
Publication number | Publication date |
---|---|
CN109637339B (en) | 2022-08-09 |
CN114999308A (en) | 2022-09-02 |
CN109637339A (en) | 2019-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114999308B (en) | Map generation method, device, computer readable storage medium and computer equipment | |
CN112734852B (en) | Robot mapping method and device and computing equipment | |
CN109791052B (en) | Method and system for classifying data points of a point cloud using a digital map | |
US10996062B2 (en) | Information processing device, data management device, data management system, method, and program | |
CN106950985B (en) | Automatic delivery method and device | |
CN108921925B (en) | Semantic point cloud generation method and device based on laser radar and visual fusion | |
US20210049542A1 (en) | Systems, devices, and methods for estimating stock level with depth sensor | |
CN107742304B (en) | Method and device for determining movement track, mobile robot and storage medium | |
CN111932887B (en) | Method and equipment for generating lane-level track data | |
JP6538458B2 (en) | Logistics system and logistics management method | |
JP2013186816A (en) | Moving image processor, moving image processing method and program for moving image processing | |
CN114819821B (en) | Cargo delivery verification method, cargo delivery verification device, computer equipment and storage medium | |
CN103017654B (en) | Multi-path centroid positioning method and device for light spot image | |
US11228654B2 (en) | Tracking device, tracking method, and tracking system | |
CN115494533B (en) | Vehicle positioning method, device, storage medium and positioning system | |
JP2011113197A (en) | Method and system for image search | |
CN114494466B (en) | External parameter calibration method, device and equipment and storage medium | |
CN117218350B (en) | A SLAM implementation method and system based on solid-state radar | |
CN116295352A (en) | A data fusion map construction method, system and electronic equipment | |
JP7253440B2 (en) | Tracking device and information processing program | |
CN115836325A (en) | Multi-Agent Map Generation | |
CN117146795A (en) | Loop detection method, system, equipment and medium for visual laser double verification | |
CN115167295A (en) | A kind of AGV-based cargo placement method, device and electronic equipment | |
KR20240123627A (en) | Marker-based Unmanned Aerial Photogrammetry Automatic Calibration Device and Driving Method Thereof | |
CN116466707A (en) | Estimation method, device and equipment of target motion state quantity and storage medium |
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 |