Multi-diameter-at-breast extraction method and device for tree with branches, electronic equipment and medium

By performing single-wood segmentation, segmentation processing and voxel connectivity analysis on the original three-dimensional point cloud data, combined with circle fitting and effectiveness evaluation, the difficulty of breast diameter extraction of branched trees was solved, and the breast diameter extraction effect with high accuracy and robustness was achieved.

CN119625170APending Publication Date: 2025-03-14BEIJING GREEN VALLEY TECH CO LTD +2
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411654312.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-19
Publication Date
2025-03-14

AI Technical Summary

Technical Problem

It is difficult to quickly and accurately extract breast diameter data with branched trees.

Method used

By obtaining the original three-dimensional point cloud data of the target area, performing single-wood segmentation and segmentation processing, establishing KD trees and octave trees, performing voxel connectivity analysis and clustering, cutting point cloud data segments for circle fitting, and determining breast diameter using effectiveness evaluation indicators.

Benefits of technology

Accurate extraction of multiple breast diameter data with branched trees is achieved, the accuracy and robustness of breast diameter extraction is improved, and the noise removal ability is achieved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119625170A_ABST
    Figure CN119625170A_ABST
Patent Text Reader

Abstract

The invention provides a multi-diameter-at-breast-height extraction method and device for a tree with branches, electronic equipment and a medium, and the method comprises the steps: constructing an octree based on a single tree segmentation result, carrying out the clustering analysis through the octree, and extracting point cloud clusters of a trunk and the branches; and then multilayer slicing and circle fitting are carried out based on the obtained point cloud cluster, effectiveness evaluation of a fitting circle is carried out, and finally the diameter at breast height of the trunk and the branches is determined based on an evaluation result. According to the method, tree branches are fully considered, the adaptive octree is adopted for processing, an effective result can be obtained without setting parameters, the scheme for extracting the trunk and the branches has a certain denoising capability, and the accuracy of extracting the diameters at breast height is improved while multi-diameter extraction of the trunk and the branches is realized. Meanwhile, according to the scheme, multi-layer slicing is carried out on effective point clouds of all clusters, circle fitting is carried out on all slices, and fitting result evaluation is carried out by using an effectiveness evaluation index, so that the precision of a diameter at breast height result is further improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of laser point cloud data processing, and in particular to the technical field of tree diameter at breast height extraction, and discloses a method and device for extracting multiple diameters at breast height of a tree with branches, an electronic device, and a medium. Background Art

[0002] The DBH, also known as the trunk diameter, refers to the diameter of the trunk of a tree at breast height above the ground surface. In forestry, the diameter at breast height is an important metric for various estimation models and applications. Different countries have different regulations on DBH. According to the "Technical Guidelines for Biodiversity Observation - Terrestrial Vascular Plants HJ710.1-2014", the DBH measurement regulations for trees and shrubs with a DBH greater than or equal to 1 cm point out that the standard position for DBH measurement is 1.3m from the ground. For individuals with branches below 1.3m, the main trunk and branches should be distinguished when measuring the DBH. Generally, upright, healthy, and larger DBH branches are used as the main trunk, and the rest are used as branches in the order of DBH size. Figure 1A This is a diagram of a single tree without branches. Figure 1B This is a schematic diagram of a single tree with branches. Most of the existing methods for automatically extracting the DBH of single trees based on laser point clouds do not consider the situation where single trees have branches. It is still a challenging task to quickly and accurately obtain the DBH of trees with branches. Summary of the invention

[0003] The present disclosure at least provides a method and device, electronic equipment, and medium for extracting multiple DBH data of trees with branches, so as to accurately extract multiple DBH data of trees with branches.

[0004] According to one aspect of the present disclosure, a method for extracting multiple diameters at breast height of a tree with branches is provided, comprising:

[0005] Acquire original three-dimensional point cloud data of a target area; wherein the target area contains trees with branches; extract forest stand point cloud data from the original three-dimensional point cloud data; perform single tree segmentation processing on the forest stand point cloud data to obtain single tree point cloud data;

[0006] A point cloud within a preset height range is intercepted from the single tree point cloud data to obtain segmented point cloud data; a KD tree of the segmented point cloud data is established, and the average point spacing of the segmented point cloud data is determined by using the KD tree; the side length of the root node cube of the octree is determined according to the size information of the segmented point cloud data, and the child node cubes of each level of the octree are determined step by step until the side length of the child node cube is less than the average point spacing, and the child node cubes with side lengths greater than the average point spacing are retained; each point in the segmented point cloud data is matched to the corresponding child node cube;

[0007] Set all child node cubes containing points to unlabeled;

[0008] Any unlabeled child node cube is used as the current voxel, and the following neighborhood search operation is performed: a label is set for the child node cube, a neighborhood search is performed on the child node cube, and unlabeled child node cubes in adjacent child node cubes obtained by the neighborhood search are marked with the same label as the child node cube; each unlabeled child node cube in the child node cube obtained by the neighborhood search is used as the current voxel, and the neighborhood search operation is performed until no neighboring child node cubes are found;

