Map switching method and device, computer equipment and readable storage medium

By dividing the scene map into small area maps and using the correlation point pair to switch position information, the limitations of traditional map usage methods for the use of super-large-area maps are solved, and fast and seamless map switching and efficient positioning are achieved.

CN119803493APending Publication Date: 2025-04-11SHENZHEN PUDU TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411803348.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-06
Publication Date
2025-04-11

AI Technical Summary

Technical Problem

Traditional map usage methods are limited by the robot hardware level, resulting in limitations in the use of super-large-area maps.

Method used

By dividing the scene map into multiple small area maps, determining the conversion relationship using the associated point pairs is achieved to switch the robot position information, thereby seamlessly switching the area map.

Benefits of technology

It improves the speed and efficiency of map switching, reduces the requirements for robot performance, breaks the limitations of robot use of scene maps, and enhances positioning accuracy and robot reliability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119803493A_ABST
    Figure CN119803493A_ABST
Patent Text Reader

Abstract

The invention relates to a map switching method and device, computer equipment and a readable storage medium. The method comprises the following steps: in response to a map switching trigger event for switching the robot from a first regional map to a second regional map, determining first pose information of the robot in the first regional map; obtaining at least one association point pair between the first regional map and the second regional map, wherein association points in the association point pair belong to the first regional map and the second regional map respectively; determining a conversion relationship between the first regional map and the second regional map based on the at least one association point pair; determining second pose information corresponding to the first pose information in the second regional map based on the conversion relation; and switching the first regional map to the second regional map, and switching the first pose information of the robot to the second pose information. By adopting the method, the limitation of the robot on scene map use can be broken through.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a map switching method, device, computer equipment, computer-readable storage medium and computer program product. Background Art

[0002] Mobile robots are widely used in unmanned driving, indoor navigation, industrial automation and other fields. In order to achieve autonomous navigation and environmental perception, mobile robots complete their own positioning and business needs based on maps. However, traditional map usage methods are often limited by the robot's own hardware level. For maps of very large areas, the robot needs to be equipped with high-performance processors and sensors to load and use them smoothly, resulting in limitations in the use of robots for very large area maps. Summary of the invention

[0003] The embodiments of the present application provide a map switching method, apparatus, computer device, and computer-readable storage medium that are not limited by memory, which can improve the speed of map switching.

[0004] On the one hand, the present application provides a map switching method, comprising:

[0005] In response to a map switching trigger event for the robot to switch from a first area map to a second area map, determining first position information of the robot in the first area map, wherein the first area map and the second area map are obtained by dividing a scene map;

[0006] Acquire at least one association point pair between the first area map and the second area map, wherein the association points in the association point pair belong to the first area map and the second area map respectively;

[0007] Determine a conversion relationship between the first area map and the second area map based on the at least one associated point pair;

[0008] Based on the conversion relationship, determining second posture information corresponding to the first posture information in the second area map;

[0009] The first area map is switched to the second area map, and the first posture information of the robot is switched to the second posture information.

[0010] On the other hand, the present application provides a map switching device, comprising:

[0011] a first pose determination module, configured to determine, in response to a map switching trigger event for switching a robot from a first area map to a second area map, first pose information of the robot in the first area map, wherein the first area map and the second area map are obtained by dividing a scene map;

[0012] an association point determination module, configured to obtain at least one association point pair between the first area map and the second area map, wherein the association points in the association point pair belong to the first area map and the second area map respectively;

[0013] a conversion relationship determination module, configured to determine a conversion relationship between the first area map and the second area map based on the at least one associated point pair;

[0014] A second posture determination module, used to determine second posture information corresponding to the first posture information in the second area map based on the conversion relationship;

[0015] A switching module is used to switch the first area map to the second area map, and to switch the first posture information of the robot to the second posture information.

[0016] On the other hand, the present application further provides a computer device, wherein the computer device comprises a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the map switching method when executing the computer program.

[0017] On the other hand, the present application further provides a computer-readable storage medium having a computer program stored thereon, and the computer program implements the steps of the map switching method when executed by a processor.

[0018] On the other hand, the present application also provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, the steps of the map switching method are implemented.

[0019] In the above-mentioned map switching method, device, computer equipment, computer-readable storage medium and computer program product, the first area map and the second area map are obtained by dividing the scene map. By dividing the scene map into multiple small area maps, the requirements for robot performance are reduced, and the limitations of the robot on the use of scene maps can be broken. In response to the map switching trigger event for the robot to switch from the first area map to the second area map, the first position information of the robot in the first area map is determined to determine the position and orientation of the robot in the first area map. At least one associated point pair between the first area map and the second area map is obtained, and the associated points in the associated point pair belong to the first area map and the second area map respectively. Based on the at least one associated point pair, the conversion relationship between the first area map and the second area map is determined, and the second position information corresponding to the first position information in the second area map is determined based on the conversion relationship, so that when the robot switches from the first area map to the second area map, the first position information of the robot in the first area map is switched to the second position information in the second area map, so that the robot can realize seamless switching of area maps based on the associated point pair, thereby improving the efficiency of map switching of the robot during movement and the accuracy of positioning after switching maps. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0021] Figure 1 A diagram showing an application environment of a map switching method in an embodiment;

[0022] Figure 2 is a flowchart of a map switching method in one embodiment;

