Real scene 3D model layered rendering optimization method and system based on distributed storage, and storage medium

By segmenting the real scene three-dimensional image into several layers and adopting distributed storage methods, the problem of low 3-dimensional real scene loading and rendering efficiency in the existing technology is solved, and the effect of fast rendering and efficient rendering efficiency is achieved.

CN114549761BActive Publication Date: 2025-06-06RUIYU SPACE TIME TECH (CHONGQING) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210181223.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-02-25
Publication Date
2025-06-06
Estimated Expiration
2042-02-25

AI Technical Summary

Technical Problem

The existing three-dimensional real-life loading and rendering methods are not suitable for the loading process of large-scale data, which causes the rendering engine to spend a long time completing rendering, and may even cause the device to be stuck, seriously hindering the efficiency of the display of three-dimensional models.

Method used

The real scene three-dimensional model layered rendering optimization method based on distributed storage is used to divide the real scene three-dimensional image into several layers and load it separately, and allocate it to each terminal device to store it through distributed storage. The rendering engine is used to load and render each layer in a preset manner.

Benefits of technology

The rapid rendering process of real-life three-dimensional models is realized, the rendering efficiency is improved, and the lag of large data 3-dimensional models in the rendering process is avoided.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114549761B_ABST
    Figure CN114549761B_ABST
Patent Text Reader

Abstract

The present invention discloses a real-scene three-dimensional model layered rendering optimization method and system, and storage medium based on distributed storage. The method first obtains real-scene three-dimensional data; then divides the real-scene three-dimensional data to obtain a plurality of layers; finally calls a rendering engine to load and render each layer in a preset manner; until all layers in the real-scene three-dimensional data are loaded. The real-scene three-dimensional model layered rendering optimization method and system, and storage medium provided by the present invention realize a fast rendering process of the real-scene three-dimensional model by dividing the real-scene three-dimensional model into a plurality of layers and rendering and loading them separately, and sets the size of the layers divided by the real-scene three-dimensional model according to the equipment requirements, thereby speeding up the rendering process and improving the rendering efficiency; effectively preventing the three-dimensional model with a large amount of data from freezing during the rendering process.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of building three-dimensional modeling, and in particular to a distributed storage-based real-scene three-dimensional model layered rendering optimization method and system, and a storage medium. Background Art

[0002] A large number of architectural design plans need to be provided in urban construction. Architectural design plans are generally virtually designed by 3D software. When evaluating architectural design plans, the overall effect of the architectural design plans needs to be quickly displayed. The amount of 3D image data designed by virtual 3D software is very large. Displaying 3D image data not only requires expensive hardware equipment support, but also different rendering engines are generally used in different computer devices due to different display device configurations. Due to the large amount of 3D model data, for example, a 3D real scene map of a city, or a 3D real scene map of the planning and design of a town, are all massive data. The existing 3D real scene loading and rendering methods are not suitable for the loading process of these large-volume data. The rendering engine may take a relatively long time to complete the rendering process, and the display device may even be stuck during the display process. These problems will seriously hinder the efficiency of 3D model display. In order to quickly load 3D models using ordinary hardware devices, a rendering optimization method that can smoothly display 3D models is required. Summary of the invention

[0003] In view of this, the purpose of the present invention is to provide a real-scene three-dimensional model layered rendering optimization method and system, and storage medium based on distributed storage. The method divides the real-scene three-dimensional image into several layers and loads them separately, thereby realizing a fast rendering process of the real-scene three-dimensional model.

[0004] In order to achieve the above object, the present invention provides the following technical solutions:

[0005] The method for optimizing layered rendering of a real-scene three-dimensional model based on distributed storage provided by the present invention comprises the following steps:

[0006] Obtain real-scene 3D data;

[0007] Segment the real-scene three-dimensional data to obtain several layers;

[0008] Allocate each layer to each terminal device for storage in a distributed storage manner to build a distributed database;

[0009] Set the layer loading method and call the rendering engine to load and render each layer according to the preset method;

