Multi-factor exponential decay three-dimensional model precision control and loading method and system

By dynamically calculating the tile screen space error using a multi-factor exponential decay method, the problems of slow data loading and poor visualization effects during 3D model loading on the Web client are solved. This achieves a rendering effect with high detail near the ground and low detail at a distance, improving data loading efficiency and rendering performance.

CN121053274AActive Publication Date: 2025-12-02SUZHOU IND PARK SURVEYING MAPPING & GEOINFORMATION CO LTD

Patent Information

Application Number
CN202511587364.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-11-03
Publication Date
2025-12-02
Estimated Expiration
2045-11-03

AI Technical Summary

Technical Problem

Existing technologies suffer from slow data loading, sluggish interactive operations, and poor visualization effects when loading 3D models on the web. In particular, when the user's viewport range increases significantly, the network transmission pressure is high, the loading time is extended, and it is difficult to meet the needs of real-time interaction. Furthermore, existing LOD control strategies fail to effectively consider changes in the horizon and camera pose, resulting in inconsistencies in details between foreground and background.

Method used

A multi-factor exponential decay method is adopted, which dynamically calculates the screen space error of the tile based on distance, height and camera tilt angle by coordinating decay density, height decay coefficient and decay adjustment coefficient. The tile accuracy gradient decay is achieved by using exponential square decay model, which renders high detail in near-ground scenes and low detail in far-distance scenes.

Benefits of technology

Precise control over the number and accuracy of tiles within the viewport improves data loading efficiency and rendering performance, while ensuring visualization effects, shortening the first screen loading time, and enhancing the rendering performance of system resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121053274A_ABST
    Figure CN121053274A_ABST
Patent Text Reader

Abstract

The invention discloses a multi-factor exponential decay three-dimensional model precision control and loading method and system, and is used for loading a three-dimensional model based on a tile data service, and the multi-factor exponential decay three-dimensional model precision control and loading method comprises the steps: based on the tile data service, according to a current viewpoint, obtaining a root node as a current tile node; traversing child nodes of the current tile node, and screening visible child node tiles of the current scene; determining a screen space error corresponding to each visible sub-node tile based on the current viewpoint height, the distance between the current viewpoint and each visible sub-node tile and the inclination angle; and loading the tiles based on the screen space errors corresponding to the visible child node tiles. According to the method, the visualization effect is ensured, and the data loading efficiency and rendering performance are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of 3D model loading and rendering technology, specifically a method and system for controlling and loading 3D models with multi-factor exponential decay. Background Technology

[0002] With the rapid development of fields such as 3D geographic information systems, digital twins, and smart cities, real-time rendering of massive 3D models on the web has become a key technology. Although the web currently has the ability to load 3D models, the larger the data volume, the higher the requirements for hardware performance. Even with relatively advanced GPUs and processors, problems such as slow data loading, sluggish interactive operations, poor visualization effects, and scene crashes may occur, thereby reducing the user experience and weakening the practicality of real-world 3D scene applications.

[0003] To address this, the industry has proposed 3D tile data as a key technology. By dividing 3D models into multi-resolution tiles according to spatial rules and combining metadata description and hierarchical organization mechanisms, it enables streaming loading and progressive rendering of data, becoming the core carrier for efficient 3D model services.

[0004] However, when the user viewport range increases significantly, even with frustum culling and occlusion culling, the total amount of tile data that needs to be loaded and rendered within the viewport remains enormous. This results in high network transmission pressure and significantly extended loading time, making it difficult to meet the needs of real-time interaction. Current mainstream Level of Detail (LOD) control strategies rely on global scheduling based on the tile's base screen space error and screen space error threshold. This approach only considers model geometric errors and camera distance, neglecting the effects of horizon and camera pose changes. This can lead to a mismatch between near and far details. Distant, non-critical areas that should be loaded with low-precision tiles may be loaded with excessively high-precision data, causing unnecessary network requests and memory overhead. Alternatively, near, visually critical areas may be loaded with low-precision tiles, resulting in a blurry effect and poor visualization. Summary of the Invention

[0005] To overcome the shortcomings of existing technologies, this invention provides a method and system for controlling and loading the accuracy of 3D models using multi-factor exponential decay. This method utilizes three parameters—coordinated decay density, height decay coefficient, and decay adjustment coefficient—to dynamically calculate the tile screen space error based on multiple factors such as distance, height, and camera tilt angle. It also employs an exponential square decay model to achieve a gradient decay effect in tile accuracy, resulting in high detail rendering for near-ground scenes and low detail rendering for distant scenes. This allows for precise control of the number and accuracy of tiles within the viewport, ensuring both visualization quality and improved data loading efficiency and rendering performance.