[0023] Figure 3 is a schematic diagram of a map switching method in an embodiment;

[0024] Figure 4 is a flowchart of a map switching method in another embodiment;

[0025] Figure 5 is a structural block diagram of a map switching device in an embodiment;

[0026] Figure 6 FIG. 4 is a block diagram of the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION

[0027] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0028] The map switching method provided in the embodiment of the present application can be applied to Figure 1 In the application environment shown. Among them, the robot 102 communicates with the server 104 through the network. The data storage system can store the data that the server 104 needs to process. The data storage system can be integrated on the server 104, or it can be placed on the cloud or other network servers. The server 104 responds to the map switching trigger event for the robot 102 to switch from the first area map to the second area map, and determines the first position information of the robot 102 in the first area map, and the first area map and the second area map are obtained by dividing the scene map. The server 104 obtains at least one associated point pair between the first area map and the second area map, and the associated points in the associated point pair belong to the first area map and the second area map respectively. The server 104 determines the conversion relationship between the first area map and the second area map based on at least one associated point pair. The server 104 determines the second position information corresponding to the first position information in the second area map based on the conversion relationship. The first area map of the robot 102 is switched to the second area map, and the server switches the first position information of the robot 102 to the second position information. Among them, the server 104 can be implemented by an independent server or a server cluster composed of multiple servers, or it can be a cloud server. The robot 102 may be a cleaning robot, a delivery robot, a guiding robot, a vending robot, an inspection robot, a disinfection robot, an unmanned robot, or other intelligent device that can move autonomously.

