CN113449733B - Point cloud scene tree extraction method based on structural analysis - Google Patents
Point cloud scene tree extraction method based on structural analysis Download PDFInfo
- Publication number
- CN113449733B CN113449733B CN202110315280.5A CN202110315280A CN113449733B CN 113449733 B CN113449733 B CN 113449733B CN 202110315280 A CN202110315280 A CN 202110315280A CN 113449733 B CN113449733 B CN 113449733B
- Authority
- CN
- China
- Prior art keywords
- candidate
- point cloud
- point
- trunk
- crown
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/62—Analysis of geometric attributes of area, perimeter, diameter or volume
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/66—Analysis of geometric attributes of image moments or centre of gravity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30181—Earth observation
- G06T2207/30188—Vegetation; Agriculture
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Geometry (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
The invention discloses a point cloud scene tree extraction method based on structural analysis, which comprises the following steps: rasterizing the three-dimensional point cloud data, and dividing the point cloud into ground points, low position points and high position points according to the minimum value of a z value in each grid; respectively segmenting all the low-position points and the high-position points to respectively obtain a plurality of point cloud clusters, and extracting candidate trunks and candidate crowns according to the corresponding point cloud clusters; matching the candidate crown with the candidate trunk, removing unmatched candidate trunks and rods intertwined with the trees, segmenting overlapped crowns of adjacent trees, and dividing the point clouds of the overlapped crowns into the trees to which the point clouds belong, so that the complete segmentation of a single tree is realized, and the problem of inaccurate segmentation of the overlapped crowns between the adjacent trees in the conventional segmentation method is solved; training data do not need to be manually selected, segmentation errors caused by manual setting are avoided, and accurate extraction of a single tree is achieved.
Description
Technical Field
The invention belongs to the technical field of tree extraction methods, and relates to a point cloud scene tree extraction method based on structural analysis.
Background
Trees are important components of urban road construction and development, and play a vital role in maintaining environmental quality, reducing pollution and urban landscape. Due to the diversity and proximity of scene objects, it is difficult to accurately extract a single tree from the urban point cloud scene data. At present, the existing tree extraction methods can be divided into two types: a tree extraction method based on segmentation and a tree extraction method based on machine learning.
(1) Tree extraction method based on segmentation
Rutzinger divides other point cloud data into the center of the crown with the nearest distance to realize the division of the trees by determining the center position of the crown of each tree according to the principle of proximity. Yang et al extract the trunk through the analysis of the three-dimensional structure of the point cloud data, and regard the position that the trunk intersects with ground as the position of trees. After the position of the tree is obtained, the tree is segmented by a layering minimum segmentation method. Collected point cloud data is classified into ground, buildings, trees, signs, power lines, miscellaneous points and the like through TrimbleRealworks, and extraction of single trees is achieved through a DBSCAN density clustering algorithm. And then, a grid competition algorithm based on density features is provided to finely divide the overlapped crown point cloud. Segmentation-based methods tend to extract a single forest from point cloud scene data. In a real scene, the crowns of adjacent trees are often overlapped, and the difficulty of segmenting a single tree is increased.
(2) Tree extraction method based on machine learning
After Li calculates 16 local geometric features (such as width, height, spatial distribution pattern, etc.), a discrete AdaBoost algorithm is used to divide the point cloud into a trunk and a crown. Positioning and dividing a single tree by utilizing the incoherence between adjacent trees and the adjacency in the single tree; heinzel et al propose a constrained spectral clustering method for minimizing Markov random field energy to extract trees in a scene. However, supervised machine learning approaches require manual selection of training data. Xiang extracts the geometric features of each segmented point cloud cluster on the basis of scene segmentation, and then uses four classifiers (support vector machine, random forest, naive bayes, extreme learning machine) to divide the point cloud scene into six classes: buildings, utility poles, automobiles, trees, the ground, and the like. Although the point cloud scenes can be well classified and identified by using a machine learning method, the characteristics are often set manually by depending on field experts.
Disclosure of Invention
The invention aims to provide a point cloud scene tree extraction method based on structural analysis, which solves the problem of inaccurate segmentation caused by overlapping of canopy layers between adjacent trees in the prior art.
The technical scheme adopted by the invention is that a point cloud scene tree extraction method based on structural analysis comprises the following steps:
step 1, rasterizing three-dimensional point cloud data along x and y axes, searching the minimum value of a z value in each grid, and dividing the point cloud into ground points, low position points and high position points according to the minimum value of the z value in each grid and the z value of each point;
step 2, segmenting all low-position points to obtain a plurality of point cloud clusters, and extracting candidate trunks according to the geometrical characteristics of the point cloud clusters;
step 3, segmenting all high position points to obtain a plurality of point cloud clusters, and extracting candidate crowns according to the space distribution mode of the point cloud clusters and the projection area of the minimum circumscribed rectangle;
step 4, whether the minimum external rectangle of the candidate crown point cloud cluster only covers one candidate trunk point cloud cluster or not is judged, and if yes, candidate tree extraction is finished; otherwise, deleting the candidate trunk or carrying out the next step;
step 5, judging that a plurality of extracted candidate trunks matched with the candidate crown point cloud cluster are mutually overlapped with the stems interlaced with the trees or the crowns of a plurality of trees, and if the extracted candidate trunks are the stems interlaced with the trees, removing the stems interlaced with the trees; and if the crowns of a plurality of trees are mutually overlapped, segmenting the overlapped crowns of adjacent trees, and dividing the overlapped point clouds into the trees to which the overlapped point clouds belong to respectively to complete the segmentation of the point clouds of the single tree.
The invention is also characterized in that:
the step 1 comprises the following steps:
step 1.1, rasterizing the three-dimensional point cloud data along x and y axes, and searching the minimum value Z of Z values in each grid localmin ;
Step 1.2, dividing the point cloud into ground points G according to the following formula ground Low position point G lowlayer High position G highlayer ;
In the above formula, the first and second carbon atoms are,is any point p in the grid i The value of z.
The step 2 comprises the following steps:
step 2.1, segmenting all low-position points by using a DBSCAN clustering algorithm to obtain a plurality of point cloud clusters;
step 2.2, projecting the plurality of point cloud clusters to an XOY plane, and calculating the projection area of each point cloud cluster;
step 2.3, calculating the maximum value Z of the Z value in each point cloud cluster imax With the minimum value of Z imin The difference value Δ z of (a), namely the point cloud cluster height;
step 2.4, if the projection area and the height of the point cloud cluster simultaneously meet the following conditions, judging the point cloud cluster as a candidate trunk point cloud:
the method comprises the following steps that firstly, the projection area is smaller than 0.4;
secondly, the height of the point cloud cluster is larger than 1;
condition three, point cloud cluster lowest point Z min Close to the ground.
The projection area of each point cloud cluster is calculated as follows:
the maximum x and y coordinate values in the point cloud cluster are assumed to be x imax 、y imax The minimum x and y coordinate values are x imin 、y imin The difference between the maximum x coordinate value and the minimum x coordinate value is Deltax i =|x imax -x imin I, the difference between the maximum y coordinate value and the minimum y coordinate value is Deltay i =|y imax -y imin I, the projection Area of the point cloud cluster is Area i =Δx i ×Δy i 。
The step 3 comprises the following steps:
3.1, segmenting all high-position points by using a DBSCAN clustering algorithm to obtain a plurality of point cloud clusters;
step 3.2, for any point p in each point cloud cluster i Find point p i K number of neighboring pointsPoint p i The third order covariance matrix M is: />
In the above-mentioned formula, the compound has the following structure,is a point p i Average position of k neighboring points;
point p is pointed out by singular value decomposition i The third-order covariance matrix M is subjected to eigenvalue decomposition to obtain the eigenvalue lambda of the covariance matrix M 1 、λ 2 And λ 3 And λ 1 ≥λ 2 ≥λ 3 Not less than 0; calculating to obtain point p based on characteristic value i Dimensional characteristics of (a):
a 1D ,a 2D ,a 3D respectively represent linear features, planar features, and random features, based onObtain each point p i The spatial distribution pattern of (a);
3.3, calculating the projection area of the minimum circumscribed rectangle of the projection data of each point cloud cluster;
step 3.4, if the projection area and the spatial distribution mode of the minimum external rectangle of the point cloud cluster simultaneously meet the following conditions, judging the point cloud cluster as a candidate crown point cloud:
the method comprises the following steps that firstly, the minimum circumscribed rectangular area of projection data is larger than 0.5;
and secondly, the spatial distribution mode is that the number of the scattered points is larger than the number of the linear and planar points.
Step 4 comprises the following steps:
step 4.1, if the candidate trunk point cloud cluster is projected on the XOY plane, the maximum x coordinate value x imax Maximum y coordinate value y imax Minimum x coordinate value x imin Minimum y-coordinate value y imin All in the coordinate range of the minimum circumscribed rectangle projected by the candidate crown point, the minimum circumscribed rectangle of the candidate crown is considered to cover the candidate trunk; according to the number of candidate trunks covered by the minimum circumscribed rectangle of the candidate crown, extracting the candidate trees in the following way:
if the minimum external rectangle of the candidate crown point cloud cluster can cover one candidate trunk point cloud cluster, the candidate crown and the candidate trunk are considered to form a tree;
if the minimum circumscribed rectangle of the candidate crown does not cover the candidate trunk, the candidate crown is regarded as an incomplete tree, and the candidate trunk is deleted;
and if the minimum circumscribed rectangle of the candidate tree crowns covers a plurality of candidate tree trunks, judging that the tree crowns of a plurality of trees are mutually overlapped or the trees and the stems are mutually entangled, and carrying out the next step.
Step 5 comprises the following steps:
step 5.1, assuming that the minimum circumscribed rectangle of the candidate crown covers a plurality of candidate trunks, and calculating the candidate trunk point cloud cluster T covered by the candidate crown by using the following formula i Center point C of i Coordinates of the object
In the above formula, N is the number of cloud points of each tree trunk point, (x) j ,y j ,z j ) As candidate trunk point cloud cluster T i The coordinate value of any point;
candidate tree assuming coverage of candidate crownThe center point of stem 1 isThe center point of the candidate trunk 2 is->The vector between the two center points is->A direction vector on the x-axis of ^ h> And &>The angle between the two vectors is: />Rotating the candidate crown and the covered candidate trunk point by theta degrees towards the x-axis direction, wherein for any point p, the new coordinate is as follows:
converted x value: x new =p.x*cos(θ)+p.y*sin(θ)
Converted y value: p.y new =p.y*cos(θ)-p.y*sin(θ)
Converted z value: p.z new =p.z
step 5.2, projecting the new coordinates of the candidate trunk point and the candidate tree crown point to the xoz plane, and calculating the maximum value x of the candidate tree crown point in the x direction tmax And the minimum value x tmin Center point of candidate tree trunk and maximum value x of candidate crown tmax Minimum value x tmin The distances of (a) are respectively:
if D is 1 < 0.5 or D 2 If the tree trunk center point is less than 0.5, namely the tree trunk center point is close to the edge of the candidate tree crown, the candidate tree trunk point cloud cluster is considered to be a rod-shaped object intertwined with the tree, and D is deleted 1 A point < 0.5, removing the rod entangled with the tree; if D is 1 > 0.5 or D 2 If the tree crowns are more than 0.5, the tree crowns of a plurality of trees are considered to be mutually overlapped, and the next step is carried out:
step 5.3, transversely segmenting the overlapped candidate crowns along the z-axis direction, and dividing the candidate crown point cloud into 5-10 layers to obtain point cloud data of each layer of the tree; dividing each layer of point cloud data into different point cloud clusters according to the distance information among the points by using an Euclidean clustering algorithm, and allocating each point cloud cluster to a tree trunk closest to the centroid of the point cloud cluster according to the principle of closeness;
if the point cloud data after the transverse segmentation only comprises one point cloud cluster, the point cloud cluster is considered to be an overlapping part of adjacent candidate crowns; the distance between the candidate stem 1 and the candidate stem 2 center point is:minimum value X of candidate crown min Is at a distance of pickfrom the center point of the candidate trunk 1>The distance between the candidate trunk 2 and the maximum value of the candidate crown is £>The scale factor α is: />For any point p in the candidate crown of the layer, if the value of its x-coordinate satisfies: />Then the point belongs to the candidate crown where the candidate stem 1 is located, otherwise, it belongs to the candidate stem 2The candidate crown of (a);
if the maximum X coordinate value X of the candidate trunk 1 is in each layer of point cloud data max And if the candidate trunk center point x coordinate is less than the candidate trunk center point x coordinate, the candidate crown point of the layer is classified as the candidate trunk 1.
The invention has the beneficial effects that:
the invention relates to a point cloud scene tree extraction method based on structural analysis, which comprises the steps of extracting candidate crowns and candidate trunks from three-dimensional point cloud data, matching the candidate crowns and the candidate trunks, removing unmatched candidate trunks and rods intertwined with trees, segmenting overlapped crowns of adjacent trees, and dividing overlapped crown point clouds into the trees to which the overlapped crowns belong, so that complete segmentation of a single tree is realized, and the problem of inaccurate segmentation of overlapped crowns between adjacent trees in the existing segmentation method is solved; training data do not need to be manually selected, segmentation errors caused by manual setting are avoided, and accurate extraction of a single tree is achieved.
Drawings
FIG. 1a is a point cloud scene data diagram of low position points of a tree extraction method for a point cloud scene based on structural analysis according to the present invention;
FIG. 1b is a point cloud scene data diagram of high position points of a point cloud scene tree extraction method based on structural analysis according to the present invention;
FIG. 2 is a schematic diagram of a local coordinate system establishment of a point cloud scene tree extraction method based on structural analysis;
FIG. 3 is a diagram illustrating the effect of removing the stem entangled with the tree in the point cloud scene tree extraction method based on structural analysis according to the present invention;
FIG. 4 is a schematic diagram of the fine segmentation of overlapped crowns in the point cloud scene tree extraction method based on structural analysis;
fig. 5 is a point cloud tree extraction effect diagram of the point cloud scene tree extraction method based on structural analysis.
Detailed Description
The present invention will be described in detail below with reference to the accompanying drawings and specific embodiments.
A point cloud scene tree extraction method based on structural analysis comprises the following steps:
step 1, rasterizing three-dimensional point cloud data along x and y axes, setting the size of a grid to be 2m multiplied by 2m, and searching the minimum value Z of Z values in each grid localmin According to the minimum value Z of Z-value in each grid localmin The z value of each point divides the point cloud into a ground point, a low position point (shown in figure 1 a) and a high position point (shown in figure 1 b);
specifically, step 1.1, rasterizing the three-dimensional point cloud data along the x and y axes, and searching the minimum value Z of the Z value in each grid localmin ;
Step 1.2, dividing the point cloud into ground points G according to the following formula ground Low position point G lowlayer High position G highlayer ;
In the above formula, the first and second carbon atoms are,is any point p in the grid i Z value of (a); if satisfy->Then consider p to be i Is a ground point G ground (ii) a If satisfy->Then consider p to be i A low position point G including a ground low feature and a trunk point lowlayer (ii) a If satisfy->Then consider p to be i As high position points G containing crown points highlayer 。
Step 2, segmenting all low-position points to obtain a plurality of point cloud clusters, and extracting candidate trunks according to the geometrical characteristics of the point cloud clusters;
step 2.1, segmenting all low-position points by using a DBSCAN clustering algorithm to obtain a plurality of point cloud clusters;
the DBSCAN algorithm comprises the following specific implementation steps:
step a, selecting any one unmarked low position point p i Counting the number MinPts of points in the neighborhood radius Eps i Let p be i Points in the neighborhood are noted as N eps (p i ) If N is present eps (p i ) Number of midpoints MinPts i Not less than a minimum density threshold value MinPts, i.e. MinPts i Not less than MinPts, establish cluster C and connect point p i Points in the neighborhood add C. If N is present eps (p i ) Number of midpoint MinPts i Less than MinPts, then p i Marked as a noise point;
step b, for N eps (p i ) The number MinPts of the points in the neighborhood radius Eps is counted q If MinPts p If the number of the clusters is more than or equal to MinPts, adding points which are not classified into any cluster in the neighborhood into the cluster C;
step c, repeating the step b, and continuously checking the cluster N eps (p i ) Until no point is added to cluster C;
and d, repeating the steps a, b and c until all points are classified into a certain cluster or marked as noise, and obtaining a plurality of point cloud clusters.
The DBSCAN algorithm relies on two parameters: a neighborhood radius Eps and a density threshold Minpts. The ranges are set to 0.1-0.3 and 30-50, respectively. After the clustering by the DBSCAN, the low position points can be preliminarily segmented into a plurality of point cloud clusters.
Step 2.2, projecting the plurality of point cloud clusters to an XOY plane, and calculating the projection area of each point cloud cluster according to the following formula:
the maximum x and y coordinate values in the point cloud cluster are assumed to be x imax 、y imax The minimum x and y coordinate values are x imin 、y imin The difference between the maximum x coordinate value and the minimum x coordinate value is Δ x i =|x imax -x imin I, the difference between the maximum y coordinate value and the minimum y coordinate value is Deltay i =|y imax -y imin I, the projection Area of the point cloud cluster is Area i =Δx i ×Δy i ;
Step 2.3, calculating the maximum value Z of the Z value in each point cloud cluster imax With the minimum value of Z imin Difference Δ z of (a): Δ Z = | Z imax -Z imin I, point cloud cluster height;
step 2.4, if the projection area and the height of the point cloud cluster simultaneously meet the following conditions, judging the point cloud cluster as a candidate trunk point cloud:
condition one, the projection Area is less than 0.4, i.e. Area i <0.4;
Secondly, the height of the point cloud cluster is larger than 1, namely delta z is larger than 1;
Step 3, segmenting all high position points to obtain a plurality of point cloud clusters, and extracting candidate crowns according to the space distribution mode of the point cloud clusters and the projection area of the minimum circumscribed rectangle;
step 3.1, segmenting all high position points by using a DBSCAN clustering algorithm to obtain a plurality of point cloud clusters;
step 3.2, for any point p in each point cloud cluster i Find point p i K neighbor points ofPoint p i The third order covariance matrix M of (a) is:
in the above formula, the first and second carbon atoms are,is a point p i Average position of k neighboring points;
point p is pointed out by singular value decomposition i The third-order covariance matrix M is subjected to eigenvalue decomposition to obtain an eigenvalue lambda of the covariance matrix M 1 、λ 2 And λ 3 And λ of 1 ≥λ 2 ≥λ 3 Not less than 0; calculating to obtain point p based on characteristic value i The dimensional characteristics of (a):
a 1D ,a 2D ,a 3D respectively showing linear, planar, and random features, based onObtain each point p i The spatial distribution pattern of (a);
3.3, calculating the projection area of the minimum circumscribed rectangle of the projection data of each point cloud cluster;
assuming that the maximum x-coordinate value of the minimum bounding rectangle is x jmax The maximum y coordinate value is y jmax The minimum x coordinate value is x jmin The minimum y coordinate value is y jmin Then the projected area is: area j =Δx j ×Δy j ;
Step 3.4, if the projection area and the spatial distribution mode of the minimum external rectangle of the point cloud cluster simultaneously meet the following conditions, judging the point cloud cluster as a candidate crown point cloud:
condition one, the minimum circumscribed rectangle Area of the projection data is greater than 0.5, namely Area j >0.5;
And secondly, the number of scattered points in the spatial distribution mode in the point cloud cluster is larger than the number of linear and planar points.
Step 4, judging whether the minimum external rectangle of the candidate crown point cloud cluster only covers one candidate trunk point cloud cluster, if so, finishing candidate tree extraction; otherwise, deleting the candidate trunk or carrying out the next step;
step 4.1, if the candidate trunk candidate point cloud cluster is projected on the XOY plane, the maximum x coordinate value x imax And the maximum y coordinate value y imax Minimum x-coordinate value x imin Minimum y-coordinate value y imin All within the coordinate range of the minimum bounding rectangle projected by the candidate crown point, namely satisfying the following formula:
considering that the minimum circumscribed rectangle of the candidate crown can cover the candidate trunk;
according to the number of candidate trunks under the minimum circumscribed rectangle of the candidate crown, extracting the candidate trees in the following mode:
if the minimum external rectangle of the candidate crown point cloud cluster can cover one candidate trunk point cloud cluster, the candidate crown and the candidate trunk are considered to form a tree, and then the extraction of the candidate tree is completed;
if the minimum circumscribed rectangle of the candidate tree crown does not cover the candidate trunk, the tree crown is regarded as an incomplete tree, and the uncovered candidate trunk is deleted;
if the minimum circumscribed rectangle of the candidate tree crowns covers a plurality of candidate tree trunks, judging that the tree crowns of a plurality of trees are mutually overlapped or the trees and the stems are mutually entangled, and carrying out the next step;
step 5, judging that a plurality of extracted candidate trunks matched with the candidate crown point cloud cluster are mutually overlapped with the rod-shaped object intertwined with the tree or the crowns of a plurality of trees, and if the extracted candidate trunks are the rod-shaped object intertwined with the tree, removing the rod-shaped object intertwined with the tree; and if the crowns of a plurality of trees are mutually overlapped, segmenting the overlapped crowns of adjacent trees, and dividing the overlapped point clouds into the trees to which the overlapped point clouds belong to respectively to complete the segmentation of the point clouds of the single tree.
Step 5.1, assuming that the minimum circumscribed rectangle of the candidate crown covers a plurality of candidate trunks, as shown in fig. 2, calculating a candidate trunk point cloud cluster T covered by the candidate crown by using the following formula i Center point C of i Coordinates of the object
In the above formula, N is the number of cloud points of each tree trunk point, (x) j ,y j ,z j ) As candidate trunk point cloud cluster T i The coordinate value of any point;
suppose the center point of the candidate trunk 1 covered by the candidate crown isThe center point of the candidate trunk 2 isThe vector between the two center points is->A direction vector on the x-axis of ^ h> And &>The angle between the two vectors is: />Rotating the candidate crown and the covered candidate trunk point by theta degrees towards the x-axis direction, wherein for any point p, the new coordinate is as follows:
converted x value: x new =p.x*cos(θ)+p.y*sin(θ)
Converted y value: p.y new =p.y*cos(θ)-p.y*sin(θ)
Converted z value:p.z new =p.z
step 5.2, projecting the new coordinates of the candidate trunk point and the candidate crown point to the xoz plane, and calculating the maximum value x of the candidate crown point in the x direction tmax And the minimum value x tmin Candidate trunk center point and candidate crown maximum x tmax Minimum value x tmin The distances of (a) are respectively:
if D is 1 < 0.5 or D 2 If the central point of the trunk is less than 0.5, namely the central point of the trunk is close to the edge of the candidate crown, the candidate trunk point cloud cluster is considered to be a rod-shaped object intertwined with the tree, and D is deleted as shown in figure 3a 1 Point < 0.5, removing the shaft entangled with the tree, as shown in fig. 3 b;
if D is 1 > 0.5 or D 2 If the tree crowns are more than 0.5, the tree crowns of a plurality of trees are considered to be mutually overlapped, and the next step is carried out:
step 5.3, transversely segmenting the overlapped candidate tree crowns along the z-axis direction, and dividing the candidate tree crown point clouds into 5-10 layers to obtain point cloud data of each layer of the tree; dividing each layer of point cloud data into different point cloud clusters according to distance information among points by using an Euclidean clustering algorithm, and allocating each point cloud cluster to a tree trunk closest to the centroid of the point cloud cluster according to a principle of closeness;
if the point cloud data after the transverse segmentation only comprises one point cloud cluster, the point cloud cluster is considered to be an overlapping part of adjacent candidate crowns, as shown in fig. 4; the distance between the candidate stem 1 and the candidate stem 2 center point is:minimum value X of candidate crown min Is at a distance of pickfrom the center point of the candidate trunk 1>A distance between the candidate trunk 2 and the candidate crown maximum of £ v>The scale factor α is: />For any point p in the candidate crown of the layer, if the value of its x-coordinate satisfies: />The point belongs to the candidate crown where the candidate trunk 1 is located, otherwise, the point belongs to the candidate crown where the candidate trunk 2 is located;
if the maximum X coordinate value X of the candidate trunk 1 is in each layer of point cloud data max And if the candidate trunk center point x coordinate is smaller than the candidate trunk center point x coordinate, the candidate crown point of the layer is classified as the candidate trunk 1.
After the steps 1-5, the tree can be completely extracted from the point cloud scene. FIG. 5 is an effect diagram of extracting a single tree from a point cloud scene.
Through the mode, the point cloud scene tree extraction method based on the structural analysis comprises the steps of extracting candidate crowns and candidate trunks from three-dimensional point cloud data, matching the candidate crowns and the candidate trunks, removing unmatched candidate trunks and rods with the number being mutually interlaced, segmenting overlapping canopy layers of adjacent trees, and dividing overlapped point clouds into the trees to which the overlapped point clouds belong, so that complete segmentation of a single tree is realized, and the problem of inaccurate segmentation of the overlapping canopy layers between the adjacent trees in the existing segmentation method is solved; training data do not need to be manually selected, segmentation errors caused by manual setting are avoided, and accurate extraction of a single tree is achieved.
Claims (5)
1. A point cloud scene tree extraction method based on structural analysis is characterized by comprising the following steps:
step 1, rasterizing three-dimensional point cloud data along x and y axes, searching the minimum value of a z value in each grid, and dividing the point cloud into ground points, low position points and high position points according to the minimum value of the z value in each grid and the z value of each point;
step 2, segmenting all the low-position points to obtain a plurality of point cloud clusters, and extracting candidate trunks according to the geometrical characteristics of the point cloud clusters;
step 3, segmenting all the high position points to obtain a plurality of point cloud clusters, and extracting candidate crowns according to the spatial distribution mode of the point cloud clusters and the projection area of the minimum circumscribed rectangle;
step 4, judging whether the minimum external rectangle of the candidate crown point cloud cluster only covers one candidate trunk point cloud cluster, if so, finishing candidate tree extraction; otherwise, deleting the candidate trunk or carrying out the next step;
step 5, judging that the extracted candidate trunks matched with the candidate crown point cloud cluster are mutually overlapped with the stems interlaced with the trees or the crowns of a plurality of trees, and if the extracted candidate trunks are the stems interlaced with the trees, removing the stems interlaced with the trees; if the crowns of a plurality of trees are mutually overlapped, the overlapped crowns of adjacent trees are segmented, and the overlapped point clouds are divided into the trees to which the overlapped point clouds belong, so that the segmentation of the point clouds of a single tree is completed;
the step 3 comprises the following steps:
3.1, segmenting all the high-position points by using a DBSCAN clustering algorithm to obtain a plurality of point cloud clusters;
step 3.2, for any point p in each point cloud cluster i Find point p i K neighbor points ofPoint p i The third order covariance matrix M is:
in the above formula, the first and second carbon atoms are,is a point p i Average position of k neighboring points;
by singular value decomposition of the point p i The third-order covariance matrix M is subjected to eigenvalue decomposition to obtain the eigenvalue lambda of the covariance matrix M 1 、λ 2 And λ 3 And λ of 1 ≥λ 2 ≥λ 3 Not less than 0; calculating to obtain point p based on characteristic value i Dimensional characteristics of (a):
a 1D ,a 2D ,a 3D respectively showing linear, planar, and random features, based onObtain each point p i The spatial distribution pattern of (a);
3.3, calculating the projection area of the minimum circumscribed rectangle of the projection data of each point cloud cluster;
step 3.4, if the projection area and the spatial distribution mode of the minimum external rectangle of the point cloud cluster simultaneously meet the following conditions, judging the point cloud cluster as a candidate crown point cloud:
the method comprises the following steps that firstly, the minimum circumscribed rectangular area of projection data is larger than 0.5;
secondly, the number of scattered points is larger than the number of linear and planar points in the spatial distribution mode;
step 5 comprises the following steps:
step 5.1, supposing that the minimum circumscribed rectangle of the candidate crown covers a plurality of candidate trunks, and calculating a candidate trunk point cloud cluster T covered by the candidate crown by using the following formula i Center point C of i Coordinates of the object
In the above formula, N is the number of cloud points of each tree trunk point, (x) j ,y j ,z j ) As candidate trunk point cloud cluster T i Coordinate values of any one point;
suppose the center point of the candidate trunk 1 covered by the candidate crown isThe center point of the candidate trunk 2 isThe vector between the two center points is->A direction vector on the x-axis of ^ h> And &>The angle between the two vectors is: />Rotating the candidate crown and the covered candidate trunk points by theta degrees towards the x-axis direction, wherein for any point p, the new coordinates are as follows:
converted x value: x new =p.x*cos(θ)+p.y*sin(θ)
Converted y value: p.y new =p.y*cos(θ)-p.y*sin(θ)
Converted z value: p.z new =p.z
step 5.2, projecting the new coordinates of the candidate trunk point and the candidate crown point to the xoz plane, and calculating the maximum value x of the candidate crown point in the x direction tmax And minimum value x tmin The center point of the candidate tree trunk and the maximum value x of the candidate crown tmax Minimum value x tmin The distances of (a) are respectively:
if D is 1 <0.5 or D 2 <0.5, namely the central point of the trunk is close to the edge of the candidate crown, the candidate trunk point cloud cluster is considered as a rod-shaped object intertwined with the tree, and D is deleted 1 <Point 0.5, removing the rod entangled with the tree; if D is 1 >0.5 or D 2 >0.5, the crowns of the trees are considered to be mutually overlapped, and the next step is carried out:
step 5.3, transversely segmenting the overlapped candidate tree crowns along the z-axis direction, and dividing the candidate tree crown point clouds into 5-10 layers to obtain point cloud data of each layer of the tree; dividing each layer of point cloud data into different point cloud clusters according to distance information among points by using an Euclidean clustering algorithm, and allocating each point cloud cluster to a tree trunk closest to the centroid of the point cloud cluster according to a principle of closeness;
if the point cloud data after the transverse segmentation only comprises one point cloud cluster, the point cloud cluster is considered to be an overlapping part of adjacent candidate crowns; the distance between the candidate stem 1 and the candidate stem 2 center point is:minimum value X of candidate crown min Is at a distance of pickfrom the center point of the candidate trunk 1>The distance between the candidate trunk 2 and the maximum value of the candidate crown is £>The scale factor α is: />For any point p in the candidate crown of the layer, if the value of its x-coordinate satisfies: />The point belongs to the candidate crown where the candidate trunk 1 is located, otherwise, the point belongs to the candidate crown where the candidate trunk 2 is located;
if the maximum X coordinate value X of the candidate trunk 1 in each layer of the point cloud data max And if the candidate trunk center point x coordinate is less than the candidate trunk center point x coordinate, the candidate crown point of the layer is classified as the candidate trunk 1.
2. The point cloud scene tree extraction method based on structural analysis of claim 1, wherein step 1 comprises the following steps:
step 1.1, rasterizing the three-dimensional point cloud data along x and y axes, and searching the minimum value Z of Z values in each grid localmin ;
Step 1.2, dividing the point cloud into ground points G according to the following formula ground Low position point G lowlayer High position G highlayer ;
3. The point cloud scene tree extraction method based on structural analysis of claim 2, wherein the step 2 comprises the following steps:
step 2.1, segmenting all the low-position points by using a DBSCAN clustering algorithm to obtain a plurality of point cloud clusters;
step 2.2, projecting the plurality of point cloud clusters to an XOY plane, and calculating the projection area of each point cloud cluster;
step 2.3, calculating the maximum value Z of the Z value in each point cloud cluster imax With the minimum value of Z imin The difference value delta z is the height of the point cloud cluster;
step 2.4, if the projection area and the height of the point cloud cluster simultaneously meet the following conditions, judging the point cloud cluster as a candidate trunk point cloud:
the method comprises the following steps that firstly, the projection area is smaller than 0.4;
secondly, the height of the point cloud cluster is larger than 1;
condition three, point cloud cluster lowest point Z min Close to the ground.
4. The method for extracting trees from point cloud scenes based on structural analysis as claimed in claim 3, wherein the projection area of each point cloud cluster is calculated as follows:
the maximum x and y coordinate values in the point cloud cluster are assumed to be x imax 、y imax The minimum x and y coordinate values are x imin 、y imin The difference between the maximum x coordinate value and the minimum x coordinate value is Deltax i =|x imax -x imin I, the difference between the maximum y coordinate value and the minimum y coordinate value is Deltay i =|y imax -y imin I, the projection Area of the point cloud cluster is Area i =△x i ×△y i 。
5. The point cloud scene tree extraction method based on structural analysis of claim 1, wherein step 4 comprises the following steps:
step 4.1, if the candidate trunk point cloud cluster is projected on the XOY plane, the maximum x coordinate value x imax Maximum y coordinate value y imax Minimum x-coordinate value x imin Minimum y-coordinate value y imin All in the coordinate range of the minimum circumscribed rectangle projected by the candidate crown point, then recognizingThe minimum circumscribed rectangle of the candidate crown can cover the candidate trunk; according to the number of candidate trunks covered by the minimum circumscribed rectangle of the candidate crown, extracting the candidate trees in the following mode:
if the minimum external rectangle of the candidate crown point cloud cluster can cover one candidate trunk point cloud cluster, the candidate crown and the candidate trunk are considered to form a tree;
if the minimum circumscribed rectangle of the candidate crown does not cover the candidate trunk, the candidate crown is regarded as an incomplete tree, and the candidate trunk is deleted;
and if the minimum circumscribed rectangle of the candidate crown covers a plurality of candidate trunks, judging that the crowns of a plurality of trees are mutually overlapped or the trees and the stems are mutually entangled, and carrying out the next step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110315280.5A CN113449733B (en) | 2021-03-24 | 2021-03-24 | Point cloud scene tree extraction method based on structural analysis |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110315280.5A CN113449733B (en) | 2021-03-24 | 2021-03-24 | Point cloud scene tree extraction method based on structural analysis |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113449733A CN113449733A (en) | 2021-09-28 |
CN113449733B true CN113449733B (en) | 2023-04-18 |
Family
ID=77809358
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110315280.5A Active CN113449733B (en) | 2021-03-24 | 2021-03-24 | Point cloud scene tree extraction method based on structural analysis |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113449733B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116561506B (en) * | 2023-05-12 | 2024-05-31 | 中国林业科学研究院林业研究所 | Target tree selection method based on Bayesian average |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105894044A (en) * | 2016-04-29 | 2016-08-24 | 武汉大学 | Single-plant tree point cloud automatic extraction method based on vehicle-mounted laser scanning data |
CN111428784A (en) * | 2020-03-23 | 2020-07-17 | 湖南工学院 | Robust segmentation method for deciduous forest tree-level parameter measurement by adopting airborne laser radar |
AU2020103266A4 (en) * | 2019-12-12 | 2021-01-14 | Beijing Research Center Of Intelligent Equipment For Agriculture | System and method for measuring plant canopy biomass |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106408578A (en) * | 2016-09-22 | 2017-02-15 | 北京数字绿土科技有限公司 | Single-tree segmentation method and device |
-
2021
- 2021-03-24 CN CN202110315280.5A patent/CN113449733B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105894044A (en) * | 2016-04-29 | 2016-08-24 | 武汉大学 | Single-plant tree point cloud automatic extraction method based on vehicle-mounted laser scanning data |
AU2020103266A4 (en) * | 2019-12-12 | 2021-01-14 | Beijing Research Center Of Intelligent Equipment For Agriculture | System and method for measuring plant canopy biomass |
CN111428784A (en) * | 2020-03-23 | 2020-07-17 | 湖南工学院 | Robust segmentation method for deciduous forest tree-level parameter measurement by adopting airborne laser radar |
Non-Patent Citations (2)
Title |
---|
A new clustering-based framework to the stem estimation and growth fitting of street trees from mobile laser scanning data;Xu S et al.;《IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing》;20201231;第3240-3250页 * |
基于水平截面法的树木点云提取方法;吴英杰;《北京测绘》;20190425(第04期);第90-95页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113449733A (en) | 2021-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110570428B (en) | Method and system for dividing building roof sheet from large-scale image dense matching point cloud | |
CN112070769B (en) | Layered point cloud segmentation method based on DBSCAN | |
CN107123164B (en) | Three-dimensional reconstruction method and system for keeping sharp features | |
CN107292276B (en) | Vehicle-mounted point cloud clustering method and system | |
CN105513127B (en) | Shaft regularization three-dimensional modeling method and system based on density peaks cluster | |
CN112801022B (en) | Method for rapidly detecting and updating road boundary of unmanned mining card operation area | |
CN112070054B (en) | Vehicle-mounted laser point cloud marking classification method based on graph structure and attention mechanism | |
CN111508073B (en) | Method for extracting roof contour line of three-dimensional building model | |
CN112712592B (en) | Building three-dimensional model semantization method | |
CN110210418A (en) | A kind of SAR image Aircraft Targets detection method based on information exchange and transfer learning | |
CN113449733B (en) | Point cloud scene tree extraction method based on structural analysis | |
CN114119863A (en) | Method for automatically extracting street tree target and forest attribute thereof based on vehicle-mounted laser radar data | |
Xu et al. | Power line extraction from mobile LiDAR point clouds | |
CN115661374B (en) | Rapid retrieval method based on space division and model voxelization | |
CN115063555A (en) | Method for extracting vehicle-mounted LiDAR point cloud street tree growing in Gaussian distribution area | |
CN115620021A (en) | Underground building feature extraction method based on three-dimensional laser point cloud | |
CN114972743A (en) | Radius expansion-based hierarchical single tree extraction method | |
CN114170149A (en) | Road geometric information extraction method based on laser point cloud | |
CN116071530B (en) | Building roof voxelized segmentation method based on airborne laser point cloud | |
CN117274517A (en) | Method for generating light-weight body frame model of urban building based on three-dimensional model | |
CN116485821A (en) | Building point cloud segmentation and vector contour line extraction method and device | |
CN115170950A (en) | Outdoor scene building extraction method based on multi-feature constraint | |
CN114463396A (en) | Point cloud registration method using plane shape and topological graph voting | |
An et al. | Automatic recognition and feature extraction of rock blocks based on 3D point cloud data analytics | |
CN115018897B (en) | Method for extracting typical surface feature elements of laser point cloud city |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |