WO2021254369A1 - Robot repositioning method and apparatus, electronic device, and storage medium - Google Patents

Robot repositioning method and apparatus, electronic device, and storage medium Download PDF

Info

Publication number
WO2021254369A1
WO2021254369A1 PCT/CN2021/100284 CN2021100284W WO2021254369A1 WO 2021254369 A1 WO2021254369 A1 WO 2021254369A1 CN 2021100284 W CN2021100284 W CN 2021100284W WO 2021254369 A1 WO2021254369 A1 WO 2021254369A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
resolution
map
grid map
iterative search
Prior art date
Application number
PCT/CN2021/100284
Other languages
French (fr)
Chinese (zh)
Inventor
马福强
王超
姚秀军
桂晨光
蔡禹丞
蔡小龙
李振
郭新然
崔丽华
Original Assignee
京东科技信息技术有限公司
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 京东科技信息技术有限公司 filed Critical 京东科技信息技术有限公司
Publication of WO2021254369A1 publication Critical patent/WO2021254369A1/en

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/005Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 with correlation of navigation data from several sources, e.g. map or contour matching
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • G01C21/206Instruments for performing navigational calculations specially adapted for indoor navigation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications

Definitions

  • the present disclosure generally relates to the technical field of mobile robot positioning and navigation, and more specifically to robot repositioning methods, devices, electronic equipment, and storage media.
  • indoor robot technology based on multi-sensor fusion has gradually emerged, taking on more tasks such as indoor inspection, service, and transportation, and greatly reducing labor costs.
  • navigation and positioning technology is one of the key technologies of indoor robot technology, and it is the key to realize the autonomous movement of mobile robots.
  • Currently commonly used positioning technologies mainly include outside-in methods and inside-out methods.
  • typical outside-in methods include visual recognition methods based on April tag codes and indoor positioning methods based on visible light communication
  • typical inside-out methods include AMCL (Adaptive Monte Carlo Localization) based on lidar, and adaptive Monte Carlo localization. )method.
  • AMCL Adaptive Monte Carlo Localization
  • the outside-in method needs to set a priori information in the working environment in advance, and needs to modify the working environment, the usage scenarios are limited.
  • the inside-out method actively locates the position in the working environment, without pre-setting prior information in the working environment, and without modifying the working environment. Therefore, the AMCL method based on lidar is currently the mainstream positioning method for indoor robots.
  • the AMCL method based on lidar supports the relocation function in theory, but its computational complexity is large, and it takes a long time to converge, and relocation cannot be completed quickly. It is extremely easy when there are repeated scenes. A relocation error has occurred.
  • the present disclosure provides a robot relocation method, which includes:
  • the first position is determined to be the position of the robot relative to the origin and output.
  • the iterative search on the first multi-resolution grid map to determine the first position of the robot in the grid map includes:
  • an iterative search is performed on the first multi-resolution grid map to determine the first position of the robot in the grid map.
  • the iterative search on the first multi-resolution grid map based on the first iterative search order to determine the first position of the robot in the grid map includes :
  • an iterative search is performed on the search area in the first multi-resolution grid map to determine the first position of the robot in the grid map.
  • the determining and outputting the first position as the position of the robot relative to the origin includes:
  • the first position and the first target position both include X-axis coordinates, Y-axis coordinates, and angular offset.
  • the method further includes:
  • the second position is determined to be the position of the robot relative to the origin and output.
  • the iterative search on the second multi-resolution grid map based on the initial position to determine the second position of the robot in the grid map includes:
  • an iterative search is performed on the second multi-resolution grid map to determine the second position of the robot in the grid map.
  • the determining and outputting the second position as the position of the robot relative to the origin includes:
  • the second position and the second target position both include X-axis coordinates, Y-axis coordinates, and angular offset.
  • a robot relocation device which includes:
  • the map acquisition module is configured to acquire the grid map corresponding to the current area when it is determined that the robot is not located at the origin;
  • the map down-sampling module is configured to down-sample the raster map based on a preset first depth rule to generate a first multi-resolution raster map;
  • a position determining module configured to perform an iterative search on the first multi-resolution grid map to determine the first position of the robot in the grid map;
  • the position output module is configured to determine and output the first position as the position of the robot relative to the origin.
  • the present disclosure provides an electronic device, which includes a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other through the communication bus;
  • Memory configured to store computer programs
  • the processor is configured to execute the program stored in the memory to implement the robot relocation method described in the present disclosure.
  • the present disclosure provides a storage medium in which instructions are stored, which when run on a computer, cause the computer to execute the robot relocation method described in the present disclosure.
  • the present disclosure provides a computer program product containing instructions, which when run on a computer, causes the computer to execute the robot relocation method described in the present disclosure.
  • the robot relocation method, device, electronic device, and storage medium of the present disclosure achieve rapid completion of relocation and avoid relocation errors when there are repeated scenes.
  • the grid map corresponding to the current area is obtained, and the grid map is down-sampled based on the preset first depth rule to generate the first multi-resolution grid map , Perform iterative search on the first multi-resolution grid map, determine the first position of the robot in the grid map, and determine the first position as the position of the robot relative to the origin and output.
  • the raster map is down-sampled by the preset first depth rule to generate the first multi-resolution raster map, and the first multi-resolution raster map is iteratively searched to determine the first position of the robot in the raster map , You can quickly complete the relocation, and avoid relocation errors when there are repeated scenes.
  • Figure 1 shows a schematic diagram of the implementation process of a robot relocation method in an embodiment of the present disclosure
  • FIG. 2 shows a schematic diagram of the implementation process of another robot relocation method in an embodiment of the present disclosure
  • Fig. 3 shows a schematic diagram of grid map area division in an embodiment of the present disclosure
  • FIG. 4 shows a schematic diagram of an implementation process of a robot positioning method in an embodiment of the present disclosure
  • Figure 5 shows a schematic structural diagram of a robot relocation device in an embodiment of the present disclosure.
  • Fig. 6 shows a schematic structural diagram of an electronic device in an embodiment of the present disclosure.
  • FIG. 1 it is a schematic diagram of the implementation process of the robot relocation method provided by the embodiments of the present disclosure.
  • the method may include the following steps:
  • S103 Perform an iterative search on the first multi-resolution grid map to determine the first position of the robot in the grid map;
  • S104 Determine that the first position is the position of the robot relative to the origin and output.
  • the robot if the robot is located at the origin of (coordinates), subsequent positioning processing can be performed on the robot; if the robot is not located at the origin of (coordinates), the robot needs to be repositioned (that is, determining The position of the robot relative to the origin of the coordinate), and then the robot can be subjected to subsequent positioning processing.
  • the embodiment of the present disclosure needs to obtain the grid corresponding to the current area. map.
  • the current area may be an indoor working area or a designated outdoor area, which is not limited in the embodiment of the present disclosure.
  • the robot when it is determined that the robot is not located at the origin (coordinates), the robot needs to be repositioned, and the repositioning process can be performed once when the robot is turned on.
  • the embodiment of the present disclosure performs down-sampling on the raster map based on a preset first depth rule to generate a first multi-resolution raster map, where down-sampling refers to reducing The resolution of the raster map.
  • the first multi-resolution raster map it may include the first lowest resolution raster map, the first intermediate resolution raster map, and the first highest resolution raster map.
  • the first highest resolution raster map that is The grid map corresponding to the above current area.
  • the first intermediate resolution raster map includes at least one first intermediate resolution raster map, and raster maps of different resolutions can form a first multi-resolution raster map with a depth of D1 .
  • the raster map is down-sampled based on the preset first depth rule, and the resolution can be generated as The first multi-resolution raster map of 1000*1000, 500*500, 250*250;
  • the first lowest resolution raster map includes: a raster map with a resolution of 250*250
  • the first intermediate resolution raster map includes: a raster map with a resolution of 500*500
  • the first highest resolution raster map The grid map includes: a grid map with a resolution of 1000*1000.
  • the grid maps of different resolutions can form the first multi-resolution grid map with a depth of D1 (that is, 3).
  • the raster map is down-sampled based on the preset first depth rule, and the resolution can be generated as 10000*10000, 5000*5000, 2500*2500, 1250*1250, 625*625 grid map;
  • the first lowest resolution raster map includes: a raster map with a resolution of 625*625, and the first intermediate resolution raster map includes: a raster with a resolution of 5000*5000, 2500*2500, 1250*1250
  • the first highest resolution raster map includes: a raster map with a resolution of 10000*10000.
  • the raster maps of different resolutions can form the first multi-resolution raster map with a depth of D1 (that is, 5).
  • the raster map is down-sampled based on the preset first depth rule to generate the first multi-resolution raster map.
  • the resolution of the grid map is relatively high, and the grid map can be down-sampled in more levels based on the preset first depth rule to generate the first multi-resolution grid map (for example, the above-mentioned resolution of 10000*10000 Processing process of raster map), if the resolution of the raster map is low, the raster map can be down-sampled at a lower level based on the preset first depth rule to generate the first multi-resolution raster map (Such as the above processing process for the raster map with a resolution of 1000*1000).
  • an iterative search is performed on the first multi-resolution raster map to determine the robot's position in the raster map. One location.
  • the iterative search from coarse to fine on the first multi-resolution grid map can determine the first position of the robot in the grid map.
  • the first position includes X-axis coordinates, Y-axis coordinates, and angular offset.
  • the angular offset can be understood as the angular offset relative to the preset direction of the robot. For example, suppose that the initial direction of the robot (ie, the preset direction) is true north, and the robot direction is true south during the subsequent movement of the robot, and the angle offset of the robot at this time is 180 degrees.
  • the first position of the robot in the grid map it can be understood as the position of the robot relative to the origin, and the first position can be output. So far, the relocation of the robot is completed.
  • the robot For the first position of the robot in the grid map, it can be used as the particle with the highest weight in the AMCL to perform filter calculation in the next positioning calculation, so that the loop of the technology chain is realized.
  • the grid map corresponding to the current area is obtained, and the grid map is down-sampled based on the preset first depth rule to generate the first Multi-resolution raster map, iterative search is performed on the first multi-resolution raster map, the first position of the robot in the raster map is determined, and the first position is determined as the position of the robot relative to the origin and output.
  • the raster map is down-sampled by the preset first depth rule to generate the first multi-resolution raster map, and the first multi-resolution raster map is iteratively searched to determine the first position of the robot in the raster map , You can quickly complete the relocation, and avoid relocation errors when there are repeated scenes.
  • FIG. 2 it is a schematic diagram of the implementation process of another robot relocation method provided by an embodiment of the present disclosure.
  • the method may include the following steps:
  • S203 Determine a first iterative search order of the first multi-resolution raster map based on the resolution, where the iterative order includes an iterative search from low resolution to high resolution;
  • S204 Perform an iterative search on the first multi-resolution grid map based on the first iterative search order, and determine the first position of the robot in the grid map;
  • S205 Determine that the first position is the position of the robot relative to the origin and output.
  • step S201 is similar to the foregoing step S101, which is not limited in the embodiment of the present disclosure.
  • step S202 is similar to the foregoing step S102, which is not limited in the embodiment of the present disclosure.
  • the first multi-resolution raster map may include the first lowest resolution raster map, the first intermediate resolution raster map, and the first highest resolution raster map. Due to the difference in resolution, it can be determined based on the resolution
  • the first iterative search order of the first multi-resolution raster map where the first iterative order includes an iterative search from low resolution to high resolution.
  • the first multi-resolution raster map may include the first lowest resolution raster map, the first intermediate resolution raster map, and the first highest resolution raster map, the first lowest resolution raster map
  • the rate raster map includes: a raster map with a resolution of 250*250
  • the first intermediate resolution raster map includes: a raster map with a resolution of 500*500
  • the first highest resolution raster map includes: resolution
  • the first iterative search order of the first multi-resolution raster map is determined based on the resolution, as shown in Table 1 below.
  • Raster maps of different resolutions 1 Raster map with a resolution of 250*250 2 Raster map with a resolution of 500*500 3 Raster map with a resolution of 1000*1000
  • the first multi-resolution raster map is searched from coarse to fine, and the first position of the robot in the raster map can be determined, as shown below, so that the robot can be quickly completed reset:
  • the first lowest resolution raster map preset the first search box area (to avoid multiple similar scenes in the environment, if there are no similar scenes, you can perform a real global search) to search, confirm The optimal position of the robot in the first lowest resolution grid map, and the optimal position as the initial position for searching in the first search box area preset in the first intermediate resolution grid map next time;
  • the optimal position of the robot in the first intermediate resolution grid map as the initial position, search in the first search box area preset in the first highest resolution grid map to determine that the robot is at the first highest resolution
  • the first position in the rate grid map that is, the grid map corresponding to the above-mentioned current area.
  • each search can calculate the matching score between the current laser point cloud and the current resolution raster map, where the largest matching score in the first search box area is selected and the matching score score is greater than score_th (preset threshold).
  • score_th preset threshold
  • N represents the number of points contained in the laser point cloud
  • represents the weight parameter, which is usually calculated according to the distance of the laser point cloud
  • the cell(x) function represents the rental table of x in the current resolution raster map
  • T(x) represents the transformation of point x to the specified coordinate system
  • i represents the coordinates of the i-th laser point. It should be noted that in the above expression, i and x are both two-dimensional coordinates.
  • the search area of the robot in the grid map can be determined, so as to search based on the first iteration.
  • an iterative search is performed in the search area in the first multi-resolution grid map to determine the first position of the robot in the grid map.
  • the grid map can be divided into four areas A, B, C, and D. As shown in Figure 3, based on the prior information, it can be determined that the robot is in the area A of the grid map, thus Based on the first iterative search order, first search in area A of the first lowest resolution raster map, then search in area A of the first intermediate resolution raster map, and finally search in the first highest resolution raster map. Search in area A of the grid map to determine the first position of the robot in the grid map. Such a pre-determined approximate range of the robot can further accelerate the search and further speed up the completion of the relocation of the robot.
  • the embodiments of the present disclosure may optimize the first position, that is, optimize the first position by using a preset first target optimization algorithm.
  • the first target position is obtained, and the first target position is determined to be the position of the robot relative to the origin and output.
  • the first target position includes X-axis coordinates, Y-axis coordinates, and angular offset.
  • the embodiment of the present disclosure completes the optimization of the first position on the first highest resolution raster map (ie, the raster map corresponding to the current area described above), where the first target optimization algorithm is as follows.
  • ⁇ * arg min ⁇ [1-cell(S i ( ⁇ ))] 2 ;
  • represents the combination of rotation and translation, namely (p x , p y , ⁇ ).
  • bilinear interpolation or trilinear interpolation is used to calculate the probability value of the grid at any point when calculating the derivative.
  • the optimized result is directly used as the final relocation result and output, which can be used as the highest weighted particle in AMCL to perform filtering calculation during the next positioning calculation to realize the technology The loop of the chain.
  • FIG. 4 it is a schematic diagram of the implementation process of the robot positioning method provided by the embodiments of the present disclosure.
  • the method may include the following steps:
  • S403 Perform an iterative search on the second multi-resolution grid map based on the initial position, and determine the second position of the robot in the grid map;
  • S404 Determine that the second position is the position of the robot relative to the origin and output.
  • subsequent positioning processing can be performed on the robot, that is, the initial position output by the AMCL method can be obtained, and the result output by the AMCL method can be corrected and optimized, which can improve the positioning accuracy;
  • subsequent positioning processing can also be performed on the robot, that is, the initial position output by the AMCL method can be obtained, and the results output by the AMCL method can be corrected and optimized, which can improve the positioning accuracy.
  • the raster map may be down-sampled based on a preset second depth rule to generate a second multi-resolution raster map.
  • the second multi-resolution raster map may include the second lowest resolution raster map, the second intermediate resolution raster map, and the second highest resolution raster map.
  • the second highest resolution raster map that is The grid map corresponding to the above current area.
  • the second intermediate-resolution raster map includes at least one second intermediate-resolution raster map
  • a second multi-resolution raster map with a depth of D2 can be composed of raster maps of different resolutions. , For D2, it is not greater than D1 in the above relocation process.
  • the second multi-resolution raster map may include the second lowest resolution raster map, the second intermediate resolution raster map, and the second highest resolution raster map. Due to the difference in resolution, it can be determined based on the resolution
  • the second multi-resolution raster map may include the second lowest resolution raster map, the second intermediate resolution raster map, and the second highest resolution raster map, the second lowest resolution raster map
  • the rate raster map includes: a raster map with a resolution of 250*250
  • the second intermediate resolution raster map includes: a raster map with a resolution of 500*500
  • the second highest resolution raster map includes: resolution
  • the second iterative search order of the second multi-resolution raster map is determined based on the resolution, as shown in Table 2 below.
  • Raster maps of different resolutions 1 Raster map with a resolution of 250*250 2 Raster map with a resolution of 500*500 3 Raster map with a resolution of 1000*1000
  • the search area of the robot in the grid map can be determined based on the initial position, so that based on the second iterative search order, iterative search is performed on the search area in the second multi-resolution grid map .
  • the specific processing flow can refer to the above step S204, the embodiment of the present disclosure will not be repeated here.
  • the search area of the robot in the grid map can be roughly determined.
  • the difference between the positioning process in the embodiment of the present disclosure and the above-mentioned relocation process is reflected in the search box
  • the size is different, and the depth of the multi-resolution raster map is different.
  • the embodiment of the present disclosure may optimize the second position, that is, optimize the second position by using the preset second objective optimization function to obtain the first position.
  • Two target positions determining that the second target position is the position of the robot relative to the origin and outputting it.
  • the second position and the second target position both include X-axis coordinates, Y-axis coordinates, and angular offset.
  • the embodiment of the present disclosure completes the optimization of the second location on the second highest resolution raster map (ie, the raster map corresponding to the current area described above), where the second target optimization algorithm is as follows.
  • ⁇ * arg min ⁇ [ ⁇ (1-cell(S i ( ⁇ )))+ ⁇ ( ⁇ * - ⁇ )] 2 ;
  • ⁇ and ⁇ are the weight parameters of the two residuals, and other parameters can refer to the above-mentioned first objective optimization algorithm.
  • the optimized result is directly used as the final positioning result and output, which can be inserted into the particle swarm as the particle with the highest weight in the AMCL during the next positioning calculation. Calculate to realize the loop of the technology chain.
  • the embodiment of the present disclosure also provides a robot relocation device.
  • the device may include: a map acquisition module 510, a map down-sampling module 520, a position determination module 530, and a position output module 540.
  • the map obtaining module 510 is configured to obtain a grid map corresponding to the current area when it is determined that the robot is not located at the origin;
  • the map down-sampling module 520 is configured to down-sample the raster map based on a preset first depth rule to generate a first multi-resolution raster map;
  • a position determining module 530 configured to perform an iterative search on the first multi-resolution grid map, and determine the first position of the robot in the grid map;
  • the position output module 540 is configured to determine and output the first position as the position of the robot relative to the origin.
  • the embodiment of the present disclosure also provides an electronic device, as shown in FIG. 6, including a processor 61, a communication interface 62, a memory 63, and a communication bus 64.
  • the processor 61, the communication interface 62, and the memory 63 complete each other through the communication bus 64.
  • the memory 63 is configured to store computer programs
  • the robot When it is determined that the robot is not located at the origin, obtain the grid map corresponding to the current area; down-sample the grid map based on the preset first depth rule to generate a first multi-resolution grid map; An iterative search is performed on a multi-resolution grid map to determine the first position of the robot in the grid map; and the first position is determined to be the position of the robot relative to the origin and output.
  • the communication bus mentioned in the above electronic device may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc.
  • PCI Peripheral Component Interconnect
  • EISA Extended Industry Standard Architecture
  • the communication bus can be divided into address bus, data bus, control bus and so on. For ease of representation, only one thick line is used to indicate in the figure, but it does not mean that there is only one bus or one type of bus.
  • the communication interface is used for communication between the above-mentioned electronic device and other devices.
  • the memory may include random access memory (Random Access Memory, RAM for short), and may also include non-volatile memory (non-volatile memory), such as at least one disk memory.
  • non-volatile memory such as at least one disk memory.
  • the memory may also be at least one storage device located far away from the foregoing processor.
  • the aforementioned processor may be a general-purpose processor, including a central processing unit (Central Processing Unit, CPU for short), a network processor (Network Processor, NP), etc.; it may also be a digital signal processor (Digital Signal Processing, DSP for short) , Application Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components.
  • CPU Central Processing Unit
  • NP Network Processor
  • DSP Digital Signal Processing
  • ASIC Application Specific Integrated Circuit
  • FPGA Field-Programmable Gate Array
  • the present disclosure also provides a storage medium in which instructions are stored, which when run on a computer, cause the computer to execute the robot relocation method described in the present disclosure.
  • the present disclosure also provides a computer program product containing instructions, which when run on a computer, causes the computer to execute the robot relocation method described in the present disclosure.
  • the computer may be implemented in whole or in part by software, hardware, firmware, or any combination thereof.
  • software it can be implemented in the form of a computer program product in whole or in part.
  • the computer program product includes one or more computer instructions.
  • the computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices.
  • the computer instructions can be stored in a storage medium, or transmitted from one storage medium to another storage medium.
  • the computer instructions can be transmitted from a website, computer, server, or data center through a wired (such as coaxial cable, optical fiber) , Digital Subscriber Line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) to transmit to another website, computer, server or data center.
  • the storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or data center integrated with one or more available media.
  • the usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, and a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk (SSD)).