[0029] In one embodiment, Figure 2 As shown, a map switching method is provided, and the method is applied to a computer device (the computer device may be Figure 1 The robot 102 or server 104 in the example is used as an example to illustrate, and the following steps are included:

[0030] Step 202, in response to a map switching trigger event for the robot to switch from a first area map to a second area map, determine the first position information of the robot in the first area map, where the first area map and the second area map are obtained by dividing the scene map.

[0031] The map switching trigger event refers to an event that triggers map switching. The map switching trigger event can be an event in which the robot moves from one preset area map to another preset area map, or an event in which the robot moves to the overlapping area of ​​two preset area maps, or an event in which a plurality of preset area maps are selected. For example, when the robot currently uses the first area map and the user selects the second area map, the robot switches from the first area map to the second area map.

[0032] The scene map can be any type of map, such as a digital map, a laser map, a two-dimensional map, a three-dimensional map, a global map, a local map, etc., and is not specifically limited here.

[0033] A scene map is set corresponding to the target scene, and multiple preset area maps correspond to multiple different areas of the target scene. The multiple preset area maps correspond to the multiple different areas one by one. The shapes of the multiple different areas can be regular or irregular; the shapes of the corresponding multiple preset area maps can be regular or irregular.

[0034] The target scene refers to any scene in which the robot can move based on the map. The target scene can be a scene in which the robot moves in at least one building, a scene in which the robot is unmanned, etc., but is not limited thereto. The scene map can be a map of at least one building, a road map in an unmanned driving scene, etc., but is not limited thereto.

[0035] The first pose information refers to the pose information corresponding to the current position of the robot in the first area map. The first pose information may include position information and orientation information.

[0036] Specifically, the robot is currently moving in a first area map. When a map switching trigger event occurs that triggers the robot to switch from the first area map to the second area map, the computer device determines the first position information of the robot in the first area map in response to the map switching trigger event.

[0037] In one embodiment, the computer device determines the first position information of the robot in the first area map and the second area map selected by the map selection event in response to the map selection event (map switching trigger event).

[0038] Step 204: obtaining at least one associated point pair between the first area map and the second area map, wherein the associated points in the associated point pair belong to the first area map and the second area map respectively.

[0039] The associated point pair includes two associated points, one associated point in the associated point pair belongs to the first area map, and the other associated point belongs to the second area map.

[0040] Specifically, the computer device pre-sets the associated point pairs between the first area map and the second area map, and stores them in the associated point set accordingly. The computer device can obtain the associated point pairs between the first area map and the second area map from the associated point set.

[0041] In one embodiment, there is an overlapped area between the first area map and the second area map, and the overlapped area has at least one associated point pair, wherein one associated point in the associated point pair belongs to the overlapped area of ​​the first area map, and the other associated point belongs to the overlapped area of ​​the second area map.

[0042] The overlapping area can be one area or multiple areas, that is, there are one or more overlapping areas between the first area map and the second area map. Each overlapping area has at least one associated point pair.

[0043] In one embodiment, when there is an overlapping area between the first area map and the second area map, the computer device may extract a plurality of first feature points from the overlapping area of ​​the first area map, and extract a plurality of second feature points from the overlapping area of ​​the second area map. The computer device obtains feature information of each first feature point and second feature information of each second feature point, and determines a plurality of associated point pairs from the plurality of first feature points and the plurality of second feature points based on the feature information of each first feature point and the feature information of each second feature point. An associated point pair includes a first feature point and a second feature point.

[0044] Step 206: determine a conversion relationship between the first area map and the second area map based on at least one associated point pair.

[0045] Transformations are usually achieved through a series of mathematical transformations, including but not limited to translation, rotation, scaling, etc.

[0046] Specifically, the computer device determines the first feature point belonging to the first area map and the second feature point belonging to the second area map in each associated point pair. Determine the position information of each first feature point in the first area map and the position information of each second feature point in the second area map. Based on the position information of each first feature point and the position information of the second feature point, determine the conversion relationship between the first area map and the second area map.

[0047] Step 208: Determine the second posture information corresponding to the first posture information in the second area map based on the conversion relationship.

[0048] The first pose information and the second pose information are the pose information corresponding to the current position of the robot in different area maps. The first pose information includes the position and orientation of the robot in the first area map. The second pose information includes the position and orientation of the robot in the second area map.

[0049] Specifically, the computer device performs posture conversion on the first posture information based on the conversion relationship to obtain the second posture information corresponding to the robot in the second area map.

[0050] In one embodiment, the first area map has a first coordinate system, the second area map has a second coordinate system, and the conversion relationship can be a conversion matrix between the first coordinate system and the second coordinate system. The first pose information refers to the current pose information of the robot in the first coordinate system of the first area map. The second pose information refers to the current pose information of the robot in the second coordinate system of the second area map.

[0051] The computer device obtains the first pose information of the first feature point in the first coordinate system of the first area map, and obtains the second pose information of the second feature point in the second coordinate system of the second area map. According to the first pose information and the second pose information, a conversion matrix between the first coordinate system and the second coordinate system is calculated, and based on the conversion matrix, the first pose information of the robot currently in the first coordinate system of the first area map is converted into the second pose information in the second coordinate system of the second area map.

[0052] Step 210: Switch the first area map to the second area map, and switch the first posture information of the robot to the second posture information.

[0053] Specifically, the computer device switches the first area map of the robot to the second area map, and switches the first position information of the robot in the first area map to the second position information in the second area map. That is, the first position information of the current position of the robot in the first area map is switched to the second position information of the current position in the second area map.

[0054] It can be understood that when the robot obtains a map switching trigger event, the conversion relationship between the first area map and the second area map is determined; when the robot runs to the overlapping area corresponding to the conversion relationship, the first area map of the robot is switched to the second area map based on the conversion relationship, and the first posture information of the robot in the first area map is switched to the second posture information in the second area map.

[0055] In the above map switching method, the first area map and the second area map are obtained by dividing the scene map. By dividing the scene map into a plurality of small area maps, the requirements for the robot performance are reduced, and the limitations of the robot on the use of the scene map can be broken. In response to the map switching trigger event for the robot to switch from the first area map to the second area map, the first position information of the robot in the first area map is determined to determine the position and orientation of the robot in the first area map. At least one associated point pair between the first area map and the second area map is obtained, and the associated points in the associated point pair belong to the first area map and the second area map respectively. Based on the at least one associated point pair, the conversion relationship between the first area map and the second area map is determined, and the second position information corresponding to the first position information in the second area map is determined based on the conversion relationship, so that when the robot switches from the first area map to the second area map, the first position information of the robot in the first area map is switched to the second position information in the second area map, so that the robot can realize seamless switching of the area map based on the associated point pair, thereby improving the efficiency of the robot's map switching during movement, and the accuracy of positioning after switching the map. At the same time, the reliability and applicability of the robot can also be improved.

[0056] In one embodiment, there is an overlapping area between the first area map and the second area map, and the map switching event includes a movement event of the robot; in response to the map switching trigger event for the robot to switch from the first area map to the second area map, determining the first position information of the robot in the first area map includes: in response to the movement event of the robot moving to the overlapping area of ​​the first area map and the second area map, determining the first position information of the robot in the overlapping area of ​​the first area map;

[0057] Determining second posture information corresponding to the first posture information in the second area map based on the conversion relationship includes: determining second posture information corresponding to the first posture information in the overlapping area of ​​the second area map based on the conversion relationship.

[0058] Specifically, there is an overlapped area between the first area map and the second area map. The robot moves in the first area map, and when the robot moves to the overlapped area between the first area map and the second area map, the computer device determines the first position information of the robot in the overlapped area of ​​the first area map.

[0059] The computer device obtains a pair of associated points between the first area map and the second area map, wherein the associated points in the pair of associated points belong to an overlapped area of ​​the first area map and an overlapped area of ​​the second area map respectively.

[0060] The computer device determines a conversion relationship between the first area map and the second area map based on the associated point pair, and determines second posture information corresponding to the first posture information in the second area map based on the conversion relationship.

[0061] The computer device switches the robot's first area map to a second area map, and switches the robot's first position information in the first area map to second position information in the second area map.

[0062] In this embodiment, there is an overlapped area between the first area map and the second area map, and the two area maps with the overlapped area can be associated in the form of associated points, so that when the robot moves to the overlapped area, the map switching is automatically triggered, which effectively improves the efficiency of map switching. In addition, based on the associated point pairs of the overlapped area, the conversion relationship between the two area maps can be more accurately calculated, so that the current position of the robot in the first area map can be accurately mapped to the second area map, which helps to improve the accuracy of the robot's positioning in different area maps.

[0063] In one embodiment, the method further comprises:

[0064] Obtain a movement task of the robot in a target scene, and obtain multiple preset area maps for the target scene, wherein the multiple preset area maps correspond to multiple different areas of the target scene; determine a starting point and an end point of the movement task, and determine a starting point map to which the starting point belongs and an end point map to which the end point belongs from the multiple preset area maps, wherein adjacent preset area maps have associated point pairs; when there are associated point pairs between the starting point map and the end point map, use the starting point map as the first area map, and use the end point map as the second area map.

[0065] The moving task refers to the task of the robot moving from a starting point to an end point in a target scene. Specifically, the computer device divides the scene map corresponding to the target scene into a plurality of preset area maps in advance, and adjacent preset area maps have overlapping areas. The plurality of preset area maps correspond to a plurality of different areas of the target scene.

[0066] The computer device determines the starting point and the end point of the moving task, and determines the starting point map to which the starting point belongs and the end point map to which the end point belongs from a plurality of preset area maps, and adjacent preset area maps have associated point pairs.

[0067] The computer device detects whether the starting point map and the end point map have associated point pairs. When there are associated point pairs between the starting point map and the end point map, it means that the starting point map and the end point map are adjacent, and the starting point map is used as the first area map and the end point map is used as the second area map.

[0068] When the robot needs to switch from the first area map to the second area map, the computer device determines the first position information corresponding to the robot in the first area map, and determines the conversion relationship between the first area map and the second area map based on the associated point pair. Based on the conversion relationship, the computer device determines the second position information corresponding to the robot in the second area map, switches the first area map to the second area map, and switches the first position information of the robot's current position in the first area map to the second position information in the second area map.

[0069] In this embodiment, the movement task of the robot in the target scene is obtained, and multiple preset area maps for the target scene are obtained, the starting point and the end point of the movement task are determined, and the starting point map to which the starting point belongs and the end point map to which the end point belongs are determined from the multiple preset area maps. When there is an associated point pair between the starting point map and the end point map, it means that the starting point map and the end point map are adjacent, and the conversion relationship between the starting point map and the end point map is determined based on the associated point pair, so that the robot can realize the switching between the two area maps and the conversion of the position and orientation between the area maps through the associated point pairs between the area maps, so that when the robot switches from the starting point map to the end point map, it can accurately locate the current posture of the robot in the end point map, so that the robot moves to the end point position based on the positioning of the end point map, so as to quickly realize the movement of the robot in the target scene.

[0070] In one embodiment, the method further comprises:

[0071] When there is no associated point pair between the starting point map and the end point map, a transit map is screened out from multiple preset area maps based on the associated point pairs between the starting point map and the end point map, and adjacent preset area maps; a map queue is generated, the map queue includes the starting point map, the transit map and the end point map; the maps in the map queue are traversed, the traversed map is used as the first area map, and the next map of the traversed map is used as the second area map.

[0072] Specifically, when there is no associated point pair between the starting point map and the end point map, the computer device selects a transit map from a plurality of preset area maps based on the associated point pairs between the starting point map and the end point map, and adjacent preset area maps. The computer device may generate a map queue in order from the starting point to the end point, the map queue including the starting point map, the transit map, and the end point map. The computer device traverses the maps in the map queue in order, and uses the traversed map as the first area map, and the next map of the traversed map as the second area map.

[0073] For example, when the traversed map is the starting point map, the starting point map is used as the first area map, and the transit map is used as the second area map. When the transit map is used as the first area map, the destination map is used as the second area map.

[0074] In one embodiment, the transit map includes at least one preset area map.

[0075] In one embodiment, a transfer point may be determined from a transfer map, and a target path of the robot for the mobile task may be generated based on the starting point, the transfer point, and the end point, so that the robot moves along the target path to perform the mobile task.

[0076] In this embodiment, when there is no associated point pair between the starting point map and the end point map, based on the associated point pairs between the starting point map and the end point map, and the adjacent preset area maps, a transfer map is screened out from multiple preset area maps, so that the transfer map required to go from the starting point map to the end point map can be screened out. A map queue including the starting point map, the transfer map, and the end point map is generated, so that when the robot performs the mobile task, the map switching and posture conversion are performed according to the map in the map queue, thereby improving the efficiency of the robot in performing the mobile task.

[0077] In one embodiment, the method further comprises:

[0078] In response to the robot's loading operation on the first area map, determining a second area map having associated point pairs with the first area map; and preloading the second area map into a preset database;

[0079] Acquiring at least one associated point pair between the first area map and the second area map, comprising:

[0080] The second area map is read from a preset database, and at least one associated point pair between the first area map and the read second area map is obtained.

[0081] Specifically, in response to the robot's loading operation on the first area map, the computer device determines a second area map having associated point pairs with the first area map, and preloads the second area map into a preset database.

[0082] When the robot needs to switch from the first area map to the second area map, the computer device reads the second area map from the preset database and obtains the associated point pairs between the first area map and the read second area map to determine the conversion relationship between the first area map and the second area map based on the associated point pairs.

[0083] In one embodiment, the first area map and the second area map are preset area maps corresponding to the target scene. When the robot loads the scene map of the target scene for the first time, at least a portion of the preset area map of the scene map is loaded into the preset database.

[0084] In one embodiment, the data of the preset area map can be loaded into a preset database, so that the map data of a preset area can be used directly later, and the map data such as the pose information of the feature points of the associated points can be quickly acquired, thereby improving the calculation efficiency and realizing the rapid switching of the map.

[0085] When the robot loads any preset area map of the target scene for the first time, the computer device preloads all preset area maps of the target scene into the preset database.

[0086] like Figure 3 FIG. 1 is a schematic diagram of a map switching method in an embodiment. The robot has an input unit, a loading unit, a conversion unit and an output unit. The loading unit includes an extraction unit and a reading unit.

[0087] The input unit obtains map A. When the robot first loads map A, the extraction unit extracts data from map A and quickly loads the data of map A into the preset database. The data of map A may be all the data in map A, for example, it may include feature information and position information of each feature point in map A. In addition, the data of all maps such as map A, map B and map C may be stored in the preset database, so that the data of map A, the data of map B, the data of map C... are all pre-loaded into the preset database, so as to realize the rapid reading of data later.

[0088] The input unit obtains the current position information of the robot in map A, that is, the first position information. And obtains the associated point pair (a, b) between map A and map B. Among them, the feature point a in the associated point pair (a, b) belongs to map A, and the feature point b belongs to map B. The input unit sends the first position information and the associated point pair (a, b) to the conversion unit.

[0089] When the robot needs to switch from map A to map B, the conversion unit reads data from the preset database through the reading unit. That is, the reading unit reads the pose information of feature point a and the pose information of feature point b, and sends them to the conversion unit.

[0090] The conversion unit calculates the second pose information corresponding to the first pose information in map A in map B according to the pose information of feature point a, the pose information of feature point b and the first pose information, and the output unit outputs the second pose information in map B. Specifically, the conversion unit first determines the conversion relationship based on the pose information of feature point a and the pose information of feature point b, and then converts the first pose information through the conversion relationship to obtain the second pose information.

[0091] In this embodiment, in response to the robot's loading operation on the first area map, a second area map having associated point pairs with the first area map is determined, and the second area map is preloaded into a preset database. When the robot needs to switch from the first area map to the second area map, the second area map can be directly read from the preset database, which can greatly increase the speed and efficiency of map loading, thereby improving the efficiency of subsequent map switching.

[0092] In one embodiment, the method further comprises:

[0093] A scene map of a target scene is obtained, and the scene map is divided into a plurality of preset area maps, wherein adjacent preset area maps have overlapping areas; feature points are extracted from the overlapping areas of the adjacent preset area maps respectively, and feature information corresponding to each feature point is determined; based on the feature information corresponding to each feature point in the adjacent preset area maps, a plurality of associated point pairs between the adjacent preset area maps are determined, wherein two feature points in the associated point pairs respectively belong to the overlapping areas of the adjacent preset area maps.

[0094] The characteristic information may be the surrounding characteristic information of the characteristic point. The overlapped area may be points, lines, or surfaces that overlap with each other, which is not specifically limited here.

[0095] Specifically, the computer device obtains a scene map of the target scene, and divides the scene map into a plurality of preset area maps. Among the plurality of preset area maps, two adjacent preset area maps have overlapping areas.

[0096] The computer device extracts multiple feature points from the overlapping area of ​​each preset area map in the adjacent preset area maps, and determines the feature information corresponding to each feature point. The computer device determines the matching feature points in the adjacent preset area maps based on the feature information corresponding to each feature point in the adjacent preset area maps, uses the matching feature points as associated points, and combines them into associated point pairs.

[0097] In one embodiment, the feature information corresponding to the feature point includes environmental feature information corresponding to the feature point, and the environmental feature information is used to characterize the characteristics of the surrounding environment of the feature point. For example, a computer device determines the feature point, collects environmental data around the feature point, extracts features from the environmental data, and obtains environmental feature information.

[0098] In one embodiment, the computer device selects one of two adjacent preset area maps, uses the feature points in the selected preset area map as the first feature points, and uses the feature points in the other preset area map as the second feature points. For each first feature point, the similarity between the feature information of the targeted first feature point and the feature information of each second feature point is determined, and based on the similarity, a second feature point matching the targeted first feature point is determined, and the matching first feature point and second feature point are combined into an associated point pair.

[0099] In one embodiment, determining a second feature point matching the first feature point based on similarity includes: selecting a second feature point having a similarity greater than a similarity threshold, wherein the selected second feature point is the feature point matching the first feature point.

[0100] In one embodiment, determining the second feature point matching the first feature point based on the similarity includes: selecting the second feature point with the greatest similarity, the second feature point with the greatest similarity being the feature point matching the targeted first feature point.

[0101] In one embodiment, a feature point in a preset area map may form an associated point pair with feature points in multiple preset areas respectively, so that one preset area map may be associated with multiple preset area maps based on one feature point.

[0102] In one embodiment, the computer device may determine the area of ​​the target scene, and when the area of ​​the target scene is larger than a preset area, the scene map is divided into a plurality of preset area maps. The number of the preset area maps may be determined based on the ratio between the total area of ​​the scene map and the preset area of ​​the preset area maps.

[0103] In one embodiment, a computer device may determine the shape of a target scene and divide the scene map based on shape features of the scene map; for example, if the scene map includes turns, corners, etc., the scene map may be divided based on turn and corner dividing lines, and the number of preset area maps obtained by the division is determined based on the shape features of the actual scene map, which is not specifically limited herein.

[0104] In one embodiment, the computer device may comprehensively determine whether to divide the preset area map and the number of divisions of the preset area map based on the area and shape of the scene map corresponding to the target scene.

[0105] In one embodiment, the scene map of the target scene is a laser map, and the data corresponding to the laser map is laser data. The scene map is divided into a plurality of preset area maps, adjacent preset area maps have overlapping areas, and the data of each preset area map is also laser data.

[0106] In one embodiment, the preset area map A and the preset area map B have overlapping areas.

[0107] like Figure 4 The figure shows an architecture diagram of a map switching method in one embodiment. The laser radar installed in the robot is used to locate the robot at a feature point a in the overlapping area of ​​the preset area map A, and obtain the pose data of the feature point a. The odometer and inertial measurement unit installed in the robot are used to perform fusion positioning on the feature point a in the overlapping area of ​​the preset area map A, and obtain another pose data of the feature point a. The two pose data at the feature point a are verified, and if the difference between the two pose data is less than or equal to the preset difference, the environmental feature information of the feature point a in the preset area map A is extracted. If the two pose data of the feature point a are greater than the preset difference, the feature point a is discarded.

[0108] The robot is currently located at feature point b in the overlapped area of ​​the preset area map B by using the laser radar installed in the robot, and the pose data at feature point b is obtained. The robot is located at feature point b in the overlapped area of ​​the preset area map B by using the odometer and inertial measurement unit installed in the robot, and another pose data at feature point b is obtained. The two pose data at feature point b are verified, and if the difference between the two pose data is less than or equal to the preset difference, the environmental feature information of feature point b in the preset area map B is extracted. If the two pose data of feature point b are greater than the preset difference, the feature point b is discarded.

[0109] According to the same processing method, a plurality of feature points a in the overlapped area of ​​the preset area map A and a plurality of feature points b in the overlapped area of ​​the preset area map B can be obtained.

[0110] Based on the environmental feature information of each feature point a and the environmental feature information of each feature point b, an associated point check is performed to determine a feature point b that matches each feature point a. The matched feature point a and feature point b are used as an associated point pair. Moreover, the preset area map A and the preset area map B are used as an associated map pair, so that the preset area map A and the preset area map B can be switched between through the associated point pair.

[0111] In one embodiment, the method further comprises:

[0112] When a newly added area map exists in the scene map of the target scene, the adjacent area map of the newly added area map is determined from each preset area map; the overlapping area between the newly added area map and the adjacent area map is determined, and feature points are extracted from the overlapping areas of the newly added area map and the adjacent area map respectively; based on the feature information of the feature points in the newly added area map and the feature information of the feature points in the adjacent area map, multiple association point pairs between the newly added area map and the adjacent area map are determined. In this embodiment, when the area of ​​the target scene increases, for the newly added area map, the map association points can be checked and bound at the junction of the new and old maps by splicing, and can be put into use immediately after binding, which has strong scalability.

[0113] In this embodiment, a scene map of a target scene is obtained, and the scene map is divided into a plurality of preset area maps to effectively segment a map of a very large area. Adjacent preset area maps have overlapping areas, feature points are extracted from the overlapping areas of the adjacent preset area maps, and feature information corresponding to each feature point is determined. Based on the feature information corresponding to each feature point in the adjacent preset area maps, a plurality of associated point pairs between adjacent preset area maps are determined, and the maps of the overlapping areas can be associated in the form of associated points, so that the robot can load and use the map of a very large scene by quickly loading and switching a single small map during the application of the map, effectively solving the resource consumption caused by the very large scene, and greatly saving the current resource consumption and storage overhead of computer equipment.

[0114] In one embodiment, a map switching method is provided, which is applied to a computer device and includes:

[0115] Obtaining a scene map of a target scene, dividing the scene map into a plurality of preset area maps, wherein adjacent preset area maps have overlapping areas;

[0116] Extracting feature points from overlapping areas of adjacent preset area maps respectively, and determining feature information corresponding to each feature point;

[0117] Based on the feature information corresponding to each feature point in the adjacent preset area maps, a plurality of associated point pairs between the adjacent preset area maps are determined, wherein two feature points in the associated point pairs respectively belong to the overlapping areas of the adjacent preset area maps.

[0118] When a newly added area map exists in the scene map of the target scene, an adjacent area map of the newly added area map is determined from each preset area map;

[0119] Determine the overlapped area between the newly added area map and the adjacent area map, and extract feature points from the overlapped areas of the newly added area map and the adjacent area map respectively;

[0120] Based on the feature information of the feature points in the newly added area map and the feature information of the feature points in the adjacent area map, a plurality of associated point pairs between the newly added area map and the adjacent area map are determined.

[0121] Obtaining a movement task of the robot in a target scene, and obtaining a plurality of preset area maps for the target scene, wherein the plurality of preset area maps correspond to a plurality of different areas of the target scene;

[0122] Determine a starting point and an end point of the moving task, and determine a starting point map to which the starting point belongs and an end point map to which the end point belongs from a plurality of preset area maps, wherein adjacent preset area maps have associated point pairs;

[0123] When there is a pair of associated points between the starting point map and the end point map, the starting point map is used as the first area map, and the end point map is used as the second area map.

[0124] Optionally, when there is no associated point pair between the starting point map and the end point map, a transit map is screened out from multiple preset area maps based on the associated point pairs between the starting point map and the end point map, and adjacent preset area maps; a map queue is generated, the map queue includes the starting point map, the transit map and the end point map; the maps in the map queue are traversed, the traversed map is used as the first area map, and the next map of the traversed map is used as the second area map.

[0125] In the process of the robot moving from the starting point to the end point, when the robot moves from the first area map to the overlapping position of the first area map and the second area map, determining the first position information of the robot in the first area map;

[0126] Acquire at least one associated point pair between the first area map and the second area map, wherein the associated points in the associated point pair belong to the first area map and the second area map respectively;

[0127] determining a conversion relationship between the first area map and the second area map based on at least one associated point pair;

[0128] Based on the conversion relationship, determining the second posture information corresponding to the first posture information in the second area map;

[0129] The first area map is switched to the second area map, and the first posture information of the robot is switched to the second posture information.

[0130] In this embodiment, the scene map of the target scene is divided into a plurality of preset area maps to effectively segment the map of a very large area. Adjacent preset area maps have at least one overlapping area, feature points are extracted from the overlapping areas of the adjacent preset area maps, and feature information corresponding to each feature point is determined. Based on the feature information corresponding to each feature point in the adjacent preset area maps, a plurality of associated point pairs between adjacent preset area maps are determined, and the maps of the overlapping areas can be associated in the form of associated points, so that the robot can load and use the map of the very large scene by quickly loading and switching a single small map during the application of the map, which greatly reduces the computational and storage overhead of constructing the map of the very large scene, and improves the efficiency and performance of the system. In addition, the speed and efficiency of map loading are greatly increased, the autonomous navigation and environmental perception capabilities of the mobile robot are improved, and the robot can better adapt to the task requirements in the very large scene, which has a leapfrog improvement in the actual application effect and customer experience of the robot.

[0131] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0132] Based on the same inventive concept, the embodiment of the present application also provides a map switching device for implementing the map switching method involved above. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme recorded in the above method, so the specific limitations in one or more map switching device embodiments provided below can refer to the limitations on the map switching method above, and will not be repeated here.

[0133] In one embodiment, Figure 5 As shown, a map switching device 500 is provided, comprising:

[0134] The first posture determination module 502 is used to determine the first posture information of the robot in the first area map in response to a map switching trigger event for the robot to switch from the first area map to the second area map. The first area map and the second area map are obtained by dividing the scene map.

[0135] The associated point determination module 504 is used to obtain at least one associated point pair between the first area map and the second area map, wherein the associated points in the associated point pair belong to the first area map and the second area map respectively.

[0136] The conversion relationship determination module 506 is used to determine the conversion relationship between the first area map and the second area map based on at least one associated point pair.

[0137] The second posture determination module 508 is used to determine the second posture information corresponding to the first posture information in the second area map based on the conversion relationship.

[0138] The switching module 510 is used to switch the robot from the first area map to the second area map, and switch the first posture information of the robot to the second posture information.

[0139] In one embodiment, there is an overlapping area between the first area and the second area, and the map switching event includes a movement event of the robot; the first pose determination module 502 is further used to determine the first pose information of the robot in the overlapping area of ​​the first area map in response to the movement event of the robot moving from the overlapping area of ​​the first area to the overlapping area of ​​the second area map;

[0140] The second posture determination module 508 is further used to determine the second posture information corresponding to the first posture information in the overlapping area of ​​the second area map based on the conversion relationship.