[0009] Performing the neighborhood search operation on other unlabeled child node cubes;

[0010] The point clouds in the child node cubes with the same label are taken as a cluster of clustered point cloud data, and each cluster of clustered point cloud data is filtered according to a preset condition to obtain multiple clusters of target point cloud data; the multiple clusters of target point cloud data include trunk point cloud data and branch point cloud data;

[0011] For each cluster of target point cloud data, the cluster target point cloud data is cut according to the preset slice thickness and the preset slice interval to obtain multiple point cloud data segments; circle fitting is performed on each point cloud data segment to obtain multiple fitting circles, and the validity of each fitting circle is determined by using the preset validity evaluation index; when the proportion of the number of valid fitting circles exceeds the preset threshold, the mean value of the radius of the valid fitting circles is taken as the breast diameter corresponding to the cluster target point cloud data.

[0012] In a possible implementation, the method for extracting multiple DBH of trees with branches further includes:

[0013] When the proportion of the valid fitting circles is less than the preset threshold, the cluster target point cloud data is invalid point cloud data.

[0014] In a possible implementation, the method for extracting multiple DBH of trees with branches further includes:

[0015] The largest DBH is taken as the trunk DBH, and the other DBH are taken as the branch DBH.

[0016] In a possible implementation, the determining the validity of each fitting circle by using a preset validity evaluation index includes:

[0017] For each fitting circle, the radius of the inner ring circle corresponding to the fitting circle is set to M times the radius of the fitting circle, and the thickness of the outer ring circle corresponding to the fitting circle is set to P times the radius of the fitting circle; wherein M is a positive number less than 1; and P is a positive number less than 1;

[0018] Count the number of points whose distance to the center of the fitting circle is greater than the radius of the inner circle and less than R+w / 2, and obtain the number of points between the inner and outer circles; wherein R is the radius of the fitting circle, and W is the thickness of the outer circle;

[0019] Determine a first evaluation score according to the proportion of the number of points between the inner and outer rings in the total number of points in the corresponding point cloud data segment;

[0020] The outer ring circle is divided into a plurality of sectors, and sectors whose number of points exceeds a preset point threshold are regarded as occupied sectors;

[0021] Determine a second evaluation score according to the proportion of the occupied sectors in all sectors;

[0022] A weighted sum is performed on the first evaluation score and the second evaluation score, and the validity of the fitting circle is determined according to the obtained weighted sum result.

[0023] In a possible implementation manner, performing circle fitting on each point cloud data segment to obtain multiple fitting circles includes:

[0024] The random sampling consistency algorithm is used to perform circle fitting on each point cloud data segment to obtain multiple fitting circles.

[0025] In a possible implementation, filtering each cluster point cloud data according to a preset condition to obtain multiple clusters of target point cloud data includes:

[0026] The clustered point cloud data with the number of points less than the preset threshold are eliminated to obtain multi-cluster target point cloud data.

[0027] In a possible implementation, the determining the average point spacing of the segmented point cloud data by using the KD tree includes:

[0028] Using the KD tree, searching for N points closest to each point in the segmented point cloud data; wherein N is a positive integer;

[0029] For each point, calculate the average distance between the point and the nearest N points;

[0030] The mean of the average distances corresponding to each point is taken as the average point spacing.

[0031] According to another aspect of the present disclosure, a device for extracting multiple diameters at breast height of a tree with branches is provided, comprising:

[0032] A data acquisition processing module is used to acquire original three-dimensional point cloud data of a target area; wherein the target area contains trees with branches; extract forest stand point cloud data from the original three-dimensional point cloud data; and perform single tree segmentation processing on the forest stand point cloud data to obtain single tree point cloud data;

[0033] An octree establishment module is used to intercept point clouds within a preset height range from the single tree point cloud data to obtain segmented point cloud data; establish a KD tree of the segmented point cloud data, and use the KD tree to determine the average point spacing of the segmented point cloud data; determine the side length of the root node cube of the octree according to the size information of the segmented point cloud data, and determine the child node cubes of each level of the octree step by step until the side length of the child node cube is less than the average point spacing, and retain the child node cubes with side lengths greater than the average point spacing; match each point in the segmented point cloud data to the corresponding child node cube;

[0034] A search clustering module is used to set all child node cubes containing points as unlabeled; and, take any unlabeled child node cube as a current voxel, and perform the following neighborhood search operation: set a label for the child node cube, perform a neighborhood search on the child node cube, and mark the unlabeled child node cubes in the adjacent child node cubes obtained by the neighborhood search with the same label as the child node cube; take each unlabeled child node cube in the child node cube obtained by the neighborhood search as the current voxel, and perform the neighborhood search operation until no neighboring child node cubes can be found; and perform the neighborhood search operation on other unlabeled child node cubes;

[0035] The search clustering module is further used to take the point clouds in the child node cubes with the same label as a cluster of clustered point cloud data, and filter each cluster of clustered point cloud data according to a preset condition to obtain multiple clusters of target point cloud data; the multiple clusters of target point cloud data include trunk point cloud data and branch point cloud data;

