2D laser radar positioning and mapping method and system

By using 2D LiDAR localization method, grid map matching and loop closure detection are used to optimize pose, solving the localization and mapping problem of traditional SLAM technology under conditions without wheel odometry, and realizing accurate localization and mapping of the robot when the tires slip or the ground is bumpy.

CN116165627BActive Publication Date: 2026-06-26SHANGHAI SEER INTELLIGENT TECHNOLOGY CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHANGHAI SEER INTELLIGENT TECHNOLOGY CO LTD
Filing Date
2023-02-28
Publication Date
2026-06-26

AI Technical Summary

Technical Problem

Traditional SLAM technology suffers from insufficient accuracy in robot localization and mapping under conditions without wheeled odometry, especially when the tires are slipping or the ground is bumpy, making it impossible to accurately obtain position information.

Method used

A 2D LiDAR positioning method is adopted. By building a grid map based on point cloud data, the estimated pose of the current scan frame is calculated, and the pose is optimized by grid map matching and loop closure detection to construct a pose map, thus solving the positioning and mapping problem under wheelless odometer.

Benefits of technology

This technology enables robots to obtain relatively accurate pose information and construct precise maps even without wheeled odometry, thus overcoming the shortcomings of traditional SLAM technology.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116165627B_ABST
    Figure CN116165627B_ABST
Patent Text Reader

Abstract

The application provides a 2D laser radar positioning and mapping method and system, wherein the positioning method comprises the following steps: S100, a grid map is established based on point cloud data scanned by a 2D laser radar, and an estimated pose of a current scanning frame is calculated; S200, the grid map of the current scanning frame is matched with a grid map of a key frame at a previous moment, so as to optimize the estimated pose of the current scanning frame; and S300, a pose graph is constructed according to the pose obtained in step S200, loop detection is performed by using a time delay decision, and the estimated poses of all scanning frames are optimized again. Thus, the positioning and mapping problem of a robot under a non-wheel odometer is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to robot positioning and navigation technology, and more particularly to a 2D lidar positioning and mapping method and system that does not rely on odometry. Background Technology

[0002] Simultaneous Localization and Mapping (SLAM) is a technology primarily used to solve the problem of robot localization and mapping in unknown environments. It involves the robot starting from an unknown point in an unknown scene, determining its own pose based on repeatedly observed map features during movement, and then incrementally building a map based on its own pose, thus achieving simultaneous localization and environmental mapping. Various robust methods for localization and mapping have been proposed over the past few decades; however, many challenges remain in practical applications.

[0003] For example, many laser SLAM methods rely on wheeled odometry for localization and mapping. However, the accuracy of this method largely depends on calibration. Good calibration can achieve high accuracy, but when tires slip or the ground is uneven, it can cause inaccurate robot pose estimation. Furthermore, this approach fails when wheeled odometry information is unavailable. Summary of the Invention

[0004] Therefore, the main objective of this invention is to provide a 2D lidar positioning and mapping method and system to solve the positioning and mapping problem of robots without wheeled odometers.

[0005] To achieve the above objectives, according to a first aspect of the present invention, a 2D lidar positioning method is provided, comprising the steps of:

[0006] Step S100: Based on the point cloud data scanned by 2D LiDAR, establish a grid map and calculate the estimated pose of the current scan frame;

[0007] Step S200: Match the raster map of the current scan frame with the raster map of the key frame at the previous time step to optimize the estimated pose of the current scan frame.

[0008] Step S300: Based on the pose obtained in step S200, construct a pose graph to filter out a candidate loop closure set and use delay decision to perform loop closure detection to further optimize the estimated pose of all scan frames.

[0009] In a possible preferred embodiment, step S100, the step of calculating the estimated pose of the current scan frame includes: calculating the estimated pose of the current scan frame based on the pose transformation matrix in the initial time segment, and calculating the estimated pose of the current scan frame based on the function fitting curve method in subsequent time segments.

[0010] In a possible preferred embodiment, step S200 further includes determining whether the current scan frame is a key frame before performing grid map matching; if it is, skip the grid map matching process.

