A high-precision forest land real scene model 3D printing method and system

By calculating the density field partitioning of point clouds and extracting tree skeletons, removing fragile and suspended structures, and generating transitional connecting surfaces, the problem of the closure of the forest landscape model is solved, and a highly efficient and automated 3D printing process is realized.

CN121105395BActive Publication Date: 2026-02-24GUANGDONG ACAD OF FORESTRY
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511666288.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-11-14
Publication Date
2026-02-24
Estimated Expiration
2045-11-14

AI Technical Summary

Technical Problem

Existing technologies for 3D printing of real-world forest models suffer from geometric interference or gaps when tree and terrain models are superimposed, resulting in incomplete model sealing, high printing failure rate, and the need for extensive manual repairs, leading to low efficiency.

Method used

By calculating the spatial density field partition of the point cloud, the tree skeleton is extracted and the topological connection relationship is constructed. Fragile and suspended structures are pruned, and transitional connection surfaces are generated to ensure the model's closure and reduce manual repairs.

Benefits of technology

The system enables automated processing of high-precision forest landscape models, ensuring seamless model sealing, improving the structural stability and automation of the printed product, and reducing the need for manual repairs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121105395B_ABST
    Figure CN121105395B_ABST
Patent Text Reader

Abstract

The present application relates to 3D printing, especially to a high-precision forest land real scene model 3D printing method and system, a terrain base map is generated through the point cloud and digital elevation model data obtained, the forest land is divided into a high-density core area and a low-density boundary layer, and the initial contour generated by the core area is adjusted using the boundary layer data; the skeleton structure of the tree is extracted from the core area point cloud, and a topological model is established, when the average shape diameter function value of a tree structure unit is less than a preset proportion of the average shape diameter function value of a parent structure unit, and the ratio of the path length of the tree structure unit to the average shape diameter function value of itself is greater than a preset ratio threshold, the tree structure unit is pruned; the tree model after optimization processing will be seamlessly integrated with the terrain base map and the boundary layer, a transition smooth unified digital model is obtained, and after slice processing, it can be used for high-fidelity 3D printing, so as to realize accurate reproduction of complex forest landscape.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of 3D printing, and in particular relates to a method and system for 3D printing a high-precision forest landscape model. Background Technology

[0002] Forest landscape models have significant application value in forestry planning, ecological environment monitoring, and geological disaster simulation. Previously, the creation of forest landscape models, such as realistic sand tables, relied entirely on manual methods. This process was lengthy, often taking weeks or even months, and was costly. It heavily depended on skilled craftsmen, and the accuracy was limited, making it difficult to accurately reproduce complex terrain and landforms. Furthermore, the representation of surface details (such as vegetation distribution and small features) was highly subjective. In recent years, however, methods based on digital elevation models (DEMs) and 3D printing technology have emerged, improving efficiency to some extent.

[0003] However, raw forest canopy point cloud data is complex, containing numerous redundant or unprintable details such as leaves, overhanging points, and extremely fine branches. Directly performing 3D modeling without effective processing results in a massive digital model with many fragile, overhanging structures, leading to a high printing failure rate. Secondly, existing model simplification algorithms are mostly general mesh simplifications, unable to intelligently distinguish between key skeletal branches and terminal details, often resulting in the destruction of tree topology and morphological distortion. Furthermore, simply overlaying independent tree models with terrain models creates geometric interference or gaps at their contact points, forming an incomplete and invalid model that cannot be correctly identified and processed by 3D printing slicing software. Moreover, the printing boundaries need to be manually defined, requiring extensive and tedious post-processing adjustments, resulting in low efficiency and difficulty in guaranteeing quality. Summary of the Invention

[0004] In the first aspect, this invention proposes a high-precision 3D printing method for forest landscape models to address the problems of fragile dimensions, numerous suspended structures, invalid models formed by superimposing tree models and terrain models, and the time-consuming and labor-intensive repair process. The method includes the following steps:

[0005] Acquire point cloud data and digital elevation model data of the target forest area; generate a base layer based on the digital elevation model data; calculate the spatial density field of the canopy point cloud data, take the area with density higher than a preset density threshold as the core layer, and take the area with density lower than the preset density threshold as the boundary layer; perform two-dimensional projection on the point cloud of the core layer and construct a concave hull profile, and use the area of ​​the boundary layer to adjust the concave hull profile to obtain the boundary line in the boundary layer;

[0006] Tree skeletons are extracted from the point cloud of the core region layer, a structural model representing the topological connection relationship of branches is established, and the skeleton is segmented into tree structural units with parent-child relationships. Based on the skeleton, local growth axis vectors are constructed for each tree structural unit, and the shape diameter function value of each point is obtained according to the shortest distance from each point to the surface of the structural model in the plane perpendicular to its local growth axis vector.

[0007] When the average shape diameter function value of a tree structure unit is less than a preset ratio of the average shape diameter function value of its parent structure unit, and the ratio of the path length of the tree structure unit to its own average shape diameter function value is greater than a preset ratio threshold, the tree structure unit is pruned.