[0006] To achieve the above objectives, the technical solution adopted by this invention is: a multi-factor exponential decay three-dimensional model accuracy control and loading method, used for loading three-dimensional models based on tile data services, comprising:

[0007] Based on the tile data service, the root node is obtained as the current tile node according to the current viewpoint;

[0008] Iterate through the child nodes of the current tile node and filter out the visible child tiles in the current scene;

[0009] Based on the current viewpoint height, the distance between the current viewpoint and each visible child node tile, and the tilt angle, confirm the screen space error corresponding to each visible child node tile;

[0010] Tiles are loaded based on the screen space error corresponding to each visible child node tile.

[0011] The above technical solution achieves high detail in near-ground scenes and low detail in far-distance scenes. This allows for precise control over the number and accuracy of tiles within the viewport, ensuring both visualization quality and improved data loading efficiency and rendering performance.

[0012] Furthermore, the method of loading tiles based on the screen space error corresponding to each visible child node tile includes:

[0013] Set the screen space error threshold;

[0014] The screen space error of each visible child node tile is compared with the screen space error threshold. If the screen space error is greater than the screen space error threshold, the visible child node tile is added to the rendering queue. If the screen space error is less than the screen space error threshold, the visible child node tile is not rendered.

[0015] Tiles in the rendering queue are loaded based on the screen space error corresponding to each visible child node tile.

[0016] Furthermore, the determination of the screen space error corresponding to each visible child node tile based on the current viewpoint height, the distance between the current viewpoint and each visible child node tile, and the tilt angle includes:

[0017] Obtain the tile boundary volume of the root node, and calculate the height range of the tile set based on the boundary volume;

[0018] Based on the preset height attenuation coefficient, viewpoint height, viewpoint tilt angle, and the height range of the tile set, the horizon factor h is calculated. factor ;

[0019] Based on the horizon factor h factor Calculate the screen space error attenuation density d based on the preset baseline attenuation density. comp ;

[0020] Based on the preset attenuation adjustment coefficient and screen space error attenuation density d comp The dynamic screen space error optimization value (SSE) of visible child node tiles is calculated using an exponential squared decay model. error ;

[0021] Calculate the underlying screen space error (SSE) of visible child node tiles. base ;

[0022] Based on the aforementioned basic screen space error SSE base and Dynamic Screen Space Error Optimization Value (SSE) error Calculate the screen space error of the visible child node tiles.

[0023] Furthermore, obtaining the root node tile boundary volume and calculating the tile set height range based on the boundary volume includes:

[0024] Determine the type of the tile boundary volume. If the tile boundary volume is a geographic region type, directly obtain the minimum height h from the boundary volume data. min and maximum height h max ;

[0025] If the tile boundary volume is a directed bounding box type, extract the Z-axis half-length vector, calculate the magnitude of the Z-axis half-length vector as the Z-axis half-height, and the method for calculating the height range of the tile set is as follows:

[0026] Minimum height h min = Center point ZZ towards half height, maximum height h max = Center point Z + Z-axis half height;

[0027] If the tile boundary volume is a boundary sphere type, the method for calculating the tile set height range after obtaining the bounding box sphere radius is as follows:

[0028] Minimum height h min = Center of sphere Z - Radius of sphere, Maximum height h max = Center of the sphere Z + radius of the sphere.

[0029] Furthermore, the horizon factor h is calculated based on a preset height attenuation coefficient, viewpoint height, viewpoint tilt angle, and the height range of the tile set. factor include:

[0030] Calculate the attenuation starting height threshold h close =h min +(h max -h min )×h falloff , where h falloff Indicates the height attenuation coefficient;

[0031] Calculate the attenuation termination height threshold h far =h max ;

[0032] Calculate the height interpolation factor , where h camera The value represents the viewpoint height, and clamp(x, a, b) represents the interval constraint function, which restricts x to the interval [a, b].

[0033] The calculated perspective influence factor p = 1.0 - , where d camera Let u represent the unit vector in the camera direction, and let u represent the unit vector in the upward direction. = ;

[0034] Horizon factor h factor = p × (1.0 - t).

[0035] Furthermore, the horizon factor h factor Calculate the screen space error attenuation density d based on the preset baseline attenuation density. comp include:

[0036] Calculate the screen space error attenuation density d comp =d base ×h factor , where d base Indicates the baseline attenuation density;