[0011] In a possible preferred embodiment, step S200, which involves matching the raster map of the current scan frame with the raster map of the keyframe at a previous time step, includes:

[0012] Step S201: Save all keyframe data within a certain distance range to construct a sliding window and generate a local map; construct a probabilistic raster map using high and low resolutions, where each low-resolution probabilistic raster map block m covers multiple corresponding high-resolution probabilistic raster map blocks M; and assign the maximum probability value among the corresponding multiple blocks M to m;

[0013] Step S202 uses the branch and bound method to traverse and scan the current scan frame with the local map to obtain the corresponding optimal estimated pose as the estimated pose of the current scan frame.

[0014] In a possible preferred embodiment, step S300, the step of filtering out a candidate loop closure set and performing loop closure detection using a delay decision to further optimize the estimated pose of all scan frames, includes:

[0015] Step S301: Store the scan frames that participate in loop closure detection as historical frames, and search for all scan frames that are spatiotemporally adjacent to the current scan frame in the vertices of the pose graph, and denot them as the neighboring frame set.

[0016] Step S302: Traverse all historical frames that form a closed loop in chronological order, and add historical frames that are close to the current scan frame to the candidate closed loop frame set.

[0017] Step S303: When any historical frame is found to belong to the set of neighboring frames, clear the current candidate closed loop set and continue to traverse the remaining historical frames.

[0018] Step S304 repeats steps S301 to S303 until the number of candidate loop closures reaches the target. Then, loop closures are searched in the candidate loop closure set to perform graph optimization and update the estimated pose of all scan frames.

[0019] In a possible preferred embodiment, step S304, the step of searching for closure loops in the candidate closed-loop set, includes:

[0020] Step S314: The current scan frame in the candidate loop closure set is concatenated with multiple scan frames from previous times to form a two-dimensional grid subgraph for loop closure detection.

[0021] In a possible preferred embodiment, step S304, the step of searching for closure loops in the candidate closed-loop set, includes:

[0022] Step S315 When it is found that the scanning scenes between some pose graph vertices are similar but no loop closure observation is formed, a delay decision is made to temporarily store the information of these pose graph vertices until other pose graph vertices are subsequently observed to have similar scanning scenes to the temporarily stored pose graph vertices and form a loop closure observation, then a decision is made to consider that a loop closure has been detected.

[0023] To achieve the above objective, according to a second aspect of the present invention, a 2D lidar mapping method independent of odometers is also provided, comprising the following steps:

[0024] After executing any of the 2D LiDAR localization methods described above and obtaining the final optimized estimated pose of the scan frame, a map is constructed.

[0025] To achieve the above objectives, according to a third aspect of the present invention, a 2D lidar positioning system is also provided, comprising:

[0026] The storage unit is used to store a program including the steps of the 2D lidar positioning method as described above, so that the control unit and the processing unit can retrieve and execute it as needed.

[0027] The control unit is used to manipulate the 2D laser laser to acquire point cloud data of the scanned scene and send it to the processing unit;

[0028] The processing unit is used to acquire point cloud data and build a raster map, calculate the estimated pose of the current scan frame based on the pose transformation matrix in the initial time segment, and calculate the estimated pose of the current scan frame based on the function fitting curve method in subsequent time segments; at the same time, it matches the raster map of the current scan frame with the raster map of the key frame in the previous time segment to optimize the estimated pose of the current scan frame.

[0029] The processing unit further constructs a pose graph based on the obtained pose and uses delay decision to perform loop closure detection in order to optimize the estimated pose of all scan frames again.

[0030] In a possible preferred embodiment, the processing unit further constructs a map based on the estimated poses of all the finally optimized scan frames.

[0031] The 2D LiDAR localization and mapping method and system provided by this invention solves the problem that traditional mobile robots cannot perform localization and mapping without wheeled odometers. This allows the mobile robot to obtain relatively accurate pose information even when wheeled odometer information is unavailable due to tire slippage or uneven ground, and thus construct a precise map. This overcomes the shortcomings of traditional SLAM technology. Attached Figure Description

[0032] The accompanying drawings, which form part of this application, are used to provide a further understanding of the invention. The illustrative embodiments of the invention and their descriptions are used to explain the invention and do not constitute an undue limitation of the invention. In the drawings:

[0033] Figure 1 This is a schematic diagram of the positioning method steps of the present invention;

[0034] Figure 2 This is a schematic diagram illustrating the method for estimating the pose of the current scan frame using a function fitting curve-based positioning method in the present invention.

[0035] Figure 3 This is a schematic diagram illustrating the use of multiple frames to construct a sliding window in the positioning method of the present invention;

[0036] Figure 4 This is a schematic diagram illustrating the use of low-resolution and high-resolution methods to construct a rasterized map in the positioning method of the present invention;

[0037] Figure 5 This is a schematic diagram illustrating the use of branch delimitation in the positioning method of the present invention to accelerate search matching;

[0038] Figure 6 This is a schematic diagram illustrating the construction of a subgraph in the localization method of the present invention to solve the problem of erroneous loop closure detection caused by similar scene structures;

[0039] Figure 7 This is a schematic diagram illustrating an example of delay decision-making in the positioning method of the present invention;

[0040] Figure 8 This is a schematic diagram showing the experimental comparison of the positioning method and mapping method of the present invention;

[0041] Figure 9 This is a schematic diagram of the positioning system structure of the present invention. Detailed Implementation

[0042] To enable those skilled in the art to better understand the technical solutions of the present invention, the specific technical solutions of the present invention will be clearly and completely described below in conjunction with embodiments, so as to help those skilled in the art further understand the present invention. Obviously, the embodiments described in this application are merely some embodiments of the present invention, and not all embodiments. It should be noted that, for those skilled in the art, the embodiments and features in the embodiments of this application can be combined with each other without departing from the concept of the present invention and without conflict. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the disclosure and protection scope of the present invention.

[0043] Furthermore, the terms "first," "second," "S1," "S2," etc., used in the specification, claims, and drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of the invention described herein can be implemented in orders other than those described herein. At the same time, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. Unless otherwise expressly specified and limited, the terms "set," "arranged," "installed," "connected," and "linked" should be interpreted broadly, for example, as a fixed connection, a detachable connection, or an integral connection; a mechanical connection or an electrical connection; a direct connection or an indirect connection through an intermediate medium; or a connection within two elements. Those skilled in the art can understand the specific meaning of the above terms in this case based on the specific circumstances and in conjunction with existing technology.

[0044] Please see Figures 1 to 8 As shown, the 2D lidar positioning method provided by the present invention includes the following steps:

[0045] Step S100: Based on the point cloud data scanned by 2D LiDAR, establish a grid map and calculate the estimated pose of the current scan frame.

[0046] Specifically, after acquiring point cloud data, the example constructs an occupied grid map, using p(s=1) to represent the probability of a traversed state and p(s=0) to represent the probability of an occupied state. The ratio of these two probabilities represents the grid state.

[0047]

[0048] When the observation values ​​of 2D lidar are acquired Then, the relevant grids need to update their grid states.

[0049]

[0050] This indicates the state of s under the measured value.

[0051] Furthermore, in step S100, the step of calculating the estimated pose of the current scan frame includes: calculating the estimated pose of the current scan frame based on the pose transformation matrix in the initial time segment, and calculating the estimated pose of the current scan frame based on the function fitting curve method in subsequent time segments.

[0052] Specifically, the initial time mentioned in this example can be understood as the initial few frames of the scan. For example, if the number of initial scan frames is three frames, the pose transformation matrix R is calculated based on the poses of scan times t1 and t2, and the pose of t2 is transformed to estimate the pose of the current time t3. Here, t1 is the time before t3, t2 is the time before t3, and t3 is the current time.

[0053] The reason for this design is that, since there is no prior reference information for pose transformation in the first three frames, their predicted poses are the same as those in the first frame, and the poses are directly updated by subsequent scan matching algorithms. However, for the several frames starting from the fourth frame, due to insufficient frame count, the trajectory after interpolation fitting may have some deviations. Therefore, the predicted pose of the current frame needs to be obtained by applying the pose transformation matrix of the previous frame relative to the frame before that to the previous frame.