[0008] The pruned tree structure is merged with the boundary layer and the base layer, and a transitional connecting surface is generated in the contact area between the two to obtain a unified digital model; the unified digital model is sliced ​​and 3D printed.

[0009] Preferably, the calculation of the spatial density field of the canopy point cloud data includes:

[0010] A three-dimensional voxel grid is established, and the Gaussian kernel density estimation algorithm is used to calculate the density contribution value of each data point in each voxel grid, with each data point in the point cloud as the center.

[0011] The spatial density of a voxel is obtained by summing the density contributions of all point clouds within each voxel.

[0012] Preferably, the step of performing a two-dimensional projection of the point cloud of the core region layer and constructing a concave hull profile includes:

[0013] The three-dimensional point cloud data of the core area layer is projected onto a two-dimensional horizontal plane to obtain a two-dimensional point set;

[0014] Triangulation of the two-dimensional point set yields a triangular mesh covering all points;

[0015] Traverse each triangle in the triangular mesh. If the radius of the circumcircle of a triangle is less than or equal to a preset value, then retain the triangle.

[0016] All the retained triangles form an alpha complex. The topological boundary of the alpha complex is extracted. The topological boundary consists of all edges that belong to only one retained triangle. The topological boundary is connected to form the concave hull profile.

[0017] Preferably, the step of adjusting the concave hull profile using the region of the boundary layer to obtain the boundary line in the boundary layer includes:

[0018] For each vertex of the concave hull contour, a fan-shaped search area is determined with the vertex as the center and a preset search radius as the range;

[0019] Calculate the centroid of all points within the sector search region that belong to the boundary layer, and use them as the extension points of the sector search region;

[0020] If the expansion point is located outside the concave hull contour, then the corresponding vertex in the concave hull contour is replaced by the expansion point;

[0021] Traverse all vertices to obtain the adjusted new contour;

[0022] The new contour is smoothed using B-spline curve fitting or moving average algorithm to generate the boundary line in the boundary layer;

[0023] Based on the position of the boundary line on the digital elevation model data, an elevation value is assigned to each point on the boundary line by interpolation, thereby converting the boundary line into a three-dimensional spatial boundary line that conforms to the actual terrain undulations.

[0024] Preferably, the extraction of the tree skeleton from the point cloud of the core region layer includes:

[0025] An L1-median-based skeleton extraction algorithm is used to iteratively shrink the point cloud until it converges to a set of one-dimensional curves to obtain the initial skeleton.

[0026] The initial skeleton is smoothed and simplified, and suspended branches with a length of less than 0.2 meters are removed to obtain a tree skeleton representing the topological connection relationship of branches.

[0027] Preferably, obtaining the shape diameter function value of each point based on the shortest distance from each point to the surface of the structural model in a plane perpendicular to its local growth axis vector includes:

[0028] The steps for calculating the shape diameter function value of any point S on the tree skeleton are as follows:

[0029] Determine the direction of the skeleton tangent at point S, and use it as the local growth axis vector V;

[0030] Construct a transverse plane N that passes through point S and has a normal vector V;

[0031] In the original point cloud of the core region layer, all neighboring points whose distance from plane N is within a preset range are selected to obtain a local point set;

[0032] Calculate the average distance from all points in the local point set to the center point S, and take twice the average distance as the shape diameter function value of point S.

[0033] Preferably, when the average shape diameter function value of a tree structural unit is less than a preset proportion of the average shape diameter function value of its parent structural unit, and the ratio of the path length of the tree structural unit to its own average shape diameter function value is greater than a preset ratio threshold, the tree structural unit is pruned. Specifically:

[0034] For any tree structural unit i and its parent structural unit P(i), the average shape diameter function values ​​are respectively and The path length of tree structural unit i along the skeleton is Tree structural unit i and all its child units are removed from the structural model when both of the following conditions are met: , .

[0035] Preferably, generating a transitional connecting surface in the contact area between the two includes:

[0036] Identify the boundary line where the roots of the tree structure model intersect with the surface of the base layer;

[0037] The area extending 0.1 meters outward from this boundary line serves as a transition zone;

[0038] The Laplacian smoothing algorithm is used to iteratively relax the mesh vertices in the transition region to generate a smooth connecting surface with continuously changing curvature, thus achieving seamless integration of trees and the base map.

[0039] Preferably, the slicing process of the unified digital model includes:

[0040] Import the unified digital model into the slicing software;

[0041] Set the printing layer height to 0.1 mm;

[0042] Set the fill density to 20% and use a grid-like fill pattern;

[0043] For sections with a suspension angle exceeding 45 degrees, a tree-like support structure is generated.

[0044] In a second aspect, the present invention also proposes a high-precision 3D printing system for a real-world forest model, comprising:

[0045] A layering module is used to acquire point cloud data and digital elevation model data of the target forest area; generate a base layer based on the digital elevation model data; calculate the spatial density field of the canopy point cloud data, and take the area with density higher than a preset density threshold as the core layer and the area with density lower than the preset density threshold as the boundary layer; perform two-dimensional projection on the point cloud of the core layer and construct a concave hull profile, and use the area of ​​the boundary layer to adjust the concave hull profile to obtain the boundary line in the boundary layer;

[0046] The tree model construction module is used to extract the tree skeleton from the point cloud of the core layer, establish a structural model representing the topological connection relationship of branches and trunks, and segment the skeleton into tree structural units with parent-child relationships; based on the skeleton, a local growth axis vector is constructed for each tree structural unit, and the shape diameter function value of each point is obtained according to the shortest distance from each point to the surface of the structural model in the plane perpendicular to its local growth axis vector.

[0047] The pruning module is used to prune the tree structure unit when the average shape diameter function value of the tree structure unit is less than a preset ratio of the average shape diameter function value of the parent structure unit, and the ratio of the path length of the tree structure unit to its own average shape diameter function value is greater than a preset ratio threshold.

[0048] The printing module is used to merge the pruned tree structure with the boundary layer and the base layer, and generate a transitional connecting surface in the contact area between the two to obtain a unified digital model; the unified digital model is then sliced ​​and 3D printed.

[0049] Thirdly, the present invention provides a computer-readable storage medium on which a computer program is stored, which, when executed by a processor, implements the method described in the first aspect.

[0050] The high-precision forest landscape model 3D printing method and system provided by this invention divides the forest canopy into zones by calculating the spatial density field of the point cloud and automatically extracts the boundaries. It further extracts the tree skeleton with topological relationships and uses a shape diameter function combined with parameters such as the parent-child relationship of structural units and path length to construct pruning criteria. This allows for the identification and removal of overly thin, suspended, and unstable terminal branches from the original data, while completely preserving the main skeleton and core morphology of the trees. This simplifies the model data, reduces printing difficulty, ensures high fidelity of the forest morphology, and improves the structural stability of the printed product. Furthermore, by merging the pruned tree structure with the base layer and automatically generating transitional connecting surfaces, the resulting unified digital model is a closed, seamless whole. It can be directly used for slicing and printing without tedious manual post-processing, improving the automation level and model quality of the entire process from original data to production. Attached Figure Description

[0051] Figure 1 A flowchart of the first embodiment;

[0052] Figure 2 This is a schematic diagram of the concave hull profile;

[0053] Figure 3This is a schematic diagram of the adjusted boundary line. Detailed Implementation

[0054] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.

[0055] In the first embodiment, the present invention proposes a method for 3D printing a high-precision forest landscape model, such as... Figure 1 As shown, it includes the following steps:

[0056] S1. Acquire point cloud data and digital elevation model data of the target forest area; generate a base layer based on the digital elevation model data; calculate the spatial density field of the canopy point cloud data, take the area with density higher than a preset density threshold as the core layer, and take the area with density lower than the preset density threshold as the boundary layer; perform two-dimensional projection on the point cloud of the core layer and construct a concave hull profile, and use the area of ​​the boundary layer to adjust the concave hull profile to obtain the boundary line in the boundary layer;

[0057] A drone equipped with a lidar scanner is used to plan flight routes and perform flight scans of the target forest area. The lidar system emits laser pulses and receives echoes, recording the three-dimensional coordinate information of each point to form raw point cloud data. By filtering the point cloud data using ground points, the point cloud is separated into ground points and non-ground points. Digital elevation model (DEM) data without surface attachments is generated using the ground points. The DEM data is then meshed to generate a triangular mesh model as the base layer. In a more specific embodiment, the calculation of the spatial density field of the canopy point cloud data includes:

[0058] A three-dimensional voxel grid is established, and the Gaussian kernel density estimation algorithm is used to calculate the density contribution value of each data point in each voxel grid, with each data point in the point cloud as the center.

[0059] The spatial density of a voxel is obtained by summing the density contributions of all point clouds within each voxel.

[0060] The space occupied by the entire tree point cloud is divided into a three-dimensional grid composed of numerous cubic units, each with a side length of 0.5 meters. For example, a tree canopy region that is 10 meters high and 10 meters wide is divided into a 20×20×20 voxel grid. For each data point in the point cloud, a Gaussian kernel function is applied centered on the data point. The Gaussian kernel function assigns a density contribution value to the voxel containing the point and its surrounding voxels; the closer the voxel, the higher the contribution value.

[0061] After traversing all point cloud data points, each voxel grid is accumulated with the density contribution values ​​of all points within and around it, resulting in a spatial density value. For example, a voxel located at the intersection of dense branches has a density value of 25 points per cubic meter, while a voxel located at the edge of sparse leaves might have a density value of 10 points per cubic meter. The density value of each voxel is compared with a preset threshold, such as 15 points per cubic meter. Voxels with a density value greater than 15 are assigned to the core layer, while those less than 15 are assigned to the boundary layer.

