A broad-leaved forest single tree segmentation method and system based on branch information guidance
By using a branch-guided method and RANSAC cylindrical fitting and branch segmentation techniques, the accuracy problem of trunk detection and crown segmentation in broadleaf forests was solved, achieving efficient single-tree segmentation under complex conditions and improving the accuracy of forest resource surveys and satellite remote sensing calibration.
Patent Information
- Application Number
- CN202310980612.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-04
- Publication Date
- 2026-06-26
- Estimated Expiration
- 2043-08-04
AI Technical Summary
Existing single-tree segmentation methods based on ground-based lidar suffer from poor trunk detection accuracy and inaccurate canopy segmentation in broad-leaved forests, especially in situations with dense low vegetation and complex terrain, where effective segmentation is difficult.
A branch-guided method is adopted, which uses RANSAC cylindrical fitting combined with the characteristics of tree trunk growth to detect the tree trunk. The tree trunk is extracted and the crown is segmented by the segmented growth and layer-by-layer growth of branches. The accurate segmentation of the interwoven crown is achieved by combining the changes in the thickness of the branch segments and the breadth-first growth.
It improves the accuracy of tree trunk detection and tree canopy segmentation, especially in the case of dense low vegetation and complex terrain, and can effectively segment tree canopies, thereby improving the accuracy of forest resource surveys and satellite remote sensing product calibration.
Smart Images

