Robot repositioning method, nonvolatile readable storage medium and robot

Through the combination of semantic maps and point cloud matching, the robot can quickly and accurately determine the initial position, solving the problem of low relocation efficiency in the prior art and improving the success rate and efficiency of relocation.

CN119104058APending Publication Date: 2024-12-10SHENZHEN SILVER STAR INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310627815.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-05-30
Publication Date
2024-12-10

AI Technical Summary

Technical Problem

Existing robots are inefficient in relocation, prone to relocation failure, and take time.

Method used

By obtaining the environment picture and a preset semantic map, the environmental object is extracted. If the object is semantic matched, the robot's initial pose will be determined, and the repositioning and matching operation will be performed according to the initial pose. The point cloud matching degree and preset threshold will be used to generate the repositioning. Detect information and adjust the target search range to improve the relocation success rate.

Benefits of technology

It effectively narrows the search range of relocation, improves relocation efficiency, reduces relocation failure caused by robots' random movement, and improves the success rate of relocation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119104058A_ABST
    Figure CN119104058A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of robots, and discloses a robot repositioning method, a nonvolatile readable storage medium and a robot. The method comprises the steps that an environment picture collected by a robot and a preset semantic map are obtained, the semantic map comprises position information of a reference object and object semantics marking the reference object, the environment object is extracted from the environment picture, and if the object semantics of the environment object is matched with the object semantics of the reference object, the reference object is identified. If yes, determining the initial pose of the robot according to the position information of the reference object, and executing relocation matching operation according to the initial pose of the robot. According to the embodiment, the initial pose of the robot can be quickly derived based on the semantic map, so that the search range can be narrowed in the relocation matching operation, the pose of the robot can be quickly determined, the situation that relocation fails easily due to random movement of the robot is avoided, and then the relocation efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of robots, and in particular to a robot repositioning method, a non-volatile readable storage medium and a robot. Background Art

[0002] When the existing robot is not clear about its position on the map, it needs to perform a relocalization operation. During the relocalization process, the robot takes the initial position as the starting point and moves randomly to determine the position of the robot. This method is prone to relocalization failure, is time-consuming, and has low relocalization efficiency. Summary of the invention

[0003] An object of an embodiment of the present invention is to provide a robot repositioning method, aiming to solve the technical problem of low repositioning efficiency in related technologies.

[0004] In a first aspect, an embodiment of the present invention provides a robot repositioning method, comprising:

[0005] Acquire an environment picture collected by the robot and a preset semantic map, wherein the semantic map includes position information of a reference object and object semantics marking the reference object;

[0006] Extracting environmental objects from the environmental image;

[0007] If the object semantics of the environmental object matches the object semantics of the reference object, determining the initial position and posture of the robot according to the position information of the reference object;

[0008] A relocation matching operation is performed according to the initial position and posture of the robot.

[0009] Optionally, performing a relocation matching operation according to the initial posture of the robot includes:

[0010] Determining a target search range according to an initial position of the robot, wherein the target search range includes at least one target position;

[0011] According to the target search range, controlling the robot to sequentially collect at least two frames of target laser data at each target position;

[0012] Calculate the point cloud matching degree according to at least two frames of target laser data;

[0013] Relocation detection information is generated according to the point cloud matching degree and a preset matching threshold.

[0014] Optionally, the repositioning detection information includes repositioning success information, and generating the repositioning detection information according to the point cloud matching degree and a preset matching threshold includes: if the point cloud matching degree is greater than the preset matching threshold, generating repositioning success information.

[0015] Optionally, the method further comprises:

[0016] If the point cloud matching degrees of all the target positions are less than a preset matching threshold, the target search range is expanded;

[0017] The robot is controlled to perform a relocation matching operation in the expanded target search range.

[0018] Optionally, determining a target search range according to an initial posture of the robot includes:

[0019] Acquire initial laser data collected by the robot based on the initial posture;

[0020] Determine a plurality of candidate regions according to the initial laser data;

[0021] Determining a target search direction according to the plurality of candidate areas;

[0022] The target search range is determined according to the target search direction, the initial position and the preset search area.

[0023] Optionally, determining a plurality of candidate areas according to the initial laser data comprises:

[0024] Generate a point cloud image according to the initial laser data, wherein the point cloud image is configured with a coordinate system, wherein the initial posture includes an initial position, and the origin of the coordinate system is the initial position;

[0025] Each quadrant area divided by the coordinate system is determined on the point cloud image, and the quadrant area is a candidate area.

[0026] Optionally, determining the target search direction according to the multiple candidate areas includes:

[0027] Calculating the semantic quantity of each candidate region containing the reference object;

[0028] Determining, according to each of the semantic quantities, a candidate region satisfying a semantic screening condition from among the plurality of candidate regions as a target region;

[0029] A target search direction is determined according to the target area.

[0030] Optionally, determining a candidate region satisfying a semantic screening condition as a target region from among the multiple candidate regions according to the respective semantic quantities includes: selecting a candidate region having a maximum semantic quantity from among the multiple candidate regions as a target region according to the respective semantic quantities.

[0031] In a second aspect, an embodiment of the present invention provides a non-volatile readable storage medium storing computer executable instructions, wherein the computer executable instructions are used to enable a robot to execute the above-mentioned robot repositioning method.

[0032] In a third aspect, an embodiment of the present invention provides a robot, comprising:

[0033] at least one processor; and,

[0034] a memory communicatively connected to the at least one processor; wherein,

[0035] The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can perform the above-mentioned robot repositioning method.

[0036] In the robot relocation method provided by the embodiment of the present invention, first, the embodiment obtains the environment picture collected by the robot and the preset semantic map, and the semantic map includes the position information of the reference object and the object semantics of the reference object, which is conducive to establishing the connection between the position information of the reference object and the initial position and posture of the robot based on the semantic map. Secondly, the embodiment extracts the environment object on the environment picture. If the object semantics of the environment object matches the object semantics of the reference object, the initial position and posture of the robot is determined according to the position information of the reference object. Therefore, the embodiment can effectively derive the initial position and posture of the robot based on the semantic map. Finally, the embodiment performs the relocation matching operation according to the initial position and posture of the robot. Since the embodiment can quickly derive the initial position and posture of the robot based on the semantic map, it is conducive to narrowing the search range in the relocation matching operation so as to quickly determine the position and posture of the robot, avoid the situation that the robot moves arbitrarily and easily fails to relocate, and thus improve the relocation efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] One or more embodiments are exemplarily described by pictures in the corresponding drawings, and these exemplified descriptions do not constitute limitations on the embodiments. Elements with the same reference numerals in the drawings represent similar elements, and unless otherwise stated, the figures in the drawings do not constitute proportional limitations.

[0038] Figure 1 A schematic flow chart of a robot repositioning method provided by an embodiment of the present invention;

[0039] Figure 2 A schematic diagram of a robot performing scanning and matching based on a target search range provided by an embodiment of the present invention;

[0040] Figure 3A schematic diagram of a robot provided in an embodiment of the present invention collecting laser data and converting the laser data into a coordinate system;

[0041] Figure 4 A schematic diagram of an application scenario provided by an embodiment of the present invention;

[0042] Figure 5 A schematic structural diagram of a robot repositioning device provided by an embodiment of the present invention;

[0043] Figure 6 A schematic diagram of the circuit structure of a robot provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0044] In order to make the purpose, technical scheme and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.

[0045] It should be noted that, if there is no conflict, the various features in the embodiments of the present invention can be combined with each other, all within the scope of protection of the present invention. In addition, although the functional modules are divided in the device schematic diagram and the logical order is shown in the flow chart, in some cases, the steps shown or described can be performed in a different order from the module division in the device or the flow chart. Furthermore, the words "first", "second", "third", etc. used in the present invention do not limit the data and execution order, but only distinguish the same items or similar items with basically the same functions and effects.

[0046] The embodiment of the present invention provides a robot repositioning method. Figure 1 , the robot repositioning method includes the following steps:

[0047] S11: Obtaining an environment image collected by the robot and a preset semantic map, where the semantic map includes location information of a reference object and object semantics of a marked reference object.

[0048] In this step, the environment image is obtained by collecting the surrounding environment by the robot control sensor component, wherein the sensor component includes a camera and / or a laser radar.

