An Unmanned System Map Construction Method, Device and Medium

The octree-based spatial indexing method for SLAM in unknown environments optimizes map construction by incremental subspace building and key frame updates, addressing inefficiencies and errors in existing SLAM methods, enhancing efficiency and accuracy.

CN115690319BActive Publication Date: 2025-07-15CHONGQING UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211397129.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-09
Publication Date
2025-07-15
Estimated Expiration
2042-11-09

AI Technical Summary

Technical Problem

When the existing SLAM method creates maps in unknown environments, there is a problem of failure in positioning due to large map errors. Especially under factors such as seasonal changes, layout changes and moving objects, loop detection takes a long time and is inefficient.

Method used

The subspace is constructed using incremental bottom-up method, map construction is carried out through the octree space index structure, keyframe data is saved in real time, loopback detection and optimization is performed, search range is reduced, and only key data frames are updated.

Benefits of technology

It improves the efficiency and accuracy of map construction, reduces the amount of computing, avoids long-term operation problems caused by data accumulation, and ensures successful positioning of unmanned systems in unknown environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115690319B_ABST
    Figure CN115690319B_ABST
Patent Text Reader

Abstract

The present invention discloses a method, device and medium for map construction of an unmanned system. The method includes: when the unmanned system is in an unknown environment, setting configuration map space segmentation parameters to construct an octree space index structure; controlling the unmanned system to start moving, scanning environmental data in real time and estimating the real-time pose; according to the current position of the unmanned system after movement, expanding the octree space index structure through incremental space segmentation and saving the scanned key frame data into the current node; during the movement of the unmanned system, searching for the subspace near the current position, performing loop detection and optimization; stacking all the key frame data according to the global pose to form a global point cloud map. The present invention can eliminate the need to predict the boundary of the environment to be measured, reduce the search and comparison range of loop detection, and improve the detection efficiency and success rate.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer vision technology, and in particular to a method, device and medium for constructing a map of an unmanned system. Background Art

[0002] The active exploration technology for unknown environments refers to the ability of an unmanned platform to autonomously search and detect unknown environments in the absence of prior information, collect environmental information, and provide favorable support for subsequent handling. It can be widely applied to dangerous scenarios such as urban bomb disposal, nuclear, biological and chemical environment survey, mine rescue, and asteroid development. The Simultaneous Localization and Mapping (SLAM) algorithm refers to using environmental perception sensors to determine the increment of its own position, thereby determining the position of the entity in the environmental map, and at the same time establishing an environmental point cloud map based on the position information and environmental perception data. Therefore, how to improve the accuracy of the SLAM method through an active path planning method is a hot topic currently studied by scholars.

[0003] In the process of mapping an unknown environment by existing robots applying the SLAM method, they often reduce errors through closed-loop walking and loop detection techniques. In common loop detection, data is often stored linearly and then matched and compared one by one until all data is traversed. This method often takes a lot of time. In many indoor and outdoor scenarios, due to seasonal changes, layout changes, moving objects, etc., the unmanned system fails to locate due to large map errors and inability to match in subsequent work. Summary of the Invention

[0004] The present invention provides a method, device and medium for constructing a map of an unmanned system. The method constructs a subspace in an incremental bottom-up manner, performs loop detection based on space and path, and updates the map by only updating key data frames, optimizing the estimated poses of each key frame, so that it is not necessary to predict the boundary of the environment to be measured, reducing the search and comparison range of loop detection, thereby improving the efficiency and accuracy of map construction.

[0005] To achieve the above object, an embodiment of the present invention provides a method for constructing a map of an unmanned system, including:

[0006] When the unmanned system is in an unknown environment, set the configuration map space segmentation parameters to construct an octree space index structure;

[0007] Control the unmanned system to scan environmental data in real time and estimate the real-time pose, so as to bind the current position of the unmanned system to the first child node in the octree space index structure, and save the scanned key frame data to this child node; wherein, the key frame data of a child node represents the structure of a subspace.

[0008] Control the unmanned system to start moving, scan environmental data in real time, and estimate the real-time pose.

[0009] According to the current position of the unmanned system after movement, expand the octree space index structure through incremental space segmentation, and save the scanned key frame data into the current node.