[0037] The attenuation adjustment coefficient and screen space error attenuation density d are based on a preset attenuation adjustment coefficient. comp The dynamic screen space error optimization value (SSE) of visible child node tiles is calculated using an exponential squared decay model. error include:

[0038] The dynamic screen space error optimization value of the visible child node tiles , where α f d represents the attenuation adjustment coefficient. t This represents the distance from the camera to the child node, where e is the base of the natural logarithm.

[0039] Furthermore, the calculation of the underlying screen space error SSE of the visible child node tiles... base include:

[0040] Basic screen space error , where P s S represents the geometric error of the model. h The height of the canvas is represented by pixels, f represents the current camera's field of view, and d represents the height of the canvas in pixels. t This represents the distance from the camera to its child nodes;

[0041] The basis of the screen space error SSE base and Dynamic Screen Space Error Optimization Value (SSE) error The calculation of the screen space error of visible child node tiles includes:

[0042] It can be seen that the screen space error of the child node tile is g = SSE base -SSE error .

[0043] Furthermore, the step of traversing the child nodes of the current tile node and filtering out the visible child node tiles of the current scene includes:

[0044] The view frustum of the 3D scene is generated based on the current viewpoint parameters. It is then determined whether the bounding box of the tile object intersects with or contains the view frustum. If the bounding box of the tile object intersects with or contains the view frustum, the tile object is within the visible range. If the bounding box of the tile object does not intersect with or contain the view frustum of the scene object, the tile object is outside the visible range.

[0045] A multi-factor exponential decay three-dimensional model accuracy control and loading system, used to execute the above-mentioned multi-factor exponential decay three-dimensional model accuracy control and loading method, including:

[0046] The data processing module is used to acquire 3D model data, perform tile conversion processing, generate tile data, and set screen space error thresholds.

[0047] The filtering module is used to obtain the root node as the current tile node based on the generated tile data and the current viewpoint, and to traverse the child nodes of the current tile node to filter out the visible child node tiles of the current scene.

[0048] The calculation module is used to determine the screen space error corresponding to each visible child node tile based on the current viewpoint height, the distance between the current viewpoint and each visible child node tile, and the tilt angle.

[0049] The generation module is used to load tiles based on the screen space corresponding to each visible child node tile.

[0050] Furthermore, it also includes a judgment module, which is used to compare the screen space error of each visible child node tile with the screen space error threshold. If the screen space error is greater than the screen space error threshold, the visible child node tile is added to the rendering queue. If the screen space error is less than the screen space error threshold, the visible child node tile is not rendered.

[0051] The generation module loads tiles from the rendering queue based on the screen space error corresponding to each visible child node tile.

[0052] By employing the above technical solutions, the beneficial effects of the present invention are as follows:

[0053] 1. The multi-factor exponential decay 3D model precision control and loading method disclosed in this application achieves dynamic calculation of tile screen space error based on multiple factors such as distance, height and camera tilt angle through three parameters: collaborative decay density, height decay coefficient and decay adjustment coefficient. It also uses the exponential square decay model to achieve the tile precision gradient decay effect, that is, the rendering detail is high in near-ground scenes and low in far-distance scenes. This allows for precise control of the number and precision of tiles in the viewport, which not only ensures the visualization effect, but also improves data loading efficiency and rendering performance.

[0054] To make the above and other objects, features and advantages of the present invention more apparent and understandable, preferred embodiments are described below in detail with reference to the accompanying drawings. Attached Figure Description

[0055] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the 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.

[0056] Figure 1 This is a schematic diagram of the overall process of the present invention.

[0057] Figure 2 This is a schematic diagram of the process for applying the present invention to 3DTiles;

[0058] Figure 3 yes Figure 2 A flowchart illustrating the sub-steps within the main steps;

[0059] Figure 4 This is the rendering effect without using this technology to load 3DTiles. Figure 1 ;

[0060] Figure 5 This is the rendering effect without using this technology to load 3DTiles. Figure 2 ;

[0061] Figure 6 This is a rendering of 3DTiles loaded using this technology;

[0062] Figure 7 This is a comparison chart showing the ability to load 3DTiles using the technology of this invention and without it.

[0063] The image labels in the above images are as follows: 1. Low quality area; 2. Medium quality area; 3. High quality area. Detailed Implementation

[0064] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0065] It should be noted that in the description of this invention, the terms "first," "second," etc., are used only for descriptive purposes and to distinguish similar objects; there is no order between them, nor should they be construed as indicating or implying relative importance. Furthermore, in the description of this invention, unless otherwise stated, "a plurality of" means two or more.

