A distributed parallel processing and loading method for large scene three-dimensional model data
By identifying spatial aggregation regions and material change points in large-scale 3D models, dynamically matching computing resources, filtering out low-change surface chains, and optimizing the loading order, the problems of resource waste and low response efficiency in traditional methods are solved, achieving efficient allocation of computing resources and loading optimization.
Patent Information
- Application Number
- CN202511463818.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-14
- Publication Date
- 2026-02-03
- Estimated Expiration
- 2045-10-14
AI Technical Summary
Traditional distributed parallel processing and loading methods for large-scale 3D models suffer from several problems, including failure to consider spatial aggregation relationships between facets leading to boundary intersections or material discontinuities, unreasonable allocation of computational resources, redundant mesh processing, resource waste during loading, and low response efficiency.
By identifying regions where the spatial aggregation degree is greater than the face density threshold, and dividing the spatial region by combining material change points, the computing power and bandwidth capacity of the computing nodes are dynamically matched. Triangular facet chains with small changes in area and vertex density are filtered out, the mesh data is reconstructed and compressed, and the loading priority is calculated according to the user's perspective. The loading process is optimized by combining a local caching mechanism.
It improves the accuracy and efficiency of computing resource allocation, reduces the size of model data, improves the efficiency of visualization scheduling response, shortens loading response time, and reduces cache resource usage.
Smart Images

Figure CN120931471B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of three-dimensional image processing technology, and in particular to a distributed parallel processing and loading method for large-scene three-dimensional model data. Background Technology
[0002] The field of 3D image processing technology is an interdisciplinary area of computer graphics and computer vision that studies how to acquire, represent, process, and display information about objects in 3D space from the real world or virtual environments. It involves key technologies such as 3D data modeling, mesh reconstruction, texture mapping, geometric transformation, spatial indexing, graphics rendering, and compression coding, and is commonly used to achieve high-fidelity reconstruction and interactive display of complex scenes. Its processing objects include, but are not limited to, point cloud data, 3D mesh models, and voxel data acquired through methods such as LiDAR, photogrammetry, and structured light. The processing goals are typically to improve the accuracy of 3D model reconstruction, visual realism, rendering efficiency, and storage and transmission performance. 3D image processing is widely used in fields such as digital twins, smart cities, virtual simulation, industrial design, medical imaging, geographic information systems, and cultural heritage preservation.
[0003] The distributed parallel processing and loading method for large-scale 3D model data aims to address the problems of massive data volume, high computational overhead, and slow loading response faced during the processing and loading of ultra-large-scale 3D scene models. Its purpose is to perform processing operations such as segmentation, scheduling, compression, transmission, and reconstruction of large-scale 3D scene models through a distributed parallel architecture, achieving collaborative utilization of multi-node resources, thereby improving processing efficiency and loading speed while ensuring visualization accuracy.
[0004] Traditional loading methods fail to consider spatial aggregation relationships and material changes between facets when segmenting models, leading to boundary intersections or material discontinuities in the segmented regions. When allocating computing resources, they only consider data volume without taking into account node bandwidth capacity and computing power, resulting in resource waste where high-computation-overhead nodes are assigned low-computation-overhead tasks. Furthermore, the lack of stability screening for triangular facet chains during mesh processing leads to redundant mesh structures and limited texture compression effects after model compression. The fixed strategy used during loading without assessing the degree of intersection between the user's current viewpoint and the screen area results in delayed response in near-field areas or priority loading of distant data, leading to resource waste. Finally, the lack of a hit mechanism in local caching causes redundant transmission delays and reduced system response efficiency when frequently loading the same region. Summary of the Invention
[0005] To address the technical problems existing in the prior art, this invention provides a distributed parallel processing and loading method for large-scene 3D model data, including the following steps:
[0006] To achieve the above objectives, the present invention adopts the following technical solution: a distributed parallel processing and loading method for large-scene 3D model data, comprising the following steps:
[0007] S1: Obtain the set of face coordinates, normal vectors and material identifiers of multiple large-scale 3D models, identify regions where the spatial aggregation degree is greater than the face density aggregation threshold, extract material change points by combining the material identifier set, segment the spatial aggregation region based on the material change points, and generate the region data subset partitioning result.
[0008] S2: Based on the data subset partitioning results of the region, match the statistical value of the number of patches with the average texture size to the floating-point computing power and network bandwidth capacity of the computing nodes in the distributed architecture, construct the data subset allocation path table, and obtain the computing node allocation results;
[0009] S3: Call the data subset under each node in the computing node allocation result, filter out the triangular facet chains whose area value change range and vertex density value fluctuation range are lower than the error threshold, and perform principal component reconstruction and compression on the color channel value set to obtain the simplified compressed dataset at the node end;
[0010] S4: Based on the simplified compressed dataset at the node, calculate the screen space intersection area and distance value of the data subset. Construct a loading priority sequence table according to the condition that the area value is greater than the screen coverage area threshold and the distance value is less than the near-field loading distance, and obtain the loading scheduling priority result.
[0011] As a further embodiment of the present invention, the regional data subset partitioning result includes a spatial aggregation region boundary point set, a material cutting path index table, and a spatial bounding box set; the computing node allocation result includes a node ID mapping table, a data subset number list, and a computing resource scheduling strategy table; the node-side simplified compressed dataset includes triangular facet reconstructed mesh data, a compressed texture data block index, and a simplified mesh topology connection table; and the loading scheduling priority result includes a loading sequence index list, a viewpoint weight sorting value, and a loading scheduling mapping table.
[0012] As a further aspect of the present invention, the specific steps of S1 are as follows:
[0013] S101: Obtain the face coordinate set, normal vector set and material identifier set of multiple large-scale scene 3D models. Based on the vertex coordinates of each triangular face in the face coordinate set, identify the boundary common edge relationship of adjacent triangular faces in 3D space, call the angle change value between the common edge relationship and the normal vector, calculate the connection strength value between triangular faces, and generate spatial connection relationship information.
[0014] S102: Based on the connection strength value between each facet node and its adjacent facet in the spatial connection relationship information, perform spatial aggregation analysis on the facets, determine whether the number of adjacent facet nodes is greater than the baseline threshold for the number of adjacent triangle facets, filter the facet set whose number of adjacent facets is greater than the baseline threshold for the number of adjacent facets, and mark the position of the material identifier number change point in the corresponding facet set to obtain the facet material cutting reference set.
[0015] S103: Call the position of the number change point in the cutting reference set of the patch material, divide the aggregated patch set along the number change point, and construct a three-dimensional spatial bounding box index based on the obtained patch subsets. Organize the index table and coordinate sequence of the patch subsets through the bounding box index to obtain the regional data subset partitioning result.
[0016] As a further aspect of the present invention, the specific steps of S2 are as follows:
[0017] S201: Based on the triangular facet index table and texture file resolution information of each data subset in the region data subset division result, extract the total number of faces and texture size side length value in each subset, perform sample summation on the total number of faces in each subset, and perform interval arithmetic mean operation on the texture size side length value to obtain the facet texture calculation parameter set.
[0018] S202: Call the number of patches and the average size of the texture corresponding to each data subset in the patch texture calculation parameter set, and perform interval mapping calculation with the floating-point calculation capability and bandwidth capacity parameters of each computing node in the distributed architecture, determine whether the capability value of the computing node is greater than the mapping matching requirement value, and record the node number and the corresponding data subset number pair that meet the matching conditions to obtain the computing task mapping index table.
[0019] S203: Based on the information of each data subset and computing node number pair in the computing task mapping index table, construct a data scheduling list with node number as the main index and subset number as the secondary index, and generate the task allocation path order of each node based on the scheduling list to obtain the computing node allocation result.
[0020] As a further aspect of the present invention, the specific steps of S3 are as follows:
[0021] S301: Call the data subset under each computing node in the computing node allocation result, extract the triangular facet chain formed by continuous arrangement of shared edge relationships in each data subset, detect the difference in area value and the change value of vertex density of adjacent triangular facets in each triangular facet chain, and compare them with the area change amplitude threshold and the vertex density fluctuation threshold, filter the facet chain set whose double values are both less than the corresponding threshold, and obtain the facet chain filtering result;
[0022] S302: Based on the set of marked face chains in the face chain filtering results, the mesh structure in the data subset is eliminated and the connection topology is updated. After deleting the marked face chains, the connection edge data and vertex index table of the remaining triangular face set are extracted, and the face connection relationship is reorganized based on the topological boundary to generate a mesh reconstruction index table.
[0023] S303: Based on the boundary position index and the original texture file of the data subset in the mesh reconstruction index table, extract the red, green and blue channel value sets corresponding to the texture pixel values in different regions, construct the principal component feature matrix for each region channel set, and perform covariance decomposition reconstruction processing. Compress and encode the principal component matrix into reconstructed texture data, and merge the compressed texture data with the mesh reconstruction index table to establish a dataset, and obtain the node-end simplified compressed dataset.
[0024] As a further aspect of the present invention, the method for setting the area change amplitude threshold is specifically as follows: for a sample set of area value differences in a continuous triangular facet chain, the sum of the mean and standard deviation is calculated as the area change amplitude threshold.
[0025] The vertex density fluctuation threshold is set by sorting the distribution data of the density change values of vertices in a continuous triangular facet chain by percentile and taking the density fluctuation value corresponding to the median percentile as the vertex density fluctuation threshold.
[0026] As a further aspect of the present invention, the specific steps of S4 are as follows:
[0027] S401: Based on the spatial three-dimensional coordinate bounding box of each data subset in the simplified compressed dataset at the node end, obtain the coordinate information of the eight vertices of the bounding box, and combine the view frustum direction vector and viewpoint position coordinates of the user's current viewpoint to calculate the area of the overlapping intersection region between the bounding box and the view frustum under the two-dimensional screen projection. At the same time, calculate the Euclidean distance between the center point of the bounding box and the viewpoint position to obtain the set of viewpoint spatial measurement parameters.
[0028] S402: Call the screen space intersection area value and Euclidean distance value corresponding to each data subset in the view space measurement parameter set, determine whether the area value is greater than the screen coverage area threshold and whether the distance value is less than the near-field loading distance threshold, and record the data subset number and corresponding area value that satisfy the dual conditions, sort the numbers in descending order according to the area value, and generate a priority loading number sequence.
[0029] S403: Based on the order of the data subset numbers in the priority loading number sequence, construct a loading task sequence with the number order as the main index, assign a scheduling level identifier to the loading task sequence, map it to the corresponding task execution channel in the loading unit according to the scheduling level, and obtain the loading scheduling priority result.
[0030] As a further aspect of the present invention, the screen coverage area threshold is specifically set by calculating the sum of the average value and the area standard deviation based on the screen space intersection area value of each data subset as the screen coverage area threshold.
[0031] The specific method for setting the near-view loading distance threshold is to use the top 20 percentiles of the Euclidean distance values corresponding to each data subset in the viewpoint space as the near-view loading distance threshold.
[0032] The method for generating the priority loading number sequence includes arranging the numbering order in ascending order according to the corresponding Euclidean distance value when the area values are equal.
[0033] As a further aspect of the present invention, the method further includes the following steps:
[0034] S5: Call the data subset identifier of the first loading priority in the loading scheduling priority result, obtain the corresponding simplified compressed dataset entry according to the identifier, determine whether the entry exists in the local LRU cache table, if it exists, record the hit flag, if it does not exist, load the data and synchronize it to the local cache space based on the priority scheduling queue order, and generate local loading cache status data.
[0035] The local load cache status data includes a cache hit flag, a cache page index directory, and a list of loaded data entry numbers.
[0036] As a further aspect of the present invention, the specific steps of S5 are as follows:
[0037] S501: Call the identifier of the first-ranked data subset in the loading scheduling priority result, obtain the corresponding simplified compressed dataset entry number, search the cache page index directory in the local LRU cache table according to the number, determine whether the number exists in the current cache page index, if it exists, record the hit flag and mark the hit status, and obtain the cache hit status record table.
[0038] S502: Based on the data subset number marked as a miss in the cache hit status record table, extract the corresponding numbered mesh structure and texture data block from the simplified compressed dataset according to the order of the loading scheduling priority queue, write the extraction result into the local cache page free area, implement data synchronous writing and update the cache page index table, and generate a loading data writing index structure.
[0039] S503: Based on the number of the loaded entry, the loading position index and the hit flag bit written into the index structure according to the loaded data, construct the cache page status table of the local loading area, mark the proportion of valid data in the cache page and the most recent access timestamp value, call the marking result to construct the visualization mapping matrix of the scheduling feedback, and obtain the local loading cache status data.
[0040] Compared with the prior art, the advantages and positive effects of the present invention are as follows:
[0041] In this invention, spatial regions are divided by calculating the spatial aggregation degree of adjacent faces and combining it with material change points. This improves the structural compactness of region division while maintaining the consistency of material boundaries. The computing power and bandwidth capacity of computing nodes are dynamically matched according to the number of faces and texture size, enhancing the accuracy and efficiency of computing resource allocation. The model data scale is compressed by filtering out triangular face chains with small fluctuations in area and vertex density and performing mesh reconstruction. The loading priority is adjusted by combining the screen space intersection area and viewpoint distance calculated from the user's perspective, improving the visual scheduling response efficiency for the viewpoint. During the data loading process, duplicate loading is avoided by judging whether the local cache is hit, effectively shortening the loading response time and reducing the cache resource occupancy rate. Attached Figure Description
[0042] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0043] Figure 1 This is a schematic diagram of the steps of the present invention;
[0044] Figure 2 This is a detailed schematic diagram of S1 of the present invention;
[0045] Figure 3 This is a detailed schematic diagram of S2 of the present invention;
[0046] Figure 4 This is a detailed schematic diagram of S3 of the present invention;
[0047] Figure 5 This is a detailed schematic diagram of S4 of the present invention;
[0048] Figure 6 This is a detailed schematic diagram of S5 of the present invention. Detailed Implementation
[0049] The technical solution of the present invention will now be described with reference to the accompanying drawings.
[0050] In embodiments of the present invention, words such as "exemplarily," "for example," etc., are used to indicate that something is an example, illustration, or description. Any embodiment or design described as "exemplary" in the present invention should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of the word "exemplary" is intended to present the concept in a concrete manner. Furthermore, in embodiments of the present invention, the meaning expressed by "and / or" can be both, or either one.
[0051] In the embodiments of this invention, the terms "image" and "picture" may sometimes be used interchangeably. It should be noted that, without emphasizing the distinction between them, they convey the same meaning. Similarly, the terms "of," "corresponding (relevant)," and "corresponding" may sometimes be used interchangeably. It should be noted that, without emphasizing the distinction between them, they convey the same meaning.
[0052] In this embodiment of the invention, sometimes a subscript such as W1 may be written in a non-subscript form such as W1. When the difference is not emphasized, the meaning they express is the same.
[0053] To make the technical problems, technical solutions and advantages of the present invention clearer, a detailed description will be given below in conjunction with the accompanying drawings and specific embodiments.
[0054] Please see Figure 1 This invention provides a distributed parallel processing and loading method for large-scene 3D model data, including the following steps:
[0055] S1: Obtain the coordinate set, normal vector set, and material identifier set of multiple large-scale 3D models. Calculate the adjacency matrix based on the 3D spatial positional relationship of adjacent faces in the coordinate set. Use the normal vector set and adjacency matrix to determine the degree of spatial aggregation. Identify regions where the degree of spatial aggregation is greater than the face density aggregation threshold. Extract material change points by combining the material identifier set. Divide the spatial aggregation regions based on the material change points to generate the region data subset partitioning results.
[0056] S2: Based on the number of faces and the average texture size of each data subset in the regional data subset partitioning result, calculate the statistical value of the number of faces and the average texture size of the data subset, match the statistical value of the number of faces and the average texture size to the floating-point computing power and network bandwidth capacity of the computing nodes in the distributed architecture, construct the data subset allocation path table, and obtain the computing node allocation result.
[0057] S3: Call the data subset under each node in the computing node allocation result, extract the continuous triangular facet chain in each data subset, and filter the triangular facet chain whose area value change range and vertex density value fluctuation range are lower than the error threshold based on the area value change range and vertex density value fluctuation range in the continuous triangular facet chain. Delete the triangular facet chain whose area value change range and vertex density value fluctuation range are lower than the error threshold, and reconstruct the mesh structure. For the texture file of each data subset, extract the color channel value set by region, and perform principal component reconstruction and compression on the color channel value set to obtain the simplified and compressed dataset at the node end.
[0058] S4: Based on the spatial three-dimensional coordinate bounding box corresponding to each data subset in the simplified compressed dataset at the node end, combined with the view frustum direction vector and viewpoint distance vector of the user's current viewpoint, calculate the screen space intersection area and distance value of each data subset, call the screen space intersection area and distance value, and construct a loading priority sequence table according to the condition that the area value is greater than the screen coverage area threshold and the distance value is less than the near-field loading distance, to obtain the loading scheduling priority result;
[0059] S5: Call the identifier of the first loading priority data subset in the loading scheduling priority result, obtain the corresponding simplified compressed dataset entry based on the identifier, determine whether the entry exists in the local LRU cache table, if it exists, record the hit flag, if it does not exist, load the data based on the priority scheduling queue order and synchronize it to the local cache space, and generate local loading cache status data.
[0060] The regional data subset partitioning results include the spatial aggregation region boundary point set, material cutting path index table, and spatial bounding box set. The computation node allocation results include the node ID mapping table, data subset number list, and computation resource scheduling strategy table. The node-side simplified and compressed dataset includes triangular facet reconstructed mesh data, compressed texture data block index, and simplified mesh topology connection table. The loading scheduling priority results include the loading sequence index list, view weight sorting value, and loading scheduling mapping table. The local loading cache status data includes cache hit flag, cache page index directory, and list of loaded data entry numbers.
[0061] Please see Figure 2 The specific steps of S1 are as follows:
[0062] S101: Obtain the face coordinate set, normal vector set and material identifier set of multiple large-scale scene 3D models. Based on the vertex coordinates of each triangular face in the face coordinate set, identify the boundary common edge relationship of adjacent triangular faces in 3D space, call the angle change value between the common edge relationship and the normal vector, calculate the connection strength value between triangular faces, and generate spatial connection relationship information.
[0063] The facet coordinate set contains the coordinates of the three vertices of each triangular facet in a three-dimensional Cartesian coordinate system. For example, the vertex coordinates of triangular facet A are [(1.0, 2.0, 3.0), (1.5, 2.0, 3.5), (1.0, 2.5, 3.0)], and the vertex coordinates of triangular facet B are [(1.0, 2.0, 3.0), (1.5, 2.5, 3.5), (1.5, 2.0, 3.5)]. The normal vector set records the orientation of each triangular facet in three-dimensional space. For example, the normal vector of triangular facet A is (0, 0, 1), indicating that it faces the positive Z-axis direction. The material identifier set assigns an integer number to each facet to distinguish different surface materials. For example, the material identifier of triangular facet A is 101, representing glass, and the material identifier of triangular facet B is 102, representing concrete. When identifying the shared edge relationship between adjacent triangular facets in 3D space, the vertex coordinates of any two triangular facets are compared one by one. If two triangular facets share two identical vertex coordinates, then the two triangular facets are determined to have a shared edge relationship. In the example above, triangular facets A and B share vertices (1.0, 2.0, 3.0) and (1.5, 2.0, 3.5), therefore, triangular facets A and B are determined to be adjacent and share an edge. The angle change between the shared edge relationship and the normal vector is then calculated. Specifically, the normal vectors of the two triangular facets with a shared edge relationship are extracted, and the dot product of these two vectors is calculated. The angle between the two normal vectors is obtained using the inverse cosine function. For example, if the normal vector of triangular facet A is (0, 0, 1), and the normal vector of the adjacent triangular facet C is (0.707, 0, 0.707), then the angle between the two vectors is calculated to be 45 degrees. When calculating the connection strength between triangular facets, the cosine of the angle between their normal vectors is used as the basic connection strength. When the two normal vectors are in the same direction (angle 0 degrees, cosine 1), the connection strength is the highest. When the two normal vectors are in opposite directions (angle 180 degrees, cosine -1), the connection strength is the lowest. For example, if the angle between the normal vectors of triangular facets A and C is 45 degrees and the cosine is 0.707, then the connection strength is 0.707. The shared edge relationships of all identified triangular facet pairs, their corresponding normal vector angles, and the calculated connection strength values are structured and stored to generate spatial connection relationship information.
[0064] S102: Based on the connection strength value between each face node and its adjacent face in the spatial connection relationship information, perform spatial aggregation analysis on the face to determine whether the number of adjacent face nodes is greater than the baseline threshold for the number of adjacent face nodes of the triangle face. Filter the face set whose number of adjacent face nodes is greater than the baseline threshold for the number of adjacent face nodes, and mark the position of the material identifier number change point in the corresponding face set to obtain the face material cutting reference set.
[0065] The system iterates through spatial connectivity information. For a patch node N, it checks all patch nodes that share an edge with it and records the number as the adjacency count of patch node N. For example, if patch node N shares an edge with patch nodes N1, N2, and N3, then the adjacency count of patch node N is 3. When performing spatial aggregation analysis on patches, it checks if the adjacency count of a patch node is greater than the baseline threshold for the adjacency count of triangular patches. The baseline threshold for the adjacency count of triangular patches is set by statistically analyzing the adjacency counts of all patch nodes in the scene model to form a distributed dataset, and taking the value corresponding to the 75th percentile of the distributed dataset as the baseline threshold. For example, in a model containing 10,000 patches, if the adjacency count of all patches is found to be less than or equal to 5 for 75% of the patches, then the baseline threshold for the adjacency count of triangular patches is set to 5. When filtering the set of patches whose adjacency count is greater than the baseline threshold, patch nodes with an adjacency count greater than 5 are selected to form a preliminary set of patches. For example, if patch node P has 6 adjacencies, which is greater than the threshold of 5, then patch node P is added to the filtered patch set. Within the filtered patch set, for each patch node, its material identifier is checked against all its adjacent patch nodes. If a patch node's material identifier differs from any of its adjacent nodes, the shared edge between the current patch node and that adjacent node is marked as a change point in the material identifier. For example, if patch node P has a material identifier of 201 and its adjacent patch node Q has a material identifier of 305, the shared edge between P and Q is marked as a change point. All marked change points are then summarized to obtain the patch material cutting reference set.
[0066] S103: Call the position of the number change point in the facet material cutting reference set, divide the aggregated facet set along the number change point, and construct a three-dimensional spatial bounding box index based on the facet subset obtained by the division. Organize the index table and coordinate sequence of the facet subset through the bounding box index to obtain the regional data subset partitioning result;
[0067] The segmentation process proceeds along the marked points of change in number, breaking up the originally continuous set of faces. For example, in a set of 100 faces with 5 points of change in number, segmentation along these 5 points will result in 6 or more discontinuous subsets of faces. For each subset, a 3D bounding box index is constructed. This involves iterating through all vertex coordinates of all faces within each subset and finding the minimum and maximum values of all vertices along the X, Y, and Z axes. These six values (Xmin, Xmax, Ymin, Ymax, Zmin, Zmax) form the smallest cuboid that completely encloses the current subset—the bounding box. The index table and coordinate sequence of the subsets are organized using the bounding box index. Specifically, a data structure is created with the bounding box's coordinate range as the primary key and the original index list of all triangular faces constituting the subset and the coordinate sequence of all vertices as values. In this way, each subset of facets is represented by a compact bounding box and its internal data. The data structures obtained after processing all the facet subsets in the above way are then summarized to obtain the region data subset partitioning results.
[0068] Please see Figure 3 The specific steps of S2 are as follows:
[0069] S201: Based on the triangular facet index table and texture file resolution information of each data subset in the regional data subset partitioning result, extract the total number of faces and texture size side length values in each subset, perform sample summation statistics on the total number of faces in each subset, and perform interval arithmetic mean operation on the texture size side length values to obtain the facet texture calculation parameter set.
[0070] The texture file resolution information describes the size of the texture image applied to the region. For example, the texture file resolution for a data subset is 1024 pixels by 1024 pixels. When extracting the total number of faces within each subset, the number of numbers in the triangle face index table is counted directly. For example, if the index table of data subset A contains 5000 face numbers, then its total number of faces is 5000. When extracting the texture size side length value, it is obtained from the texture file resolution information. For a 1024 pixel by 1024 pixel texture, its side length value is 1024. The total number of faces in each subset is summed, i.e., the number of faces in all the divided data subsets is accumulated to obtain the total number of faces in the entire scene model. An interval arithmetic mean is calculated for the texture size side length values across all data subsets. For example, if there are three data subsets with texture size side lengths of 1024, 1024, and 2048 respectively, then the interval arithmetic mean is (1024 + 1024 + 2048) / 3, which gives a result of 1365.33. By integrating parameters such as the total number of faces in each data subset and the arithmetic mean of texture sizes across all data subsets, a set of face texture calculation parameters is obtained.
[0071] S202: Call the number of patches and the average size of the texture corresponding to each data subset in the patch texture calculation parameter set, and perform interval mapping calculation with the floating-point calculation capability and bandwidth capacity parameters of each computing node in the distributed architecture. Determine whether the capability value of the computing node is greater than the mapping matching requirement value, and record the node number and the corresponding data subset number pair that meet the matching conditions to obtain the computing task mapping index table.
[0072] The performance parameters of each computing node in the distributed architecture are obtained, specifically including the node's floating-point computing power (FLOPS) and bandwidth capacity (bps). For example, computing node C1 has a floating-point computing power of 200 GFLOPS and a bandwidth capacity of 10 Gbps. During interval mapping calculations, the processing requirements of data subsets are mapped to the capacity requirements of computing nodes. The number of faces primarily maps to the floating-point computing power requirement, while the average texture size parameter primarily maps to the bandwidth capacity requirement. The mapping relationship is determined by a preset transformation function based on analysis of a large amount of historical task data. For example, processing 1000 faces requires approximately 1 GFLOPS of computing power, and a texture size of 1024 sides requires approximately 0.5 Gbps of bandwidth during loading. For example, a data subset with 50,000 faces and a texture average size of 1024 has a mapping matching requirement of 50000 / 1000*1 = 50 GFLOPS for floating-point computing power and 1024 / 1024*0.5 = 0.5 Gbps for bandwidth capacity. To determine if a computing node's capability exceeds the mapping matching requirement, the actual capability parameters of the computing node are compared item by item with the required value mapped from the data subset. For computing node C1 (200 GFLOPS, 10 Gbps) and the aforementioned data subset (requiring 50 GFLOPS, 0.5 Gbps), since 200 > 50 and 10 > 0.5, computing node C1's capability is determined to be greater than the mapping matching requirement. The node numbers that meet the matching conditions and their corresponding data subset numbers are recorded to form a pairing list, for example, [(C1, data subset A), (C2, data subset B), (C1, data subset C)]. All matching pairs that meet the criteria are summarized to obtain the computation task mapping index table.
[0073] S203: Based on the information of each data subset and computing node number pair in the computing task mapping index table, construct a data scheduling list with node number as the main index and subset number as the secondary index, and generate the task allocation path order of each node based on the scheduling list to obtain the computing node allocation result;
[0074] The construction process uses node numbers as the primary index, organizing all subset numbers assigned to the same computing node together. For example, if the computing task mapping index table is [(C1, A), (C2, B), (C1, C)], then the constructed data scheduling list is: {C1: [A, C], C2: [B]}. Based on the data scheduling list, a task allocation path order is generated for each node. The rule for generating the order is to arrange the subset numbers in ascending order within the subset number list for each node. If A's number is 1 and C's number is 3, then the task allocation path order for node C1 is [1, 3]. The task allocation path order for node C2 is [B's number]. All computing nodes and their corresponding ordered task allocation paths are integrated to obtain the computing node allocation result.
[0075] Please see Figure 4 The specific steps of S3 are as follows:
[0076] S301: Call the data subset under each computing node in the computing node allocation result, extract the triangular facet chain formed by continuous arrangement of shared edge relationships in each data subset, detect the difference in area value and the change value of vertex density of adjacent triangular facets in each triangular facet chain, and compare it with the area change amplitude threshold and vertex density fluctuation threshold, filter the facet chain set whose double values are both less than the corresponding threshold, and obtain the facet chain filtering result;
[0077] The specific method for setting the area change threshold is as follows: for a sample set of area value differences in a continuous triangular facet chain, the sum of the mean and standard deviation is calculated as the area change threshold.
[0078] The specific method for setting the vertex density fluctuation threshold is to sort the distribution data of the density change values of vertices in a continuous triangular facet chain by percentile, and take the density fluctuation value corresponding to the median percentile as the vertex density fluctuation threshold.
[0079] A triangular facet chain is a series of triangular faces, where each facet (except for the first and last faces) shares one and only one edge with the two faces preceding and following it. The task is to detect the difference in area values and the change in vertex density among adjacent triangular faces in each chain. The area difference is calculated by taking the absolute value of the difference between the areas of two adjacent triangular faces. The change in vertex density is calculated by first determining the number of vertices per unit area of each triangular facet (i.e., vertex density), and then taking the absolute value of the difference in vertex densities between two adjacent triangular faces. The calculated area difference and vertex density change are then compared to an area change amplitude threshold and a vertex density fluctuation threshold, respectively. The area change amplitude threshold is set by randomly selecting several consecutive triangular facet chains when processing a subset of data, calculating the area difference of all adjacent faces in these chains, forming a sample set. The arithmetic mean and standard deviation of this sample set are then calculated, and their sum is used as the area change amplitude threshold. For example, if the mean of a sample set is 0.05 square meters and the standard deviation is 0.02, then the area variation threshold is set to 0.07 square meters. The vertex density fluctuation threshold is set by statistically analyzing the vertex density variation values in the sample patch chains to form a distribution data set. This data is then sorted in ascending order, and the density fluctuation value corresponding to the 50th percentile (i.e., the median) is taken as the vertex density fluctuation threshold. For example, if the median vertex density fluctuation value is 0.1 vertices per square meter, then the vertex density fluctuation threshold is set to 0.1. When filtering patch chain sets where both values are less than the corresponding threshold, the area difference between all adjacent patches in a patch chain must be less than 0.07 square meters, and all vertex density fluctuation values must be less than 0.1 vertices per square meter. Only patch chains that meet these two conditions will be filtered and marked. The marked patch chain sets from all data subsets are then summarized to obtain the patch chain filtering results.
[0080] S302: Based on the set of marked face chains in the face chain filtering results, the mesh structure in the data subset is eliminated and the connection topology is updated. After deleting the marked face chains, the connection edge data and vertex index table of the remaining triangular face set are extracted, and the face connection relationship is reorganized based on the topological boundary to generate a mesh reconstruction index table.
[0081] Iterate through all triangles in the data subset. If a triangle belongs to a set of marked facet chains, remove it from the triangle list of the data subset. After deleting the marked facet chains, update the mesh's connection topology. First, extract all connection edge data and vertex index tables from the remaining triangle facet sets. The connection edge data records which vertices constitute the endpoints of the edges, and the vertex index table records the unique number of each vertex. Reorganize the facet connections based on the topological boundaries. Specifically, check the new mesh boundaries created by facet deletion. Along these new boundaries, re-establish the connection information between adjacent faces, updating the previously generated spatial connection information. For example, two regions that were originally connected by deleted facet chains are now not directly connected, and the faces on their boundaries need to update their adjacency information. Integrate the updated vertex indices, edge data, and facet adjacency relationships to generate a mesh reconstruction index table.
[0082] S303: Based on the boundary position index and the original texture file of the data subset in the mesh reconstruction index table, extract the red, green and blue channel value sets corresponding to the texture pixel values in different regions, construct the principal component feature matrix for each region channel set, and perform covariance decomposition reconstruction processing. Compress and encode the principal component matrix into reconstructed texture data, and merge the compressed texture data with the mesh reconstruction index table to establish a dataset and obtain the node-end simplified compressed dataset.
[0083] The boundary location index indicates the region range corresponding to the reconstructed mesh on the original texture. For each region, the sets of values for the red, green, and blue color channels corresponding to its pixel values are extracted. For example, a 16x16 pixel region will yield three sets, each containing 256 values. For each region's red, green, and blue channel value sets, a principal component feature matrix is constructed. The construction process uses the three channel value sets as the three columns of the matrix, forming a 256-row, 3-column matrix. Covariance decomposition reconstruction is performed on this principal component feature matrix. First, the covariance matrix of the matrix is calculated, and then eigenvalue decomposition is performed on the covariance matrix to obtain eigenvalues and eigenvectors. The eigenvectors corresponding to the largest one or two eigenvalues are selected as principal component directions, and the original data is projected onto these principal component directions. The principal component matrix is compressed and encoded into reconstructed texture data, specifically by retaining the projected principal component components and principal component direction vectors. Finally, the compressed texture data is merged with the mesh reconstruction index table generated in the previous step to establish a new dataset structure. The datasets obtained after processing all data subsets in this way are aggregated to obtain a simplified and compressed dataset at the node end.
[0084] Please see Figure 5 The specific steps of S4 are as follows:
[0085] S401: Based on the spatial three-dimensional coordinate bounding box of each data subset in the simplified compressed dataset at the node end, obtain the coordinate information of the eight vertices of the bounding box, and combine the view frustum direction vector and viewpoint position coordinates of the user's current viewpoint to calculate the area of the overlapping intersection region between the bounding box and the view frustum under the two-dimensional screen projection. At the same time, calculate the Euclidean distance between the center point of the bounding box and the viewpoint position to obtain the set of viewpoint spatial measurement parameters.
[0086] The system obtains the view frustum parameters of the user's current viewpoint, including the view frustum direction vector and the viewpoint position coordinates. The view frustum is a frustum representing the camera's visible range in 3D space. When calculating the area of the intersection region between the bounding box and the view frustum under 2D screen projection, the coordinates of the eight vertices of the bounding box are first transformed to the 2D screen coordinate system through view transformation and projection transformation. Then, on the 2D screen, the area of the intersection polygon formed by the convex hull of the transformed eight points and the visible area of the screen is calculated. Simultaneously, the Euclidean distance between the center point of the bounding box and the viewpoint position is calculated. The coordinates of the center point of the bounding box can be obtained by averaging the coordinates of the centers of its six faces. The Euclidean distance is calculated by directly applying the distance calculation method between two points in 3D space. The screen projection intersection area and Euclidean distance calculated for each data subset are stored to obtain the viewpoint space metric parameter set.
[0087] S402: Call the screen space intersection area value and Euclidean distance value corresponding to each data subset in the view space measurement parameter set, determine whether the area value is greater than the screen coverage area threshold and whether the distance value is less than the near-field loading distance threshold, and record the data subset number and corresponding area value that meet the dual conditions. Sort the numbers in descending order according to the area value to generate a priority loading number sequence.
[0088] The screen coverage area threshold is set by calculating the sum of the average value and the standard deviation of the area based on the screen space intersection area value of each data subset as the screen coverage area threshold.
[0089] The specific method for setting the close-up loading distance threshold is to use the top 20 percentiles of the Euclidean distance values corresponding to each data subset in the viewpoint space as the close-up loading distance threshold.
[0090] The priority loading number sequence generation method includes arranging the numbering order in ascending order according to the corresponding Euclidean distance value when the area values are equal;
[0091] The system determines whether the area value is greater than the screen coverage area threshold and whether the distance value is less than the near-field loading distance threshold. The screen coverage area threshold is set by calculating the arithmetic mean and standard deviation of the screen space intersection area values of all visible data subsets in the current frame, and using the sum of these two values as the screen coverage area threshold. For example, if the average area of the current visible subset is 5000 square pixels and the standard deviation is 1500, then the threshold is set to 6500 square pixels. The near-field loading distance threshold is set by sorting the Euclidean distance values of all visible data subsets in the current frame in ascending order in viewpoint space, and taking the values in the top 20% as the near-field loading distance threshold. For example, if the 20th distance value of 100 visible subsets is 80 meters, then the threshold is set to 80 meters. The system records the data subset number and its corresponding area value that satisfy both conditions. For example, if the screen area of data subset D is 7000 square pixels (greater than 6500) and the distance is 60 meters (less than 80), then its number and area value are recorded. Sort all matching numbers in descending order based on their area values. If two sets have the same area value, then sort them in ascending order based on their corresponding Euclidean distance values. For example, if subset D has an area of 7000 and a distance of 60, and subset E has an area of 7000 and a distance of 50, then the sorting order would be E, D. This sorting process generates a priority loading number sequence.
[0092] S403: Based on the order of the data subset numbers in the priority loading number sequence, construct a loading task sequence with the number order as the main index, assign a scheduling level identifier to the loading task sequence, map it to the corresponding task execution channel in the loading unit according to the scheduling level, and obtain the loading scheduling priority result.
[0093] The loading task sequence is an ordered list with its primary index being its ranking in the priority sequence. For example, if the priority loading number sequence is [E, D, F], then the primary indices of the loading task sequence are 1, 2, and 3, corresponding to subsets E, D, and F, respectively. Each item in the loading task sequence is assigned a scheduling level identifier. The scheduling level identifier is determined based on its position in the sequence, with higher-ranking items assigned higher levels. For example, the top 10% of tasks in the sequence are assigned the "highest" level, 10% to 50% are assigned the "normal" level, and the rest are assigned the "low" level. Loading tasks are mapped to the corresponding task execution channels within the loading unit according to their scheduling levels. The loading unit has dedicated channels for handling tasks of different levels; for example, "highest" level tasks are sent to a separate, resource-priority execution channel. After all tasks are assigned to the appropriate channels according to their scheduling levels, the loading scheduling priority result is obtained.
[0094] Please see Figure 6 The specific steps of S5 are as follows:
[0095] S501: Call the identifier of the first-ranked data subset in the loading scheduling priority result, obtain the corresponding simplified compressed dataset entry number, search the cache page index directory in the local LRU cache table according to the number, determine whether the number exists in the current cache page index, if it exists, record the hit flag and mark the hit status, and obtain the cache hit status record table.
[0096] Retrieve the corresponding simplified compressed dataset entry number, which is the unique identifier of subset E in the node's simplified compressed dataset. Based on this number, search the local Least Recently Used (LRU) cache table for the cache page index directory. The search process involves checking a hash table or similar data structure to see if an entry with the subset E number as the primary key exists. Check if the number exists in the current cache page index. If the number is found in the index directory, it means the data is already in the cache; record a hit flag and mark the entry's status as "hit". For example, create a record table with one row of [subset E number, hit] and set the hit flag to 1. If not found, mark it as "miss" and set the hit flag to 0. Summarize the results of all search operations to obtain a cache hit status record table.
[0097] S502: Based on the data subset number marked as a miss in the cache hit status record table, extract the corresponding number of mesh structure and texture data block from the simplified compressed dataset according to the order of the loading scheduling priority queue, write the extraction result to the local cache page free area, implement data synchronous writing and update the cache page index table, and generate the loading data writing index structure.
[0098] The next miss in the queue is subset D. Extract the corresponding mesh structure and texture data block with number D from the simplified compressed dataset at the node. The extraction operation uses number D as an index to access the storage device and read the complete data block into memory. Write the extracted data block to the free area of the local cache page. Before writing, check the cache management module and request one or more consecutive free cache pages. Perform synchronous data writing, copying the data block from memory to the physical address of the requested cache page. After writing is complete, update the cache page index table, adding a new entry with the key being the number of subset D and the value being its storage location in the cache, data size, and other metadata. Record all miss data write operations and index update information in a structured manner to generate a data loading and writing index structure.
[0099] S503: Based on the number of the loaded entry, the loading position index and the hit flag bit of the loaded data written into the index structure, construct the cache page status table of the local loading region, mark the proportion of valid data in the cache page and the most recent access timestamp value, call the marking results to construct the visualization mapping matrix of the scheduling feedback, and obtain the local loading cache status data.
[0100] The table is used to mark the percentage of valid data in the cached pages and the most recent access timestamp value. The percentage of valid data refers to the ratio of the total amount of valid data currently stored in the cache to the total cache capacity. The most recent access timestamp records the last time each cached entry was accessed. The marking results are used to construct a visual mapping matrix for scheduling feedback. This matrix is a two-dimensional chart where rows and columns can represent different regions or time slices of the cache. The value or color of each element in the matrix represents the cache status of that region, such as the percentage of valid data or access frequency. Partial load cache status data is then obtained.
[0101] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.
Claims
1. A distributed parallel processing and loading method for large-scene 3D model data, characterized in that, Includes the following steps: S1: Obtain the set of face coordinates, normal vectors and material identifiers of multiple large-scale 3D models, identify regions where the spatial aggregation degree is greater than the face density aggregation threshold, extract material change points by combining the material identifier set, segment the spatial aggregation region based on the material change points, and generate the region data subset partitioning result. S2: Based on the data subset partitioning results of the region, match the statistical value of the number of patches with the average texture size to the floating-point computing power and network bandwidth capacity of the computing nodes in the distributed architecture, construct the data subset allocation path table, and obtain the computing node allocation results; S3: Call the data subset under each node in the computing node allocation result, filter out the triangular facet chains whose area value change range and vertex density value fluctuation range are lower than the error threshold, and perform principal component reconstruction and compression on the color channel value set to obtain the simplified compressed dataset at the node end; S4: Based on the simplified compressed dataset at the node, calculate the screen space intersection area and distance value of the data subset. According to the condition that the area value is greater than the screen coverage area threshold and the distance value is less than the near-field loading distance, construct a loading priority sequence table to obtain the loading scheduling priority result. The specific steps of S4 are as follows: S401: Based on the spatial three-dimensional coordinate bounding box of each data subset in the simplified compressed dataset at the node end, obtain the coordinate information of the eight vertices of the bounding box, and combine the view frustum direction vector and viewpoint position coordinates of the user's current viewpoint to calculate the area of the overlapping intersection region between the bounding box and the view frustum under the two-dimensional screen projection. At the same time, calculate the Euclidean distance between the center point of the bounding box and the viewpoint position to obtain the set of viewpoint spatial measurement parameters. S402: Call the screen space intersection area value and Euclidean distance value corresponding to each data subset in the view space measurement parameter set, determine whether the area value is greater than the screen coverage area threshold and whether the distance value is less than the near-field loading distance threshold, and record the data subset number and corresponding area value that satisfy the dual conditions, sort the numbers in descending order according to the area value, and generate a priority loading number sequence. S403: Based on the order of the data subset numbers in the priority loading number sequence, construct a loading task sequence with the number order as the main index, assign a scheduling level identifier to the loading task sequence, map it to the corresponding task execution channel in the loading unit according to the scheduling level, and obtain the loading scheduling priority result.
2. The distributed parallel processing and loading method for large-scene 3D model data according to claim 1, characterized in that, The regional data subset partitioning results include a spatial aggregation region boundary point set, a material cutting path index table, and a spatial bounding box set. The computing node allocation results include a node ID mapping table, a data subset number list, and a computing resource scheduling strategy table. The node-side simplified and compressed dataset includes triangular facet reconstructed mesh data, a compressed texture data block index, and a simplified mesh topology connection table. The loading scheduling priority results include a loading sequence index list, a viewpoint weight sorting value, and a loading scheduling mapping table.
3. The distributed parallel processing and loading method for large-scene 3D model data according to claim 1, characterized in that, The specific steps of S1 are as follows: S101: Obtain the face coordinate set, normal vector set and material identifier set of multiple large-scale scene 3D models. Based on the vertex coordinates of each triangular face in the face coordinate set, identify the boundary common edge relationship of adjacent triangular faces in 3D space, call the angle change value between the common edge relationship and the normal vector, calculate the connection strength value between triangular faces, and generate spatial connection relationship information. S102: Based on the connection strength value between each facet node and its adjacent facet in the spatial connection relationship information, perform spatial aggregation analysis on the facets, determine whether the number of adjacent facet nodes is greater than the baseline threshold for the number of adjacent triangle facets, filter the facet set whose number of adjacent facets is greater than the baseline threshold for the number of adjacent facets, and mark the position of the material identifier number change point in the corresponding facet set to obtain the facet material cutting reference set. S103: Call the position of the number change point in the cutting reference set of the patch material, divide the aggregated patch set along the number change point, and construct a three-dimensional spatial bounding box index based on the obtained patch subsets. Organize the index table and coordinate sequence of the patch subsets through the bounding box index to obtain the regional data subset partitioning result.
4. The distributed parallel processing and loading method for large-scene 3D model data according to claim 1, characterized in that, The specific steps of S2 are as follows: S201: Based on the triangular facet index table and texture file resolution information of each data subset in the region data subset division result, extract the total number of faces and texture size side length value in each subset, perform sample summation on the total number of faces in each subset, and perform interval arithmetic mean operation on the texture size side length value to obtain the facet texture calculation parameter set. S202: Call the number of patches and the average size of the texture corresponding to each data subset in the patch texture calculation parameter set, and perform interval mapping calculation with the floating-point calculation capability and bandwidth capacity parameters of each computing node in the distributed architecture, determine whether the capability value of the computing node is greater than the mapping matching requirement value, and record the node number and the corresponding data subset number pair that meet the matching conditions to obtain the computing task mapping index table. S203: Based on the information of each data subset and computing node number pair in the computing task mapping index table, construct a data scheduling list with node number as the main index and subset number as the secondary index, and generate the task allocation path order of each node based on the scheduling list to obtain the computing node allocation result.
5. The distributed parallel processing and loading method for large-scene 3D model data according to claim 1, characterized in that, The specific steps for S3 are as follows: S301: Call the data subset under each computing node in the computing node allocation result, extract the triangular facet chain formed by continuous arrangement of shared edge relationships in each data subset, detect the difference in area value and the change value of vertex density of adjacent triangular facets in each triangular facet chain, and compare them with the area change amplitude threshold and the vertex density fluctuation threshold, filter the facet chain set whose double values are both less than the corresponding threshold, and obtain the facet chain filtering result; S302: Based on the set of marked face chains in the face chain filtering results, the mesh structure in the data subset is eliminated and the connection topology is updated. After deleting the marked face chains, the connection edge data and vertex index table of the remaining triangular face set are extracted, and the face connection relationship is reorganized based on the topological boundary to generate a mesh reconstruction index table. S303: Based on the boundary position index and the original texture file of the data subset in the mesh reconstruction index table, extract the red, green and blue channel value sets corresponding to the texture pixel values in different regions, construct the principal component feature matrix for each region channel set, and perform covariance decomposition reconstruction processing. Compress and encode the principal component matrix into reconstructed texture data, and merge the compressed texture data with the mesh reconstruction index table to establish a dataset, and obtain the node-end simplified compressed dataset.
6. The distributed parallel processing and loading method for large-scene 3D model data according to claim 5, characterized in that, The specific method for setting the area change range threshold is as follows: for a sample set of area value differences in a continuous triangular facet chain, the sum of the mean and standard deviation is calculated as the area change range threshold. The vertex density fluctuation threshold is set by sorting the distribution data of the density change values of vertices in a continuous triangular facet chain by percentile and taking the density fluctuation value corresponding to the median percentile as the vertex density fluctuation threshold.
7. The distributed parallel processing and loading method for large-scene 3D model data according to claim 6, characterized in that, The screen coverage area threshold is set by calculating the sum of the average value and the area standard deviation based on the screen space intersection area value of each data subset as the screen coverage area threshold. The specific method for setting the near-view loading distance threshold is to use the top 20 percentiles of the Euclidean distance values corresponding to each data subset in the viewpoint space as the near-view loading distance threshold. The method for generating the priority loading number sequence includes arranging the numbering order in ascending order according to the corresponding Euclidean distance value when the area values are equal.
8. The distributed parallel processing and loading method for large-scene 3D model data according to claim 1, characterized in that, The method further includes the following steps: S5: Call the data subset identifier of the first loading priority in the loading scheduling priority result, obtain the corresponding simplified compressed dataset entry according to the identifier, determine whether the entry exists in the local LRU cache table, if it exists, record the hit flag, if it does not exist, load the data and synchronize it to the local cache space based on the priority scheduling queue order, and generate local loading cache status data. The local load cache status data includes a cache hit flag, a cache page index directory, and a list of loaded data entry numbers.
9. The distributed parallel processing and loading method for large-scene 3D model data according to claim 8, characterized in that, The specific steps of S5 are as follows: S501: Call the identifier of the first-ranked data subset in the loading scheduling priority result, obtain the corresponding simplified compressed dataset entry number, search the cache page index directory in the local LRU cache table according to the number, determine whether the number exists in the current cache page index, if it exists, record the hit flag and mark the hit status, and obtain the cache hit status record table. S502: Based on the data subset number marked as a miss in the cache hit status record table, extract the corresponding numbered mesh structure and texture data block from the simplified compressed dataset according to the order of the loading scheduling priority queue, write the extraction result into the local cache page free area, implement data synchronous writing and update the cache page index table, and generate a loading data writing index structure. S503: Based on the number of the loaded entry, the loading position index and the hit flag bit written into the index structure according to the loaded data, construct the cache page status table of the local loading area, mark the proportion of valid data in the cache page and the most recent access timestamp value, call the marking result to construct the visualization mapping matrix of the scheduling feedback, and obtain the local loading cache status data.
Citation Information
Patent Citations
Image rendering method and device, electronic equipment and storage medium
CN119444953A
WebGL-based cloud collaborative three-dimensional building modeling rendering method and system
CN120047595A