[0010] During the movement of the unmanned system, search the subspace near the current position for loop detection and optimization.

[0011] Stack all the key frame data according to the global pose to form a global point cloud map.

[0012] Among them, the configuration of the map space segmentation parameters includes the side length of the subspace cube and the maximum number of octree levels.

[0013] Furthermore, the step of expanding the octree space index structure through incremental space segmentation according to the current position of the unmanned system and saving the scanned key frame data into the current node specifically includes:

[0014] Determine the current position of the unmanned system through the real-time pose. If the current position exceeds the space structure that the octree space index structure can describe, add nodes to the octree space index structure through incremental space segmentation, and save the key frame data scanned in the new subspace into the first child node of the newly added node.

[0015] If the current position does not exceed the space structure that the octree space index structure can describe, but the current position crosses subspaces, save the key frame data scanned currently into the corresponding child node of the octree space index structure.

[0016] Optionally, the step of searching the subspace near the current position for loop detection and optimization specifically includes:

[0017] Determine the current position of the unmanned system through the real-time pose, and search for neighboring subspaces based on the current position in space.

[0018] When the subspace is not empty, calculate the first minimum value of the sum of the Euclidean distances of the corresponding point-line features in the two groups of scanned key frame data. When the first minimum value is less than the set threshold, it is determined that the loop detection is successful, perform loop error optimization, and update the pose estimation of each key frame after optimization.

[0019] Optionally, the step of searching the subspace near the current position for loop detection and optimization specifically includes:

[0020] Determine the current position of the unmanned system through the real-time pose, and search for neighboring subspaces based on the current position in space.

[0021] When the subspace is not empty, search for the forward and backward frames on the path of the unmanned system, obtain the key frame registration of the subspace on the path to form a sub-map, calculate the second minimum value of the sum of the Euclidean distances of the corresponding point-line features of the current frame and the key frames in the sub-map. When the second minimum value is less than the set threshold, it is determined that the loop detection is successful, the loop error is optimized, and the pose estimation of each optimized key frame is updated.

[0022] Further, after stacking all the key frame data according to the global pose to form a global point cloud map, it further includes:

[0023] The unmanned system loads the current global point cloud map and configures the map space segmentation parameters;

[0024] Control the unmanned system to start moving, scan the environmental data in real time and estimate the real-time pose, and determine the subspace where the current position is located;

[0025] If the amount of key frame data in the current subspace does not exceed the threshold, directly save the newly scanned key frame data; if the amount of key frame data in the current subspace has exceeded the threshold, delete the old key frame data and save the newly scanned key frame data;

[0026] Perform weighted summation on the key frame data of each subspace to generate composite key frame data;

[0027] Stack the composite key frame data of each subspace according to the global pose to update the global point cloud map.

[0028] Wherein, before performing weighted summation on the key frame data of each subspace to generate composite key frame data, it further includes:

[0029] Assign different weights to the key frame data, and set the weights of the key frame data according to the saved time order; then, the weighted summation of the key frame data of each subspace to generate composite key frame data specifically includes:

[0030] Perform weighted summation on the key frame data of each subspace according to the weights of the key frame data to generate composite key frame data.

[0031] Further, for the weighted summation of the key frame data of each subspace to generate composite key frame data, the calculation formula for generating the composite key frame data is:

[0032]

[0033] Wherein, k is less than or equal to the preset number of data in the octree space index structure, f(·) is an activation function; x i is the i-th key frame data.

[0034] Accordingly, an embodiment of the present invention further provides an unmanned system map construction device, including:

[0035] A configuration data module, configured to set configuration map space segmentation parameters to construct an octree space index structure when the unmanned system is in an unknown environment;

[0036] A determination position module, configured to control the unmanned system to scan environmental data in real time and estimate the real-time pose, so as to bind the current position where the unmanned system is located to the first child node in the octree space index structure, and save the scanned key frame data to this child node; wherein, the key frame data of a child node represents the structure of a subspace;

[0037] A real-time position acquisition module, configured to control the unmanned system to start moving, scan environmental data in real time and estimate the real-time pose;