[0066] Example: This example discloses a method for controlling and loading the accuracy of a three-dimensional model with multi-factor exponential decay, such as... Figure 1 As shown, it includes the following steps:

[0067] S1: Acquire 3D model data, perform tile conversion processing to generate tile data, and based on the generated tile data, obtain the root node as the current tile node according to the current viewpoint;

[0068] S2: Traverse the child nodes of the current tile node and filter out the visible child tiles in the current scene;

[0069] S3: Based on the current viewpoint height, the distance between the current viewpoint and each visible child node tile, and the tilt angle, confirm the screen space error corresponding to each visible child node tile;

[0070] S4: Load tiles based on the screen space error corresponding to each visible child node tile.

[0071] The above technical solution achieves high detail in near-ground scenes and low detail in far-distance scenes. This allows for precise control over the number and accuracy of tiles within the viewport, ensuring both visualization quality and improved data loading efficiency and rendering performance.

[0072] It should be noted that the viewpoint is the camera's shooting position. The viewpoint height is the camera height, and the tilt angle between the viewpoint and each visible child node tile is the tilt angle between the camera and each visible child node tile.

[0073] Wherein, S: Based on the current viewpoint height, the distance between the current viewpoint and each visible child node tile, and the tilt angle, the screen space error corresponding to each visible child node tile is determined, including:

[0074] Obtain the tile boundary volume of the root node, and calculate the height range of the tile set based on the boundary volume;

[0075] Based on the preset height attenuation coefficient, viewpoint height, viewpoint tilt angle, and the height range of the tile set, the horizon factor h is calculated. factor ;

[0076] Based on the horizon factor h factor Calculate the screen space error attenuation density d based on the preset baseline attenuation density. comp ;

[0077] Based on the preset attenuation adjustment coefficient and screen space error attenuation density d comp The dynamic screen space error optimization value (SSE) of visible child node tiles is calculated using an exponential squared decay model. error ;

[0078] Calculate the underlying screen space error (SSE) of visible child node tiles. base ;

[0079] Based on the aforementioned basic screen space error SSE base and Dynamic Screen Space Error Optimization Value (SSE) error Calculate the screen space error g of the visible child node tiles.

[0080] In some feasible embodiments, S4: Loading tiles based on the screen space error corresponding to each visible child node tile includes:

[0081] Set the screen space error threshold ρ;

[0082] Compare the screen space error g of each visible child node tile with the screen space error threshold ρ. If g > ρ, add the visible child node tile to the rendering queue. If g < ρ, do not render the visible child node tile.

[0083] The tiles in the rendering queue are loaded based on the screen space error g corresponding to each visible child node tile.

[0084] The above technical solution utilizes three parameters—coordinated attenuation density, height attenuation coefficient, and attenuation adjustment coefficient—to achieve dynamic calculation of tile screen spatial error based on multiple factors such as distance, height, and camera tilt angle. It also employs an exponential square attenuation model to achieve a tile precision gradient attenuation effect, resulting in high detail rendering for near-ground scenes and low detail rendering for distant scenes. This allows for precise control of the number and precision of tiles within the viewport, ensuring both visualization quality and improved data loading efficiency and rendering performance.

[0085] The screen space error threshold ρ is a preset minimum screen space error. When the calculated screen space error g corresponding to the visible child node tile is less than ρ, it means that the visible child node tile is too far from the viewpoint and can be left unloaded, thereby further improving the data loading efficiency.

[0086] It should be noted that this application is applicable to various 3D model tile data services, including but not limited to 3DTiles, I3S (Indexed3D Scene Layer), S3M (Spatial 3D Model), etc.

[0087] This embodiment uses a tilt model data service in 3DTiles format as an example. In some feasible embodiments, such as... Figure 2 As shown, based on the 3DTiles tilt model data service, a root node is generated as the current tile node according to the current viewpoint, and a screen space error threshold ρ is set.

[0088] A view frustum of the 3D scene is generated based on the current viewpoint parameters. All child nodes of the current tile node are traversed. It is determined whether the bounding box of the tile object intersects with or contains the view frustum. If they do, the tile object is within the visible range; otherwise, it is outside the visible range. The visible child tiles of the current scene are then selected as visible child tiles.

[0089] The specific confirmation process for the screen space error g of each visible child node tile is as follows: Figure 3 As shown.

[0090] Obtain the tile boundary volume of the current root node, determine the type of the tile boundary volume, and calculate the height range of the tile set based on the tile boundary volume type.