[0141] In one embodiment, the apparatus further comprises:

[0142] An acquisition module is used to acquire the movement task of the robot in the target scene and acquire multiple preset area maps for the target scene, where the multiple preset area maps correspond to multiple different areas of the target scene;

[0143] A map determination module is used to determine the starting point and the end point of the mobile task, and determine the starting point map to which the starting point belongs and the end point map to which the end point belongs from multiple preset area maps, and adjacent preset area maps have associated point pairs; when there are associated point pairs between the starting point map and the end point map, the starting point map is used as the first area map and the end point map is used as the second area map.

[0144] In one embodiment, the apparatus further comprises:

[0145] A screening module, for screening a transit map from a plurality of preset area maps based on the associated point pairs between the starting point map and the end point map, and the adjacent preset area maps, when there is no associated point pair between the starting point map and the end point map;

[0146] A generation module, used to generate a map queue, which includes a starting point map, a transfer map and a destination map;

[0147] The traversal module is used to traverse the maps in the map queue, and use the traversed map as the first area map and the next map of the traversed map as the second area map.

[0148] In one embodiment, the apparatus further comprises:

[0149] A preloading module, configured to determine, in response to a loading operation of the robot on the first area map, a second area map having associated point pairs with the first area map; and preload the second area map into a preset database;