Abstract

Provided are a robot repositioning method and apparatus, an electronic device, and a storage medium. The method comprises: when determining that a robot is not located at an origin, obtaining a grid map corresponding to the current region (S101); performing downsampling on the grid map on the basis of a preset first depth rule to generate a first multi-resolution grid map (S102); performing iterative search on the first multi-resolution grid map to determine a first position of the robot in the grid map (S103); and determining the first position as the position of the robot with respect to the origin and outputting the first position (S104). The method can quickly complete repositioning and avoid the occurrence of repositioning errors in the presence of repeated scenarios.

Description

机器人重定位方法、装置、电子设备及存储介质Robot relocation method, device, electronic equipment and storage medium
相关申请的引用References to related applications
本公开要求于2020年6月18日向中华人民共和国国家知识产权局提交的申请号为202010561916.X、发明名称为“一种机器人重定位方法、装置、电子设备及存储介质”的发明专利申请的全部权益,并通过引用的方式将其全部内容并入本公开。This disclosure requires an invention patent application filed with the State Intellectual Property Office of the People’s Republic of China on June 18, 2020, with an application number of 202010561916.X and an invention title of "a method, device, electronic equipment and storage medium for robot relocation" All rights and interests, and incorporate all its contents into this disclosure by way of reference.
领域field
本公开大体上涉及移动机器人定位与导航技术领域,更具体地涉及机器人重定位方法、装置、电子设备及存储介质。The present disclosure generally relates to the technical field of mobile robot positioning and navigation, and more specifically to robot repositioning methods, devices, electronic equipment, and storage media.
背景background
随着半导体、计算机等技术的不断发展,基于多传感器融合的室内机器人技术逐渐兴起,承担起了更多室内巡检、服务、运输等任务,大大降低了人力成本。其中,导航和定位技术是室内机器人技术的关键技术之一,是实现移动机器人自主移动的关键。目前常用的定位技术主要包括outside-in方法和inside-out方法两类。其中,典型的outside-in方法包括基于April tag码视觉识别方法和基于可见光通信的室内定位方法,而典型的inside-out方法包括基于激光雷达的AMCL(Adaptive Monte Carlo Localization,自适应蒙特卡罗定位)方法。With the continuous development of semiconductor and computer technologies, indoor robot technology based on multi-sensor fusion has gradually emerged, taking on more tasks such as indoor inspection, service, and transportation, and greatly reducing labor costs. Among them, navigation and positioning technology is one of the key technologies of indoor robot technology, and it is the key to realize the autonomous movement of mobile robots. Currently commonly used positioning technologies mainly include outside-in methods and inside-out methods. Among them, typical outside-in methods include visual recognition methods based on April tag codes and indoor positioning methods based on visible light communication, while typical inside-out methods include AMCL (Adaptive Monte Carlo Localization) based on lidar, and adaptive Monte Carlo localization. )method.
由于outside-in方法需要在工作环境中预先设定先验信息,需要改造工作环境,因此使用场景有限。而inside-out方法主动定位在工作环境中的位置,不需要在工作环境中预先设定先验信息,不需要改造工作环境,因此基于激光雷达的AMCL方法是目前室内机器人主流的定位方法。基于激光雷达的AMCL方法在实际使用中,理论上支持重定位功能,但是其计算量较大,且需要较长的时间才可以收敛,并不能快速的完成重定位,当存在重复场景时极易出现重定位错误的情况。Because the outside-in method needs to set a priori information in the working environment in advance, and needs to modify the working environment, the usage scenarios are limited. The inside-out method actively locates the position in the working environment, without pre-setting prior information in the working environment, and without modifying the working environment. Therefore, the AMCL method based on lidar is currently the mainstream positioning method for indoor robots. In actual use, the AMCL method based on lidar supports the relocation function in theory, but its computational complexity is large, and it takes a long time to converge, and relocation cannot be completed quickly. It is extremely easy when there are repeated scenes. A relocation error has occurred.
概述Overview
第一方面,本公开提供了机器人重定位方法,其包括:In the first aspect, the present disclosure provides a robot relocation method, which includes:
在确定机器人未位于原点的情况下,获取当前区域对应的栅格地图;When it is determined that the robot is not located at the origin, obtain the grid map corresponding to the current area;
基于预设第一深度规则对所述栅格地图进行降采样,生成第一多分辨率栅格地图;Down-sampling the raster map based on a preset first depth rule to generate a first multi-resolution raster map;
对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置;以及Performing an iterative search on the first multi-resolution grid map to determine the first position of the robot in the grid map; and
确定所述第一位置为所述机器人相对于所述原点的位置并进行输出。The first position is determined to be the position of the robot relative to the origin and output.
在某些实施方案中,所述对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置,包括:In some embodiments, the iterative search on the first multi-resolution grid map to determine the first position of the robot in the grid map includes:
基于分辨率确定所述第一多分辨率栅格地图的第一迭代搜索顺序,其中,所述迭代顺序包括由低分辨率向高分辨率迭代搜索;以及Determining a first iterative search order of the first multi-resolution raster map based on the resolution, wherein the iterative order includes an iterative search from low resolution to high resolution; and
基于所述第一迭代搜索顺序,对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置。Based on the first iterative search order, an iterative search is performed on the first multi-resolution grid map to determine the first position of the robot in the grid map.
在某些实施方案中,所述基于所述第一迭代搜索顺序,对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置,包括:In some embodiments, the iterative search on the first multi-resolution grid map based on the first iterative search order to determine the first position of the robot in the grid map includes :
确定所述机器人在所述栅格地图中的搜索区域;以及Determining the search area of the robot in the grid map; and
基于所述第一迭代搜索顺序,在所述第一多分辨率栅格地图中的所述搜索区域进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置。Based on the first iterative search sequence, an iterative search is performed on the search area in the first multi-resolution grid map to determine the first position of the robot in the grid map.
在某些实施方案中,所述确定所述第一位置为所述机器人相对于所述原点的位置并进行输出,包括:In some embodiments, the determining and outputting the first position as the position of the robot relative to the origin includes:
利用预设第一目标优化算法对所述第一位置进行优化,得到第一目标位置;以及Optimizing the first position by using a preset first target optimization algorithm to obtain the first target position; and
确定所述第一目标位置为所述机器人相对于所述原点的位置并进行输出;Determining that the first target position is the position of the robot relative to the origin and outputting;
其中,所述第一位置以及所述第一目标位置均包括X轴坐标、Y轴坐标以及角度偏移。Wherein, the first position and the first target position both include X-axis coordinates, Y-axis coordinates, and angular offset.
在某些实施方案中,所述方法还包括:In some embodiments, the method further includes:
在对所述机器人进行重定位完毕的情况下,或者,在确定所述机器人位于原点的情况下,获取AMCL方法输出的初始位置;In the case where the relocation of the robot is completed, or in the case where it is determined that the robot is located at the origin, obtaining the initial position output by the AMCL method;
基于预设第二深度规则对所述栅格地图进行降采样,生成第二多分辨率栅格地图;Down-sampling the raster map based on a preset second depth rule to generate a second multi-resolution raster map;
基于所述初始位置对所述第二多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第二位置;以及Performing an iterative search on the second multi-resolution grid map based on the initial position to determine the second position of the robot in the grid map; and
确定所述第二位置为所述机器人相对于所述原点的位置并进行输出。The second position is determined to be the position of the robot relative to the origin and output.
在某些实施方案中,所述基于所述初始位置对所述第二多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第二位置,包括:In some embodiments, the iterative search on the second multi-resolution grid map based on the initial position to determine the second position of the robot in the grid map includes:
基于分辨率确定所述第二多分辨率栅格地图的第二迭代搜索顺序,其中,所述第二迭代搜索顺序包括由低分辨率向高分辨率迭代搜索;以及Determining a second iterative search order of the second multi-resolution raster map based on the resolution, wherein the second iterative search order includes an iterative search from low resolution to high resolution; and
基于所述初始位置及所述第二迭代搜索顺序,对所述第二多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第二位置。Based on the initial position and the second iterative search order, an iterative search is performed on the second multi-resolution grid map to determine the second position of the robot in the grid map.
在某些实施方案中,所述确定所述第二位置为所述机器人相对于所述原点的位置并进行输出,包括:In some embodiments, the determining and outputting the second position as the position of the robot relative to the origin includes:
利用预设第二目标优化函数对所述第二位置进行优化,得到第二目标位置;以及Optimizing the second position by using a preset second target optimization function to obtain the second target position; and
确定所述第二目标位置为所述机器人相对于所述原点的位置并进行输出;Determining that the second target position is the position of the robot relative to the origin and outputting;
其中,所述第二位置以及所述第二目标位置均包括X轴坐标、Y轴坐标以及角度偏移。Wherein, the second position and the second target position both include X-axis coordinates, Y-axis coordinates, and angular offset.
第二方面,本公开提供了机器人重定位装置,其包括:In a second aspect, the present disclosure provides a robot relocation device, which includes:
地图获取模块,配置为在确定机器人未位于原点的情况下,获取当前区域对应的栅格地图;The map acquisition module is configured to acquire the grid map corresponding to the current area when it is determined that the robot is not located at the origin;
地图降采样模块,配置为基于预设第一深度规则对所述栅格地图进行降采样,生成第一多分辨率栅格地图;The map down-sampling module is configured to down-sample the raster map based on a preset first depth rule to generate a first multi-resolution raster map;
位置确定模块,配置为对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置;以及A position determining module configured to perform an iterative search on the first multi-resolution grid map to determine the first position of the robot in the grid map; and
位置输出模块,配置为确定所述第一位置为所述机器人相对于所述原点的位置并进行输出。The position output module is configured to determine and output the first position as the position of the robot relative to the origin.
第三方面,本公开提供了电子设备,其包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互 间的通信;In a third aspect, the present disclosure provides an electronic device, which includes a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other through the communication bus;
存储器,配置为存放计算机程序;Memory, configured to store computer programs;
处理器,配置为执行存储器上所存放的程序时,实现本公开所述的机器人重定位方法。The processor is configured to execute the program stored in the memory to implement the robot relocation method described in the present disclosure.
第四方面,本公开提供了存储介质,所述存储介质中存储有指令,当其在计算机上运行时,使得计算机执行本公开所述的机器人重定位方法。In a fourth aspect, the present disclosure provides a storage medium in which instructions are stored, which when run on a computer, cause the computer to execute the robot relocation method described in the present disclosure.
第五方面,本公开提供了包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本公开所述的机器人重定位方法。In a fifth aspect, the present disclosure provides a computer program product containing instructions, which when run on a computer, causes the computer to execute the robot relocation method described in the present disclosure.
在某些实施方案中,本公开的机器人重定位方法、装置、电子设备及存储介质实现了快速完成重定位、当存在重复场景时避免出现重定位错误的情况。In some embodiments, the robot relocation method, device, electronic device, and storage medium of the present disclosure achieve rapid completion of relocation and avoid relocation errors when there are repeated scenes.
在某些实施方案中,在确定机器人未位于原点的情况下,获取当前区域对应的栅格地图,基于预设第一深度规则对栅格地图进行降采样,生成第一多分辨率栅格地图,对第一多分辨率栅格地图进行迭代搜索,确定机器人在栅格地图中的第一位置,确定第一位置为机器人相对于原点的位置并进行输出。如此通过预设第一深度规则对栅格地图进行降采样,生成第一多分辨率栅格地图,对第一多分辨率栅格地图进行迭代搜索,确定机器人在栅格地图中的第一位置,可以快速完成重定位,当存在重复场景时避免出现重定位错误的情况。In some embodiments, when it is determined that the robot is not located at the origin, the grid map corresponding to the current area is obtained, and the grid map is down-sampled based on the preset first depth rule to generate the first multi-resolution grid map , Perform iterative search on the first multi-resolution grid map, determine the first position of the robot in the grid map, and determine the first position as the position of the robot relative to the origin and output. In this way, the raster map is down-sampled by the preset first depth rule to generate the first multi-resolution raster map, and the first multi-resolution raster map is iteratively searched to determine the first position of the robot in the raster map , You can quickly complete the relocation, and avoid relocation errors when there are repeated scenes.
附图简要说明Brief description of the drawings
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。The drawings herein are incorporated into the specification and constitute a part of the specification, show embodiments consistent with the disclosure, and are used together with the specification to explain the principle of the disclosure.
为了更清楚地说明本公开的技术方案,下面将对本公开所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。In order to explain the technical solutions of the present disclosure more clearly, the following will briefly introduce the accompanying drawings needed for the present disclosure. Obviously, for those of ordinary skill in the art, they can also Other drawings are obtained from these drawings.
图1示出了本公开一实施例中机器人重定位方法的实施流程示意图;Figure 1 shows a schematic diagram of the implementation process of a robot relocation method in an embodiment of the present disclosure;
图2示出了本公开一实施例中另一机器人重定位方法的实施流程示意图;FIG. 2 shows a schematic diagram of the implementation process of another robot relocation method in an embodiment of the present disclosure;
图3示出了本公开一实施例中栅格地图区域划分的示意图;Fig. 3 shows a schematic diagram of grid map area division in an embodiment of the present disclosure;
图4示出了本公开一实施例中机器人定位方法的实施流程示意图;FIG. 4 shows a schematic diagram of an implementation process of a robot positioning method in an embodiment of the present disclosure;
图5示出了本公开一实施例中机器人重定位装置的结构示意图;以及Figure 5 shows a schematic structural diagram of a robot relocation device in an embodiment of the present disclosure; and
图6示出了本公开一实施例中电子设备的结构示意图。Fig. 6 shows a schematic structural diagram of an electronic device in an embodiment of the present disclosure.
详述Detail
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。In order to make the objectives, technical solutions, and advantages of the embodiments of the present disclosure clearer, the technical solutions in the embodiments of the present disclosure will be described clearly and completely with reference to the accompanying drawings in the embodiments of the present disclosure. Obviously, the described embodiments They are a part of the embodiments of the present disclosure, but not all of the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by those of ordinary skill in the art without creative work shall fall within the protection scope of the present disclosure.
如图1所示,为本公开实施例提供的机器人重定位方法的实施流程示意图,该方法可以包括以下步骤:As shown in FIG. 1, it is a schematic diagram of the implementation process of the robot relocation method provided by the embodiments of the present disclosure. The method may include the following steps:
S101,在确定机器人未位于原点的情况下,获取当前区域对应的栅格地图;S101, in a case where it is determined that the robot is not located at the origin, obtain a grid map corresponding to the current area;
S102,基于预设第一深度规则对所述栅格地图进行降采样,生成第一多分辨率栅格地图;S102, down-sampling the raster map based on a preset first depth rule to generate a first multi-resolution raster map;
S103,对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置;以及S103: Perform an iterative search on the first multi-resolution grid map to determine the first position of the robot in the grid map; and
S104,确定所述第一位置为所述机器人相对于所述原点的位置并进行输出。S104: Determine that the first position is the position of the robot relative to the origin and output.
在某些实施方案中,对于机器人而言,如果机器人位于(坐标)原点,则可以对机器人进行后续的定位处理,如果机器人未位于(坐标)原点,则需要对机器人进行重定位处理(即确定机器人相对于坐标原点的位置),然后可以对机器人进行后续的定位处理。In some embodiments, for the robot, if the robot is located at the origin of (coordinates), subsequent positioning processing can be performed on the robot; if the robot is not located at the origin of (coordinates), the robot needs to be repositioned (that is, determining The position of the robot relative to the origin of the coordinate), and then the robot can be subjected to subsequent positioning processing.
基于先验信息,可以确定机器人是否位于(坐标)原点,在确定机器人未位于(坐标)原点的情况下,需要对机器人进行重定位处理,为此本公开实施例需要获取当前区域对应的栅格地图。Based on the prior information, it can be determined whether the robot is located at the origin of (coordinates). When it is determined that the robot is not at the origin of (coordinates), the robot needs to be repositioned. For this reason, the embodiment of the present disclosure needs to obtain the grid corresponding to the current area. map.
其中,利用激光雷达等设备对当前区域进行扫描可以生成栅格地图。对于当前区域,可以是室内工作区域,可以是指定的某个室外区域,本公开实施例对此不作限定。Among them, using laser radar and other equipment to scan the current area can generate a raster map. The current area may be an indoor working area or a designated outdoor area, which is not limited in the embodiment of the present disclosure.
需要说明的是,在确定机器人未位于(坐标)原点的情况下,需要对机器人进行重定位处理,其重定位处理可以在机器人开机的时候进行一次。It should be noted that when it is determined that the robot is not located at the origin (coordinates), the robot needs to be repositioned, and the repositioning process can be performed once when the robot is turned on.
在对机器人进行重定位处理的过程中,本公开实施例基于预设第一深度规则对所述栅格地图进行降采样,生成第一多分辨率栅格地图,这里的降采样指的是降低栅格地图的分辨率。In the process of relocating the robot, the embodiment of the present disclosure performs down-sampling on the raster map based on a preset first depth rule to generate a first multi-resolution raster map, where down-sampling refers to reducing The resolution of the raster map.
对于第一多分辨率栅格地图,可以包括第一最低分辨率栅格地图、第一中间分辨率栅格地图以及第一最高分辨率栅格地图,对于第一最高分辨率栅格地图,即上述当前区域对应的栅格地图。For the first multi-resolution raster map, it may include the first lowest resolution raster map, the first intermediate resolution raster map, and the first highest resolution raster map. For the first highest resolution raster map, that is The grid map corresponding to the above current area.
需要说明的是,对于第一中间分辨率栅格地图,包括至少一张第一中间分辨率栅格地图,由不同分辨率的栅格地图可以组成深度为D1的第一多分辨率栅格地图。It should be noted that the first intermediate resolution raster map includes at least one first intermediate resolution raster map, and raster maps of different resolutions can form a first multi-resolution raster map with a depth of D1 .
在某些实施方案中,对于当前区域对应的栅格地图,假设该栅格地图分辨率为1000*1000,基于预设第一深度规则对所述栅格地图进行降采样,可以生成分辨率为1000*1000、500*500、250*250的第一多分辨率栅格地图;In some embodiments, for the raster map corresponding to the current area, assuming that the raster map resolution is 1000*1000, the raster map is down-sampled based on the preset first depth rule, and the resolution can be generated as The first multi-resolution raster map of 1000*1000, 500*500, 250*250;
其中,第一最低分辨率栅格地图包括:分辨率为250*250的栅格地图,第一中间分辨率栅格地图包括:分辨率为500*500的栅格地图,第一最高分辨率栅格地图包括:分辨率为1000*1000的栅格地图,由不同分辨率的栅格地图可以组成深度为D1(即3)的第一多分辨率栅格地图。Among them, the first lowest resolution raster map includes: a raster map with a resolution of 250*250, the first intermediate resolution raster map includes: a raster map with a resolution of 500*500, and the first highest resolution raster map The grid map includes: a grid map with a resolution of 1000*1000. The grid maps of different resolutions can form the first multi-resolution grid map with a depth of D1 (that is, 3).
在某些实施方案中,对于当前区域对应的栅格地图,假设该栅格地图分辨率为10000*10000,基于预设第一深度规则对所述栅格地图进行降采样,可以生成分辨率为10000*10000、5000*5000、2500*2500、1250*1250、625*625的栅格地图;In some embodiments, for the raster map corresponding to the current area, assuming that the raster map resolution is 10000*10000, the raster map is down-sampled based on the preset first depth rule, and the resolution can be generated as 10000*10000, 5000*5000, 2500*2500, 1250*1250, 625*625 grid map;
其中,第一最低分辨率栅格地图包括:分辨率为625*625的栅格地图,第一中间分辨率栅格地图包括:分辨率为5000*5000、2500*2500、1250*1250的栅格地图,第一最高分辨率栅格地图包括:分辨率为10000*10000的栅格地图,由不同分辨率的栅格地图可以组成深度为D1(即5)的第一多分辨率栅格地图。Among them, the first lowest resolution raster map includes: a raster map with a resolution of 625*625, and the first intermediate resolution raster map includes: a raster with a resolution of 5000*5000, 2500*2500, 1250*1250 For maps, the first highest resolution raster map includes: a raster map with a resolution of 10000*10000. The raster maps of different resolutions can form the first multi-resolution raster map with a depth of D1 (that is, 5).
需要说明的是,基于预设第一深度规则对所述栅格地图进行降采样,生成第一多分辨率栅格地图,具体可以参考该当前区域对应的栅格地图的 分辨率,如果该栅格地图的分辨率较高,可以基于预设第一深度规则对所述栅格地图进行较多层次的降采样,生成第一多分辨率栅格地图(如上述对分辨率为10000*10000的栅格地图的处理过程),如果该栅格地图的分辨率较低,可以基于预设第一深度规则对所述栅格地图进行较少层次的降采样,生成第一多分辨率栅格地图(如上述对分辨率为1000*1000的栅格地图的处理过程)。It should be noted that the raster map is down-sampled based on the preset first depth rule to generate the first multi-resolution raster map. For details, please refer to the resolution of the raster map corresponding to the current area. The resolution of the grid map is relatively high, and the grid map can be down-sampled in more levels based on the preset first depth rule to generate the first multi-resolution grid map (for example, the above-mentioned resolution of 10000*10000 Processing process of raster map), if the resolution of the raster map is low, the raster map can be down-sampled at a lower level based on the preset first depth rule to generate the first multi-resolution raster map (Such as the above processing process for the raster map with a resolution of 1000*1000).
在某些实施方案中,对于第一多分辨率栅格地图,包括多个不同分辨率的栅格地图,对第一多分辨率栅格地图进行迭代搜索,确定机器人在栅格地图中的第一位置。In some embodiments, for the first multi-resolution raster map, including multiple raster maps of different resolutions, an iterative search is performed on the first multi-resolution raster map to determine the robot's position in the raster map. One location.
其中,对第一多分辨率栅格地图进行由粗到精的迭代搜索,可以确定机器人在栅格地图中的第一位置。其中,该第一位置包括X轴坐标、Y轴坐标以及角度偏移。Among them, the iterative search from coarse to fine on the first multi-resolution grid map can determine the first position of the robot in the grid map. Wherein, the first position includes X-axis coordinates, Y-axis coordinates, and angular offset.
对于角度偏移,可以理解为相对于机器人预设方向的角度偏移量。例如,假设机器人初始方向(即预设方向)为正北,后续机器人在移动过程中,机器人方向为正南,则此时机器人的角度偏移为180度。The angular offset can be understood as the angular offset relative to the preset direction of the robot. For example, suppose that the initial direction of the robot (ie, the preset direction) is true north, and the robot direction is true south during the subsequent movement of the robot, and the angle offset of the robot at this time is 180 degrees.
对于机器人在栅格地图中的第一位置,可以理解为机器人相对于原点的位置,可以输出该第一位置,至此机器人重定位完成。For the first position of the robot in the grid map, it can be understood as the position of the robot relative to the origin, and the first position can be output. So far, the relocation of the robot is completed.
对于机器人在栅格地图中的第一位置,可以在下次定位计算时作为AMCL中权重最高的粒子进行滤波计算,至此实现技术链的回环。For the first position of the robot in the grid map, it can be used as the particle with the highest weight in the AMCL to perform filter calculation in the next positioning calculation, so that the loop of the technology chain is realized.
通过上述对本公开实施例提供的技术方案的描述,在确定机器人未位于原点的情况下,获取当前区域对应的栅格地图,基于预设第一深度规则对栅格地图进行降采样,生成第一多分辨率栅格地图,对第一多分辨率栅格地图进行迭代搜索,确定机器人在栅格地图中的第一位置,确定第一位置为机器人相对于原点的位置并进行输出。如此通过预设第一深度规则对栅格地图进行降采样,生成第一多分辨率栅格地图,对第一多分辨率栅格地图进行迭代搜索,确定机器人在栅格地图中的第一位置,可以快速完成重定位,当存在重复场景时避免出现重定位错误的情况。Based on the above description of the technical solutions provided by the embodiments of the present disclosure, when it is determined that the robot is not located at the origin, the grid map corresponding to the current area is obtained, and the grid map is down-sampled based on the preset first depth rule to generate the first Multi-resolution raster map, iterative search is performed on the first multi-resolution raster map, the first position of the robot in the raster map is determined, and the first position is determined as the position of the robot relative to the origin and output. In this way, the raster map is down-sampled by the preset first depth rule to generate the first multi-resolution raster map, and the first multi-resolution raster map is iteratively searched to determine the first position of the robot in the raster map , You can quickly complete the relocation, and avoid relocation errors when there are repeated scenes.
如图2所示,为本公开实施例提供的另一机器人重定位方法的实施流程示意图,该方法可以包括以下步骤:As shown in FIG. 2, it is a schematic diagram of the implementation process of another robot relocation method provided by an embodiment of the present disclosure. The method may include the following steps:
S201,在确定机器人未位于原点的情况下,获取当前区域对应的栅格 地图;S201, in a case where it is determined that the robot is not located at the origin, obtain a grid map corresponding to the current area;
S202,基于预设第一深度规则对所述栅格地图进行降采样,生成第一多分辨率栅格地图;S202: Down-sampling the raster map based on a preset first depth rule to generate a first multi-resolution raster map;
S203,基于分辨率确定所述第一多分辨率栅格地图的第一迭代搜索顺序,其中,所述迭代顺序包括由低分辨率向高分辨率迭代搜索;S203: Determine a first iterative search order of the first multi-resolution raster map based on the resolution, where the iterative order includes an iterative search from low resolution to high resolution;
S204,基于所述第一迭代搜索顺序,对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置;以及S204: Perform an iterative search on the first multi-resolution grid map based on the first iterative search order, and determine the first position of the robot in the grid map; and
S205,确定所述第一位置为所述机器人相对于所述原点的位置并进行输出。S205: Determine that the first position is the position of the robot relative to the origin and output.
在本公开实施例中,步骤S201与上述步骤S101类似,本公开实施例对此不作限定。In the embodiment of the present disclosure, step S201 is similar to the foregoing step S101, which is not limited in the embodiment of the present disclosure.
在本公开实施例中,步骤S202与上述步骤S102类似,本公开实施例对此不作限定。In the embodiment of the present disclosure, step S202 is similar to the foregoing step S102, which is not limited in the embodiment of the present disclosure.
对于第一多分辨率栅格地图,可以包括第一最低分辨率栅格地图、第一中间分辨率栅格地图以及第一最高分辨率栅格地图,由于分辨率的不同,可以基于分辨率确定第一多分辨率栅格地图的第一迭代搜索顺序,其中,第一迭代顺序包括由低分辨率向高分辨率迭代搜索。For the first multi-resolution raster map, it may include the first lowest resolution raster map, the first intermediate resolution raster map, and the first highest resolution raster map. Due to the difference in resolution, it can be determined based on the resolution The first iterative search order of the first multi-resolution raster map, where the first iterative order includes an iterative search from low resolution to high resolution.
在某些实施方案中,对于第一多分辨率栅格地图,可以包括第一最低分辨率栅格地图、第一中间分辨率栅格地图以及第一最高分辨率栅格地图,第一最低分辨率栅格地图包括:分辨率为250*250的栅格地图,第一中间分辨率栅格地图包括:分辨率为500*500的栅格地图,第一最高分辨率栅格地图包括:分辨率为1000*1000的栅格地图,基于分辨率确定第一多分辨率栅格地图的第一迭代搜索顺序,如下表1所示。In some embodiments, the first multi-resolution raster map may include the first lowest resolution raster map, the first intermediate resolution raster map, and the first highest resolution raster map, the first lowest resolution raster map The rate raster map includes: a raster map with a resolution of 250*250, the first intermediate resolution raster map includes: a raster map with a resolution of 500*500, and the first highest resolution raster map includes: resolution For a 1000*1000 raster map, the first iterative search order of the first multi-resolution raster map is determined based on the resolution, as shown in Table 1 below.
表1Table 1
第一迭代搜索顺序First iteration search order 不同分辨率的栅格地图Raster maps of different resolutions
11 分辨率为250*250的栅格地图Raster map with a resolution of 250*250
22 分辨率为500*500的栅格地图Raster map with a resolution of 500*500
33 分辨率为1000*1000的栅格地图Raster map with a resolution of 1000*1000
基于上述第一迭代搜索顺序,对第一多分辨率栅格地图进行由粗到精的迭代搜索,可以确定机器人在栅格地图中的第一位置,如下所示,如此可以快速完成对机器人的重定位:Based on the above-mentioned first iterative search sequence, the first multi-resolution raster map is searched from coarse to fine, and the first position of the robot in the raster map can be determined, as shown below, so that the robot can be quickly completed reset:
首先,在第一最低分辨率栅格地图中预设第一搜索框区域内(可以避免环境中中存在多个相似场景,如果没有相似场景,可以进行真正意义上的全局搜索)进行搜索,确定机器人在第一最低分辨率栅格地图中最优位置,将该最优位置作为下次在第一中间分辨率栅格地图中预设第一搜索框区域内进行搜索的初始位置;First of all, in the first lowest resolution raster map preset the first search box area (to avoid multiple similar scenes in the environment, if there are no similar scenes, you can perform a real global search) to search, confirm The optimal position of the robot in the first lowest resolution grid map, and the optimal position as the initial position for searching in the first search box area preset in the first intermediate resolution grid map next time;
其次,以机器人在第一最低分辨率栅格地图中最优位置为初始位置,在第一中间分辨率栅格地图中预设第一搜索框区域内进行搜索,确定机器人在第一中间分辨率栅格地图中最优位置,将该最优位置作为下次在第一最高分辨率栅格地图中预设第一搜索框区域内进行搜索的初始位置;Secondly, taking the optimal position of the robot in the first lowest resolution grid map as the initial position, search in the first search box area preset in the first intermediate resolution grid map to determine the robot at the first intermediate resolution The optimal position in the raster map, using the optimal position as the initial position for searching in the first search box area preset in the first highest resolution raster map next time;
再者,以机器人在第一中间分辨率栅格地图中最优位置为初始位置,在第一最高分辨率栅格地图中预设第一搜索框区域内进行搜索,确定机器人在第一最高分辨率栅格地图(即上述当前区域对应的栅格地图)中的第一位置。Furthermore, taking the optimal position of the robot in the first intermediate resolution grid map as the initial position, search in the first search box area preset in the first highest resolution grid map to determine that the robot is at the first highest resolution The first position in the rate grid map (that is, the grid map corresponding to the above-mentioned current area).
需要说明的是,每次搜索都可以计算当前激光点云与当前分辨率栅格地图的匹配得分,其中选择第一搜索框区域内最大的匹配得分且匹配得分score大于score_th(预设阈值)所对应的位置为最优位置,匹配得分的一种计算方式如下所示:It should be noted that each search can calculate the matching score between the current laser point cloud and the current resolution raster map, where the largest matching score in the first search box area is selected and the matching score score is greater than score_th (preset threshold). The corresponding position is the optimal position. One way to calculate the matching score is as follows:
Figure PCTCN2021100284-appb-000001
Figure PCTCN2021100284-appb-000001
其中,N表示为激光点云包含的点的数量,α表示为权重参数,通常根据激光点云的距离计算得到,cell(x)函数表示在当前分辨率栅格地图中取出租表为x的值,T(x)表示将点x变换到指定坐标系下,i表示第i个激光点的坐标。需要说明的是,上述表述中i,x均为二维坐标。Among them, N represents the number of points contained in the laser point cloud, α represents the weight parameter, which is usually calculated according to the distance of the laser point cloud, and the cell(x) function represents the rental table of x in the current resolution raster map The value, T(x) represents the transformation of point x to the specified coordinate system, and i represents the coordinates of the i-th laser point. It should be noted that in the above expression, i and x are both two-dimensional coordinates.
在某些实施方案中,为了减少计算量,进一步加速搜索,在本公开实施例中,基于先验信息,可以确定机器人在所述栅格地图中的搜索区域,从而基于所述第一迭代搜索顺序,在所述第一多分辨率栅格地图中的所述搜索区域进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置。In some embodiments, in order to reduce the amount of calculation and further accelerate the search, in the embodiment of the present disclosure, based on a priori information, the search area of the robot in the grid map can be determined, so as to search based on the first iteration. In order, an iterative search is performed in the search area in the first multi-resolution grid map to determine the first position of the robot in the grid map.
在某些实施方案中,对于栅格地图,可以划分为A、B、C、D四个区 域,如图3所示,基于先验信息,可以确定机器人在栅格地图的A区域中,从而可以基于第一迭代搜索顺序,首先在第一最低分辨率栅格地图的A区域中进行搜索,然后在第一中间分辨率栅格地图的A区域中进行搜索,最后在第一最高分辨率栅格地图的A区域中进行搜索,以此确定机器人在栅格地图中的第一位置。如此预先确定了机器人的大概范围,可以进一步加速搜索,进一步加快完成对机器人的重定位。In some embodiments, the grid map can be divided into four areas A, B, C, and D. As shown in Figure 3, based on the prior information, it can be determined that the robot is in the area A of the grid map, thus Based on the first iterative search order, first search in area A of the first lowest resolution raster map, then search in area A of the first intermediate resolution raster map, and finally search in the first highest resolution raster map. Search in area A of the grid map to determine the first position of the robot in the grid map. Such a pre-determined approximate range of the robot can further accelerate the search and further speed up the completion of the relocation of the robot.
对于机器人在栅格地图中的第一位置,本公开实施例为了提高重定位的精度,可以对该第一位置进行优化,即利用预设第一目标优化算法对所述第一位置进行优化,得到第一目标位置,确定所述第一目标位置为所述机器人相对于所述原点的位置并进行输出。其中,该第一目标位置均包括X轴坐标、Y轴坐标以及角度偏移。For the first position of the robot in the grid map, in order to improve the accuracy of relocation, the embodiments of the present disclosure may optimize the first position, that is, optimize the first position by using a preset first target optimization algorithm. The first target position is obtained, and the first target position is determined to be the position of the robot relative to the origin and output. Wherein, the first target position includes X-axis coordinates, Y-axis coordinates, and angular offset.
需要说明的是,本公开实施例在第一最高分辨率栅格地图(即上述当前区域对应的栅格地图)完成对第一位置的优化,其中,第一目标优化算法如下所示。It should be noted that the embodiment of the present disclosure completes the optimization of the first position on the first highest resolution raster map (ie, the raster map corresponding to the current area described above), where the first target optimization algorithm is as follows.
ξ *=arg min ξ[1-cell(S i(ξ))] 2ξ * =arg min ξ [1-cell(S i (ξ))] 2 ;
其中:in:
Figure PCTCN2021100284-appb-000002
Figure PCTCN2021100284-appb-000002
表示在当前姿态(即位置)下的状态转移函数,其中ξ表示旋转和平移的组合,即(p x,p y,ψ)。优化过程中,计算导数时使用双线性插值或三线性插值计算任意一点的栅格的概率值。 Represents the state transition function in the current posture (ie position), where ξ represents the combination of rotation and translation, namely (p x , p y , ψ). In the optimization process, bilinear interpolation or trilinear interpolation is used to calculate the probability value of the grid at any point when calculating the derivative.
对于机器人在栅格地图中的第一位置,经过优化之后,直接使用优化的结果作为最后的重定位结果并进行输出,可以在下次定位计算时作为AMCL中权重最高的粒子进行滤波计算,实现技术链的回环。For the first position of the robot in the grid map, after optimization, the optimized result is directly used as the final relocation result and output, which can be used as the highest weighted particle in AMCL to perform filtering calculation during the next positioning calculation to realize the technology The loop of the chain.
如图4所示,为本公开实施例提供的机器人定位方法的实施流程示意图,该方法可以包括以下步骤:As shown in FIG. 4, it is a schematic diagram of the implementation process of the robot positioning method provided by the embodiments of the present disclosure. The method may include the following steps:
S401,在对所述机器人进行重定位完毕的情况下,或者,在确定所述机器人位于原点的情况下,获取AMCL方法输出的初始位置;S401, when the relocation of the robot is completed, or when it is determined that the robot is located at the origin, obtain the initial position output by the AMCL method;
S402,基于预设第二深度规则对所述栅格地图进行降采样,生成第二多分辨率栅格地图;S402, down-sampling the raster map based on a preset second depth rule to generate a second multi-resolution raster map;
S403,基于所述初始位置对所述第二多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第二位置;以及S403: Perform an iterative search on the second multi-resolution grid map based on the initial position, and determine the second position of the robot in the grid map; and
S404,确定所述第二位置为所述机器人相对于所述原点的位置并进行输出。S404: Determine that the second position is the position of the robot relative to the origin and output.
在本公开实施例中,如果机器人位于原点,则可以对机器人进行后续的定位处理,即可以获取AMCL方法输出的初始位置,对AMCL方法输出的结果进行矫正优化,可以提高定位精度;In the embodiments of the present disclosure, if the robot is at the origin, subsequent positioning processing can be performed on the robot, that is, the initial position output by the AMCL method can be obtained, and the result output by the AMCL method can be corrected and optimized, which can improve the positioning accuracy;
或者,or,
在对机器人进行重定位完毕的情况下,也可以对机器人进行后续的定位处理,即可以获取AMCL方法输出的初始位置,对AMCL方法输出的结果进行矫正优化,可以提高定位精度。After the relocation of the robot is completed, subsequent positioning processing can also be performed on the robot, that is, the initial position output by the AMCL method can be obtained, and the results output by the AMCL method can be corrected and optimized, which can improve the positioning accuracy.
在对AMCL方法输出的结果进行矫正优化的过程中,可以基于预设第二深度规则对所述栅格地图进行降采样,生成第二多分辨率栅格地图。In the process of rectifying and optimizing the output result of the AMCL method, the raster map may be down-sampled based on a preset second depth rule to generate a second multi-resolution raster map.
对于第二多分辨率栅格地图,可以包括第二最低分辨率栅格地图、第二中间分辨率栅格地图以及第二最高分辨率栅格地图,对于第二最高分辨率栅格地图,即上述当前区域对应的栅格地图。For the second multi-resolution raster map, it may include the second lowest resolution raster map, the second intermediate resolution raster map, and the second highest resolution raster map. For the second highest resolution raster map, that is The grid map corresponding to the above current area.
对于基于预设第二深度规则对所述栅格地图进行降采样,生成第二多分辨率栅格地图的过程,具体可以参考上述重定位过程中基于预设第一深度规则对所述栅格地图进行降采样,生成第一多分辨率栅格地图的过程,本公开实施例在此不再一一赘述。For the process of down-sampling the raster map based on the preset second depth rule to generate the second multi-resolution raster map, refer to the above-mentioned relocation process based on the preset first depth rule for the process of generating the second multi-resolution raster map. The process of down-sampling the map to generate the first multi-resolution raster map is not repeated here in the embodiments of the present disclosure.
需要说明的是,对于第二中间分辨率栅格地图,包括至少一张第二中间分辨率栅格地图,由不同分辨率的栅格地图可以组成深度为D2的第二多分辨率栅格地图,对于D2,不大于上述重定位过程中的D1。It should be noted that the second intermediate-resolution raster map includes at least one second intermediate-resolution raster map, and a second multi-resolution raster map with a depth of D2 can be composed of raster maps of different resolutions. , For D2, it is not greater than D1 in the above relocation process.
对于第二多分辨率栅格地图,可以包括第二最低分辨率栅格地图、第二中间分辨率栅格地图以及第二最高分辨率栅格地图,由于分辨率的不同,可以基于分辨率确定第二多分辨率栅格地图的第二迭代搜索顺序,其中,第二迭代顺序包括由低分辨率向高分辨率迭代搜索。For the second multi-resolution raster map, it may include the second lowest resolution raster map, the second intermediate resolution raster map, and the second highest resolution raster map. Due to the difference in resolution, it can be determined based on the resolution The second iterative search order of the second multi-resolution raster map, where the second iterative order includes an iterative search from low resolution to high resolution.
在某些实施方案中,对于第二多分辨率栅格地图,可以包括第二最低分辨率栅格地图、第二中间分辨率栅格地图以及第二最高分辨率栅格地图,第二最低分辨率栅格地图包括:分辨率为250*250的栅格地图,第二中间 分辨率栅格地图包括:分辨率为500*500的栅格地图,第二最高分辨率栅格地图包括:分辨率为1000*1000的栅格地图,基于分辨率确定第二多分辨率栅格地图的第二迭代搜索顺序,如下表2所示。In some embodiments, the second multi-resolution raster map may include the second lowest resolution raster map, the second intermediate resolution raster map, and the second highest resolution raster map, the second lowest resolution raster map The rate raster map includes: a raster map with a resolution of 250*250, the second intermediate resolution raster map includes: a raster map with a resolution of 500*500, and the second highest resolution raster map includes: resolution For a 1000*1000 raster map, the second iterative search order of the second multi-resolution raster map is determined based on the resolution, as shown in Table 2 below.
表2Table 2
第二迭代搜索顺序Second iteration search order 不同分辨率栅格地图Raster maps of different resolutions
11 分辨率为250*250的栅格地图Raster map with a resolution of 250*250
22 分辨率为500*500的栅格地图Raster map with a resolution of 500*500
33 分辨率为1000*1000的栅格地图Raster map with a resolution of 1000*1000
基于所述初始位置以及所述第二迭代搜索顺序,对所述第二多分辨率栅格地图进行由粗到精的迭代搜索,确定所述机器人在所述栅格地图中的第二位置,如下所示,可以快速完成对机器人的定位;Based on the initial position and the second iterative search order, perform an iterative search from coarse to fine on the second multi-resolution grid map to determine the second position of the robot in the grid map, As shown below, you can quickly complete the positioning of the robot;
其中,基于该初始位置可以确定机器人在所述栅格地图中的搜索区域,从而基于所述第二迭代搜索顺序,在所述第二多分辨率栅格地图中的所述搜索区域进行迭代搜索,确定所述机器人在所述栅格地图中的第二位置,具体处理流程可以参考上述步骤S204,本公开实施例在此不再一一赘述。Wherein, the search area of the robot in the grid map can be determined based on the initial position, so that based on the second iterative search order, iterative search is performed on the search area in the second multi-resolution grid map , To determine the second position of the robot in the grid map, the specific processing flow can refer to the above step S204, the embodiment of the present disclosure will not be repeated here.
需要说明的是,根据AMCL方法输出的初始位置,可以大致确定机器人在所述栅格地图中的搜索区域,为了降低计算量,本公开实施例定位处理与上述重定位处理的差异体现在搜索框的大小不同,以及多分辨率栅格地图的深度不同。It should be noted that according to the initial position output by the AMCL method, the search area of the robot in the grid map can be roughly determined. In order to reduce the amount of calculation, the difference between the positioning process in the embodiment of the present disclosure and the above-mentioned relocation process is reflected in the search box The size is different, and the depth of the multi-resolution raster map is different.
对于机器人在栅格地图中的第二位置,本公开实施例为了提高定位精度,可以对该第二位置进行优化,即利用预设第二目标优化函数对所述第二位置进行优化,得到第二目标位置,确定所述第二目标位置为所述机器人相对于所述原点的位置并进行输出。其中,所述第二位置以及所述第二目标位置均包括X轴坐标、Y轴坐标以及角度偏移。For the second position of the robot in the grid map, in order to improve the positioning accuracy, the embodiment of the present disclosure may optimize the second position, that is, optimize the second position by using the preset second objective optimization function to obtain the first position. Two target positions, determining that the second target position is the position of the robot relative to the origin and outputting it. Wherein, the second position and the second target position both include X-axis coordinates, Y-axis coordinates, and angular offset.
需要说明的是,本公开实施例在第二最高分辨率栅格地图(即上述当前区域对应的栅格地图)完成对第二位置的优化,其中,第二目标优化算法如下所示。It should be noted that the embodiment of the present disclosure completes the optimization of the second location on the second highest resolution raster map (ie, the raster map corresponding to the current area described above), where the second target optimization algorithm is as follows.
ξ *=arg min ξ[α(1-cell(S i(ξ)))+β(ξ *-ξ)] 2ξ * =arg min ξ [α(1-cell(S i (ξ)))+β(ξ * -ξ)] 2 ;
其中,α和β为两个残差的权重参数,其他参数可以参考上述第一目标优化算法。Among them, α and β are the weight parameters of the two residuals, and other parameters can refer to the above-mentioned first objective optimization algorithm.
对于机器人在栅格地图中的第二位置,经过优化之后,直接使用优化的结果作为最后的定位结果并进行输出,可以在下次定位计算时作为AMCL中权重最高的粒子插入到粒子群中进行滤波计算,实现技术链的回环。For the second position of the robot in the grid map, after optimization, the optimized result is directly used as the final positioning result and output, which can be inserted into the particle swarm as the particle with the highest weight in the AMCL during the next positioning calculation. Calculate to realize the loop of the technology chain.
本公开实施例还提供了机器人重定位装置,如图5所示,该装置可以包括:地图获取模块510、地图降采样模块520、位置确定模块530、位置输出模块540,其中The embodiment of the present disclosure also provides a robot relocation device. As shown in FIG. 5, the device may include: a map acquisition module 510, a map down-sampling module 520, a position determination module 530, and a position output module 540.
地图获取模块510,配置为在确定机器人未位于原点的情况下,获取当前区域对应的栅格地图;The map obtaining module 510 is configured to obtain a grid map corresponding to the current area when it is determined that the robot is not located at the origin;
地图降采样模块520,配置为基于预设第一深度规则对所述栅格地图进行降采样,生成第一多分辨率栅格地图;The map down-sampling module 520 is configured to down-sample the raster map based on a preset first depth rule to generate a first multi-resolution raster map;
位置确定模块530,配置为对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置;A position determining module 530, configured to perform an iterative search on the first multi-resolution grid map, and determine the first position of the robot in the grid map;
位置输出模块540,配置为确定所述第一位置为所述机器人相对于所述原点的位置并进行输出。The position output module 540 is configured to determine and output the first position as the position of the robot relative to the origin.
本公开实施例还提供了电子设备,如图6所示,包括处理器61、通信接口62、存储器63和通信总线64,其中,处理器61,通信接口62,存储器63通过通信总线64完成相互间的通信,The embodiment of the present disclosure also provides an electronic device, as shown in FIG. 6, including a processor 61, a communication interface 62, a memory 63, and a communication bus 64. Among them, the processor 61, the communication interface 62, and the memory 63 complete each other through the communication bus 64. Inter-communication,
存储器63,配置为存放计算机程序;The memory 63 is configured to store computer programs;
处理器61,配置为执行存储器63上所存放的程序时,实现如下步骤:When the processor 61 is configured to execute the program stored in the memory 63, the following steps are implemented:
在确定机器人未位于原点的情况下,获取当前区域对应的栅格地图;基于预设第一深度规则对所述栅格地图进行降采样,生成第一多分辨率栅格地图;对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置;以及确定所述第一位置为所述机器人相对于所述原点的位置并进行输出。When it is determined that the robot is not located at the origin, obtain the grid map corresponding to the current area; down-sample the grid map based on the preset first depth rule to generate a first multi-resolution grid map; An iterative search is performed on a multi-resolution grid map to determine the first position of the robot in the grid map; and the first position is determined to be the position of the robot relative to the origin and output.
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,简称EISA)总线等。该通信总线可以分为地 址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。The communication bus mentioned in the above electronic device may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The communication bus can be divided into address bus, data bus, control bus and so on. For ease of representation, only one thick line is used to indicate in the figure, but it does not mean that there is only one bus or one type of bus.
通信接口用于上述电子设备与其他设备之间的通信。The communication interface is used for communication between the above-mentioned electronic device and other devices.
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。The memory may include random access memory (Random Access Memory, RAM for short), and may also include non-volatile memory (non-volatile memory), such as at least one disk memory. Optionally, the memory may also be at least one storage device located far away from the foregoing processor.
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。The aforementioned processor may be a general-purpose processor, including a central processing unit (Central Processing Unit, CPU for short), a network processor (Network Processor, NP), etc.; it may also be a digital signal processor (Digital Signal Processing, DSP for short) , Application Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components.
本公开还提供了存储介质,该存储介质中存储有指令,当其在计算机上运行时,使得计算机执行本公开所述的机器人重定位方法。The present disclosure also provides a storage medium in which instructions are stored, which when run on a computer, cause the computer to execute the robot relocation method described in the present disclosure.
本公开还提供了包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本公开所述的机器人重定位方法。The present disclosure also provides a computer program product containing instructions, which when run on a computer, causes the computer to execute the robot relocation method described in the present disclosure.
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本公开实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在存储介质中,或者从一个存储介质向另一个存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。In the foregoing embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented by software, it can be implemented in the form of a computer program product in whole or in part. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on the computer, the processes or functions described in the embodiments of the present disclosure are generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a storage medium, or transmitted from one storage medium to another storage medium. For example, the computer instructions can be transmitted from a website, computer, server, or data center through a wired (such as coaxial cable, optical fiber) , Digital Subscriber Line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) to transmit to another website, computer, server or data center. The storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or data center integrated with one or more available media. The usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, and a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk (SSD)).
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。It should be noted that in this article, relational terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply one of these entities or operations. There is any such actual relationship or order between. Moreover, the terms "including", "including" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device that includes a series of elements includes not only those elements, but also those that are not explicitly listed Other elements of, or also include elements inherent to this process, method, article or equipment. If there are no more restrictions, the element defined by the sentence "including a..." does not exclude the existence of other identical elements in the process, method, article, or equipment that includes the element.
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。The various embodiments in this specification are described in a related manner, and the same or similar parts between the various embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, as for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and for related parts, please refer to the part of the description of the method embodiment.
以上所述仅为本公开的部分实施例而已,并非用于限定本公开的保护范围。凡在本公开的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本公开的保护范围内。The foregoing descriptions are only part of the embodiments of the present disclosure, and are not used to limit the protection scope of the present disclosure. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present disclosure are all included in the protection scope of the present disclosure.