[0091] In the processing of 3D Tiles tile set data, obtaining the boundary volume of the root node tile refers to extracting the basic bounding volume information describing the spatial extent of the entire dataset by parsing the JSON metadata of the tile set. This boundary volume can be categorized into three types based on its geometric structure: geographic region, directed bounding box, and sphere. The geographic region type defines the latitude, longitude, and altitude coordinates of the boundary geographic region, with the data structure: West longitude, South latitude, East longitude, North latitude, minimum altitude, and maximum altitude. The directed bounding box is defined by 12 parameters, with the data structure: center point (X,Y,Z), X-axis semi-length vector (X,Y,Z), Y-axis semi-length vector (X,Y,Z), and Z-axis semi-length vector (X,Y,Z). The sphere is defined by 4 parameters, with the data structure: sphere center X, sphere center Y, sphere center Z, and radius.

[0092] If the tile boundary volume is a geographic region type, the minimum height h can be obtained directly from the boundary volume data. min and maximum height h max .

[0093] If the tile boundary volume is a directed bounding box type, extract the Z-axis half-length vector, calculate the magnitude of the Z-axis half-length vector as the Z-axis half-height, and the method for calculating the height range of the tile set is as follows:

[0094] Minimum height h min = Center point ZZ towards half height, maximum height h max = Center point Z + Z towards half height.

[0095] If the tile boundary volume is a boundary sphere type, the method for calculating the tile set height range after obtaining the bounding box sphere radius is as follows:

[0096] Minimum height h min = Center of sphere Z - Radius of sphere, Maximum height h max = Center of the sphere Z + radius of the sphere.

[0097] The horizon factor h is calculated based on the height attenuation coefficient, viewpoint height, camera tilt angle, and the height range of the tile set. factor Among them, the horizon factor h factor The range is [0.0, 1.0], used to dynamically optimize the baseline attenuation density, thereby affecting the strength of the tile accuracy gradient attenuation effect. Horizon factor h factor The closer it is to 1.0, the more relaxed the rendering precision requirements for tiles will be, skipping the loading and calculation of fine sub-tiles and reducing resource consumption. Horizon factor h factor The calculation specifically includes the following sub-steps:

[0098] Calculate the attenuation initiation height threshold, i.e., the critical height h at which the high precision transitions to low precision. close :

[0099] h close =h min +(h max -h min )×h falloff ;

[0100] Among them, h falloff The height attenuation coefficient is used to determine the height of the tile set where the attenuation density begins to decrease, and its value can range from 0 to 1. It is continuously adjusted through experimentation to achieve the desired effect. In this embodiment, the height attenuation coefficient is 0.25.

[0101] Calculate the attenuation termination height threshold, i.e., use the lowest possible starting height. This occurs when the viewpoint height exceeds the maximum height h of the tile set boundary volume.max At this point, it means the camera is above the highest terrain point within the tile. The entire tile set is now completely below the camera, and high-precision detail rendering is no longer needed. Therefore, the maximum height value h of the tile set's height range is... max h, the attenuation termination height threshold far , i.e. h far =h max .

[0102] The height interpolation factor t is calculated based on the real-time camera height, using a normalized height interpolation factor t to quantify the relative position of the viewpoint height with respect to the tile height. This establishes a linear relationship between the height attenuation intensity and the viewpoint height. The calculation formula is as follows:

[0103] ;

[0104] Among them, h camera The value represents the viewpoint height. The function `clamp(x, a, b)` represents the interval constraint function, which restricts x to the interval [a, b], that is, it constrains the height interpolation factor `t` to the closed interval [0.0, 1.0].

[0105] The viewpoint influence factor *p* is calculated, which is the influence factor of the angle between the camera direction and the vertical direction. This quantifies the impact of the viewpoint tilt angle on the tile accuracy gradient attenuation effect. When the camera is oriented nearly horizontally, the closer the line of sight and the vertical direction are to a right angle, the closer the viewpoint influence factor is to 1, thus strengthening the tile accuracy gradient attenuation effect. Conversely, when the camera is oriented nearly vertically downwards or upwards, the viewpoint influence factor is closer to 0, thus weakening the tile accuracy gradient attenuation effect. The calculation formula for this step is as follows:

[0106] p = 1.0 - ;

[0107] Where d camera Let u represent the unit vector in the camera direction, and let u represent the unit vector in the upward direction. = ;in, Represents the unit vector of the camera direction. This represents the unit vector in the upward direction. × represents the dot product operator, which calculates the dot product of the camera direction vector and the upward vector. θ represents the magnitude of a vector, i.e., the length of the vector, and θ is the angle between two vectors. This represents the absolute value function, which is the absolute value of the dot product.