[0049] A semantic map is a map that has semantics and corresponds to the target space.

[0050] In some embodiments, obtaining a preset semantic map includes: when a relocation command is detected, calling a preset semantic map locally on the robot.

[0051] In some embodiments, obtaining a preset semantic map includes: when a relocation command is detected, sending a map request to a server, so that the server sends the preset semantic map to the robot according to the map request.

[0052] In some embodiments, detecting a relocation command includes: generating a relocation command when detecting that the robot leaves the ground. In some embodiments, detecting a relocation command includes: generating a relocation command when detecting that the robot is dragged and walking. In some embodiments, detecting a relocation command includes: generating a relocation command when detecting a restart command. In some embodiments, detecting a relocation command includes: generating a relocation command when detecting a sleep wake-up command.

[0053] The target space can be the space corresponding to the whole house or the space corresponding to a local area, and the local area includes the guest room, bedroom, kitchen, etc.

[0054] This embodiment controls the robot to walk in the target space to collect environmental data, generates a map according to the environmental data and a preset map construction algorithm, detects the map according to the object detection algorithm, obtains the object semantics of each object contained in the map, determines the reference object among the objects, updates the map according to the object semantics of the reference object, and obtains a semantic map.

[0055] The reference object is an object that appears in the target space. In some embodiments, the reference object is an object that is moved in the target space less than a preset frequency threshold, and the preset frequency threshold is 1 time / month, 1 time / 3 months, 1 time / half year, 2 times / half year, or never moved. For example, a long sofa in the living room is an object that is not easy to move, and the long sofa can be used as a reference object. A wall can also be used as a reference object. Stools or chairs that are easy to move are not convenient to use as reference objects.

[0056] The position information of the reference object is the position information of the reference object in the target space, wherein the position information of the reference object can be marked in the semantic map. The robot uses the object semantics of the reference object as an index and traverses the semantic map to obtain the position information of the reference object.

[0057] S12: Extract environmental objects from the environmental image.

[0058] In this step, the environmental object is an object detected in the environmental image. In this embodiment, the environmental image is detected according to a preset object detection algorithm to obtain the environmental object, wherein the preset object detection algorithm includes a traditional image processing algorithm or a neural network algorithm, and the neural network algorithm includes a YOLO series algorithm, R-CNN, Fast-RCNN, etc.

[0059] S13: If the object semantics of the environmental object matches the object semantics of the reference object, the initial position and posture of the robot is determined according to the position information of the reference object.

[0060] In this step, this embodiment obtains a semantic library of the semantic map, which includes the object semantics of at least one reference object. The semantic library is traversed according to the object semantics of the environmental object to determine whether the object semantics of the environmental object matches the object semantics of the reference object. If they match, the location information of the reference object is extracted. If they do not match, the object semantics of another reference object is selected, and the process returns to the step of determining whether the object semantics of the environmental object matches the object semantics of the reference object.

[0061] The initial posture of the robot is the current posture of the robot in the target space. When the object semantics of the environmental object matches the object semantics of the reference object, it means that the robot is in front of the reference object. Since the position information of the reference object has been determined, this embodiment can solve the initial posture of the robot based on the position information of the reference object using the posture estimation algorithm. However, the initial posture at this time is not accurate enough and a relocation matching operation is required.

[0062] S14: Perform a relocation matching operation according to the initial posture of the robot.

[0063] In this step, the repositioning matching operation is an operation to accurately determine the position and posture of the robot.

[0064] In this embodiment, since the semantic map includes the position information of the reference object and the object semantics of the marked reference object, this is conducive to establishing the connection between the position information of the reference object and the initial posture of the robot based on the semantic map. This embodiment can effectively derive the initial posture of the robot based on the semantic map, which is conducive to narrowing the search range in the repositioning matching operation so as to quickly determine the posture of the robot, avoid the robot's random movement and prone to repositioning failure, thereby improving the repositioning efficiency.

[0065] In some embodiments, performing a relocation matching operation according to the initial posture of the robot includes the following steps:

[0066] S141: Determine a target search range according to the initial position of the robot, where the target search range includes at least one target position.

[0067] S142: According to the target search range, the robot is controlled to sequentially collect at least two frames of target laser data at each target position.