Claims (10)

  1. 机器人重定位方法,其包括:The robot relocation method includes:
    在确定机器人未位于原点的情况下,获取当前区域对应的栅格地图;When it is determined that the robot is not located at the origin, obtain the grid map corresponding to the current area;
    基于预设第一深度规则对所述栅格地图进行降采样,生成第一多分辨率栅格地图;Down-sampling the raster map based on a preset first depth rule to generate a first multi-resolution raster map;
    对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置;以及Performing an iterative search on the first multi-resolution grid map to determine the first position of the robot in the grid map; and
    确定所述第一位置为所述机器人相对于所述原点的位置并进行输出。The first position is determined to be the position of the robot relative to the origin and output.
  2. 如权利要求1所述的方法,其中,所述对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置,包括:The method of claim 1, wherein the iterative search on the first multi-resolution grid map to determine the first position of the robot in the grid map comprises:
    基于分辨率确定所述第一多分辨率栅格地图的第一迭代搜索顺序,其中,所述迭代顺序包括由低分辨率向高分辨率迭代搜索;以及Determining a first iterative search order of the first multi-resolution raster map based on the resolution, wherein the iterative order includes an iterative search from low resolution to high resolution; and
    基于所述第一迭代搜索顺序,对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置。Based on the first iterative search order, an iterative search is performed on the first multi-resolution grid map to determine the first position of the robot in the grid map.
  3. 如权利要求2所述的方法,其中,所述基于所述第一迭代搜索顺序,对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置,包括:The method of claim 2, wherein the iterative search is performed on the first multi-resolution raster map based on the first iterative search order to determine the robot's first position in the raster map One location, including:
    确定所述机器人在所述栅格地图中的搜索区域;以及Determining the search area of the robot in the grid map; and
    基于所述第一迭代搜索顺序,在所述第一多分辨率栅格地图中的所述搜索区域进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置。Based on the first iterative search sequence, an iterative search is performed on the search area in the first multi-resolution grid map to determine the first position of the robot in the grid map.
  4. 如权利要求1至3中任一权利要求所述的方法,其中,所述确定所述第一位置为所述机器人相对于所述原点的位置并进行输出,包括:The method according to any one of claims 1 to 3, wherein the determining and outputting the first position as the position of the robot relative to the origin includes:
    利用预设第一目标优化算法对所述第一位置进行优化,得到第一目标位置;以及Optimizing the first position by using a preset first target optimization algorithm to obtain the first target position; and
    确定所述第一目标位置为所述机器人相对于所述原点的位置并进行输出;Determining that the first target position is the position of the robot relative to the origin and outputting;
    其中,所述第一位置以及所述第一目标位置均包括X轴坐标、Y轴坐 标以及角度偏移。Wherein, the first position and the first target position both include X-axis coordinates, Y-axis coordinates, and angular offset.
  5. 如权利要求1至4任一权利要求所述的方法,其中,所述方法还包括:The method according to any one of claims 1 to 4, wherein the method further comprises:
    在对所述机器人进行重定位完毕的情况下,或者,在确定所述机器人位于原点的情况下,获取AMCL方法输出的初始位置;In the case where the relocation of the robot is completed, or in the case where it is determined that the robot is located at the origin, obtaining the initial position output by the AMCL method;
    基于预设第二深度规则对所述栅格地图进行降采样,生成第二多分辨率栅格地图;Down-sampling the raster map based on a preset second depth rule to generate a second multi-resolution raster map;
    基于所述初始位置对所述第二多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第二位置;以及Performing an iterative search on the second multi-resolution grid map based on the initial position to determine the second position of the robot in the grid map; and
    确定所述第二位置为所述机器人相对于所述原点的位置并进行输出。The second position is determined to be the position of the robot relative to the origin and output.
  6. 如权利要求5所述的方法,其中,所述基于所述初始位置对所述第二多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第二位置,包括:The method of claim 5, wherein the iterative search on the second multi-resolution grid map based on the initial position to determine the second position of the robot in the grid map comprises :
    基于分辨率确定所述第二多分辨率栅格地图的第二迭代搜索顺序,其中,所述第二迭代搜索顺序包括由低分辨率向高分辨率迭代搜索;以及Determining a second iterative search order of the second multi-resolution raster map based on the resolution, wherein the second iterative search order includes an iterative search from low resolution to high resolution; and
    基于所述初始位置及所述第二迭代搜索顺序,对所述第二多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第二位置。Based on the initial position and the second iterative search order, an iterative search is performed on the second multi-resolution grid map to determine the second position of the robot in the grid map.
  7. 如权利要求5或6所述的方法,其中,所述确定所述第二位置为所述机器人相对于所述原点的位置并进行输出,包括:The method according to claim 5 or 6, wherein the determining the second position as the position of the robot relative to the origin and outputting it comprises:
    利用预设第二目标优化函数对所述第二位置进行优化,得到第二目标位置;以及Optimizing the second position by using a preset second target optimization function to obtain the second target position; and
    确定所述第二目标位置为所述机器人相对于所述原点的位置并进行输出;Determining that the second target position is the position of the robot relative to the origin and outputting;
    其中,所述第二位置以及所述第二目标位置均包括X轴坐标、Y轴坐标以及角度偏移。Wherein, the second position and the second target position both include X-axis coordinates, Y-axis coordinates, and angular offset.
  8. 机器人重定位装置,其包括:The robot relocation device includes:
    地图获取模块,配置为在确定机器人未位于原点的情况下,获取当前区域对应的栅格地图;The map acquisition module is configured to acquire the grid map corresponding to the current area when it is determined that the robot is not located at the origin;
    地图降采样模块,配置为基于预设第一深度规则对所述栅格地图进行降采样,生成第一多分辨率栅格地图;The map down-sampling module is configured to down-sample the raster map based on a preset first depth rule to generate a first multi-resolution raster map;
    位置确定模块,配置为对所述第一多分辨率栅格地图进行迭代搜索,确定所述机器人在所述栅格地图中的第一位置;以及A position determining module configured to perform an iterative search on the first multi-resolution grid map to determine the first position of the robot in the grid map; and
    位置输出模块,配置为确定所述第一位置为所述机器人相对于所述原点的位置并进行输出。The position output module is configured to determine and output the first position as the position of the robot relative to the origin.
  9. 电子设备,其包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信;An electronic device, which includes a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory complete mutual communication through the communication bus;
    所述存储器,配置为存放计算机程序;以及The memory is configured to store computer programs; and
    所述处理器,配置为执行存储器上所存放的程序时,实现权利要求1至7中任一权利要求所述的方法。The processor is configured to implement the method described in any one of claims 1 to 7 when the processor is configured to execute the program stored in the memory.
  10. 存储介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现权利要求1至7中任一权利要求所述的方法。A storage medium having a computer program stored thereon, wherein the program is executed by a processor to implement the method according to any one of claims 1 to 7.