[0108] The horizon factor h is calculated based on the height interpolation factor t and the viewpoint influence factor p. factor The calculation formula is as follows:

[0109] h factor= p × (1.0 - t).

[0110] Based on the horizon factor h factor Optimize the baseline attenuation density and calculate the final screen space error attenuation density. The calculation formula is as follows:

[0111] d comp =d base ×h factor ;

[0112] Where, d base This represents the reference attenuation density, which is used to control the attenuation strength of distance to screen spatial errors.

[0113] Its numerical range can be 0 to 1. Through continuous adjustments via experimentation, the desired effect can be achieved. In this embodiment, the baseline attenuation density is 0.001.

[0114] Obtain the distance to the current camera ion node and calculate the underlying screen space error (SSE) of that child node. base The calculation formula is as follows:

[0115] ;

[0116] Among them, P s S represents the geometric error of the model. h The height of the canvas is represented by pixels, f represents the current camera's field of view, and d represents the height of the canvas in pixels. t This represents the distance from the camera to the child node.

[0117] Based on the exponential squared decay model, decay adjustment coefficient, and screen space error decay density d comp Calculate the optimized dynamic screen space error (SSE) value for the current child node tile. error This achieves the tile accuracy gradient attenuation effect. The calculation formula is as follows:

[0118] ;

[0119] Where, d t α represents the distance from the camera to its child nodes, e is the base of the natural logarithm, and α is the distance from the camera to its child nodes. f This represents the attenuation adjustment coefficient, a global scaling factor used to adjust the overall magnitude of the tile screen spatial error. Its value range can be 0 to +∞. Through continuous experimentation and adjustment, the desired effect is achieved. In this embodiment, the attenuation adjustment coefficient is 24.

[0120] The screen space error g of the current child node tile is calculated using the following formula:

[0121] g = SSE base -SSEerror ;

[0122] The screen space error g of the child node tile is compared with the set screen space error threshold ρ. If g > ρ, the child node tile is added to the rendering queue; if g < ρ, the tile is not rendered.

[0123] Once the screen space error g of all visible child node tiles has been compared with the screen space error threshold ρ, the system loads the tiles in the rendering queue based on the screen space error g corresponding to each visible child node tile.

[0124] When the method of this invention is used to load 3D tiles, such as Figure 6 As shown, this renders a situation where closer tiles retain higher detail, while farther tiles retain lower detail. For ease of understanding, this embodiment will... Figure 6 The rendering is divided into three areas from far to near: low-quality area 1, medium-quality area 2, and high-quality area 3. While ensuring rendering quality, this significantly reduces the initial screen loading time. A shorter initial screen loading time generally means that system resources can be allocated to rendering calculations more quickly, resulting in better rendering performance. For example... Figure 7 This is a comparison between using the method of this invention and not using this method. Without using this method, global high precision is achieved, with a screen space error threshold of 16. Figure 4 As shown, this resulted in unnecessary high-precision data being loaded for distant tiles. The viewport contained 150 tiles, while the cache contained 322 tiles. The total cache memory (geometric and texture memory) totaled 1202.67MB, and the initial screen load time was 23 seconds. The large data volume and long loading time were significant. Meanwhile, the global low-precision data had a screen space error threshold of 40. Figure 5 As shown, although the number of tiles in the viewport decreased to 43, the number of tiles in the cache decreased to 99, the total memory in the cache decreased to 532.57MB, and the first-screen loading time was shortened to 7 seconds, the accuracy of nearby tiles was sacrificed, reducing visual quality. After adopting the method of this invention, when the screen space error threshold is set to 16, under the same data and viewing angle, the number of tiles in the viewport decreased to 47, the number of tiles in the cache decreased to 75, the total memory in the cache was only 360.74MB, the first-screen loading time was shortened to 8 seconds, and the scene exhibited a rendering effect where nearby tiles were clear and distant tiles were blurred, as shown in the image. Figure 6 The method of this invention not only ensures better visualization of 3D tiles, but also effectively reduces the amount of data, significantly improving data loading efficiency and rendering performance.

[0125] This application also discloses a multi-factor exponential decay three-dimensional model accuracy control and loading system, used to execute the above-described multi-factor exponential decay three-dimensional model accuracy control and loading method, including:

[0126] The data processing module is used to acquire 3D model data, perform tile conversion processing, generate tile data, and set screen space error thresholds.