[0068] S143: Calculate the point cloud matching degree according to at least two frames of target laser data.

[0069] S144: Generate relocation detection information according to the point cloud matching degree and a preset matching threshold.

[0070] In S141, the target search range is a search range for the robot to perform a relocation matching operation. The target position is a position located in the target search range. Figure 2 The initial posture includes an initial position and an initial orientation. The target search range 20 is a search range including the initial position of the robot 21. The target search range 20 is rectangular, with a length of 3 grids and a width of 2 grids. The position of each grid is the target position.

[0071] In S142, the target laser data is the laser data collected by the robot at the target position, wherein the robot moves to each target position in sequence, and at each target position controls the laser radar to collect each frame of target laser data within a specified angle range according to a preset angle resolution.

[0072] In S143, the point cloud matching degree is used to indicate the degree of overlap between at least two frames of target laser data acquired by the robot at the target position and the obstacle. The higher the point cloud matching degree and the higher the degree of overlap, the more accurate the estimated pose at the target position. Similarly, the lower the point cloud matching degree and the lower the degree of overlap, the less accurate the estimated pose at the target position.

[0073] Calculating the point cloud matching degree based on at least two frames of target laser data includes: calculating the matching score of each frame of target laser data based on each frame of target laser data and a preset point cloud matching algorithm, calculating the total score and the number of frames of the matching scores of at least two frames of target laser data, and calculating the quotient of the total score and the number of frames to obtain the point cloud matching degree.

[0074] In S144, the relocation detection information includes relocation success information or relocation failure information, where the relocation success information is information indicating that the final position of the robot can be re-determined, and the relocation failure information is information indicating that the final position of the robot cannot be re-determined. The preset matching threshold is customized by the designer according to business requirements, such as the preset matching threshold is 0.8 or 0.9.

[0075] Generating relocation detection information according to the point cloud matching degree and the preset matching threshold includes: if the point cloud matching degree is greater than the preset matching threshold, generating relocation success information. If the point cloud matching degree is less than the preset matching threshold, selecting another target position, controlling the robot to sequentially collect at least two frames of target laser data at the new target position, and generating relocation failure information if all target positions in the target search range have been traversed.

[0076] Please combine Figure 2, the robot moves to grid 1, and controls the laser radar on grid 1 to collect each frame of target laser data at a preset angle resolution of 5 degrees between 0 degrees and 180 degrees, and collects a total of 36 frames of target laser data. The robot calculates the matching score of each frame of target laser data, and then adds the matching scores of the 36 frames of target laser data to obtain the total score p1 of grid 1. Then, the robot divides the total score p1 by the number of frames 36 to obtain the point cloud matching degree k1.

[0077] Since the point cloud matching degree k1 is less than the preset matching threshold, the robot continues to move to grid 2, and calculates the point cloud matching degree k2 of grid 2 according to the above method. If the point cloud matching degree k2 is less than the preset matching threshold, the robot continues to move to grid 3, and so on. If the point cloud matching degrees of all target positions are less than the preset matching threshold, a relocation failure message is generated.

[0078] In some embodiments, the robot relocation method further includes the following steps: if the point cloud matching degree of all target positions is less than a preset matching threshold, the target search range is expanded, and the robot is controlled to perform a relocation matching operation in the expanded target search range. For example, refer to Figure 3 , this embodiment is based on Figure 2 The target search range shown is set to 6 grids in length and 4 grids in width, thereby expanding the target search range, thereby increasing the success rate of relocation.

[0079] When all areas of the target space have been traversed and the point cloud matching degree of the target positions in all areas is less than the preset matching threshold, a relocalization failure message is generated and the robot is notified to rebuild the map.

[0080] In some embodiments, determining the target search range according to the initial posture of the robot includes:

[0081] S1411: Acquire initial laser data collected by the robot based on the initial posture.

[0082] S1412: Determine multiple candidate areas based on the initial laser data.

[0083] S1413: Determine a target search direction based on multiple candidate areas.

[0084] S1414: Determine the target search range according to the target search direction, initial position and preset search area.