[0150] The associated point determination module 504 is further configured to read the second area map from the preset database, and obtain associated point pairs between the first area map and the read second area map.

[0151] In one embodiment, the association point determination module 504 is also used to obtain a scene map of the target scene, divide the scene map into multiple preset area maps, and adjacent preset area maps have overlapping areas; extract association points from the overlapping areas of the adjacent preset area maps respectively, and determine the feature information corresponding to each association point; based on the feature information corresponding to each association point in the adjacent preset area maps, determine multiple association point pairs between adjacent preset area maps, and the two association points included in the association point pairs belong to the adjacent preset area maps respectively.

[0152] In one embodiment, the associated point determination module 504 is also used to determine the adjacent area map of the newly added area map from each preset area map when there is a newly added area map in the scene map of the target scene; determine the overlapping area between the newly added area map and the adjacent area map, and extract feature points from the overlapping areas of the newly added area map and the adjacent area map respectively; based on the feature information of the feature points in the newly added area map and the feature information of the feature points in the adjacent area map, determine multiple associated point pairs between the newly added area map and the adjacent area maps.

[0153] Each module in the above-mentioned map switching device can be implemented in whole or in part by software, hardware or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute the operations corresponding to each module.

[0154] In one embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as follows: Figure 6As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. The processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store map data. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a map switching method is implemented.