[0127] The filtering module is used to obtain the root node as the current tile node based on the generated tile data and the current viewpoint, and to traverse the child nodes of the current tile node to filter out the visible child node tiles of the current scene.

[0128] The calculation module is used to determine the screen space error corresponding to each visible child node tile based on the current viewpoint height, the distance between the current viewpoint and each visible child node tile, and the tilt angle.

[0129] The generation module is used to load tiles based on the screen space corresponding to each visible child node tile.

[0130] In some feasible embodiments, the multi-factor exponential decay 3D model accuracy control and loading system further includes a judgment module, which is used to compare the screen space error of each visible child node tile with the screen space error threshold. If the screen space error is greater than the screen space error threshold, the visible child node tile is added to the rendering queue. If the screen space error is less than the screen space error threshold, the visible child node tile is not rendered.

[0131] At this time, the generation module loads the tiles in the rendering queue based on the screen space error corresponding to each visible child node tile.

[0132] This application also discloses a storage medium, which is a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a multi-core processor, it implements the above-described method for controlling and loading the accuracy of a three-dimensional model with multi-factor exponential decay.

[0133] Specific embodiments have been used to illustrate the principles and implementation methods of this invention. The descriptions of the embodiments above are only for the purpose of helping to understand the method and core ideas of this invention. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this invention. Therefore, the content of this specification should not be construed as a limitation of this invention.

Claims

1. A method for controlling and loading the accuracy of a three-dimensional model using multi-factor exponential decay, used for loading three-dimensional models based on tile data services, characterized in that... include: Based on the tile data service, the root node is obtained as the current tile node according to the current viewpoint; Iterate through the child nodes of the current tile node and filter out the visible child tiles in the current scene; Based on the current viewpoint height, the distance between the current viewpoint and each visible child node tile, and the tilt angle, confirm the screen space error corresponding to each visible child node tile; Tiles are loaded based on the screen space error corresponding to each visible child node tile.

2. The method for controlling and loading the accuracy of a three-dimensional model with multi-factor exponential decay as described in claim 1, characterized in that, The method of loading tiles based on the screen space error corresponding to each visible child node tile includes: Set the screen space error threshold; The screen space error of each visible child node tile is compared with the screen space error threshold. If the screen space error is greater than the screen space error threshold, the visible child node tile is added to the rendering queue. If the screen space error is less than the screen space error threshold, the visible child node tile is not rendered. Tiles in the rendering queue are loaded based on the screen space error corresponding to each visible child node tile.

3. The method for controlling and loading the accuracy of a three-dimensional model with multi-factor exponential decay as described in claim 1 or 2, characterized in that, The determination of the screen space error corresponding to each visible child node tile based on the current viewpoint height, the distance between the current viewpoint and each visible child node tile, and the tilt angle includes: Obtain the tile boundary volume of the root node, and calculate the height range of the tile set based on the boundary volume; Based on the preset height attenuation coefficient, viewpoint height, viewpoint tilt angle, and the height range of the tile set, the horizon factor h is calculated. factor ; Based on the horizon factor h factor Calculate the screen space error attenuation density d based on the preset baseline attenuation density. comp ; Based on the preset attenuation adjustment coefficient and screen space error attenuation density d comp The dynamic screen space error optimization value (SSE) of visible child node tiles is calculated using an exponential squared decay model. error ; Calculate the underlying screen space error (SSE) of visible child node tiles. base ; Based on the aforementioned basic screen space error SSE base and Dynamic Screen Space Error Optimization Value (SSE) error Calculate the screen space error of the visible child node tiles.

4. The method for controlling and loading the accuracy of a three-dimensional model with multi-factor exponential decay as described in claim 3, characterized in that, The process of obtaining the root node tile boundary volume and calculating the tile set height range based on the boundary volume includes: Determine the type of the tile boundary volume. If the tile boundary volume is a geographic region type, directly obtain the minimum height h from the boundary volume data. min and maximum height h max ; If the tile boundary volume is a directed bounding box type, extract the Z-axis half-length vector, calculate the magnitude of the Z-axis half-length vector as the Z-axis half-height, and the method for calculating the height range of the tile set is as follows: Minimum height h min = Center point ZZ towards half height, maximum height h max = Center point Z + Z-axis half height; If the tile boundary volume is a boundary sphere type, the method for calculating the tile set height range after obtaining the bounding box sphere radius is as follows: Minimum height h min = Center of sphere Z - Radius of sphere, Maximum height h max = Center of the sphere Z + Radius of the sphere.