[0036] The diameter at breast height determination module is used to cut each cluster of target point cloud data according to a preset slice thickness and a preset slice interval to obtain multiple point cloud data segments; perform circle fitting on each point cloud data segment to obtain multiple fitting circles, and use a preset effectiveness evaluation index to determine the effectiveness of each fitting circle; when the proportion of the number of valid fitting circles exceeds a preset threshold, the mean value of the radius of the valid fitting circles is used as the diameter at breast height corresponding to the cluster of target point cloud data.

[0037] According to another aspect of the present disclosure, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory, wherein the processor implements any of the above methods when executing the computer program.

[0038] According to another aspect of the present disclosure, a computer-readable storage medium is provided, wherein a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, any of the above-mentioned methods is implemented.

[0039] The disclosed method for extracting multiple DBH of trees with branches builds an octree based on the result of single tree segmentation, and uses the octree to perform cluster analysis to extract point cloud clusters of the trunk and branches; then, multi-layer slicing and circle fitting are performed based on the extracted point cloud clusters, and the effectiveness of the fitted circle is evaluated, and finally the DBH of the trunk and branches is determined based on the evaluation results. The disclosed scheme fully considers the tree branching, and uses an adaptive octree for processing, and effective results can be obtained without setting parameters. The scheme has a certain denoising ability for extracting trunks and branches, and further improves the accuracy of DBH extraction while realizing the extraction of multiple DBH of trunks and branches. At the same time, the disclosed scheme performs multi-layer slicing on the effective point clouds of each cluster, performs circle fitting on each slice, and uses the effectiveness evaluation index to evaluate the fitting results. Compared with the direct fitting method, the disclosed scheme can effectively avoid the poor quality of single fitting data and the errors caused by bushes and leaf point cloud clusters, and the DBH is determined by averaging the radius of the effective fitting circle obtained by multiple fittings, which can effectively improve the accuracy of the DBH results. In addition, the solution disclosed in the present invention is easy to be written into a computer program, with a high degree of automation, low complexity and high efficiency.

[0040] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] The accompanying drawings are used to better understand the present solution and do not constitute a limitation of the present disclosure.

[0042] Figure 1A It is a schematic diagram of a single tree without branches;

[0043] Figure 1B A schematic diagram of a single tree with branches;

[0044] Figure 2 A flow chart of a method for extracting multiple DBH of a tree with branches according to the present disclosure;

[0045] Figure 3A This is a schematic diagram of forest stand point cloud data;

[0046] Figure 3B This is a schematic diagram of the point cloud data obtained after data preprocessing;

[0047] Figure 3C This is a schematic diagram of single tree point cloud data;

[0048] Figure 3D A schematic diagram of a single tree with branches;

[0049] Figure 3E Build a schematic for the octree;

[0050] Figure 4A Shown is a schematic diagram of segmented point cloud data;

[0051] Figure 4B It is a schematic diagram showing the matching of each point in the segmented point cloud data to the corresponding child node cube;

[0052] Figure 4C The figure shows a schematic diagram of obtaining multiple clusters of target point cloud data by clustering;

[0053] Figure 4D Shown is a schematic diagram of the segmented point cloud data segment;

[0054] Figure 4E The figure shows the schematic diagram of judging the validity of the fitting circle;

[0055] Figure 5 is a schematic structural diagram of a device for extracting multiple DBH of a tree with branches according to the present disclosure;

[0056] Figure 6 is a schematic structural diagram of an electronic device according to the present disclosure. DETAILED DESCRIPTION

[0057] The following is a description of exemplary embodiments of the present disclosure in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.

[0058] The present disclosure provides a method and device, electronic device, and medium for extracting multiple DBH of trees with branches, as most existing methods for automatically extracting DBH of single trees based on laser point clouds do not consider the situation that single trees have branches. The present disclosure constructs an octree based on the results of single tree segmentation, and uses the octree to perform cluster analysis to extract point cloud clusters of the trunk and branches; then, multi-layer slicing and circle fitting are performed based on the extracted point cloud clusters, and the effectiveness of the fitted circles is evaluated, and finally the DBH of the trunk and branches is determined based on the evaluation results. The scheme of the present disclosure fully considers the branches of trees, and uses an adaptive octree for processing, and effective results can be obtained without setting parameters. The scheme has a certain denoising ability when extracting trunks and branches, and while realizing the extraction of multiple DBH of trunks and branches, the accuracy of DBH extraction is further improved. At the same time, the scheme disclosed in the present invention performs multi-layer slicing on the valid point cloud of each cluster, performs circle fitting on each slice, and uses effectiveness evaluation indicators to evaluate the fitting results. Compared with the direct fitting method, the scheme disclosed in the present invention can effectively avoid the poor quality of single fitting data and the errors caused by bushes and leaf point cloud clusters, and determines the breast diameter by averaging the radii of the effective fitting circles obtained by multiple fittings, which can effectively improve the accuracy of the breast diameter results.

[0059] The technical solution of the present disclosure is described below through specific embodiments.