PCT/CN2021/100284 2020-06-18 2021-06-16 Robot repositioning method and apparatus, electronic device, and storage medium WO2021254369A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010561916.X 2020-06-18
CN202010561916.XA CN111765884B (en) 2020-06-18 2020-06-18 Robot repositioning method, apparatus, electronic device and storage medium

Publications (1)

Publication Number Publication Date
WO2021254369A1 true WO2021254369A1 (en) 2021-12-23

Family

ID=72721036

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/100284 WO2021254369A1 (en) 2020-06-18 2021-06-16 Robot repositioning method and apparatus, electronic device, and storage medium

Country Status (2)

Country Link
CN (1) CN111765884B (en)
WO (1) WO2021254369A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116817903A (en) * 2023-08-24 2023-09-29 湖南大学 Priori vision guidance-based intelligent robot global positioning method and system
CN117739993A (en) * 2024-02-19 2024-03-22 福勤智能科技(昆山)有限公司 Robot positioning method and device, robot and storage medium
CN117739993B (en) * 2024-02-19 2024-04-30 福勤智能科技(昆山)有限公司 Robot positioning method and device, robot and storage medium

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111765884B (en) * 2020-06-18 2023-06-23 京东科技信息技术有限公司 Robot repositioning method, apparatus, electronic device and storage medium
CN114443264B (en) * 2020-11-05 2023-06-09 珠海一微半导体股份有限公司 Laser repositioning system and chip based on hardware acceleration
CN112904367B (en) * 2021-03-19 2023-03-14 北京小狗吸尘器集团股份有限公司 Position scoring method and device applied to relocation of sweeper and electronic equipment
CN113129379A (en) * 2021-06-17 2021-07-16 同方威视技术股份有限公司 Global relocation method and device for automatic mobile equipment
CN113551677A (en) * 2021-08-16 2021-10-26 河南牧原智能科技有限公司 Method for relocating a robot and related product
CN114485662B (en) * 2021-12-28 2024-03-08 深圳优地科技有限公司 Robot repositioning method, device, robot and storage medium
CN117031481A (en) * 2023-08-14 2023-11-10 北京数字绿土科技股份有限公司 Mobile robot repositioning method and system based on projection 3D laser point cloud

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8594860B2 (en) * 2010-11-01 2013-11-26 Samsung Electronics Co., Ltd. Apparatus and method with mobile relocation
CN107831765A (en) * 2017-10-23 2018-03-23 广州视源电子科技股份有限公司 Localization method, device, equipment and storage medium
CN107991683A (en) * 2017-11-08 2018-05-04 华中科技大学 A kind of robot autonomous localization method based on laser radar
CN109978925A (en) * 2017-12-27 2019-07-05 深圳市优必选科技有限公司 A kind of recognition methods of robot pose and its robot
CN110515382A (en) * 2019-08-28 2019-11-29 锐捷网络股份有限公司 A kind of smart machine and its localization method
CN111765884A (en) * 2020-06-18 2020-10-13 北京海益同展信息科技有限公司 Robot repositioning method and device, electronic equipment and storage medium
CN112179330A (en) * 2020-09-14 2021-01-05 浙江大华技术股份有限公司 Pose determination method and device of mobile equipment
CN112362059A (en) * 2019-10-23 2021-02-12 北京京东乾石科技有限公司 Method, apparatus, computer device and medium for positioning mobile carrier

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6559535B2 (en) * 2015-10-22 2019-08-14 株式会社東芝 Obstacle map generation device, method thereof, and program thereof
CN106940704B (en) * 2016-11-25 2019-12-20 北京儒博科技有限公司 Positioning method and device based on grid map
CN108319655B (en) * 2017-12-29 2021-05-07 百度在线网络技术(北京)有限公司 Method and device for generating grid map
CN110007670B (en) * 2019-02-14 2021-11-23 四川阿泰因机器人智能装备有限公司 Mobile robot positioning and mapping method
CN110132284B (en) * 2019-05-30 2022-12-09 东北大学 Global positioning method based on depth information
CN110319832A (en) * 2019-07-05 2019-10-11 北京海益同展信息科技有限公司 Robot localization method, apparatus, electronic equipment and medium
CN110686676A (en) * 2019-09-12 2020-01-14 深圳市银星智能科技股份有限公司 Robot repositioning method and device and robot

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8594860B2 (en) * 2010-11-01 2013-11-26 Samsung Electronics Co., Ltd. Apparatus and method with mobile relocation
CN107831765A (en) * 2017-10-23 2018-03-23 广州视源电子科技股份有限公司 Localization method, device, equipment and storage medium
CN107991683A (en) * 2017-11-08 2018-05-04 华中科技大学 A kind of robot autonomous localization method based on laser radar
CN109978925A (en) * 2017-12-27 2019-07-05 深圳市优必选科技有限公司 A kind of recognition methods of robot pose and its robot
CN110515382A (en) * 2019-08-28 2019-11-29 锐捷网络股份有限公司 A kind of smart machine and its localization method
CN112362059A (en) * 2019-10-23 2021-02-12 北京京东乾石科技有限公司 Method, apparatus, computer device and medium for positioning mobile carrier
CN111765884A (en) * 2020-06-18 2020-10-13 北京海益同展信息科技有限公司 Robot repositioning method and device, electronic equipment and storage medium
CN112179330A (en) * 2020-09-14 2021-01-05 浙江大华技术股份有限公司 Pose determination method and device of mobile equipment

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116817903A (en) * 2023-08-24 2023-09-29 湖南大学 Priori vision guidance-based intelligent robot global positioning method and system
CN116817903B (en) * 2023-08-24 2023-11-21 湖南大学 Priori vision guidance-based intelligent robot global positioning method and system
CN117739993A (en) * 2024-02-19 2024-03-22 福勤智能科技(昆山)有限公司 Robot positioning method and device, robot and storage medium
CN117739993B (en) * 2024-02-19 2024-04-30 福勤智能科技(昆山)有限公司 Robot positioning method and device, robot and storage medium