[0155] Those skilled in the art will understand that Figure 6 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0156] The embodiment of the present application further provides a computer-readable storage medium, one or more non-volatile computer-readable storage media containing computer-executable instructions, which, when executed by one or more processors, enable the processors to perform the steps of the map switching method.

[0157] An embodiment of the present application also provides a computer program product including instructions, which, when executed on a computer, enables the computer to execute a map switching method.

[0158] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards of relevant countries and regions.

[0159] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., but are not limited to this.

[0160] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0161] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.

Claims

1. A map switching method, characterized in that: include: In response to a map switching trigger event for the robot to switch from a first area map to a second area map, determining first position information of the robot in the first area map, wherein the first area map and the second area map are obtained by dividing a scene map; Acquire at least one association point pair between the first area map and the second area map, wherein the association points in the association point pair belong to the first area map and the second area map respectively; Determine a conversion relationship between the first area map and the second area map based on the at least one associated point pair; Based on the conversion relationship, determining second posture information corresponding to the first posture information in the second area map; The first area map is switched to the second area map, and the first posture information of the robot is switched to the second posture information.

2. The method according to claim 1, characterized in that: The first area map and the second area map have overlapping areas, and the map switching event includes a movement event of the robot; and in response to the map switching trigger event for the robot to switch from the first area map to the second area map, determining the first position information of the robot in the first area map includes: In response to a movement event in which the robot moves to an overlapping area of ​​the first area map and the second area map, determining first position information of the robot in the overlapping area of ​​the first area map; The determining, based on the conversion relationship, second posture information corresponding to the first posture information in the second area map includes: Based on the conversion relationship, second posture information corresponding to the first posture information in the overlapping area of ​​the second area map is determined.