[0085] In S1411, the initial laser data is laser data collected by the robot based on the initial posture. Acquiring the initial laser data collected by the robot based on the initial posture includes: controlling the robot to collect a frame of laser data based on the initial posture, and the frame of laser data is the initial laser data.

[0086] In S1412, the candidate area is an area determined based on the initial laser data. In some embodiments, multiple candidate areas are determined based on the initial laser data: a point cloud image is generated based on the initial laser data, and the point cloud image is divided into multiple candidate areas based on a preset division method. The preset division method includes a two-grid method, a three-grid method, a four-grid method, a nine-grid method, or a triangle method.

[0087] In some embodiments, determining multiple candidate areas based on the initial laser data includes: generating a point cloud map based on the initial laser data, the point cloud map is configured with a coordinate system, wherein the initial pose includes an initial position, the origin of the coordinate system is the initial position, and each quadrant area divided by the coordinate system is determined on the point cloud map, and the quadrant area is the candidate area.

[0088] It can be understood that the coordinate system can be a two-dimensional coordinate system or a three-dimensional coordinate system.

[0089] It can be understood that the positive direction of the X-axis of the coordinate system is the direction that forms a preset angle with the robot in front of the initial position, wherein the positive direction of the X-axis and the positive direction of the Y-axis satisfy the right-hand rule. The preset angle can be customized by the designer based on engineering experience. When the preset angle is 0 degrees, the positive direction of the X-axis of the coordinate system is in front of the robot in the initial position.

[0090] The initial laser data includes multiple laser points. Generating a point cloud map based on the initial laser data includes: converting each laser point to a coordinate system with the initial position of the robot as the origin to obtain a point cloud map. Each quadrant area includes a first quadrant area, a second quadrant area, a third quadrant area and a fourth quadrant area. Determining each quadrant area divided by the coordinate system on the point cloud map includes: determining the first quadrant area, the second quadrant area, the third quadrant area and the fourth quadrant area according to the origin of the coordinate system, the positive direction of the X-axis and the positive direction of the Y-axis.

[0091] See also Figure 3 The robot converts each laser point to a coordinate system with the current position of the robot as the origin to obtain a point cloud image 30, wherein the origin 31 of the coordinate system of the point cloud image 30 is the initial position of the robot, the X-axis is a straight line 32, the positive direction of the X-axis is from left to right, and the Y-axis is a straight line 33, the positive direction of the Y-axis is from bottom to top.

[0092] In S1413, the target search direction is the direction of a straight line passing through the initial position and forming a specified angle with the specified coordinate axis. The specified coordinate axis may be the positive X axis, the positive Y axis, or the positive Z axis, and the specified angle may be 45 degrees, 30 degrees, -45 degrees, -30 degrees, etc.

[0093] In S1414, the preset search area is customized by the designer according to business requirements. For example, when the map is a grid map, the preset search area is an area of ​​length 3*width 2.

[0094] As mentioned above, the robot needs to collect at least one frame of target laser data at each target position in sequence according to the target search range. When the target search direction has been determined, and the initial posture and preset search area have been obtained in advance, then the present embodiment can directionally determine the target search range. This can avoid the robot from moving arbitrarily to perform repositioning and matching operations, which is beneficial to improving the success probability and efficiency of repositioning.

[0095] In some embodiments, determining a target search direction according to a plurality of candidate areas includes:

[0096] S14131: Calculate the semantic quantity of reference objects contained in each candidate region.

[0097] S14132: Determine, according to the number of semantics, a candidate region that satisfies a semantic screening condition from among the multiple candidate regions as a target region.

[0098] S14133: Determine the target search direction according to the target area.

[0099] In S14131, since each reference object has a corresponding object semantics, this embodiment may use the semantic quantity to represent the number of reference objects located on the candidate area.

[0100] See also Figure 4 , the first quadrant area is candidate area 41, the second quadrant area is candidate area 42, the third quadrant area is candidate area 43, and the fourth quadrant area is candidate area 44. Among them, the number of reference objects located on candidate area 41 is 0, that is, the semantic number is 0. The reference objects located on candidate area 42 are refrigerator 45, and the semantic number is 1. The objects located on candidate area 43 are television 46 and flower pot 47, but the flower pot is not a reference object, so the semantic number of candidate area 43 is 1. The objects located on candidate area 44 are elliptical machine 48, bookshelf 49, sofa 410, trash can 411 and chair 412, among which elliptical machine 48, bookshelf 49 and sofa 410 are all reference objects, trash can 411 and chair 412 are not reference objects, so the semantic number of candidate area 44 is 3.