Also Published As

Publication number Publication date
CN111765884B (en) 2023-06-23
CN111765884A (en) 2020-10-13

Similar Documents

Publication Publication Date Title
WO2021254369A1 (en) Robot repositioning method and apparatus, electronic device, and storage medium
CN110307838B (en) Robot repositioning method and device, computer-readable storage medium and robot
CN110561423B (en) Pose transformation method, robot and storage medium
CN111257909B (en) Multi-2D laser radar fusion mapping and positioning method and system
JP2020532734A (en) Methods and systems to use when performing localization
JP2019145085A (en) Method, device, and computer-readable medium for adjusting point cloud data acquisition trajectory
CN113251919A (en) Coordinate transformation-based cylinder point cloud data fitting method and device
JP2024509690A (en) Method and apparatus for constructing three-dimensional maps
CN112987724A (en) Path optimization method and device, robot and storage medium
JP2021121970A (en) Obstacle detection method, device, facility, storage medium, and program
CN116559928B (en) Pose information determining method, device and equipment of laser radar and storage medium
CN112880562A (en) Method and system for measuring pose error of tail end of mechanical arm
CN108520543B (en) Method, equipment and storage medium for optimizing relative precision map
CN111400830A (en) Machining and calibrating method and device for three-dimensional blank workpiece
CN111813984B (en) Method and device for realizing indoor positioning by using homography matrix and electronic equipment
WO2022062355A1 (en) Fusion positioning method and apparatus
CN112085759A (en) Straight line fitting method and device based on big data
WO2023124233A1 (en) Circle searching method and apparatus, electronic device and storage medium
US9852542B1 (en) Methods and apparatus related to georeferenced pose of 3D models
CN110940994A (en) Positioning initialization method and system thereof
CN115453549A (en) Method for extracting environment right-angle point coordinate angle based on two-dimensional laser radar
CN113015117B (en) User positioning method and device, electronic equipment and storage medium
CN116934851A (en) Robot positioning method, device, equipment and storage medium
CN114998755A (en) Method and device for matching landmarks in remote sensing image
Wang et al. Graphics-assisted cutter orientation correction for collision-free five-axis machining

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21826959

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21826959

Country of ref document: EP

Kind code of ref document: A1