[0010] Until all layers in the real-life 3D data are loaded.

[0011] Furthermore, the real-scene three-dimensional data distributed storage is formed according to the following steps:

[0012] Build a MongoDB database;

[0013] Cut the 3D model data into several small 3D tiles;

[0014] 3Dtiles are formed into hierarchical directory files and stored in MongoDB database in batches;

[0015] Build an index database for accessing or calling data.

[0016] Furthermore, the real-scene 3D data is divided into a number of rectangular tiles according to the spatial region, and the tile size can be set to 800-1200 3D tiles.

[0017] Furthermore, the loading method is implemented using edge computing technology, and the specific steps are as follows:

[0018] Receive rendering instructions sent by the cloud platform;

[0019] Calling the rendering engine to load the layer data stored in the local memory according to the rendering instruction;

[0020] Transmit rendered image data to the cloud platform.

[0021] Furthermore, each layer is allocated to each terminal device for storage in a distributed storage manner, as follows:

[0022] Calculate each layer to obtain the data set of each layer;

[0023] Obtain hardware resources of distributed terminal devices;

[0024] Determine the matching relationship with the load balancing of hardware resources of each terminal according to the layer data set and hardware resources;

[0025] The segmented layers are stored in corresponding terminal devices according to the matching relationship;

[0026] Create a layer data storage index database.

[0027] Further, the segmentation of the real scene three-dimensional data is performed according to the following steps:

[0028] Construct image sequences of different levels according to the 3D model data, set the size of each level of image, and construct a pyramid structure;

[0029] Based on Tile technology, images at each level are cut and divided into small image Tiles;

[0030] Based on the file storage system, a hierarchical directory storage structure is established to store each small image Tiles;

[0031] Based on the given 3D model and the longitude and latitude coordinates of the location point, calculate the name of the tile and the relative storage path of the tile to achieve fast query and acquisition services for 3D tiles data;

[0032] The architecture of a distributed storage system is adopted to establish a hierarchical directory to store and manage the small image Tiles.

[0033] Furthermore, the segmentation of the real-scene three-dimensional data is performed according to the types of model library components; the components in the model library include any one or more combinations of buildings, water systems, transportation, boundaries, terrain, landforms, vegetation, pipelines, fences, and independent features.

[0034] Further, the method further comprises the following steps:

[0035] Set the underlying material interface, which is used to call the material properties of the rendering model, and to modify the RGB values ​​of different components in the model, or to modify the light map.

[0036] The real-scene three-dimensional model layered rendering optimization system provided by the present invention includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When the program is executed by the processor, the steps of any one of the methods described in claims 1-8 are implemented.

[0037] The storage medium provided by the present invention stores a computer program thereon, and when the program is executed by a processor, the steps of the method described in any one of claims 1 to 8 are implemented.

[0038] The beneficial effects of the present invention are:

[0039] The present invention provides a real-scene 3D model layered rendering optimization method and system based on distributed storage, and a storage medium. The method divides the real-scene 3D model into several layers and renders and loads them separately to achieve a fast rendering process of the real-scene 3D model. The size of the layers divided into the real-scene 3D model is set according to equipment requirements, which speeds up the rendering process and improves rendering efficiency; and effectively prevents the 3D model with a large amount of data from being stuck during the rendering process.

[0040] Other advantages, objectives and features of the present invention will be described in the following description to some extent, and to some extent, will be obvious to those skilled in the art based on the following examination and study, or can be taught from the practice of the present invention. The objectives and other advantages of the present invention can be realized and obtained through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] In order to make the purpose, technical solution and beneficial effects of the present invention clearer, the present invention provides the following drawings for illustration:

[0042] Figure 1 The flowchart is a method for optimizing layered rendering of real-life 3D models based on distributed storage.

[0043] Figure 2 This is a distribution diagram of the layer structure of the real-life 3D model in distributed storage.

[0044] Figure 3 Flowchart of method building for distributed database.

[0045] Figure 4 Rendering of a schematic diagram of the distribution of terminal devices based on cloud computing. DETAILED DESCRIPTION