[0060] like Figure 2 FIG. 1 is a flowchart of a method for extracting multiple DBH of trees with branches according to an embodiment of the present invention. The execution subject of the present invention is a computing device or component with data processing capability. Specifically, the method of the present invention may include the following steps:

[0061] S210, obtaining original three-dimensional point cloud data of a target area; wherein the target area contains trees with branches; extracting forest stand point cloud data from the original three-dimensional point cloud data; performing single-tree segmentation processing on the forest stand point cloud data to obtain single-tree point cloud data.

[0062] There are trees with branches planted in the target area. Here, the original three-dimensional point cloud data can be obtained using a ground-based laser radar; then the forest stand point cloud data of the area of ​​interest can be intercepted from the original three-dimensional point cloud data.

[0063] Performing single tree segmentation processing on the stand point cloud data to obtain single tree point cloud data may include performing data preprocessing and single tree segmentation processing on the stand point cloud data to obtain single tree point cloud data. Data preprocessing may include downsampling, denoising, ground point extraction, normalization, etc.

[0064] Specifically, the stand point cloud data is downsampled with a minimum point interval of 0.01m, and the distance between two adjacent points in the downsampled point cloud is no more than 0.01m; then the statistical analysis (SOR) method is used to remove outliers; then the ground points are extracted using the iterative progressive triangulation algorithm; the point cloud is divided into the smallest unit of 0.1m*0.1m, and the ground points in the unit are used for normalization to remove the influence of ground elevation fluctuations on the calculation. The final point cloud is "relative to the ground". The normalized point cloud is then used to construct a CHM with a resolution of 0.5m. The CHM is operated, and the point cloud is processed for single tree segmentation using the common watershed algorithm to obtain single tree point cloud data. Figure 3A This is a schematic diagram of forest stand point cloud data. Figure 3B This is a schematic diagram of the point cloud data obtained after data preprocessing; Figure 3C Schematic diagram of single tree point cloud data.

[0065] S220, intercepting point clouds within a preset height range from the single tree point cloud data to obtain segmented point cloud data; establishing a KD tree for the segmented point cloud data, and using the KD tree to determine the average point spacing of the segmented point cloud data; determining the side length of the root node cube of the octree according to the size information of the segmented point cloud data, and determining the child node cubes of each level of the octree step by step until the side length of the child node cube is less than the average point spacing, and retaining the child node cubes with side lengths greater than the average point spacing; matching each point in the segmented point cloud data to the corresponding child node cube.

[0066] The above preset height range is a height range with 1.3 meters as the midpoint.

[0067] Octree is a spatial segmentation data structure used to organize and process 3D point cloud data. Figure 3E As shown, the octree construction process is:

[0068] 1. Initial voxel: At the beginning, the maximum value of the point cloud data bounding box in the XYZ dimension is generally used as the root node cube (voxel) with the side length.

[0069] 2. Recursive segmentation: Based on the density of the point cloud or other conditions, the voxel is recursively segmented into eight smaller voxels. Each sub-voxel can be further segmented as needed.

[0070] 3. Stop condition: The segmentation process usually stops when a predetermined maximum depth is reached, or when the side length of a voxel is less than a threshold or other conditions. In this embodiment, the segmentation stop condition is when the side length of a child node cube is less than the average point spacing.

[0071] Octree is a commonly used spatial data structure, which is used in 3D point clouds. It is mainly used to structure unordered point clouds for efficient storage and retrieval.

[0072] In point cloud processing and computer graphics, octrees provide an efficient way to manage and query large amounts of point cloud data. Using an octree, you can quickly locate points or voxels in a point cloud because it divides the three-dimensional space into small, ordered voxel regions, making query and retrieval more efficient.

[0073] S230. Set all child node cubes containing points to be unmarked.

[0074] The root node cube and each child node cube are all voxels.

[0075] S240. Take any unlabeled child node cube as the current voxel and perform the following neighborhood search operation: set a label for the child node cube, perform a neighborhood search on the child node cube, and mark the unlabeled child node cubes in the adjacent child node cubes obtained by the neighborhood search with the same label as the child node cube; take each unlabeled child node cube in the child node cube obtained by the neighborhood search as the current voxel and perform the neighborhood search operation until no more neighborhood child node cubes can be found.

[0076] If two voxels have connectivity, they are adjacent or intersecting in space, which is usually based on the neighborhood relationship between the voxel boundaries or points inside the voxels. This step extends the two-dimensional pixel connectivity analysis to three-dimensional voxels.

[0077] S250: Execute the neighborhood search operation on other unmarked child node cubes.

[0078] S260, taking the point clouds in the child node cubes with the same label as a cluster of clustered point cloud data, and filtering each cluster of clustered point cloud data according to preset conditions to obtain multiple clusters of target point cloud data; the multiple clusters of target point cloud data include trunk point cloud data and branch point cloud data.

[0079] Steps S240-S260 assign a unique label to any voxel, search for the neighborhood (six neighborhoods or twenty-six neighborhoods) voxels of the current voxel, and if there are unlabeled neighborhood voxels, set the unlabeled neighborhood voxels to the same label as the current voxel, and set the neighborhood voxels to the current voxel to iteratively search for neighborhood voxels until no neighboring voxels can be found; repeat the process again starting from the unlabeled voxels until all voxels are labeled, and finally obtain the initial clustering result, that is, each cluster point cloud data. Then filter by the number of points or other preset conditions to obtain the final trunk and branch point clouds, that is, multi-cluster target point cloud data. Figure 4A The figure shows a schematic diagram of segmented point cloud data; Figure 4B The figure shows a schematic diagram of matching each point in the segmented point cloud data to the corresponding child node cube; Figure 4C The figure shows a schematic diagram of obtaining multiple clusters of target point cloud data by clustering; Figure 4A , Figure 4B , Figure 4C From top to bottom, there are the front view, top view and oblique view of each stage; it can be seen from the figure that the scheme disclosed in the present invention can effectively extract multiple branches of trees with branches, and at the same time has a certain denoising effect.

[0080] The above-mentioned preset conditions may include point quantity, curvature, verticality, etc. For example, clustered point cloud data with point quantity less than a preset threshold value may be eliminated to obtain multi-cluster target point cloud data.

[0081] Steps S220-S260 implement adaptive octree voxel connectivity analysis clustering to extract point cloud clusters of single tree trunks and branches. Previous studies usually ignore single trees with branches such as Figure 3D As shown, it is obviously not feasible to directly slice and fit a circle at 1.3m. The solution disclosed in the present invention obviously improves the accuracy of trunk and branch DBH extraction from single tree point cloud by using adaptive octree voxel connectivity analysis clustering method.

[0082] S270. For each cluster of target point cloud data, the cluster target point cloud data is cut according to a preset slice thickness and a preset slice interval to obtain multiple point cloud data segments; circle fitting is performed on each point cloud data segment to obtain multiple fitted circles, and the validity of each fitted circle is determined using a preset validity evaluation index; when the proportion of the number of valid fitted circles exceeds a preset threshold, the mean value of the radii of the valid fitted circles is used as the breast diameter corresponding to the cluster target point cloud data.

[0083] Previous methods often cut slices at 1.3m and directly fit the DBH parameters through various methods. When there is noise in the data and the clustering results are not tree trunk points, it is easy to produce erroneous results. The scheme disclosed in this disclosure adopts multi-layer slice DBH fitting and uses preset validity evaluation indicators for denoising, which can effectively suppress the influence of noise and remove erroneous results of non-trunk point cloud fitting.

[0084] Specifically, each cluster of target point cloud data is divided into multiple segments according to the preset slice thickness and preset slice interval. Figure 4D As shown, in particular, when the preset slice interval is less than the preset slice thickness, it means that there is a certain degree of overlap between adjacent slices.

[0085] Specifically, the random sampling consensus algorithm RANSAC is used to perform circle fitting on each point cloud data segment to obtain multiple fitting circles. Compared with least squares fitting, this method can effectively process data containing noise and outliers.

[0086] Circle fitting can find the best circle fitting model in the data through random sampling and model verification, even if the data quality is not high. The fitting principle is as follows:

[0087] Known circle fitting model: (xa) 2 +(yb) 2 =r 2 , where (a, b) is the center of the circle and r is the radius.

[0088] Step 1: Randomly select three points from the point cloud data segment (determine the minimum point set of a circle).

[0089] Step 2: Use three points to calculate the circle parameters: center (a, b) and radius r.

[0090] Step 3: Calculate the distance from all points to the fitted circle and compare it with the set distance threshold d. If it is within the range, the point conforms to the circle model.

[0091] Step 4: Count the number of points that meet the circle model and record them. If the number of points exceeds the highest value previously recorded, update the best circle model.

[0092] Step 5: Repeat iterations 1-4 to find the best fitting circle.

[0093] The RANSAC circle fitting method is used to finally obtain each slice, that is, the initial fitting circle of the point cloud data segment, such as Figure 4D shown.

[0094] Although the fitting circle obtained by the RANSAC algorithm has certain robustness and noise resistance, it is difficult to eliminate the influence of possible shrubs or branches and leaves. Therefore, two preset effectiveness evaluation indicators are used to denoise the initial fitting results: ① The ratio of the number of points between the inner and outer rings ② The proportion of the outer ring divided sector segments occupied.

[0095] Specifically, Figure 4E As shown, the effectiveness of each fitting circle can be determined by using the preset effectiveness evaluation index, which can be achieved by the following steps:

[0096] Step 1: For each fitting circle, the radius r of the inner circle corresponding to the fitting circle is set to M times the radius R of the fitting circle, and the thickness w of the outer circle corresponding to the fitting circle is set to P times the radius of the fitting circle; wherein M is a positive number less than 1; and P is a positive number less than 1.

[0097] Preferably, the value of M may be 0.3-0.5, and the value of P may be 0.1-0.3.

[0098] Step 2: Count the number of points whose distance to the center of the fitting circle is greater than the radius of the inner circle and less than R+w / 2, and obtain the number of points between the inner and outer rings; where R is the radius of the fitting circle and W is the thickness of the outer circle.