Figure CN117078928B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of terrestrial lidar forestry data processing technology, and particularly relates to a method and system for segmenting broad-leaved forest individual trees based on branch and trunk information guidance. Background Technology
[0002] Currently, LiDAR (Light Detection and Ranging) is an active remote sensing technology that has been developed in recent decades. It can characterize the three-dimensional structure information of forests through massive spatial points (i.e., point clouds) or waveforms, and has now become the mainstream means of extracting forest structure parameters and functional parameters.
[0003] Ground-based lidar (TLS) can acquire high-density, high-precision point cloud data, performing multi-station panoramic scans within forests to record detailed information about the branches and leaves of each tree. While the data acquisition range of TLS is typically limited to one hectare, the forest parameters estimated by TLS are often considered true values and are further used for the calibration and validation of large-scale remote sensing estimation products. TLS has been used to extract various forest parameters, including diameter at breast height (DBH), tree height, tree location, trunk curve; wood volume / aboveground biomass; leaf area index; and leaf tilt angle distribution. Individual tree segmentation is a crucial prerequisite for obtaining these forest parameters through TLS. Currently, most individual tree segmentation methods are based on airborne lidar data. These methods typically first probe the treetop from point cloud or canopy height model (CHM), and then segment individual trees from top to bottom using region growing algorithms or watershed algorithms. The segmentation effect is good for coniferous forests with distinct and loose canopies, but it is less effective for broad-leaved forests with irregular canopy shapes, dense growth, and layered structures. Ground-based lidar can acquire information about the branches and trunks under the forest canopy. Therefore, the trunks can be detected first by identifying features such as cylindrical shape / upright growth, and then the canopy can be segmented from bottom to top using regional growth.
[0004] Current methods for single-tree segmentation based on TLS data include region-growing methods, graph-cut methods, and hierarchical segmentation methods. Region-growing methods primarily segment single trees by merging branches and leaves gradually based on trunk localization and distance / angle rules. These methods have high data quality requirements, such as needing multi-station scanning to reduce point cloud loss due to occlusion. In cases of interwoven canopies, these methods also rely heavily on manual post-processing. Graph-cut methods first construct a graph of the entire point cloud or overlapping canopy regions, then achieve canopy segmentation by minimizing a cost function. These methods have fewer steps and require less prior knowledge and manual interaction, but they typically rely on complex graph-cut algorithms, which are difficult to understand and computationally inefficient. Hierarchical segmentation methods extract the canopy outline layer by layer to construct the outer morphology of single trees, which is then used for single-tree point cloud segmentation. Currently, hierarchical segmentation methods are relatively few and incomplete. Since these methods mainly utilize the canopy outline for segmentation and have lower requirements for branch integrity, they have the potential for efficient and accurate segmentation of heavily occluded TLS data, making them a promising direction for future research.
[0005] Based on the above analysis, the problems and shortcomings of the existing technology are as follows:
[0006] (1) The current single tree segmentation method based on TLS data has poor trunk detection accuracy when the understory vegetation is dense and the terrain is steep and complex.
[0007] (2) Currently, the single-tree segmentation method based on TLS data has difficulty in accurately segmenting the canopy of broad-leaved forests with high canopy closure. Summary of the Invention
[0008] To address the problems existing in the prior art, this invention provides a method and system for segmenting broad-leaved forest individual trees based on branch and trunk information.
[0009] This invention is implemented as follows: a method for segmenting broad-leaved forest trees based on branch and trunk information. The method uses ground-based lidar broad-leaved forest point clouds as the processing object, and utilizes RANSAC cylindrical fitting combined with tree trunk growth characteristics to detect tree trunks. Starting from the top of the tree trunk in low vegetation areas, the tree branches are extracted by segmenting the branches and trunks and combining the changes in the thickness of the branches and trunks. Starting from the end of the branch, the point cloud of the tree crown and leaves is segmented by growing layer by layer.
[0010] Furthermore, the method for segmenting broad-leaved forest trees based on branch and trunk information includes the following steps:
[0011] Step 1, Trunk Detection: Identify and extract tree trunks surrounded by low understory vegetation, laying the foundation for subsequent branch extraction and canopy segmentation; Trunk detection includes: relative height stratification, layer-by-layer clustering, cylinder fitting, and trunk segmentation;
[0012] Step 2, Branch Extraction: Based on the extraction of tree trunks in low-lying vegetation areas, taking advantage of the characteristics of broad-leaved forests where leaves are distributed on the outer layer of the canopy, branches grow from thick to thin, and the density suddenly increases when thin branches transition to leaves, the remaining tree trunks and branches are extracted by growing layer by layer from bottom to top, stopping growth when encountering leaves.
[0013] Step 3, Canopy Segmentation: Based on branch extraction, all branch point clouds are used as seed points, and the interwoven canopy is accurately segmented by breadth-first growth. Breadth-first growth has the same growth rate in different directions. When canopies of different sizes or shapes are intertwined, this growth method cannot accurately segment the canopy.
[0014] Furthermore, step one specifically includes:
[0015] 1-1. First, use the cloth filtering algorithm CSF in the open-source software CloudCompare to separate ground points. Then, non-ground points with a relative ground height less than H are layered according to their relative ground height, with a layer spacing of 0.2m. The relative ground height is the distance from the point to the nearest ground point. Ground points are downsampled at a spacing of 0.2m.
[0016] 1-2. Perform Euclidean clustering on each layer of point cloud. The Euclidean clustering algorithm divides the point cloud into independent cluster sets based on Euclidean distance, such that the nearest distance between any two clusters in the cluster set is greater than a set value.
[0017] 1-3. Use the Random Sample Consensus Algorithm (RANSAC) to perform cylindrical fitting on each cluster. The cylindrical model is defined as C = (L(p0, v), r), where L is the axis of the cylinder, which is composed of vector v and a point p0; r is the radius of the cylinder. The distance d from any point p to the surface of the cylindrical model can be calculated by the following formula.
[0018] d = |||(p-p0)×v||r-|;
[0019] The RANSAC algorithm estimates a cylindrical model by randomly selecting two points with normals. Points whose distance to the model surface is less than a certain value are called inliers. The RANSAC algorithm continuously estimates the model and extracts inliers within a specified maximum number of iterations. The cylindrical model with the most inliers after the iteration ends is the fitting result.
[0020] After fitting, the cylindrical model is initially filtered to remove obvious non-trunk cylindrical models;
[0021] 1-4. Merge all layered cylindrical models belonging to the same trunk, and extract the corresponding trunk point cloud using the merged cylindrical model.
[0022] Furthermore, the extraction of the corresponding tree trunk point cloud specifically includes:
[0023] 1-4-1. Identify cylindrical models belonging to the same trunk: Project the centroid of each point in the cylindrical model onto the horizontal plane, and then perform Euclidean clustering on the projected centroid points. The cylindrical models corresponding to the centroid points of the same cluster belong to the same trunk.
[0024] 1-4-2. Merging of Cylindrical Models and Extraction of Tree Trunks: First, merge at least two cylindrical models belonging to the same tree trunk into a single overall cylindrical model. The axis, axis point, and radius of the overall cylindrical model are the vector sum of the axis of the cylindrical models to be merged, the centroid of the axis point of the cylindrical models to be merged, and the average value of the radius of the cylindrical models to be merged, respectively. Use the obtained overall cylindrical model to extract the tree trunk point cloud in the low vegetation area, that is, use the formula in step 1-3 to extract points that are less than k_d * the radius of the overall cylindrical model from the surface of the overall cylindrical model. k_d is set to 0.5. If k_d is too small, the tree trunk extraction will be incomplete. If k_d is too large, it will absorb the adjacent ground and low vegetation. Remove the tree trunk point cloud with a height less than 0.8 * H.
[0025] Furthermore, step two specifically includes:
[0026] 2-1. Initial seed branch segment generation: The point at the top height length of the tree trunk in the low vegetation area is taken as the seed branch segment, and it is divided into max_layers = ceil(length / pace) layers, with the top layer being the last layer; ceil means rounding up;
[0027] 2-2. Branch segment growth: Using the last layer of the seed branch segment as the seed point, a radius neighborhood search is performed with a search radius of pace. The searched points are used as new seed points to continue the search, growing one layer at a time, until no new seed points are generated or the number of growing layers reaches max_layers; when the number of layers contained in the seed branch segment is less than max_layers, the radius of the first layer search is increased to length to cross the gap.
[0028] 2-3. Branch segment clustering and identification:
[0029] First, Euclidean clustering is performed on the set of branch segments obtained from the growth. Then, each cluster is identified and processed according to the following criteria:
[0030] 1) If a seed branch segment contains max_layers layers and the cluster satisfies one of the following conditions, then the cluster is a branch segment. Extract the cluster and use it as a seed branch segment to continue growing.
[0031] A. The cluster contains max_layers growth layers and the number of cluster points is less than pnk * the number of points in the seed branch segment, where pnk is the point number variation coefficient, and pnk is taken as 3;
[0032] B. The cluster has fewer than max_layers growth layers and the search radius increases less than max_long_search;
[0033] 2) If the seed branch segment is less than max_layers layers and the cluster contains max_layers growth layers, then the cluster is the branch segment. Extract the cluster and use it as the seed branch segment to continue growth.
[0034] Furthermore, step three specifically includes:
[0035] 3-1. Layer-by-layer growth: Starting from the end of the branch, grow one layer at a time, with a thickness of 2 * the point spacing, which is 20cm. Use the new growth point as the seed point to continue growing until no new growth points are generated; set the maximum number of growth layers to 10 layers, that is, the total growth thickness is 2m;
[0036] 3-2 Post-processing: All divided and undivided points are meshed in the xoy plane with a grid side length of 10cm. Undivided points are assigned to the tree to which the nearest divided point in the grid belongs; points that have not yet been divided are assigned to the tree to which the nearest divided point belongs in the straight line (within 10cm); any remaining points that have not been divided after processing are considered noise points or non-tree points.
[0037] Another object of the present invention is to provide a computer device including a memory and a processor, the memory storing a computer program, which, when executed by the processor, causes the processor to perform the broadleaf forest single-tree segmentation method guided by branch information.
[0038] Another object of the present invention is to provide a computer-readable storage medium storing a computer program, which, when executed by a processor, causes the processor to perform the method for segmenting broad-leaved forest trees based on branch information.
[0039] Another objective of this invention is to provide an information data processing terminal for implementing the broadleaf forest single-tree segmentation method based on branch and trunk information.
[0040] Another object of the present invention is to provide a broad-leaved forest single-tree segmentation system based on branch-trunk information guided by the aforementioned broad-leaved forest single-tree segmentation method, wherein the broad-leaved forest single-tree segmentation system based on branch-trunk information guided by the aforementioned method comprises:
[0041] The trunk prediction module is used to detect tree trunks by processing point clouds of broad-leaved forests from ground-based lidar and combining RANSAC cylindrical fitting with tree trunk growth characteristics.
[0042] The branch extraction module is used to extract tree branches starting from the top of the tree trunk in low vegetation areas by segmenting the branches and combining the changes in the thickness of the branch segments.
[0043] The point cloud segmentation module is used to segment the point cloud of tree canopy leaves by gradually increasing the number of segments, starting from the end of the branch.
[0044] Based on the above technical solutions and the technical problems solved, the advantages and positive effects of the technical solution to be protected by this invention are as follows:
[0045] First, addressing the technical problems and difficulties in solving the aforementioned existing technologies, and closely combining the technical solution to be protected by this invention with the results and data from the research and development process, this invention provides a detailed and in-depth analysis of how the technical solution of this invention solves the technical problems and the creative technical effects brought about after solving the problems. Specifically, this invention aims to solve the problem of low accuracy in trunk detection and canopy segmentation in complex broadleaf forests (mainly referring to dense low-lying vegetation and severely interwoven canopies). This invention provides a novel method for single-tree segmentation in broadleaf forests based on branch and trunk information guidance. This method uses ground-based lidar point clouds of broadleaf forests as the processing object. First, it accurately detects the trunk by combining cylindrical fitting with the trunk growth characteristics, and then achieves accurate canopy segmentation through differential region growth guided by branch and trunk information.
[0046] Secondly, considering the technical solution as a whole or from a product perspective, the technical effects and advantages of the technical solution protected by this invention are specifically described as follows: Compared with existing single-tree segmentation methods, this invention has stronger trunk detection capabilities under conditions of lush low vegetation and complex terrain; on the other hand, this invention can accurately segment tree canopies when large and small canopies are intertwined and multiple canopies are closely surrounding each other. The algorithm is highly efficient, simple and easy to use, and has significant practical implications for improving the semantic understanding of forest scenes, assisting in forest resource surveys, vegetation ecology research, and the calibration and verification of satellite remote sensing products.
[0047] Third, as supplementary evidence of the inventive step of the claims of this invention, it is also reflected in the following important aspects:
[0048] The technical solution of this invention solves a technical problem that people have long desired to solve but have never been able to successfully address:
[0049] The accuracy of individual tree segmentation in broadleaf forest point clouds from ground-based lidar directly affects the accuracy of subsequent estimations of related parameters for individual trees. Current methods for individual tree segmentation suffer from technical challenges such as difficulty in accurately segmenting the height of complex, interwoven trees and reliance on manual correction. This invention, based on the growth structure of broadleaf forests and the characteristics of ground-based lidar data, proposes the idea of using branch and trunk information to guide tree height segmentation. Through software system development, this invention effectively solves the aforementioned problems. Attached Figure Description
[0050] Figure 1 This is a flowchart of a broadleaf forest single tree segmentation method based on branch and trunk information provided in an embodiment of the present invention;
[0051] Figure 2 This is a schematic diagram of the principle of the broadleaf forest single tree segmentation method based on branch and trunk information provided in the embodiments of the present invention;
[0052] Figure 3 These are single-tree segmentation results provided in the embodiments of the present invention: a. Magnolia forest; b. Phoebe zhennan forest;
[0053] Figure 4 The following are the accuracy verification results provided by the embodiments of the present invention: a. Accuracy of estimating the height of Magnolia trees; b. Accuracy of estimating the crown width of Magnolia trees; c. Accuracy of estimating the height of Phoebe zhennan trees; d. Accuracy of estimating the crown width of Phoebe zhennan trees. Detailed Implementation
[0054] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.
[0055] like Figure 1 As shown, the method for segmenting broad-leaved forest trees based on branch and trunk information provided in this embodiment of the invention includes the following steps:
[0056] S101: Using ground-based lidar point clouds of broad-leaved forests as the processing object, tree trunk detection is performed by combining RANSAC cylindrical fitting with tree trunk growth characteristics.
[0057] S102: Extract tree branches and trunks by segmenting the growth of branches and trunks and combining the changes in the thickness of the branches and trunk segments, starting from the top of the tree trunk in low vegetation areas;
[0058] S103: Starting from the end of the branch, the canopy leaf point cloud is segmented by growing layer by layer.
[0059] This invention utilizes three-dimensional laser point cloud data of broad-leaved forests acquired by ground-based lidar. Based on the concept of regional growth, it establishes a method for segmenting individual trees in broad-leaved forests by using branch information to guide canopy segmentation, through trunk detection, branch extraction, and canopy segmentation.
[0060] Example 1:
[0061] The method for segmenting broad-leaved forest trees based on branch and trunk information provided in this embodiment of the invention includes the following steps:
[0062] Step 1: Tree Trunk Detection
[0063] This step aims to identify and extract tree trunks surrounded by low-lying understory vegetation, laying the foundation for subsequent branch extraction and canopy segmentation. Tree trunk detection comprises four steps: relative height stratification, layer-by-layer clustering, cylinder fitting, and trunk segmentation.
[0064] 1-1. First, the Cloth Simulation Filter (CSF) algorithm in the open-source software CloudCompare is used to separate ground points. Then, non-ground points with a relative ground height less than H (depending on the overall height of low vegetation, this invention uses a value of 1m) are layered according to their relative ground height, with a layer spacing of 0.2m. The relative ground height is the distance from the point to the nearest ground point. To improve the calculation speed of the relative ground height, ground points are downsampled at a point spacing of 0.2m.
[0065] 1-2. Perform Euclidean clustering on each layer of point cloud. The Euclidean Distance Clustering Algorithm divides the point cloud into independent clusters based on Euclidean distance, such that the nearest distance between any two clusters in the cluster is greater than a set value (here, it is set to twice the point spacing, which can be obtained by downsampling spacing or by statistically analyzing the nearest point distance).
[0066] 1-3. Use the Random Sample Consensus (RANSAC) algorithm to perform cylindrical fitting on each cluster. The cylindrical model is defined as C = (L(p0, v), r), where L is the axis of the cylinder, consisting of vector V and a point p0; r is the radius of the cylinder. The distance d from any point p to the surface of the cylindrical model can be calculated using the following formula.
[0067] d = |||(p-p0)×v||-r|
[0068] The RANSAC algorithm estimates the cylindrical model by randomly selecting two points with normals. Points whose distance to the model surface is less than a certain value (1 cm in this invention) are called interior points. The RANSAC algorithm continuously estimates the model and extracts interior points within a specified maximum number of iterations (30 in this invention). The cylindrical model with the most interior points after the iteration is the fitting result.
[0069] After fitting, the cylindrical model is initially filtered to remove obvious non-trunk cylindrical models. A. If the fitting radius is too large or too small... B. Axial z-component v z <min_v zIf any cylindrical model satisfies either A or B, then that cylindrical model is removed. min_r and max_r need to be roughly determined based on the trunk thickness of the sample plot; in this invention, min_r = 2.5cm and max_r = 15cm are used. min_v z Depending on the degree of inclination of the tree trunks in the sample plots, the broad-leaved forest trunks in this invention generally grow upright; therefore, min_v is taken as... z =0.85(min_v) z The value ranges from 0 to 1, with a larger value indicating a more upright tree trunk.
[0070] 1-4. Merge all layered cylindrical models belonging to the same trunk, and extract the corresponding trunk point cloud using the merged cylindrical model.
[0071] 1-4-1. Identify cylindrical models belonging to the same tree trunk:
[0072] A tree trunk is horizontally divided into multiple layers, and each layer may fit a cylindrical model. The cylindrical models belonging to the same tree trunk are close in horizontal distance. Therefore, the centroid of each point in the cylindrical model can be projected onto the horizontal plane. Then, Euclidean clustering is performed on the projected centroid points (the distance threshold is fixed at 0.1m). The cylindrical models corresponding to the centroid points belonging to the same cluster belong to the same tree trunk.
[0073] 1-4-2. Merging of cylindrical models and extraction of tree trunks:
[0074] Theoretically, combining the points within cylindrical models belonging to the same tree trunk directly yields the trunk point cloud. However, due to occlusion, low-lying vegetation attached to the trunk, and other reasons, some layers do not generate cylindrical models. Furthermore, if the number of cylindrical models belonging to the same tree trunk is too small (e.g., only one), the cylindrical model may be an incorrectly fitted result from a non-trunk point cloud. To improve the accuracy and completeness of trunk extraction, at least two cylindrical models belonging to the same tree trunk are first merged into a single overall cylindrical model. The axis, axis point, and radius of the overall cylindrical model are respectively the vector sum of the axis of the models to be merged (when the z-component of the axis is negative, the axis needs to be flipped), the centroid of the axis point of the model to be merged, and the average value of the radius of the model to be merged. Then, the obtained overall cylindrical model is used to extract the tree trunk point cloud in the low vegetation area (ground points and points with a height less than H relative to the ground). That is, the formulas in steps 1-3 are used to extract points with a distance less than k_d * the radius of the overall cylindrical model from the surface (in this invention, k_d is taken as 0.5; if k_d is too small, the tree trunk extraction will be incomplete; if k_d is too large, it will absorb the adjacent ground and low vegetation). Finally, the tree trunk point cloud with a height less than 0.8 * H is removed.
[0075] Step 2, Extraction of branches and trunks:
[0076] Based on the extraction of tree trunks in low-lying vegetation areas, this step utilizes the characteristics of broad-leaved forests, such as the distribution of leaves on the outer layer of the canopy, the gradual thinning of branches, and the sudden increase in density when thin branches transition to leaves. The remaining trunks and branches are extracted by growing layer by layer from bottom to top, and growth stops when encountering leaves.
[0077] 2-1. Initial seed branch segment generation: The point at the top height of the tree trunk in the low vegetation area (length, which is determined according to the size of the tree; the larger the tree, the larger the value should be; in this invention, 10cm is used) is taken as the seed branch segment, and it is divided into max_layers = ceil(length / pace) layers, with the top layer being the last layer. ceil represents rounding up.
[0078] 2-2. Branch Segment Growth: Using the last layer of the seed branch segment as the seed point, a radius neighborhood search is performed with a search radius equal to the pace (twice the spacing between points). The searched points are used as new seed points to continue the search, growing one layer at a time, until no new seed points are generated or the number of layers reaches max_layers (reaching the length through multiple searches ensures the correctness of the growth region while significantly reducing processing time). Specifically, when the number of layers in the seed branch segment is less than max_layers, the radius of the first layer search is increased to length to bridge the gaps.
[0079] 2-3. Branch segment clustering and identification:
[0080] First, Euclidean clustering is performed on the branch segment point set obtained from the growth (distance threshold is pace). Then, each cluster is identified and processed according to the following criteria:
[0081] 1) If a seed branch segment contains max_layers layers and the cluster satisfies one of the following conditions, then the cluster is a branch segment. Extract the cluster and use it as a seed branch segment to continue growing.
[0082] A. The cluster contains max_layers growth layers and the number of cluster points is less than pnk * the number of points in the seed branch segment. pnk is the point number variation coefficient. Since the branch grows from thick to thin, pnk can theoretically be fixed at 1. However, the number of points in the newly grown branch segment at the branch fork will be more than the number of points in the seed branch segment, but this increase is not significant compared to the increase from thin branches to leaves. In this invention, pnk is set to 3.
[0083] B. The number of growth layers is less than max_layers and the number of times the search radius is increased is less than max_long_search (this invention sets it to 50 times, on the one hand to ensure that branches are fully extracted in the case of occlusion and missing parts, and on the other hand to reduce the degree of leaves being mistakenly extracted due to the inherent gaps).
[0084] 2) If the seed branch segment is less than max_layers layers and the cluster contains max_layers growth layers, then the cluster is the branch segment. Extract the cluster and use it as the seed branch segment to continue growth.
[0085] Step 3: Canopy Segmentation
[0086] This step, based on branch extraction, uses all branch point clouds as seed points and achieves accurate segmentation of interwoven canopies through breadth-first, layer-by-layer growth. While breadth-first growth has the same growth rate in different directions, it cannot accurately segment canopies of different sizes or shapes when they are interwoven. However, this invention, by using this growth method based on branch extraction, achieves differential growth due to the different growth starting points (branch ends), thus enabling accurate segmentation of interwoven canopies.
[0087] 3-1. Gradual Growth:
[0088] Since the growth process only considers spatial distance and does not focus on the detailed information of the point cloud, and given the large number of canopy leaf points and severe shading, the canopy point cloud is downsampled (sampling interval 10cm) before growth to improve processing speed and overcome the shading effect. The data is then restored after growth is complete. The growth process is as follows: starting from the end of a branch, one layer is added each time (thickness is 2 * point spacing, here 20cm), and the new growth point is used as a seed point to continue growth until no new growth points are generated. To avoid the canopy of a single tree with insufficient branch extraction being excessively absorbed by adjacent trees, the maximum number of growth layers is set to 10, that is, the total growth thickness is 2m (20cm * 10), because the overall thickness of the broadleaf forest canopy leaf layer in this invention does not exceed 2m.
[0089] 3-2. Post-processing:
[0090] After the above growth process, a small number of scattered canopy point clouds remain unassigned to individual trees. These point clouds are then divided using two spatial proximity concepts: A. First, all assigned and unassigned points are planarized (xoy plane, grid side length 10cm). Then, unassigned points are assigned to the individual tree belonging to the nearest assigned point in the grid with a vertical distance of less than 10cm. B. Points still unassigned are assigned to the individual tree belonging to the nearest assigned point with a linear distance of less than 10cm. The remaining points after processing A and B are considered noise points or non-tree points.
[0091] The broadleaf forest single-tree segmentation system based on branch and trunk information provided in this embodiment of the invention includes:
[0092] The trunk prediction module is used to detect tree trunks by processing ground-based lidar broad-leaved forest point clouds and combining RANSAC cylindrical fitting with tree trunk growth characteristics.
[0093] The branch extraction module is used to extract tree branches starting from the top of the tree trunk in low vegetation areas by segmenting the branches and combining the changes in the thickness of the branch segments.
[0094] The point cloud segmentation module is used to segment the point cloud of tree canopy leaves by gradually increasing the number of segments, starting from the end of the branch.
[0095] It should be noted that embodiments of the present invention can be implemented in hardware, software, or a combination of both. The hardware portion can be implemented using dedicated logic; the software portion can be stored in memory and executed by a suitable instruction execution system, such as a microprocessor or dedicated-design hardware. Those skilled in the art will understand that the above-described devices and methods can be implemented using computer-executable instructions and / or included in processor control code, for example, such code provided on a carrier medium such as a disk, CD, or DVD-ROM, a programmable memory such as read-only memory (firmware), or a data carrier such as an optical or electronic signal carrier. The devices and modules of the present invention can be implemented by hardware circuitry such as very large-scale integrated circuits or gate arrays, semiconductors such as logic chips, transistors, or programmable hardware devices such as field-programmable gate arrays, programmable logic devices, etc., or by software executed by various types of processors, or by a combination of the above-described hardware circuitry and software, such as firmware.
[0096] The present invention will be further described in detail below using two broadleaf forest plots as examples and in conjunction with the accompanying drawings. The development environment for this embodiment is Microsoft Visual Studio 2013, external library PCL 1.8.0, and programming language C++.
[0097] The method for segmenting broad-leaved forest trees based on branch and trunk information provided in this embodiment of the invention includes the following steps:
[0098] Step 1: Data Acquisition and Preprocessing
[0099] The broadleaf forest data collected in this invention involves two forest types: one is a magnolia forest located on the Qingshuihe campus of the University of Electronic Science and Technology of China in Chengdu. The trees vary in size and shape, and their arrangement is relatively random. There are both densely connected areas and clearly spaced areas between the canopies, with many small trees close to the base of larger trees, increasing the difficulty of canopy segmentation. The ground is flat and covered with approximately 20cm of grass. TLS data was collected in May 2020 using a Leica C10. A total of four monitoring stations were set up: one main station at the center of the sample plot and three substations on the periphery to reduce shading effects.
[0100] Another forest is a Phoebe zhennan forest located next to Baoshikou Reservoir in Longquanshan, Chengdu. This forest was planted artificially but has been neglected for a long time. The trees are uniformly grown, neatly arranged, with severely interwoven canopies, dense understory vegetation, and undulating terrain. These characteristics pose significant challenges for trunk detection and canopy segmentation. TLS data was collected in May 2022 using a Leica C10. Due to the dense trees and strong understory obstruction, a total of five stations were set up: one main station at the center of the sample plot and four substations on the periphery.
[0101] The collected data were stitched, denoised, and downsampled using Leica Cyclone software. Details of the preprocessed point cloud data are shown in Table 1. Next, the method of this invention was used to segment the data from the two preprocessed broadleaf forest plots into individual trees.
[0102] Table 1. Details of broadleaf forest plot data
[0103]
[0104] Step 2: Perform tree trunk detection as described in Step 1 of the invention.
[0105] Step 3: Extract the branches and stems as described in Step 2 of the invention.
[0106] Step 4: Perform canopy segmentation as described in Step 3 of the invention.
[0107] Step 5: Accuracy Evaluation
[0108] After completing steps one through four above, the final tree trunk point cloud extraction result is as follows: Figure 3 As shown, the accuracy was evaluated from two aspects: single tree detection and canopy segmentation. Regarding single tree detection, there were 74 complete trees with a diameter at breast height (DBH) greater than 5 cm in the magnolia forest and 23 trees in the Phoebe zhennan forest in Longquanshan. The method of this invention successfully detected all single trees in both plots. Three additional tree trunks were detected in the magnolia forest, which were actually pedestrians; one additional incomplete tree trunk was detected in the Phoebe zhennan forest, located at the boundary of the study area. The results indicate that the method of this invention has excellent single tree detection capabilities for both magnolia plots with sparse understory vegetation and flat terrain, and Phoebe zhennan plots with lush understory vegetation and undulating terrain.
[0109] For canopy segmentation, trees with interwoven canopies were selected from the sample plots and carefully manually segmented as reference benchmarks (30 trees were selected in the magnolia forest and 15 trees in the nanmu forest). The reference trees were matched with the trees extracted by the algorithm based on their trunk positions. The canopy segmentation effect was comprehensively evaluated based on the point cloud matching degree and the extracted tree parameters. In the magnolia forest, the IoU obtained by the method of this invention ranged from 0.53 to 1.00, and the mIoU was 0.82; the estimated tree height and canopy width RMSEs from the tree segmentation results were 0.42m (5%) and 0.41m (12%), respectively. Figure 4 a and Figure 4 b. In Phoebe zhennan forests, the IoU obtained by the method of this invention ranged from 0.81 to 0.96, and the mIoU was 0.88; the estimated tree height and crown width RMSEs from the individual tree segmentation results were 0.05 m (0.5%) and 0.34 m (7%), respectively. (See...) Figure 4 c and Figure 4 The results show that the method of this invention can accurately segment interwoven canopies, whether in magnolia forests with significant differences in tree size or in Phoebe zhennan forests with uniform tree growth but tightly intertwined canopies.
[0110] The crown segmentation accuracy of the method in this invention is mainly affected by the accuracy of the branch extraction in the preceding step. In Phoebe zhennan forests, the branches and leaves are clearly layered, with branches and trunks fully exposed in the understory view. In contrast, in Magnolia sylvestris forests, the leaves have a larger vertical span, resulting in significant occlusion of branches and trunks. Furthermore, compared to Magnolia sylvestris forests, Phoebe zhennan forests are smaller and require more scanning stations. These two factors ensure that the branches and trunks of Phoebe zhennan forests are fully depicted in the point cloud, while the branches and trunks of Magnolia sylvestris forests suffer from severe occlusion and unclear fine branches. Therefore, the branch extraction effect of Phoebe zhennan forests is much better than that of Magnolia sylvestris forests, naturally leading to better crown segmentation accuracy for Phoebe zhennan forests. Although the slightly lower point cloud quality of Magnolia sylvestris forests results in less complete branch extraction, crown segmentation can still be robustly completed with good segmentation accuracy.
[0111] This embodiment of the invention processes ground-based lidar data from two broadleaf forest plots using the proposed method. Following the method steps and employing the same parameters, individual tree segmentation was achieved in both plots. The accuracy of the segmentation results was verified from two perspectives: individual tree detection and canopy segmentation. The results show that the method of the invention achieves excellent segmentation results for data from two plots with different tree species compositions, understory vegetation density, topographic conditions, and point cloud quality. Furthermore, the computer configuration was: Windows 7, Intel(R) Core(TM) i5-7500 (4 cores), 8GB RAM. The magnolia forest contained over five million data points, and the Phoebe zhennan forest contained over ten million data points. The complete processing time for each plot was approximately 10-20 minutes, indicating that the method is highly efficient and can meet the task of individual tree segmentation in hectare-scale forests.
[0112] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any modifications, equivalent substitutions, and improvements made by those skilled in the art within the scope of the technology disclosed in the present invention, and within the spirit and principles of the present invention, should be covered within the scope of protection of the present invention.
Claims
1. A method for segmenting broad-leaved forest trees based on branch and trunk information, characterized in that, The above-mentioned method for segmenting broad-leaved forest trees based on branch information uses ground-based lidar broad-leaved forest point clouds as the processing object. It uses RANSAC cylindrical fitting combined with tree trunk growth characteristics to detect tree trunks. Starting from the top of the tree trunk in the low vegetation area, it extracts tree branches by segmenting the growth of branches and combining the changes in the thickness of the branches. Starting from the end of the branch, it segments the crown leaf point cloud by growing layer by layer. The method for segmenting broad-leaved forest trees based on branch information includes the following steps: Step 1, Trunk Detection: Identify and extract tree trunks surrounded by low understory vegetation, laying the foundation for subsequent branch extraction and canopy segmentation; Trunk detection includes: relative height stratification, layer-by-layer clustering, cylinder fitting, and trunk segmentation; Step 2, Branch Extraction: Based on the extraction of tree trunks in low-lying vegetation areas, taking advantage of the characteristics of broad-leaved forests where leaves are distributed on the outer layer of the canopy, branches grow from thick to thin, and the density suddenly increases when thin branches transition to leaves, the remaining tree trunks and branches are extracted by growing layer by layer from bottom to top, stopping growth when encountering leaves. Step 3, Canopy Segmentation: Based on branch extraction, all branch point clouds are used as seed points, and the interwoven canopy is accurately segmented by breadth-first growth. Breadth-first growth has the same growth rate in different directions. When canopies of different sizes or shapes are intertwined, this growth method cannot accurately segment the canopy. Step one specifically includes: 1-1. First, use the cloth filtering algorithm CSF in the open-source software CloudCompare to separate ground points. Then, non-ground points with a relative ground height less than H are layered according to their relative ground height, with a layer spacing of 0.2m. The relative ground height is the distance from the point to the nearest ground point. Ground points are downsampled at a spacing of 0.2m. 1-2. Perform Euclidean clustering on each layer of point cloud. The Euclidean clustering algorithm divides the point cloud into independent cluster sets based on Euclidean distance, such that the nearest distance between any two clusters in the cluster set is greater than a set value. 1-3. Use the Random Sample Consensus Algorithm (RANSAC) to perform cylindrical fitting on each cluster. The cylindrical model is defined as follows: L is the axis of the cylinder, determined by the vector and a little constitute; Let p be the radius of the cylinder. The distance d from any point p to the surface of the cylindrical model can be calculated using the following formula. ; The RANSAC algorithm estimates a cylindrical model by randomly selecting two points with normals. Points whose distance to the model surface is less than a certain value are called inliers. The RANSAC algorithm continuously estimates the model and extracts inliers within a specified maximum number of iterations. The cylindrical model with the most inliers after the iteration ends is the fitting result. After fitting, the cylindrical model is initially filtered to remove obvious non-trunk cylindrical models; 1-4. Merge all layered cylindrical models belonging to the same trunk, and extract the corresponding trunk point cloud using the merged cylindrical model.
2. The method for segmenting broad-leaved forest trees based on branch and trunk information as described in claim 1, characterized in that, The extraction of the corresponding tree trunk point cloud specifically includes: 1-4-1. Identify cylindrical models belonging to the same trunk: Project the centroid of each point in the cylindrical model onto the horizontal plane, and then perform Euclidean clustering on the projected centroid points. The cylindrical models corresponding to the centroid points of the same cluster belong to the same trunk. 1-4-2. Merging of Cylindrical Models and Extraction of Tree Trunks: First, merge at least two cylindrical models belonging to the same tree trunk into a single overall cylindrical model. The axis, axis point, and radius of the overall cylindrical model are the vector sum of the axis of the cylindrical models to be merged, the centroid of the axis point of the cylindrical models to be merged, and the average value of the radius of the cylindrical models to be merged, respectively. Use the obtained overall cylindrical model to extract the tree trunk point cloud in the low vegetation area, that is, use the formula in step 1-3 to extract points that are less than k_d * the radius of the overall cylindrical model from the surface of the overall cylindrical model. k_d is set to 0.
5. If k_d is too small, the tree trunk extraction will be incomplete. If k_d is too large, it will absorb the adjacent ground and low vegetation. Remove the tree trunk point cloud with a height less than 0.8 * H.
3. The method for segmenting broad-leaved forest trees based on branch and trunk information as described in claim 1, characterized in that, Step two specifically includes: 2-1. Initial seed branch segment generation: The point at the top height length of the tree trunk in the low vegetation area is taken as the seed branch segment, and it is divided into max_layers = ceil(length / pace) layers, with the top layer being the last layer; ceil means rounding up; 2-2. Branch segment growth: Using the last layer of the seed branch segment as the seed point, a radius neighborhood search is performed with a search radius of pace. The searched points are used as new seed points to continue the search, growing one layer at a time, until no new seed points are generated or the number of growing layers reaches max_layers; when the number of layers contained in the seed branch segment is less than max_layers, the radius of the first layer search is increased to length to cross the gap. 2-3. Branch segment clustering and identification: First, Euclidean clustering is performed on the set of branch segments obtained from the growth. Then, each cluster is identified and processed according to the following criteria: 1) If a seed branch segment contains max_layers layers and the cluster satisfies one of the following conditions, then the cluster is a branch segment. Extract the cluster and use it as a seed branch segment to continue growing. A. The cluster contains max_layers growth layers and the number of cluster points is less than pnk * the number of points in the seed branch segment, where pnk is the point number variation coefficient, and pnk is taken as 3; B. The cluster has fewer than max_layers growth layers and the search radius increases less than max_long_search; 2) If the seed branch segment is less than max_layers layers and the cluster contains max_layers growth layers, then the cluster is the branch segment. Extract the cluster and use it as the seed branch segment to continue growth.
4. The method for segmenting broad-leaved forest trees based on branch and trunk information as described in claim 1, characterized in that, Step three specifically includes: 3-1. Layer-by-layer growth: Starting from the end of the branch, grow one layer at a time, with a thickness of 2 * the point spacing, which is 20cm. Use the new growth point as the seed point to continue growing until no new growth points are generated; set the maximum number of growth layers to 10 layers, that is, the total growth thickness is 2m; 3-2 Post-processing: All divided and undivided points are meshed in the xoy plane with a grid side length of 10cm. Undivided points are assigned to the tree to which the nearest divided point in the grid belongs; points that have not yet been divided are assigned to the tree to which the nearest divided point belongs in the straight line (within 10cm); any remaining points that have not been divided after processing are considered noise points or non-tree points.
5. A computer device, characterized in that, The computer device includes a memory and a processor. The memory stores a computer program. When the computer program is executed by the processor, the processor performs the broadleaf forest single tree segmentation method based on branch information as described in any one of claims 1 to 4.
6. A computer-readable storage medium storing a computer program, which, when executed by a processor, causes the processor to perform the broadleaf forest single-tree segmentation method based on branch information as described in any one of claims 1 to 4.
7. An information data processing terminal, characterized in that, The information data processing terminal is used to implement the broadleaf forest single tree segmentation method based on branch information as described in any one of claims 1 to 4.
8. A broadleaf forest single-tree segmentation system based on branch-trunk information guided by the method for segmenting broadleaf forest single trees based on any one of claims 1 to 4, characterized in that, The broadleaf forest single-tree segmentation system based on branch information includes: The trunk prediction module is used to detect tree trunks by processing ground-based lidar broad-leaved forest point clouds and combining RANSAC cylindrical fitting with tree trunk growth characteristics. The branch extraction module is used to extract tree branches starting from the top of the tree trunk in low vegetation areas by segmenting the branches and combining the changes in the thickness of the branch segments. The point cloud segmentation module is used to segment the point cloud of tree canopy leaves by gradually increasing the number of segments, starting from the end of the branch.