A method and related equipment for generating high-fidelity tree mesh models from multi-view images.

By extracting the trunk points and refining the skeleton from the three-dimensional Gaussian points, and combining the selection strategy of connection direction, a high-fidelity tree model was generated, which solved the problem of low geometric accuracy and realism of the tree model, and achieved the effect of clear trunk structure and realistic crown shape.

CN120807773BActive Publication Date: 2026-03-10SHENZHEN UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-06-16
Publication Date
2026-03-10

AI Technical Summary

Technical Problem

Existing technologies, when generating tree models, suffer from noise, sparsity, and incompleteness in 3D point cloud data due to the complex geometry and high self-occlusion characteristics of trees. This makes it difficult to accurately distinguish between the trunk and branches, resulting in poor geometric accuracy of the trunk model, distorted crown model shape, and low realism.

Method used

By extracting the trunk points from the 3D Gaussian points, using the shortest path length clustering algorithm and skeleton refinement, a tree trunk skeleton with correct topology is generated. Then, a screening strategy based on connection direction is used to select tree crown points that conform to the natural growth pattern from the sparse point cloud, generating a high-fidelity tree model.

Benefits of technology

It improves the overall realism of tree models, making the trunk structure clear and accurate, the crown shape full and the details lifelike, and solves the model distortion defects caused by data quality issues in existing technologies.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120807773B_ABST
    Figure CN120807773B_ABST
Patent Text Reader

Abstract

This application proposes a method and related apparatus for generating a high-fidelity tree mesh model from a multi-view image. The method includes: acquiring multiple three-dimensional Gaussian points of a target tree, and extracting trunk points from the multiple three-dimensional Gaussian points to obtain multiple trunk Gaussian points; clustering the multiple trunk Gaussian points based on the shortest path length between each trunk Gaussian point and the root node to obtain multiple trunk clusters, each trunk cluster including multiple trunk Gaussian points; calculating the centroid of each trunk cluster, and performing a refinement connection process based on the multiple centroids to obtain a tree skeleton; generating a tree trunk model based on the multiple three-dimensional Gaussian points and the tree skeleton; and performing crown filtering on the multiple three-dimensional Gaussian points based on the connection direction between each three-dimensional Gaussian point and the tree trunk model to obtain multiple crown points, and generating a tree model of the target tree based on the multiple crown points and the tree trunk model, thereby significantly improving the overall realism of the generated tree model.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of data processing, and in particular to a method for generating a high-fidelity tree mesh model from multi-view images and related equipment. BACKGROUND

[0002] In the fields of digital twin city, virtual geographic environment, fine management of forestry resources, and ecological simulation, the construction of a high-fidelity three-dimensional tree model is a basic and key technology. An existing method for generating a high-fidelity tree mesh model from multi-view images mainly relies on laser scanning or multi-view image reconstruction. Among them, the method based on multi-view images has attracted widespread attention due to its low device cost and flexible data acquisition. The general process is to generate a three-dimensional point cloud of the target tree from a series of two-dimensional images through Structure from Motion (SfM) and other technologies. Then, technical personnel will process the three-dimensional point cloud using various algorithms, such as through point cloud segmentation, skeleton extraction, and surface reconstruction steps, to finally generate a complete three-dimensional mesh model containing the trunk and crown of the tree to meet the visualization and analysis requirements in different scenarios.

[0003] However, when generating a tree model using the existing image-based method, due to the complex geometric shape and high self-occlusion characteristics of the tree itself, the generated three-dimensional point cloud data often has problems such as noise, sparsity, and incompleteness. On the one hand, this makes it difficult for traditional algorithms to accurately distinguish between the trunk and branches when extracting the trunk skeleton, and it is easy to produce topological structure errors or discontinuous skeletons due to data loss, directly affecting the geometric accuracy of the trunk model. On the other hand, for the crown part with complex structure and severe data loss, it is almost impossible to reconstruct the internal fine branch structure completely relying on data-driven methods, resulting in a distorted shape and missing details of the generated crown model, causing the generated tree model to have low fidelity. SUMMARY

[0004] The method for generating a high-fidelity tree mesh model from multi-view images and related equipment provided by the embodiments of the present application can improve the fidelity of the generated tree model.

[0005] To achieve the above-mentioned purpose, the first aspect of the embodiments of the present application proposes a method for generating a high-fidelity tree mesh model from multi-view images, which comprises:

[0006] Obtaining a plurality of three-dimensional Gaussian points of a target tree, and extracting trunk points from the plurality of three-dimensional Gaussian points to obtain a plurality of trunk Gaussian points;

[0007] cluster the plurality of trunk Gaussian points based on a shortest path length between each of the trunk Gaussian points and the root node, to obtain a plurality of trunk clusters, each of the trunk clusters comprising a plurality of the trunk Gaussian points;

[0008] calculate a centroid of each of the trunk clusters, and perform a refined connection process based on a plurality of the centroids, to obtain a tree skeleton;

[0009] generate a tree trunk model based on the plurality of three-dimensional Gaussian points and the tree skeleton;

[0010] perform a tree crown screening on the plurality of three-dimensional Gaussian points based on a connection direction between each of the three-dimensional Gaussian points and the tree trunk model, to obtain a plurality of tree crown points, and generate a tree model of the target tree based on the plurality of tree crown points and the tree trunk model.

[0011] In some embodiments, the trunk point extraction on the plurality of three-dimensional Gaussian points to obtain a plurality of trunk Gaussian points comprises:

[0012] determine a plurality of adjacent Gaussian points corresponding to each of the three-dimensional Gaussian points;

[0013] obtain an adjacent point difference value based on a difference between the adjacent Gaussian points and a centroid of the plurality of adjacent Gaussian points, and obtain a covariance matrix of the three-dimensional Gaussian point based on an average value of all the adjacent point difference values;

[0014] perform an eigenvalue decomposition on the covariance matrix to obtain a plurality of eigenvalues, and calculate a non-scattering degree of each of the three-dimensional Gaussian points based on the plurality of eigenvalues;

[0015] select the trunk Gaussian points from the plurality of three-dimensional Gaussian points based on the non-scattering degrees of the three-dimensional Gaussian points.

[0016] In some embodiments, the selection of the trunk Gaussian points from the plurality of three-dimensional Gaussian points based on the non-scattering degrees of the three-dimensional Gaussian points comprises:

[0017] select the three-dimensional Gaussian points with a non-scattering degree greater than a preset scattering degree from the plurality of three-dimensional Gaussian points as initial trunk Gaussian points;

[0018] perform a clustering process on the plurality of initial trunk points based on an Euclidean distance between each of the initial trunk Gaussian points, to obtain a plurality of initial trunk point clusters;

[0019] select an initial trunk point cluster with a cluster point quantity greater than a preset cluster point quantity from the plurality of initial trunk point clusters as a target trunk point cluster, and take the plurality of initial trunk Gaussian points in the target trunk point cluster as the trunk Gaussian points.

[0020] In some embodiments, the clustering of the plurality of trunk Gaussian points based on the shortest path length between each of the trunk Gaussian points and the root node comprises:

[0021] generating an undirected weighted graph based on the plurality of trunk Gaussian points, and calculating the shortest path length between each of the trunk Gaussian points and the root node based on a shortest path fast algorithm;

[0022] the clustering of the plurality of trunk Gaussian points based on the shortest path length between each of the trunk Gaussian points and the root node comprises:

[0023] In some embodiments, the refinement connection processing based on the plurality of centroids comprises:

[0024] connecting the plurality of centroids to obtain an initial tree skeleton of the target tree, the initial tree skeleton comprising a plurality of vertices, each two adjacent vertices forming a skeleton segment;

[0025] calculating a vertex weight corresponding to each of the vertices based on a length of a sub-tree connected to the vertex;

[0026] selecting a refinement vertex from the plurality of vertices based on the vertex weight and a distance between the skeleton segments;

[0027] obtaining the tree skeleton based on the plurality of refinement vertices.

[0028] In some embodiments, the generating of the tree trunk model based on the plurality of three-dimensional Gaussian points and the tree skeleton comprises:

[0029] generating a cylindrical trunk for each of the trunk clusters in the tree skeleton;

[0030] obtaining a distance weight of each three-dimensional Gaussian point based on a ratio between a straight-line distance of the three-dimensional Gaussian point from the cylindrical trunk and a maximum straight-line distance;

[0031] generating a distance sum objective function based on an accumulation of products of the distance weight and the straight-line distance corresponding to all the three-dimensional Gaussian points;

[0032] solving the distance sum objective function based on a least square method to obtain an optimal cylindrical radius, an optimal end point and an optimal direction vector corresponding to the trunk cluster, and updating the cylindrical trunk based on the optimal cylindrical radius, the optimal end point and the optimal direction vector;

[0033] generating the tree trunk model based on all the updated cylindrical trunks.

[0034] In some embodiments, the tree crown screening on the plurality of three-dimensional Gaussian points based on the connection direction between each of the three-dimensional Gaussian points and the tree trunk model obtains a plurality of tree crown points, including:

[0035] For each branch skeleton point in the tree trunk model, based on the branch skeleton point, the parent node of the branch skeleton point, and the branch child node of the branch skeleton point, a branch angle of each branch skeleton point is calculated;

[0036] Based on the numerical relationship between the branch angle and the preset branch threshold value, a branch angle interval is obtained;

[0037] Based on the connection direction between each of the three-dimensional Gaussian points and each of the branch skeleton points, a growth direction of each of the three-dimensional Gaussian points is calculated;

[0038] From the plurality of three-dimensional Gaussian points, the three-dimensional Gaussian points whose corresponding angles of the growth direction are within the branch angle interval are selected as the tree crown points.

[0039] In some embodiments, the obtaining of the plurality of three-dimensional Gaussian points of the target tree includes:

[0040] Obtaining a plurality of multi-view images of a target scene, the target scene including the target tree;

[0041] Using three-dimensional point cloud technology, three-dimensional Gaussian extraction is performed on the plurality of multi-view images to obtain a plurality of scene Gaussian points;

[0042] Based on the low-dimensional features of each of the scene Gaussian points, from the plurality of scene Gaussian points, the scene Gaussian points whose low-dimensional features are consistent with tree features are selected as the three-dimensional Gaussian points.

[0043] To achieve the above-mentioned purpose, a second aspect of the embodiments of the present application proposes an electronic device, the electronic device includes a memory and a processor, the memory stores a computer program, and the processor implements the method for generating a high-fidelity tree grid model from multi-view images as described in the first aspect when executing the computer program.

[0044] To achieve the above-mentioned purpose, a third aspect of the embodiments of the present application proposes a storage medium, the storage medium is a computer readable storage medium, the storage medium stores a computer program, and the computer program is executed by a processor to implement the method for generating a high-fidelity tree grid model from multi-view images as described in the first aspect.