[0062] Non-ground point cloud data, i.e., canopy point cloud data, is divided into three-dimensional meshes, i.e., voxels, and the number of points within each voxel is counted. The number of points within a voxel is the density of that spatial region. In one embodiment, a preset density threshold of 50 points per cubic meter is used. When the voxel density of a certain region is greater than 50, the point cloud of that region is divided into a core layer, representing the dense part inside the canopy; when the density is not greater than 50, it is divided into a boundary layer, representing the forest boundary.

[0063] Woodland boundaries are typically irregular, and using a concave hull is more effective than a convex hull in capturing the true contours of the woodland. The core layer point cloud data representing the densest area of ​​the woodland is simplified by ignoring elevation information and projected entirely onto a two-dimensional horizontal plane. The Alpha-shape algorithm is then used to construct a concave hull contour that tightly encloses the shape of the two-dimensional point set, as shown below. Figure 2 As shown. Specifically, the two-dimensional projection can be completed using the `points_3d[:, :2]` function, and the concave hull contour can be constructed using `alphashape.alphashape(points_2d, alpha_value)`. In an optional embodiment, the concave hull contour is used as the boundary line. However, to make the boundary more natural and smooth and conform to the real terrain, it is further smoothed by using each vertex of the concave hull contour as a control point and fitting a continuous and smooth two-dimensional boundary curve using B-spline curves, etc., to eliminate the original sharp corners. By interpolating each point on the curve, the true altitude of its geographical location is assigned, thus obtaining a three-dimensional spatial boundary line that undulates with the terrain. In a more specific embodiment, the two-dimensional projection of the point cloud of the core layer and the construction of the concave hull contour includes:

[0064] The three-dimensional point cloud data of the core area layer is projected onto a two-dimensional horizontal plane to obtain a two-dimensional point set;

[0065] Triangulation of the two-dimensional point set yields a triangular mesh covering all points;

[0066] Traverse each triangle in the triangular mesh. If the radius of the circumcircle of a triangle is less than or equal to a preset value, then retain the triangle.

[0067] All the retained triangles form an alpha complex. The topological boundary of the alpha complex is extracted. The topological boundary consists of all edges that belong to only one retained triangle. The topological boundary is connected to form the concave hull profile.

[0068] Specifically, the 3D core area point cloud data is projected onto a 2D plane, and discrete points are connected by lines to construct an initial triangular mesh covering all points. Each triangle in the mesh is examined one by one, and the radius of its circumcircle is calculated. If the circumcircle radius of a triangle is too large, the triangle connects two sets of points that are far apart, and it is likely located outside the forest area, so it is discarded. Conversely, if the circumcircle radius is less than a preset threshold, it indicates that the triangle is composed of closely adjacent points and is part of the forest area entity, so it is retained. All the retained triangles together form a set that reflects the true shape of the forest area, namely the Alpha-complex. The outermost edges of the Alpha-complex, which are not shared with any other retained triangles, are connected to form a concave hull profile that closely fits the point cloud distribution.

[0069] In a more specific embodiment, adjusting the concave hull profile using the region of the boundary layer to obtain the boundary line in the boundary layer includes:

[0070] For each vertex of the concave hull contour, a fan-shaped search area is determined with the vertex as the center and a preset search radius as the range;

[0071] Calculate the centroid of all points within the sector search region that belong to the boundary layer, and use them as the extension points of the sector search region;

[0072] If the expansion point is located outside the concave hull contour, then the corresponding vertex in the concave hull contour is replaced by the expansion point;

[0073] Traverse all vertices to obtain the adjusted new contour;

[0074] The new contour is smoothed using B-spline curve fitting or moving average algorithm to generate the boundary line in the boundary layer;

[0075] Based on the position of the boundary line on the digital elevation model data, an elevation value is assigned to each point on the boundary line by interpolation, thereby converting the boundary line into a three-dimensional spatial boundary line that conforms to the actual terrain undulations.

[0076] The concave hull profile is a preliminary, conservative internal boundary that does not include the sparse trees at the edge of the forest. This embodiment uses sparse boundary data, i.e., the boundary layer, to refine the preliminary profile, making it no longer merely encompass the densest areas, but more realistically reflecting the actual extent of the entire forest, including the scattered tree canopies at the edges. The optimized 2D boundary line is assigned actual terrain elevation, transforming it from a planar profile into a 3D boundary that undulates with the terrain in three-dimensional space. Assuming a corner point A in the concave hull profile, when processing point A, a fan-shaped search area is drawn outward from point A. Within this fan-shaped area, the point cloud of all sparse trees belonging to the boundary layer is searched, and the average position, i.e., the centroid, of these points is calculated, resulting in an extended point B. If point B is further outward than point A, it indicates that the actual edge of the forest extends beyond the initial assessment in this direction. Therefore, replacing the old point A with the new point B is equivalent to extending this corner outward. The above process is repeated at each vertex of the contour, forming a new contour that is larger and closer to the actual forest edge than the original, such as... Figure 3 As shown. To make the contour formed by the polyline look more natural, methods such as B-spline curves are used to smooth it into a smooth curve. Overlaying elevation information yields the three-dimensional spatial boundary line.

