SLAM map stitching method based on identifiable label, storage medium and electronic device
By dividing the SLAM map into sub-regions and stitching them together using pose features of identifiable labels, the problems of insufficient positioning accuracy and accumulation of stitching errors in large scenes are solved, and high-precision SLAM map construction is achieved.
Patent Information
- Application Number
- CN202411540637.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-31
- Publication Date
- 2026-02-03
- Estimated Expiration
- 2044-10-31
AI Technical Summary
In large-area scenarios, especially in scenarios with similar features and few features, SLAM map construction suffers from insufficient positioning accuracy and large accumulation of stitching errors.
The area to be mapped is divided into multiple connectable sub-regions, and identifiable tags are placed in adjacent areas. The tag information is detected by a camera to calculate its pose features. The tag pose features are used for preliminary stitching, and graph optimization technology is combined for fine stitching to reduce cumulative errors.
It improves the positioning accuracy of SLAM maps, reduces map distortion in large scenes, simplifies algorithm complexity and computational resource requirements, and is suitable for building large indoor and outdoor scene maps.
Smart Images

Figure CN119399023B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of map building technology, and in particular to a SLAM map stitching method, storage medium, and electronic device based on identifiable tags. Background Technology
[0002] In the field of mobile devices (such as robot navigation, autonomous vehicles, automated handling equipment on production lines, and smart homes), Simultaneous Localization and Mapping (SLAM) is required for map building, providing environmental information for autonomous robot navigation. Currently, mainstream SLAM map building methods include visual SLAM, LiDAR SLAM, and multi-sensor fusion SLAM, with key steps including feature extraction, feature matching, state estimation, and map updating. However, due to errors in feature matching and the influence of sensor noise, the accumulated error gradually increases as the stitching process progresses. Therefore, SLAM maps for large-area scenarios suffer from large cumulative localization errors and significant map distortion, limiting the application of mobile robots in large-area scenarios.
[0003] To address the challenge of building SLAM maps for robots in large-scale scenarios, various map stitching methods have emerged in the prior art. See patent publication number CN109887053A for a SLAM map stitching method and system, which discloses the following steps: when SLAM tracking loss is detected, re-initialize SLAM mapping; use the vehicle's localization module to obtain the current vehicle pose information, calculate the current pose information of the onboard sensors, and construct the current virtual keyframe; associate the current virtual keyframe with historical keyframes to determine if initialization was successful; if not, use the vehicle's localization module to obtain the current vehicle pose information to generate a virtual keyframe; if yes, construct a new sub-map and initialize the new sub-map using the sensor pose information corresponding to the current virtual keyframe, thereby achieving stitching between the original and new sub-maps. While these techniques solve the problem of mapping failure due to SLAM tracking loss during SLAM mapping and significantly improve the success rate of building complete SLAM maps for large scenes, they still face problems of insufficient localization accuracy and accumulated stitching errors in scenarios with similar or few features. Summary of the Invention
[0004] Therefore, it is necessary to provide a SLAM map stitching method based on identifiable tags to solve the problems of insufficient positioning accuracy and large accumulation of stitching errors in large-area scenarios, especially in scenarios with similar features and few features.
[0005] To achieve the above objectives, this invention provides a SLAM map stitching method based on identifiable tags, which includes the following steps:
[0006] Divide the area to be mapped into multiple connectable sub-regions;
[0007] Identifiable labels are placed in the connected regions of adjacent mapping sub-regions, and each identifiable label has a unique identifier.
[0008] Receive identifiable tag information detected by the camera, and obtain the pose of each identifiable tag based on the actual size data of each identifiable tag, camera intrinsic parameters and the current pose of the mobile device, and save the identifier and pose of the identifiable tag as the pose feature of the identifiable tag.
[0009] A preliminary SLAM map is obtained by stitching together multiple mapping sub-regions using the pose features of identifiable labels.
[0010] In the initial SLAM map, feature points with similar characteristics in different mapped sub-regions are matched, and the final SLAM map is obtained through data fusion.
[0011] Furthermore, the connected region is the overlapping region of two adjacent mapping sub-regions.
[0012] Furthermore, the connected region has at least two identifiable tags.
[0013] Further, the step of receiving the identifiable tags detected by the camera, obtaining the pose of each identifiable tag based on the actual size data of each identifiable tag, camera intrinsic parameters, and the current pose of the mobile device, and saving the identifier and pose of the identifiable tag as the pose feature of the identifiable tag, includes the following steps:
[0014] Receive identifiable tag information detected by the camera, wherein the identifiable tag information includes pixel size data and identifier of the identifiable tag;
[0015] The relative pose between the mobile device and the identifiable tag is calculated based on the pixel size data of the identifiable tag detected by the camera, the actual size data of the identifiable tag, and the camera intrinsic parameters.
[0016] The pose of the identifiable tag is obtained by using the current pose of the mobile device and the relative pose of the mobile device and the identifiable tag.
[0017] The identifier and pose of the identifiable tag are saved as the pose features of the identifiable tag.
[0018] Furthermore, the step of stitching together multiple mapping sub-regions using the pose features of identifiable labels to obtain a preliminary SLAM map includes the following steps:
[0019] Based on the identifiable label identifiers in the connected regions, generate the adjacency relationships of the map sub-regions;
[0020] Based on the pose characteristics of the same identifiable label identifier in adjacent mapping sub-regions, the spatial transformation matrix of adjacent mapping sub-regions is obtained by the iterative nearest point algorithm.
[0021] Using a certain mapping sub-region as the reference region, all mapping sub-regions are transformed onto the reference region based on the spatial transformation matrix and Euclidean transformation of adjacent mapping sub-regions to obtain a preliminary SLAM map.
[0022] Furthermore, the step of generating the adjacency relationships of the mapping sub-regions based on the identifiable label identifiers in the connected regions includes the following steps:
[0023] Iterate through the identifiers of identifiable labels in all mapping sub-regions. If two mapping sub-regions have the same identifier for their identifiable labels, then the two mapping sub-regions are considered to be adjacent.
[0024] Furthermore, the step of performing feature matching on similar feature points in different mapped sub-regions in the preliminary SLAM map and obtaining the final SLAM map through data fusion includes the following steps:
[0025] For each keyframe of the mapped sub-region, feature points are extracted using a feature point extraction algorithm.
[0026] Perform feature point matching to find similar feature point pairs in different mapped sub-regions;
[0027] Based on the matched feature point pairs, calculate the relative pose of keyframes between different mapped sub-regions;
[0028] Using graph optimization techniques, the keyframe pose is obtained by iteratively minimizing the error.
[0029] By fusing keyframe data, a finely stitched global map is obtained.
[0030] Furthermore, the step of obtaining the keyframe pose by using graph optimization techniques to iteratively minimize the error includes the following steps:
[0031] A graph model is constructed, which includes vertices and edges; wherein, the vertices are the keyframe poses of all graph sub-regions; the edges contain three types of information: the first type is the relative pose constraints of keyframes within the graph sub-regions, the second type is the relative pose constraints of keyframes between graph sub-regions, and the third type is the relative pose constraints of identifiable labels of connected regions of adjacent graph sub-regions.
[0032] Define an error function and use a graph optimization algorithm for iterative optimization. Continuously adjust the pose of the keyframes to minimize the error function until the predetermined convergence condition is met to obtain the keyframe pose.
[0033] A storage medium storing a computer program that, when executed by a processor, implements the steps of the above-described SLAM map stitching method based on identifiable tags.
[0034] An electronic device includes a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, it implements the steps of the above-described SLAM map stitching method based on identifiable tags.
[0035] Unlike existing technologies, the above-mentioned technical solution uses identifiable tags to divide the area to be mapped into multiple sub-regions for stitching. A camera then identifies the identifiable tags within these sub-regions, calculates their poses, and uses these pose features as pose characteristics for the SLAM map stitching process, providing a reliable reference for map stitching. During SLAM map stitching, the relationship between the pose features of the identifiable tags between the sub-regions is used for coarse stitching to obtain a preliminary SLAM map. Subsequently, auxiliary feature matching and graph optimization methods are used for fine stitching to obtain a refined SLAM map. By utilizing the precise pose information of the identifiable tags, accumulated errors can be effectively corrected and reduced during the stitching process, thereby improving the accuracy of the global map and reducing distortion in large-scene maps. This effectively solves the problem of difficulty in mapping large scenes. Attached Figure Description
[0036] Figure 1 This is a flowchart illustrating the SLAM map stitching method based on identifiable tags of the present invention. Detailed Implementation
[0037] To explain in detail the technical content, structural features, objectives, and effects of the technical solution, the following description is provided in conjunction with specific embodiments and accompanying drawings.
[0038] In this document, the term "embodiment" means that a specific feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The term "embodiment" appearing in various places throughout the specification does not necessarily refer to the same embodiment, nor does it specifically limit its independence or connection with other embodiments. In principle, in this application, as long as there are no technical contradictions or conflicts, the technical features mentioned in each embodiment can be combined in any way to form corresponding implementable technical solutions.
[0039] Unless otherwise defined, the technical terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains; the use of related terms herein is merely for the purpose of describing particular embodiments and is not intended to limit this application.
[0040] In the description of this application, the term "and / or" is used to describe the logical relationship between objects, indicating that three relationships can exist. For example, A and / or B means: A exists, B exists, and A and B exist simultaneously. Additionally, the character " / " in this document generally indicates that the preceding and following objects have an "or" logical relationship.
[0041] In this application, terms such as “first” and “second” are used only to distinguish one entity or operation from another, and do not necessarily require or imply any actual quantity, hierarchy or order between these entities or operations.
[0042] Without further limitations, the use of terms such as “comprising,” “including,” “having,” or other similar expressions in this application is intended to cover non-exclusive inclusion, which does not exclude the presence of additional elements in a process, method, or product that includes the stated elements, such that a process, method, or product that includes a list of elements may include not only those defined elements but also other elements not expressly listed, or elements inherent to such a process, method, or product.
[0043] Similar to the interpretation in the Patent Examination Guidelines, in this application, expressions such as "greater than," "less than," and "exceeding" are understood to exclude the stated number; expressions such as "above," "below," and "within" are understood to include the stated number. Furthermore, in the description of the embodiments in this application, "multiple" means two or more (including two), and similar expressions related to "multiple" are also interpreted in this way, such as "multiple groups" and "multiple times," unless otherwise explicitly specified.
[0044] In the description of the embodiments of this application, the space-related expressions used, such as "center," "longitudinal," "lateral," "length," "width," "thickness," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "vertical," "top," "bottom," "inner," "outer," "clockwise," "counterclockwise," "axial," "radial," and "circumferential," indicate the orientation or positional relationship based on the orientation or positional relationship shown in the specific embodiments or drawings. They are only for the purpose of describing the specific embodiments of this application or for the reader's understanding, and do not indicate or imply that the device or component referred to must have a specific position, a specific orientation, or be constructed or operated in a specific orientation. Therefore, they should not be construed as limitations on the embodiments of this application.
[0045] Unless otherwise expressly specified or limited, the terms "installation," "connection," "linking," "fixing," and "setting," as used in the description of the embodiments of this application, should be interpreted broadly. For example, "connection" can be a fixed connection, a detachable connection, or an integral setting; it can be a mechanical connection, an electrical connection, or a communication connection; it can be a direct connection or an indirect connection through an intermediate medium; it can be the internal connection of two components or the interaction between two components. For those skilled in the art to which this application pertains, the specific meaning of the above terms in the embodiments of this application can be understood according to the specific circumstances.
[0046] See Figure 1 As shown, this invention provides a SLAM map stitching method based on identifiable tags. This method uses identifiable tags to assist in dividing the area to be mapped into multiple sub-regions for stitching. Then, a camera identifies identifiable tags within the mapping area, calculates the poses of these tags, and uses them as pose features in the SLAM map stitching process, providing a reliable reference for map stitching and significantly improving the positioning accuracy of the map stitching. During the SLAM map stitching process, the relationship between the pose features of identifiable tags between the mapping sub-regions is used to perform coarse SLAM map stitching to obtain a preliminary SLAM map. Subsequently, auxiliary features are used... This method employs feature matching and graph optimization to perform fine-grained map stitching, achieving a refined SLAM map. By utilizing the precise pose information of identifiable tags, accumulated errors can be effectively corrected and reduced during the stitching process, thereby improving the accuracy of the global map and reducing distortion in large-scene maps. This effectively solves the problem of difficult mapping in large scenes. Simultaneously, identifiable tags provide direct pose information, reducing the computational load of feature matching and optimization, lowering the requirements for algorithm complexity and computational resources, and making the mapping process simpler and more efficient. This method is not only applicable to indoor environments but can also be extended to the construction of outdoor large-scene maps. With the assistance of identifiable tags, mobile devices can more efficiently perform localization and map stitching in large scenes, applicable to scenarios such as autonomous driving, robot navigation, and augmented reality.
[0047] Therefore, the present invention provides an implementation method for SLAM map stitching based on identifiable tags, which includes the following steps:
[0048] S1. Divide the area to be mapped into multiple connectable sub-regions;
[0049] S2. Identifiable labels are placed in the connected regions of adjacent mapping sub-regions, and each identifiable label has a unique identifier.
[0050] S3. Receive the identifiable tag information detected by the camera, and obtain the pose of each identifiable tag based on the actual size data of each identifiable tag, the camera intrinsic parameters and the current pose of the mobile device (pose in the SLAM map coordinate system), and save the identifier and pose of the identifiable tag as the pose feature of the identifiable tag.
[0051] S4. By stitching together multiple mapping sub-regions using the pose features of identifiable labels, a preliminary SLAM map is obtained;
[0052] S5. In the preliminary SLAM map, feature point matching is performed on similar feature points in different mapped sub-regions, and the final SLAM map is obtained through data fusion.
[0053] In step S1 above, the area to be mapped is divided into multiple connectable mapping sub-regions. This division can be based on commonly used regular shapes, such as, but not limited to, division by grids (four-square grid, nine-square grid, etc.), rows, columns, rings, etc. It can also be divided in various ways according to specific needs and scene characteristics, such as dividing into irregular shapes based on the shape of the area to be mapped and the distribution of obstacles, or dividing according to the function or purpose of the area to be mapped. The aforementioned connectable mapping sub-regions refer to the area to be mapped being divided into multiple mapping sub-regions, where adjacent mapping sub-regions have a connected region, allowing the multiple mapping sub-regions to be connected. That is, adjacent mapping sub-regions are not spaced apart. In some embodiments, adjacent mapping sub-regions have partially overlapping areas; in this case, the connected region is the overlapping area of two adjacent mapping sub-regions. In some embodiments not shown, adjacent mapping sub-regions are adjacent to each other; in this case, the connected region is the adjacent area of two adjacent mapping sub-regions.
[0054] In step S2 above, the identifiable tags deployed in the connected regions of adjacent mapping sub-regions have unique identifiers, such as UUIDs (Universally Unique Identifiers) or GUIDs (Globally Unique Identifiers), to ensure that each identifiable tag is unique. It should be noted that the actual shape and size of the identifiable tags are not limited and can be set according to the size of the connected regions. These identifiable tags are capable of being identified and detected by a camera. The identifiable tag information, including its identifier and pixel size, can be obtained through camera detection. In practical applications, identifiable tags can be QR codes, barcodes, RFID tags, language tags, etc. The number of identifiable tags can be set according to actual needs, preferably at least two. At least two coded tags can provide double confirmation for each mapping sub-region, helping to more accurately locate and align the mapping sub-regions during the stitching process. By comparing and matching the information of two or more identifiable tags, stitching errors can be reduced, ensuring the accuracy and consistency of the SLAM map. Meanwhile, multiple coded tags provide redundant information. If one of the identifiable tags is damaged, obscured, or misidentified and cannot be used, it can still be identified and located through other tags, which improves reliability in complex environments.
[0055] The step S3 described above, which involves receiving identifiable tags detected by the camera, obtaining the pose of each identifiable tag based on its actual size data, camera intrinsic parameters, and the current pose of the mobile device, and saving the identifier and pose of the identifiable tag as its pose features, includes the following steps:
[0056] Receive identifiable tag information detected by the camera, wherein the identifiable tag information includes pixel size data and identifier of the identifiable tag;
[0057] The relative pose between the mobile device and the identifiable tag is calculated based on the pixel size data of the identifiable tag detected by the camera, the actual size data of the identifiable tag, and the camera intrinsic parameters.
[0058] The pose of the identifiable tag is obtained by using the current pose of the mobile device and the relative pose of the mobile device and the identifiable tag.
[0059] The identifier and pose of the identifiable tag are saved as the pose features of the identifiable tag.
[0060] The aforementioned camera intrinsic parameters, including focal length and distortion coefficients, are obtained through camera calibration, such as using a standard checkerboard calibration method or other calibration methods. The camera detects the pixel size data of the identifiable tag, such as its overall width, length, perimeter, side length of a specific edge, and arc length of a specific arc. Based on the known actual size of the identifiable tag, the camera's intrinsic parameters, and the tag's pixel size, the relative pose (e.g., position and orientation) between the mobile device and the tag can be calculated using perspective projection principles or 3D reconstruction algorithms. When calculating the relative pose between the mobile device and the tag, optimization algorithms (such as least squares, iterative nearest point algorithms, etc.) can be considered to reduce errors. Based on the current pose of the mobile device and the relative pose between the mobile device and the identifiable tag, the pose of the identifiable tag (its pose in the SLAM map coordinate system) can be calculated through pose transformation matrix operations.
[0061] In step S4 above, multiple mapping sub-regions are stitched together using the pose features of identifiable labels to obtain a preliminary SLAM map. This specifically includes the following steps:
[0062] Based on the identifiable label identifiers in the connected regions, generate the adjacency relationships of the map sub-regions;
[0063] Based on the pose characteristics of the same identifiable label identifier in adjacent mapping sub-regions, the spatial transformation matrix of adjacent mapping sub-regions is obtained by the iterative nearest point algorithm.
[0064] Using a certain mapping sub-region as the reference region, all mapping sub-regions are transformed onto the reference region based on the spatial transformation matrix and Euclidean transformation of adjacent mapping sub-regions to obtain a preliminary SLAM map.
[0065] The steps described above for generating the adjacency relationship of the mapping sub-regions based on the identifiable label identifiers in the connected regions can specifically include traversing the identifiers of the identifiable labels in all mapping sub-regions. If two mapping sub-regions have the same identifier for their identifiable labels, then the two mapping sub-regions are considered to be adjacent.
[0066] Step S5 above, which involves feature matching of similar feature points in different mapped sub-regions in the initial SLAM map and obtaining the final SLAM map through data fusion, includes the following steps:
[0067] For each keyframe of the mapped sub-region, feature points are extracted using a feature point extraction algorithm.
[0068] Perform feature point matching to find similar feature point pairs in different mapped sub-regions;
[0069] Based on the matched feature point pairs, calculate the relative pose of keyframes between different mapped sub-regions;
[0070] Using graph optimization techniques, the keyframe pose is obtained by iteratively minimizing the error.
[0071] By fusing keyframe data, a finely stitched global map is obtained.
[0072] The aforementioned feature point extraction algorithms, such as SIFT, SURF, and ORB, can be used to detect feature points on keyframes. Feature point matching, which identifies similar feature point pairs across different mapping sub-regions, can utilize similarity metrics between feature point descriptors (such as Euclidean distance and Hamming distance) to perform initial matching on keyframes from different mapping sub-regions, finding similar feature point pairs. During the matching process, a matching threshold can be set to filter out point pairs with low matching scores, reducing the complexity and error of subsequent calculations.
[0073] The steps described above, which use graph optimization techniques to iteratively minimize errors and obtain keyframe poses, include the following:
[0074] A graph model is constructed, which includes vertices and edges; wherein, the vertices are the keyframe poses of all graph sub-regions; the edges contain three types of information: the first type is the relative pose constraints of keyframes within the graph sub-regions, the second type is the relative pose constraints of keyframes between graph sub-regions, and the third type is the relative pose constraints of identifiable labels of connected regions of adjacent graph sub-regions.
[0075] Define an error function and use a graph optimization algorithm for iterative optimization. Continuously adjust the pose of the keyframes to minimize the error function until the predetermined convergence condition is met to obtain the keyframe pose.
[0076] The keyframe data fusion described above involves fusing keyframes from different mapping sub-regions based on the optimized pose. During the fusion process, overlapping areas between keyframes need to be addressed to ensure map consistency and continuity. Weighted averaging, multi-view geometry, and other methods can be used to process image data in overlapping areas to reduce stitching errors.
[0077] This invention also provides a storage medium storing a computer program that, when executed by a processor, implements the steps of the aforementioned SLAM map stitching method based on identifiable tags. The computer program involved in the embodiments can be stored in a computer-readable storage medium, including but not limited to disks, magnetic tapes, magnetic cards, floppy disks, flash memory, optical disks, optical cards, read-only memory (ROM), random access memory (RAM), erasable programmable ROM (EPROM), and electrically erasable programmable ROM (EEPROM), etc., as well as other biological, physical, or chemical structures capable of performing similar or equivalent functions to the storage media listed above, such as DNA, RNA, proteins, and other units with information storage capabilities. In specific embodiments, the storage medium can be one of the above-mentioned media types or a combination of the above-mentioned media types. In different embodiments, the computer program involved in the embodiments can be centrally stored in a single medium or distributed across multiple media. The memory containing the computer-readable storage medium can be non-volatile memory or random access memory. These computer device readable storage media can be built into the device or connected to the device of the embodiments as an external device or part of an external device. In some embodiments, the memory having the computer device readable storage media is deployed locally; in other embodiments, the memory can be deployed remotely from the processor, for example, as a network-attached memory accessed via RF circuitry or an external port and a communication network, wherein the communication network can be the Internet, one or more intranets, a local area network (LAN), a wide area network (WLAN), a storage area network (SAN), or a suitable combination thereof, as long as it enables computer device access to the memory. Furthermore, the computer programs involved in the embodiments can be stored in plaintext / ciphertext form or designed as training data, which can be integrated and recombined through model training and implicitly stored in the parameter states of deep neural networks or other machine learning models.
[0078] An electronic device includes a memory and a processor. The memory stores a computer program, which, when executed by the processor, implements the steps of the aforementioned SLAM map stitching method based on identifiable tags. The processor described in this application embodiment can be implemented by hardware, firmware, software, or a combination thereof. It can be a circuit, one or more of an Application Specific Integrated Circuit (ASIC), a Digital Signal Processor (DSP), a Digital Signal Processing Device (DSPD), a Programmable Logic Device (PLD), a Field Programmable Gate Array (FPGA), a Central Processing Unit (CPU), a controller, a microcontroller, or a microprocessor. It also includes other physical, biological, or chemical structures capable of performing similar or equivalent functions to the processors listed above, such as biological neurons, quantum computing units, DNA computing units, etc., thereby enabling the processor to execute some or all of the steps in the computer program or method involved in the various embodiments of this application, or any combination of the steps mentioned therein.
[0079] It should be noted that although the above embodiments have been described herein, this does not limit the scope of patent protection of the present invention. Therefore, any changes and modifications made to the embodiments described herein based on the innovative concept of the present invention, or equivalent structural or procedural transformations made using the content of the present invention's specification and drawings, directly or indirectly applying the above technical solutions to other related technical fields, are all included within the scope of patent protection of the present invention.
Claims
1. A SLAM map stitching method based on identifiable tags, characterized in that, Includes the following steps: Divide the area to be mapped into multiple connectable sub-regions; Identifiable labels are placed in the connected regions of adjacent mapping sub-regions, and each identifiable label has a unique identifier. Receive identifiable tag information detected by the camera, and obtain the pose of each identifiable tag based on the actual size data of each identifiable tag, camera intrinsic parameters and the current pose of the mobile device, and save the identifier and pose of the identifiable tag as the pose feature of the identifiable tag. A preliminary SLAM map is obtained by stitching together multiple mapping sub-regions using the pose features of identifiable labels. The step of obtaining a preliminary SLAM map by stitching together multiple mapping sub-regions using the pose features of identifiable labels includes the following steps: Based on the identifiable label identifiers in the connected regions, generate the adjacency relationships of the mapped sub-regions; Based on the pose characteristics of the same identifiable label identifier in adjacent mapping sub-regions, the spatial transformation matrix of adjacent mapping sub-regions is obtained by the iterative nearest point algorithm. Using a certain mapping sub-region as the reference region, all mapping sub-regions are transformed onto the reference region based on the spatial transformation matrix and Euclidean transformation of adjacent mapping sub-regions to obtain a preliminary SLAM map. In the preliminary SLAM map, feature point matching is performed on similar feature points in different mapped sub-regions, and data fusion is used to obtain the final SLAM map. The steps of performing feature point matching on similar feature points in different mapped sub-regions in the preliminary SLAM map and using data fusion to obtain the final SLAM map include the following steps: For each keyframe of the mapped sub-region, feature points are extracted using a feature point extraction algorithm. Perform feature point matching to find similar feature point pairs in different mapped sub-regions; Based on the matched feature point pairs, calculate the relative pose of keyframes between different mapped sub-regions; The keyframe pose is obtained by iteratively minimizing the error using graph optimization techniques. The steps of obtaining the keyframe pose by iteratively minimizing the error using graph optimization techniques include the following: A graph model is constructed, which includes vertices and edges; wherein the vertices are the keyframe poses of all graph sub-regions; the edges contain three types of information: the first type is the relative pose constraints of keyframes within the graph sub-regions, the second type is the relative pose constraints of keyframes between graph sub-regions, and the third type is the relative pose constraints of identifiable labels of connected regions of adjacent graph sub-regions. Define an error function and use a graph optimization algorithm for iterative optimization. Continuously adjust the pose of the keyframes to minimize the error function until the predetermined convergence condition is met to obtain the keyframe pose. By fusing keyframe data, a finely stitched global map is obtained.
2. The SLAM map stitching method based on identifiable tags according to claim 1, characterized in that, The connected region is the overlapping region of two adjacent mapping sub-regions.
3. The SLAM map stitching method based on identifiable tags according to claim 1, characterized in that, The connected region has at least two identifiable tags.
4. The SLAM map stitching method based on identifiable tags according to claim 1, characterized in that, The step of receiving identifiable tags detected by the camera, obtaining the pose of each identifiable tag based on its actual size data, camera intrinsic parameters, and the current pose of the mobile device, and saving the identifier and pose of the identifiable tag as its pose features, includes the following steps: Receive identifiable tag information detected by the camera, wherein the identifiable tag information includes pixel size data and identifier of the identifiable tag; The relative pose between the mobile device and the identifiable tag is calculated based on the pixel size data of the identifiable tag detected by the camera, the actual size data of the identifiable tag, and the camera intrinsic parameters. The pose of the identifiable tag is obtained by using the current pose of the mobile device and the relative pose of the mobile device and the identifiable tag. The identifier and pose of the identifiable tag are saved as the pose features of the identifiable tag.
5. The SLAM map stitching method based on identifiable tags according to claim 1, characterized in that, The step of generating the adjacency relationships of the mapped sub-regions based on identifiable label identifiers in the connected regions includes the following steps: Iterate through the identifiers of identifiable labels in all mapping sub-regions. If two mapping sub-regions have the same identifier for their identifiable labels, then the two mapping sub-regions are considered to be adjacent.
6. A storage medium, characterized in that: The storage medium stores a computer program, which, when executed by a processor, implements the steps of the SLAM map stitching method based on identifiable tags as described in any one of claims 1-5.
7. An electronic device, characterized in that: It includes a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, it implements the steps of the SLAM map stitching method based on identifiable tags as described in any one of claims 1-5.
Citation Information
Patent Citations
An SLAM map splicing method and system
CN109887053A
Robot autonomous mapping method, device and system, electronic equipment and readable storage medium
CN117422774A
Sequential fusion positioning and mapping method based on multi-stage dynamic point cloud processing
CN118864594A