[0045] This application proposes a method and related apparatus for generating a high-fidelity tree mesh model from a multi-view image. The method includes: first, acquiring multiple three-dimensional Gaussian points of the target tree and extracting trunk points from these points to obtain multiple trunk Gaussian points; then, clustering these trunk points based on the shortest path length between each trunk Gaussian point and the root node to obtain multiple trunk clusters, each trunk cluster including multiple trunk Gaussian points; next, calculating the centroid of each trunk cluster and refining the connections based on these centroids to obtain a tree skeleton; then, generating a tree trunk model based on the multiple three-dimensional Gaussian points and the tree skeleton; finally, filtering the multiple three-dimensional Gaussian points for canopy points based on the connection direction between each three-dimensional Gaussian point and the tree trunk model to obtain multiple canopy points, and generating a tree model of the target tree based on the multiple canopy points and the tree trunk model. This application's embodiments extract trunk points from 3D Gaussian points and utilize a clustering algorithm based on the shortest path length and skeleton refinement processing to overcome noise and breakpoints in the original data, generating a tree trunk skeleton with correct topological structure and accurate geometric shape. This effectively solves the technical problem of trunk model distortion caused by data quality issues in existing technologies. Furthermore, for the severely missing crown portion, a screening strategy based on connection direction is adopted. This strategy implicitly contains the morphological laws of plant growth and can intelligently screen crown points that conform to natural growth patterns from sparse point clouds. This effectively compensates for the deficiency of pure data-driven methods in reconstructing fine branch structures, resulting in a final complete tree model with a clear and accurate trunk structure, a full crown shape, and realistic details, thus significantly improving the overall realism.

[0046] Other features and advantages of this application will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the application. The objectives and other advantages of this application may be realized and obtained by means of the structures particularly pointed out in the description, claims and drawings. Attached Figure Description

[0047] Figure 1 This is a flowchart of a method for generating a high-fidelity tree mesh model from a multi-view image, provided in an embodiment of this application.

[0048] Figure 2 yes Figure 1 The flowchart for step 101.

[0049] Figure 3 This is a schematic diagram of a three-dimensional tree Gaussian point segmentation process provided in another embodiment of this application.

[0050] Figure 4 yes Figure 1 Another flowchart for step 101.

[0051] Figure 5 Figure 4 is a flowchart of step 404 in Figure 3. Figure 4

[0052] Figure 6 Figure 5 is a schematic diagram of the extraction of a main stem Gaussian point according to another embodiment of the present application.

[0053] Figure 7 Figure 1 Figure 6 is a flowchart of step 102 in Figure 3.

[0054] Figure 8 Figure 1 Figure 7 is a flowchart of step 103 in Figure 3.

[0055] Figure 9 Figure 8 is a schematic diagram of the refinement of a main skeleton according to another embodiment of the present application.

[0056] Figure 10 Figure 9 is a schematic diagram of the generation and refinement of a main skeleton according to another embodiment of the present application.

[0057] Figure 11 Figure 1 Figure 10 is a flowchart of step 104 in Figure 3.

[0058] Figure 12 Figure 11 is a schematic diagram of the fitting of a cylinder to a stem according to an embodiment of the present application.

[0059] Figure 13 Figure 12 is a schematic diagram of the generation process of a tree stem mesh model according to an embodiment of the present application.

[0060] Figure 14 Figure 1 Figure 13 is a flowchart of step 105 in Figure 3.

[0061] Figure 15 Figure 14 is a schematic diagram of a bifurcation angle according to an embodiment of the present application.

[0062] Figure 16 Figure 15 is a schematic diagram of the distribution of bifurcation angles in a tree skeleton according to an embodiment of the present application.

[0063] Figure 17 Figure 16 is a schematic diagram of the generation of a canopy that fuses morphological self-similarity and spatial competition according to an embodiment of the present application.

[0064] Figure 18 Figure 17 is a schematic diagram of the generation of a tree model according to an embodiment of the present application.

[0065] Figure 19 Figure 18 is a schematic diagram of a simulation result of a method for generating a high-fidelity tree mesh model from multi-view images according to an embodiment of the present application.​​​​​

[0066] Figure 20 is a first tree model generated by the first embodiment of the present application.

[0067] Figure 21 is a first simulation data schematic table provided by the first embodiment of the present application.

[0068] Figure 22 is a second tree model generated by the second embodiment of the present application.

[0069] Figure 23 is a second simulation data schematic table provided by the second embodiment of the present application.

[0070] Figure 24 is a schematic diagram of three-dimensional Gaussian point segmentation of multiple trees provided by the third embodiment of the present application.

[0071] Figure 25 is a comparative simulation result schematic diagram of different search radii provided by the fourth embodiment of the present application.

[0072] Figure 26 is a comparative simulation result schematic diagram with or without self-similarity angle constraints provided by the fifth embodiment of the present application.

[0073] Figure 27 is a hardware structure schematic diagram of an electronic device provided by the sixth embodiment of the present application. DETAILED DESCRIPTION

[0074] In order to make the objects, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not intended to limit the present application.

[0075] It should be noted that although the functional modules are divided in the device schematic diagram, and the logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in a manner different from the module division in the device or the order in the flowchart.

[0076] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the present application belongs. The terms used herein are only for the purpose of describing the embodiments of the present application and are not intended to limit the present application.

[0077] In the fields of digital twin city, virtual geographic environment, fine management of forestry resources and ecological simulation, the construction of high-fidelity three-dimensional tree model is a basic and key technology. A method of generating a high-fidelity tree mesh model from multi-view images mainly relies on laser scanning or multi-view image reconstruction. Among them, the method based on multi-view images is widely concerned because of its low equipment cost and flexible data acquisition. Its general process is to generate a three-dimensional point cloud of the target tree from a series of two-dimensional images through Structure from Motion (SfM) and other technologies. Then, technicians will use various algorithms to process the three-dimensional point cloud, such as through point cloud segmentation, skeleton extraction and surface reconstruction, etc. Finally, a complete three-dimensional mesh model containing the trunk and crown of the tree is generated to meet the visualization and analysis requirements in different scenarios.

[0078] However, when generating a tree model using the existing image-based method, due to the complex geometric shape and high self-occlusion characteristics of the tree itself, the generated three-dimensional point cloud data often has problems such as noise, sparsity and incompleteness. On the one hand, this makes it difficult for traditional algorithms to accurately distinguish between the trunk and branches when extracting the trunk skeleton, and the topology structure error or discontinuous skeleton is easily caused by data loss, which directly affects the geometric accuracy of the trunk model. On the other hand, for the crown part with complex structure and serious data loss, it is almost impossible to reconstruct the internal fine branch structure completely relying on data-driven methods, resulting in a generated crown model with distorted shape and missing details, which leads to a situation that the generated tree model is low in reality.

[0079] In order to improve the reality of the generated tree model, the trunk points are extracted from the three-dimensional Gaussian points, and the clustering algorithm based on the shortest path length and the skeleton refinement process are used to overcome the noise and breakpoints in the original data, generate a tree trunk skeleton with correct topology structure and accurate geometric shape, effectively solve the technical problem that the trunk model is distorted due to data quality problems in the prior art. For the crown part with serious data loss, a filtering strategy based on connection direction is adopted, which implicitly contains the morphological laws of plant growth, can intelligently filter out the crown points that meet the natural growth pattern from the sparse point cloud, effectively make up for the defect that the pure data-driven method cannot reconstruct the fine branch structure, so that the finally generated complete tree model not only has clear and accurate trunk structure, but also has full and realistic crown shape, thereby significantly improving the overall reality.

[0080] A method of generating a high-fidelity tree mesh model from multi-view images and related equipment provided by the present application will be further described below. First, a method of generating a high-fidelity tree mesh model from multi-view images in an embodiment of the present application is specifically described. Referring to Figure 1An optional flowchart of a method for generating a high-fidelity tree mesh model from multi-view images according to an embodiment of the present application, Figure 1 The method in the above embodiment can include, but is not limited to, steps 101-105. It should be understood that the order of steps 101-105 in the above embodiment is not limited, and the order of steps can be adjusted, or some steps can be reduced or added according to actual needs. The method for generating a high-fidelity tree mesh model from multi-view images provided by the present application can be applied to any server or intelligent terminal with processing and computing capabilities. Figure 1

[0081] Step 101: Obtain a plurality of three-dimensional Gaussian points of the target tree, and perform trunk point extraction on the plurality of three-dimensional Gaussian points to obtain a plurality of trunk Gaussian points.

[0082] The step 101 is described in detail below.

[0083] In some embodiments, in response to a request for generating a tree model of a target tree, data acquisition and preliminary segmentation are first performed. Specifically, when executed, a plurality of three-dimensional Gaussian points of the target tree are first reconstructed from multi-view images. The three-dimensional Gaussian point is a more abundant three-dimensional scene representation than the traditional three-dimensional point. It not only contains position information, but also describes the shape, size and opacity of the point through parameters such as covariance matrix, which can more finely express the geometric and texture features of the target tree. Subsequently, in order to separate the clear structure of the trunk from the complex morphology of the branches and leaves, the processor will perform trunk point extraction on all three-dimensional Gaussian points. This extraction process usually judges based on the geometric properties (such as linearity or non-scattering) of each Gaussian point, so as to select a plurality of trunk Gaussian points that best represent the trunk structure of the tree, thereby laying a high-quality data foundation for subsequent skeleton construction.

[0084] First, how to obtain a plurality of three-dimensional Gaussian points of the target tree is described below.

[0085] Referring to Figure 2 , the plurality of three-dimensional Gaussian points of the target tree are obtained, including steps 201-203.

[0086] Step 201: Obtain multi-view images of a target scene.

[0087] Step 202: Use three-dimensional point cloud technology to perform three-dimensional Gaussian extraction on the multi-view images to obtain a plurality of scene Gaussian points.

[0088] Step 203: Based on the low-dimensional features of each scene Gaussian point, select the scene Gaussian points consistent with the low-dimensional features and tree features from the plurality of scene Gaussian points as three-dimensional Gaussian points.

[0089] Steps 201-203 are described in detail below.​

[0090] In some embodiments, a novel deep learning-based Segment Any 3D Gaussians (SAGA) segmentation framework is used to implement multi-scale 3D Gaussian segmentation, referring to Figure 3 is a schematic diagram of a three-dimensional tree Gaussian point segmentation process provided by an embodiment of the present application. First, a set of multi-view pictures of a target scene containing trees is input, then a related three-dimensional point cloud technology such as a Structure from Motion (SfM) method is used to estimate a sparse point cloud from a set of images, and then an adaptive optimization density of three-dimensional Gaussians is used to compactly represent the fine structure of a three-dimensional scene.

[0091] For the pre-trained three-dimensional Gaussian model and the training set, the encoder of the Segment Anything Model (SAM) is used to extract the two-dimensional features and the corresponding multi-scale masks of each image, and then the low-dimensional features of each three-dimensional Gaussian are trained through the loss of mask correspondence and feature Figure 1 correspondence, thereby obtaining cross-multi-view multi-scale segmentation information. In the segmentation stage, a set of Queries is generated according to the input prompt and the box selection, and then these Queries are matched with the learned multi-scale features, thereby segmenting the three-dimensional Gaussian points of the corresponding three-dimensional trees. Figure 1