[0101] In S14132, the semantic screening condition is a condition for screening out a target area from a plurality of candidate areas. In some embodiments, determining a candidate area satisfying the semantic screening condition as a target area from a plurality of candidate areas according to each semantic quantity includes: determining a candidate area having a semantic quantity greater than a preset quantity threshold as a reference area, and selecting a reference area from at least one reference area as the target area.

[0102] In some embodiments, determining a candidate region satisfying a semantic screening condition as a target region from among multiple candidate regions according to the respective semantic quantities includes: selecting a candidate region with a maximum semantic quantity from among the multiple candidate regions as the target region according to the respective semantic quantities.

[0103] Usually, when the laser point of the LiDAR hits an object, the object will reflect the laser point back. The distribution of the reflected laser points in the point cloud can characterize the characteristics of the object's outline. In the absence of obstacles, the more object feature points, the more conducive to successful relocation. The more object semantics a candidate area contains, the more object feature points it contains, and the more conducive to successful relocation. Please combine Figure 4 , the semantic quantity of candidate region 44 is the largest among candidate regions 41 to 44, therefore, candidate region 44 is the target region.

[0104] In S14133, each candidate area is pre-configured with a corresponding search direction in the coordinate system, and determining the target search direction according to the target area includes: selecting the search direction corresponding to the target area as the target search direction. In some embodiments, the search direction of the candidate area corresponding to the first quadrant area is a 45-degree direction, the search direction of the candidate area corresponding to the second quadrant area is a 135-degree direction, the search direction of the candidate area corresponding to the third quadrant area is a -135-degree direction, and the search direction of the candidate area corresponding to the fourth quadrant area is a -45-degree direction. Since candidate area 44 is the fourth quadrant area, the target search direction is a -45-degree direction.

[0105] This embodiment can select the candidate area containing the most object feature points as the target area, and then use the search direction of the target area as the target search direction, and then determine the target search range according to the target search direction, which can improve the robot's repositioning success probability and efficiency in the repositioning matching operation.

[0106] It should be noted that, in each of the above-mentioned embodiments, there is not necessarily a certain order between the above-mentioned steps. A person skilled in the art can understand, based on the description of the embodiments of the present invention, that in different embodiments, the above-mentioned steps may have different execution orders, that is, they may be executed in parallel, may be executed interchangeably, and so on.

[0107] As another aspect of the embodiments of the present invention, the embodiments of the present invention provide a robot repositioning device, wherein the robot repositioning device may be a software module, the software module includes a plurality of instructions, which are stored in a memory, and the processor may access the memory, call the instructions for execution, so as to complete the robot repositioning method described in each of the above embodiments.

[0108] In some embodiments, the robot's repositioning device can also be constructed by hardware devices. For example, the robot's repositioning device can be constructed by one or more chips, and each chip can work in coordination with each other to complete the robot's repositioning method described in each of the above embodiments. For another example, the robot's repositioning device can also be constructed by various logic devices, such as a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), a single-chip microcomputer, an ARM (Acorn RISC Machine) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination of these components.

[0109] See also Figure 5 The robot repositioning device 500 includes an image acquisition module 51, an object extraction module 52, a posture determination module 53 and a repositioning module 54.

[0110] The image acquisition module 51 is used to obtain the environment image collected by the robot and the preset semantic map, which includes the position information of the reference object and the object semantics of the reference object. The object extraction module 52 is used to extract the environment object on the environment image. The posture determination module 53 is used to determine the initial posture of the robot according to the position information of the reference object if the object semantics of the environment object matches the object semantics of the reference object. The repositioning module 54 is used to perform a repositioning matching operation according to the initial posture of the robot.