[0046] The present invention is further described below in conjunction with the accompanying drawings and specific embodiments so that those skilled in the art can better understand the present invention and implement it, but the embodiments are not intended to limit the present invention.

[0047] like Figure 1 As shown, the real-scene 3D model layered rendering optimization method based on distributed storage provided in this embodiment is based on the real-scene 3D real-time rendering optimization method in the game engine, and includes the following steps:

[0048] Obtain real-scene 3D data;

[0049] Segment the real-scene three-dimensional data to obtain several layers;

[0050] Allocate each layer to each storage device according to distributed storage; construct a distributed database for storing each layer index database, and form a loading data stream according to the layer index database;

[0051] Set the loading method of the loaded layer and call the rendering engine according to the loading method to load and render the loaded data stream;

[0052] Until all layers in the real-life 3D data are displayed.

[0053] The split layers in this embodiment are distributedly stored according to the following steps:

[0054] Calculate each layer to obtain the data set of each layer;

[0055] Obtain hardware resources of distributed terminal devices;

[0056] Determine the matching relationship with the load balancing of hardware resources of each terminal according to the layer data set and hardware resources;

[0057] The segmented layers are stored in corresponding terminal devices according to the matching relationship;

[0058] Create a layer data storage index database.

[0059] The real-scene three-dimensional model of this embodiment sets the loading level of each layer when segmenting, and the loading level includes a low-detail level model block and a high-detail level model block.

[0060] The layer loading method of this embodiment adopts LOD loading, which is as follows:

[0061] Determine the display viewing angle range in the display environment;

[0062] Determine the layer loading level within the viewing angle range and the layer loading level outside the viewing angle range; the loading level within the viewing angle range is a high-detail level model block, and the loading level outside the viewing angle range is a low-detail level model block;

[0063] The loading level outside the viewing angle range first determines the type of the loaded layer, and then determines the type of the bottom detail level model block according to the layer type.

[0064] The loading process of each layer in this embodiment can adopt a distributed computing loading process. First, the loading task is assigned to each terminal device through the cloud platform. Each terminal device performs three-dimensional reconstruction of the local scene according to the received layer loading task, and summarizes it to the cloud platform for three-dimensional model merging to generate a complete three-dimensional model.

[0065] In this embodiment, data transmission adopts a combination of central cloud and edge computing, using edge computing to share more core network traffic and computing power, and optimizing data transmission and signal processing processes.

[0066] This embodiment solves the problem of hardware differences among different terminal devices by analyzing the hardware resources of each terminal device and matching the processing data set; through the matching relationship between the hardware resources of each terminal device and the storage layer data set, the hardware load of each terminal device is ensured to be balanced, thereby improving cross-platform processing efficiency.

[0067] The hardware resources in this embodiment refer to the GPU attributes of each terminal device.

[0068] In this embodiment, corresponding layer rendering is performed through different terminal devices, and the large volume of real-scene three-dimensional data to be rendered is divided into layers for distributed rendering. The rendering is performed separately through the rendering engines of different terminal devices to obtain a faster visualization effect.

[0069] At the same time, by performing multi-level extraction of 3D model file data and determining the loading of different levels according to the field of view, the amount of rendering data can be reduced, the loading speed when the perspective moves can be increased, and frame loss and stuttering can be reduced, thus achieving the best display effect and viewing experience of an ordinary PC.

[0070] In this embodiment, the real scene 3D data is segmented in a semi-automatic manner, so that the load of each layer is balanced, and at the same time, the top layer of the real scene 3D data is removed, that is, the image outline data is deleted;

[0071] The rendering engine provided in this embodiment adopts the game engine UE4;

[0072] The preset method of the layer provided in this embodiment adopts partition concurrent loading to form a data stream;