[0092] Based on the above description of the extraction process of the three-dimensional Gaussian points of trees, in actual application, first, multi-view images of a target scene are acquired, the multi-view images being a series of two-dimensional pictures taken from different angles and different positions of the same scene containing target trees. This acquisition method aims to capture the shape, texture and spatial relationship of trees in all directions, providing sufficient and dead-angle-free visual information for subsequent three-dimensional reconstruction. For example, this step can be completed by surrounding flight with a drone or walking around the trees with a handheld device, ensuring the completeness and diversity of the data.

[0093] ​Next, the acquired multi-view images are processed using a three-dimensional point cloud technology (such as a Structure from Motion (SfM) method) to perform three-dimensional Gaussian extraction, thereby obtaining a plurality of scene Gaussian points representing the entire scene including the target tree and the background, ground, etc. The three-dimensional Gaussian extraction is a reconstruction technology, and the scene Gaussian points generated thereby not only record the spatial position, but also describe the three-dimensional shape (such as ellipsoidal shape), color and opacity of the point through parameters such as covariance matrix, and can represent the scene more delicately and realistically than the traditional point cloud.

[0094] Then, based on the low-dimensional features of each scene Gaussian point, the plurality of scene Gaussian points are screened. The low-dimensional features are a compact data representation learned by a deep learning model, which can highly summarize and distinguish the semantic information of objects, for example, it can capture the essential attributes such as the texture of the tree bark, the color and shape of the leaves, etc. The processor compares the low-dimensional features of each scene Gaussian point with the pre-defined or learned standard tree features, and only selects those scene Gaussian points with consistent features. In this way, automatic and high-precision segmentation of the tree can be achieved, and the final output three-dimensional Gaussian points are high-quality three-dimensional data that only belong to the target tree.

[0095] As shown in FIG. 1, Figure 3 The process includes two parallel processing paths: the lower path generates a three-dimensional Gaussian rendering result of the entire scene including the background through Structure from Motion (SfM) and three-dimensional Gaussian splatting technology (3D Gaussian Splatting); the upper path performs accurate two-dimensional segmentation on one of the images using an advanced segmentation model (SAM). The key is that the semantic information of the two-dimensional segmentation is "distilled" into the three-dimensional Gaussian representation through a "feature consistency" constraint, so that the final output "segmented 3D Gaussian points" can be accurately stripped from the complex scene, thereby providing pure input data for subsequent processing.

[0096] By performing the above steps 201 to 203, the three-dimensional Gaussian points with stronger expression ability are used as the data basis, the fidelity of the subsequent processing is improved, and through an automatic segmentation method based on low-dimensional features, the target tree can be intelligently and accurately stripped from the complex background environment, avoiding the interference of background objects on tree modeling in the traditional method, and high-purity input data can be obtained without a large amount of manual preprocessing, thereby laying a solid and reliable foundation for subsequent accurate trunk skeleton extraction and high-fidelity model generation, thereby improving the automation degree of the entire generation process and the accuracy of the final model.

[0097] Due to the limited scanning resolution, high self-occlusion, and complex tree geometry, it is very challenging to accurately reconstruct the fine branches from the point cloud. From the human visual perception, the main branches of a tree are the focus of modeling. Therefore, the main branches (excluding leaves and fine branches inside the canopy) are first separated from the Gaussian point cloud of the tree. In the tree point cloud, the main branches usually exhibit non-scattered geometric features, including linearity and planarity, while leaves and fine branches exhibit more scattered features. In addition, the main branch points usually have a lower curvature because they are mostly line segments or smooth curves, while the points of fine branches and leaves exhibit a higher local curvature. Here, the embodiment uses a method that combines the non-scattered degree and curvature features to extract the main branches of the tree. How to extract the main branch points from the plurality of three-dimensional Gaussian points to obtain a plurality of main branch Gaussian points will be described in detail below.

[0098] Referring to Figure 4 The main branch points are extracted from the plurality of three-dimensional Gaussian points to obtain a plurality of main branch Gaussian points, including the following steps 401 to 404.

[0099] Step 401: Determine a plurality of adjacent Gaussian points corresponding to each three-dimensional Gaussian point.

[0100] Step 402: Obtain an adjacent point difference value based on the difference between the adjacent Gaussian points and the centroid of the plurality of adjacent Gaussian points, and obtain a covariance matrix of the three-dimensional Gaussian point based on the average value of all adjacent point difference values.

[0101] Step 403: Perform eigenvalue decomposition on the covariance matrix to obtain a plurality of eigenvalues, and calculate the non-scattered degree of each three-dimensional Gaussian point based on the plurality of eigenvalues.

[0102] Step 404: Select the main branch Gaussian point from the plurality of three-dimensional Gaussian points based on the non-scattered degree of the three-dimensional Gaussian point.

[0103] The steps 401 to 404 will be described in detail below.

[0104] In some embodiments, first, the orthogonal vector calculation is performed, and for each three-dimensional Gaussian point, a neighborhood search is performed, that is, a plurality of adjacent Gaussian points in the space around it are determined. The adjacent Gaussian points refer to the set of points closest to the target three-dimensional Gaussian point in three-dimensional space, which can usually be obtained by setting a fixed search radius or finding the nearest k points (i.e., K-neighbor algorithm, and k is generally 45). The purpose of this is to construct a local neighborhood for each point, and by analyzing the distribution of the point set in this neighborhood, the macroscopic geometric features of the position of the point can be inferred, such as whether it is located on a smooth surface or in a chaotic area.

[0105] After that, for each three-dimensional Gaussian point Calculate the geometric centers, i.e., the centroids, of its multiple adjacent Gaussian points. As shown in the following formula (1).

[0106] (1)

[0107] in, Three-dimensional Gaussian points The The processor then calculates the position difference of each adjacent Gaussian point relative to the centroid. This process yields multiple neighboring point differences, which describe the distribution of the point set within the neighborhood relative to its center. Finally, based on the statistical average of all these neighboring point differences, the processor constructs the covariance matrix corresponding to the 3D Gaussian point. As shown in the following formula (2).

[0108] (2)

[0109] The covariance matrix describes the dispersion of points in the local neighborhood, which is crucial for calculating the normal vector.

[0110] Then, a more intuitive geometric metric is extracted from the covariance matrix. That is, for each three-dimensional Gaussian point... The covariance matrix (2) is decomposed into eigenvalues, which yields multiple eigenvalues, namely λ1, λ2, and λ3, arranged in the order λ1>λ2>λ3. These eigenvalues ​​quantify the degree of dispersion or "stretching" of the local point set in three mutually perpendicular principal directions.

[0111] Based on these eigenvalues, the nonscattering degree of each three-dimensional Gaussian point will be further calculated. As shown in the following formula (3).

[0112] (3)

[0113] The nonscattering degree is a derived index whose value reflects the linearity or planarity of the local point set distribution; a high nonscattering degree value means that the point set is distributed in a thin line or a flat sheet, while a low value means that the point set is distributed in a clumped or disordered scattering distribution.

[0114] Finally, the final screening will be completed based on the quantitative indicators calculated in the previous steps. This involves the non-scattering degree of each three-dimensional Gaussian point. Set a discrimination threshold, and then base the nonscattering degree on the judgment. The three-dimensional Gaussian points are screened to obtain Gaussian points that indicate that the local area where the point is located has obvious linear or columnar structure, that is, that is, highly consistent with the geometric features of the tree trunk, and are used as trunk Gaussian points, as described below.

[0115] Reference Figure 5 Selecting the main Gaussian point from multiple three-dimensional Gaussian points based on the nonscattering degree of the three-dimensional Gaussian point includes the following steps 501 to 503.

[0116] Step 501: Select three-dimensional Gaussian points with non-scattering degree greater than preset scattering degree from multiple three-dimensional Gaussian points as the initial backbone Gaussian points.

[0117] Step 502: Based on the Euclidean distance between each initial backbone Gaussian point, perform clustering on multiple initial backbone points to obtain multiple initial backbone point clusters.

[0118] Step 503: Select an initial backbone cluster with a number of cluster points greater than the preset number of cluster points from multiple initial backbone clusters as the target backbone cluster, and use multiple initial backbone Gaussian points in the target backbone cluster as backbone Gaussian points.

[0119] Steps 501 to 503 are described in detail below.

[0120] In some embodiments, nonscattering degree is first selected from a plurality of three-dimensional Gaussian points. Three-dimensional Gaussian points with a scattering degree greater than a preset threshold (i.e., 0.9) are selected as initial trunk Gaussian points. This nonscattering degree measures the linearity of the point set within its neighborhood; high nonscattering values ​​typically correspond to columnar structures with continuous surfaces, such as tree trunks or thick branches. By setting a preset scattering degree as a threshold, most points that conform to the trunk's morphological characteristics can be effectively preliminarily selected, forming a candidate point set, i.e., the initial trunk Gaussian points.

[0121] Next, the obtained candidate point set will undergo spatial structuring. At this point, based on the Euclidean distance between each initial backbone Gaussian point, multiple initial backbone points are clustered to obtain multiple initial backbone point clusters. This Euclidean distance is a standard for measuring the straight-line distance between points in three-dimensional space, and the clustering process automatically groups spatially close points into one class based on this distance. Thus, the discrete, unorganized initial backbone Gaussian points are aggregated into one or more physically independent point clusters, i.e., initial backbone point clusters, based on their spatial proximity.

[0122] Then, from multiple initial trunk point clusters, the initial trunk point cluster with a number of cluster points greater than the preset number of cluster points (i.e., Tn(50)) is selected as the target trunk point cluster, and multiple initial trunk Gaussian points in the target trunk point cluster are used as trunk Gaussian points. Since the real tree trunk will form a large continuous set of points, while the points generated by noise or irrelevant objects usually form small isolated clusters, by setting a lower limit for the preset number of cluster points, these meaningless small clusters can be effectively filtered out, and only the large target trunk point clusters that can represent the trunk can be retained. Finally, the points in the clusters are confirmed to be high-purity trunk Gaussian points.

[0123] By executing steps 501 to 503 above, the initial screening based on nonscattering degree can quickly identify candidate points with trunk geometric attributes from massive amounts of raw data, achieving accurate positioning based on intrinsic features. Then, through subsequent clustering processing and secondary screening based on the number of cluster points, it is possible to effectively eliminate point sets (i.e., small clusters) that, although their local geometric features are similar to the trunk, are actually isolated noise or small non-trunk structures. By using a progressive refining strategy from "point attributes" to "cluster size", the purity and structural integrity of the final trunk Gaussian points can be greatly improved, providing a crucial, clean, and reliable data source for the subsequent accurate generation of tree skeletons and models.