[0038] An exploration space module, configured to expand the octree space index structure through incremental space segmentation according to the current position after the movement of the unmanned system, and save the scanned key frame data to the current node;

[0039] A loop detection module, configured to search for subspaces near the current position during the movement of the unmanned system, and perform loop detection and optimization;

[0040] A map generation module, configured to stack all key frame data according to the global pose to form a global point cloud map.

[0041] Accordingly, an embodiment of the present invention further provides a computer-readable storage medium, where the computer-readable storage medium includes a stored computer program, and when the computer program runs, it controls the device where the computer-readable storage medium is located to execute the above-mentioned unmanned system map construction method.

[0042] Compared with the prior art, the present invention has the following beneficial effects:

[0043] The present invention constructs a subspace in an incremental bottom-up manner. First, the minimum space size is determined. During the process of the unmanned system exploring the space, new nodes are gradually added to the octree space index structure. This way, it is not necessary to predict the boundaries of the scene to be measured. The present invention provides two modes for loop detection. One is that the present invention adopts the method of spatial nearest neighbor search and performs similarity matching frame by frame. The other is to construct a sub-map based on space and path, and perform similarity matching through the current key frame data and the sub-map. This method only needs to compare the old key frame data in the nearby subspaces, without traversing all the data, greatly reducing the search and comparison range, thereby reducing the computational complexity, improving the efficiency and success rate. When updating the map, the present invention only updates the key data frames and optimizes the estimated poses of the key frames, and then reconstructs the map, thus avoiding various problems caused by simple and rough stitching. In addition, the present invention stores data based on the octree space index structure, determines the total amount of data, and will not cause various problems due to the increasing amount of data during long-term operation. BRIEF DESCRIPTION OF THE DRAWINGS

[0044] Figure 1 is a schematic flowchart of a method for constructing a map of an unmanned system provided by an embodiment of the present invention;

[0045] Figure 2 is the initial octree space index structure in an embodiment of the present invention;

[0046] Figure 3 is the space described by the initial octree space index structure in an embodiment of the present invention;

[0047] Figure 4 is a schematic diagram of space increment in an embodiment of the present invention;

[0048] Figure 5 is the space index structure of octree increment in an embodiment of the present invention;

[0049] Figure 6 is a schematic structural diagram of key frame data synthesis in an embodiment of the present invention;

[0050] Figure 7 is a schematic structural diagram of a device for constructing a map of an unmanned system provided by an embodiment of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0051] The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.

[0052] See Figure 1 , which is a schematic flowchart of a method for constructing a map of an unmanned system provided by an embodiment of the present invention.

[0053] The method for constructing a map of an unmanned system provided by an embodiment of the present invention includes steps S1 to S4, specifically as follows:

[0054] S1. When the unmanned system is in an unknown environment, set configuration map space segmentation parameters to construct an octree space index structure;

[0055] S2. Control the unmanned system to scan environmental data in real time and estimate the real-time pose, so as to bind the current position where the unmanned system is located to the first child node in the octree space index structure, and save the scanned key frame data to this child node; among them, the key frame data of one child node represents the structure of one subspace;

[0056] S3. Control the unmanned system to start moving, scan environmental data in real time and estimate the real-time pose;

[0057] S4. According to the current position of the unmanned system after moving, expand the octree space index structure through incremental space segmentation, and save the scanned key frame data to the current node;

[0058] S5. During the movement of the unmanned system, search for subspaces near the current position, and perform loop detection and optimization;

[0059] S6. Stack all the key frame data according to the global pose to form a global point cloud map.

[0060] Specifically, in step S1, the unmanned system is initialized, the initial pose is obtained by scanning the environment, and when it is determined that the unmanned system is in an unknown environment, the configuration map space segmentation parameters are set.

[0061] Among them, the configuration map space segmentation parameters include the side length of the sub-cube of the subspace and the maximum number of layers of the octree.

[0062] In a specific embodiment, the side length of the sub-cube of the subspace and the maximum number of layers of the octree constrain the subsequent incremental segmentation process and the maximum space size that can be described; among them, the side length of the described maximum space size is:

[0063] L = d * 2 n-1 ;