[0054] When the number of scanned frames is greater than three, in order to obtain a more accurate pose estimate for each frame, it is necessary to estimate the pose of the current frame based on a function fitting curve method.

[0055] The number of pose points in the function fitting curve is related to the robot's motion speed. Faster-moving robots use fewer pose points for the fitting curve, while slower-moving robots use more. First, the approximate motion speed of the robot at the current moment is calculated by the ratio of the distance between robot poses over a previous period to the timestamp. Then, the number of pose points *n* used for the fitting curve is determined. The selected function is... There are six parameters to be determined: A, B, C, D, E, and F. The n sets of measurement data constitute an overdetermined system of equations, which can be solved using the least squares method.

[0056] To more accurately fit the robot's motion trajectory within the current time period, it is necessary to use pose data from multiple keyframes preceding the current frame to solve for the function's parameters. The fitted curve trajectory is then used to predict the pose of the current frame (e.g., ...). Figure 2 (As shown).

[0057] Keyframes are representative frames captured during the robot's movement. Using keyframes reduces information redundancy between adjacent frames. Keyframes are typically determined based on the following three principles:

[0058] Determine the time interval between the current frame and the previous keyframe. If the time interval is too small, the current frame is not suitable as a keyframe.

[0059] Determine the actual distance between the current frame and the previous keyframe. If the distance is too close, the current frame is not suitable as a keyframe.

[0060] Determine the number of points of common view between the current frame and the established local map. If the proportion of points of common view is large, then the current frame is not suitable as a keyframe.

[0061] Step S200: Match the raster map of the current scan frame with the raster map of the key frame at the previous time step to optimize the estimated pose of the current scan frame.

[0062] Specifically, in step S200, it is preferable to determine whether the current scan frame is a key frame before performing grid map matching. If it is, skip the grid map matching and filter out some redundant frames.

[0063] Furthermore, in step S200, the step of matching the raster map of the current scanned frame with the raster map of the keyframe at the previous time step includes:

[0064] Step S201: Save all keyframe data within a certain distance range to construct a sliding window and generate a local map; construct a probabilistic raster map using high and low resolutions, where each low-resolution probabilistic raster map block m covers multiple corresponding high-resolution probabilistic raster map blocks M; and assign the maximum probability value among the corresponding multiple blocks M to m.

[0065] Step S202 uses the branch and bound method to traverse and scan the current scan frame with the local map to obtain the corresponding optimal estimated pose as the estimated pose of the current scan frame.

[0066] Specifically, in this example, during the matching phase, a correct scanning matching algorithm is used to match frames with the map. Methodologically, a sliding window is first constructed to generate a local map (e.g., ...). Figure 3 (As shown). A queue is used to store radar data for all frames within a certain distance range.

[0067] For example, a local map with a sliding window is generated by saving all radar data in this queue as a raster map with a resolution of 0.01, setting the hit points in the map to 100 and the passed points to 0. The current scan frame is then matched with the generated local raster map.

[0068] In step S100, we obtained a rough estimated pose, but we still need to obtain a more accurate predicted pose. Therefore, a search space needs to be constructed in the vicinity of the estimated pose. Theoretically, the larger the search range, the easier it is to find a relatively accurate pose estimate.

[0069] For example, optimal estimation can be achieved by brute-force searching a raster map to match the robot pose with the highest score. Constructing a multi-resolution lookup table, performing coarse registration followed by fine registration, can accelerate the entire search process. Figure 4 As shown, a low-resolution raster map m is constructed by rasterizing the map at a certain low resolution. Then, a new probabilistic raster map is constructed by increasing the resolution. .like Figure 4 In the diagram, four small grids m form a large grid M. We assign the value with the highest probability among the four small grids to the corresponding large grid M.

[0070] Then, the current frame is used to scan and match with the local map, employing both coarse and fine matching to improve search efficiency, and branch delimitation is used to accelerate the search and matching process. For example... Figure 5 As shown, first, the low-resolution graticules are traversed to find the largest graticule M with the highest score. Then, the corresponding high-resolution small graticule m in the largest graticule M with the highest score is traversed, and the smallest graticule m with the highest score is found and denoted as . .