[0124] Reference Figure 6 This is a schematic diagram of a backbone Gaussian point extraction method provided in an embodiment of this application. Figure 6 The figures illustrate the key data formats involved in the trunk point extraction process. Figure (a) shows the initial 3D Gaussian points representing the entire tree, including the trunk, branches, and leaves. Figure (b) shows the 3D Gaussian points with realistic colors for visual visualization. Figure (c) shows the final "trunk Gaussian points" obtained after performing geometric analysis and filtering based on nonscattering. It can be seen that the scattered leaf parts have been effectively removed, retaining only the set of points with clear linear features that constitute the main structure of the tree, laying a solid foundation for subsequent accurate skeleton generation. Figure 3 Most of the main trunk points are well separated. Although a few main trunk points may occasionally be incorrectly separated into other points within the canopy, these errors do not affect the generation of a high-quality 3D model of the entire tree. This is because subsequent canopy synthesis combines morphological self-similarity and spatial competition to generate the tree mesh model.

[0125] By performing steps 401 to 404 above, and through rigorous local geometric analysis, the morphological differences of different parts of the tree are quantified into a clear non-scattering index. This can robustly handle noise and density inhomogeneity in point clouds, accurately identify points with continuous surfaces that constitute the main structure of the tree, and effectively filter out leaf points with complex shapes and scattered distribution. This results in a very pure and accurate set of Gaussian points for the trunk, laying a solid and reliable data foundation for the subsequent accurate extraction of the tree skeleton and high-fidelity reconstruction of the trunk model.

[0126] Step 102: Based on the shortest path length between each backbone Gaussian point and the root node, cluster multiple backbone Gaussian points to obtain multiple backbone clusters.

[0127] Step 102 is described in detail below.

[0128] This embodiment proposes a skeleton generation and refinement method based on local clustering and weight allocation. The method first constructs a graph from the extracted backbone points, then calculates the shortest path using a fast shortest path algorithm, and finally performs local clustering based on path length and neighboring graph points. The initial backbone skeleton is obtained by connecting each cluster center. Subsequently, a method combining vertex weights and the Douglas-Peucker algorithm is used to eliminate unreasonable and relatively minor points, thereby refining the skeleton.

[0129] Based on this, in some embodiments, to establish the topological connections between the trunk Gaussian points, the obtained multiple trunk Gaussian points are first abstracted into an undirected graph, and a point located at the bottom of the tree is designated as the root node. This root node is the Gaussian point with the lowest spatial coordinates (i.e., the smallest ordinate) among the multiple trunk Gaussian points. Next, the shortest path length between each trunk Gaussian point in the graph and the root node is calculated. Here, the shortest path length is the geodesic distance connecting points along the trunk surface, which accurately reflects the relative height or position of each point on the trunk. Finally, based on the shortest path length, the processor clusters the multiple trunk Gaussian points, grouping points with similar path lengths into one category, forming multiple trunk clusters. Each trunk cluster essentially represents a cross-sectional set of points on the trunk at a certain height, thereby organizing the disordered point cloud data into an ordered cluster of points distributed along the trunk axis, as described below.

[0130] Reference Figure 7 Based on the shortest path length between each backbone Gaussian point and the root node, multiple backbone Gaussian points are clustered to obtain multiple backbone clusters, including the following steps 701 to 702.

[0131] Step 701: Generate an undirected weighted graph based on multiple backbone Gaussian points, and calculate the shortest path length between each backbone Gaussian point and the root node based on the shortest path fast algorithm.

[0132] Step 702: Based on the shortest path length between each backbone Gaussian point and the root node, cluster multiple backbone Gaussian points to obtain multiple backbone clusters.

[0133] Steps 701 to 702 are described in detail below.

[0134] In some embodiments, an undirected weighted graph G=(V,E) is first generated based on multiple backbone Gaussian points, where V is the set of points, i.e., each backbone Gaussian point is considered a node, and spatially adjacent nodes are connected by edges, and E represents the edge between points, with the weight of the edge set to the Euclidean distance between the two connected points. This representation is more memory-efficient than adjacency matrices, especially when dealing with large point clouds. The sparsity of the adjacency list speeds up traversal by quickly skipping point pairs without edges. The size of the local neighborhood radius (r) is determined by the image resolution and point cloud quality, with a default value of 0.2 meters.

[0135] Subsequently, after designating a node located at the base of the tree as the root node, the processor efficiently calculates the shortest path length between each trunk Gaussian point and the root node along the graph's edges, based on the shortest path fast algorithm. Here, the "shortest path fast algorithm" is an efficient graph theory algorithm, and the calculated "shortest path length" represents the geodesic distance from each point along the trunk surface to the root, rather than a simple linear distance in space.

[0136] In this embodiment, unlike the original Dijkstra's algorithm which has a time complexity of O(V^2) when using an adjacency matrix, the Shortest Path Faster Algorithm (SPFA) is used to dynamically manage relaxation points. SPFA optimizes the relaxation order of nodes through the first-in-first-out property of a queue, avoiding unnecessary repetitive operations. Its worst-case time complexity is O(VE). The specific steps for calculating the shortest path length between each trunk Gaussian point and the root node using the Shortest Path Faster Algorithm are as follows:

[0137] 1) Initialization: Select a starting node s0 from multiple main Gaussian points and add it to the queue, setting its distance to 0. Set the distance of all other nodes to +∞. Use a priority queue (e.g., min-heap) to store nodes, ensuring that the node with the smallest distance is popped first, thus achieving an efficient relaxation process.

[0138] 2) Loop iteration: Node sj is popped from the queue, and a relaxation operation is performed on all adjacent nodes sk. Update the distance of node sk according to the distance of node sj. If the relaxation condition is met: the sum of the shortest path length of node sj and the weight between node sj and node sk is less than the shortest path length of node sk, i.e., distance[sj] + weight(sj, sk) < distance[sk], then update the value of distance[sk] and add sk to the queue.

[0139] 3) Optimize the queue: To efficiently obtain the node with the minimum distance, a priority queue is used as the data structure. Each operation allows the minimum node to be popped in O(logV) time.

[0140] 4) Termination condition: When the queue is empty, the shortest paths of all nodes have been calculated, and all nodes with a distance of +∞ are considered unreachable.

[0141] Next, based on the shortest path lengths between each backbone Gaussian point and the root node, multiple backbone Gaussian points are clustered. The core of this clustering method is to group points with similar shortest path length values into the same set. Since this length value effectively represents the relative position of each point along the trunk axis, this operation is actually equivalent to effectively dividing the unordered point cloud data according to its height on the trunk. Finally, this step will obtain multiple backbone clusters, and each backbone cluster contains a set of points within a specific height interval on the trunk, thus organizing the originally messy point cloud into multiple ordered point clusters distributed along the backbone axis.

[0142] By performing the above steps 701 to step 702, a key metric of the shortest path length along the graph connection is introduced. This metric can accurately reflect the true manifold distance of each point on the trunk surface, thus赋予 an inherent order along the backbone axis to the discrete point cloud, making the multiple backbone clusters finally generated, like an ordered "horizontal slice" of the trunk, efficiently structure and serialize the originally chaotic point cloud data, providing a logically clear and correctly arranged input for accurately calculating the centroid of each cluster and generating a continuous and smooth tree skeleton, greatly improving the accuracy and robustness of skeleton extraction.

[0143] Step 103: Calculate the centroid of each backbone cluster and perform a refinement connection process based on multiple centroids to obtain the tree skeleton.

[0144] The following provides a detailed description of step 103.

[0145] In some embodiments, for each obtained backbone cluster Bin k calculate its centroid respectively. Assume the backbone cluster Bin kIt contains N points, and the coordinates of these points are p. i = (x i y i , z i ), where i = 1, 2, ... to N k Main cluster Bin k The center of mass C k The calculation is shown in the following formula (4).

[0146] (4)

[0147] By connecting all centroids in order of their shortest path lengths within their respective clusters, an initial tree skeleton can be obtained. However, this initial skeleton may contain redundant nodes and uneven transitions. Therefore, further refinement is required, for example, by removing nodes that have little impact on the skeleton's orientation or smoothing connection curves. The final tree skeleton, which accurately and concisely describes the trunk's central orientation and branching structure, is then obtained, as described below.

[0148] Reference Figure 8 The tree skeleton is obtained by refining the connection based on multiple centroids, including the following steps 801 to 804.

[0149] Step 801: Connect multiple centroids to obtain the initial tree skeleton of the target tree.

[0150] Step 802: Calculate the vertex weight corresponding to each vertex based on the length of the subtree connected to each vertex in the initial tree skeleton.

[0151] Step 803: Select refined vertices from multiple vertices based on vertex weights and the distance between skeleton segments.

[0152] Step 804: Obtain the tree skeleton based on multiple refined vertices.

[0153] In step 801 of some embodiments, the extracted main skeleton may contain unreasonable branches when handling missing and noise issues. To address this problem, this embodiment employs vertex weight fusion and the Douglas-Peucker method to eliminate unreasonable and relatively minor points, further optimizing the main skeleton. The core idea is to optimize the main skeleton by combining subtree length weighting (ensuring that small branches on the trunk have smaller weights) with the ability to simplify curves, as implemented by the Douglas-Peucker algorithm.

[0154] Based on this, the calculated centroids are first connected according to the inherent order of their respective clusters to obtain the initial tree skeleton of the target tree. This initial tree skeleton is a linear network consisting of multiple vertices (i.e., centroids) and skeleton segments connecting these vertices, which initially outlines the direction of the tree trunk and main branches. However, since it is generated by connecting all centroids, the skeleton may contain too many redundant vertices, resulting in an uneven shape that requires further optimization.

[0155] Next, each structural point in the skeleton will be assigned an importance metric. This process calculates the vertex weight for each vertex based on the length of the subtrees connected to each vertex in the initial tree skeleton. Here, subtree length refers to the sum of the lengths of all branch skeleton segments below a specific vertex. Therefore, a vertex located at a branching point of the trunk will have a very high weight because it supports a large branching structure; while a vertex located on a regular, unbranched branch will have a relatively low weight. This weight effectively quantifies the importance of each vertex in the overall tree topology, ensuring that smaller branches closer to the trunk receive significantly less weight than the trunk itself, thus helping to eliminate unreasonably thin branches.

[0156] Next, a dual-criteria approach is used to intelligently select vertices to retain. This process applies the Douglas-Peck algorithm (a line segment simplification method) and selects refined vertices from multiple vertices based on vertex weights and the distance between skeleton segments. This is done by removing vertices that are close to the parent and child nodes forming the segments. Specifically, the processor considers two factors: first, the vertex weights calculated in the previous step, with higher-weighted key structural points being prioritized for retention; and second, the distance between a vertex and the line segment connecting it to its adjacent vertices. If a vertex is very close to the line segment formed by its two adjacent vertices, it indicates that the vertex contributes little to describing the skeleton's shape and can be removed. Through this comprehensive judgment, the processor can accurately identify refined vertices that both maintain the topological correctness of the skeleton and concisely express its geometry.