[0064] Among them, d is the side length of the sub-cube of the subspace, and n is the maximum number of layers of the octree; in the specific application of this embodiment, d is set to 0.5 meters and n is set to 20.

[0065] See Figure 2, which is the initial octree spatial index structure in the embodiments of the present invention.

[0066] See Figure 3 , which is the space that can be described by the initial octree spatial index structure in the embodiments of the present invention.

[0067] Bind according to the constructed octree spatial index structure and the current position to the first child node, and use the Figure 2 octree spatial index structure to express the Figure 3 spatial structure, that is, the child nodes S1 - S8 in the octree spatial index structure in Figure 2 correspond to the sub - spaces S1 - S8 in the Figure 3 space.

[0068] At the initial moment t0, the position of the unmanned system is in the S1 sub - space, and the key - frame data scanned by the unmanned system is saved.

[0069] Furthermore, control the unmanned system to start moving, scan the environmental data in real - time and estimate the real - time pose;

[0070] In step S4, furthermore, according to the current position of the unmanned system, expand the octree spatial index structure through incremental spatial segmentation, and save the scanned key - frame data into the current node, specifically including:

[0071] Determine the current position of the unmanned system through the real - time pose. If the current position exceeds the spatial structure that the octree spatial index structure can describe, increase the nodes of the octree spatial index structure through incremental spatial segmentation, and save the key - frame data scanned in the new sub - space into the first child node of the newly added node;

[0072] If the current position does not exceed the spatial structure that the octree spatial index structure can describe, but the current position crosses sub - spaces, save the key - frame data scanned currently into the corresponding child node of the octree spatial index structure.

[0073] In a specific embodiment, according to the current position of the unmanned system after movement, determine whether the current position exceeds the spatial range that the current octree spatial index structure can describe or whether it crosses the current sub - space.

[0074] See Figure 3 , where, from t0 to t1, it crosses sub - spaces but does not exceed the spatial range that the current octree spatial index structure can describe, then save the key - frame data scanned by the unmanned system in this sub - space into the S2 node.

[0075] See Figure 4, which is a schematic diagram of spatial increment in an embodiment of the present invention. From time t1 to t2, when the unmanned system moves to a spatial range that cannot be described by the current octree spatial index structure, incremental expansion is performed.

[0076] See Figure 5 , which is a spatial index structure of octree increment in an embodiment of the present invention.

[0077] After the expansion is completed, the key frame data scanned by the unmanned system at time t2 in the new subspace is saved in the first node under SB.

[0078] In step S5, optionally, the search for subspaces near the current position for loop closure detection and optimization specifically includes:

[0079] Determine the current position of the unmanned system through real-time pose, and search for neighboring subspaces based on the current position in space;

[0080] When the subspace is not empty, calculate the first minimum value of the Euclidean distance sum of the corresponding point-line features in the key frame data of two groups of scans. When the first minimum value is less than the set threshold, it is determined that the loop closure detection is successful, perform loop closure error optimization, and update the pose estimation of each key frame after optimization.

[0081] Optionally, the search for subspaces near the current position for loop closure detection and optimization specifically includes:

[0082] Determine the current position of the unmanned system through real-time pose, and search for neighboring subspaces based on the current position in space;

[0083] When the subspace is not empty, search for the forward and backward frames on the path of the unmanned system, obtain the key frame registration of the subspace on the path into a sub-map, calculate the second minimum value of the Euclidean distance sum of the corresponding point-line features of the current frame and the key frames in the sub-map. When the second minimum value is less than the set threshold, it is determined that the loop closure detection is successful, perform loop closure error optimization, and update the pose estimation of each key frame after optimization.

[0084] In a specific embodiment, loop closure detection is performed during the movement of the unmanned system, and there are two modes to search and compare nearby subspaces.

[0085] One is to search for subspaces based on spatial neighborhood. When it is found that the subspace is not empty, calculate the first minimum value of the Euclidean distance sum of the corresponding point-line features in the key frame data of two groups of scans, that is, calculate the minimum value of the Euclidean distance sum of the corresponding point-line features in the current frame and the original key frame; when the minimum value is less than the set threshold, it indicates that the similarity of the two groups of scan data is high, and it is determined that the loop closure detection is successful, then perform loop closure error optimization, and update the pose estimation of each key frame after optimization.