[0071] Next, iterate through the remaining low-resolution large grids M, and if the score of the j-th low-resolution large grid M is... < If it is, then continue iterating to the next one; otherwise... > Then iterate through all the corresponding high-resolution small grids m in the low-resolution large grid M. If the score of a certain high-resolution grid is... > Then Updated to Otherwise, continue iterating to the next one.

[0072] Finally, the position with the highest matching response value is taken as the current position of the mobile robot, thereby optimizing the estimated pose of the current scan frame.

[0073] Specifically, the highest matching response value obtained in steps S201-S202 is the estimated optimal pose. To quantify the currently estimated optimal pose... To determine reliability, a true Gaussian probability distribution is fitted based on the score distribution across the entire map search space, and the covariance matrix is ​​calculated. The covariance matrix can be used to quantitatively evaluate the uncertainty of the optimal pose.

[0074] For a multivariate variable x, the mean is denoted as u = E(x).

[0075] The covariance matrix is ​​then:

[0076]

[0077] Calculate the scores for all points and then calculate the covariance matrix.

[0078]

[0079] The K-covariance matrix is:

[0080] Where K is the formula u is u = E(x), s is the sum of all probability values, and p is the probability in step S100. For x i In the j-th estimated pose, m is the map, z is the observed laser point, and u is the motion measurement between the two positions. Since it does not depend on the wheel odometer, u here is the pose transformation obtained in step S100.

[0081] Step S300: Based on the pose obtained in step S200, construct a pose graph to filter out a candidate loop closure set and use delay decision to perform loop closure detection to further optimize the estimated pose of all scan frames.

[0082] Specifically, the construction of the pose graph involves first adding vertices to the pose graph, and then adding edges using existing methods to prepare for loop closure detection and backend optimization. The inventive concept in this case attempts to perform loop closure detection using a graph-to-graph loop closure detection strategy and a delay decision strategy. The purpose of loop closure detection is to determine whether the scene scanned in the current frame has appeared in the map before; if it has, a loop is formed, and this constraint is used to reduce the cumulative error in the graph construction.

[0083] For example, in step S300, a delay decision is used for loop closure detection to further optimize the estimated pose of all scan frames. An example of this step includes:

[0084] Step S301: Store the scan frames that participate in loop closure detection as historical frames, and search for all scan frames that are spatiotemporally adjacent to the current scan frame in the vertices of the constructed pose graph, and denot them as the neighboring frame set.

[0085] Step S302: Traverse all historical frames that form a closed loop in chronological order, and add historical frames that are close to the current scan frame to the candidate closed loop frame set.

[0086] Step S303: When any historical frame is found to belong to the set of neighboring frames, clear the current candidate closed loop set and continue to traverse the remaining historical frames.

[0087] Step S304 repeats steps S301 to S303 until keyframes that are spatially close but temporally distant are finally left, and the number of candidate loop closures reaches the target. Then, loop closures are searched in the candidate loop closure set to perform graph optimization and update the estimated pose of all scan frames.

[0088] Specifically, loop closure detection typically uses frame-to-frame matching or frame-to-map matching. For example... Figure 6 As shown in Figures a and b, these two different maps have similar scene structures within the dashed boxes. During matching, there may be a situation where a scene scanned in a certain frame happens to match both of these dashed maps, resulting in an incorrect match.

[0089] To address this, the inventors considered that matching a large-scale map composed of multiple consecutive frames could eliminate such erroneous matches. Therefore, in a further example, step S304, the step of searching for loop closures in the candidate loop closure set, includes:

[0090] Step S314: The current scan frame in the candidate loop closure set is concatenated with multiple scan frames from previous times to form a two-dimensional grid subgraph for loop closure detection.

[0091] By constructing subgraphs, redundant data between adjacent frames can be removed. Since subgraphs contain a large amount of information from multiple frames of scan data, covering a wide range, they can address the issue of redundant data between similar scene structures. Figure 6 This improves the accuracy of recognition by detecting erroneous loop closures caused by loop closures.

[0092] Furthermore, in scenarios with similar structures, robots are also prone to loop closure detection errors. Therefore, using a delayed decision processing strategy can effectively solve this problem. To this end, step S304 of this embodiment, the step of searching for loop closures in the candidate loop closure set, further includes:

[0093] Step S315 When it is found that the scanning scenes between some pose graph vertices are similar but no loop closure observation is formed, a delay decision is made to temporarily store the information of these pose graph vertices until other pose graph vertices are subsequently observed to have similar scanning scenes to the temporarily stored pose graph vertices and form a loop closure observation, then a decision is made to consider that a loop closure has been detected.

[0094] For example, such as Figure 7 As shown, the robot moves along the direction d->a->b->c. When the robot detects similar scenes at points a and b, it doesn't make a judgment immediately but saves the information at points a and b. Then, when the robot continues moving to point c and observes a scene similar to that at point d, it then decides that a loop has been detected. For example, as... Figure 7 The pose transformation matrices for the four points a, b, c, and d shown are: .like This indicates that a correct loopback has been detected.

[0095] By using this delayed decision-making method, loop closure detection errors can be effectively avoided, thereby improving the accuracy of judgment.

[0096] Finally, the detected loop closures and the pose graph constructed in step S300 are used to optimize the SPA graph. The solution is to use height optimization and non-iterative Cholesky matrix to decouple the sparse system, and then update the estimated pose of each frame.

[0097] Corresponding to the above method embodiments, the present invention also provides a 2D lidar mapping method that does not rely on an odometer, the steps of which include:

[0098] After executing the 2D LiDAR localization method described in the example above and obtaining the final optimized estimated pose of the scan frame, a map is constructed.

[0099] Experimental Example

[0100] The example method was tested using a dataset. The computer used in the experiment had the following configuration: Ubuntu 18.04 system, i7-11800H CPU with a base frequency of 2.30GHz, and 16GB of memory. Localization and mapping experiments were conducted on the same dataset using both existing wheeled odometry mapping and localization methods and the example method presented in this paper.

[0101] like Figure 8 The figures shown are comparison results of the two methods in different scenarios. The experiments show that the method of the present invention can perform positioning and mapping without relying on wheel odometers, and the effect is basically the same as the method with odometers.

[0102] like Figure 9 As shown, corresponding to the above method example, the present invention also provides a 2D lidar positioning system, which includes:

[0103] The storage unit is used to store a program including the steps of the 2D LiDAR positioning method as described in the example above, so that the control unit and the processing unit can retrieve and execute it as needed.

[0104] The control unit is used to manipulate the 2D laser to acquire point cloud data of the scanned scene and send it to the processing unit.

[0105] The processing unit is used to acquire point cloud data and build a raster map, calculate the estimated pose of the current scan frame based on the pose transformation matrix in the initial time segment, and calculate the estimated pose of the current scan frame based on the function fitting curve method in subsequent time segments; at the same time, it matches the raster map of the current scan frame with the raster map of the key frame in the previous time segment to optimize the estimated pose of the current scan frame.

[0106] The processing unit further constructs a pose graph based on the obtained pose and uses delay decision to perform loop closure detection in order to optimize the estimated pose of all scan frames again.

[0107] In a further embodiment, the processing unit further constructs a map based on the estimated poses of all the finally optimized scan frames.

[0108] In summary, the 2D LiDAR localization and mapping method and system provided by this invention solves the problem that traditional mobile robots cannot perform localization and mapping without wheeled odometers. This allows the mobile robot to obtain relatively accurate pose information even when wheeled odometer information is unavailable due to tire slippage or uneven ground, and thus construct a precise map. This overcomes the shortcomings of traditional SLAM technology.

[0109] The preferred embodiments of the present invention disclosed above are merely illustrative of the invention. These preferred embodiments do not exhaustively describe all details, nor do they limit the invention to the specific implementations described. Clearly, many modifications and variations can be made based on the content of this specification. This specification selects and specifically describes these embodiments to better explain the principles and practical applications of the invention, thereby enabling those skilled in the art to better understand and utilize the invention. The present invention is limited only by the claims and their full scope and equivalents. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the invention should be included within the protection scope of the invention.