[0157] Finally, based on the selected refined vertices, they are reconnected in their original connection order to obtain the final tree skeleton. Since this skeleton consists only of refined vertices, it eliminates redundant information and noise from the initial skeleton while retaining all key structural nodes. Therefore, its shape is smoother and simpler, and it can more accurately reflect the true topological structure of the tree.

[0158] Reference Figure 9 This is a schematic diagram illustrating a detailed main skeleton provided in an embodiment of this application. For example... Figure 9 As shown in the image, a direct comparison is made between the effects before and after the skeleton refinement process. Figure 9(a) and its partial magnification Figure 9 (c) shows the “initial tree skeleton” obtained by directly connecting the centroids, where unnatural sharp inflections and redundant tiny branches are visible in regions 1, 2, and 3. Figure 9 (b) and its local magnification Figure 9 (d) shows the final "tree skeleton" obtained after "refining connection processing" based on vertex weights. It can be clearly seen that the original redundant vertices have been removed, and the connection of the skeleton has become smoother and more natural, more accurately reflecting the growth pattern of the branches.

[0159] By performing steps 801 to 804 above, the concept of vertex weight is introduced to quantify the structural importance of each vertex. By combining structural importance (vertex weight) with geometric redundancy (distance from skeleton line segments) for vertex selection, the key branching points of the tree can be preserved to the greatest extent while effectively removing redundant nodes in straight or gently curved sections. This ensures that the final generated tree skeleton is not only topologically correct but also geometrically smoother and more concise, providing an ideal, high-quality central axis for the subsequent construction of high-fidelity models.

[0160] Reference Figure 10 This is a schematic diagram illustrating the generation and refinement of a main skeleton according to an embodiment of this application. For example... Figure 10 The diagram illustrates the entire process of generating and optimizing the tree skeleton from the trunk Gaussian point. Figure 10 (a) represents the main Gaussian points of the input; Figure 10 (b) Construct it as an undirected graph and specify the root node; Figure 10 (c) shows the results of clustering points based on the shortest path length, with different colored point sets representing different "backbone clusters"; Figure 10 (d) is the "initial tree skeleton" obtained by connecting the centroids of each cluster; ultimately, Figure 10 (e) shows the smooth, concise final "tree skeleton" obtained after the refinement of the connections.

[0161] Step 104: Generate a tree trunk model based on multiple 3D Gaussian points and the tree skeleton.

[0162] Step 104 is described in detail below.

[0163] In some embodiments, a tree trunk model with a solid volume is constructed based on the generated tree skeleton. In this process, the processor uses the tree skeleton obtained in the previous step as a central axis and references all pre-acquired 3D Gaussian points of the target tree (especially the trunk Gaussian points) as surface constraints. Specifically, for each segment of the skeleton, the processor finds the surrounding 3D Gaussian points and uses these points to fit the radius or cross-sectional shape of that segment of the trunk, for example, by fitting a cylinder. By continuously performing this process along the entire tree skeleton, the linear skeleton is eventually "inflated" into a 3D mesh with an accurate diameter and a smooth surface—the tree trunk model—which precisely reflects the geometry of the trunk, as described below.

[0164] Reference Figure 11 Based on multiple three-dimensional Gaussian points and tree skeleton, a tree trunk model is generated, including the following steps 1101 to 1105.

[0165] Step 1101: For each trunk cluster in the tree skeleton, generate a cylindrical skeleton.

[0166] Step 1102: Based on the ratio between the straight-line distance between each 3D Gaussian point and the cylindrical skeleton and the maximum straight-line distance, obtain the distance weight of each 3D Gaussian point.

[0167] Step 1103: Generate the distance and objective function based on the cumulative value of the product of the distance weights and the straight-line distances corresponding to all three-dimensional Gaussian points.

[0168] Step 1104: Based on the least squares method, solve for the distance and objective function to obtain the optimal cylinder radius, optimal endpoint and optimal direction vector corresponding to the trunk cluster, and update the cylinder backbone based on the optimal cylinder radius, optimal endpoint and optimal direction vector.

[0169] Step 1105: Generate a tree trunk model based on all updated cylindrical skeletons.

[0170] Steps 1101 to 1105 are described in detail below.

[0171] To achieve efficient and high-fidelity 3D generation of tree trunks, a more accurate trunk mesh model is generated based on an optimized and refined skeleton. According to research on tree geometric representation, a cylindrical model is chosen in this embodiment due to its simplicity and robustness, which is superior to more complex methods such as multi-scale curve fitting. Then, an improved Levenberg-Marquardt cylindrical fitting method is applied to determine the radius of each branch. This method approximates the trunk mesh by fitting a cylinder to a Gaussian point cloud, which is a typical nonlinear least squares problem. Figure 6The input includes the position P of the tree trunk, and the parameters to be solved are the axial direction vector a of the cylinder, the radius r, and the positions of the endpoints P. a .

[0172] Based on this, an initial geometric primitive is first constructed for each segment of the tree trunk. That is, for each main trunk cluster in the tree skeleton, a cylindrical skeleton is generated. Here, the cylindrical skeleton can be understood as a cylinder with an initial radius, position, and orientation. It serves as a preliminary approximation or template for the shape of that segment of the tree trunk. Its central axis is similarly aligned with the tree skeleton generated in the previous step, providing a benchmark for subsequent precise radius optimization.

[0173] Given the noise and outliers in the Gaussian point cloud of the tree trunk, ordinary least squares method does not provide a good fit. Therefore, in this embodiment, a distance-weighted nonlinear least squares method is used to fit the trunk radius, where points closer to the cylinder are given greater weight. Based on this, the straight-line distance between each 3D Gaussian point and the central axis of the cylindrical skeleton generated in the previous step is calculated. And based on this straight-line distance, the maximum straight-line distance among all relevant points is found. The distance weight of each three-dimensional Gaussian point is obtained by the ratio between the two values, as shown in the following formula (5).

[0174] (5)

[0175] This distance weight quantifies the contribution of each three-dimensional Gaussian point to determining the final radius of the tree trunk segment. It is designed to reduce the influence of outliers or noise points far from the central axis. The weights of all points are normalized to the range [0, 1].

[0176] Next, a mathematical model will be constructed to measure the goodness of fit of the current cylinder radius. This process will generate a distance and objective function as shown in the following formula (6) based on the cumulative value of the product of the distance weights and the straight-line distances corresponding to all three-dimensional Gaussian points.

[0177] (6)

[0178] The distance and objective function are a single numerical value that integrates the positional and weighting information of all relevant 3D Gaussian points. Its value directly reflects the overall deviation between the current cylindrical skeleton and the actual point cloud data. The algorithm's ultimate goal is to minimize this function value by adjusting the cylinder radius.

[0179] Next, based on the least squares method, the distance and objective function generated in the previous step are solved. Through this solution process, the processor can accurately calculate the axial direction vector *a*, radius *r*, and endpoint positions *P* of the cylinder that minimizes the objective function value. aThis is used as the optimal cylinder radius, optimal endpoints, and optimal direction vector corresponding to the backbone cluster. After obtaining this optimal value, the processor immediately uses it to update the cylinder backbone, changing its radius from the initial value to an accurate value that best matches the surrounding point cloud data.

[0180] Reference Figure 12 This is a schematic diagram of a cylindrical fitting trunk provided in an embodiment of this application. Figure 12 The diagram illustrates how to determine the optimal axial direction vector a, radius r, and endpoint positions P for a skeleton segment (represented by the center dashed line a). a The processor will consider the surrounding three-dimensional Gaussian points (gray points p). i The algorithm then uses least squares optimization to find a cylindrical surface that best fits these points. A magnified view more intuitively shows how the optimal radius *r* on the cross-section of the skeleton is determined by the distribution of surrounding points. This process ensures that the final generated trunk model accurately reflects the true thickness variations of the tree trunk.

[0181] Finally, based on the optimized and updated cylindrical skeletons of all the trunk clusters, they are smoothly connected and combined along the original order of the tree skeleton. Since the radius of each cylindrical skeleton has been independently and data-driven optimized, it can accurately reflect the true thickness of the trunk at that location. Therefore, by combining them all, a complete tree trunk model with a natural shape and accurate thickness variation can be generated.

[0182] By executing steps 1101 to 1105 above, for each segment of the tree trunk, a weighted distance and objective function are constructed and solved to iteratively calculate its optimal cylinder radius, optimal endpoint, and optimal direction vector. This fully utilizes the distribution information of the surrounding three-dimensional Gaussian points and effectively suppresses the interference of noise points with the help of the distance weighting mechanism, ensuring that the calculated radius has extremely high geometric accuracy. The final generated tree trunk model can accurately reproduce the natural thickness variation (i.e., taper) of the real tree trunk from the root to the top, thus achieving a significant improvement in fidelity.

[0183] Reference Figure 13 This is a schematic diagram illustrating the generation process of a tree trunk mesh model provided in an embodiment of this application. Figure 13 The diagram shows the process of generating the final tree trunk model from the tree skeleton. Figure 13 (a) is the input "tree skeleton"; then the radius of each branch is determined based on the improved Levenberg-Marquardt cylinder fitting method; Figure 13 (b) illustrates the process of fitting a cylinder to a local line segment that forms the skeleton; Figure 13(c) shows the complete "tree trunk model" generated by connecting all the optimized cylindrical skeletons. It is a mesh model of the entire trunk generated by using refined continuous skeleton constraints and topological connectivity relationships. Its surface is smooth and the transition between thick and thin lines is natural. Figure 13 (d) is a geometric error analysis diagram, where blue indicates smaller errors, proving that the model generated by this method has a high degree of fit with the original point cloud data.

[0184] Step 105: Based on the connection direction between each 3D Gaussian point and the tree trunk model, perform canopy filtering on multiple 3D Gaussian points to obtain multiple canopy points, and generate a tree model of the target tree based on multiple canopy points and the tree trunk model.

[0185] Step 105 is described in detail below.

[0186] To address the issue of poor fitting of data driven by branch data within the tree canopy, a method combining morphological self-similarity and spatial competition is proposed to generate canopies consistent with tree growth patterns. This is achieved through self-similarity of bifurcation angles based on plant growth biology assumptions, combined with a spatial colonization algorithm. This method allows the generated canopy to naturally integrate with the trunk. By controlling and optimizing the bifurcation angle, canopies that more accurately reflect the morphology of real trees can be generated, rather than solely relying on a parameterized L-system. This method not only ensures the rationality of the canopy morphology but also effectively prevents the formation of anomalous structures.

[0187] Based on this, the task is to reconstruct a realistic tree crown from the existing trunk model, thereby generating a complete tree model. Since the raw crown data is sparse and disordered, the processor employs a knowledge-based and data-driven filtering strategy. It analyzes the connection direction between each original 3D Gaussian point and the generated tree trunk model; this "connection direction" refers to the vector from the nearest point on the trunk model to that 3D Gaussian point. The processor then performs crown filtering, judging the rationality of the connection direction based on prior botanical knowledge (such as the rules of branch growth angles), retaining only those points that conform to natural growth patterns as crown points. Finally, based on these filtered, more rationally distributed crown points and the existing tree trunk model, a crown mesh structure is constructed through surface reconstruction or procedural generation, and merged with the trunk model to obtain the final tree model of the target tree.