[0111] In this embodiment, since the semantic map includes the position information of the reference object and the object semantics of the marked reference object, this is conducive to establishing the connection between the position information of the reference object and the initial posture of the robot based on the semantic map. This embodiment can effectively derive the initial posture of the robot based on the semantic map, which is conducive to narrowing the search range in the repositioning matching operation so as to quickly determine the posture of the robot, avoid the robot's random movement and prone to repositioning failure, thereby improving the repositioning efficiency.

[0112] In some embodiments, the repositioning module 54 is specifically used to: determine a target search range according to the initial posture of the robot, the target search range includes at least one target position, and according to the target search range, control the robot to collect at least two frames of target laser data at each target position in sequence, calculate the point cloud matching degree according to the at least two frames of target laser data, and generate repositioning detection information according to the point cloud matching degree and a preset matching threshold.

[0113] In some embodiments, the repositioning detection information includes repositioning success information, and the repositioning module 54 is further specifically configured to generate repositioning success information if the point cloud matching degree is greater than a preset matching threshold.

[0114] In some embodiments, the robot's repositioning device 500 also includes a range expansion module 55, which is used to expand the target search range if the point cloud matching degrees of all target positions are less than a preset matching threshold, and control the robot to perform a repositioning matching operation in the expanded target search range.

[0115] In some embodiments, the repositioning module 54 is also specifically used to: obtain initial laser data collected by the robot based on the initial posture, determine multiple candidate areas based on the initial laser data, determine the target search direction based on the multiple candidate areas, and determine the target search range based on the target search direction, the initial posture and the preset search area.

[0116] In some embodiments, the repositioning module 54 is also specifically used to: generate a point cloud map based on the initial laser data, the point cloud map is configured with a coordinate system, wherein the initial pose includes an initial position, the origin of the coordinate system is the initial position, and each quadrant area divided by the coordinate system is determined on the point cloud map, and the quadrant area is a candidate area.

[0117] In some embodiments, the relocalization module 54 is further specifically used to: calculate the semantic quantity of reference objects contained in each candidate area, determine the candidate area that meets the semantic screening conditions as the target area among multiple candidate areas according to the respective semantic quantities, and determine the target search direction according to the target area.

[0118] In some embodiments, the relocation module 54 is further specifically configured to: select a candidate region with a maximum number of semantics from among the multiple candidate regions as the target region according to the number of semantics.

[0119] It should be noted that the above-mentioned robot repositioning device can execute the robot repositioning method provided in the embodiment of the present invention, and has the functional modules and beneficial effects corresponding to the execution method. For technical details not fully described in the embodiment of the robot repositioning device, please refer to the robot repositioning method provided in the embodiment of the present invention.

[0120] See also Figure 6 , Figure 6 Schematic diagram of a circuit structure of a robot provided by an embodiment of the present invention. Figure 6 As shown, the robot 600 includes one or more processors 61 and a memory 62. Figure 6 A processor 61 is taken as an example.

[0121] The processor 61 and the memory 62 may be connected via a bus or other means. Figure 6 The example of connecting through bus is taken in the following.

[0122] The memory 62 is a non-volatile computer-readable storage medium that can be used to store non-volatile software programs, non-volatile computer executable programs and modules, such as program instructions / modules corresponding to the robot repositioning method in the embodiment of the present invention. The processor 61 executes various functional applications and data processing of the robot repositioning device by running the non-volatile software programs, instructions and modules stored in the memory 62, that is, realizes the robot repositioning method provided by the above method embodiment and the functions of each module or unit of the above device embodiment.

[0123] The memory 62 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other non-volatile solid-state storage devices. In some embodiments, the memory 62 may optionally include a memory remotely arranged relative to the processor 61, and these remote memories may be connected to the processor 61 via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0124] The program instructions / modules are stored in the memory 62, and when executed by the one or more processors 61, the robot repositioning method in any of the above method embodiments is executed.

[0125] An embodiment of the present invention further provides a non-volatile computer storage medium, wherein the non-volatile computer storage medium stores computer executable instructions, and the computer executable instructions are executed by one or more processors, such as Figure 6 A processor 61 in the embodiment may enable the one or more processors to execute the robot repositioning method in any of the above method embodiments.