[0110] Those skilled in the art will understand that, besides implementing the system, apparatus, and their modules provided by this invention in purely computer-readable program code, the same program can be implemented in the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers by logically programming the method steps. Therefore, the system, apparatus, and their modules provided by this invention can be considered a hardware component, and the modules included therein for implementing various programs can also be considered structures within the hardware component; alternatively, modules for implementing various functions can be considered both software programs implementing the method and structures within the hardware component.

[0111] Furthermore, all or part of the steps in the methods of the above embodiments can be implemented by a program instructing related hardware. This program is stored in a storage medium and includes several instructions to cause a microcontroller, chip, or processor to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as a USB flash drive, a portable hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0112] Furthermore, various different implementations of the present invention can be combined arbitrarily, as long as they do not violate the spirit of the present invention, they should also be regarded as the content disclosed in the present invention.

Claims

1. A 2D lidar positioning method, characterized by the following steps include: Step S100: Based on the point cloud data scanned by 2D LiDAR, establish a grid map, calculate the estimated pose of the current scan frame according to the pose transformation matrix in the initial time segment, and calculate the estimated pose of the current scan frame based on the function fitting curve method in subsequent time segments. Step S200: Determine whether the current scan frame is a keyframe. If it is, skip the raster map matching process. If it is, save all keyframe data within a certain distance range to construct a sliding window and generate a local map. Construct a probabilistic raster map using both high and low resolutions, where each low-resolution probabilistic raster map block m covers multiple corresponding high-resolution probabilistic raster map blocks M. Assign the maximum probability value among the corresponding multiple blocks M to m. Use the branch and bound method to traverse and scan the current scan frame and the local map to obtain the corresponding optimal estimated pose as the estimated pose of the current scan frame. Step S300: Construct a pose graph based on the pose obtained in step S200; Step S301: Store the scan frames that participate in loop closure detection as historical frames, and search for all scan frames that are spatiotemporally adjacent to the current scan frame in the vertices of the pose graph, and denot them as the neighboring frame set. Step S302: Traverse all historical frames that form a closed loop in chronological order, and add historical frames that are close to the current scan frame to the candidate closed loop frame set. Step S303: When any historical frame is found to belong to the set of neighboring frames, clear the current candidate closed loop set and continue to traverse the remaining historical frames. Step S304 repeats steps S301 to S303 until the number of candidate loop closure sets reaches the target. Then, the current scan frame in the candidate loop closure set is stitched together with multiple scan frames from previous moments to form a two-dimensional grid subgraph. When it is found that the scan scenes between some pose graph vertices are similar but no loop closure observation is formed, a delay decision is made to temporarily store the information of these pose graph vertices. This continues until other pose graph vertices are observed to have scan scenes similar to the temporarily stored pose graph vertices and form a loop closure observation. Then, a decision is made to consider that a loop closure has been detected, and graph optimization is performed to update the estimated pose of all scan frames.

2. A 2D lidar mapping method that does not rely on odometry, characterized in that... The steps include: After executing the 2D LiDAR positioning method as described in claim 1 and obtaining the final optimized estimated pose of the scan frame, a map is constructed.

3. A 2D lidar positioning system, characterized in that... include: A storage unit is used to store a program including the steps of the 2D lidar positioning method as described in claim 1, so that the control unit and the processing unit can retrieve and execute it as needed. The control unit is used to manipulate the 2D laser laser to acquire point cloud data of the scanned scene and send it to the processing unit; The processing unit is used to acquire point cloud data and build a raster map, calculate the estimated pose of the current scan frame based on the pose transformation matrix in the initial time segment, and calculate the estimated pose of the current scan frame based on the function fitting curve method in subsequent time segments; at the same time, it matches the raster map of the current scan frame with the raster map of the key frame in the previous time segment to optimize the estimated pose of the current scan frame. The processing unit further constructs a pose graph based on the obtained pose and uses delay decision to perform loop closure detection in order to optimize the estimated pose of all scan frames again.

4. The 2D lidar positioning system according to claim 3, characterized in that, The processing unit further constructs a map based on the estimated poses of all the finally optimized scan frames.

Citation Information

Patent Citations

  • Laser mapping positioning method and device, storage medium and electronic equipment

    CN112068154A