[0188] The following section will further describe how to select suitable canopy points.

[0189] Reference Figure 14 Based on the connection direction between each three-dimensional Gaussian point and the tree trunk model, the tree crown is screened for multiple three-dimensional Gaussian points to obtain multiple tree crown points, including the following steps 1401 to 1404.

[0190] Step 1401: For each branch skeleton point in the tree trunk model, calculate the bifurcation angle of each branch skeleton point based on the branch skeleton point, the parent node of the branch skeleton point, and the branch child nodes of the branch skeleton point.

[0191] Step 1402: Based on the numerical relationship between the bifurcation angle and the preset bifurcation threshold, obtain the bifurcation angle range.

[0192] Step 1403: Calculate the growth direction of each three-dimensional Gaussian point based on the connection direction between each three-dimensional Gaussian point and each branch skeleton point.

[0193] Step 1404: Select the three-dimensional Gaussian points whose growth direction corresponds to an angle within the bifurcation angle range from multiple three-dimensional Gaussian points as the canopy points.

[0194] Steps 1401 to 1404 are described in detail below.

[0195] First, initialize the tree skeleton array. This is done by setting each branch skeleton point in the skeleton set (i.e., multiple branch skeleton points) as a primary skeleton point and defining a search radius R. Branch skeleton points p within the search radius are stored in the set S(p). A 3D Gaussian point to be searched can only affect the nearest branch skeleton point p, while a branch skeleton point p can be simultaneously affected by multiple 3D Gaussian points within the search radius R. The specific mathematical relationship is shown in formula (7).

[0196] (7)

[0197] Where q is a set of points consisting of multiple three-dimensional Gaussian points to be searched within the search radius R of the branch skeleton point p.

[0198] Simultaneously, the processor will perform structural analysis on the generated tree skeleton to extract its inherent growth patterns. Specifically, for each branch skeleton point p (position coordinates...) in the tree trunk model... The branch skeleton point refers to the node located at the fork in the tree skeleton. The processor will use the coordinates of this branch skeleton point as a basis for... The position coordinates of its parent node at the next higher level in the skeleton. And the position coordinates of the next level branch child nodes. These three points are used to calculate the bifurcation angle of each branch skeleton point. As shown in the following formula (8).

[0199]

[0200] The bifurcation angle The angle of deviation of new branches from the trunk or the previous branch was precisely quantified geometrically, thus capturing the unique morphological characteristics of the tree.