[0099] Step three: determine a first evaluation score according to the proportion of the number of points between the inner and outer rings in the total number of points in the corresponding point cloud data segment.

[0100] Preferably, the first evaluation score can be set to 5 points. The higher the proportion of the number of points between the inner and outer rings in the total number of points in the corresponding point cloud data segment, the higher the first evaluation score. When the point cloud segment is a shrub or a leaf, the first evaluation score will be significantly reduced.

[0101] Steps 1 to 3 are to evaluate the fitted circle using the ratio of the number of points between the inner and outer rings.

[0102] Step 4: divide the outer ring into multiple sectors, and regard the sectors whose number of points exceeds a preset point threshold as occupied sectors.

[0103] Preferably, the outer ring circle with a thickness of w is divided into a plurality of sectors by setting the number of sectors.

[0104] Step 5: Determine the second evaluation score according to the proportion of the occupied sectors in all sectors.

[0105] Preferably, the higher the proportion of occupied sectors in all sectors, the higher the second evaluation score.

[0106] Steps 4 and 5 are to evaluate the fitted circle using the proportion of the outer ring divided sector segments occupied.

[0107] Step six: performing weighted summation on the first evaluation score and the second evaluation score, and determining the validity of the fitting circle according to the obtained weighted summation result.

[0108] S=A*S1+(1-A)*S2

[0109] Among them, S is the final score, that is, the weighted summation result, A is the proportion coefficient of indicator ① (between 0 and 1), that is, the weight of indicator ①, S1 is the score obtained by indicator ①, that is, the first evaluation score, and S2 is the score obtained by indicator ②, that is, the second evaluation score.

[0110] Finally, the validity of the fitted circle is judged by the score threshold. Specifically, the fitted circle with a final score greater than or equal to the score threshold can be regarded as a valid fitted circle, and the fitted circle with a final score less than the score threshold can be regarded as an invalid fitted circle. The validity of the fitted circle is thus determined.

[0111] Specifically, the above preset threshold can be set to 0.5.

[0112] Specifically, when the proportion of the number of valid fitting circles is less than the preset threshold, the cluster target point cloud data is invalid point cloud data.

[0113] Specifically, after fitting to obtain multiple DBH, the DBH are sorted in order from large to small, and the largest DBH is taken as the trunk DBH, and the other DBH are taken as the branch DBH.

[0114] In some embodiments, the above-mentioned determination of the average point spacing of the segmented point cloud data by using the KD tree can be specifically implemented by the following steps:

[0115] Step 1: Use the KD tree to search for the N points closest to each point in the segmented point cloud data; where N is a positive integer.

[0116] Step 2: For each point, calculate the average distance between the point and the nearest N points.

[0117] Step 3: The mean of the average distances corresponding to each point is taken as the average point spacing.

[0118] The average point spacing is used to estimate the optimal octree level, and the specific formula is as follows:

[0119]

[0120] Where M i represents the average distance corresponding to point i, S represents the average point spacing, and k represents the number of points in the segmented point cloud data.

[0121] After obtaining the average point spacing, the optimal octree depth is calculated based on the calculated average point spacing: according to the maximum dimension width D of the XYZ bounding box of the segmented point cloud data box Determine the root node cube size, and then gradually increase the octree depth until the cube size of the lower child nodes at the current depth is smaller than the average point spacing.

[0122] The scheme disclosed in the present invention is a method for extracting multiple DBH of trees with bifurcations based on three-dimensional point cloud data. The method is based on single tree point clouds after single tree segmentation. First, the single tree point cloud is adaptively downsampled by voxel, and a point cloud segment of a certain thickness at 1.3 meters is intercepted. The trunk and branch point cloud clusters are extracted by adaptive octree voxel connectivity analysis clustering. The trunk and bifurcated point cloud clusters are sliced ​​and each slice is fitted with a circle using RANSAC. The fitting results are evaluated for effectiveness using two quality conditions for optimization and filtering. Finally, the DBH of the tree trunk and branches is obtained, which effectively improves the accuracy of DBH extraction and improves the robustness of the algorithm.

[0123] Based on the same inventive concept, the present disclosure provides a device for extracting multiple DBH of trees with branches. The steps performed by the components of the device are the same or similar to those of the above method, so similar parts are not repeated. Figure 5 As shown, the device for extracting multiple diameters at breast height of trees with branches in this embodiment includes:

[0124] The data acquisition processing module 510 is used to acquire original three-dimensional point cloud data of a target area, wherein the target area contains trees with branches; extract forest stand point cloud data from the original three-dimensional point cloud data; and perform single-tree segmentation processing on the forest stand point cloud data to obtain single-tree point cloud data.

[0125] The octree establishment module 520 is used to intercept the point cloud within a preset height range from the single tree point cloud data to obtain segmented point cloud data; establish a KD tree for the segmented point cloud data, and use the KD tree to determine the average point spacing of the segmented point cloud data; determine the side length of the root node cube of the octree according to the size information of the segmented point cloud data, and determine the child node cubes of each level of the octree step by step until the side length of the child node cube is less than the average point spacing, and retain the child node cubes with side lengths greater than the average point spacing; match each point in the segmented point cloud data to the corresponding child node cube.