[0073] like Figure 2 As shown, in this embodiment, the real-scene 3D data is divided into a number of tiles according to the real-scene model in different areas of the space. The size of each tile can be determined according to the device performance. The tile size of this embodiment can be set to 800-1200 tiles, and the optimal tile size of this embodiment can be set to no more than 1000 tiles; then the tiles of the model located in different areas of the space are divided into different areas, and the data streams of different areas are concurrently executed and input into the rendering engine for loading.

[0074] In this embodiment, the real scene three-dimensional data is segmented by a split-merge segmentation algorithm, and specifically, an octree-based split-merge algorithm or an adaptive bounding box-based split-merge algorithm may be used.

[0075] This embodiment obtains real-scene three-dimensional data 3DTiles through a three-dimensional data cutting algorithm; the 3DTiles cuts the space into blocks, and each block is called a "tile".

[0076] The real-scene 3D data provided in this embodiment is stored in a distributed manner, and the distributed storage is stored in MongoDB. The real-scene 3D model stored in the distributed manner is formed according to the following steps:

[0077] Build a MongoDB database;

[0078] Obtain 3D model data and cut the 3D model data into several small 3D tiles;

[0079] The file formats of 3D tiles in this embodiment include .json; .b3dm type files;

[0080] 3Dtiles are formed into hierarchical directory files and stored in MongoDB database in batches;

[0081] Build an index database for accessing or calling data;

[0082] The index database constructed in this embodiment is used for calling and accessing distributed data services;

[0083] The cutting of the 3D model data provided in this embodiment is performed according to the following steps:

[0084] Image sequences of different levels are constructed according to the three-dimensional model data. In the present embodiment, the levels of the image sequence can be set to N levels, where N is a natural number less than 18; each level corresponds to an image of a specific size, and the higher the level, the smaller the corresponding image, that is, the clearer the formed image, the 1st level is the top layer, and the 18th level is the bottom layer; ultimately a pyramid structure is formed.

[0085] Based on Tile technology, images at each level are cut and divided into small image Tiles;

[0086] like Figure 3 As shown, based on the file storage system, a hierarchical directory storage structure is established to store each small image Tiles;

[0087] Based on the given 3D model and the longitude and latitude coordinates of the location point, calculate the name of the tile and the relative storage path of the tile to achieve fast query and acquisition services for 3D tiles data;

[0088] Adopting the architecture of the distributed storage system, establishing a hierarchical directory, and storing and managing the small image Tiles;

[0089] The method provided in this embodiment also includes the following steps:

[0090] Set up a web browser rendering engine to display the small 3D tiles called from the distributed database, i.e., MongoDB database, in the web browser after fusion processing;

[0091] The rendering engine of this embodiment can be constructed using multi-engine fusion technology, where the multi-engine includes a game engine and a three-dimensional engine. The game engine uses the game engine ue4, and the three-dimensional engine uses the WebGL framework and engine.

[0092] The multi-engine can be constructed through virtual packaging or physical packaging to realize the display of the building three-dimensional model. Different rendering engines are determined according to the number of scene display surfaces, and the engine is automatically changed to display the three-dimensional scene. The characteristics of different rendering engines are used to load the three-dimensional scene images matching them, and the three-dimensional model is quickly displayed.

[0093] The segmentation of the real-scene three-dimensional data provided in this embodiment can also be performed according to the types of model library components; the components in the model library include various elements such as buildings, water systems, transportation, boundaries, terrain, landforms, vegetation, pipelines, fences, independent objects, etc., and the components are decomposed into two parts: geometric features and texture features. The loading order can be to load the geometric features of various components first, and then load the texture features of various components; or divide the components into different types, first load the geometric features of important types of components, then load the geometric features of other components, and finally load the texture features of these components.

[0094] like Figure 4 As shown, the rendering engine optimization method provided in this embodiment improves the loading speed of real-scene three-dimensional data by dividing the real-scene three-dimensional data to be rendered and loading them concurrently in partitions according to different standards, thereby realizing the publication and browsing of large-scale real-scene three-dimensional data and overcoming the technical difficulty of quickly loading huge amounts of real-scene three-dimensional data.