[0126] In this embodiment, since the semantic map includes the position information of the reference object and the object semantics of the marked reference object, this is conducive to establishing the connection between the position information of the reference object and the initial posture of the robot based on the semantic map. This embodiment can effectively derive the initial posture of the robot based on the semantic map, which is conducive to narrowing the search range in the repositioning matching operation so as to quickly determine the posture of the robot, avoid the robot's random movement and prone to repositioning failure, thereby improving the repositioning efficiency.

[0127] An embodiment of the present invention also provides a computer program product, which includes a computer program stored on a non-volatile computer-readable storage medium, and the computer program includes program instructions. When the program instructions are executed by a robot, the robot executes any one of the robot repositioning methods described.

[0128] The above described device or equipment embodiments are merely illustrative, wherein the unit modules described as separate components may or may not be physically separated, and the components displayed as module units may or may not be physical units, that is, they may be located in one place, or may be distributed on multiple network module units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the present embodiment.

[0129] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a general hardware platform, and of course, by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the relevant technology can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.

[0130] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit them. Under the concept of the present invention, the technical features in the above embodiments or different embodiments may also be combined, the steps may be implemented in any order, and there are many other changes in different aspects of the present invention as described above, which are not provided in detail for the sake of simplicity. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they may still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the scope of the technical solutions of the embodiments of the present invention.

Claims

1. A robot repositioning method, It is characterized in that include: Acquire an environment picture collected by the robot and a preset semantic map, wherein the semantic map includes position information of a reference object and object semantics marking the reference object; Extracting environmental objects from the environmental image; If the object semantics of the environmental object matches the object semantics of the reference object, determining the initial position and posture of the robot according to the position information of the reference object; A relocation matching operation is performed according to the initial position and posture of the robot.

2. The method according to claim 1, It is characterized in that The performing of the repositioning matching operation according to the initial posture of the robot comprises: Determining a target search range according to an initial position of the robot, wherein the target search range includes at least one target position; According to the target search range, controlling the robot to sequentially collect at least two frames of target laser data at each target position; Calculate the point cloud matching degree according to at least two frames of target laser data; Relocation detection information is generated according to the point cloud matching degree and a preset matching threshold.

3. The method according to claim 2, It is characterized in that The repositioning detection information includes repositioning success information, and the generating of the repositioning detection information according to the point cloud matching degree and a preset matching threshold includes: if the point cloud matching degree is greater than the preset matching threshold, generating the repositioning success information.

4. The method according to claim 2, It is characterized in that Also includes: If the point cloud matching degrees of all the target positions are less than a preset matching threshold, the target search range is expanded; The robot is controlled to perform a relocation matching operation in the expanded target search range.

5. The method according to any one of claims 2 to 4, It is characterized in that Determining the target search range according to the initial posture of the robot includes: Acquire initial laser data collected by the robot based on the initial posture; Determine a plurality of candidate regions according to the initial laser data; Determining a target search direction according to the plurality of candidate areas; The target search range is determined according to the target search direction, the initial position and the preset search area.

6. The method according to claim 5, It is characterized in that Determining a plurality of candidate regions according to the initial laser data comprises: Generate a point cloud image according to the initial laser data, wherein the point cloud image is configured with a coordinate system, wherein the initial posture includes an initial position, and the origin of the coordinate system is the initial position; Each quadrant area divided by the coordinate system is determined on the point cloud image, and the quadrant area is a candidate area.

7. The method according to claim 5, It is characterized in that Determining the target search direction according to the plurality of candidate areas comprises: Calculating the semantic quantity of each candidate region containing the reference object; Determining, according to each of the semantic quantities, a candidate region satisfying a semantic screening condition from among the plurality of candidate regions as a target region; A target search direction is determined according to the target area.

8. The method according to claim 7, It is characterized in that Determining a candidate region satisfying a semantic screening condition as a target region from among the plurality of candidate regions according to the respective semantic quantities includes: selecting a candidate region with a maximum semantic quantity from among the plurality of candidate regions as a target region according to the respective semantic quantities.

9. A non-volatile readable storage medium, It is characterized in that Computer executable instructions are stored, and the computer executable instructions are used to enable the robot to execute the robot repositioning method according to any one of claims 1 to 8.

10. A robot, It is characterized in that include: at least one processor; as well as, a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the robot repositioning method according to any one of claims 1 to 8.