[0086] It should be noted that the process of obtaining the minimum value is an iterative optimization process. When the minimum value is still greater than the set threshold, the loop detection is considered to have failed. The loop error optimization means that when the loop detection is successful, the pose error will be obtained and evenly distributed to several previous key frame data.

[0087] The second is based on the space and path search subspace. That is, first, based on the spatial neighbor search subspace. When the key frame data of the subspace is found, the forward and backward frames on the path of the unmanned system are searched, and the key frames of the subspace on the path are registered into a sub-map. The second minimum value of the Euclidean distance sum of the corresponding point-line features of the current frame and the key frames in the sub-map is calculated. When the second minimum value is less than the set threshold, the loop detection is determined to be successful, the loop error is optimized, and the optimized pose estimates of each key frame are updated.

[0088] It should be noted that during the movement of the unmanned system, the key frame data of the subspace is continuously stacked according to the global pose to form a global point cloud map.

[0089] Optionally, after step S6, the method provided by the embodiment of the present invention further includes steps S7 to S11:

[0090] S7, the unmanned system loads the current global point cloud map and configures the map space segmentation parameters;

[0091] S8, control the unmanned system to start moving, scan the environmental data in real time and estimate the real-time pose, and determine the subspace where the current position is located;

[0092] S9, if the amount of key frame data in the current subspace does not exceed the threshold, directly save the newly scanned key frame data; if the amount of key frame data in the current subspace has exceeded the threshold, delete the old key frame data and save the newly scanned key frame data;

[0093] S10, perform weighted summation on the key frame data of each subspace to generate synthetic key frame data;

[0094] S11, stack the synthetic key frame data of each subspace according to the global pose to update the global point cloud map.

[0095] Specifically, when the unmanned system still needs to continue to operate in this scenario, it is necessary to continuously update the map in this scenario.

[0096] In a specific embodiment, when the unmanned system is initialized and the initial pose is obtained by scanning the environment, when it is determined that the unmanned system is in a known environment, the current global point cloud map and the map space segmentation parameters are loaded;

[0097] Before weighted summation of the key-frame data of each subspace to generate synthetic key-frame data, the following steps are further included:

[0098] Assign different weights to the key-frame data and set the weights of the key-frame data according to the saved time sequence. Then, the weighted summation of the key-frame data of each subspace to generate synthetic key-frame data specifically includes:

[0099] Perform weighted summation of the key-frame data of each subspace according to the weights of the key-frame data to generate synthetic key-frame data.

[0100] See Figure 6 , which is a schematic structural diagram of key-frame data synthesis in an embodiment of the present invention.

[0101] The weighted summation of the key-frame data of each subspace to generate synthetic key-frame data, and the calculation formula for generating synthetic key-frame data is:

[0102]

[0103] where k is less than or equal to the preset number of data in the octree space index structure, f(·) is the output activation function; x i is the i-th key-frame data.

[0104] Specifically, in the octree space index structure, a child node corresponds to a subspace, and n key-frame data can be saved. When the unmanned system subsequently moves to this subspace, the newly scanned key-frame data is saved. When the data volume is greater than n, the earliest saved data is discarded; and different weights are assigned to the n-frame data, with the new data having a larger weight and the old data having a smaller weight. The n-frame data is weighted and combined to be used as the synthetic key-frame data of this subspace.

[0105] It should be noted that during the movement of the unmanned system, the synthetic key-frame data of all subspaces is stacked according to the global pose to update the global point cloud map of the current scene.

[0106] In summary, the method for constructing a map of an unmanned system provided by the embodiments of the present invention constructs subspaces in an incremental bottom-up manner. First, the minimum space size is determined. During the process of the unmanned system exploring the space, new nodes are gradually added to the octree space index structure. This method can avoid the need to predict the boundaries of the scene to be measured. The present invention provides two modes for loop detection. One is that the present invention uses the method of spatial neighbor search and performs similarity matching frame by frame. The other is to construct a submap based on space and path, and perform similarity matching between the current key frame data and the submap. This method only needs to compare the old key frame data of the nearby subspaces, without traversing all the data, greatly reducing the search and comparison range, thereby reducing the computational complexity and improving the efficiency and success rate. When updating the map, the present invention only updates the key data frames and optimizes the estimated poses of the key frames, and then reconstructs a more accurate map.