[0095] The rendering optimization method provided in this embodiment avoids loading of a model outline at the beginning of loading, thereby improving the loading speed. At the same time, an underlying material interface is set, and the underlying material interface is used to call the material properties of the rendering model. The interface can be personalized according to actual conditions, and the rendering effect can be further optimized when necessary, as well as the RGB values ​​of different components in the model can be modified, or the light map can be modified.

[0096] This method optimizes the memory during the rendering process, and good rendering effects can be achieved using 32G or 20G of memory.

[0097] The above-described embodiments are only preferred embodiments for fully illustrating the present invention, and the protection scope of the present invention is not limited thereto. Equivalent substitutions or changes made by those skilled in the art based on the present invention are within the protection scope of the present invention. The protection scope of the present invention shall be subject to the claims.

Claims

1. Optimization method of layered rendering of real-life 3D models based on distributed storage, Features: The following steps are involved: Obtain real-scene 3D data; Segment the real-scene three-dimensional data to obtain several layers; Allocate each layer to each terminal device for storage in a distributed storage manner to build a distributed database; Set the layer loading method and call the rendering engine to load and render each layer according to the preset method; Until all layers in the real-life 3D data are loaded; The loading method is implemented using edge computing technology, and the specific steps are as follows: Receive rendering instructions sent by the cloud platform; Calling the rendering engine to load the layer data stored in the local memory according to the rendering instruction; Transmit rendered image data to the cloud platform; The layers are allocated to each terminal device for storage in a distributed storage manner, as follows: Calculate each layer to obtain the data set of each layer; Obtain hardware resources of distributed terminal devices; Determine the matching relationship with the load balancing of hardware resources of each terminal according to the layer data set and hardware resources; The segmented layers are stored in corresponding terminal devices according to the matching relationship; Create a layer data storage index database.

2. As claimed in claim 1, Features: The real-scene three-dimensional data distributed storage is formed according to the following steps: Build a MongoDB database; Cut the 3D model data into several small 3D tiles; 3Dtiles are formed into hierarchical directory files and stored in MongoDB database in batches; Build an index database for accessing or calling data.

3. The method for optimizing layered rendering of a real-scene three-dimensional model based on distributed storage as claimed in claim 1, Features: The real-scene 3D data is divided into a number of rectangular tiles according to the spatial region, and the tile size can be set to 800-1200 3D tiles.

4. The method for optimizing layered rendering of a real-scene three-dimensional model based on distributed storage as claimed in claim 1, Features: The segmentation of the real scene 3D data is performed according to the following steps: Construct image sequences of different levels according to the 3D model data, set the size of each level of image, and construct a pyramid structure; Based on Tile technology, images at each level are cut and divided into small image Tiles; Based on the file storage system, a hierarchical directory storage structure is established to store each small image Tiles; Based on the given 3D model and the longitude and latitude coordinates of the location point, calculate the name of the tile and the relative storage path of the tile to achieve fast query and acquisition services for 3D tiles data; The architecture of a distributed storage system is adopted to establish a hierarchical directory to store and manage the small image Tiles.

5. The method for optimizing layered rendering of a real-scene three-dimensional model based on distributed storage as claimed in claim 1, Features: The segmentation of the real-scene three-dimensional data is performed according to the types of model library components; the components in the model library include any one or more combinations of buildings, water systems, transportation, boundaries, terrain, landforms, vegetation, pipelines, fences, and independent features.

6. The method for optimizing layered rendering of a real-scene three-dimensional model based on distributed storage as claimed in claim 1, Features: The following steps are also included: Set the underlying material interface, which is used to call the material properties of the rendering model, and to modify the RGB values ​​of different components in the model, or to modify the light map.

7. A real-scene three-dimensional model layered rendering optimization system, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, It is characterized in that When the program is executed by a processor, the steps of any one of the methods described in claims 1 to 6 are implemented.

8. A storage medium having a computer program stored thereon, It is characterized in that When the program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.

Citation Information

Patent Citations

  • Data grading request rendering method and system based on CIM platform

    CN113066157A