[0077] In one alternative embodiment, the boundary layer deletes regions with a preset density threshold, retaining only the boundary lines. In this way, in subsequent 3D printing, the boundary layer contains only the boundary and can be superimposed on the bottom layer and the core layer.

[0078] S2, extract the tree skeleton from the point cloud of the core area layer, establish a structural model representing the topological connection relationship of branches and trunks, and divide the skeleton into tree structural units with parent-child relationships; construct local growth axis vectors for each tree structural unit based on the skeleton, and obtain the shape diameter function value of each point according to the shortest distance from each point to the surface of the structural model in the plane perpendicular to its local growth axis vector;

[0079] Specifically, the L1-median skeleton extraction algorithm is applied to the merged core layer and boundary layer point clouds. The L1-median skeleton extraction algorithm iteratively shrinks the point clouds, converging them towards their geometric center lines to obtain a set of connected line segments, i.e., the tree skeleton. In a more specific embodiment, extracting the tree skeleton from the point cloud of the core layer includes:

[0080] An L1-median-based skeleton extraction algorithm is used to iteratively shrink the point cloud until it converges to a set of one-dimensional curves to obtain the initial skeleton.

[0081] The initial skeleton is smoothed and simplified, and suspended branches with a length of less than 0.2 meters are removed to obtain a tree skeleton representing the topological connection relationship of branches.

[0082] Specifically, the point cloud data representing tree branches is first used as input. The L1-median algorithm iterates repeatedly. In each iteration, each point moves a small step toward the center of its neighboring points. After multiple iterations, the original three-dimensional point cloud gradually shrinks and eventually converges into a set composed of one-dimensional curves. This set is the initial skeleton of the tree, which can roughly reflect the direction of the branches.

[0083] However, the initial skeleton often contains many burrs and unnecessary small branches, requiring further smoothing. Smoothing adjusts the positions of nodes on the skeleton, making connections smoother and eliminating a jagged appearance. Simplification, on the other hand, examines every end branch on the skeleton and measures its length. For example, if a small branch with a length of only 0.15 meters is found, it will be considered noise and removed because its length is less than a preset threshold of 0.2 meters.

[0084] A graph structure model is constructed by treating the branching points in the skeleton as nodes and the line segments connecting the nodes as edges. The node closest to the bottom layer is designated as the root node. Starting from the root node, the entire graph structure is traversed upwards. Between two adjacent nodes, the one closer to the root node is defined as the parent node, and the one farther away is defined as the child node. The edge connecting the parent and child nodes constitutes a tree structure unit. For each line segment of a tree structure unit pointing from a parent node to a child node, its direction vector is the local growth axis vector of that unit. For any point in the original canopy point cloud, its nearest projection point on the tree skeleton is found. The local growth axis vector of the tree structure unit containing this projection point is the reference axis for that point. A plane perpendicular to the reference axis is drawn through this point. The shortest distance from this point to the surface of the tree formed by the point cloud within this plane is calculated. This shortest distance value is used as the shape diameter function value of the point, which represents the branch radius at the point's location.

[0085] In a more specific embodiment, obtaining the shape diameter function value of each point based on the shortest distance from each point to the surface of the structural model in a plane perpendicular to its local growth axis vector includes:

[0086] The steps for calculating the shape diameter function value of any point S on the tree skeleton are as follows:

[0087] Determine the direction of the skeleton tangent at point S, and use it as the local growth axis vector V;

[0088] Construct a transverse plane N that passes through point S and has a normal vector V;

[0089] In the original point cloud of the core region layer, all neighboring points whose distance from plane N is within a preset range are selected to obtain a local point set;

[0090] Calculate the average distance from all points in the local point set to the center point S, and take twice the average distance as the shape diameter function value of point S.

[0091] Specifically, for any given point S on the tree skeleton:

[0092] Obtain the small line segment of the skeleton at point S, or calculate the tangent direction of the point by performing local linear fitting on the skeleton points near S, which is the local growth axis vector V. Using vector V as the normal vector, construct a virtual cross-sectional plane N passing through the skeleton center point S.

[0093] A search is performed on the raw point cloud data of the core area layer to identify all points whose vertical distance to plane N is less than a small threshold. These selected points form an approximately disk-shaped local point set, representing the cross-sectional profile of the branch at that location. The Euclidean distance from each point in the local point set to the center point S of the plane is calculated, and the arithmetic mean of all distances is taken to obtain the average radius of the cross-section. Multiplying the average radius by 2 yields the shape diameter function value at the skeleton point S. By repeating this process for all points on the skeleton, continuous diameter information varying along the entire tree skeleton can be obtained.

[0094] S3, when the average shape diameter function value of the tree structure unit is less than the preset ratio of the average shape diameter function value of the parent structure unit, and the ratio of the path length of the tree structure unit to its own average shape diameter function value is greater than the preset ratio threshold, then the tree structure unit is pruned.