[0107] Correspondingly, the embodiments of the present invention provide an apparatus for constructing a map of an unmanned system, which can implement all the processes of the method for constructing a map of an unmanned system provided by any of the above embodiments. The functions and the achieved technical effects of each module and unit in the apparatus are respectively the same as those of the method for constructing a map of an unmanned system provided by the above embodiments, and will not be described in detail here.

[0108] See Figure 7 , which is a schematic structural diagram of an apparatus for constructing a map of an unmanned system provided by the embodiments of the present invention.

[0109] The apparatus for constructing a map of an unmanned system includes:

[0110] A configuration data module 11, configured to set configuration map space segmentation parameters to construct an octree space index structure when the unmanned system is in an unknown environment;

[0111] A position determination module 12, configured to control the unmanned system to scan environmental data in real time and estimate the real-time pose, so as to bind the current position where the unmanned system is located to the first child node in the octree space index structure, and save the scanned key frame data to the child node; wherein, the key frame data of one child node represents the structure of one subspace.

[0112] A real-time position acquisition module 13, configured to control the unmanned system to start moving, scan environmental data in real time, and estimate the real-time pose;

[0113] A space exploration module 14, configured to expand the octree space index structure through incremental space segmentation according to the current position after the movement of the unmanned system, and save the scanned key frame data to the current node;

[0114] The loop detection module 15 is configured to search for a subspace near the current position during the movement of the unmanned system, and perform loop detection and optimization.

[0115] The map generation module 16 is configured to stack all key frame data according to the global pose to form a global point cloud map.

[0116] An embodiment of the present invention further provides a computer-readable storage medium, which includes a stored computer program. Wherein, the computer program controls the device where the computer-readable storage medium is located to execute the unmanned system map construction method described in any one of the above embodiments when running.

[0117] Through the description of the above embodiments, those skilled in the art can clearly understand that the present invention can be implemented by means of software plus a necessary hardware platform, and of course, it can also be implemented entirely by hardware. Based on such an understanding, all or part of the technical solution of the present invention that contributes to the background art can be embodied in the form of a software product. This computer software product can be stored in a storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in various embodiments or some parts of the embodiments of the present invention.

[0118] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed by the present invention, and all of them should be covered by the protection scope of the present invention. Therefore, the protection scope of the present invention should be subject to the protection scope of the claims.

Claims

1. A method for constructing a map of an unmanned system, characterized in that, Including: When the unmanned system is in an unknown environment, set the configuration map space segmentation parameters to construct an octree space index structure; Control the unmanned system to scan environmental data in real time and estimate the real-time pose, so as to bind the current position where the unmanned system is located to the first child node in the octree space index structure, and save the scanned key frame data to this child node; among them, the key frame data of one child node represents the structure of one subspace; Control the unmanned system to start moving, scan environmental data in real time and estimate the real-time pose; According to the current position of the unmanned system after movement, expand the octree space index structure through incremental space segmentation, and save the scanned key frame data to the current node; During the movement of the unmanned system, search for subspaces near the current position, and perform loop detection and optimization; Stack all key frame data according to the global pose to form a global point cloud map; The search for subspaces near the current position, and the performance of loop detection and optimization specifically includes: Determine the current position of the unmanned system through the real-time pose, and search for neighboring subspaces based on the current position in space; When the subspace is not empty, calculate the first minimum value of the sum of the Euclidean distances of the corresponding point-line features in the key frame data of two groups of scans. When the first minimum value is less than the set threshold, it is determined that the loop detection is successful, perform loop error optimization, and update the pose estimation of each key frame after optimization.

