A method of underground mine reconstruction and positioning
By combining distortion correction processing of LiDAR and IMU pre-integration information, improved curvature methods and ICP point cloud matching algorithms, as well as G2O and point cloud bag-of-words algorithms, the problem of high-precision positioning and mapping in mining environments has been solved, achieving high-precision real-time positioning and mapping in complex and narrow areas, and improving the stability and adaptability of the system.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- ANHUI UNIV
- Filing Date
- 2023-04-01
- Publication Date
- 2026-04-14
AI Technical Summary
Underground rail locomotives struggle to achieve high-precision positioning and mapping in mining environments with insufficient light, low visibility, narrow tunnels, and complex track lines, leading to frequent mining accidents. Existing technologies are insufficient to meet the requirements for safety and intelligent operation.
Distortion correction is achieved by combining LiDAR point cloud information with IMU pre-integration information. Corner points and planar point clouds are extracted using an improved curvature method. An improved ICP point cloud matching algorithm is used for scanning and matching. In the backend, the G2O algorithm is used to optimize parameters and a new point cloud bag-of-words algorithm is used for loop closure detection to achieve high-precision positioning and mapping.
Achieving high-precision real-time positioning and mapping in complex and narrow areas improves the stability and reliability of the system, adapts to different scenario requirements, and has certain promotional value.
Smart Images

