Realistic 3D lightweight method for railway scenes
By combining deep learning classification and dynamic weight compression with spatial index tree to optimize the real-life 3D model of railways, the problems of redundant data and low merging efficiency are solved, and efficient data processing and storage are achieved.
Patent Information
- Application Number
- CN202510864941.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-26
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2045-06-26
AI Technical Summary
The railway real-life 3D model contains redundant data, inadequate feature classification, lack of weight classification strategy for compression, and low efficiency in merging block data, which affect the accuracy and processing efficiency of the model.
A deep learning classification model is used for feature category segmentation and semantic processing. Combined with dynamic weight compression and an octree-based LOD system, an R-tree spatial index is established to perform data merging and optimization, eliminate noise data, and build an efficient spatial index tree.
It improves the accuracy and processing efficiency of the model, reduces the amount of data, realizes the efficient and lightweight construction of the real-life 3D model of the railway, and supports the digital construction of railway projects.
Smart Images

Figure CN120374887B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of geographic information and railway data processing technology, and in particular to a real-scene three-dimensional lightweight method for railway scenes. Background Art
[0002] With the rapid development of geographic information technology and railway construction, the application of real-world 3D models in railway engineering is becoming increasingly widespread. Technologies such as unmanned oblique photography can generate high-precision real-world 3D data for railway areas, providing rich information support for railway planning, design, construction, and operation and maintenance. However, the large volume and high complexity of real-world 3D data pose significant challenges to data storage, transmission, and processing. Traditional real-world 3D model processing methods for railway scenarios have several shortcomings. Redundant data, such as floating objects, may be present in the model, impacting its accuracy and practicality. Inadequate feature classification hinders targeted processing of different feature types. Model compression lacks an effective weighting strategy, which can lead to loss of precision and detail for important features while inadequate compression of less important features, resulting in data redundancy. The lack of efficient spatial indexing and data fusion methods during block data merging leads to inefficient data retrieval and processing. Problems such as incomplete top-level structure processing and redundant vertex indexes hinder the overall performance of the model. Therefore, a lightweight real-world 3D modeling method for railway scenarios is needed to address these issues. Summary of the Invention
[0003] Therefore, the purpose of the present invention is to provide a real-scene three-dimensional lightweight method for railway scenes, which effectively eliminates redundant data, finely classifies ground objects, reasonably formulates compression weights, optimizes block data merging and top-level structure processing, so as to achieve efficient and lightweight railway real-scene three-dimensional models, improve the efficiency of data processing and application, and provide strong support for the digital transformation of railway engineering.
[0004] To achieve the above objectives, the present invention proposes a three-dimensional lightweight method for real-life railway scenes, comprising the following steps:
[0005] S1. Using unmanned oblique photography to obtain real-scene three-dimensional image data within a preset area including the main railway body;
[0006] S2, pre-processing the acquired real-scene 3D image data to remove noise data;
[0007] S3. Convert the format of the pre-processed 3D image data to obtain DOM data, input the DOM data into the trained deep learning classification model, perform feature category segmentation and semantic processing, and obtain individual model data of different categories and different blocks;
[0008] S4. Partition and compress the data of each type of monomer model according to the weights dynamically obtained according to the classification;
[0009] S5. Construct a dynamic LOD system based on octree according to different category partitions;
[0010] S6. Based on the established dynamic LOD system, a spatial index tree is used to generate a unique identifier for each block, an R-tree spatial index is established, and a multi-resolution model is used to fuse the seams of adjacent blocks to merge and optimize the block data.
[0011] Further preferably, in S2, the acquired real-scene three-dimensional image data is pre-processed to remove noise data, including using an outlier detection method to remove airborne suspended objects, wherein the outlier detection method includes:
[0012] Calculate the distance from the centroid p of any real-scene 3D model block to its Kth nearest neighbor, denoted as K-distance;
[0013] Calculate the reachable distance R_D based on K-distance;
[0014] Calculate the local reachability density LRD based on the reachable distance R_D ( );
[0015] Calculate the local outlier factor based on the local reachability density LRD ;
[0016] According to the set threshold, when the local outlier factor When the value is greater than the set threshold, the current real scene module is determined to be deleted; otherwise, the real scene module is retained;
[0017] in, is the centroid of any real-scene 3D model block; For P i The centroid of the adjacent real-scene 3D model block, k is The total number of adjacent real-scene 3D model block centroids; i is the serial number of any centroid, j is the The sequence numbers of the centroids of adjacent real-life 3D model blocks.
[0018] Further preferably, in S3, the deep learning classification model is trained based on labeled samples;
[0019] Use QGIS to edit the vector classification results, edit the ID and category of each object, and obtain the vector data of the object ID, category type and regional ring coordinate string polygon of different blocks;
[0020] Using the partition vector data, the real-scene 3D model is divided into blocks and processed individually to obtain individual model data of different categories and blocks.
[0021] Further preferably, in S4, each monomer model data is compressed according to the weight dynamically obtained according to the classification, including geometric compression and texture compression for each category according to different types; the geometric compression uses the vertex folding method to calculate whether the original cost of the new vertex after folding meets the error threshold , the error threshold Calculate based on the weights dynamically obtained by classification: L; L is the length of the diagonal of the bounding box; W final is the final weight;
[0022] The final weight W of each class of objects is calculated according to the following formula final
[0023] ;
[0024] Among them, W static is the static weight, F density is the patch density factor, F complexity is the geometric complexity factor;
[0025] Patch density factor F density The calculation is done using the following formula:
[0026]
[0027] in, N class is the number of faces in the current category, N total is the total number of faces, and the threshold is set to 30%.
[0028] Geometric complexity factor F complexity The calculation is done using the following formula:
[0029]
[0030] is the standard deviation of the local Gaussian curvature, The calculation window is the radius r = 0.1 × the length L of the diagonal of the bounding box.
[0031] Further preferably, in S5, a dynamic LOD system based on an octree is constructed according to different category partitions; wherein the LOD level is calculated according to the following formula:
[0032]
[0033] Where L is the side length of the bounding box and D is the minimum unit size.
[0034] Further preferably, in S6, the step of using a spatial index tree to generate a unique identifier for each block and establishing an R-tree spatial index comprises the following steps:
[0035] Adopting the improved linear octree encoding, the management unit is divided into 100m×100m grids, and a four-dimensional index (x, y, z, type) is established to realize space-attribute joint retrieval;
[0036] Generate a unique UUID identifier for each block and build an R-tree spatial index;
[0037] The improved linear octree encoding rules are as follows:
[0038]
[0039] Among them, each level octant number OctantID s [0,7], is the total number of LOD levels, and s is the block number of the spatial index tree.
[0040] Further preferably, in S6, using a multi-resolution model to fuse and process the seams of adjacent blocks includes:
[0041] Determine whether the Euclidean distance between any two adjacent spatial block models exceeds a limit value; if the limit value is exceeded, insert transition triangles and adjust the Euclidean distance between the two adjacent spatial block models to meet the requirement of being less than the limit value;
[0042] The vertex remapping algorithm shown below is used to unify the coordinate system and transform the vertex coordinates of each block model into the global coordinate system:
[0043]
[0044] Among them, R is the block rotation matrix, O block is the origin of the block local coordinate system, is the translation of the block in the global coordinate system; is the original coordinate;
[0045] Calculate the bounding box intersection of all blocks and determine the global origin ; N is the total number of blocks;
[0046] Carry out coordinate transformation and check whether the coordinate difference after quantization of adjacent block boundaries meets the coordinate difference ; If not satisfied, recheck other adjacent blocks;
[0047] When the conditions are met, redundant vertex data are merged and an adaptive texture atlas merging strategy is adopted to generate a composite texture atlas.
[0048] Further preferably, the merging and optimizing of the block data includes:
[0049] Construct a vertex-triangle adjacency list of the following form: Calculate the vertex score;
[0050] ; Represents any vertex, l represents the vertex number of the vertex-triangle; always select the vertex with the highest current score to add to the cache and update the adjacency list;
[0051] Generate optimized index buffer and output new index sequence I optimized , ensuring that adjacent triangles share vertices;
[0052] Construct layer-of-detail transition LOD parameter matrix to ensure visual continuity.
[0053] The real-scene 3D lightweight method for railway scenes disclosed in this application has at least the following advantages over the existing technology:
[0054] In terms of data quality, the accuracy and practicality of the model are improved through the automated removal of floating objects and detailed classification of land features, so that the real-life three-dimensional model of the railway scene can more accurately reflect the actual situation. In terms of data processing efficiency, partition weight formulation and multi-resolution hybrid compression technology are used to perform targeted compression on different land feature categories, significantly reducing the amount of data while retaining the accuracy and details of important land features such as the main railway project to the greatest extent. In the process of block data merging and top-level reset processing, the efficient spatial index constructed and the fusion and optimization algorithms adopted achieve rapid data retrieval, accurate fusion, and unified management, significantly improving the efficiency of data storage, transmission, and processing. This method effectively solves the problem of large amounts of real-life three-dimensional railway data and the difficulty of processing it, providing strong support for the digital construction of railway projects. BRIEF DESCRIPTION OF THE DRAWINGS
[0055] Figure 1 This is a process framework diagram of a real-scene 3D lightweight method for railway scenes proposed by the present invention.
[0056] Figure 2 Detailed flow chart of the present invention. DETAILED DESCRIPTION
[0057] The present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.
[0058] like Figure 1 As shown, an embodiment of one aspect of the present invention provides a real-scene three-dimensional lightweight method for railway scenes, comprising the following steps:
[0059] S1. Use unmanned oblique photography to obtain real-life 3D image data within the preset area of the railway main body, including: according to the designed flight altitude of 100-150m, ground resolution (GSD) ≤3cm, heading overlap of 80%, lateral overlap of 70%, to ensure the accuracy of 3D reconstruction. Cover the main railway project and a range of 150m on each side, use the grid route + key area surround mode to obtain multi-view image photos, and record real-time position and posture data through the POS system. Use 3D reconstruction software to perform multi-view image matching and 3D reconstruction, and output the real-life 3D model data of the railway area in OSGB format. The data includes the main railway project and the main railway facilities and external environment data within 150m on one side of the railway. This process corresponds to Figure 2 Drone oblique photography in the flowchart shown.
[0060] S2. Pre-process the acquired real-scene 3D image data to remove noise data, including using outlier detection point cloud analysis algorithm to remove airborne suspended objects and manually review key areas to ensure that there are no omissions within the railway limit. Figure 2 The reconstruction and preprocessing process of the model, including the removal of floating objects and OSGB after floating object removal;
[0061] Among them, the specific detection process of the outlier detection point cloud analysis algorithm is as follows:
[0062] (1) Calculate K-distance and reachable distance:
[0063] K-distance K_D for point p i The distance to its kth nearest neighbor;
[0064] Reachable distance R_D (p i , p j )=max(k_D,||p i -p j ||);
[0065] ||p i -p j || represents two points p i and p j The Euclidean distance between
[0066] (2) Local reachability density (LRD)
[0067]
[0068] (3) Local outlier factor (LOF):
[0069]
[0070] If LOF (p i )>1.5, then pi The represented reality model block is the target to be deleted;
[0071] in, is the centroid of any real-scene 3D model block; For P i The centroid of the adjacent real-scene 3D model block, k is The total number of adjacent real-scene 3D model block centroids; i is the serial number of any centroid, j is the The sequence numbers of the centroids of adjacent real-life 3D model blocks.
[0072] S3, convert the format of the pre-processed 3D image data to obtain DOM data, input the DOM data into the trained deep learning classification model, perform ground feature category segmentation and semantic processing, and obtain individual model data of different categories and different blocks. Figure 2 The classification and model singulation process of the features in the dataset includes converting into DOM format - feature classification - obtaining category vectors; using the OSGB obtained by S2 to perform model segmentation - obtaining the object singulation OSGB model, where the singulation OSGB model includes the railway body, ancillary facilities, water bodies, vegetation, and artificial structures.
[0073] Specifically, the process involves inputting DOM data into a trained U-Net deep learning classification model, using the model to segment and semanticize the DOM into feature categories, editing the vectorized classification results in QGIS to correct incorrect classification boundaries and category information, editing each object's ID and category (type), and obtaining vector data for the object ID, category type, and regional ring coordinate strings (polygons) for each block. Using this partitioned vector data, the real-world 3D model is then segmented and processed into individual blocks, generating individualized model data for each category and block.
[0074] S4. Compress each type of monomer model data into partitions according to the weights dynamically obtained by classification. Figure 2 The formulation and algorithm strategy of compression partition weights in the project include weight formulation - generating weight files (including: main project, ancillary facilities, artificial structures, water bodies and vegetation). After each type of weight file is set, both surface compression (i.e., geometric compression) and texture compression are performed. The specific compression methods are as follows:
[0075] It should be noted that when compressing the data of each type of monomer model, both geometric compression and texture compression are performed on each category according to the type:
[0076] For geometric compression, vertex folding is used. First, vertex folding is performed in the 3D network. Vertex folding is a key operation in 3D networks. It aims to reduce the number of vertices in the model while preserving geometric features as much as possible, improving rendering efficiency and reducing storage costs. The specific process includes the following:
[0077] Select Vertex Pairs: Determine the vertices to be collapsed (V i ,V j ) and its target position new vertex V new .
[0078] Calculate the folding cost: Use the quadratic error matrix (QEM) to measure the impact of folding on the geometric error of the model.
[0079] Quadratic Error Matrix (QEM) calculation:
[0080] For each vertex v, calculate the plane equation of its associated surface ax+by+cz+d=0, the error matrix Q v for:
[0081]
[0082] New vertex V after folding new The error cost is:
[0083]
[0084] where Q i , Q j are the quadratic error matrices of Vi and Vj respectively. The smaller the value, the smaller the error introduced by folding.
[0085] Perform folding: V i Fold to the target position, update the vertex, edge and face structure of the mesh, and remove faces and edges that are degenerated due to folding.
[0086] Iterative simplification: Repeat the above steps until the mesh simplification meets the error threshold Error threshold It is calculated based on the weights dynamically obtained by classification L; L is the length of the diagonal of the bounding box; W final is the final weight.
[0087] The weights dynamically obtained by classification include the weights of each type of object set as follows:
[0088] The final weight W for each class of objects final By the static weight W static , patch density factor F density and the geometric complexity factor F complexity Dynamic Adjustment:
[0089]
[0090] The patch density factor is calculated using the following formula:
[0091]
[0092] in, N class is the number of faces in the current category, N total is the total number of faces, and the threshold is set to 30%.
[0093] The geometric complexity factor is calculated using the following formula:
[0094]
[0095] is the standard deviation of the local Gaussian curvature, The calculation window is the radius r = 0.1 × the length L of the diagonal of the bounding box.
[0096] The static weight of each type of object follows the following convention:
[0097] ① Main railway projects
[0098] set up =0.8, final weight W final Determined based on the face density factor and geometric complexity factor to ensure maximum accuracy and detail during model compression. A more conservative edge-folding triangle face compression algorithm is used, and an error threshold T is set to ensure that the geometric shape and key features of the main project are not destroyed. The specific calculation method is as follows:
[0099] The folding constraint condition is: when the Gaussian curvature K of vertex v satisfies:
[0100] And satisfy: L is executed when collapsing its associated edges.
[0101] in, are the global curvature mean and standard deviation, and L is the diagonal length of the envelope box.
[0102] For texture compression, a slightly lossy DXT5 compression algorithm is used to maintain the clarity and authenticity of the texture. The threshold standard T for DXT compression quality DXT =40*W final , data compression should satisfy PSNR>T DXT .
[0103] ② Ancillary facilities
[0104] set up =0.5, final weight W final Determined by the face density factor and geometric complexity factor. In the triangle face compression, the adaptive triangulation compression algorithm is used to set the error threshold T to ensure the accuracy of key components such as electrical and communication equipment. Specific calculation method: Triangulation adaptive error L is used to perform patch merging.
[0105] Texture compression uses a medium-level DXT3 lossy compression algorithm to reduce the amount of texture data to a certain extent while maintaining good visual effects. DXT =40*W final , data compression should satisfy PSNR>T DXT .
[0106] ③Artificial structures
[0107] Different weights are assigned according to the importance and function of specific facilities. =0.3, final weight W final Determined by the patch density factor and geometric complexity factor. Using the region growing clustering algorithm, the cluster radius r cluster calculate:
[0108]
[0109] V NN Point V i The closest point, when the normal vector angle θ < 15°, the area change rate δ after merging area When the value is less than 20%, clustering algorithm is executed. Texture compression adopts DXT3 compression strategy to further reduce the amount of model data. The threshold standard of DXT compression quality is T DXT =40*W final , data compression should satisfy PSNR>T DXT .
[0110] ④ Natural landforms such as water bodies and vegetation
[0111] Different weights are assigned according to the importance and function of specific facilities. =0.1, final weight W final Determined by the patch density factor and the geometric complexity factor. A larger simplification ratio can be used for compression, and a region growing algorithm combined with a larger tolerance can be used to merge similar patches. NN Point V i The closest point, when the normal vector angle θ < 30 °, the area change rate δ after merging area When the percentage is less than 40%, the clustering algorithm is executed.
[0112] Texture compression can use the highly lossy DXT1 format compression algorithm. By adjusting the compression quality parameters, the amount of texture data can be greatly reduced without significantly affecting the overall visual effect. DXT =40*W final , data compression should satisfy PSNR>T DXT .
[0113] DXT compression quality assessment:
[0114] ,MSS is the root mean square error of texture compression.
[0115] S5. Construct a dynamic LOD system based on octree according to different category partitions; see Figure 2 The differentiated LOD partition compression process in the , where the original LOD level (0-25) is retained for the railway main engineering model, the 0-22 level is retained for the auxiliary facilities model, the 0-20 level is retained for the artificial structures model, and only the 0-15 level is retained for the natural features model. The specific LOD level calculation method is as follows:
[0116]
[0117] Where L is the side length of the bounding box, D is the minimum unit size, and the LOD level retention rules are as follows Table 1:
[0118] Table 1 LOD level retention rules
[0119] .
[0120] S6. Based on the established dynamic LOD system, a spatial index tree is used to generate a unique identifier for each block, an R-tree spatial index is established, and a multi-resolution model is used to fuse the seams of adjacent blocks to merge and optimize the block data. Figure 2 The data merging optimization in includes building spatial index tree structure, multi-resolution model fusion and data integration optimization;
[0121] Using an improved linear octree (LOCT) encoding method, the management unit is divided into 100m×100m grids. A four-dimensional index (x, y, z, type) is established to implement spatial-attribute joint retrieval. A unique UUID identifier is generated for each block and an R-tree spatial index is established. The specific encoding rules are as follows:
[0122]
[0123] Among them, each level octant number OctantID s [0,7], is the total number of LOD levels, and s is the block number of the spatial index tree.
[0124] Determine whether the Euclidean distance between any two adjacent spatial block models exceeds a limit value; if the limit value is exceeded, insert transition triangles and adjust the Euclidean distance between the two adjacent spatial block models to meet the requirement of being less than the limit value;
[0125] The topology-preserving boundary matching TopoJSON algorithm is used to process the seams of adjacent blocks. The specific calculation method is as follows:
[0126] B i ,B j It is two adjacent spatial block models (Block). Chunking The set of boundary points.
[0127] : Block Any fixed point on the boundary, with coordinates (x v ,y v , z v ).
[0128] : Block The theoretical matching point on the boundary corresponding to v has the coordinates (x v ,y v , z v ).
[0129] The maximum allowable error of fixed-point alignment is set to 0.001m.
[0130] For any adjacent block B i and B j , must meet the following requirements:
[0131]
[0132] That is, block B i Each vertex V on the boundary, in the adjacent block B j There must be a vertex V' on the boundary of the , and the Euclidean distance between the two does not exceed the threshold .
[0133] If there is a vertex pair (v, v') that does not meet the above conditions, a transition triangle needs to be inserted. The specific steps are as follows:
[0134] Define the offset vector ,like , it needs to be corrected.
[0135] The coordinates of v and v' are adjusted by the least squares method to minimize the offset:
[0136]
[0137] Subject to
[0138] where v original ,v' original is the original fixed point coordinate.
[0139] 3) Apply vertex remapping technology to unify the coordinate system and convert the vertex coordinates of each block model to the global coordinate system:
[0140]
[0141] in, is the original coordinate, R is the block rotation matrix, O block is the origin of the block local coordinate system, is the translation of the block in the global coordinate system.
[0142] Calculate the bounding box intersection of all blocks and determine the global origin , N is the total number of blocks.
[0143] Carry out coordinate transformation and check the coordinate difference after quantization of adjacent block boundaries 。 If not satisfied, recheck other adjacent blocks
[0144] The InstancedMesh technology is used to merge redundant vertex data, and an adaptive texture atlas merging strategy is adopted to generate a 2048×2048 composite texture atlas.
[0145] 4) Data integration optimization, improved fixed-point cache optimization and layered detail transition
[0146] Implement Vertex Buffer Optimization (VBO) to reorganize the geometry data. Build the vertex-triangle adjacency list:
[0147] represents any vertex, l represents the vertex number of the vertex-triangle;
[0148] Calculate vertex scores:
[0149]
[0150] is the area of the triangle; Age(v) is the number of unused steps since the last visit to the vertex, and k is the cache capacity. Always select the vertex with the highest current score to add to the cache and update the adjacency list. Generate an optimized index buffer and output the new index sequence I optimized, ensuring that adjacent triangles share vertices. To verify ACMR, the requirement is that the ACMR is better than 1.5.
[0151]
[0152] Use instanced rendering technology to handle repeated components, component hash calculation, and calculate a unique identifier for each Mesh:
[0153] ;
[0154] Indicates the encryption level, is the vertex data, For index data, The ID of the material file.
[0155] Instantiation is initiated when the following conditions are met:
[0156] ≥0.1
[0157] Construct a LOD Transition parameter matrix to ensure visual continuity. Define the viewing distance threshold and set the LOD level switching distance based on the model's bounding sphere radius R:
[0158]
[0159] LOD i is the i-th layer LOD; for The maximum number of layers.
[0160] Define the transition interval [d start ,d end ]:
[0161]
[0162] Calculation of mixing factor α:
[0163]
[0164] is a smooth interpolation function, d is Interpolation that generates natural transitions between.
[0165] Obviously, the above embodiments are merely examples for clarity of explanation and are not intended to limit the implementation methods. Those skilled in the art will readily appreciate that other variations or modifications based on the above descriptions are possible. It is not necessary and impossible to enumerate all implementation methods here. Obvious variations or modifications arising therefrom remain within the scope of protection of the present invention.
Claims
1. A real-scene 3D lightweight method for railway scenes, characterized by: The following steps are involved: S1. Using unmanned oblique photography to obtain real-scene three-dimensional image data within a preset area including the main railway body; S2, pre-processing the acquired real-scene 3D image data to remove noise data; S3. Convert the format of the pre-processed 3D image data to obtain DOM data, input the DOM data into the trained deep learning classification model, perform feature category segmentation and semantic processing, and obtain individual model data of different categories and different blocks; S4. Compress each type of monomer model data into partitions according to the weights dynamically obtained by classification; calculate the final weight W of each type of object according to the following formula final; ; Among them, W static is the static weight, F density is the patch density factor, F complexity The geometric complexity factor is used to perform geometric compression and texture compression on each category according to the type. The geometric compression uses the vertex folding method to calculate whether the original cost of the new vertex after folding meets the error threshold. , the error threshold Calculate based on the weights dynamically obtained by classification: L; L is the length of the diagonal of the bounding box; W final is the final weight; Patch density factor F density The calculation is done using the following formula: in, Nclass is the number of faces in the current category, Ntotal is the total number of faces, and the threshold is set to 30%; Geometric complexity factor F complexity The calculation is done using the following formula: is the standard deviation of the local Gaussian curvature, is the mean; S5. Construct a dynamic LOD system based on octree according to different category partitions; S6. Based on the established dynamic LOD system, a spatial index tree is used to generate a unique identifier for each block, an R-tree spatial index is established, and a multi-resolution model is used to fuse the seams of adjacent blocks to merge and optimize the block data.
2. The real-scene 3D lightweight method for railway scenes according to claim 1 is characterized in that: In S2, the acquired real-scene 3D image data is preprocessed to remove noise data, including using an outlier detection method to remove airborne objects, wherein the outlier detection method includes: Calculate the distance from the centroid p of any real-scene 3D model block to its Kth nearest neighbor, denoted as K-distance; Calculate the reachable distance R_D based on K-distance; Calculate the local reachability density LRD based on the reachable distance R_D ( ); Calculate the local outlier factor based on the local reachability density LRD ; According to the set threshold, when the local outlier factor When the value is greater than the set threshold, the current real scene module is determined to be deleted; otherwise, the real scene module is retained; in, is the centroid of any real-scene 3D model block; For P i The centroid of the adjacent real-scene 3D model block, k is the centroid of P i The total number of adjacent real-scene 3D model block centroids; i is the serial number of any centroid, j is the number of the centroid with P i The sequence numbers of the centroids of adjacent real-life 3D model blocks.
3. The real-scene 3D lightweight method for railway scenes according to claim 1 is characterized in that: In S3, the deep learning classification model is trained based on the labeled samples; Use QGIS to edit the vector classification results, edit the ID and category of each object, and obtain the vector data of the object ID, category type and regional ring coordinate string polygon of different blocks; Using the partition vector data, the real-scene 3D model is divided into blocks and processed individually to obtain individual model data of different categories and blocks.
4. The real-scene 3D lightweight method for railway scenes according to claim 1 is characterized in that: In S5, a dynamic LOD system based on octree is constructed according to different category partitions; the LOD level is calculated according to the following formula: Where L is the side length of the bounding box and D is the minimum unit size.
5. The real-scene 3D lightweight method for railway scenes according to claim 1 is characterized in that: In S6, the spatial index tree is used to generate a unique identifier for each block and an R-tree spatial index is established, which includes the following steps: Adopting the improved linear octree encoding, the management unit is divided into 100m×100m grids, and a four-dimensional index (x, y, z, type) is established to realize space-attribute joint retrieval; Generate a unique UUID identifier for each block and build an R-tree spatial index; The improved linear octree encoding rules are as follows: Among them, each level octant number ϵ[0,7], is the total number of LOD levels, and s is the block number of the spatial index tree.
6. The real-scene 3D lightweight method for railway scenes according to claim 1 is characterized in that: In S6, the multi-resolution model fusion is used to process the seams of adjacent blocks, including: Determine whether the Euclidean distance between any two adjacent spatial block models exceeds a limit value; if the limit value is exceeded, insert transition triangles and adjust the Euclidean distance between the two adjacent spatial block models to meet the requirement of being less than the limit value; The vertex remapping algorithm shown below is used to unify the coordinate system and transform the vertex coordinates of each block model into the global coordinate system: Among them, R is the block rotation matrix, O block is the origin of the block local coordinate system, is the translation of the block in the global coordinate system; is the original coordinate; Calculate the bounding box intersection of all blocks and determine the global origin ; N is the total number of blocks; Carry out coordinate transformation and check whether the coordinate difference after quantization of adjacent block boundaries meets the coordinate difference ; If not satisfied, recheck other adjacent blocks; When the conditions are met, redundant vertex data are merged and an adaptive texture atlas merging strategy is adopted to generate a composite texture atlas.
7. The real-scene 3D lightweight method for railway scenes according to claim 1 is characterized in that: The merging and optimizing of the block data includes: Construct a vertex-triangle adjacency list of the following form: Calculate the vertex score; ; represents any vertex, l represents the vertex number of the vertex-triangle; Always select the vertex with the highest current score to add to the cache and update the adjacency list; Generate optimized index buffer and output new index sequence I optimized , ensuring that adjacent triangles share vertices; constructing layered detail transition LOD parameter matrix to ensure visual continuity.
Citation Information
Patent Citations
A cluster batch optimization and adjustment system for real-life 3D model processing
CN119762705A
News scene three-dimensional reconstruction and visualization method based on multi-source remote sensing data
CN119904592A