LiDAR point cloud inter-frame registration method for urban semi-structured scene
By introducing a point cloud registration method based on inter-frame single-wood descriptive sub-match in LiDAR SLAM, the problem of insufficient positioning accuracy and robustness of LiDAR SLAM in urban semi-structured scenarios is solved, and higher positioning accuracy and stability are achieved.
Patent Information
- Application Number
- CN202510248037.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-03
- Publication Date
- 2025-06-20
- Estimated Expiration
- 2045-03-03
AI Technical Summary
In urban semi-structured scenarios, the positioning accuracy and mapping quality of LiDAR SLAM are affected by unstable vegetation characteristics and ground characteristics, resulting in reduced positioning accuracy and insufficient robustness.
A point cloud registration method based on inter-frame single-wood descriptor matching is proposed. By improving the LightGBM algorithm, a double-layer branch and leaf separation algorithm and a single-wood descriptor construction algorithm based on branch information is used, and a bidirectional extension vector matching algorithm with cosine similarity assists the ICP algorithm for high-precision inter-frame registration.
It effectively improves the stability and positioning performance of LiDAR SLAM in urban semi-structured scenarios, and improves the accuracy and efficiency of single-wood detection accuracy and point cloud inter-frame registration.
Smart Images

Figure CN120182336A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of Light Detection and Ranging Simultaneous Localization and Mapping (LiDAR SLAM), and particularly relates to a LiDAR point cloud inter-frame registration method for urban semi-structured scenarios. Background Art
[0002] With the continuous advancement of digital transformation and smart city construction, high-quality spatial data acquisition has become a key link in urban planning and management. Among them, the three-dimensional point cloud data obtained through laser scanning technology has become one of the core resources in the fields of intelligent transportation, infrastructure construction, etc., providing reliable data support for related applications. However, with the expansion of urban scale and the upgrading of application requirements, traditional point cloud acquisition methods face many challenges such as poor flexibility, small acquisition range, and low efficiency. In response to the above problems, Mobile Laser Scanning (MLS) technology, as an active mobile mapping technology, has been proposed, which has the advantages of large scanning range, high measurement accuracy, and adaptability to complex environments, and can collect point cloud data within the reach of the mobile platform in real time. At the same time, LiDAR SLAM technology has also been widely applied to point cloud data processing, realizing simultaneous point cloud acquisition, spatial positioning, and map construction. The application of LiDAR SLAM technology has significantly improved the accuracy and efficiency of point cloud data processing, and its mapping results have also provided a reliable data basis for updating the Geographic Information System (GIS) and constructing the Building Information Modeling (BIM).
[0003] Currently, common urban scenes can be divided into structured scenes and semi-structured scenes. Structured scenes are more common, including urban building clusters, roads, squares, etc., which usually have significant geometric structures and high stability characteristics. Semi-structured scenes contain both regular structures and unstable natural elements, including woods, parks, etc. In structured scenes, the features for LiDAR SLAM inter-frame registration mainly come from the edges or planes of static buildings, with strong stability, and the corresponding positioning accuracy and mapping quality are relatively high. However, in semi-structured scenes, the features mainly come from vegetation and the ground. Among them, vegetation features can be divided into stable vegetation features and unstable vegetation features. The former are generated by tree trunks and thick branches in the tree crown, and the latter are generated by leaves and thin branches in the tree crown. During the inter-frame registration of point clouds, due to the relatively few ground features and high inter-frame similarity, it must be used in combination with vegetation features. However, the simultaneous action of stable vegetation features and unstable vegetation features leads to a decrease in positioning accuracy and affects the mapping quality. Therefore, improving the overall performance and robustness of LiDAR SLAM in urban semi-structured scenes provides important technical support for urban planning and construction.
[0004] To address the above problems, common methods include those based on stable ground feature registration and those that utilize other sensors for assistance. As relatively stable natural elements in semi-structured scenarios, the morphological features and relative spatial poses of the ground, tree trunks, and thick branches exhibit relatively small differences among point clouds in different frames. The method based on stable ground feature registration extracts and utilizes these stable features to ensure the accuracy of point cloud registration. Heupel et al. proposed a LiDAR SLAM based on combined feature registration, which detects trees using a local sliding probability grid and constructs a three-tree combined feature based on the landmarks of individual tree trunks. The adjacent frame point clouds are registered by globally mapping these features and performing data association. This method is insensitive to both terrain and the motion state of the carrier, but the global mapping effect is affected by multi-angle perception and the minimum number of local features. Wang et al. proposed a LiDAR SLAM based on stable angle feature registration, which extracts angle features by calculating local curvature and filters out stable features using image sequential segmentation filtering. The relative pose between frames is obtained using the point-to-plane Iterative Closest Point (ICP) algorithm based on these feature points. This method directly extracts stable feature points without relying on accurate tree extraction results, with a relatively low overall complexity. However, it requires setting more core thresholds and is not applicable to high-dynamic carrier situations. The method of using other sensors for assistance usually fuses the data of sensors such as the Inertial Measurement Unit (IMU), vision, and Global Navigation Satellite System (GNSS) with LiDAR point clouds using algorithms such as filtering and graph optimization for solution, thereby enhancing the overall accuracy and robustness of the system. Tang et al. proposed a SLAM that fuses LiDAR point clouds, monocular images, and IMU data. The non-ground point clouds are segmented through Breadth-First Search (BFS), and the stable points after segmentation are used to extract image features and carrier positioning based on LVISAM (Lidar Visual Inertial Odometry via Smoothing and Mapping). This method solves the problem of chaotic positioning in LiDAR SLAM in locally highly similar scenarios and weakens the impact of terrain undulation, lighting changes, and foliage dynamics on single-sensor positioning. Tang et al. proposed a SLAM that fuses LiDAR point clouds, GNSS data, and IMU data. The point clouds are projected onto a two-dimensional plane according to the attitude measurement, and the Implicit Maximum Likelihood Estimation (IMLE) algorithm is used for local positioning in combination with IMU and effective GNSS measurement data, and the global positioning result is obtained through refined local search. This method also solves the problem of positioning failure of a single sensor in certain situations.However, the good performance of other sensor-aided methods depends on accurate spatio-temporal synchronization of data and effective fusion strategies. In addition, in some specific cases, the data quality of additional sensors is difficult to guarantee, and the increased equipment cost and data processing complexity also limit the wide application of such methods. Therefore, the method based on stable calibration is still the current research focus, and it is necessary to deeply solve the problems existing in the existing methods to improve the stability and positioning performance of LiDAR SLAM in urban semi-structured scenarios.
[0005] To address the four key issues of global constraint limitation, dependence on critical thresholds, failure of high-dynamic positioning of carriers, and positioning confusion in high-similarity scenarios existing in the stable standard matching method, this patent proposes a point cloud registration method based on inter-frame single-tree descriptor matching, which mainly includes four parts: single-tree detection, single-tree branch and leaf separation, single-tree descriptor construction, and inter-frame point cloud registration. In the single-tree detection part, this patent proposes a single-tree detection algorithm based on the improved Light Gradient Boosting Machine (LightGBM); for the point cloud clustering results, 13 point cloud cluster features are independently designed from the perspectives of geometric structure and basic attributes to establish a classification feature system for constructing the LightGBM classification decision tree to directly detect whether each point cloud cluster is a tree; to improve the training efficiency of LightGBM, the Spearman's Rank Correlation Coefficient (SRCC) between each feature is calculated to reduce the dimension of the highly correlated feature subset, and it is proposed to use the Density-Based Spatial Clustering of Applications with Noise (DBSCAN) algorithm to assist in constructing a feature histogram before feature bundling; in addition, to balance the classification effect of LightGBM, a CosineSimilarity-based Feature Bidirectional Screening (CS-FBS) algorithm is proposed to construct the optimal point cloud cluster classification feature subset. In the single-tree branch and leaf separation part, this patent proposes a double-layer branch and leaf separation algorithm; a local connection graph is established for each point in the single-tree point cloud cluster and recursively clustered for preliminary branch and leaf separation from the perspective of geometric attributes; subsequently, the Dijkstra algorithm is used to construct the global network connection graph of the single-tree point cloud cluster, and a correction algorithm based on path frequency is proposed to correct the points misjudged as leaves to branch points. In the single-tree descriptor construction part, this patent proposes a single-tree descriptor construction algorithm based on trunk information; for the set of single-tree branch points, the Random Sample Consensus (RANSAC) algorithm is used to fit all linear objects and mark the tree trunk (primary branch); the secondary branches are initially screened by judging the coplanarity relationship between other linear objects and the tree trunk, and the misselected low-level branches are removed according to the path structure in the global network connection graph; the spatial angle between the secondary branch and the tree trunk and the spatial distance between adjacent secondary branches are calculated to construct the single-tree descriptor.In the part of point cloud inter-frame registration, this patent proposes a two-way extended vector matching algorithm based on CS to assist point cloud inter-frame registration. For the set of single-tree descriptors of adjacent frame point clouds, five pairs of effective single-tree descriptor matching combinations between adjacent frames are constructed through the iterative process of local vector two-way extension and global descriptor matching. On this basis, the Boolean model is used to roughly unify the coordinate systems of adjacent frame point clouds and quickly establish the remaining descriptor matching relationships. The paired single-tree point cloud clusters are given the same label to assist the ICP algorithm in accurately registering the adjacent frame trunk and secondary branch point clouds.
[0006] The LightGBM algorithm is a Gradient Boosting Machine (GBM) algorithm for solving classification and regression problems. This patent mainly uses the above algorithm to detect whether each independent point cloud cluster is a tree based on the constructed optimal point cloud cluster classification feature subset.
[0007] SCC is a statistical analysis index reflecting the degree of rank correlation. It is a statistic obtained by arranging the sample values of two elements in the order of data size and substituting the ranks of the sample values of each element for the actual data. This patent mainly uses the above coefficient to measure the correlation between the characteristics of each point cloud cluster, thereby reducing the dimension of the point cloud cluster classification feature system.
[0008] The DBSCAN algorithm is a representative density-based clustering algorithm that defines a cluster as the largest set of density-connected points, can divide regions with sufficient high density into clusters, and can discover clusters of any shape in a spatial database with noise. This patent mainly uses the above algorithm to segment the sample sets corresponding to each continuous numerical feature respectively, thereby converting them into discrete categorical features.
[0009] CS is a similarity evaluation index between vectors, also known as cosine similarity, which evaluates the similarity between two vectors by calculating the cosine value of the included angle between them. This patent mainly uses the above index to judge the similarity between features, thereby constructing an optimal point cloud cluster classification feature subset.
[0010] The RANSAC algorithm is an iterative outlier detection algorithm used to find the best fitting model in data containing noise or errors. This patent mainly uses the above algorithm to fit all linear targets in the branch and trunk point cloud set.
[0011] The ICP algorithm is a classic algorithm for rigid point cloud registration. It iteratively finds the nearest point pairs between two point clouds and calculates the optimal rigid transformation to align the source point cloud in the coordinate system of the target point cloud. This patent mainly uses the above algorithm to simultaneously process the three-dimensional coordinate information and semantic label information of adjacent frame point clouds to obtain accurate point cloud inter-frame registration results. Summary of the Invention
[0012] Aiming at the four key problems existing in the current stable standard-based registration method, namely global constraint limitation, dependence on key thresholds, failure of carrier high-dynamic positioning, and confusion in high-similarity scene positioning, the present invention proposes a point cloud registration method based on inter-frame single-tree descriptor matching, effectively improving the stability and positioning performance of LiDAR SLAM in urban semi-structured scenes.
[0013] A point cloud registration method based on inter-frame single-tree descriptor matching includes the following steps:
[0014] Step 1: Through LiDAR point cloud preprocessing and point cloud cluster segmentation, 13 features are independently designed for independent point cloud clusters, and the LightGBM algorithm is improved to detect whether each point cloud cluster is a tree;
[0015] Step 2: Initially separate the branches and leaves of the single-tree point cloud cluster from a geometric perspective, and propose a correction algorithm based on path frequency according to the Dijkstra network connection graph to obtain an accurate set of branch points;
[0016] Step 3: Propose an algorithm for constructing a single-tree descriptor based on branch and trunk information, fit the linear targets in the set of branch points and extract the tree trunk (primary branch) and secondary branches, and construct a single-tree descriptor by calculating the spatial angles between branches and the spatial distances between branches;
[0017] Step 4: Propose a two-way extension vector matching algorithm based on cosine similarity (CS) to establish an inter-frame single-tree descriptor matching relationship, and use this to assist the ICP algorithm for high-precision inter-frame registration.
[0018] The step 1 of passing through LiDAR point cloud preprocessing and point cloud cluster segmentation, independently designing 13 features for independent point cloud clusters, and improving the LightGBM algorithm to detect whether each point cloud cluster is a tree;
[0019] The specific steps are as follows:
[0020] Step 1-1: Calibrate the intrinsic parameters of the point cloud using an unsupervised point cloud position optimization method to compensate for the device system error. Since no additional sensor data is used to assist in processing the point cloud throughout the overall process, the V-ICP (Velocity-updating Iterative Closest Point) method is used to remove the motion distortion of the point cloud. After the above processing, the quality of the point cloud is significantly improved. However, since the main research object is the independent single-tree point cloud cluster, noise points and discrete points are not of research significance. A voxel network composed of several identical three-dimensional parallelepipeds is constructed to cover the entire point cloud, and the point cloud density within each small voxel is calculated. The points in the sparse voxels are regarded as noise points or discrete points and removed. Regarding the problem of overly dense point cloud, since the subsequent extraction and fitting of the trunk (primary branch) and secondary branch point clouds to construct the single-tree descriptor require relatively complete detailed descriptions, and there are few continuous large-scale targets in the semi-structured urban scene, point cloud downsampling is not required. For the point cloud after intrinsic parameter calibration and preprocessing, further ground segmentation and point cloud cluster clustering are performed to obtain the clustering results of independent point cloud clusters.
[0021] Step 1-2: For each independent point cloud cluster, 13 features are designed and extracted from the perspectives of geometric structure and basic attributes, which are divided into geometric features and attribute features, so as to construct a point cloud cluster classification feature system.
[0022] Geometric features refer to the features that describe the basic geometric structures of the single-axis span, projected area, and spatial volume of the point cloud cluster. A total of 7 geometric features are extracted, including: the X-axis span L X , the Y-axis span L Y , the Z-axis span L Z , the ratio S of the area of the concave hull polygon projected onto the X-Z plane to the area of the minimum circumscribed rectangle CXZ , the ratio S of the area of the concave hull polygon projected onto the Y-Z plane to the area of the minimum circumscribed rectangle CYZ , the ratio S of the area of the concave hull polygon projected onto the X-Y plane to the area of the minimum circumscribed rectangle CXY , and the volume V of the minimum circumscribed parallelepiped. The specific quantification methods of the above features are as follows:
[0023] Taking the k-th point cloud cluster in the i-th frame of the point cloud as an example, traverse all the laser points therein and record the maximum and minimum values of the X, Y, and Z axis coordinates respectively as Calculate accordingly as follows:
[0024]
[0025] Based on the quantization results, calculate the areas of the minimum circumscribed rectangles of the point cloud cluster on the X-Z, Y-Z, and X-Y projection planes as follows:
[0026]
[0027] Taking the projection result of the point cloud on the X-Z plane as an example, for the two-dimensional point cloud, the rolling ball (Alpha Shape, AS) algorithm is used to extract the concave hull contour, and the contour points are numbered clockwise; based on the contour point numbers and coordinates, the area of the concave hull polygon is calculated by triangular segmentation as follows:
[0028]
[0029] where, represents the two-dimensional coordinates of the j-th point in the current contour point set;
[0030] Based on and the quantization results are calculated as follows:
[0031]
[0032] Similarly, calculate and as follows:
[0033]
[0034] Based on and the quantization results calculate V k , as follows:
[0035]
[0036] The attribute features refer to the features that describe the diversified attributes such as the internal composition of the point cloud cluster, the laser intensity distribution, and the morphological characteristics. A total of 6 attribute features are extracted, including: the number of laser points N, the laser point density P, the average laser intensity I mean , the variance of laser intensity I var , the overall linear dimension D dim , the overall surface dimension D fla . The specific quantization methods for the above features are as follows:
[0037] Taking the k-th point cloud cluster in the i-th frame of the point cloud as an example, during the quantization of geometric features, count N k and accumulate the laser intensities of all laser points, denoted as as follows:
[0038]
[0039] where, j represents the laser point serial number, intensity jIndicates the laser intensity of the j-th laser point;
[0040] Based on V k , N k , Calculate P based on the quantization result k and as follows:
[0041]
[0042] Based on and N k calculate the quantization result as follows:
[0043]
[0044] Construct the covariance matrix C based on the three-dimensional coordinates of all laser points in the current point cloud cluster k , as follows:
[0045]
[0046] where represents the covariance between a and b; taking as an example, as follows:
[0047]
[0048] where represents the three-dimensional coordinates of the geometric center of the current point cloud cluster, (x jk , y jk , z jk ) represents the three-dimensional coordinates of the j-th laser point;
[0049] Arrange the three eigenvalues corresponding to C k in descending order and denote them as Furthermore, calculate and as follows:
[0050]
[0051] According to the data basis and information transfer relationship required for quantifying the above 13 features, through a single pass of the point cloud and adopting a multi-threaded processing mode, the classification feature system of each point cloud cluster can be efficiently constructed, thus ensuring the timeliness of data processing and transmission;
[0052] Step 1-3: Calculate the SRCC between features, and divide the features with calculation results greater than 0.8 into high-correlation feature subsets; retain the feature with the highest information content in each subset to effectively reduce the dimension of the relevant features;
[0053] Steps 1-4: For the dimension-reduced classification feature system, it is proposed to use the DBSCAN algorithm to cluster the continuous numerical features respectively, and use the clustering labels to replace the original data, so as to reasonably transform all continuous numerical features into discrete categorical features, and use this to assist in constructing a feature histogram. The above process realizes feature binning from the perspective of data distribution, does not require setting the number of categories in advance, and avoids introducing human errors. For the dimension-reduced and transformed classification feature system, the Exclusive Feature Bundling (EFB) algorithm is used to screen and bundle mutually exclusive features.
[0054] Steps 1-5: After feature dimension reduction, transformation, and bundling, correlations may reappear among individual features in the current classification feature system. However, since the transformation and bundling disrupt the original data distribution form of the features, the SRCC cannot reflect the true correlations among the current features. Therefore, the CS between them is calculated as a judgment index. Based on the CS calculation results between the features, the Feature Bidirectional Screening (FBS) algorithm is used to construct an optimal classification feature subset. All the features in the current classification feature system are arranged in descending order according to the corresponding Weight index and recorded as sequence F ps , and its reverse sequence is recorded as sequence F io ; Take the first feature from F ps and add it to the feature subset, construct a LightGBM decision tree, and output the current classification accuracy as the accuracy benchmark. Based on the CS calculation results between the remaining features in F ps and this feature, add the features with a correlation greater than 0.8 to the feature subset, also construct a decision tree and output the classification accuracy. If the accuracy increases, update the accuracy benchmark, and sequentially remove the existing features from the current feature subset according to the feature arrangement order in F io . After each removal operation, output the current classification accuracy. If the accuracy decreases, withdraw this removal operation. This process stops until F io is empty; If the accuracy decreases after adding a feature, withdraw this addition operation and do not perform the above feature removal process; Continuously iterate the above feature addition and feature removal processes until F ps is empty and stops; Finally, according to the specific composition of the bundled features, determine the optimal point cloud cluster classification feature subset and the corresponding optimal LightGBM classification model.
[0055] Steps 1-6: Collect LiDAR point clouds to construct a model training set, and perform point cloud processing and quantify the point cloud cluster classification feature system and classification labels for each frame of point cloud respectively, so as to train the improved LightGBM classification model. Finally, extract all the independent point cloud clusters detected as individual trees according to the model output results.
[0056] In step 2, the single-tree point cloud clusters are preliminarily separated into branches and leaves from a geometric perspective, and a correction algorithm based on path frequency is proposed according to the Dijkstra network connection graph to obtain an accurate set of branch points;
[0057] The specific steps are as follows:
[0058] Step 2-1: Recursively segment each single-tree point cloud cluster, and preliminarily separate branches and leaves based on the geometric attributes of each small cluster; mark the point with the smallest Z-axis coordinate in the point cloud cluster as the root node and use it as the initial seed point for recursive segmentation. Obtain the 10 points closest to this point to initialize its local connection graph and perform edge trimming and edge addition. The criteria are as follows:
[0059]
[0060] Among them, L nm represents the connection edge from the nth point to the mth point, ρ n represents the local curvature of the nth point, ρ m represents the local curvature of the mth point, ρ ref represents the threshold for controlling curvature similarity, which is default set to 0.15, d nm represents the three-dimensional Euclidean distance from the nth point to the mth point, represents the standard deviation of the distances from the nth point to all points in the current local connection graph, represents the average value of the distances from the nth point to all points in the current local connection graph, represents the maximum value of the distances from the nth point to all points in the current local connection graph, and |*| represents taking the absolute value;
[0061] During the process of constructing the local connection graph of the root node, for all points added by edge addition, initialize their local connection graphs respectively and perform a new round of edge trimming and edge addition. Iterate the above process until no more edges are added to the local connection graph of the root node and then stop; subsequently, continuously select points that have not been used to construct the local connection graph as seed points and repeat the above process until all points in the current single-tree point cloud cluster are divided into any one of the local connection graphs and then stop;
[0062] Regard each local connection graph as a small cluster, and calculate its overall linearity and planarity for each small cluster through equations (10), (11), and (12); if the linearity is greater than the planarity, mark all the point clouds in this cluster as leaves, otherwise mark all the point clouds as branches;
[0063] Step 2-2: The above preliminary foliage-branch separation results are prone to misjudgment at the junctions of foliage and branches and at the junctions of branches at all levels. Therefore, a global network connection graph is constructed and a correction algorithm based on path frequency is proposed to perform secondary separation on the foliage point cloud. Since subsequent research mainly focuses on branch points, based on the preliminary foliage-branch separation results, the Dijkstra algorithm is used for all leaf points to construct the shortest path to the root node, where the root node is still determined as the point with the smallest Z-axis coordinate. A global network connection graph is constructed based on all the shortest paths, and the frequency of each leaf point in the graph is counted. The points with frequencies higher than the average frequency of each point are regarded as points to be corrected.
[0064] For each point to be corrected, select the 10 points closest to it to construct a local connection graph and calculate the local curvature. If the curvature is less than 0.5 and the local connection graph contains at least 5 branch points, then re-label the point to be corrected as a branch point. According to the above process, determine the final labels of all points to be corrected, and achieve the accurate detection of branch points from the single-tree point cloud cluster.
[0065] Propose an algorithm for constructing a single-tree descriptor based on branch and trunk information in Step 3. Fit the linear objects in the branch point set and extract the trunk (primary branch) and secondary branches, and construct a single-tree descriptor by calculating the spatial angles between branches and trunks and the spatial distances between branches.
[0066] The specific steps are as follows:
[0067] Step 3-1: For the set of branch points of the single-tree point cloud cluster, use the RANSAC algorithm to extract the linear objects in it. Based on the point cloud sets corresponding to each linear object, use the least squares algorithm to fit the spatial lines respectively, and obtain the equation of the trunk spatial line corresponding to the linear object containing the root node.
[0068] Step 3-2: Calculate the coplanarity error W between other linear objects and the trunk. Similarly, taking the k-th linear object as an example, as follows:
[0069]
[0070] Among them, represents the geometric center coordinates of the current linear object, represents the geometric center coordinates of the trunk, [m k n k p k T represents the direction vector of the spatial line corresponding to the current linear object, [m tru n tru p tru T represents the direction vector of the spatial line corresponding to the trunk, and |R| represents calculating the determinant of matrix R;
[0071] According to the calculation results of the coplanarity error between other linear objects and the tree trunk, the secondary branches are preliminarily screened; in actual situations, the secondary branches all intersect with the tree trunk, so theoretically the coplanarity error between the secondary branches and the tree trunk is small; due to the existence of linear object extraction errors and spatial line fitting errors, the linear objects with an absolute coplanarity error less than 0.3 are preliminarily marked as secondary branches; however, due to the randomness of tree branch growth, there may also be a small coplanarity error between individual low-level branches and the tree trunk, so the secondary branches are accurately screened based on the global network connection graph through path detection; for the linear objects preliminarily marked as secondary branches, the Dijkstra algorithm is used to construct the shortest path from each point to the root node and detect the specific composition of the path; if there is a point in the shortest path that contains not only the points of the current linear object and the tree trunk point, but also points from other linear objects, then the secondary branch label of the current linear object is directly removed; after performing the secondary screening on all the preliminarily marked secondary branches using the above process, the accurate secondary branch detection results are obtained;
[0072] Step 3-3: According to the accurate tree trunk and secondary branch detection results, based on the corresponding spatial line equations of each branch, calculate the spatial angle between each secondary branch and the tree trunk; taking the k-th secondary branch as an example, as follows:
[0073] θ k =arccos((r k ·r tru ) / (||r k ||||r tru ||)) (15)
[0074] Among them, θ k represents the spatial angle between the current secondary branch and the tree trunk, r k represents the direction vector of the spatial line corresponding to the current secondary branch, r tru represents the direction vector of the spatial line corresponding to the tree trunk, ||r|| represents calculating the modulus of the vector r;
[0075] In addition, calculate the spatial intersection point between each secondary branch and the tree trunk, as follows:
[0076]
[0077] Among them, (x′ k ,y′ k ,z′ k ) represents the intersection point coordinates between the current secondary branch and the tree trunk; due to various errors, it is difficult for Equation (16) to have an effective solution, so an optimization objective function is further constructed, as follows:
[0078]
[0079] Among them, Hk Denote the object to be optimized, and the optimization goal is H k = 1; Continuously adjust (x′ k , y′ k , z′ k ) until the H output by Equation (17) is closest to the optimization goal k , and the corresponding (x′ k , y′ k , z′ k ) is regarded as the spatial intersection point of the current secondary branch and the trunk;
[0080] Based on the intersection coordinates of all secondary branches and the trunk, sort them in descending order according to the Z-axis coordinate, and calculate the spatial distance between adjacent secondary branches; Take the kth secondary branch and the (k - 1)th secondary branch as an example, as follows:
[0081] D k,k-1 = z′ k - z′ k-1 , k > 1 (18)
[0082] where D k,k-1 represents the spatial distance between the current two secondary branches;
[0083] Based on the spatial angles (θ 1 , θ 2 , …, θ n-1 , θ n ) between all secondary branches and the trunk, and the spatial distances (D 1,2 , D 2,3 , …, D n-2,n-1 , D n-1,n ), construct the descriptor μ of the current individual tree, as follows:
[0084] μ = [θ 1 D 1,2 θ 2 … θ n-1 D n-1,n θ n T (19)
[0085] where n represents the number of secondary branches, and the dimension of μ is 2n - 1.
[0086] Propose a CS-based bidirectional extension vector matching algorithm as described in Step 4, establish the matching relationship of the inter-frame individual tree descriptors, and use this to assist the ICP algorithm for high-precision inter-frame registration;
[0087] The specific steps are as follows:
[0088] Step 4-1: Since the more dimensions the single-tree descriptor has, the greater the amount of information it contains and the stronger the reliability of the corresponding matching result. Therefore, taking the registration of the i-th frame of point cloud and the (i - 1)-th frame of point cloud as an example, in the i-th frame of point cloud, sort it according to the dimensions of each descriptor vector from largest to smallest, denoted as sequence K; select the first descriptor in K as the initial object to be matched, and denote its vector length as l;
[0089] Since the number of elements in the descriptor vector is odd, intercept a segment of the vector at the middle position of the initial object to be matched as the basis for two-way extension, denoted as κ; regard all descriptor vectors in the (i - 1)-th frame as the objects to be searched, and take the k-th descriptor vector μ ki-1 as an example, and denote its vector length as l′; starting from the first element in μ ki-1 , divide it into l′ - 2 segments with every adjacent 3 elements as a fixed range each time; divide all objects to be searched in the above way, calculate the CS between κ and all divided segments, screen out the divided segments with a correlation greater than 0.8 and sort them from largest to smallest according to the correlation, denoted as sequence K′, and denote the divided segment with the highest correlation as κ′;
[0090] For κ and κ′, based on the elements of the corresponding descriptors, extend one element to each side respectively and calculate the CS. If the correlation is still greater than 0.8, continue to extend to both sides and calculate the correlation; during the above two-way extension process, if one side reaches the maximum range of the descriptor, only perform one-sided extension on the other side; iterate the above two-way extension and correlation calculation process until κ or κ′ extends to the maximum range of the corresponding descriptor; if the final correlation between the two is still greater than 0.8, it is regarded as a successful match; if the correlation is less than 0.8 after any extension, replace it with the next divided segment in K′ and repeat the above process;
[0091] If K′ constructed for the initial object to be matched is empty or all divided segments in K′ do not meet the requirements of successful matching, select the next object to be matched in K and repeat the above steps; after constructing the first pair of single-tree descriptor matching combinations, select the remaining objects to be matched in K and perform the above steps in the same way, so as to construct the second pair of single-tree descriptor matching combinations;
[0092] For the two pairs of matched combinations of single-tree descriptors that have been constructed, calculate the X-Y two-dimensional Euclidean distance between the geometric centers of the paired single-tree point cloud clusters respectively; if the difference between the two sets of Euclidean distances is greater than 0.5, it is necessary to execute the above steps to construct the third pair of descriptor matching combinations and calculate the corresponding two-dimensional Euclidean distance; compare the differences between the three sets of Euclidean distances, if the difference between any two sets is greater than 0.5, construct a new descriptor matching combination again and repeat the above process; until the difference between any two sets of Euclidean distances is less than 0.2, it is regarded as constructing two pairs of effective single-tree descriptor matching combinations, and the average value of the two sets of two-dimensional Euclidean distances is used as the plane search radius r for establishing the descriptor matching relationship subsequently, so as to improve the efficiency of constructing effective single-tree descriptor matching combinations;
[0093] When executing the above steps to construct the subsequent single-tree descriptor matching combinations, calculate the two-dimensional Euclidean distance based on the geometric centers of the single-tree point cloud clusters corresponding to the objects to be matched in the i-th frame of point cloud and each searched object in the (i - 1)-th frame of point cloud, and use r as the constraint for screening the searched objects, so as to simplify the global search to an accurate local search; according to the above process, construct the third, fourth, and fifth pairs of effective single-tree descriptor matching combinations;
[0094] Step 4-2: For the five pairs of effective single-tree descriptor matching combinations that have been constructed, based on the geometric center coordinates of the corresponding paired single-tree point cloud clusters, use the Bursa model to calculate the coordinate transformation parameters between the i-th frame of point cloud and the (i - 1)-th frame of point cloud, so as to generally unify the coordinate benchmarks between the two frames of point clouds; subsequently, for the single-tree descriptors in the i-th frame of point cloud that have not established a matching relationship, directly obtain their matching objects in the (i - 1)-th frame of point cloud through the nearest neighbor search;
[0095] Step 4-3: Based on the constructed u pairs of effective single-tree descriptor matching combinations, assign the same semantic label l to the laser points scanned by the same tree in the i-th frame of point cloud and the (i - 1)-th frame of point cloud; in order to ensure that the above label information can play a significant constraint role in the subsequent auxiliary point cloud inter-frame registration, a label set f is constructed starting from 1 and incrementing by 2 in the order of successful matching, as follows:
[0096] f = [l 1 l 2 l 3 …l u-1 l u = [1 3 5…2u - 3 2u - 1] (20)
[0097] In addition, if there are individual single-tree descriptors in the i-th frame point cloud that do not establish a matching relationship, then directly publish all the single-tree point cloud clusters that have successfully established a matching relationship as a new frame of point cloud; similarly, publish the single-tree point cloud clusters that have successfully established a matching relationship in the (i - 1)-th frame point cloud as a new frame of point cloud; the newly published i-th frame point cloud and the (i - 1)-th frame point cloud only contain trunk laser points and secondary branch laser points with semantic labels, so the ICP algorithm is directly used for inter-frame registration of point clouds based on the label and coordinate information;
[0098] Based on the point clouds corresponding to the initial five pairs of effective single-tree descriptor matching combinations, the traditional ICP algorithm is used for rapid registration, and the obtained relative pose is used as the initial pose value for the inter-frame registration of the overall point cloud, so as to improve the overall registration accuracy and efficiency; subsequently, the semantic label is added as additional information to the registration model of the traditional ICP as follows:
[0099]
[0100] Among them, num represents the number of corresponding laser points in the source point cloud and the target point cloud, represents the information vector of the j-th laser point in the target point cloud, represents the information vector of the j-th laser point in the source point cloud, R′ represents the extended attitude change matrix, and t′ represents the extended displacement change matrix. The specific compositions of the two are as follows:
[0101]
[0102] Among them, R represents the inter-frame attitude change matrix, t represents the inter-frame displacement change matrix, and O represents the zero matrix;
[0103] The optimal solution of formula (21) is obtained through non-linear optimization. Among them, the semantic label registration plays a macro-control role, and the three-dimensional coordinate registration plays a micro-optimization role. The two work together to accurately register the i-th frame point cloud and the (i - 1)-th frame point cloud;
[0104] Process the adjacent frame point clouds in sequence according to the above process, so as to achieve high-precision inter-frame registration of LiDAR point clouds in urban semi-structured scenarios.
[0105] Advantages of the present invention:
[0106] 1. For the urban semi-structured scenario, in order to weaken the influence of unstable natural factors and dynamic targets on the point cloud inter-frame registration, the present invention independently designs a point cloud cluster classification feature system and proposes a single-tree detection algorithm based on improved LightGBM, so as to accurately obtain each single-tree point cloud cluster for extracting stable natural features. Among them, the present invention optimizes the feature histogram construction and feature dimensionality reduction parts in the traditional LightGBM, and proposes an optimal classification feature subset construction algorithm, so as to better balance the detection effect and training efficiency of LightGBM. The relevant experimental results show that, compared with the traditional LightGBM, the ratio of the F1-Score improvement rate to the Time increase rate of the improved LightGBM of the present invention is 1.2078, indicating that the improved LightGBM of the present invention better balances the detection effect and training efficiency. The correct detection rate of single trees of the algorithm of the present invention is 0.9722, which is increased by 12.38% compared with the comparative algorithm, while the false detection rate of other ground objects is only 0.0196, and the average time-consuming for processing a single-frame point cloud is 0.0046 s, successfully verifying the effectiveness of the algorithm of the present invention.
[0107] 2. For the successfully detected single-tree point cloud clusters, the present invention proposes a two-layer foliage and branch separation algorithm to hierarchically divide leaf points and branch points from the perspectives of local geometric attributes and global path frequencies. The relevant experimental results show that, compared with the comparative algorithm, the correct detection rate of branch points of the algorithm of the present invention is increased by 21.96%, and the correct detection rate of leaf points is decreased by 3.38%, indicating that the detection accuracy of a small part of leaf points is sacrificed, but the detection accuracy of branch points is significantly improved, which better meets the research requirements of the present invention. The correct detection rate of branch points is as high as 0.9503, ensuring the reliability of constructing single-tree descriptors based on branch point clouds in the follow-up.
[0108] 3. For the branch point cloud set, the present invention proposes a single-tree descriptor construction algorithm based on branch information to construct exclusive descriptors for each single-tree object according to the relative spatial relationship between the trunk and secondary branches. The relevant experimental results show that the correct detection rate of secondary branches of the algorithm of the present invention is 0.7343, the corresponding spatial angle error of the constructed descriptor is 4.8207°, and the spatial distance error is 0.1404 m. Moreover, the above errors all have strong stability and can be regarded as systematic errors. Therefore, the constructed single-tree descriptors can be reliably used for subsequent inter-frame single-tree object matching.
[0109] 4. For the single-tree descriptor set, the present invention proposes a bidirectional extension vector matching algorithm based on cosine similarity, which assigns unified semantic labels to the point clouds scanned by the same single-tree object in two adjacent frames of point clouds, and uses this to assist the ICP algorithm in accurately registering the adjacent-frame trunk and secondary branch point clouds. The relevant experimental results show that the root mean square error (RMSE) of the positioning of the method of the present invention is 0.3285 m, which is reduced by 98.62% and 98.94% respectively compared with the comparative methods. The time taken to process a single frame of point cloud is 0.0354 s, effectively verifying the overall performance of the method of the present invention in urban semi-structured scenarios.
[0110] 5. Replace the point cloud inter-frame registration method proposed by the present invention into the LeGO-LOAM algorithm, denoted as the LeGO-LOAM for semi-structured scenarios (Semi Structured-LeGO-LOAM, SS-LeGO-LOAM) algorithm, and compare it with 4 LiDAR SLAM algorithms. The relevant experimental results show that compared with the other 4 algorithms, the positioning RMSE of SS-LeGO-LOAM is reduced by 98.93%, 97.45%, 96.50%, and 98.57% in sequence, and the processing efficiency changes by -41.12%, 11.36%, 19.51%, and -161.59% in sequence, indicating that the method of the present invention can effectively improve the positioning accuracy of LiDAR SLAM in semi-structured scenarios and take into account the data processing efficiency, providing reliable data support for aspects such as urban planning and database construction.
[0111] 6. The method of the present invention directly detects single-tree point cloud clusters and separates branches and leaves, extracts trunk and secondary branch point clouds to construct single-tree descriptors, and constructs semantic labels by matching inter-frame single-tree descriptors, so as to assist the inter-frame registration of point clouds based on the ICP algorithm. Compared with other point cloud inter-frame registration methods for semi-structured scenarios, the research object of the method of the present invention is independent single-tree point cloud clusters, the registration objects are stable trunk and secondary branch point clouds, and the ICP algorithm is directly used for registration, so it is less affected by environmental factors and the motion state of the carrier, thus obtaining more stable and accurate registration results. BRIEF DESCRIPTION OF THE DRAWINGS
[0112] Figure 1 is a flowchart of a LiDAR point cloud inter-frame registration method for urban semi-structured scenarios according to the present invention;
[0113] Figure 2 is a specific flowchart of step 1 of an embodiment of the present invention;
[0114] Figure 3 is a specific flowchart of step 2 of an embodiment of the present invention;
[0115] Figure 4 Specific flowchart of step 3 in an embodiment of the present invention;
[0116] Figure 5 Specific flowchart of step 4 in an embodiment of the present invention;
[0117] Figure 6 Summary flowchart of an embodiment of the present invention;
[0118] Figure 7 Improved radar chart for evaluating the effectiveness of LightGBM in the present invention;
[0119] Figure 8 Sequence diagram showing the variation of the effects of the algorithm of the present invention and the comparative single-tree detection algorithm with the point cloud number;
[0120] Figure 9 Sequence diagram showing the variation of the effects of the algorithm of the present invention and the comparative branch-and-leaf separation algorithm with the point cloud cluster number;
[0121] Figure 10 Curve graph showing the variation of the correct detection rate of the secondary branches of the algorithm of the present invention with the two-dimensional projection position;
[0122] Figure 11 Sequence diagram showing the variation of the descriptor construction error of the algorithm of the present invention with the point cloud cluster number;
[0123] Figure 12 Positioning trajectory graph of the method of the present invention and two comparative point cloud registration methods corresponding to each test scenario;
[0124] Figure 13 Positioning trajectory graph of SS-LeGO-LOAM and four comparative LiDAR SLAM algorithms corresponding to each test scenario; Specific implementation manner
[0125] The following further describes an embodiment of the present invention with reference to the accompanying drawings.
[0126] In the embodiment of the present invention, a LiDAR point cloud inter-frame registration method for urban semi-structured scenarios, as Figure 1 shown, includes the following steps:
[0127] Step 1: Through LiDAR point cloud preprocessing and point cloud cluster segmentation, 13 features are independently designed for individual point cloud clusters, and the LightGBM algorithm is improved to detect whether each point cloud cluster is a tree;
[0128] Step 1-1, use the unsupervised point cloud position optimization method to calibrate the point cloud internal parameters to compensate for the equipment system error; since no additional sensor data is used to assist in processing the point cloud in the overall process, the V-ICP method is used to remove the point cloud motion distortion; after the above processing, the point cloud quality is significantly improved; however, since the main research object is an independent single tree point cloud cluster, the noise points and discrete points are not of research significance; a voxel network composed of several identical three-dimensional parallelepipeds is constructed to cover the entire point cloud, the point cloud density in each small voxel is calculated, and the points in the sparse voxels are regarded as noise points or discrete points and removed; for the problem of excessive density of point clouds, since the subsequent extraction and fitting of the trunk (first-level branch) and second-level branch point clouds to construct a single tree descriptor needs to be based on a relatively complete detailed description, and there are few continuous large-scale targets in urban semi-structured scenes, there is no need to perform point cloud downsampling; for the point cloud after internal parameter calibration and preprocessing, ground segmentation and point cloud clustering are further performed to obtain independent point cloud clustering results;
[0129] Step 1-2: For each independent point cloud cluster, 13 features are designed and extracted from the perspective of geometric structure and basic attributes, which are divided into geometric features and attribute features, so as to construct a point cloud cluster classification feature system;
[0130] Geometric features refer to the features that describe the basic geometric structure of the point cloud cluster in terms of single-axis span, projection area, and spatial volume. A total of 7 geometric features were extracted, including: X-axis span L X , Y axis span L Y , Z axis span L Z , the ratio of the area of the concave hull polygon projected onto the XZ plane to the area of the minimum circumscribed rectangle S CXZ , the ratio of the area of the concave hull polygon projected onto the YZ plane to the area of the minimum circumscribed rectangle S CYZ , the ratio of the area of the concave hull polygon projected onto the XY plane to the area of the minimum circumscribed rectangle S CXY , the volume V of the minimum circumscribed parallelepiped, the specific quantification method of the above characteristics is as follows:
[0131] Taking the kth point cloud cluster in the i-th frame point cloud as an example, we traverse all the laser points in it and record the maximum and minimum values of the X, Y, and Z coordinates as Calculate this as follows:
[0132]
[0133] based on Quantify the results and calculate the area of the minimum circumscribed rectangle of the point cloud cluster on the three projection planes XZ, YZ, and XY as follows:
[0134]
[0135] Taking the projection result of the point cloud on the X-Z plane as an example, the AS algorithm is used to extract the concave hull contour for the two-dimensional point cloud, and the contour points are numbered clockwise; based on the contour point numbers and coordinates, the area of the concave hull polygon is calculated through triangular segmentation as follows:
[0136]
[0137] where represents the two-dimensional coordinates of the j-th point in the current contour point set;
[0138] Based on and the quantization results are calculated as follows:
[0139]
[0140] Similarly, calculate and as follows:
[0141]
[0142] Based on and the quantization results calculate V k , as follows:
[0143]
[0144] The attribute features refer to the features that describe the diversified attributes such as the internal composition of the point cloud cluster, the laser intensity distribution, and the morphological characteristics. A total of 6 attribute features are extracted, including: the number of laser points N, the laser point density P, the average laser intensity I mean , the variance of laser intensity I var , the overall linear dimension D dim , the overall surface dimension D fla , and the specific quantization methods of the above features are as follows:
[0145] Similarly, taking the k-th point cloud cluster in the i-th frame of the point cloud as an example, during the quantization of geometric features, count N k and accumulate the laser intensities of all laser points, denoted as as follows:
[0146]
[0147] where j represents the laser point serial number, and intensity j represents the laser intensity of the j-th laser point;
[0148] Based on V k , Nk , Quantization result calculation P k and are as follows:
[0149]
[0150] Based on and N k the quantization result is calculated as follows: are as follows:
[0151]
[0152] Construct the covariance matrix C based on the three-dimensional coordinates of all laser points in the current point cloud cluster k , as follows:
[0153]
[0154] where represents the covariance between a and b; taking as an example, it is as follows:
[0155]
[0156] where represents the three-dimensional coordinates of the geometric center of the current point cloud cluster, and (x jk , y jk , z jk ) represents the three-dimensional coordinates of the jth laser point;
[0157] Arrange the three eigenvalues corresponding to C k in descending order and denote them as Furthermore, calculate and as follows:
[0158]
[0159] According to the data basis and information transfer relationship required for quantifying the above 13 features, by traversing the point cloud once and adopting a multi-threaded processing mode, the classification feature system of each point cloud cluster can be efficiently constructed, thus ensuring the timeliness of data processing and transfer;
[0160] Steps 1-3, calculate the SRCC between features, and divide the features with calculation results greater than 0.8 into high-correlation feature subsets respectively; retain the feature with the highest information volume in each subset to effectively reduce the dimension of relevant features;
[0161] Steps 1-4: For the dimensionality-reduced classification feature system, use the DBSCAN algorithm to cluster the continuous numerical features respectively, and replace the original data with the clustering labels, so as to reasonably transform all continuous numerical features into discrete categorical features, and use this to assist in constructing a feature histogram; the above process realizes feature binning from the perspective of data distribution, does not require setting the number of categories in advance, and avoids introducing human errors; for the dimensionality-reduced and transformed classification feature system, use the EFB algorithm to screen and bundle mutually exclusive features;
[0162] Steps 1-5: After feature dimensionality reduction, transformation, and bundling, there may be correlations between individual features in the current classification feature system again; however, since the transformation and bundling disrupt the original data distribution form of the features, the SRCC cannot reflect the true correlations between current features, so calculate the CS between them as a judgment index; based on the CS calculation results between features, use the FBS algorithm to construct an optimal classification feature subset; arrange all features in the current classification feature system in descending order according to the corresponding Weight index and record them as sequence F ps , and record its reverse sequence as sequence F io ; take the first feature from F ps and add it to the feature subset, construct a LightGBM decision tree, and output the current classification accuracy as the accuracy benchmark; based on the CS calculation results between the remaining features in F ps and this feature, add the features with a correlation greater than 0.8 to the feature subset, also construct a decision tree and output the classification accuracy; if the accuracy increases, update the accuracy benchmark, and sequentially remove the existing features from the current feature subset according to the feature arrangement order in F io , and output the current classification accuracy after each removal operation. If the accuracy decreases, withdraw this removal operation. This process stops until F io is empty; if the accuracy decreases after adding features, withdraw this addition operation, and do not perform the above feature removal process; continuously iterate the above feature addition and feature removal processes until F ps is empty and stops; finally, determine the optimal point cloud cluster classification feature subset and the corresponding optimal LightGBM classification model according to the specific composition of the bundled features;
[0163] Steps 1-6: Collect LiDAR point clouds to construct a model training set, perform point cloud processing on each frame of point cloud respectively, and quantify the point cloud cluster classification feature system and classification labels, so as to train an improved LightGBM classification model; finally, extract all independent point cloud clusters detected as individual trees according to the model output results.
[0164] Step 2: Initially separate the branches and leaves of the individual tree point cloud clusters from a geometric perspective, and propose a correction algorithm based on path frequency according to the Dijkstra network connection graph to obtain an accurate set of tree branch points;
[0165] Step 2-1: Recursively segment each individual tree point cloud cluster, and initially separate the branches and leaves based on the geometric attributes of each small cluster; Mark the point with the minimum Z-axis coordinate in the point cloud cluster as the root node and use it as the initial seed point for recursive segmentation. Obtain the 10 points closest to this point to initialize its local connection graph and perform edge trimming and edge addition. The criteria are as follows:
[0166]
[0167] Among them, L nm represents the connection edge from the nth point to the mth point, ρ n represents the local curvature of the nth point, ρ m represents the local curvature of the mth point, ρ ref represents the threshold for controlling curvature similarity, and by default, it is set to 0.15. d nm represents the three-dimensional Euclidean distance from the nth point to the mth point, represents the standard deviation of the distances from the nth point to all points in the current local connection graph, represents the average value of the distances from the nth point to all points in the current local connection graph, represents the maximum value of the distances from the nth point to all points in the current local connection graph, and |*| represents taking the absolute value;
[0168] During the process of constructing the local connection graph of the root node, for all points added by edge addition, initialize their local connection graphs respectively and perform a new round of edge trimming and edge addition. Iterate the above process until no more edges are added to the local connection graph of the root node and then stop; Subsequently, continuously select points that have not been used to construct the local connection graph as seed points and repeat the above process until all points in the current individual tree point cloud cluster are divided into any one of the local connection graphs and then stop;
[0169] Regard each local connection graph as a small cluster, and calculate its overall linearity and planarity for each small cluster through equations (10), (11), and (12); If the linearity is greater than the planarity, mark all the point clouds in this cluster as leaves, otherwise mark all the point clouds as branches;
[0170] Step 2-2: The above preliminary branch and leaf separation results are prone to misjudgment at the junctions of branches and leaves and at the junctions of branches at all levels. Therefore, a global network connection graph is constructed and a correction algorithm based on path frequency is proposed to perform secondary separation on the branch and leaf point cloud. Since the subsequent research mainly focuses on branch points, based on the preliminary branch and leaf separation results, the Dijkstra algorithm is used for all leaf points to construct the shortest path to the root node, where the root node is still determined as the point with the smallest Z-axis coordinate. A global network connection graph is constructed based on all the shortest paths, and the frequency of each leaf point in the graph is counted. The points with a frequency higher than the average frequency of each point are regarded as points to be corrected.
[0171] For each point to be corrected, select the 10 points closest to it to construct a local connection graph and calculate the local curvature. If the curvature is less than 0.5 and the local connection graph contains at least 5 branch points, then re-label the point to be corrected as a branch point. According to the above process, determine the final labels of all points to be corrected, and realize the accurate detection of branch points from the single-tree point cloud cluster.
[0172] Step 3: Propose an algorithm for constructing a single-tree descriptor based on branch and trunk information, fit the linear objects in the branch point set and extract the trunk (primary branch) and secondary branches, and construct a single-tree descriptor by calculating the spatial angles between branches and the spatial distances between branches.
[0173] Step 3-1: For the branch point set of the single-tree point cloud cluster, use the RANSAC algorithm to extract the linear objects in it. Based on the point cloud sets corresponding to the respective linear objects, use the least squares algorithm to fit the spatial lines respectively, and obtain the trunk spatial line equation corresponding to the linear object containing the root node.
[0174] Step 3-2: Calculate the coplanarity error W between other linear objects and the trunk. Similarly, take the k-th linear object as an example, as follows:
[0175]
[0176] Among them, represents the geometric center coordinates of the current linear object, represents the geometric center coordinates of the trunk, [m k n k p k T represents the direction vector of the spatial line corresponding to the current linear object, [m tru n tru p tru T represents the direction vector of the spatial line corresponding to the trunk, and |R| represents calculating the determinant of matrix R;
[0177] According to the calculation results of the coplanarity error between other linear objects and the tree trunk, the secondary branches are preliminarily screened; in actual situations, the secondary branches all intersect with the tree trunk, so theoretically the coplanarity error between the secondary branches and the tree trunk is small; due to the existence of linear object extraction errors and spatial line fitting errors, the linear objects with the absolute value of the coplanarity error less than 0.3 are preliminarily marked as secondary branches; however, due to the randomness of tree branch growth, there may also be a small coplanarity error between individual low-level branches and the tree trunk, so the secondary branches are accurately screened based on the global network connection graph through path detection; for the linear objects preliminarily marked as secondary branches, the Dijkstra algorithm is used to construct the shortest path from each point to the root node and detect the specific composition of the path; if there is a point in the shortest path that contains not only the points of the current linear object and the tree trunk points, but also points from other linear objects, then the secondary branch label of the current linear object is directly removed; after performing the secondary screening on all the preliminarily marked secondary branches using the above process, the accurate secondary branch detection results are obtained;
[0178] Step 3-3: According to the accurate tree trunk and secondary branch detection results, based on the corresponding spatial line equations of each branch, calculate the spatial angle between each secondary branch and the tree trunk; taking the k-th secondary branch as an example, as follows:
[0179] θ k =arccos((r k ·r tru ) / (||r k ||||r tru ||)) (15)
[0180] Among them, θ k represents the spatial angle between the current secondary branch and the tree trunk, r k represents the direction vector of the spatial line corresponding to the current secondary branch, r tru represents the direction vector of the spatial line corresponding to the tree trunk, and ||r|| represents obtaining the modulus length of the vector r;
[0181] In addition, calculate the spatial intersection point between each secondary branch and the tree trunk, as follows:
[0182]
[0183] Among them, (x′ k ,y′ k ,z′ k ) represents the intersection point coordinates between the current secondary branch and the tree trunk; due to various errors, it is difficult for Equation (16) to have an effective solution, so an optimization objective function is further constructed, as follows:
[0184]
[0185] Among them, Hk Denote the object to be optimized, and the optimization goal is H k = 1; Continuously adjust (x′ k , y′ k , z′ k ) until the H output by Equation (17) is closest to the optimization goal; k , and the corresponding (x′ k , y′ k , z′ k ) is regarded as the spatial intersection point of the current secondary branch and the trunk;
[0186] Based on the intersection coordinates of all secondary branches and the trunk, sort them in descending order according to the Z-axis coordinates, and calculate the spatial distance between adjacent secondary branches; Taking the k-th secondary branch and the k-1-th secondary branch as an example, as follows:
[0187] D k,k-1 = z′ k - z′ k-1 , k > 1 (18)
[0188] where D k,k-1 represents the spatial distance between the current two secondary branches;
[0189] Based on the spatial angles (θ 1 , θ 2 , …, θ n-1 , θ n ) between all secondary branches and the trunk, and the spatial distances (D 1,2 , D 2,3 , …, D n-2,n-1 , D n-1,n ) between adjacent secondary branches, construct the descriptor μ of the current individual tree, as follows:
[0190] μ = [θ 1 D 1,2 θ 2 … θ n-1 D n-1,n θ n T (19)
[0191] where n represents the number of secondary branches, and the dimension of μ is 2n - 1.
[0192] Step 4: Propose a CS-based bidirectional extension vector matching algorithm to establish the matching relationship of the inter-frame individual tree descriptor, and use this to assist the ICP algorithm for high-precision inter-frame registration;
[0193] Step 4-1: Since the more dimensions the single-tree descriptor has, the greater the amount of information it contains and the stronger the reliability of the corresponding matching result. Therefore, taking the registration of the i-th frame of point cloud and the (i - 1)-th frame of point cloud as an example, in the i-th frame of point cloud, sort it according to the dimensions of each descriptor vector from largest to smallest, denoted as sequence K. Select the first descriptor in K as the initial object to be matched, and denote its vector length as l.
[0194] Since the number of elements in the descriptor vector is odd, intercept a segment of the vector at the middle position of the initial object to be matched as the basis for two-way extension, denoted as κ. Take all descriptor vectors in the (i - 1)-th frame as the objects to be searched, and take the k-th descriptor vector μ ki-1 as an example, and denote its vector length as l′. Starting from the first element in μ ki-1 , divide it into l′ - 2 segments with every adjacent 3 elements as a fixed range each time. Divide all objects to be searched in the above way, calculate the CS between κ and all divided segments, screen out the segments with a correlation greater than 0.8 and sort them from largest to smallest according to the correlation, denoted as sequence K′, and denote the segment with the highest correlation as κ′.
[0195] For κ and κ′, based on the elements of the corresponding descriptors, extend one element to each side respectively and calculate the CS. If the correlation is still greater than 0.8, continue to extend to both sides and calculate the correlation. During the above two-way extension process, if one side reaches the maximum range of the descriptor, only perform one-sided extension on the other side. Iterate the above two-way extension and correlation calculation process until κ or κ′ extends to the maximum range of the corresponding descriptor. If the final correlation between the two is still greater than 0.8, it is regarded as a successful match. If the correlation is less than 0.8 after any extension, replace it with the next segment in K′ and repeat the above process.
[0196] If K′ constructed for the initial object to be matched is empty or all segments in K′ do not meet the requirements of successful matching, select the next object to be matched in K and repeat the above steps. After constructing the first pair of single-tree descriptor matching combinations, select the remaining objects to be matched in K and also execute the above steps to construct the second pair of single-tree descriptor matching combinations.
[0197] For the two pairs of matched combinations of single-tree descriptors that have been constructed, calculate the two-dimensional Euclidean distance between the geometric centers of the paired single-tree point cloud clusters in the X-Y plane respectively; if the difference between the two sets of Euclidean distances is greater than 0.5, it is necessary to perform the above steps to construct the third pair of descriptor matching combinations and calculate the corresponding two-dimensional Euclidean distance; compare the differences between the three sets of Euclidean distances. If the difference between any two sets is greater than 0.5, construct a new descriptor matching combination again and repeat the above process; until the difference between any two sets of Euclidean distances is less than 0.2, it is regarded as constructing two pairs of effective single-tree descriptor matching combinations, and the average value of the two sets of two-dimensional Euclidean distances is used as the plane search radius r for establishing the descriptor matching relationship subsequently, so as to improve the efficiency of constructing effective single-tree descriptor matching combinations;
[0198] When performing the above steps to construct the subsequent single-tree descriptor matching combinations, calculate the two-dimensional Euclidean distance based on the geometric centers of the single-tree point cloud clusters corresponding to the objects to be matched in the i-th frame of point cloud and the objects to be searched in the (i - 1)-th frame of point cloud, and use r as the constraint for screening the objects to be searched, so as to simplify the global search to an accurate local search; according to the above process, construct the third, fourth, and fifth pairs of effective single-tree descriptor matching combinations;
[0199] Step 4-2: For the five pairs of effective single-tree descriptor matching combinations that have been constructed, based on the geometric center coordinates of the corresponding paired single-tree point cloud clusters, use the Bursa model to calculate the coordinate transformation parameters between the i-th frame of point cloud and the (i - 1)-th frame of point cloud, so as to generally unify the coordinate benchmarks between the two frames of point clouds; subsequently, for the single-tree descriptors in the i-th frame of point cloud that have not established a matching relationship, directly obtain their matching objects in the (i - 1)-th frame of point cloud through the nearest neighbor search;
[0200] Step 4-3: Based on the u pairs of effective single-tree descriptor matching combinations constructed, assign the same semantic label l to the laser points scanned by the same tree in the i-th frame of point cloud and the (i - 1)-th frame of point cloud; in order to ensure that the above label information can play a significant constraint role in the subsequent assisted point cloud inter-frame registration, a label set f is constructed starting from 1 and incrementing by 2 in the order of successful matching, as follows:
[0201] f = [l 1 l 2 l 3 …l u-1 l u = [1 3 5…2u - 3 2u - 1] (20)
[0202] In addition, there may be individual single-tree descriptors in the i-th frame of point cloud that do not establish a matching relationship. In this case, all the single-tree point cloud clusters that have successfully established a matching relationship are directly published as a new frame of point cloud. Similarly, the single-tree point cloud clusters that have successfully established a matching relationship in the (i - 1)-th frame of point cloud are published as a new frame of point cloud. The newly published i-th frame of point cloud and the (i - 1)-th frame of point cloud only contain trunk laser points and secondary branch laser points with semantic labels. Therefore, the ICP algorithm is directly used for inter-frame registration of point clouds based on label and coordinate information.
[0203] Based on the point clouds corresponding to the initial five pairs of effective single-tree descriptor matches, the traditional ICP algorithm is used for rapid registration. The obtained relative pose is used as the initial pose value for the inter-frame registration of the overall point cloud, so as to improve the overall registration accuracy and efficiency. Subsequently, the semantic label is added as additional information to the registration model of the traditional ICP as follows:
[0204]
[0205] where num represents the number of corresponding laser points in the source point cloud and the target point cloud. represents the information vector of the j-th laser point in the target point cloud. represents the information vector of the j-th laser point in the source point cloud. R′ represents the extended attitude change matrix, and t′ represents the extended displacement change matrix. Their specific compositions are as follows:
[0206]
[0207] where R represents the inter-frame attitude change matrix, t represents the inter-frame displacement change matrix, and O represents the zero matrix.
[0208] The optimal solution of Equation (21) is obtained through nonlinear optimization. Among them, the semantic label registration plays a macroscopic regulation role, and the three-dimensional coordinate registration plays a microscopic optimization role. The two work together to accurately register the i-th frame of point cloud and the (i - 1)-th frame of point cloud.
[0209] The adjacent-frame point clouds are processed in sequence according to the above process, so as to achieve high-precision inter-frame registration of LiDAR point clouds in urban semi-structured scenarios.
[0210] Since the present invention uses an improved LightGBM to detect single-tree point cloud clusters, three datasets are randomly selected from the UCI Machine Learning Database to test the classification effect of the improved LightGBM, including: the Wine dataset containing only continuous numerical features, the Bank dataset containing only discrete categorical features, and the Student dataset containing both types of features. In the example of the present invention, an experimental platform is independently built to collect real data. Among them, the LiDAR uses the RS-LiDAR-32 of RoboSense, with a horizontal field of view of 360°, a resolution of [0.1°, 0.4°], a vertical field of view of [-25°, 15°], a resolution of 0.33°, the point cloud acquisition frequency is set to 10Hz, and the maximum scanning distance is 100m; the total station model is Leica TS50, and the environmental point coordinates and spatial angles are collected through the prismless measurement mode; the integrated navigation module uses the X1 integrated navigation system of BeiYun Technology Co., Ltd., and the IMU data acquisition frequency is set to 200Hz. A LightGBM model training dataset is constructed based on the collected LiDAR point cloud. To ensure that the model does not have overfitting or underfitting problems, the ratio difference between single-tree point cloud clusters and non-single-tree point cloud clusters in the training samples is guaranteed to be no more than 2 times. In addition, although urban semi-structured scenes usually belong to outdoor scenes, to enhance the stability and general applicability of the model, training data is collected in 9 real urban outdoor scenes and 3 indoor scenes, including: evergreen forest land scene, deciduous tree forest land scene, deciduous dwarf tree forest land scene, shrub forest land scene, urban park scene, commercial street scene, traffic artery scene, campus playground scene, residential community scene, shopping mall underground garage scene, shopping mall indoor scene, campus teaching building scene. To test the detection effect of the single-tree detection algorithm based on the improved LightGBM of the present invention, an additional urban park scene and a deciduous tree forest land scene are selected to collect test data. For the two groups of test data, 50 frames of point clouds are randomly selected respectively, and the single-tree point cloud clusters in each frame of point cloud are manually labeled as the reference benchmark for verifying the single-tree detection results. 100 single-tree point cloud clusters are randomly selected from the first group of test data above, and the branches and leaves are separated respectively using CloudCompare software as the reference benchmark for testing the effect of the double-layer branch and leaf separation algorithm of the present invention. During the process of collecting the above two groups of test data, 100 single-tree point cloud clusters are cumulatively selected, and at the same time, reliable three-dimensional branch information is obtained through manual statistics and total station measurement, including: the number of secondary branches, the spatial coordinates of the intersection of the secondary branches and the trunk, and the spatial angle between the secondary branches and the trunk, so as to test the secondary branch detection accuracy and descriptor construction quality of the single-tree descriptor construction algorithm based on branch information of the present invention. Based on the existing two test scenes, an additional urban roadside belt scene is selected to collect test data to jointly verify the positioning accuracy of the point cloud registration method based on inter-frame single-tree descriptor matching of the present invention.Since it is impossible to utilize GNSS, IMU, and total station for automatic tracking to provide a continuous and stable carrier reference trajectory in the semi-structured urban scenario, the X-Y plane two-dimensional projection center coordinates of several vertical trees during the carrier movement are measured by the total station. The above coordinates are all in the total station coordinate system, and an indirect reference for judging the carrier positioning accuracy is constructed based on this. In addition, during the test data acquisition process, the total station is used to intermittently record the position of the carrier under the visible condition to provide the macroscopic movement trend of the carrier, and at the same time, the IMU data required for the comparison algorithm is collected. Test scenario 1 is an urban park scenario with relatively flat terrain, many pedestrians, mainly natural features such as evergreen trees, deciduous trees, and shrubs, as well as infrastructure such as trash cans, street lights, and benches; test scenario 2 is a deciduous tree forest scenario with large terrain undulations, almost no dynamic targets except for unstable branches and leaves, mainly deciduous trees and a small number of shrubs; test scenario 3 is an urban roadside scenario with flat terrain, few pedestrians and non-motor vehicles, regularly distributed evergreen trees, deciduous trees, and low shrubs, and there are some infrastructures and buildings in the distance; the carrier trajectory lengths in scenarios 1, 2, and 3 are approximately 350m, 400m, and 380m respectively, and the data acquisition durations are approximately 290s, 250s, and 220s respectively.
[0211] As Figure 7 shown, the larger the area enclosed by the polyline of the same color in the figure, the better the corresponding algorithm can balance the detection effect and training efficiency. The area enclosed by the outer polyline corresponding to the improved LightGBM of the present invention is always larger than the area enclosed by the inner polyline corresponding to the traditional LightGBM, verifying that the improved LightGBM of the present invention can better balance the classification effect and training efficiency and has strong general applicability.
[0212] As Figure 8 shown, the detection effects of the comparison algorithm in different scenarios vary greatly, and there are also certain fluctuations in the detection effects corresponding to different point clouds in the same scenario, indicating that the default parameters of this algorithm do not have general applicability and the stability of the detection effect is poor; the detection effects of the algorithm of the present invention for different scenarios and different point clouds are relatively close, and the correct detection rate of single trees is generally higher than 0.95, and the false detection rate of other ground objects is generally lower than 0.03. Through quantitative comparison, compared with the comparison algorithm, the correct detection rate of single trees of the algorithm of the present invention has increased by 12.38%, the false detection rate of other ground objects has decreased by 92.31%, and the detection efficiency has increased by 39.47%; the average correct detection rate of single trees of the algorithm of the present invention is 0.9722, the average false detection rate of other ground objects is 0.0196, and the average time-consuming for processing a single frame of point cloud is 0.0046s, successfully verifying the detection effect of the single-tree detection algorithm based on the improved LightGBM of the present invention for single-tree objects.
[0213] AsFigure 9 As shown, there are large fluctuations in the correct detection rate of branch points in the comparison algorithm. Among them, the single-tree point cloud clusters with low detection rates generally belong to evergreen trees. However, the correct detection rate of leaf points in this algorithm is relatively stable and generally higher than 0.85. The comparison algorithm also adopts a double-layer branch and leaf separation structure. The LeWos model is used to preliminarily separate the branches and leaves of the single-tree point cloud clusters. Subsequently, the local path tracking algorithm is used to finely separate the branches and leaves. The overall branch and leaf separation accuracy of this algorithm is relatively high, but the effect is sensitive to the length of the tracking path. In addition, when the leaves and branches block each other, the secondary correction effect of the local path tracking algorithm for discontinuous point clouds is poor. Since the LeWos model over-detects leaf points, when the accuracy of the above secondary correction algorithm decreases, the detection accuracy of the corresponding branch points of most evergreen trees decreases significantly. The algorithm of the present invention preliminarily separates the branches and leaves based on the local geometric attributes of each laser point. Its secondary correction part can correct most of the branch points misdetected as leaf points according to the path frequency of the global network. Moreover, the global path frequency is not affected by the continuity of the point cloud, so the correction effect is not restricted by the path length and the occlusion between branches and leaves. However, since the main research object of the present invention is branch points, in order to control the overall complexity of the algorithm, the secondary correction part does not correct the leaf points misdetected as branch points. Therefore, in the figure, the correct detection rates of leaf points and branch points of the algorithm of the present invention are both relatively stable, but the former is generally lower than the latter. Through quantitative comparison, compared with the comparison algorithm, the correct detection rate of leaf points of the algorithm of the present invention is reduced by 3.38%, and the correct detection rate of branch points is increased by 21.96%. The ratio of the increase in the correct detection rate of branch points to the decrease in the correct detection rate of leaf points is 6.5041, indicating that the algorithm of the present invention only sacrifices a small part of the detection accuracy of leaf points, but significantly improves the detection accuracy of branch points, effectively meeting the research purpose of the present invention. In addition, since the algorithm of the present invention adopts a global strategy for secondary correction, while the comparison algorithm adopts a local strategy, the processing efficiency of the algorithm of the present invention is reduced by 15.28%. The ratio of the increase in the correct detection rate of branch points to the decrease in efficiency of the algorithm of the present invention is 1.4373, indicating that on the premise of meeting the real-time processing of data, although part of the efficiency is sacrificed, a large improvement in accuracy is obtained, successfully verifying the effectiveness of the double-layer branch and leaf separation algorithm of the present invention.
[0214] As Figure 10As shown in the figure, as the distance of the single-tree point cloud cluster from the origin increases from near to far, the corresponding detection accuracy of secondary branches shows an overall trend of first increasing, then remaining stable, and finally decreasing. Due to the limited vertical scanning field of view of LiDAR, if the single-tree point cloud cluster to be processed is too close to the origin, some real branch information may be missing in the current point cloud cluster, resulting in the corresponding secondary branches not being effectively detected. In addition, when the single-tree point cloud cluster to be processed is too far from the origin, since the measurement accuracy and data density of LiDAR decrease with the increase of distance, and the ground object features are complex in the semi-structured scene and there is a common occlusion phenomenon between ground objects, the detection accuracy of the corresponding secondary branches is also low.
[0215] As Figure 11 shown, the two fitting errors have little difference among different single-tree point cloud clusters, so they are regarded as the systematic errors of the two algorithms, that is, this type of error is relatively stable in the process of constructing different single-tree descriptors, and it is considered that its influence on the matching of single-tree descriptors between frames is small.
[0216] As Figure 12As shown, for Comparative Method 1, this method constructs combined features based on single-tree trunk landmarks for inter-frame registration. Therefore, it is not affected by dynamic features and unstable natural features, and the inter-frame stability of the combined features is stronger, which can effectively overcome the problem of point cloud registration chaos caused by terrain undulation and changes in the carrier motion state. Therefore, this method performs well in Test Scenario 1 and Test Scenario 2. However, since the distribution of tree trunk landmarks in Test Scenario 3 is relatively regular, there is a certain similarity between the combined features constructed by this method. In addition, since the tree distribution in this scenario is relatively sparse, the multi-angle perception and the minimum number of local features have a significant impact on it. Affected by various factors, the positioning effect of this method in Test Scenario 3 is relatively poor in the end. For Comparative Method 2, this method extracts stable angular features and uses the point-to-plane ICP algorithm for inter-frame registration without performing single-tree detection and dynamic target detection. Since Test Scenario 1 contains more dynamic targets, the natural features are relatively dense and most of them belong to linear features. Although there are some stable structured ground objects, it still results in a relatively low overall quality of the features extracted by this method, and there are fewer stable planes for registration. Therefore, the corresponding positioning effect is poor. Since Test Scenario 2 mainly contains natural ground objects, and the unstable environmental factors and changes in the carrier motion state have a greater impact on this method, the corresponding positioning results diverge relatively quickly, and directly lead to positioning errors after error accumulation. The environmental factors in Test Scenario 3 are similar to those in Test Scenario 1, but the ground is flatter, there are fewer dynamic targets, the distribution of natural ground objects is more regular, there are more stable structured ground objects and they are larger in scale. Therefore, the corresponding positioning results are significantly better than those in Test Scenario 1. The method of the present invention constructs descriptors for each single-tree object by extracting and fitting stable tree trunk and secondary branch point clouds, so as to match the single-tree objects between frames and add accurate semantic information, thereby assisting the inter-frame registration of point clouds based on the ICP algorithm. Therefore, the method of the present invention is not affected by dynamic targets and unstable natural factors, and is minimally affected by the terrain and the carrier motion state. Therefore, good positioning effects are obtained in all three test scenarios. Through quantitative comparison, compared with the two comparative methods, the average planar positioning RMSE of the method of the present invention is reduced by 98.62% and 98.94% respectively, the average maximum error (ME) of planar positioning is reduced by 98.69% and 99.05% respectively, and the average efficiency is reduced by 7.60% and 74.38% respectively. However, the ratios of the reduction degree of RMSE to the reduction degree of efficiency are 12.9785 and 1.3301 respectively, effectively verifying the overall performance of the method of the present invention in the urban semi-structured scenario.
[0217] As Figure 13As shown, LeGO-LOAM fails to localize in Test Scenario 1. The cluttered features generated by dynamic objects and bushes in the environment directly interfere with the feature-based point cloud inter-frame registration accuracy. Moreover, the sparse local feature extraction method adopted by this algorithm is extremely prone to failure in scenarios with many rod-shaped features, ultimately resulting in significant anomalies in the localization results. This algorithm also fails to localize in Test Scenario 2, mainly because this scenario can only provide linear features corresponding to trees and ground features, but the actual ground has irregular undulations, leading to poor corresponding ground segmentation quality, and it is difficult to control the stability of linear features. In addition, the comprehensive influence of various factors such as the randomness of the carrier's motion state, the complexity of environmental features, and the similarity of local environmental features causes its localization results to diverge and cannot be effectively corrected. This algorithm can obtain better localization results in Test Scenario 3 because there are some stable large-scale structured objects and the ground is wide and flat in this scenario, enabling the acquisition of more stable feature points. However, there are also some unstable natural features and dynamic features in the current scenario, and dynamic objects will occlude some key stable features at certain moments, resulting in errors in point cloud registration. Point-LIO has good localization effects in both Test Scenario 1 and Test Scenario 3, and is superior to the localization effect of LeGO-LOAM. This algorithm fuses LiDAR and IMU data through a tightly coupled mode based on filtering optimization, enhancing the algorithm's adaptability to dynamic environments. Moreover, the LiDAR point cloud processing part is registered point by point to the corresponding plane, and it has good localization performance in semi-structured scenarios with both sparse trees and stable structured objects. However, this algorithm does not screen stable natural features, and low shrubs and leaf noise interfere with the point cloud registration accuracy and efficiency. In Test Scenario 2, the tree distribution is relatively dense and the local environmental structure is similar, resulting in it being difficult for the point cloud registration method used by this algorithm to form high-quality matching point pairs, and even more incorrect pairing results appear, and it is also interfered by unstable natural features. Although this algorithm uses IMU information to perform high-frequency optimization on LiDAR SLAM, making it applicable to undulating terrains and dynamic changes in the carrier's motion, the drift error of the IMU accumulates relatively quickly in complex environments. At the same time, the above factors cause the LiDAR inter-frame registration error to continuously accumulate, resulting in the overall localization results of the algorithm diverging over time.LIO-SAM is also a tightly-coupled SLAM algorithm integrating IMU and LiDAR. However, this algorithm uses graph optimization-based tight coupling to replace the incremental optimization-based tight coupling in Point-LIO, and the back-end optimization part has better global consistency. Therefore, it has stronger accuracy, robustness, and dynamic object processing capabilities and is suitable for more complex environments and long-term positioning tasks. However, the processing efficiency of this algorithm is relatively low, and its real-time performance is worse than that of Point-LIO. In Test Scenario 1, this algorithm has certain dynamic target detection capabilities and stable natural feature screening capabilities through feature filtering, and the IMU information can compensate for some point cloud registration errors. Therefore, its positioning results are generally better than those of the first two comparison algorithms. However, in an environment with a high density of dynamic targets, if there is a serious target occlusion phenomenon, the dynamic features will still dominate the point cloud registration process, thereby affecting the overall positioning effect. As shown in the position where the positioning trajectory shows a significant deviation in the figure, according to the actual situation, the carrier corresponding to this section of the trajectory is passing through a group of pedestrians, and a large number of dynamic targets have caused the positioning accuracy of LiDAR SLAM to decrease, and relying on the short-term high-precision nature of the IMU cannot correct the overall positioning effect in this stage. In Test Scenario 2, this algorithm also faces the influence of local feature similarity and high vehicle dynamics on the LiDAR positioning system, as well as the influence of frequent motion state changes and terrain undulations on the IMU pose estimation. Although LiDAR and IMU can complement each other, the probability of problems occurring simultaneously in both systems in this scenario is relatively high, which leads to the divergence of positioning errors. However, due to the powerful global optimization function of LIO-SAM, it can better handle IMU errors and environmental interference. Therefore, compared with LeGO-LOAM and Point-LIO, it has stronger stability. Compared with Test Scenario 1, since the ground is flat, there are fewer dynamic targets, and the natural ground features are distributed regularly in Test Scenario 3, the positioning effect of LIO-SAM in this scenario is more stable and the positioning accuracy is higher.FAST-LIO2 adopts an incremental sparse voxelization feature extraction method and an IMU tight coupling mode based on filtering optimization, which can quickly adapt to the appearance of dynamic targets and has strong anti-interference ability for small dynamic targets such as leaves or independent pedestrians. However, it still cannot handle the situation where dynamic targets appear in clusters. This algorithm uses a lightweight point cloud feature extraction method, and for low-density single-tree point cloud clusters or messy shrub point cloud clusters, it cannot extract enough effective features. Therefore, in test scenario 1, the positioning accuracy of FAST-LIO2 is poor, only better than the LeGO-LOAM algorithm. In test scenario 2, FAST-LIO2 not only has all the problems faced by the above LiDAR / IMU fusion algorithms, but also is affected by the overly sparse effective features, resulting in a relatively fast divergence of the positioning error. Since there are both relatively regular natural features and stable structured ground objects in test scenario 3, the feature extraction method adopted by FAST-LIO2 can effectively acquire and utilize the above heterogeneous features, and this algorithm has a good processing effect on long-distance sparse point clouds. However, it will be affected by the uneven feature distribution, so the positioning effect of FAST-LIO2 in this scenario is good and better than Point-LIO and LeGO-LOAM. The SS-leGO-LOAM algorithm integrating the point cloud inter-frame registration method of the present invention does not rely on the information assistance of additional sensors such as IMU. Although it lacks external constraints, it also reduces the impact of the external information quality on the overall positioning result. The method of the present invention only extracts stable trunk point clouds and secondary branch point clouds to construct descriptors and assist the point cloud inter-frame registration based on the ICP algorithm. Therefore, the registration effect is hardly interfered by dynamic targets and unstable natural factors and does not depend on the feature extraction quality. In addition, the method of the present invention uses reliable semantic information to assist point cloud registration, making SS-LeGO-LOAM also applicable to local highly similar environments and high-dynamic situations of the carrier. To sum up, SS-LeGO-LOAM effectively solves the key problems faced by the above 4 comparison algorithms, so it obtains good positioning effects in all 3 test scenarios and has a high data processing efficiency. Through quantitative comparison, compared with the other 4 algorithms, the average planar positioning RMSE of SS-LeGO-LOAM is reduced by 98.93%, 97.45%, 96.50%, and 98.57% in turn, and the average planar positioning ME is reduced by 98.78%, 97.31%, 97.33%, and 98.26% in turn. The average processing efficiency changes by -41.12%, 11.36%, 19.51%, and -161.59% in turn. By comparing the positioning accuracy and processing efficiency, the overall effect of SS-LeGO-LOAM is intuitively demonstrated, further verifying that the point cloud registration method based on inter-frame single-tree descriptor matching of the present invention can effectively improve the positioning performance of LiDAR SLAM in urban semi-structured scenarios.
[0218] As described above, this is only the most basic specific implementation manner of the present invention, but the protection scope of the present invention is not limited thereto. Any replacement that can be understood by those skilled in the art within the technical scope disclosed by the present invention should be covered within the 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 LiDAR point cloud frame registration method for urban semi-structured scenes, characterized in that: The following steps are involved: Step 1: Through LiDAR (Light Detection and Ranging) point cloud preprocessing and point cloud cluster segmentation, 13 features are independently designed for independent point cloud clusters, and the Light Gradient Boosting Machine (LightGBM) algorithm is improved to detect whether each point cloud cluster is a tree; Step 2: Perform a preliminary branch and leaf separation on the single tree point cloud cluster from a geometric perspective, and propose a correction algorithm based on path frequency according to the Dijkstra network connection diagram to obtain an accurate branch point set; Step 3: Propose a single tree descriptor construction algorithm based on branch information, fit the linear target in the branch point concentration and extract the trunk (primary branch) and secondary branches, and construct a single tree descriptor by calculating the spatial angle between branches and the spatial distance between branches; Step 4: A bidirectional extended vector matching algorithm based on cosine similarity (CS) is proposed to establish the matching relationship between single descriptors between frames, so as to assist the iterative closest point (ICP) algorithm to perform high-precision inter-frame registration.
2. The LiDAR point cloud frame registration method for urban semi-structured scenes according to claim 1, characterized in that: In step 1, through LiDAR point cloud preprocessing and point cloud cluster segmentation, 13 features are independently designed for independent point cloud clusters, and the LightGBM algorithm is improved to detect whether each point cloud cluster is a tree; The specific steps are as follows: Step 1-1, use the unsupervised point cloud position optimization method to calibrate the point cloud internal parameters to compensate for the equipment system error; since no additional sensor data is used to assist in processing the point cloud in the whole process, the V-ICP (Velocity updating-Iterative Closest Point) method is used to remove the point cloud motion distortion; after the above processing, the point cloud quality is significantly improved; however, since the main research object is an independent single tree point cloud cluster, the noise points and discrete points are not of research significance; a voxel network composed of several identical three-dimensional parallelepipeds is constructed to cover the entire point cloud, the point cloud density in each small voxel is calculated, and the points in the sparse voxels are regarded as noise points or discrete points and removed; for the problem of excessive density of point clouds, since the subsequent extraction and fitting of the trunk (first-level branch) and second-level branch point clouds to construct a single tree descriptor needs to be based on a relatively complete detailed description, and there are few continuous large-scale targets in urban semi-structured scenes, there is no need to perform point cloud downsampling; for the point cloud after internal parameter calibration and preprocessing, ground segmentation and point cloud clustering are further performed to obtain independent point cloud clustering results; Step 1-2: For each independent point cloud cluster, 13 features are designed and extracted from the perspective of geometric structure and basic attributes, which are divided into geometric features and attribute features, so as to construct a point cloud cluster classification feature system; Geometric features refer to the features that describe the basic geometric structure of the point cloud cluster in terms of single-axis span, projection area, and spatial volume. A total of 7 geometric features were extracted, including: X-axis span L X , Y axis span L Y , Z axis span L Z , the ratio of the area of the concave hull polygon projected onto the XZ plane to the area of the minimum circumscribed rectangle S CXZ , the ratio of the area of the concave hull polygon projected onto the YZ plane to the area of the minimum circumscribed rectangle S CYZ , the ratio of the area of the concave hull polygon projected onto the XY plane to the area of the minimum circumscribed rectangle S CXY , the volume V of the minimum circumscribed parallelepiped, the specific quantification method of the above characteristics is as follows: Taking the kth point cloud cluster in the i-th frame point cloud as an example, we traverse all the laser points in it and record the maximum and minimum values of the X, Y, and Z coordinates as Calculate this as follows: based on Quantify the results and calculate the area of the minimum circumscribed rectangle of the point cloud cluster on the three projection planes XZ, YZ, and XY as follows: Taking the projection result of point cloud on XZ plane as an example, the Alpha Shape (AS) algorithm is used to extract the concave hull contour for the two-dimensional point cloud. The contour points are numbered clockwise; based on the contour point numbers and coordinates, the concave hull polygon area is calculated by triangulation. as follows: in, Represents the two-dimensional coordinates of the jth point in the current contour point set; based on and Quantitative result calculation as follows: Similarly, calculation and as follows: based on and Quantization result calculation V k ,as follows: Attribute features refer to the features that describe the internal structure of the point cloud cluster, laser intensity distribution, morphological characteristics and other diversified attributes. A total of 6 attribute features were extracted, including: the number of laser points N, the laser point density P, the average laser intensity I mean , laser intensity variance I var 、Overall Linearity D dim , Overall surface D fla , the specific quantification method of the above features is as follows: Taking the kth point cloud cluster in the i-th frame point cloud as an example, in the process of quantifying geometric features, statistics N k And the laser intensity of all laser points is accumulated, recorded as as follows: Among them, j represents the laser point number, intensity j represents the laser intensity of the jth laser point; Based on V k 、N k , Quantitative results calculation P k and as follows: based on and N k Quantitative result calculation as follows: Construct the covariance matrix C based on the 3D coordinates of all laser points in the current point cloud cluster k ,as follows: in, represents the covariance between a and b; For example, as follows: in, Represents the three-dimensional coordinates of the geometric center of the current point cloud cluster, (x jk ,y jk ,z jk ) represents the three-dimensional coordinates of the j-th laser point; C k The corresponding three eigenvalues are recorded in descending order as Then calculate and as follows: According to the data foundation and information transmission relationship required for quantifying the above 13 features, a classification feature system can be efficiently constructed for each point cloud cluster by traversing the point cloud once and using a multi-threaded processing mode, thereby ensuring the timeliness of data processing and transmission; Step 1-3: Calculate the Spearman's Rank Correlation Coefficient (SRCC) between features, and divide the features with a calculated result greater than 0.8 into high-correlation feature subsets; retain the features with the highest information content in each subset to achieve effective dimensionality reduction of the relevant features; Step 1-4: for the classification feature system after dimensionality reduction, it is proposed to use the density-based spatial clustering of applications with noise (DBSCAN) algorithm to cluster the continuous numerical features respectively, and use the clustering label to replace the original data, so that all continuous numerical features are reasonably converted into discrete category features, so as to assist in constructing the feature histogram; the above process realizes feature binning from the perspective of data distribution, without setting the number of categories in advance, avoiding the introduction of human errors; for the classification feature system after dimensionality reduction and transformation, the exclusive feature bundling (EFB) algorithm is used to screen and bundle mutually exclusive features; Steps 1-5: After feature dimension reduction, transformation, and bundling, correlation may reappear between individual features in the current classification feature system; however, since the transformation and bundling disrupt the original data distribution form of the features, SRCC cannot reflect the true correlation between the current features, so the CS between them is calculated as a judgment indicator; based on the CS calculation results between the features, the feature bidirectional screening (Feature Bidirectional Screening, FBS) algorithm is used to construct the optimal classification feature subset; all features in the current classification feature system are arranged from large to small according to the corresponding Weight index and recorded as a sequence F ps , and record its reverse sequence as sequence F io ; from F ps Take out the first feature from the feature subset, build a LightGBM decision tree, and output the current classification accuracy as the accuracy benchmark; based on F ps The CS calculation results between the remaining features and this feature are added to the feature subset, and the features with correlation greater than 0.8 are also built into the feature subset. The decision tree is also constructed and the classification accuracy is output. If the accuracy increases, the accuracy benchmark is updated and the classification accuracy is calculated according to F. io The existing features are removed from the current feature subset in the order of feature arrangement in the , and the current classification accuracy is output after each removal operation. If the accuracy decreases, the removal operation is withdrawn, and the process continues until F io Stop after emptying; if the accuracy decreases after adding features, withdraw the addition operation and do not perform the above feature removal process; continue to iterate the above feature addition and feature removal process until F ps Stop after emptying; finally, according to the specific composition of the bundled features, determine the optimal point cloud cluster classification feature subset and the corresponding optimal LightGBM classification model; Steps 1-6: Collect LiDAR point clouds to build a model training set, process each frame of point cloud and quantify the point cloud cluster classification feature system and classification labels to train the improved LightGBM classification model; finally, extract all independent point cloud clusters detected as single trees based on the model output results.
3. The LiDAR point cloud frame registration method for urban semi-structured scenes according to claim 1, characterized in that: In step 2, the single tree point cloud cluster is initially separated from the branches and leaves from a geometric perspective, and a correction algorithm based on path frequency is proposed according to the Dijkstra network connection diagram to obtain an accurate branch point set; The specific steps are as follows: Step 2-1: Recursively segment each single tree point cloud cluster, and perform preliminary branch and leaf separation based on the geometric attributes of each small cluster; mark the point with the smallest Z-axis coordinate in the point cloud cluster as the root node and use it as the initial seed point for recursive segmentation, obtain the 10 points closest to the point to initialize its local connection graph and perform trimming and adding edges. The benchmark is as follows: Among them, L nm represents the connection edge from the nth point to the mth point, ρ n represents the local curvature of the nth point, ρ m represents the local curvature of the mth point, ρ ref Indicates the threshold for controlling curvature similarity, which is set to 0.15 by default. nm Represents the three-dimensional Euclidean distance from the nth point to the mth point, Represents the standard deviation of the distance between the nth point and all points in the current local connection graph, Represents the average distance between the nth point and all points in the current local connection graph, It represents the maximum distance between the nth point and all points in the current local connection graph, and |*| represents the absolute value. In the process of constructing the local connection graph of the root node, for all the points added by adding edges, their local connection graphs are initialized and a new round of trimming and adding edges is performed. The above process is iterated until no edges are added to the local connection graph of the root node. Then, the points that are not used to construct the local connection graph are continuously selected as seed points to repeat the above process until all the points in the current single tree point cloud cluster are divided into any local connection graph. Each local connection graph is regarded as a small cluster, and its overall linearity and surface degree are calculated for each small cluster by using equations (10), (11), and (12); if the linearity is greater than the surface degree, all point clouds in the cluster are marked as leaves, otherwise all point clouds are marked as branches; Step 2-2, the above preliminary branch-leaf separation results are prone to misjudgment at the junction of branches and leaves and at the junction of branches at all levels, so a global network connection diagram is constructed and a correction algorithm based on path frequency is proposed to perform secondary separation of the branch and leaf point cloud; since subsequent research mainly focuses on tree branch points, based on the preliminary branch-leaf separation results, the Dijkstra algorithm is used to construct the shortest path from all leaf points to the root node, where the root node is still determined as the point with the smallest Z-axis coordinate; a global network connection diagram is constructed based on all shortest paths, and the frequency of each leaf point in the statistical diagram is counted, and points with a frequency higher than the mean frequency of each point are regarded as points to be corrected; For each point to be corrected, the 10 points closest to it are selected to construct a local connection graph and calculate the local curvature. If the curvature is less than 0.5 and the local connection graph contains at least 5 branch points, the point to be corrected is relabeled as a branch point. According to the above process, the final labels of all points to be corrected are determined to achieve accurate detection of branch points from a single tree point cloud cluster.
4. The LiDAR point cloud frame registration method for urban semi-structured scenes according to claim 1, characterized in that: The algorithm for constructing a single tree descriptor based on branch information is proposed in step 3, linear targets are fitted in the branch point concentration, and the trunk (primary branch) and secondary branches are extracted. The single tree descriptor is constructed by calculating the spatial angle between branches and the spatial distance between branches; The specific steps are as follows: Step 3-1: For the branch point set of the single tree point cloud cluster, the RANSAC algorithm is used to extract the linear targets therein; based on the point cloud set corresponding to each linear target, the least squares algorithm is used to fit the spatial straight line respectively, and the spatial straight line equation of the trunk corresponding to the linear target including the root node is obtained; Step 3-2: Calculate the coplanar error W between other linear targets and the tree trunk; also take the kth linear target as an example, as follows: in, Indicates the geometric center coordinates of the current linear target. represents the geometric center coordinates of the trunk, [m k n k p k ] T Represents the direction vector of the space line corresponding to the current linear target, [m tru n tru p tru ] T represents the direction vector of the space line corresponding to the trunk, and |R| represents the determinant of the matrix R; According to the calculation results of the coplanar errors between other linear targets and the trunk, the secondary branches are preliminarily screened; in actual situations, the secondary branches all intersect with the trunk, so theoretically the coplanar errors between the secondary branches and the trunk are small; due to the existence of linear target extraction errors and spatial straight line fitting errors, the linear targets with coplanar errors less than 0.3 are preliminarily marked as secondary branches; however, due to the randomness of branch growth, there may also be small coplanar errors between individual low-level branches and the trunk, so the secondary branches are accurately screened through path detection based on the global network connection graph; for the linear targets preliminarily marked as secondary branches, the Dijkstra algorithm is used to construct the shortest path to the root node point by point and detect the specific composition of the path; if the shortest path of a certain point contains not only the points of the current linear target and the trunk points, but also the points from other linear targets, the secondary branch label of the current linear target is directly removed; after the above process is used to perform secondary screening on all preliminarily marked secondary branches, accurate secondary branch detection results are obtained; Step 3-3: According to the accurate detection results of the trunk and secondary branches, based on the spatial linear equations corresponding to each branch, calculate the spatial angle between each secondary branch and the trunk; taking the kth secondary branch as an example, as follows: θ k =arccos((r k ·r tru ) / (||r k ||||r tru ||)) (15) Among them, θ k represents the spatial angle between the current secondary branch and the trunk, r k Represents the direction vector of the spatial straight line corresponding to the current secondary branch, r tru represents the direction vector of the spatial straight line corresponding to the trunk, and ||r|| represents the modulus length of the vector r; In addition, the spatial intersection points between each secondary branch and the trunk are calculated as follows: Among them, (x′ k ,y′ k ,z′ k ) represents the coordinates of the intersection between the current secondary branch and the trunk; Due to various errors, it is difficult for Equation (16) to have an effective solution, so the optimization objective function is further constructed as follows: Among them, Hk represents the optimization object, and the optimization target is Hk=1; continuously adjust (x′ k ,y′ k ,z′ k ) until the output of formula (17) is the closest to the optimization target Hk. At this time, the corresponding (x′ k ,y′ k ,z′ k ) is regarded as the spatial intersection of the current secondary branch and the trunk; Based on the coordinates of the intersections of all secondary branches and the trunk, sort them from large to small according to the Z-axis coordinates, and calculate the spatial distance between adjacent secondary branches; taking the kth secondary branch and the k-1th secondary branch as an example, as follows: D k,k-1 =z′ k -z′ k-1 ,k>1 (18) Among them, D k,k-1 Indicates the spatial distance between the current two secondary branches; Based on the spatial angles (θ 1 ,θ 2 ,…,θ n-1 ,θ n ) and the spatial distance between adjacent secondary branches (D 1,2 ,D 2,3 ,…,D n-2,n-1 ,D n-1,n ), construct the descriptor μ of the current tree as follows: μ=[θ 1 D 1,2 i 2 … i n-1 D n-1,n i n ] T (19) Where n represents the number of secondary branches and the dimension of μ is 2n-1.
5. The LiDAR point cloud frame registration method for urban semi-structured scenes according to claim 1, characterized in that: In step 4, a bidirectional extended vector matching algorithm based on CS is proposed to establish a matching relationship between single descriptors between frames, thereby assisting the ICP algorithm in high-precision frame registration; The specific steps are as follows: Step 4-1, since the more dimensions of a single tree descriptor, the greater its information content, the more reliable the corresponding matching result; therefore, taking the registration of the i-th frame point cloud and the i-1-th frame point cloud as an example, in the i-th frame point cloud, sort the description vectors from large to small according to their dimensions, and record them as sequence K; select the first descriptor in K as the initial object to be matched, and record its vector length as l; Since the number of elements in the description vector is an odd number, a segment of the vector in the middle of the initial object to be matched is intercepted as the basis for bidirectional extension, denoted as κ; all description vectors in the i-1th frame are taken as the searched objects, and the kth description vector μ is used as the searched object. ki-1 Take it as an example, and record its vector length as l′; from μ ki-1 Starting from the first element in , divide it into l′-2 segments with a fixed range of 3 adjacent elements each time; segment all searched objects in the above manner, calculate the CS between κ and all segmented segments, select the segmented segments with correlation greater than 0.8 and sort them from large to small according to the correlation, recorded as sequence K′, and record the segment with the highest correlation as κ′; For κ and κ′, based on the element composition of the corresponding descriptor, extend one element to the left and right sides respectively and calculate CS. If the correlation is still greater than 0.8, continue to extend to both sides and calculate the correlation. In the above two-way extension process, if one side reaches the maximum range of the descriptor, only one-side extension is performed on the other side. Iterate the above two-way extension and correlation calculation process until κ or κ′ extends to the maximum range of the corresponding descriptor. If the correlation between the two is still greater than 0.8, it is considered a successful match. If the correlation is less than 0.8 after any extension, replace the next segment in K′ and repeat the above process. If the K′ constructed for the initial object to be matched is empty or all the segments in K′ do not meet the requirements for successful matching, then select the next object to be matched in K and repeat the above steps; after constructing the first pair of single tree descriptor matching combinations, select the remaining objects to be matched from K and perform the above steps in the same way, so as to construct the second pair of single tree descriptor matching combinations; For the two pairs of single-tree descriptor matching combinations that have been constructed, calculate the XY two-dimensional Euclidean distances between the geometric centers of the paired single-tree point cloud clusters respectively; if the difference between the two sets of Euclidean distances is greater than 0.5, it is necessary to perform the above steps to construct the third pair of descriptor matching combinations and calculate the corresponding two-dimensional Euclidean distances; compare the differences between the three sets of Euclidean distances, and if the difference between any two sets is greater than 0.5, construct a new descriptor matching combination again and repeat the above process; until the difference between any two sets of Euclidean distances is less than 0.2, it is considered that two pairs of valid single-tree descriptor matching combinations are constructed, and the average value of the two sets of two-dimensional Euclidean distances is used as the plane search radius r for the subsequent establishment of descriptor matching relationships, so as to improve the efficiency of constructing valid single-tree descriptor matching combinations; When executing the above steps to construct subsequent single-tree descriptor matching combinations, the two-dimensional Euclidean distance is calculated based on the geometric centers of the single-tree point cloud clusters corresponding to the object to be matched in the i-th frame point cloud and each searched object in the i-1-th frame point cloud, and r is used as a constraint for screening the searched objects, thereby simplifying the global search to an accurate local search; according to the above process, the third, fourth, and fifth pairs of valid single-tree descriptor matching combinations are constructed; Step 4-2: For the five pairs of valid single-tree descriptor matching combinations that have been constructed, based on the geometric center coordinates of the corresponding paired single-tree point cloud clusters, the Bursa model is used to calculate the coordinate conversion parameters between the i-th frame point cloud and the i-1-th frame point cloud, so as to roughly unify the coordinate reference between the two frames of point clouds; then, for the single-tree descriptors that have not established a matching relationship in the i-th frame point cloud, directly obtain their matching objects in the i-1-th frame point cloud through the nearest neighbor search; Step 4-3: Based on the constructed u-pairs of valid single tree descriptor matching combinations, the same semantic label l is assigned to the laser points scanned by the same tree in the i-th frame point cloud and the i-1-th frame point cloud; in order to ensure that the above label information can play a significant constraint role in the subsequent auxiliary point cloud frame registration, the label set f is constructed in the order of successful matching starting from 1 and increasing by 2 as a step, as follows: f=[l 1 the 2 the 3 … the u-1 the u ]=[1 3 5 … 2u-3 2u-1] (20) In addition, there may be individual tree descriptors in the i-th frame point cloud that have not established a matching relationship. In this case, all single tree point cloud clusters that have successfully established a matching relationship are directly published as a new frame of point cloud. Similarly, the single tree point cloud clusters that have successfully established a matching relationship in the i-1-th frame point cloud are published as a new frame of point cloud. The newly published i-th frame point cloud and i-1-th frame point cloud only contain trunk laser points and secondary branch laser points with semantic labels. Therefore, the ICP algorithm is directly used to perform point cloud frame registration based on the label and coordinate information. Based on the initial five pairs of valid single-tree descriptor matching combinations of corresponding point clouds, the traditional ICP algorithm is used for fast registration, and the relative pose obtained is used as the initial pose value for the overall point cloud inter-frame registration to improve the overall registration accuracy and efficiency; then, the semantic label is added as additional information to the traditional ICP registration model as follows: Among them, num represents the number of corresponding laser points in the source point cloud and the target point cloud, Represents the information vector of the jth laser point in the target point cloud, represents the information vector of the jth laser point in the source point cloud, R′ represents the attitude change matrix after dimension expansion, and t′ represents the displacement change matrix after dimension expansion. The specific composition of the two is as follows: Among them, R represents the inter-frame posture change matrix, t represents the inter-frame displacement change matrix, and O represents the zero matrix; The optimal solution of formula (21) is obtained through nonlinear optimization, in which the semantic label registration plays a macro-control role, and the three-dimensional coordinate registration plays a micro-optimization role. The two work together to accurately align the i-th frame point cloud with the i-1-th frame point cloud; The point clouds of adjacent frames are processed in sequence according to the above process, so as to achieve high-precision LiDAR point cloud inter-frame registration in urban semi-structured scenes.
Citation Information
Patent Citations
Method for automatically extracting forest stand upper layer tree parameters from LiDAR point cloud data
CN102393180A
Method for extracting single tree information from LiDAR point cloud in layered clustering mode
CN106845399A
Ground and airborne LiDAR point cloud registration method based on single-tree segmentation
CN110853081A
Single-tree point cloud branch and leaf separation method based on graph theory
CN115187979A
Method and system for separating wood components and leaf components of tree point cloud
CN116486261A
Cited By
Loopback detection method based on stable static point cloud cluster word bag
CN120707894A
A loop closing detection method based on stable static point cloud cluster bag-of-words
CN120707894B