[0095] Calculate the average shape diameter function value of all point clouds within each tree structural unit to obtain the average shape diameter function value of the tree structural unit. Set a preset ratio, for example, 0.4, and a preset ratio threshold, for example, 25. Starting from the end structural unit of the tree, traverse backwards to the root. For a structural unit, if its average shape diameter function value is less than 0.4 times the average of its parent units, and its own geometric length is more than 25 times its own average shape diameter function value, then the structural unit is an excessively long and discontinuous terminal branch, and the structural unit is removed from the structural model. In a more specific embodiment, when the average shape diameter function value of a tree structural unit is less than a preset ratio of the average shape diameter function value of its parent structural unit, and the ratio of the path length of the tree structural unit to its own average shape diameter function value is greater than a preset ratio threshold, then the tree structural unit is pruned, specifically:

[0096] For any tree structural unit i and its parent structural unit P(i), the average shape diameter function values ​​are respectively and The path length of tree structural unit i along the skeleton is Tree structural unit i and all its child units are removed from the structural model when both of the following conditions are met: , .

[0097] The pruning process requires examining each structural unit in the model, such as a secondary branch i and its connected primary branch P(i). The average shape diameter function value of the two units is calculated and obtained; assuming the average shape diameter function value of the primary branch P(i) is 5 cm, and the average shape diameter function value of the secondary branch i is 2.5 cm, the length of the secondary branch i is also measured. Let's assume the diameter is 30 cm. The first condition is whether the average shape diameter function value of branch i is less than 0.6 times the average shape diameter function value of its main branch. Calculation shows this condition is true. The second condition is whether the length-to-thickness ratio of branch i is greater than 10.0. Calculation shows this condition is also true. Since both conditions are met, secondary branch i is an abnormal or redundant structure, and it, along with all smaller sub-branches growing from it, is deleted from the entire tree model.

[0098] S4, the pruned tree structure is merged with the boundary layer and the bottom layer, and a transition connecting surface is generated in the contact area between the two to obtain a unified digital model; the unified digital model is sliced ​​and 3D printed.

[0099] Specifically, the tree skeleton and associated point cloud, preserved after pruning, are used to generate a closed 3D tree mesh model using a Poisson surface reconstruction algorithm. This 3D tree mesh model, along with the generated base layer triangular mesh model and boundary layer, are placed in the same coordinate system. At the boundary line where the tree roots meet the base layer, the vertices in the contact area are calculated and adjusted using methods such as Laplacian smoothing or radial basis function interpolation. This generates a new set of triangular faces that smoothly connect the tree roots to the terrain surface, eliminating gaps and sharp edges, and outputting a complete and error-free unified digital model in STL format.

[0100] The generated STL format unified digital model is imported into the slicing software. Printing parameters are set, such as a layer height of 0.15 mm and an infill density of 15%, and the software automatically generates a support structure based on the cantilevered nature of the branches. The slicing software cuts the model vertically into hundreds of thin layers and plans the movement path of the print head for each layer. The generated G-code instruction file is transferred to the fused deposition modeling (FDM) 3D printer. The printer heats the polylactic acid (PLA) material to a molten state and extrudes the material layer by layer according to the G-code instructions, solidifying the final shape.

[0101] In a more specific embodiment, generating a transition connection surface in the contact area between the two includes:

[0102] Identify the boundary line where the roots of the tree structure model intersect with the surface of the base layer;

[0103] The area extending 0.1 meters outward from this boundary line serves as a transition zone;

[0104] The Laplacian smoothing algorithm is used to iteratively relax the mesh vertices in the transition region to generate a smooth connecting surface with continuously changing curvature, thus achieving seamless integration of trees and the base map.

[0105] Specifically, a closed intersection line is identified where the roots of the 3D tree model meet the horizontal base layer surface. Using this intersection line as a reference, a narrow, elongated ring-shaped area encircling the tree roots is drawn outwards from the base layer surface by 0.1 meters, serving as a transition zone. Within this transition zone, the Laplacian smoothing algorithm is applied to the mesh vertices constituting the base layer surface. Through multiple iterations, the position of each vertex is updated to the average of the positions of all its adjacent vertices. This process causes the originally flat transition zone mesh to bulge slightly upwards and converge towards the tree roots. After a sufficient number of iterations, the transition zone forms a smooth surface from the flat base layer to the tree root elevation, with continuously changing curvature, thus eliminating the harsh right angle between the tree roots and the ground, achieving a natural and seamless connection between the two.

[0106] In a more specific embodiment, the slicing process of the unified digital model includes:

[0107] Import the unified digital model into the slicing software;

[0108] Set the printing layer height to 0.1 mm;

[0109] Set the fill density to 20% and use a grid-like fill pattern;

[0110] For sections with a suspension angle exceeding 45 degrees, a tree-like support structure is generated.