3. The method according to claim 1, characterized in that: The method further comprises: Acquire a movement task of the robot in a target scene, and acquire a plurality of preset area maps for the target scene, wherein the plurality of preset area maps correspond to a plurality of different areas of the target scene; Determine a starting point and an end point of the moving task, and determine a starting point map to which the starting point belongs and an end point map to which the end point belongs from the plurality of preset area maps, wherein adjacent preset area maps have associated point pairs; When there is a pair of associated points between the starting point map and the end point map, the starting point map is used as the first area map, and the end point map is used as the second area map.

4. The method according to claim 3, characterized in that The method further comprises: When there is no associated point pair between the starting point map and the destination map, a transit map is selected from the plurality of preset area maps based on associated point pairs between the starting point map and the destination map, and the adjacent preset area maps; Generate a map queue, wherein the map queue includes the starting point map, the transfer map and the destination map; The maps in the map queue are traversed, the traversed map is used as the first area map, and the next map of the traversed map is used as the second area map.

5. The method according to claim 1, characterized in that The method further comprises: In response to the robot's loading operation on the first area map, determining a second area map having associated point pairs with the first area map; preloading the second area map into a preset database; The acquiring at least one associated point pair between the first area map and the second area map comprises: The second area map is read from the preset database, and at least one associated point pair between the first area map and the read second area map is obtained.

6. The method according to any one of claims 1 to 5, characterized in that: The method further comprises: Acquire a scene map of a target scene, and divide the scene map into a plurality of preset area maps, wherein adjacent preset area maps have overlapping areas; Extracting feature points from overlapping areas of adjacent preset area maps respectively, and determining feature information corresponding to each feature point; Based on the feature information corresponding to each feature point in the adjacent preset area maps, a plurality of associated point pairs between the adjacent preset area maps are determined, wherein two feature points in the associated point pairs respectively belong to overlapping areas of the adjacent preset area maps.

7. A map switching device, characterized in that: include: a first pose determination module, configured to determine, in response to a map switching trigger event for switching a robot from a first area map to a second area map, first pose information of the robot in the first area map, wherein the first area map and the second area map are obtained by dividing a scene map; an association point determination module, configured to obtain at least one association point pair between the first area map and the second area map, wherein the association points in the association point pair belong to the first area map and the second area map respectively; a conversion relationship determination module, configured to determine a conversion relationship between the first area map and the second area map based on the at least one associated point pair; A second posture determination module, used to determine second posture information corresponding to the first posture information in the second area map based on the conversion relationship; A switching module is used to switch the first area map to a second area map, and to switch the first posture information of the robot to the second posture information.

8. A computer device comprising a memory and a processor, wherein a computer program is stored in the memory, wherein: When the computer program is executed by the processor, the processor is caused to perform the steps of the method according to any one of claims 1 to 6.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.

10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.

Citation Information

Cited By

  • Map switching method and apparatus, computer device, and readable storage medium

    WO2026118520A1