2. The method for constructing a map of an unmanned system according to claim 1, wherein After stacking all key frame data according to the global pose to form a global point cloud map, it further includes: The unmanned system loads the current global point cloud map and the configuration map space segmentation parameters; Control the unmanned system to start moving, scan environmental data in real time and estimate the real-time pose, and determine the subspace where the current position is located; If the amount of key frame data in the current subspace does not exceed the threshold, directly save the newly scanned key frame data; if the amount of key frame data in the current subspace has exceeded the threshold, delete the old key frame data and save the newly scanned key frame data; Perform weighted summation on the key frame data of each subspace to generate composite key frame data; Stack the composite key frame data of each subspace according to the global pose to update the global point cloud map.

3. A method for constructing a map of an unmanned system according to claim 1 or 2, characterized in that, The configuration map space segmentation parameters include the side length of the subcube of the subspace and the maximum number of layers of the octree.

4. The method for constructing a map of an unmanned system according to claim 1, characterized in that, The expanding the octree space index structure through incremental space segmentation according to the current position of the unmanned system, and saving the scanned key frame data to the current node specifically includes: Determine the current position of the unmanned system through the real-time pose. If the current position exceeds the space structure that the octree space index structure can describe, increase the nodes of the octree space index structure through incremental space segmentation, and save the key frame data scanned from the new subspace to the first child node in the newly added node; If the current position does not exceed the space structure that the octree space index structure can describe, but the current position spans subspaces, save the currently scanned key frame data to the corresponding child node of the octree space index structure.

5. The method for constructing a map of an unmanned system according to claim 1, characterized in that, Search the subspace near the current position, perform loop detection and optimization, specifically including: Determine the current position of the unmanned system through real-time pose, and search for the neighboring subspace based on the current position in space; When the subspace is not empty, search for the forward and backward frames on the path of the unmanned system, obtain the key frames of the subspace on the path, register them into a sub-map, calculate the second minimum value of the Euclidean distance sum of the corresponding point-line features of the current frame and the key frames in the sub-map. When the second minimum value is less than the set threshold, it is determined that the loop detection is successful, perform loop error optimization, and update the pose estimation of each key frame after optimization.

6. The method for constructing a map of an unmanned system according to claim 2, wherein, Before generating the synthetic key frame data by weighted summation of the key frame data of each subspace, it further includes: Assign different weights to the key frame data, and set the weights of the key frame data according to the saved time order; then, generating the synthetic key frame data by weighted summation of the key frame data of each subspace specifically includes: According to the weights of the key frame data, perform weighted summation of the key frame data of each subspace to generate synthetic key frame data.

7. The method for constructing a map of an unmanned system according to claim 2, wherein The formula for generating the synthetic key frame data by weighted summation of the key frame data of each subspace is: ; Where k is less than or equal to the preset number of data in the octree spatial index structure. f (·) is the output activation function; is the data of the i-th key frame.

8. An unmanned system map construction device, characterized in that, Including: A configuration data module, used to set configuration map space segmentation parameters to construct an octree space index structure when the unmanned system is in an unknown environment; A position determination module, used to control the unmanned system to scan environmental data in real time and estimate the real-time pose, so as to bind the current position of the unmanned system to the first child node in the octree space index structure, and save the scanned key frame data to this child node; among them, the key frame data of a child node represents the structure of a subspace; A real-time position acquisition module, used to control the unmanned system to start moving, scan environmental data in real time and estimate the real-time pose; An exploration space module, used to expand the octree space index structure by incremental space segmentation according to the current position of the unmanned system after moving, and save the scanned key frame data to the current node; A loop detection module, used to search the subspace near the current position during the movement of the unmanned system, perform loop detection and optimization; A map generation module, used to stack all key frame data according to the global pose to form a global point cloud map; Search the subspace near the current position, perform loop detection and optimization, specifically including: Determine the current position of the unmanned system through real-time pose, and search for the neighboring subspace based on the current position in space; When the subspace is not empty, calculate the first minimum value of the Euclidean distance sum of the corresponding point-line features in the two groups of scanned key frame data. When the first minimum value is less than the set threshold, it is determined that the loop detection is successful, perform loop error optimization, and update the pose estimation of each key frame after optimization.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored computer program, wherein when the computer program runs, it controls the device where the computer-readable storage medium is located to execute the unmanned system map construction method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Semantic map construction method based on visual SLAM

    CN110781262A

  • Octree map construction method based on closed-loop trajectory

    CN114708392A