[0111] Import the complete 3D model file, including the trees and the smoothly transitioning base, into the 3D printing slicing software. In the software's printing parameter settings interface, set the layer height to 0.1 mm. The printer will then divide the model into many horizontal slices, each 0.1 mm thick. To save material and ensure printing efficiency, the model's interior is not printed solid; instead, an internal support structure is constructed by setting the infill density to 20%. The infill mode is selected as mesh, meaning a cross-shaped mesh structure is generated inside the model, occupying 20% ​​of the total internal volume. The software automatically detects all overhanging parts in the model, such as the lower surface of horizontally extending branches. For any overhanging surface with an angle exceeding 45 degrees to the vertical, a tree-like support structure is automatically generated below it. This support structure grows upwards from the printing platform or the lower part of the model until it contacts the overhanging surface, providing stable support during the printing process.

[0112] In a second embodiment, the present invention also proposes a high-precision 3D printing system for a real-world forest model, comprising:

[0113] A layering module is used to acquire point cloud data and digital elevation model data of the target forest area; generate a base layer based on the digital elevation model data; calculate the spatial density field of the canopy point cloud data, and take the area with density higher than a preset density threshold as the core layer and the area with density lower than the preset density threshold as the boundary layer; perform two-dimensional projection on the point cloud of the core layer and construct a concave hull profile, and use the area of ​​the boundary layer to adjust the concave hull profile to obtain the boundary line in the boundary layer;

[0114] The tree model construction module is used to extract the tree skeleton from the point cloud of the core layer, establish a structural model representing the topological connection relationship of branches and trunks, and segment the skeleton into tree structural units with parent-child relationships; based on the skeleton, a local growth axis vector is constructed for each tree structural unit, and the shape diameter function value of each point is obtained according to the shortest distance from each point to the surface of the structural model in the plane perpendicular to its local growth axis vector.

[0115] The pruning module is used to prune the tree structure unit when the average shape diameter function value of the tree structure unit is less than a preset ratio of the average shape diameter function value of the parent structure unit, and the ratio of the path length of the tree structure unit to its own average shape diameter function value is greater than a preset ratio threshold.

[0116] The printing module is used to merge the pruned tree structure with the boundary layer and the base layer, and generate a transitional connecting surface in the contact area between the two to obtain a unified digital model; the unified digital model is then sliced ​​and 3D printed.

[0117] In a third embodiment, the present invention also proposes a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method described in the first embodiment.

[0118] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that the embodiments in this specification are not limited to the described order of actions, because according to the embodiments in this specification, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in this specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to the embodiments in this specification.

[0119] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0120] The preferred embodiments disclosed above are merely illustrative of this specification. The optional embodiments do not exhaustively describe all details, nor do they limit the invention to the specific implementations described. Clearly, many modifications and variations can be made based on the embodiments described herein. These embodiments are selected and specifically described in this specification to better explain the principles and practical applications of the embodiments, thereby enabling those skilled in the art to better understand and utilize this specification. This specification is limited only by the claims and their full scope and equivalents.

Claims

1. A method for 3D printing a high-precision forest landscape model, characterized in that, include: Acquire point cloud data and digital elevation model data of the target forest area; generate a base layer based on the digital elevation model data; Calculate the spatial density field of the canopy point cloud data, and take the region with density higher than a preset density threshold as the core layer and the region with density lower than the preset density threshold as the boundary layer; perform two-dimensional projection on the point cloud of the core layer and construct a concave hull profile, and use the region of the boundary layer to adjust the concave hull profile to obtain the boundary line in the boundary layer. Tree skeletons are extracted from the point cloud of the core region layer, a structural model representing the topological connection relationship of branches is established, and the skeleton is segmented into tree structural units with parent-child relationships. Based on the skeleton, local growth axis vectors are constructed for each tree structural unit, and the shape diameter function value of each point is obtained according to the shortest distance from each point to the surface of the structural model in the plane perpendicular to its local growth axis vector. When the average shape diameter function value of a tree structure unit is less than a preset ratio of the average shape diameter function value of its parent structure unit, and the ratio of the path length of the tree structure unit to its own average shape diameter function value is greater than a preset ratio threshold, the tree structure unit is pruned. The pruned tree structure is merged with the boundary layer and the base layer, and a transitional connecting surface is generated in the contact area between the two to obtain a unified digital model; the unified digital model is sliced ​​and 3D printed.

2. The method according to claim 1, characterized in that, The calculation of the spatial density field of the canopy point cloud data includes: A three-dimensional voxel grid is established, and the Gaussian kernel density estimation algorithm is used to calculate the density contribution value of each data point in each voxel grid, with each data point in the point cloud as the center. The spatial density of a voxel is obtained by summing the density contributions of all point clouds within each voxel.

3. The method according to any one of claims 1-2, characterized in that, The step of performing two-dimensional projection of the point cloud of the core region and constructing a concave hull profile includes: The three-dimensional point cloud data of the core area layer is projected onto a two-dimensional horizontal plane to obtain a two-dimensional point set; Triangulation of the two-dimensional point set yields a triangular mesh covering all points; Traverse each triangle in the triangular mesh. If the radius of the circumcircle of a triangle is less than or equal to a preset value, then retain the triangle. All the retained triangles form an alpha complex. The topological boundary of the alpha complex is extracted. The topological boundary consists of all edges that belong to only one retained triangle. The topological boundary is connected to form the concave hull profile.