5. The method for controlling and loading the accuracy of a three-dimensional model with multi-factor exponential decay as described in claim 4, characterized in that, The horizon factor h is calculated based on a preset height attenuation coefficient, viewpoint height, viewpoint tilt angle, and the tile set height range. factor include: Calculate the attenuation starting height threshold h close =h min +(h max -h min )×h falloff , where h falloff Indicates the height attenuation coefficient; Calculate the attenuation termination height threshold h far =h max ; Calculate the height interpolation factor , where h camera The value represents the viewpoint height, and clamp(x, a, b) represents the interval constraint function, which restricts x to the interval [a, b]. The calculated perspective influence factor p = 1.0 - , where d camera Let u represent the unit vector in the camera direction, and let u represent the unit vector in the upward direction. = ; Horizon factor h factor = p × (1.0 - t).

6. The method for controlling and loading the accuracy of a three-dimensional model with multi-factor exponential decay as described in claim 5, characterized in that, The horizon factor h factor Calculate the screen space error attenuation density d based on the preset baseline attenuation density. comp include: Calculate the screen space error attenuation density d comp =d base ×h factor , where d base Indicates the baseline attenuation density; The attenuation adjustment coefficient and screen space error attenuation density d are based on a preset attenuation adjustment coefficient. comp The dynamic screen space error optimization value (SSE) of visible child node tiles is calculated using an exponential squared decay model. error include: The dynamic screen space error optimization value of the visible child node tiles , where α f d represents the attenuation adjustment coefficient. t This represents the distance from the camera to the child node, where e is the base of the natural logarithm.

7. The method for controlling and loading the accuracy of a three-dimensional model with multi-factor exponential decay as described in claim 6, characterized in that, The calculation of the base screen space error SSE of the visible child node tiles is described. base include: Basic screen space error , where P s S represents the geometric error of the model. h The height of the canvas is represented by pixels, f represents the current camera's field of view, and d represents the height of the canvas in pixels. t This represents the distance from the camera to its child nodes; The basis of the screen space error SSE base and Dynamic Screen Space Error Optimization Value (SSE) error The calculation of the screen space error of visible child node tiles includes: It can be seen that the screen space error of the child node tile is g = SSE base -SSE error .

8. The method for controlling and loading the accuracy of a three-dimensional model with multi-factor exponential decay as described in claim 1, characterized in that, The process of traversing the child nodes of the current tile node and filtering out the visible child node tiles of the current scene includes: The view frustum of the 3D scene is generated based on the current viewpoint parameters. It is then determined whether the bounding box of the tile object intersects with or contains the view frustum. If the bounding box of the tile object intersects with or contains the view frustum, the tile object is within the visible range. If the bounding box of the tile object does not intersect with or contain the view frustum of the scene object, the tile object is outside the visible range.

9. A multi-factor exponential decay three-dimensional model accuracy control and loading system, used to execute the multi-factor exponential decay three-dimensional model accuracy control and loading method according to any one of claims 4-8, characterized in that, include: The data processing module is used to acquire 3D model data, perform tile conversion processing, generate tile data, and set screen space error thresholds. The filtering module is used to obtain the root node as the current tile node based on the generated tile data and the current viewpoint, and to traverse the child nodes of the current tile node to filter out the visible child node tiles of the current scene. The calculation module is used to determine the screen space error corresponding to each visible child node tile based on the current viewpoint height, the distance between the current viewpoint and each visible child node tile, and the tilt angle. The generation module is used to load tiles based on the screen space corresponding to each visible child node tile.

10. The accuracy control and loading system for a multi-factor exponentially decaying three-dimensional model as described in claim 9, characterized in that, It also includes a judgment module, which is used to compare the screen space error of each visible child node tile with the screen space error threshold. If the screen space error is greater than the screen space error threshold, the visible child node tile is added to the rendering queue. If the screen space error is less than the screen space error threshold, the visible child node tile is not rendered. The generation module loads tiles from the rendering queue based on the screen space error corresponding to each visible child node tile.

Citation Information

Patent Citations

  • Viewpoint-based three-dimensional city scene data dynamic scheduling method

    CN111968212A

  • Control system and method based on BIM model engine and equipment association interaction

    CN115758034A

  • Construction method and device of digital twin platform base

    CN118941726A

  • Urban digital twinning scene LOD processing method

    CN119228975A

  • Image rendering method, apparatus, and device

    US20250166349A1

Cited By

  • On-demand customized loading system for high-precision map tiles and implementation method of on-demand customized loading system

    CN121765027A

  • Point cloud rendering method and system

    CN122115669A