Figure CN116309179B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of mine roadway mapping and positioning technology, and in particular to a method for underground mine reconstruction and positioning. Background Technology
[0002] To ensure safe transportation of underground railcars, reduce miner injuries and fatalities, and promote the construction of intelligent mines, autonomous driving locomotives are increasingly being applied to underground rail transport. However, the underground environment is harsh, with conditions such as insufficient light, low visibility, narrow tunnels, and complex track lines, and the environment is unstructured. Single-modal SLAM systems struggle to independently handle such unknown environments, and GNSS technology cannot be used in mine tunnel areas, leading to difficulties in high-precision positioning and mapping. Autonomous positioning systems in coal mines often fail to achieve high-precision positioning and environmental awareness, resulting in frequent mining accidents and reduced safety. To address these issues, advanced technologies such as multimodal SLAM systems, inertial measurement units, and machine learning are needed to improve autonomous driving and environmental adaptability, thereby enhancing the safety of coal mining and achieving the goal of intelligent mine construction. Summary of the Invention
[0003] To overcome the shortcomings of the existing technology, this invention provides a method for underground mine reconstruction and positioning. This method can achieve high-precision real-time positioning and mapping, while balancing time and power consumption.
[0004] To solve the above-mentioned technical problems, the present invention provides the following technical solution: a method for underground mine reconstruction and positioning, comprising the following processes:
[0005] The front end first acquires the point cloud information from the lidar, and then performs distortion correction operations in combination with the pre-integrated information from the IMU to obtain usable point cloud information.
[0006] After obtaining corner point cloud and planar point cloud information by a new curvature definition method, point cloud features are filtered again by GFS to obtain the final usable point cloud group.
[0007] A scanning and matching process is performed using an improved ICP point cloud matching algorithm to achieve mapping and localization.
[0008] The backend uses the G2O algorithm to optimize parameters by defining a function that includes edges and nodes and using the LM method as an iterative strategy.
[0009] In the loop closure detection stage, a novel point cloud bag-of-words algorithm is used to detect loop closures, ultimately completing localization and mapping.
[0010] The front-end first acquires LiDAR point cloud information and then performs distortion correction operations using IMU pre-integration information to obtain usable point cloud information. This process specifically includes the following steps: acquiring LiDAR point cloud information; performing distortion correction operations using IMU pre-integration information; and pre-integrating the raw gyroscope and accelerometer information measured by the IMU between two consecutive frames. The IMU's acceleration and angular velocity are defined as follows:
[0011]
[0012] Among them, b t Indicates IMU bias, n t This indicates white noise. The superscript ω represents angular velocity, and α represents acceleration. The true values of the IMU's acceleration and angular velocity at time t in the B coordinate system are ω. t and α t The measured value is and It is IMU bias and It's white noise. is the rotation matrix from the world coordinate system W to the IMU coordinate system B, and g is the gravity vector.
[0013] By using IMU measurements for pose estimation and continuous updates, pre-integrated measurements between time i and time j can be obtained:
[0014]
[0015] Among them, v i v j Let p represent the velocities at times i and j, respectively. i p j Represents the positions at times i and j, respectively, R i R j Let Δt represent the attitude at times i and j, respectively; ij Δv represents the time difference between i and j. ij Δp represents the velocity difference between times i and j. ij ΔR represents the position difference between times i and j. ij The expression represents the pose difference between times i and j, with the superscript T denoteing matrix transpose. A filtering algorithm is used to denoise the point cloud, obtaining point cloud data including point coordinates and reflection intensity. Gaussian filtering is then applied to smooth the point cloud data using a Gaussian function to remove high-frequency noise.
[0016]
[0017] Where G(x,y) is a Gaussian function, x and y represent coordinates, and σ represents the standard deviation.
[0018] After obtaining corner point cloud and planar point cloud information through a novel curvature definition method, the point cloud features are further filtered using GFS to obtain the final usable point cloud group. This step specifically includes the following process: After obtaining a better point cloud group, in order to extract better corner information, parallel or overlapping points are first identified as planar points, and the following formula is used to determine point p. i Are they parallel or overlapping?
[0019]
[0020] If R i Points smaller than a threshold are considered continuous; otherwise, they are parallel or coincident points, directly classified as planar points and not used in subsequent curvature calculations. For continuous points, it is necessary to further determine whether they are corner points. For any laser beam, a good corner point is usually formed by the intersection of two straight lines composed of planar points, and the included angle between them is within a certain range. Therefore, for point p... i Select the 2n nearest neighbor points on the same laser beam to form a back point set. and forward point set Calculate the covariance matrices of the two point sets using the following formula. and
[0021]
[0022] Define curvature C i :
[0023]
[0024] in and These are the covariance matrices. and The eigenvector corresponding to the largest eigenvalue.
[0025] The greater the curvature, the closer the included angle is to 90 degrees. Points with curvature greater than a threshold are classified as corner points, and the rest are planar points. Corner points are further processed using GFS, with the following processing method:
[0026] Input the logarithm of the corner information matrix, the number of corners, the degradation factor, the set of all features in the current frame, and the initial pose; randomly sample the point set of the map associated with the current frame as a subset, calculate the residual for each feature in the subset, and select the feature that leads to the maximum enhancement of the target; output the set of good features in the current LiDAR frame; obtain the optimal corner point cloud group and planar point cloud group for subsequent scanning and matching.
[0027] The scanning and matching process using an improved ICP point cloud matching algorithm to achieve mapping and localization includes the following steps: First, input adjacent frame point clouds S1 and S2. Use the preprocessed point cloud data and the NDT algorithm to perform point cloud matching, and perform coarse estimation of pose to obtain a good initial estimate and a rough point cloud registration matrix H. Then, under good point cloud pose conditions, use the ICP algorithm with H to perform precise point cloud matching to achieve incremental mapping.
[0028] The backend uses the G2O algorithm to optimize parameters. This step, which defines a function containing edges and nodes and uses the LM method as an iterative strategy, specifically includes the following processes: The backend uses G2O for optimization. First, the robot's trajectory is represented as a series of pose nodes, each corresponding to the robot's pose state at different time points. Simultaneously, the graph also contains nodes corresponding to multiple LiDAR scan data points, each node representing one LiDAR scan. Constraints exist between adjacent poses of each node, and also between LiDAR scan data nodes and their corresponding pose nodes. The LM method is then used as an iterative strategy to perform nonlinear optimization of the robot trajectory, further improving positioning accuracy and map stability.
[0029] The loop closure detection stage uses a novel point cloud bag-of-words algorithm for loop closure detection. The final localization and mapping process includes the following steps: First, the loop closure stage extracts Link3D features from the original LiDAR point cloud. Link3D consists of three parts: keypoint extraction, descriptor generation, and feature matching. The current keypoints are represented using neighborhood information. Descriptors are selected based on the distance between their corresponding keypoints and the LiDAR center. The Link3D descriptors are represented by 180-dimensional vectors, with each dimension corresponding to a sector region. A hash table is used to establish a one-to-one mapping between words and their locations. If a loop is detected and optimized, loop closure provides feedback to the mapping algorithm and updates the local map, providing more accurate pose information for subsequent steps.
[0030] Compared with the prior art, the beneficial effects of the present invention are:
[0031] (1) When dealing with complex and narrow areas such as mine roadways, the system developed in this study adopts a strictly modular design. Each module has specific input and output settings, allowing several modules to operate independently while also interacting with each other. This modular design makes the system more flexible and adaptable to different scenarios and task requirements. In the specific implementation, we ensure the accuracy and real-time performance of data transmission by finely controlling the input and output of each module. In addition, we also adopted advanced communication technologies and protocols to ensure efficient collaboration and data transmission between modules. Overall, this strictly modular design can effectively improve the stability, reliability, and maintainability of the system, thereby meeting the practical application needs in complex and narrow areas.
[0032] (2) In this study, we faced the problem of limited high-quality point cloud information available in underground mines. Therefore, we proposed improved corner selection and point cloud matching methods. Compared to large-scale point cloud information based on the ground, these methods can better match point cloud data in underground mines and improve mapping and localization results. Specifically, by introducing an improved corner selection method, we can more accurately locate key landmarks in underground mines, thereby improving the accuracy and efficiency of point cloud matching. Simultaneously, we adopted the latest loop closure algorithm to balance computational power and efficiency, improving the accuracy and robustness of the system for mapping and localization in underground mines. The methods in this study not only meet the practical needs of complex and narrow areas such as underground mines but also have certain promotional value, providing a reference for point cloud data processing and mapping / localization problems in other fields. Attached Figure Description
[0033] Figure 1 This is the main flowchart involved in the present invention;
[0034] Figure 2 This refers to the point cloud processing module involved in this invention;
[0035] Figure 3 This refers to the backend optimization module involved in this invention;
[0036] Figure 4 This refers to the loopback module involved in this invention. Detailed Implementation
[0037] like Figure 1 As shown, to address the technical problem of difficult underground mine positioning and mapping under unstructured conditions where GNSS is ineffective, this invention proposes a method for underground mine reconstruction and positioning, with the specific steps as follows:
[0038] The front end first acquires the point cloud information from the lidar, and then performs distortion correction operations in combination with the pre-integrated information from the IMU to obtain usable point cloud information.
[0039] After obtaining corner point cloud and planar point cloud information by a new curvature definition method, point cloud features are filtered again by GFS to obtain the final usable point cloud group.
[0040] A scanning and matching process is performed using an improved ICP point cloud matching algorithm to achieve mapping and localization.
[0041] The backend uses the G2O algorithm to optimize parameters by defining a function that includes edges and nodes and using the LM method as an iterative strategy.
[0042] In the loop closure detection stage, a novel point cloud bag-of-words algorithm is used to detect loop closures, ultimately completing localization and mapping.
[0043] The front-end first acquires LiDAR point cloud information and then performs distortion correction operations using IMU pre-integration information to obtain usable point cloud information. This process specifically includes the following steps: acquiring LiDAR point cloud information; performing distortion correction operations using IMU pre-integration information; and pre-integrating the raw gyroscope and accelerometer information measured by the IMU between two consecutive frames. The IMU's acceleration and angular velocity are defined as follows:
[0044]
[0045] The true values of the acceleration and angular velocity of the IMU at time t and in the B coordinate system are ω. t and α t The measured value is and It is IMU bias and It's white noise. is the rotation matrix from the world coordinate system W to the IMU coordinate system B, and g is the gravity vector.
[0046] By using IMU measurements for pose estimation and continuous updates, pre-integrated measurements between time i and time j can be obtained:
[0047]
[0048] Where Δv ij Δp represents the velocity difference between times i and j. ij ΔR represents the position difference between times i and j. ij This represents the pose difference between time i and j, with the superscript T indicating matrix transpose.
[0049] Point cloud data, including point coordinates and reflection intensity, is obtained through filtering algorithms. Gaussian filtering is then used to smooth the point cloud data and remove high-frequency noise.
[0050]
[0051] Where G(x,y) is a Gaussian function, x and y represent coordinates, and σ represents the standard deviation.
[0052] After obtaining corner point cloud and planar point cloud information through a novel curvature definition method, the point cloud features are further filtered using GFS to obtain the final usable point cloud group. This step specifically includes the following process: After obtaining a better point cloud group, in order to extract better corner information, parallel or overlapping points are first identified as planar points, and the following formula is used to determine point p. i Are they parallel or overlapping?
[0053]
[0054] If R i Points smaller than a threshold are considered continuous; otherwise, they are parallel or coincident points, directly classified as planar points and not used in subsequent curvature calculations. For continuous points, it is necessary to further determine whether they are corner points. For any laser beam, a good corner point is usually formed by the intersection of two straight lines composed of planar points, and the included angle between them is within a certain range. Therefore, for point p... i Select the 2n nearest neighbor points on the same laser beam to form a back point set. and forward point set Calculate the covariance matrices of the two point sets using the following formula. and
[0055]
[0056] Define curvature C i :
[0057]
[0058] in and These are the covariance matrices. and The eigenvector corresponding to the largest eigenvalue.
[0059] The greater the curvature, the closer the included angle is to 90 degrees. Points with curvature greater than a threshold are classified as corner points, and the rest are planar points. Corner points are further processed using GFS, with the following processing method:
[0060] Input the logarithm of the corner information matrix, the number of corners, the degradation factor, the set of all features in the current frame, and the initial pose; randomly sample the point set of the map associated with the current frame as a subset, calculate the residual for each feature in the subset, and select the feature that leads to the maximum enhancement of the target; output the set of good features in the current LiDAR frame; obtain the optimal corner point cloud group and planar point cloud group for subsequent scanning and matching.
[0061] The scanning and matching process using an improved ICP point cloud matching algorithm to achieve mapping and localization includes the following steps: First, input adjacent frame point clouds S1 and S2. Use the preprocessed point cloud data and the NDT algorithm to perform point cloud matching, and perform coarse estimation of pose to obtain a good initial estimate and a rough point cloud registration matrix H. Then, under good point cloud pose conditions, use the ICP algorithm with H to perform precise point cloud matching to achieve incremental mapping.
[0062] The backend uses the G2O algorithm to optimize parameters. This step, which defines a function containing edges and nodes and uses the LM method as an iterative strategy, specifically includes the following processes: The backend uses G2O for optimization. First, the robot's trajectory is represented as a series of pose nodes, each corresponding to the robot's pose state at different time points. Simultaneously, the graph also contains nodes corresponding to multiple LiDAR scan data points, each node representing one LiDAR scan. Constraints exist between adjacent poses of each node, and also between LiDAR scan data nodes and their corresponding pose nodes. The LM method is then used as an iterative strategy to perform nonlinear optimization of the robot trajectory, further improving positioning accuracy and map stability.
[0063] The loop closure detection stage uses a novel point cloud bag-of-words algorithm for loop closure detection. The final localization and mapping process includes the following steps: First, the loop closure stage extracts Link3D features from the original LiDAR point cloud. Link3D consists of three parts: keypoint extraction, descriptor generation, and feature matching. The current keypoints are represented using neighborhood information. Descriptors are selected based on the distance between their corresponding keypoints and the LiDAR center. The Link3D descriptors are represented by 180-dimensional vectors, with each dimension corresponding to a sector region. A hash table is used to establish a one-to-one mapping between words and their locations. If a loop is detected and optimized, loop closure provides feedback to the mapping algorithm and updates the local map, providing more accurate pose information for subsequent steps.
Claims
1. A method for reconstructing and locating underground mine shafts, characterized in that, Includes the following steps: (1) The front end first acquires the lidar point cloud information, and then performs distortion removal operation in combination with the IMU pre-integration information to obtain usable point cloud information. (2) After obtaining corner point cloud and planar point cloud information through a new curvature definition method, the point cloud features are further filtered using GFS to obtain the final usable point cloud group. Specifically, in this step... Includes the following processes: After obtaining a good point cloud group, in order to extract better corner point information, we first identify parallel or coincident points as planar points and use the following formula to determine point p. i Are they parallel or overlapping? If R i Points less than a threshold are considered continuous; otherwise, they are parallel or coincident points, directly classified as planar points and not used in subsequent curvature calculations. For continuous points, further determination is needed to determine if they are corner points. For any laser beam, a good corner point is usually formed by the intersection of two straight lines composed of planar points, and the included angle between them is within a certain range. Therefore, for point p... i Select the 2n nearest neighbor points on the same laser beam to form a back point set. and forward point set Calculate the covariance matrices of the two point sets using the following formula. and Define curvature C i : in and These are the covariance matrices. and The eigenvector corresponding to the largest eigenvalue. The greater the curvature, the closer the included angle is to 90 degrees. Points with curvature greater than a threshold are classified as corner points, and the rest are planar points. Corner points are further processed using GFS. The processing method is as follows: Input the logarithm of the determinant of the corner information matrix, the number of corners, the degradation factor, the set of all features in the current frame, and the initial pose; randomly sample the set of points in the map associated with the current frame as a subset, calculate the residual for each feature in the subset, and select the feature that leads to the maximum enhancement of the target. Output the set of good features in the current LiDAR frame; obtain the optimal corner point cloud group and planar point cloud group for subsequent scanning and matching; (3) A scanning and matching process is performed using an improved ICP point cloud matching algorithm to achieve mapping and localization; (4) The backend uses the G2O algorithm to optimize parameters by defining a function that includes edges and nodes and using the LM method as an iterative strategy. (5) In the loop closure detection stage, a new point cloud bag-of-words algorithm is used to detect loop closure, and finally localization and mapping are completed.
2. The method for underground mine reconstruction and positioning according to claim 1, characterized in that: The front-end first acquires LiDAR point cloud information, and then performs distortion correction operations based on IMU pre-integration information to obtain usable point cloud information. Specifically... Includes the following processes: Acquire lidar point cloud information; perform distortion correction by combining IMU pre-integration information. Utilize the raw gyroscope and accelerometer information measured by the IMU, pre-integrate them between two consecutive frames. The IMU's acceleration and angular velocity are defined as follows: Among them, b t Indicates IMU bias, n t This indicates white noise. The superscript ω represents angular velocity, and α represents acceleration. The true values of the IMU's acceleration and angular velocity at time t in the B coordinate system are ω. t and α t The measured value is and It is IMU bias and It's white noise. is the rotation matrix from the world coordinate system W to the IMU coordinate system B, and g is the gravity vector. By using IMU measurements for pose estimation and continuous updates, pre-integrated measurements between time i and time j can be obtained: Among them, v i v j Let p represent the velocities at times i and j, respectively. i p j Represents the positions at times i and j, respectively, R i R j Let Δt represent the attitude at times i and j, respectively; ij Δv represents the time difference between i and j. ij Δp represents the velocity difference between times i and j. ij ΔR represents the position difference between times i and j. ij This represents the pose difference between times i and j, with the superscript T indicating matrix transpose. Point cloud data, including point coordinates and reflection intensity, is obtained through filtering algorithms. Gaussian filtering is then used to smooth the point cloud data and remove high-frequency noise. Where G(x,y) is a Gaussian function, x and y represent coordinates, and σ represents the standard deviation.
3. The method for underground mine reconstruction and positioning according to claim 1, characterized in that: An improved ICP point cloud matching algorithm is used for scanning and matching to achieve the mapping and localization steps. Includes the following processes: First, input the point clouds S1 and S2 of adjacent frames. Then, use the NDT algorithm to perform point cloud matching using the preprocessed point cloud data to perform coarse estimation of the pose, and obtain a good initial estimate and a rough point cloud registration matrix H. Then, use the ICP algorithm to perform precise point cloud matching using H under a good point cloud pose state to realize incremental map.
4. The method for underground mine reconstruction and positioning according to claim 1, characterized in that: The backend uses the G2O algorithm to optimize parameters. This is achieved by defining a function containing edges and nodes and using the LM method as an iterative strategy. Includes the following processes: The backend is optimized using a G2O approach. First, the robot's trajectory is represented as a series of pose nodes, each corresponding to the robot's pose state at different time points. Simultaneously, the graph also includes nodes corresponding to multiple LiDAR scan data points, each representing one LiDAR scan. Constraints exist between adjacent poses of each node, and also between LiDAR scan data nodes and their corresponding pose nodes. The LM method is used as an iterative strategy to perform nonlinear optimization of the robot trajectory, further improving positioning accuracy and map stability.
5. The method for underground mine reconstruction and positioning according to claim 1, characterized in that: In the loop closure detection stage, a novel point cloud bag-of-words algorithm is used for loop closure detection, ultimately completing the localization and mapping steps. The process includes the following: First, Link3D features are extracted from the original point cloud of the LiDAR. Link3D consists of three parts: keypoint extraction, descriptor generation, and feature matching. The current keypoints are represented using neighborhood information. The descriptors are selected based on the distance between their corresponding keypoints and the LiDAR center. The Link3D descriptors are represented by 180-dimensional vectors, with each dimension of the descriptor corresponding to a sector region. A hash table is used to establish a one-to-one mapping between words and the positions where the words appear. If loops are detected and optimized, loop closure will provide feedback to the mapping algorithm and update the local map, providing more accurate poses for subsequent operations.
Citation Information
Patent Citations
Loop detection method and system, readable storage medium and electronic equipment
CN111862162A
Multi-modal fusion mapping and positioning method applied to mine laneway
CN115855045A