[0201] Reference Figure 15 This is a schematic diagram of a bifurcation angle provided in an embodiment of this application. For example... Figure 15 The diagram shows the calculation principle of the "branching angle" used for canopy selection. Figure 15 (a) The angle between the branch and the trunk is marked on the actual tree morphology. Figure 15 (b) Abstract it into a mathematical definition on the skeleton, that is, at the branch skeleton point At that point, it is related to its parent node. The connection between the two branch child nodes The lines connecting them form the bifurcation angles. (include and By calculating these angles, we can quantify and learn the tree's unique growth pattern, providing a biological basis for subsequent selection of canopy points.

[0202] It is understandable that this applies to situations with multiple bifurcation angles, such as... Figure 15 In and In this case, the largest value is taken as the bifurcation angle corresponding to the branch skeleton point, i.e. .

[0203] Furthermore, the processor will transform the specific angle values ​​obtained from the previous analysis into a universally applicable filtering rule. This process will determine a bifurcation angle range based on the numerical relationship between the bifurcation angle and a preset bifurcation threshold. Specifically, the processor may statistically analyze the distribution of all bifurcation angles and combine this with a "preset bifurcation threshold" to determine a reasonable upper and lower limit, ultimately forming a bifurcation angle range. This range represents the range of angles that the branches of a particular tree should follow during its natural growth, which is considered reasonable, providing a clear, data-driven basis for subsequent screening.

[0204] Research experiments show that, under a normal distribution, the bifurcation angles of the tree skeletons in the tree samples statistically fall within the bifurcation angle range. and Within this range, approximately 68.27% and 95.45%, respectively. For most tree species, the majority of axis angles lie within the range determined by the bifurcation angle. Within the defined interval. In this embodiment, experiments further verified this observation, referring to... Figure 16 This is a schematic diagram illustrating the distribution of branching angles in a tree skeleton according to an embodiment of this application.Figure 16 As shown in the figure, this diagram illustrates the distribution of the refined trunk framework along the axial angles, with 19 out of 23 branch angles located in... Based on the above morphological knowledge, the branching angle constraint interval for canopy generation preferentially lies within the defined interval. Internal synthesis, while located in Branches outside this range are excluded. This ensures that the generated canopy twigs have similar branching characteristics to the existing trunk framework, avoiding abnormal shapes and structures during twig synthesis.

[0205] The processor then assigns a potential growth attribute to each 3D Gaussian point to be screened. This process calculates the growth direction *n* of each 3D Gaussian point based on its connection direction to each branch skeleton point. Specifically, for each original 3D Gaussian point, the processor finds its nearest branch skeleton point on the tree trunk model and defines the vector *n* pointing from that nearest point to the 3D Gaussian point as the growth direction of that point. This direction simulates the possible paths that the point could take if it were part of the tree crown and grew out of the trunk.

[0206] Next, the estimated skeleton growth direction is compared with the direction vector. That is, the processor selects the angle corresponding to the growth direction from multiple three-dimensional Gaussian points within the bifurcation angle range. The three-dimensional Gaussian points within the range are used as canopy points, and the growth angle is not within the constraint range. Points within the range are deleted. Only those points whose growth direction angle falls within a reasonable range are considered valid points that conform to the tree's own growth pattern and are ultimately identified as canopy points, thus forming high-fidelity canopy data.

[0207] This algorithm combines morphological self-similarity and spatial competition, extracting only the corresponding 3D skeleton of the tree. To further generate a geometric mesh model, this paper uses the actual trunk radius obtained from the previous cylinder fitting as a regularization term and employs an anisotropic growth model to construct constraint terms for calculating the radii of the fine branches in the synthetic canopy. The complete 3D fine skeleton of the tree and the branch radii are used to generate a high-quality tree mesh model.

[0208] By performing steps 1401 to 1404 above, the unique "branching angle" pattern of the tree is learned and quantified from the existing, reliable tree skeleton, and a reasonable "branching angle range" is established accordingly. Then, this rule learned from the tree itself is used as the evaluation criterion to judge each potential canopy point, and only those points whose "growth direction" conforms to the rule are retained. This enables the effective screening of structurally reasonable and morphologically realistic canopy points from sparse and messy data, effectively solving the technical problem that traditional methods cannot reconstruct fine branch structures due to data loss, resulting in the distortion of the canopy model. The final generated canopy model therefore has higher biological credibility and visual realism.

[0209] Reference Figure 17 This is a schematic diagram illustrating canopy generation that integrates morphological self-similarity and spatial competition, provided in an embodiment of this application. Figure 17 The diagram illustrates the iterative process of generating canopy branches based on the generated trunk model and selected canopy points. Figure 17 (a) to Figure 17 (f) illustrates a dynamic growth process: starting from a skeletal end point ( Figure 17 (a)) Within a certain search radius ( Figure 17 (b) Find connectable canopy points Figure 17 (c) Then, the growth direction of these connections is calculated, and connections with unreasonable angles are removed (17(d)). Finally, new skeleton branches are generated (17(e)), and the next iteration begins from this (17(f)). This process simulates the natural growth of branches, ensuring that the generated canopy is structurally reasonable.

[0210] Reference Figure 18 This is a schematic diagram illustrating the process of generating a tree model according to an embodiment of this application. Figure 18 The diagram shown is the overall technical flowchart of the multi-view image high-fidelity tree mesh model generation method proposed in this application. The process is mainly divided into three modules: the "3D Gaussian Representation" module on the left, responsible for generating a high-quality 3D Gaussian point cloud after semantic segmentation from multi-view image input; the "Generation and Optimization of Trunk Skeleton" module in the middle, which details the complete process from trunk point separation and trunk extraction (clustering and skeleton refinement) to the final generation of the trunk mesh model; and the "3D Canopy Generation" module on the right, which demonstrates how to combine the selected canopy points with the trunk model to generate a complete, textured final tree model. The entire process clearly demonstrates the step-by-step refinement and construction process of this invention from raw data to a high-fidelity model.

[0211] To verify the reliability of the method for generating a high-fidelity tree mesh model from multi-view images provided in this application, performance simulations were also performed as described below.

[0212] Reference Figure 19 This is a schematic diagram illustrating the simulation results of a method for generating a high-fidelity tree mesh model from a multi-view image, as provided in this application. Figure 19 The diagram illustrates the complete process of generating five trees with distinct structures, including 3D Gaussian points segmented from multi-view images, trunk point clouds, clustered skeletons, trunk geometric mesh models, complete tree geometry, and the geometric errors of the generated overall tree model. Smaller sub-images show a color gradient from blue to red, with blue representing the minimum geometric error between the generated tree mesh model and the original input points, and red representing the maximum error. From a visualization perspective, the proposed method can generate high-quality tree mesh models from multiple viewpoints. Despite missing regions, noise, and other defects in the segmented Gaussian points, the tree mesh models generated by the proposed method maintain a reasonable topological structure and exhibit superior geometric accuracy.

[0213] Reference Figure 20 This is a schematic diagram illustrating the comparative simulation results of the first tree model generated according to an embodiment of this application. Figure 20 As shown, it adopts the following Figure 21 The relevant simulation data shown in the first type of simulation data diagram are in Figure 12 The visualization results and error distribution maps of five tree trunks with different morphological structures generated using three methods are presented. The results show that TreeQSM cannot reconstruct a coherent branch geometry and complete trunk branches. This is mainly because TreeQSM does not employ continuous skeleton constraints during reconstruction, relying primarily on staged cylindrical fitting. While AdTree can reconstruct broad trunk branches, it falls short in capturing the overall features and local curves of the trunk. This is mainly because the input data consists of three-dimensional Gaussian points containing missing regions, noise, and local sparseness, rather than a high-density laser-scanned point cloud. This leads to the fitting of some small branches and the generation of unreasonable radii in the trunk region. As shown in the visualization results and geometric error maps, compared to TreeQSM and AdTree, the method proposed in this application maintains a more reasonable branch structure. The generated model more accurately and in more detail preserves branch features such as bifurcation and curves. Furthermore, this embodiment uses two metrics—mean error and root mean square error—to quantitatively analyze the advantages of the method proposed in this application.

[0214] Reference Figure 22 This is a schematic diagram illustrating the comparative simulation results of the second type of tree model generated according to an embodiment of this application. Figure 22The diagram shows visualizations and error distributions of five complete trees generated using TreeQSM, AdTree, and the method proposed in this application. The visualizations reveal that TreeQSM fails to reconstruct complete and coherent branches. While AdTree can roughly reconstruct the complete tree structure, it performs poorly in capturing details such as reasonable branching and local curves, and may generate distorted or incorrect structures in the presence of noise or insufficient data. In contrast, the method proposed in this application better preserves the geometric branches of the tree and improves visualization. Furthermore, referring to… Figure 23 The second type of simulation data diagram shown uses two indicators to quantitatively evaluate the advantages of the method proposed in this application.

[0215] Furthermore, to quantitatively analyze the quality of the model, this embodiment calculated the accuracy errors for the trunks and complete trees of five samples. The mean error and root mean square error are as follows: Figure 21 As shown in the figure. Regarding fitting error, the proposed method achieves the minimum geometric fitting error across multiple trees. For example, when fitting the trunks of lychee tree 1, lychee tree 2, and papaya tree, the proposed method exhibits the minimum mean error and root mean square error. Although TreeQSM shows the minimum mean distance error and root mean square error when fitting the trunks of loquat and African acacia trees, the proposed method still closely approximates the real input data, with a mean fitting error of 0.018 meters and a mean root mean square error of 0.023 meters for all five tree trunks. The mean fitting error for the entire tree across the five samples is 0.027 meters, and the mean root mean square error is 0.045 meters. Furthermore, it should be emphasized that while TreeQSM performs better in terms of mean error and root mean square error in some cases, it fails to generate coherent geometric branches, resulting in significant fragmentation and discretization in the model. Therefore, both visualization and geometric error highlight the reliability and accuracy of the proposed method in generating trunks and entire trees.

[0216] Reference Figure 24 This is a schematic diagram illustrating three-dimensional Gaussian point segmentation of various trees provided in an embodiment of this application. For example... Figure 24 As shown, the effectiveness of segmenting a 3D Gaussian model from multi-view photographs is demonstrated quantitatively and qualitatively. Figure 24 The results of 3D Gaussian training and segmentation for five different trees are presented. Furthermore, to ensure consistent and meaningful comparisons, commonly used metrics were chosen: Peak Signal-to-Noise Ratio (PSNR), L1 loss, and similarity (e.g., ...). Figure 23 (As shown in the diagram). PSNR represents the quality of the rendered 3D Gaussian scene (a higher value indicates better quality). A lower L1 loss indicates a higher quality 3D Gaussian model. Similarity measures whether the segmented 3D Gaussian models belong to the same category.

[0217] In this embodiment, the rendered image and 3D Gaussian splash were visualized during iterations at steps 7K and 30K. For example... Figure 24 As shown, there is a significant difference in visual quality between the two configurations. Although the rendered image from the 7Kth iteration looks acceptable in many cases, a larger Gaussian sphere is used in the rendering due to adaptive density optimization, especially noticeable in certain parts of the tree canopy. Specifically, the Gaussian scene from the 7Kth iteration has an average PSNR of 24.22 dB and an average L1 loss of 0.036. In contrast, the average PSNR from the 30Kth iteration increases to 26.85 dB, and the average L1 loss decreases to 0.026, representing improvements of 10.87% and 27.78%, respectively. Therefore, the Gaussian scene obtained from the 30Kth iteration was chosen for segmentation to obtain high-quality results in 3D Gaussian segmentation. In this study, the SAGA framework was followed, and the provided interactive graphical interface (saga_gui.py) was used to perform 3D Gaussian segmentation. Similarity (ranging from 0 to 1) was used to quantitatively evaluate the segmentation performance, achieving an average similarity of 0.91, indicating high coherence of the segmented 3D Gaussian distribution. In addition, visual inspection of the segmented 3D Gaussian points further confirmed their high degree of consistency with the overall appearance of the original tree.

[0218] Reference Figure 25 This diagram illustrates the comparative simulation results of different search radii provided in this application embodiment. The search radius R determines the number of candidate crown points in the growth direction of the skeleton points in each iteration, significantly affecting the final shape of the generated tree. If R is too small, the search area in each iteration becomes limited, causing the generation process to be biased towards local density. This makes it difficult to visually reconstruct the overall shape of the crown. Conversely, if R is too large, the search includes too many points, usually resulting in redundant branches. Figure 25 The diagram illustrates a comparison of three trees with different structures at different search radii. When the radius is set to 1 cm, the visual quality is poor, and the generated crown structure fails to capture the overall tree shape. At a radius of 2.5 cm, the visual quality improves, but may still be insufficient in cases of sparse or missing data. A radius of 5 cm achieves satisfactory mesh model generation on five experimental trees. It is important to note that in practical applications, the search radius R should be carefully chosen based on the sparsity of the input point cloud and the balance between modeling accuracy and computational cost.

[0219] Reference Figure 26 This is a schematic diagram illustrating the comparative simulation results with and without self-similar angle constraints provided in the embodiments of this application. For example... Figure 26As shown in the figure, the influence of self-similar angle constraints on canopy synthesis was analyzed using two litchi trees with complex branching structures as examples. In this experiment, the search radius was fixed at 2.5 cm, and the only variable was the presence or absence of self-similar angle constraints. Self-similar angle constraints effectively regulated the growth direction of twigs within the canopy, reducing irregular or unnatural branch orientations. In contrast, without such constraints, some branches would grow vertically upwards or downwards, resulting in excessively wide or narrow branch angles (e.g., ...). Figure 16 (See enlarged sub-image). It's important to note that the fusion of morphological self-similarity and spatial competition provides an ideal model for canopy generation, but it doesn't completely determine the final tree structure. In the real world, external factors—such as pruning in urban environments—can cause branches to deviate from their biologically ideal growth trajectory.

[0220] This application proposes a method and related apparatus for generating a high-fidelity tree mesh model from multi-view images. The method includes: first, acquiring multi-view images of a target scene, including target trees; using 3D point cloud technology to perform 3D Gaussian extraction on the multi-view images to obtain multiple scene Gaussian points; based on the low-dimensional features of each scene Gaussian point, selecting scene Gaussian points whose low-dimensional features are consistent with tree features from the multiple scene Gaussian points as 3D Gaussian points; determining multiple neighboring Gaussian points corresponding to each 3D Gaussian point; obtaining the neighboring point difference based on the difference between the centroids of the neighboring Gaussian points and the multiple neighboring Gaussian points; and obtaining the 3D height based on the average of all neighboring point differences. The covariance matrix of the Gaussian point is decomposed into eigenvalues ​​to obtain multiple eigenvalues. The unscattering degree of each 3D Gaussian point is calculated based on these eigenvalues. From these 3D Gaussian points, those with unscattering degrees greater than a preset scattering degree are selected as initial backbone Gaussian points. Based on the Euclidean distance between each initial backbone Gaussian point, clustering is performed to obtain multiple initial backbone point clusters. From these initial backbone point clusters, the number of clusters with more cluster points than a preset number is selected as target backbone point clusters. Multiple initial backbone Gaussian points in the target backbone point clusters are then used as backbone Gaussian points. Finally, an undirected weighted graph is generated based on these backbone Gaussian points. The algorithm calculates the shortest path length between each trunk Gaussian point and the root node using a fast shortest path algorithm. Based on this shortest path length, multiple trunk Gaussian points are clustered to obtain multiple trunk clusters, each containing multiple trunk Gaussian points. Next, the centroid of each trunk cluster is calculated, and multiple centroids are connected to obtain the initial tree skeleton of the target tree. The initial tree skeleton includes multiple vertices, with each pair of adjacent vertices forming a skeleton segment. Based on the length of the subtree connected to each vertex in the initial tree skeleton, the vertex weight corresponding to each vertex is calculated. Based on the vertex weight and the distance between the skeleton segments, subtrees are selected from multiple vertices. First, refine the vertices to obtain the tree skeleton. Then, for each trunk cluster in the tree skeleton, generate a cylindrical skeleton. Based on the ratio between the straight-line distance of each 3D Gaussian point and the cylindrical skeleton and the maximum straight-line distance, obtain the distance weight of each 3D Gaussian point. Based on the cumulative value of the product of the distance weights and straight-line distances of all 3D Gaussian points, generate the distance and objective function. Based on the least squares method, solve the distance and objective function to obtain the optimal cylinder radius, optimal endpoint, and optimal direction vector corresponding to the trunk cluster. Update the cylindrical skeleton based on the optimal cylinder radius, optimal endpoint, and optimal direction vector. Based on all the updated cylindrical skeletons, generate the tree trunk model.Finally, for each branch skeleton point in the tree trunk model, the bifurcation angle of each branch skeleton point is calculated based on the branch skeleton point, its parent node, and its child nodes. Based on the numerical relationship between the bifurcation angle and a preset bifurcation threshold, a bifurcation angle range is obtained. Based on the connection direction between each 3D Gaussian point and each branch skeleton point, the growth direction of each 3D Gaussian point is calculated. From multiple 3D Gaussian points, 3D Gaussian points whose growth direction angles fall within the bifurcation angle range are selected as crown points. A tree model of the target tree is then generated based on multiple crown points and the tree trunk model.

[0221] This application's embodiments extract trunk points from 3D Gaussian points and utilize a shortest path length-based clustering algorithm and skeleton refinement to overcome noise and breakpoints in the original data, generating a tree trunk skeleton with correct topology and accurate geometry. This effectively solves the technical problem of trunk model distortion caused by data quality issues in existing technologies. Furthermore, for the severely missing crown portion, a connection direction-based filtering strategy is adopted. This strategy implicitly contains the morphological laws of plant growth and can intelligently filter crown points that conform to natural growth patterns from sparse point clouds, effectively compensating for the deficiency of purely data-driven methods in reconstructing fine branch structures. This results in a final complete tree model with a clear and accurate trunk structure, a full crown shape, and realistic details, significantly improving overall realism. In addition, the use of more expressive 3D Gaussian points as the data foundation improves the fidelity of subsequent processing. Finally, an automated segmentation method based on low-dimensional features is employed... This method intelligently and accurately isolates target trees from complex background environments, avoiding interference from background objects in tree modeling, a problem common in traditional methods. It obtains high-purity input data without extensive manual preprocessing, laying a solid and reliable foundation for subsequent accurate trunk skeleton extraction and high-fidelity model generation. This improves the automation of the entire generation process and the accuracy of the final model. Furthermore, through rigorous local geometric analysis, it quantifies the morphological differences of different parts of the tree into a clear non-scattering index, robustly handling noise and density inhomogeneity in point clouds. It accurately identifies points with continuous surfaces that constitute the main structure of the tree, while effectively filtering out complex and scattered leaf points. This results in a very pure and accurate set of Gaussian points for the trunk, providing a solid and reliable data foundation for accurate extraction of the tree skeleton and high-fidelity reconstruction of the trunk model. Finally, it introduces the key indicator of the shortest path length along graph connections.This metric accurately reflects the true manifold distance of each point on the trunk surface, thus endowing the discrete point cloud with an inherent order along the trunk axis. This results in multiple trunk clusters that, like ordered "lateral slices" of the trunk, efficiently structure and sequence the originally chaotic point cloud data. This provides logically clear and correctly arranged input for accurately calculating the centroids of each cluster and generating a continuous, smooth tree skeleton, greatly improving the accuracy and robustness of skeleton extraction. Furthermore, the concept of vertex weight is introduced to quantify the structural importance of each vertex. By combining structural importance (vertex weight) with geometric redundancy (distance from skeleton segments) for vertex selection, key branching points of the tree are preserved to the greatest extent while effectively removing redundant nodes in straight or gently curving sections. This ensures that the final generated tree skeleton is not only topologically correct but also geometrically smoother and more concise, providing an ideal, high-quality central axis for subsequent high-fidelity model construction. Additionally, for each segment of the trunk, a weighted... The optimal cylinder radius, endpoint, and direction vector are iteratively calculated using distance and objective function. This fully utilizes the distribution information of surrounding three-dimensional Gaussian points and effectively suppresses noise interference through a distance weighting mechanism, ensuring that the calculated radius has extremely high geometric accuracy. The resulting tree trunk model accurately reproduces the natural thickness variation (i.e., taper) of a real tree trunk from root to tip, thus significantly improving fidelity. Finally, the unique "branching angle" pattern of the tree is learned and quantified from existing, reliable tree skeletons, and a reasonable "branching angle interval" is established accordingly. This rule learned from the tree itself is then used as a criterion to judge each potential crown point, retaining only those points whose "growth direction" conforms to the rule. This effectively filters out structurally reasonable and morphologically realistic crown points from sparse and messy data, effectively solving the technical problem of traditional methods being unable to reconstruct fine branch structures due to data loss, leading to crown model distortion. The resulting crown model thus has higher biological credibility and visual realism.

[0222] This application also provides an electronic device, including:

[0223] At least one memory;

[0224] At least one processor;

[0225] At least one program;

[0226] The program is stored in memory, and the processor executes at least one program to implement the method described above for generating a high-fidelity tree mesh model from a multi-view image. The electronic device can be any smart terminal, including mobile phones, tablets, personal digital assistants (PDAs), and in-vehicle computers.

[0227] Please see Figure 27 , Figure 27 The hardware structure of an electronic device according to another embodiment is illustrated. The electronic device includes:

[0228] The processor 2701 can be implemented using a general-purpose CPU (Central Processing Unit), microprocessor, application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of this application.

[0229] The memory 2702 can be implemented in the form of ROM (Read-Only Memory), static storage device, dynamic storage device, or RAM (Random Access Memory). The memory 2702 can store the operating system and other applications. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 2702 and is called and executed by the processor 2701 to execute a method for generating a high-fidelity tree mesh model from a multi-view image according to an embodiment of this application.

[0230] The 2703 input / output interface is used to implement information input and output.

[0231] The communication interface 2704 is used to enable communication and interaction between this device and other devices. Communication can be achieved through wired means (such as USB, Ethernet cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.).

[0232] Bus 2705 transmits information between various components of the device (e.g., processor 2701, memory 2702, input / output interface 2703, and communication interface 2704);

[0233] The processor 2701, memory 2702, input / output interface 2703 and communication interface 2704 are connected to each other within the device via bus 2705.

[0234] This application embodiment also provides a storage medium, which is a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described method for generating a high-fidelity tree mesh model from a multi-view image.

[0235] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs. Furthermore, memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, memory may optionally include memory remotely located relative to the processor, and these remote memories can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.

[0236] The embodiments described in this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided by the embodiments of this application. As those skilled in the art will know, with the evolution of technology and the emergence of new application scenarios, the technical solutions provided by the embodiments of this application are also applicable to similar technical problems.

[0237] Those skilled in the art will understand that the technical solutions shown in the figures do not constitute a limitation on the embodiments of this application, and may include more or fewer steps than shown, or combine certain steps, or different steps.

[0238] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.

[0239] Those skilled in the art will understand that all or some of the steps in the methods disclosed above, as well as the functional modules / units in the systems and devices, can be implemented as software, firmware, hardware, or suitable combinations thereof.

[0240] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0241] It should be understood that in this application, "at least one (item)" means one or more, and "more than" means two or more. "And / or" is used to describe the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.

[0242] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of the units described above is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. The coupling or direct coupling or communication connection between the shown or discussed units may be through some interfaces, or indirect coupling or communication connection between the apparatus or units, and may be electrical, mechanical, or other forms.

[0243] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0244] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0245] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes multiple instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing programs, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0246] The preferred embodiments of the present application have been described above with reference to the accompanying drawings, but this does not limit the scope of the claims of the present application. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and substance of the embodiments of the present application shall be within the scope of the claims of the present application.

Claims

1. A method of generating a high-fidelity tree mesh model from a multi-view image, characterized by, The method includes: Multiple three-dimensional Gaussian points of the target tree are obtained, and the trunk points are extracted from the multiple three-dimensional Gaussian points to obtain multiple trunk Gaussian points; Based on the shortest path length between each of the main Gaussian points and the root node, the multiple main Gaussian points are clustered to obtain multiple main clusters, and each main cluster includes multiple main Gaussian points. The centroid of each of the main trunk clusters is calculated, and a refined connection process is performed based on multiple centroids to obtain the tree skeleton; Based on the multiple three-dimensional Gaussian points and the tree skeleton, a tree trunk model is generated; Based on the connection direction between each of the three-dimensional Gaussian points and the tree trunk model, the tree crown is filtered for multiple three-dimensional Gaussian points to obtain multiple tree crown points, and a tree model of the target tree is generated based on the multiple tree crown points and the tree trunk model. Based on the connection direction between each of the three-dimensional Gaussian points and the tree trunk model, canopy filtering is performed on multiple three-dimensional Gaussian points to obtain multiple canopy points, including: For each branch skeleton point in the tree trunk model, the bifurcation angle of each branch skeleton point is calculated based on the branch skeleton point, the parent node of the branch skeleton point, and the branch child nodes of the branch skeleton point. Based on the numerical relationship between the bifurcation angle and the preset bifurcation threshold, the bifurcation angle range is obtained; Based on the connection direction between each of the three-dimensional Gaussian points and each of the branch skeleton points, the growth direction of each of the three-dimensional Gaussian points is calculated; Select the three-dimensional Gaussian point whose angle corresponding to the growth direction is within the bifurcation angle range from the plurality of three-dimensional Gaussian points as the canopy point; The acquisition of multiple three-dimensional Gaussian points of the target tree includes: Acquire multi-view images of a target scene, wherein the target scene includes the target trees; Using 3D point cloud technology, 3D Gaussian extraction is performed on the multi-view images to obtain multiple scene Gaussian points; Based on the low-dimensional features of each scene Gaussian point, the scene Gaussian point that is consistent with the low-dimensional features and tree features is selected from multiple scene Gaussian points as the three-dimensional Gaussian point.

2. The method of claim 1, wherein, The step of extracting the backbone points from the multiple three-dimensional Gaussian points to obtain multiple backbone Gaussian points includes: Determine multiple adjacent Gaussian points corresponding to each of the three-dimensional Gaussian points; Based on the difference between the centroids of the adjacent Gaussian points and the plurality of adjacent Gaussian points, the adjacent point difference is obtained, and based on the average of all the adjacent point differences, the covariance matrix of the three-dimensional Gaussian points is obtained. The covariance matrix is ​​decomposed into eigenvalues ​​to obtain multiple eigenvalues, and the nonscattering degree of each three-dimensional Gaussian point is calculated based on the multiple eigenvalues. The main Gaussian point is selected from a plurality of three-dimensional Gaussian points based on the nonscattering degree of the three-dimensional Gaussian point.

3. The method of claim 2, wherein, The selection of the main Gaussian point from a plurality of three-dimensional Gaussian points based on the nonscattering degree of the three-dimensional Gaussian point includes: Select the three-dimensional Gaussian points with non-scattering degree greater than the preset scattering degree from the plurality of three-dimensional Gaussian points as the initial backbone Gaussian points; The multiple initial trunk points are clustered based on the Euclidean distances between each of the initial trunk points, to obtain multiple initial trunk point clusters; An initial trunk point cluster with a number of clustered points greater than a preset number of clustered points is selected from the multiple initial trunk point clusters as a target trunk point cluster, and the multiple initial trunk Gaussian points in the target trunk point cluster are taken as the trunk Gaussian points.

4. The method of claim 1, wherein, The multiple trunk Gaussian points are clustered based on the shortest path lengths between each of the trunk Gaussian points and a root node, to obtain multiple trunk clusters, including: A shortest path length between each of the trunk Gaussian points and the root node is calculated based on a shortest path fast algorithm, and based on the multiple trunk Gaussian points; The multiple trunk Gaussian points are clustered based on the shortest path lengths between each of the trunk Gaussian points and the root node, to obtain multiple trunk clusters.

5. The method of claim 1, wherein, The tree skeleton is obtained based on a refinement connection process of the multiple centroids, including: The multiple centroids are connected to obtain an initial tree skeleton of the target tree, the initial tree skeleton including multiple vertices, each two adjacent vertices forming a skeleton line segment; A vertex weight corresponding to each of the vertices is calculated based on a length of a sub-tree connected by each of the vertices in the initial tree skeleton; Refinement vertices are selected from the multiple vertices based on the vertex weights and distances between the skeleton line segments; The tree skeleton is obtained based on the multiple refinement vertices.

6. The method of claim 5, wherein, The tree trunk model is generated based on the multiple three-dimensional Gaussian points and the tree skeleton, including: A cylindrical trunk is generated for each of the trunk clusters in the tree skeleton; A distance weight of each three-dimensional Gaussian point is obtained based on a ratio between a straight-line distance of each of the three-dimensional Gaussian points and the cylindrical trunk and a maximum straight-line distance; A distance sum objective function is generated based on an accumulated value of products of the distance weights and the straight-line distances corresponding to all of the three-dimensional Gaussian points; The distance sum objective function is solved based on a least square method, to obtain an optimal cylindrical radius, an optimal end point, and an optimal direction vector corresponding to the trunk cluster, and the cylindrical trunk is updated based on the optimal cylindrical radius, the optimal end point, and the optimal direction vector; The tree trunk model is generated based on all of the updated cylindrical trunks.

7. An electronic device, comprising: The electronic device includes a memory and a processor, the memory storing a computer program, and the processor implementing the method of claim 1-6 when executing the computer program.

8. A storage medium storing a computer program, characterized by The computer program is executed by the processor to implement the method of claim 1-6 for generating a high-fidelity tree grid model from a multi-view image.

Citation Information

Patent Citations

  • Monomer reconstruction method and device for multi-level-of-detail tree model

    CN115311418A

  • Method of individual tree crown segmentation from airborne lidar data using novel gaussian filter and energy function minimization

    US20230350065A1