[0126] The search clustering module 530 is used to set all child node cubes containing points as unlabeled; and, take any unlabeled child node cube as the current voxel, and perform the following neighborhood search operation: set a label for the child node cube, perform a neighborhood search on the child node cube, and mark the unlabeled child node cubes in the adjacent child node cubes obtained by the neighborhood search with the same label as the child node cube; take each unlabeled child node cube in the child node cube obtained by the neighborhood search as the current voxel, and perform the neighborhood search operation until no neighboring child node cubes can be found; and perform the neighborhood search operation on other unlabeled child node cubes.

[0127] The search clustering module 530 is also used to take the point clouds in the sub-node cubes with the same label as a cluster of clustered point cloud data, and filter each cluster of clustered point cloud data according to preset conditions to obtain multiple clusters of target point cloud data; the multiple clusters of target point cloud data include trunk point cloud data and branch point cloud data.

[0128] The diameter at breast height determination module 540 is used to cut each cluster of target point cloud data according to a preset slice thickness and a preset slice interval to obtain multiple point cloud data segments; perform circle fitting on each point cloud data segment to obtain multiple fitted circles, and use a preset validity evaluation index to determine the validity of each fitted circle; when the proportion of the number of valid fitted circles exceeds a preset threshold, the mean value of the radii of the valid fitted circles is used as the diameter at breast height corresponding to the cluster of target point cloud data.

[0129] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device and a computer-readable storage medium.

[0130] Figure 6 A schematic block diagram of an example electronic device 600 that can be used to implement an embodiment of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein.

[0131] like Figure 6 As shown, the device 600 includes a computing unit 610, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 620 or a computer program loaded from a storage unit 680 into a random access memory (RAM) 630. In the RAM 630, various programs and data required for the operation of the device 600 can also be stored. The computing unit 610, the ROM 620, and the RAM 630 are connected to each other via a bus 640. An input / output (I / O) interface 650 is also connected to the bus 640.

[0132] A number of components in the device 600 are connected to the I / O interface 650, including: an input unit 660, such as a keyboard, a mouse, etc.; an output unit 670, such as various types of displays, speakers, etc.; a storage unit 680, such as a disk, an optical disk, etc.; and a communication unit 690, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 690 allows the device 600 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0133] The computing unit 610 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 610 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 610 performs the various methods and processes described above. For example, in some embodiments, any of the above methods may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 680. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 600 via ROM 620 and / or a communication unit 690. When the computer program is loaded into RAM 630 and executed by the computing unit 610, one or more steps of any of the methods described above may be performed. Alternatively, in other embodiments, the computing unit 610 may be configured to perform any of the methods described above in any other appropriate manner (e.g., by means of firmware).

[0134] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0135] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0136] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0137] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0138] The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.

[0139] A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship of client and server is generated by computer programs running on respective computers and having a client-server relationship with each other. The server may be a cloud server, a server of a distributed system, or a server combined with a blockchain.

[0140] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps recorded in this disclosure can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document does not limit this.

[0141] The above specific implementations do not constitute a limitation on the protection scope of the present disclosure. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present disclosure shall be included in the protection scope of the present disclosure.

Claims

1. A method for extracting multiple DBH of trees with branches, characterized in that: include: Acquire original three-dimensional point cloud data of a target area; wherein the target area contains trees with branches; extract forest stand point cloud data from the original three-dimensional point cloud data; perform single-tree segmentation processing on the forest stand point cloud data to obtain single-tree point cloud data; A point cloud within a preset height range is intercepted from the single tree point cloud data to obtain segmented point cloud data; a KD tree of the segmented point cloud data is established, and the average point spacing of the segmented point cloud data is determined by using the KD tree; the side length of the root node cube of the octree is determined according to the size information of the segmented point cloud data, and the child node cubes of each level of the octree are determined step by step until the side length of the child node cube is less than the average point spacing, and the child node cubes with side lengths greater than the average point spacing are retained; each point in the segmented point cloud data is matched to the corresponding child node cube; Set all child node cubes containing points to unlabeled; Any unlabeled child node cube is used as the current voxel, and the following neighborhood search operation is performed: a label is set for the child node cube, a neighborhood search is performed on the child node cube, and unlabeled child node cubes in adjacent child node cubes obtained by the neighborhood search are marked with the same label as the child node cube; each unlabeled child node cube in the child node cube obtained by the neighborhood search is used as the current voxel, and the neighborhood search operation is performed until no neighboring child node cubes are found; Performing the neighborhood search operation on other unlabeled child node cubes; The point clouds in the child node cubes with the same label are taken as a cluster of clustered point cloud data, and each cluster of clustered point cloud data is filtered according to a preset condition to obtain multiple clusters of target point cloud data; the multiple clusters of target point cloud data include trunk point cloud data and branch point cloud data; For each cluster of target point cloud data, the cluster target point cloud data is cut according to the preset slice thickness and the preset slice interval to obtain multiple point cloud data segments; circle fitting is performed on each point cloud data segment to obtain multiple fitting circles, and the validity of each fitting circle is determined by using the preset validity evaluation index; when the proportion of the number of valid fitting circles exceeds the preset threshold, the mean value of the radius of the valid fitting circles is taken as the breast diameter corresponding to the cluster target point cloud data.

2. The method according to claim 1, characterized in that Also includes: When the proportion of the valid fitting circles is less than the preset threshold, the cluster target point cloud data is invalid point cloud data.

3. The method according to claim 1, characterized in that Also includes: The largest DBH is taken as the trunk DBH, and the other DBH are taken as the branch DBH.

4. The method according to claim 1, characterized in that: The method of determining the validity of each fitting circle by using a preset validity evaluation index includes: For each fitting circle, the radius of the inner ring circle corresponding to the fitting circle is set to M times the radius of the fitting circle, and the thickness of the outer ring circle corresponding to the fitting circle is set to P times the radius of the fitting circle; wherein M is a positive number less than 1; and P is a positive number less than 1; Count the number of points whose distance to the center of the fitting circle is greater than the radius of the inner circle and less than R+w / 2, and obtain the number of points between the inner and outer circles; where R is the radius of the fitting circle and W is the thickness of the outer circle; Determine a first evaluation score according to the proportion of the number of points between the inner and outer rings in the total number of points in the corresponding point cloud data segment; The outer ring circle is divided into a plurality of sectors, and sectors whose number of points exceeds a preset point threshold are regarded as occupied sectors; Determine a second evaluation score according to the proportion of the occupied sectors in all sectors; A weighted sum is performed on the first evaluation score and the second evaluation score, and the validity of the fitting circle is determined according to the obtained weighted sum result.

5. The method according to claim 1, characterized in that The step of performing circle fitting on each point cloud data segment to obtain multiple fitting circles includes: The random sampling consistency algorithm is used to perform circle fitting on each point cloud data segment to obtain multiple fitting circles.

6. The method according to claim 1, characterized in that The filtering of each cluster point cloud data according to the preset conditions to obtain multiple clusters of target point cloud data includes: The clustered point cloud data with the number of points less than the preset threshold are eliminated to obtain multi-cluster target point cloud data.

7. The method according to claim 1, characterized in that The method of using the KD tree to determine the average point spacing of the segmented point cloud data includes: Using the KD tree, searching for N points closest to each point in the segmented point cloud data; wherein N is a positive integer; For each point, calculate the average distance between the point and the nearest N points; The mean of the average distances corresponding to each point is taken as the average point spacing.

8. A device for extracting multiple DBH of trees with branches, characterized in that: include: A data acquisition processing module is used to acquire original three-dimensional point cloud data of a target area; wherein the target area contains trees with branches; extract forest stand point cloud data from the original three-dimensional point cloud data; and perform single tree segmentation processing on the forest stand point cloud data to obtain single tree point cloud data; An octree establishment module is used to intercept point clouds within a preset height range from the single tree point cloud data to obtain segmented point cloud data; establish a KD tree of the segmented point cloud data, and use the KD tree to determine the average point spacing of the segmented point cloud data; determine the side length of the root node cube of the octree according to the size information of the segmented point cloud data, and determine the child node cubes of each level of the octree step by step until the side length of the child node cube is less than the average point spacing, and retain the child node cubes with side lengths greater than the average point spacing; match each point in the segmented point cloud data to the corresponding child node cube; A search clustering module is used to set all child node cubes containing points as unlabeled; and, take any unlabeled child node cube as a current voxel, and perform the following neighborhood search operation: set a label for the child node cube, perform a neighborhood search on the child node cube, and mark the unlabeled child node cubes in the adjacent child node cubes obtained by the neighborhood search with the same label as the child node cube; take each unlabeled child node cube in the child node cube obtained by the neighborhood search as the current voxel, and perform the neighborhood search operation until no neighboring child node cubes can be found; and perform the neighborhood search operation on other unlabeled child node cubes; The search clustering module is further used to take the point clouds in the child node cubes with the same label as a cluster of clustered point cloud data, and filter each cluster of clustered point cloud data according to a preset condition to obtain multiple clusters of target point cloud data; the multiple clusters of target point cloud data include trunk point cloud data and branch point cloud data; The diameter at breast height determination module is used to cut each cluster of target point cloud data according to a preset slice thickness and a preset slice interval to obtain multiple point cloud data segments; perform circle fitting on each point cloud data segment to obtain multiple fitting circles, and use a preset effectiveness evaluation index to determine the effectiveness of each fitting circle; when the proportion of the number of valid fitting circles exceeds a preset threshold, the mean value of the radius of the valid fitting circles is used as the diameter at breast height corresponding to the cluster of target point cloud data.

9. An electronic device comprising a memory, a processor and a computer program stored in the memory, wherein the processor implements the method according to any one of claims 1 to 7 when executing the computer program.

10. A computer-readable storage medium, wherein a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.

Citation Information

Cited By

  • A single-tree diameter extraction method, system and device based on ray method

    CN122694878A