4. The method according to claim 3, characterized in that, The step of adjusting the concave hull profile using the region of the boundary layer to obtain the boundary line in the boundary layer includes: For each vertex of the concave hull contour, a fan-shaped search area is determined with the vertex as the center and a preset search radius as the range; Calculate the centroid of all points within the sector search region that belong to the boundary layer, and use them as the extension points of the sector search region; If the expansion point is located outside the concave hull contour, then the corresponding vertex in the concave hull contour is replaced by the expansion point; Traverse all vertices to obtain the adjusted new contour; The new contour is smoothed using B-spline curve fitting or moving average algorithm to generate the boundary line in the boundary layer; Based on the position of the boundary line on the digital elevation model data, an elevation value is assigned to each point on the boundary line by interpolation, thereby converting the boundary line into a three-dimensional spatial boundary line that conforms to the actual terrain undulations.

5. The method according to claim 1, characterized in that, The extraction of tree skeletons from the point cloud of the core region layer includes: An L1-median-based skeleton extraction algorithm is used to iteratively shrink the point cloud until it converges to a set of one-dimensional curves to obtain the initial skeleton. The initial skeleton is smoothed and simplified, and suspended branches with a length of less than 0.2 meters are removed to obtain a tree skeleton representing the topological connection relationship of branches.

6. The method according to claim 1, characterized in that, The step of obtaining the shape diameter function value of each point based on the shortest distance from each point to the surface of the structural model in a plane perpendicular to its local growth axis vector includes: The steps for calculating the shape diameter function value of any point S on the tree skeleton are as follows: Determine the direction of the skeleton tangent at point S, and use it as the local growth axis vector V; Construct a transverse plane N that passes through point S and has a normal vector V; In the original point cloud of the core region layer, all neighboring points whose distance from plane N is within a preset range are selected to obtain a local point set; Calculate the average distance from all points in the local point set to the center point S, and take twice the average distance as the shape diameter function value of point S.

7. The method according to claim 1, characterized in that, When the average shape diameter function value of a tree structural unit is less than a preset proportion of the average shape diameter function value of its parent structural unit, and the ratio of the path length of the tree structural unit to its own average shape diameter function value is greater than a preset ratio threshold, the tree structural unit is pruned. Specifically: For any tree structural unit i and its parent structural unit P(i), the average shape diameter function values ​​are respectively and The path length of tree structural unit i along the skeleton is Tree structural unit i and all its child units are removed from the structural model when both of the following conditions are met: , .

8. The method according to claim 1, characterized in that, The process of generating a transitional connecting surface in the contact area between the two includes: Identify the boundary line where the roots of the tree structure model intersect with the surface of the base layer; The area extending 0.1 meters outward from this boundary line serves as a transition zone; The Laplacian smoothing algorithm is used to iteratively relax the mesh vertices in the transition region to generate a smooth connecting surface with continuously changing curvature, thus achieving seamless integration of trees and the base map.

9. The method according to any one of claims 1, 2, 4-8, characterized in that, The slicing process of the unified digital model includes: Import the unified digital model into the slicing software; Set the printing layer height to 0.1 mm; Set the fill density to 20% and use a grid-like fill pattern; For sections with a suspension angle exceeding 45 degrees, a tree-like support structure is generated.

10. A high-precision 3D printing system for a real-world forest model, characterized in that, include: A layered module is used to acquire point cloud data and digital elevation model data of the target forest area; and to generate a base layer based on the digital elevation model data. Calculate the spatial density field of the canopy point cloud data, and take the region with density higher than a preset density threshold as the core layer and the region with density lower than the preset density threshold as the boundary layer; perform two-dimensional projection on the point cloud of the core layer and construct a concave hull profile, and use the region of the boundary layer to adjust the concave hull profile to obtain the boundary line in the boundary layer. The tree model construction module is used to extract the tree skeleton from the point cloud of the core layer, establish a structural model representing the topological connection relationship of branches and trunks, and segment the skeleton into tree structural units with parent-child relationships; based on the skeleton, a local growth axis vector is constructed for each tree structural unit, and the shape diameter function value of each point is obtained according to the shortest distance from each point to the surface of the structural model in the plane perpendicular to its local growth axis vector. The pruning module is used to prune the tree structure unit when the average shape diameter function value of the tree structure unit is less than a preset ratio of the average shape diameter function value of the parent structure unit, and the ratio of the path length of the tree structure unit to its own average shape diameter function value is greater than a preset ratio threshold. The printing module is used to merge the pruned tree structure with the boundary layer and the base layer, and generate a transitional connecting surface in the contact area between the two to obtain a unified digital model; the unified digital model is then sliced ​​and 3D printed.

Citation Information

Patent Citations

  • Method for determination of stand attributes and a computer program for performing the method

    WO2005088252A1

  • Method for rebuilding tree model on the basis of point cloud and data driving

    WO2015149302A1