CN112948043A - Fine-grained Web3D online visualization method for large-scale building scene - Google Patents
Fine-grained Web3D online visualization method for large-scale building scene Download PDFInfo
- Publication number
- CN112948043A CN112948043A CN202110242977.4A CN202110242977A CN112948043A CN 112948043 A CN112948043 A CN 112948043A CN 202110242977 A CN202110242977 A CN 202110242977A CN 112948043 A CN112948043 A CN 112948043A
- Authority
- CN
- China
- Prior art keywords
- viewpoint
- component
- model
- scene
- rendering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Graphics (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The invention discloses a fine-grained Web3D online visualization method of a large-scale building scene, which comprises the steps of firstly, carrying out lightweight preprocessing in a BIM lightweight preprocessing stage respectively through two modes of model-level fine-grained and file-level fine-grained; secondly, in the network end prerendering and transmission scheduling processing flow, loading preprocessing, selecting an optimal initial viewpoint, calculating a visual increment list, calculating interest degree, packaging files and the like are included; and finally, in the Web-side multithreading asynchronous loading rendering process, incremental downloading is carried out on visual component data in a scene through multithreading, a WebAssembly technology is used for carrying out online efficient analysis on the file package, then the reuse information of the components is used for carrying out instantiation rendering, and a cache scheduling mechanism based on interestingness is used for carrying out management of component loading and component elimination. Through the process, a set of gradual lightweight online visualization solution of large-scale BIM scenes is completely realized.
Description
Technical Field
The invention relates to the technical field of three-dimensional modeling and rendering, in particular to a fine-grained Web3D online visualization method for a large-scale building scene.
Background
Nowadays, the technology of internet + 'becomes mature, the technology of VR +' starts to rise, the demand for displaying a three-dimensional virtual scene on a mobile Web browser on line is generated, and the online visualization of a large-scale Web3D scene is more and more rising. For the field of buildings, with Building informatization, Building Information Model (BIM) has become a mainstream technology for the Information development of construction and civil engineering industries, the application of the BIM technology makes the integration, expression, update and transmission sharing of original large-scale Building data Information more and more simple, and the cross fusion of the BIM and the visualization of Web3D facing to the mobile internet has become an important research and application direction.
However, the building model data is often very large, the trend of explosive growth appears in these years, the data constant is measured in GB, the computing performance and cache of the Web browser (especially the mobile end browser) are very limited, and the network transmission bandwidth is still far insufficient to support the fast transmission of large-scale building scene model data, and under this condition, how to fast, smoothly and accurately transmit the building model data to the Web end and perform efficient real-time online rendering visualization becomes a challenging hotspot technology. The challenges facing online visualization of WebBIM large-scale building scenes are as follows:
(1) the contradiction between the instant transmission of large-scale building model data and the limited network bandwidth;
(2) contradiction between large-scale building model online rendering and low computing performance of the browser;
(3) the contradiction between high delay caused by loading and rendering of large-scale building scenes and the limited patience of waiting of browsing users;
although some related methods and theories for 3D online visualization have been proposed over the years, the effect is still not satisfactory, there are cases of too long loading time, roaming jam, browser loading crash, and due to the particularity of the building model, the solution for large-scale BIM scene online visualization is further lacking.
The patent "a huge scene real-time rendering device and method based on Web3D (patent application number CN 201110256005.7)" provides a real-time rendering method of a large scene of Web3D, but it lacks a lightweight processing procedure, and does not have a fine-grained processing procedure, directly controls the view/visual distance of a camera through monitoring system resources, and reduces rendering effect and mapping mode, so that the user experience is poor, and since it mainly aims at a general 3D scene, the BIM scene cannot be directly processed yet. The patent belongs to the preliminary stage of the overall flow design of online visualization of large-scale scenes of Web 3D.
The patent "lightweight BIM big data online visualization method and system (patent application No. 201611102784.4)" provides an effective BIM scene online visualization scheme, which has important values in lightweight deduplication of building scenes and processing of building blocks, but does not deeply consider in aspects of network progressive transmission scheduling (especially, initial loading rendering is very important for user experience) and webpage-side parsing/rendering/caching, and does not realize webpage online visualization of large-scale city-level BIM scenes.
Disclosure of Invention
The invention aims to provide a fine-grained Web3D online visualization method for a large-scale building scene, provides a more comprehensive and system fine-grained processing flow of a multithreading analysis/rendering/cache scheduling mechanism transmitted from lightweight fine-grained preprocessing and interestingness-driven networking of a server side to a webpage side, and can quickly load and online render the large-scale building scene above GB on mobile-side equipment with limited bandwidth and low performance.
In order to achieve the purpose, the invention provides the following scheme:
a method for online visualization of fine-grained Web3D of a large-scale building scene comprises the following steps:
s1, carrying out lightweight preprocessing on the BIM model: carrying out lightweight pretreatment on the BIM model building component by two modes of model-level fine-grained method and file-level fine-grained method respectively;
s2, network side prerender and transmission scheduling processing: firstly, selecting an optimal initial viewpoint position of a BIM model building scene, then calculating a real visible component increment set of a user in real time through a pre-rendering strategy and a depth map technology, sequencing according to the interest degree of components, and finally sequentially packaging and transmitting visible component data;
s3, the Web end multithreading asynchronous loading rendering process: the method comprises the steps of firstly, incrementally downloading visual component data in a scene through multiple threads, efficiently analyzing a file package on line by using a Web Assembly technology, then performing instantiation rendering by using reuse information of components, and managing component loading and removal by using a cache scheduling mechanism based on interestingness.
Preferably, in step S1, the BIM model lightweight preprocessing: carrying out lightweight pretreatment on the BIM model building component by two modes of model-level fine-grained method and file-level fine-grained method respectively, and specifically comprising the following steps:
s101, model level fine granularity:
searching for duplication of the building components based on semantic analysis, and performing measurement verification on the building components by using geometric similarity to realize redundancy removal of data;
separating inner and outer bodies and partitioning a subspace of the structure, and loading a visual component of the region when a viewpoint is in a specific space;
s102, file-level fine-grained:
converting the custom model format into a mainstream gltf model format;
optimizing gltf storage, removing partial redundant information in the gltf format, and generating a minimized gltf file;
performing model data compression by using Draco;
and performing storage representation by using binary, and finally converting into a binary glb file format.
Preferably, in step S2, the network side pre-rendering and transmission scheduling processing: firstly, selecting an optimal initial viewpoint position of a BIM model building scene, then calculating a real visible component increment set of a user in real time through a pre-rendering strategy and a depth map technology, sequencing according to the interest degree of components, and finally packaging and transmitting visible component data in sequence, wherein the method specifically comprises the following steps:
s201, preloading a BIM model building scene by a server, preparing related data, and generating a component color matching comparison table;
s202, calculating and selecting an optimal initial loading viewpoint of a scene;
s203, a user opens a browser, and a server is connected with a Web browser;
s204, performing Web initial loading rendering according to the optimal viewpoint;
s205, intermittently acquiring viewpoint information of a Web end user, wherein the viewpoint information comprises a camera position, a camera orientation and a Web webpage window size;
s206, rendering the current scene according to the viewpoint information, calculating a visible component increment list under the current viewpoint according to the component color matching comparison table, calculating the interest degree of the component, and generating an interest degree list of the corresponding component;
s207, carrying out priority ranking on the components according to the interest degrees of the components;
s208, self-adaptive packing is carried out according to the bandwidth size of the user;
and S209, sequentially transmitting the obtained file packet sequences.
Preferably, in the step S202, calculating the optimal initial loading viewpoint of the selected scene specifically includes:
gridding the scene;
selecting an annular region with a set range from an upper hemisphere to be a candidate region, performing discrete sampling on the candidate region, and selecting a plurality of candidate points as an initial viewpoint candidate set; wherein the setting range is that the included angle between the connecting line of the viewpoint sphere centers and the horizontal plane is 30-60 degrees;
traversing all candidate viewpoints in the initial viewpoint candidate set, and respectively obtaining a visible component model list of the candidate viewpoints;
respectively calculating the priorities of all candidate viewpoints, selecting the candidate viewpoint with the highest priority as a subsequent search initial viewpoint, and recording the candidate viewpoint as V0;
searching surrounding neighboring viewpoints of the bounding sphere by taking the V0 as a center, respectively calculating priorities of the neighboring viewpoints, if a viewpoint with a priority higher than that of the V0 exists, continuing searching the surrounding neighboring viewpoints by taking the viewpoint as the center until a neighboring viewpoint with a higher priority cannot be found, and completing the searching, wherein the viewpoint is the selected optimal initial loading viewpoint.
Preferably, in step S206, the calculating the interest level of the component specifically includes:
calculating the interest level IR of the component, and weighting the filling level FR, the reuse level RR and the interest level FR, wherein the calculation formula is as follows:
IR(modeli)=α1×FR(modeli)+α2×RR(modeli)+α3×FR(modeli);
wherein alpha is1+α2+α3=1,α1,α2,α3Are the respective weight;
the filling degree FR is the ratio of the volume of the bounding box occupied by the model to the file size of the bounding box, and the calculation formula is as follows:
the reuse degree RR is the ratio of the number of example components of the model to the file size of the model, and the calculation formula is as follows:
the attention FR is the attention degree of the user to the model, and mainly comprises the ratio of the statistic value of the type of the model, the staring of the viewpoint of the user and the interaction times to the file size, and the formula is as follows:
preferably, in step S3, the Web-side multithreading asynchronous loading rendering process: the method comprises the steps of firstly, incrementally downloading visual component data in a scene through multiple threads, efficiently analyzing a file package on line by using a Web Assembly technology, then performing instantiation rendering by using reuse information of a component, and managing component loading and removal by using a cache scheduling mechanism based on interestingness, and specifically comprises the following steps:
s301, loading a file package of the visual component data according to the priority order of the interestingness by using a multithreading technology;
s302, carrying out efficient online analysis on the loaded file package by using a Web Assembly technology, and generating component graph rendering data;
s303, rendering all reused component models in the scene by using instantiation information of the components and an instantiation rendering technology, and performing illumination rendering by using a global illumination map generated by cloud baking;
s304, performing Web3D dynamic cache management on the loaded components in the scene, monitoring the memory occupation condition of the current system in real time, and deleting the components with low interest degree from the memory in time to ensure the optimal memory occupation.
Preferably, in step S304, the Web3D dynamic cache management is performed on the loaded components in the scene, the memory occupancy of the current system is monitored in real time, the components with low interest level are deleted from the memory in time, and the memory occupancy is ensured to be optimal, specifically including:
when the viewpoint of a user is updated, sequentially loading the incremental visual component file packages packaged by the server, and analyzing and rendering the part of the component model;
taking a difference value between a component list existing in the current memory and a current visual component list to obtain a non-visual component list in the memory;
sorting the non-visual component list from small to large according to the interestingness;
and monitoring the memory occupation condition of the browser in real time, and when the memory occupation is too high, sequentially eliminating the components with lower interest degree in the non-visual component list until the memory occupation is lower.
According to the specific embodiment provided by the invention, the invention discloses the following technical effects: the fine-grained Web3D online visualization method for the large-scale building scene integrates BIM model lightweight preprocessing, network side prerendering and transmission scheduling processing and Web side multithreading asynchronous loading rendering processes;
firstly, a BIM lightweight preprocessing process comprises a model duplication checking and redundancy removing part, a structure internal and external separation and subspace blocking part and a data compression part, and the BIM is subjected to lightweight preprocessing in two modes of model level fine granularity and file level fine granularity, so that redundant data in the BIM are removed, and the scene is lightened;
secondly, the network-side prerendering and transmission scheduling processing flow mainly comprises the steps of loading preprocessing, optimal initial loading viewpoint selection, visible increment list calculation, interest degree calculation, file packaging and the like, and the optimal initial loading viewpoint selection, a prerendering mechanism and dynamic progressive transmission effectively improve the transmission efficiency of the BIM scene and reduce the waiting time of a user;
thirdly, the multithreading asynchronous loading rendering process of the Web end uses a multithreading asynchronous rendering mechanism, the multithreading asynchronous rendering mechanism comprises technologies of multithreading sequential loading of file packages, Web Assembly efficient analysis technology, instantiation rendering technology, global illumination mapping technology, interest-based Web3D cache management and the like, loading rendering efficiency and effect are improved, and a mobile-end browser with limited functions can also load and render large-scale BIM scenes through the multithreading asynchronous loading rendering mechanism of the Web end.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings needed to be used in the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings without inventive exercise.
FIG. 1 is a flowchart of a method for online visualization of a large-scale building scene through fine-grained Web3D according to the present invention;
FIG. 2 is a schematic view of the BIM lightweight preprocessing process;
FIG. 3 is a flow chart of the network pre-rendering and transmission scheduling process of the present invention;
FIG. 4 is a schematic diagram of an optimal initial loading viewpoint selection according to the present invention;
FIG. 5 is a flow diagram of Web3D cache management based on interestingness;
FIG. 6 is a Vanda square BIM rendering effect diagram;
FIG. 7 is a BIM rendering effect diagram of a first steel industry park.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The invention aims to provide a fine-grained Web3D online visualization method for a large-scale building scene, provides a more comprehensive and system fine-grained processing flow of a multithreading analysis/rendering/cache scheduling mechanism transmitted from lightweight fine-grained preprocessing and interestingness-driven networking of a server side to a webpage side, and can quickly load and online render the large-scale building scene above GB on mobile-side equipment with limited bandwidth and low performance.
In order to make the aforementioned objects, features and advantages of the present invention comprehensible, embodiments accompanied with figures are described in further detail below.
As shown in fig. 1 to 3, the method for online visualization of fine-grained Web3D of a large-scale building scene provided by the present invention includes the following steps:
s1, carrying out lightweight preprocessing on the BIM model: carrying out lightweight pretreatment on the BIM model building component by two modes of model-level fine-grained method and file-level fine-grained method respectively;
s2, network side prerender and transmission scheduling processing: firstly, selecting an optimal initial viewpoint position of a BIM model building scene, then calculating a real visible component increment set of a user in real time through a pre-rendering strategy and a depth map technology, sequencing according to the interest degree of components, and finally sequentially packaging and transmitting visible component data;
s3, the Web end multithreading asynchronous loading rendering process: the method comprises the steps of firstly, incrementally downloading visual component data in a scene through multiple threads, efficiently analyzing a file package on line by using a Web Assembly technology, then performing instantiation rendering by using reuse information of components, and managing component loading and removal by using a cache scheduling mechanism based on interestingness.
The large-scale building scene model usually has too large data volume, and usually needs to consume a large amount of time for transmission of limited bandwidth, so that the requirement of a user for instant browsing cannot be met. In order to reduce the data volume of the BIM model, a scene lightweight preprocessing step is introduced.
As shown in fig. 2, in step S1, the BIM model lightweight preprocessing: carrying out lightweight pretreatment on the BIM model building component by two modes of model-level fine-grained method and file-level fine-grained method respectively, and specifically comprising the following steps:
s101, model level fine granularity:
searching for duplication of the building components based on semantic analysis, and performing measurement verification on the building components by using geometric similarity to realize redundancy removal of data; the redundancy removal of the BIM component is to find out and remove repeated components in a scene through a component repeatability detection algorithm, wherein the BIM component generally comprises two parts of geometric and semantic information, the geometric information describes the geometric shape of the component, and the semantic information describes the attribute, text content and mutual reference relation of an entity, in order to reduce the calculation complexity of directly using geometric shape matching, the semantic information is firstly used for analyzing the possibly repeated components, and then the components are subjected to measurement verification by using geometric similarity so as to realize rapid component deduplication;
separating inner and outer bodies and partitioning a subspace of the structure, and loading a visual component of the region when a viewpoint is in a specific space; because the whole BIM scene is large in scale, the loading and rendering capability of a front-end Web browser is limited, all scene components cannot be rendered, and the complete scene also brings a large amount of performance consumption to a server in the pre-rendering of the server, the internal and external bodies of a structure can be separated and the subspace can be partitioned, and when the viewpoint is in a specific space, the visual components in the area are loaded;
s102, file-level fine-grained: mainly, model lightweight processing is carried out from a file level, and the method comprises the following steps:
converting the custom model format into a mainstream gltf model format;
optimizing gltf storage, removing partial redundant information in the gltf format, and generating a minimized gltf file;
performing model data compression by using Draco;
and performing storage representation by using binary, and finally converting into a binary glb file format.
For a large-scale scene, in roaming or display, a user can only observe a part of components in the scene at any time, and the visual component set of the user is calculated in real time according to viewpoint information of the user, so that a component model which really affects the vision of the user can be really loaded and rendered, and the visualization efficiency is improved. The network end prerendering and transmission scheduling processing flow mainly comprises the steps of calculating a real visible component increment list of a user in real time, sequencing according to the interest degree of the components, and then sequentially packaging and transmitting.
As shown in fig. 3, in step S2, the network pre-rendering and transmission scheduling process: firstly, selecting an optimal initial viewpoint position of a BIM model building scene, then calculating a real visible component increment set of a user in real time through a pre-rendering strategy and a depth map technology, sequencing according to the interest degree of components, and finally packaging and transmitting visible component data in sequence, wherein the method specifically comprises the following steps:
s201, preloading a BIM model building scene by a server, preparing related data, and generating a component color matching comparison table;
s202, calculating and selecting an optimal initial loading viewpoint of a scene;
s203, a user opens a browser, and a server is connected with a Web browser;
s204, performing Web initial loading rendering according to the optimal viewpoint;
s205, intermittently acquiring viewpoint information of a Web end user, wherein the viewpoint information comprises a camera position, a camera orientation and a Web webpage window size;
s206, rendering the current scene according to the viewpoint information, calculating a visible component increment list under the current viewpoint according to the component color matching comparison table, calculating the interest degree of the component, and generating an interest degree list of the corresponding component;
s207, carrying out priority ranking on the components according to the interest degrees of the components;
s208, self-adaptive packing is carried out according to the bandwidth size of the user;
and S209, sequentially transmitting the obtained file packet sequences.
Because the initial loading viewpoint positions of the BIM scene are always consistent each time, and the initial loading effect basically and directly determines the use experience of the user, the initial loading position of the scene needs to be selected. The optimal initial viewpoint selection mainly selects a proper viewpoint position and an observation angle, so that the initially loaded data volume loads as many models as possible while the initially loaded data volume is as small as possible, and a user can observe as many scene details as possible under the viewpoint.
As shown in fig. 4, the step S202 of calculating an optimal initial loading viewpoint of the selected scene specifically includes:
gridding the scene;
selecting an annular region with a set range from an upper hemisphere to be a candidate region, performing discrete sampling on the candidate region, and selecting a plurality of candidate points as an initial viewpoint candidate set; wherein the setting range is that the included angle between the connecting line of the viewpoint sphere centers and the horizontal plane is 30-60 degrees;
traversing all candidate viewpoints in the initial viewpoint candidate set, and respectively obtaining a visible component model list of the candidate viewpoints;
respectively calculating the priorities of all candidate viewpoints, selecting the candidate viewpoint with the highest priority as a subsequent search initial viewpoint, and recording the candidate viewpoint as V0;
searching surrounding neighboring viewpoints of the bounding sphere by taking the V0 as a center, respectively calculating priorities of the neighboring viewpoints, if a viewpoint with a priority higher than that of the V0 exists, continuing searching the surrounding neighboring viewpoints by taking the viewpoint as the center until a neighboring viewpoint with a higher priority cannot be found, and completing the searching, wherein the viewpoint is the selected optimal initial loading viewpoint.
Since there are significant differences in the visual contributions of different component models in a scene to a user, such as components with large volume and large pixel occupation in a depth map occupy a large space in a screen, these component models should be given higher priority in the transmission process, and in order to better quantify the priority of each model in the transmission process, the concept of interestingness is proposed herein. Before introducing the interestingness, concepts and calculation formulas of the filling degree, the reusing degree and the attention degree are introduced.
In step S206, calculating the interest level of the component specifically includes:
calculating the interest level IR of the component, and weighting the filling level FR, the reuse level RR and the interest level FR, wherein the calculation formula is as follows:
IR(modeli)=α1×FR(modeli)+α2×RR(modeli)+α3×FR(modeli);
wherein alpha is1+α2+α3=1,α1,α2,α3Are the respective weight;
the filling degree FR is the ratio of the volume of the bounding box occupied by the model to the file size of the bounding box, and the calculation formula is as follows:
the reuse degree RR is the ratio of the number of example components of the model to the file size of the model, and the calculation formula is as follows:
the attention FR is the attention degree of the user to the model, and mainly comprises the ratio of the statistic value of the type of the model, the staring of the viewpoint of the user and the interaction times to the file size, and the formula is as follows:
in step S208, online packaging of the visual file can improve transmission efficiency. Each network request and transmission consumes certain network resources, because each component file is relatively small, the number of the components in the whole scene is huge, and if only a single component file is sent in each network request and transmission, the file transmission of the whole scene can bring about a large amount of additional network resource consumption. In order to reduce the waiting time of the user to the maximum extent, the most reasonable model which is transmitted in the shortest time to the Web browser is preferentially rendered in the low-bandwidth network environment, so that the transmission benefit is maximized.
And the Web end lightweight loading rendering module is used for receiving the scheduling processing result of the service at the Web browser end and visualizing the scheduling processing result. Due to the fact that user hardware configuration is uneven and the performance of a Web browser is limited, a multithreading asynchronous rendering mechanism is used, and the multithreading asynchronous rendering mechanism comprises technologies of multithreading sequential loading of file packages, a Web Assembly efficient analysis technology, an instantiation rendering technology, a global illumination mapping technology, interest-based Web3D cache management and the like.
In step S3, the Web-side multithreading asynchronous loading rendering process: the method comprises the steps of firstly, incrementally downloading visual component data in a scene through multiple threads, efficiently analyzing a file package on line by using a Web Assembly technology, then performing instantiation rendering by using reuse information of a component, and managing component loading and removal by using a cache scheduling mechanism based on interestingness, and specifically comprises the following steps:
s301, loading a file package of the visual component data according to the priority order of the interestingness by using a multithreading technology;
s302, carrying out efficient online analysis on the loaded file package by using a Web Assembly technology, and generating component graph rendering data;
s303, rendering all reused component models in the scene by using instantiation information of the components and an instantiation rendering technology, and performing illumination rendering by using a global illumination map generated by cloud baking;
s304, performing Web3D dynamic cache management on the loaded components in the scene, monitoring the memory occupation condition of the current system in real time, and deleting the components with low interest degree from the memory in time to ensure the optimal memory occupation.
The Web Assembly is a bottom Assembly level language which allows Java Script codes to call other (such as C, C + +) codes, and the analysis speed of the file package is increased and the waiting time of a user is reduced by using the Web Assembly technology. The instantiation rendering technology is an effective rendering optimization strategy, for large-scale scenes, a large number of similar components often exist in the model, and when the components are processed, the rendering efficiency and the running smoothness can be effectively improved by using the instantiation rendering technology. In the lightweight processing stage of the system, reuse information of all components of the scene is obtained, and support is provided for performing instantiation rendering.
Web3D cache management based on interestingness mainly solves the problem that large-scale BIM scene data cannot be stored due to small memory of a Web browser, and is mainly characterized in that the memory occupation size of the browser is monitored in real time, and when the memory occupation is too high, appropriate component data are selected for elimination.
As shown in fig. 5, in step S304, performing dynamic cache management on the components loaded in the scene by using Web3D, monitoring the memory usage of the current system in real time, and deleting the components with low interest level from the memory in time to ensure that the memory usage is optimal, specifically including:
when the viewpoint of a user is updated, sequentially loading the incremental visual component file packages packaged by the server, and analyzing and rendering the part of the component model;
taking a difference value between a component list existing in the current memory and a current visual component list to obtain a non-visual component list in the memory;
sorting the non-visual component list from small to large according to the interestingness;
and monitoring the memory occupation condition of the browser in real time, and when the memory occupation is too high, sequentially eliminating the components with lower interest degree in the non-visual component list until the memory occupation is lower.
FIG. 6 is a BIM rendering effect diagram for a Wanda square; FIG. 7 is a BIM rendering effect diagram of a first steel industry park. Table 1 shows the effect comparison of the method proposed by the present invention with the conventional one-time loading method: as can be seen, compared with the traditional method, the method provided by the invention has the advantages that the visualization time is greatly reduced, the loading rendering efficiency is improved and the obvious advantages are realized for large-scale BIM scenes.
TABLE 1
In the online visualization method of the fine-grained Web3D of the large-scale building scene, firstly, a lightweight preprocessing process of a BIM (building information modeling) model comprises model duplication elimination and redundancy elimination, separation of internal and external bodies of a structure and subspace blocking and data compression, and the lightweight preprocessing of the BIM model is carried out through two modes of model-level fine-grained and file-level fine-grained, so that redundant data in the BIM model are eliminated, and the lightweight of the scene is realized; secondly, the network-side prerendering and transmission scheduling processing flow mainly comprises the steps of loading preprocessing, optimal initial loading viewpoint selection, visible increment list calculation, interest degree calculation, file packaging and the like, and the optimal initial loading viewpoint selection, a prerendering mechanism and dynamic progressive transmission effectively improve the transmission efficiency of the BIM scene and reduce the waiting time of a user; thirdly, the multithreading asynchronous loading rendering process of the Web end uses a multithreading asynchronous rendering mechanism, the multithreading asynchronous rendering mechanism comprises technologies of multithreading sequential loading of file packages, Web Assembly efficient analysis technology, instantiation rendering technology, global illumination mapping technology, interest-based Web3D cache management and the like, loading rendering efficiency and effect are improved, and a mobile-end browser with limited functions can also load and render large-scale BIM scenes through the multithreading asynchronous loading rendering mechanism of the Web end.
The embodiments in the present description are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other. For the system disclosed by the embodiment, the description is relatively simple because the system corresponds to the method disclosed by the embodiment, and the relevant points can be referred to the method part for description.
The principle and the implementation mode of the present invention are explained by applying specific examples in the present application, and the above description of the examples is only used to help understanding the method and the core idea of the present invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, the specific embodiments and the application range may be changed. In view of the above, the present disclosure should not be construed as limiting the invention.
Claims (7)
1. A method for online visualization of fine-grained Web3D of a large-scale building scene is characterized by comprising the following steps:
s1, carrying out lightweight preprocessing on the BIM model: carrying out lightweight pretreatment on the BIM model building component by two modes of model-level fine-grained method and file-level fine-grained method respectively;
s2, network side prerender and transmission scheduling processing: firstly, selecting an optimal initial viewpoint position of a BIM model building scene, then calculating a real visible component increment set of a user in real time through a pre-rendering strategy and a depth map technology, sequencing according to the interest degree of components, and finally sequentially packaging and transmitting visible component data;
s3, the Web end multithreading asynchronous loading rendering process: the method comprises the steps of firstly, incrementally downloading visual component data in a scene through multiple threads, efficiently analyzing a file package on line by using a Web Assembly technology, then performing instantiation rendering by using reuse information of components, and managing component loading and removal by using a cache scheduling mechanism based on interestingness.
2. The method for online visualization of fine-grained Web3D of a large-scale architectural scene according to claim 1, wherein the step S1 is a BIM model lightweight preprocessing: carrying out lightweight pretreatment on the BIM model building component by two modes of model-level fine-grained method and file-level fine-grained method respectively, and specifically comprising the following steps:
s101, model level fine granularity:
searching for duplication of the building components based on semantic analysis, and performing measurement verification on the building components by using geometric similarity to realize redundancy removal of data;
separating inner and outer bodies and partitioning a subspace of the structure, and loading a visual component of the region when a viewpoint is in a specific space;
s102, file-level fine-grained:
converting the custom model format into a mainstream gltf model format;
optimizing gltf storage, removing partial redundant information in the gltf format, and generating a minimized gltf file;
performing model data compression by using Draco;
and performing storage representation by using binary, and finally converting into a binary glb file format.
3. The method for online visualization of fine-grained Web3D of a large-scale building scene according to claim 1, wherein the step S2 comprises a network-side pre-rendering and transmission scheduling process: firstly, selecting an optimal initial viewpoint position of a BIM model building scene, then calculating a real visible component increment set of a user in real time through a pre-rendering strategy and a depth map technology, sequencing according to the interest degree of components, and finally packaging and transmitting visible component data in sequence, wherein the method specifically comprises the following steps:
s201, preloading a BIM model building scene by a server, preparing related data, and generating a component color matching comparison table;
s202, calculating and selecting an optimal initial loading viewpoint of a scene;
s203, a user opens a browser, and a server is connected with a Web browser;
s204, performing Web initial loading rendering according to the optimal viewpoint;
s205, intermittently acquiring viewpoint information of a Web end user, wherein the viewpoint information comprises a camera position, a camera orientation and a Web webpage window size;
s206, rendering the current scene according to the viewpoint information, calculating a visible component increment list under the current viewpoint according to the component color matching comparison table, calculating the interest degree of the component, and generating an interest degree list of the corresponding component;
s207, carrying out priority ranking on the components according to the interest degrees of the components;
s208, self-adaptive packing is carried out according to the bandwidth size of the user;
and S209, sequentially transmitting the obtained file packet sequences.
4. The online visualization method for the fine-grained Web3D of the large-scale building scene according to claim 3, wherein the step S202 of calculating and selecting the optimal initial loading viewpoint of the scene specifically comprises:
gridding the scene;
selecting an annular region with a set range from an upper hemisphere to be a candidate region, performing discrete sampling on the candidate region, and selecting a plurality of candidate points as an initial viewpoint candidate set; wherein the setting range is that the included angle between the connecting line of the viewpoint sphere centers and the horizontal plane is 30-60 degrees;
traversing all candidate viewpoints in the initial viewpoint candidate set, and respectively obtaining a visible component model list of the candidate viewpoints;
respectively calculating the priorities of all candidate viewpoints, selecting the candidate viewpoint with the highest priority as a subsequent search initial viewpoint, and recording the candidate viewpoint as V0;
searching surrounding neighboring viewpoints of the bounding sphere by taking the V0 as a center, respectively calculating priorities of the neighboring viewpoints, if a viewpoint with a priority higher than that of the V0 exists, continuing searching the surrounding neighboring viewpoints by taking the viewpoint as the center until a neighboring viewpoint with a higher priority cannot be found, and completing the searching, wherein the viewpoint is the selected optimal initial loading viewpoint.
5. The method for online visualization of the fine-grained Web3D of the large-scale building scene according to claim 3, wherein in step S206, the calculating of the interest level of the component specifically includes:
calculating the interest level IR of the component, and weighting the filling level FR, the reuse level RR and the interest level FR, wherein the calculation formula is as follows:
IR(modeli)=α1×FR(modeli)+α2×RR(modeli)+α3×FR(modeli);
wherein alpha is1+α2+α3=1,α1,α2,α3Are the respective weight;
the filling degree FR is the ratio of the volume of the bounding box occupied by the model to the file size of the bounding box, and the calculation formula is as follows:
the reuse degree RR is the ratio of the number of example components of the model to the file size of the model, and the calculation formula is as follows:
the attention FR is the attention degree of the user to the model, and mainly comprises the ratio of the statistic value of the type of the model, the staring of the viewpoint of the user and the interaction times to the file size, and the formula is as follows:
6. the online visualization method for the fine-grained Web3D of the large-scale building scene according to claim 1, wherein in step S3, a Web-side multithreading asynchronous loading rendering process: the method comprises the steps of firstly, incrementally downloading visual component data in a scene through multiple threads, efficiently analyzing a file package on line by using a Web Assembly technology, then performing instantiation rendering by using reuse information of a component, and managing component loading and removal by using a cache scheduling mechanism based on interestingness, and specifically comprises the following steps:
s301, loading a file package of the visual component data according to the priority order of the interestingness by using a multithreading technology;
s302, carrying out efficient online analysis on the loaded file package by using a Web Assembly technology, and generating component graph rendering data;
s303, rendering all reused component models in the scene by using instantiation information of the components and an instantiation rendering technology, and performing illumination rendering by using a global illumination map generated by cloud baking;
s304, performing Web3D dynamic cache management on the loaded components in the scene, monitoring the memory occupation condition of the current system in real time, and deleting the components with low interest degree from the memory in time to ensure the optimal memory occupation.
7. The online visualization method for the fine-grained Web3D in the large-scale building scene according to claim 6, wherein in the step S304, the Web3D dynamic cache management is performed on the components loaded in the scene, the memory occupation condition of the current system is monitored in real time, the components with low interest level are deleted from the memory in time, and the memory occupation is ensured to be optimal, and the method specifically comprises the following steps:
when the viewpoint of a user is updated, sequentially loading the incremental visual component file packages packaged by the server, and analyzing and rendering the part of the component model;
taking a difference value between a component list existing in the current memory and a current visual component list to obtain a non-visual component list in the memory;
sorting the non-visual component list from small to large according to the interestingness;
and monitoring the memory occupation condition of the browser in real time, and when the memory occupation is too high, sequentially eliminating the components with lower interest degree in the non-visual component list until the memory occupation is lower.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110242977.4A CN112948043A (en) | 2021-03-05 | 2021-03-05 | Fine-grained Web3D online visualization method for large-scale building scene |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110242977.4A CN112948043A (en) | 2021-03-05 | 2021-03-05 | Fine-grained Web3D online visualization method for large-scale building scene |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112948043A true CN112948043A (en) | 2021-06-11 |
Family
ID=76247737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110242977.4A Pending CN112948043A (en) | 2021-03-05 | 2021-03-05 | Fine-grained Web3D online visualization method for large-scale building scene |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112948043A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114513520A (en) * | 2021-12-27 | 2022-05-17 | 浙江中测新图地理信息技术有限公司 | Web three-dimensional visualization technology based on synchronous rendering of client and server |
CN115423920A (en) * | 2022-09-16 | 2022-12-02 | 如你所视(北京)科技有限公司 | VR scene processing method and device and storage medium |
CN116452747A (en) * | 2023-04-23 | 2023-07-18 | 广州图石科技有限公司 | BIM model rendering method and system based on multiple scenes |
-
2021
- 2021-03-05 CN CN202110242977.4A patent/CN112948043A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114513520A (en) * | 2021-12-27 | 2022-05-17 | 浙江中测新图地理信息技术有限公司 | Web three-dimensional visualization technology based on synchronous rendering of client and server |
CN115423920A (en) * | 2022-09-16 | 2022-12-02 | 如你所视(北京)科技有限公司 | VR scene processing method and device and storage medium |
CN115423920B (en) * | 2022-09-16 | 2024-01-30 | 如你所视(北京)科技有限公司 | VR scene processing method, device and storage medium |
CN116452747A (en) * | 2023-04-23 | 2023-07-18 | 广州图石科技有限公司 | BIM model rendering method and system based on multiple scenes |
CN116452747B (en) * | 2023-04-23 | 2024-03-19 | 广州图石科技有限公司 | BIM model rendering method and system based on multiple scenes |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112765513A (en) | Fine-grained Web3D online visualization method for large-scale building scene | |
CN112948043A (en) | Fine-grained Web3D online visualization method for large-scale building scene | |
CN110070613B (en) | Large three-dimensional scene webpage display method based on model compression and asynchronous loading | |
CN106776963B (en) | The online method for visualizing of light-weighted BIM big data and system | |
WO2020098531A1 (en) | Object loading method, device, storage medium, and electronic device | |
CN109377554B (en) | Large three-dimensional model drawing method, device, system and storage medium | |
CN111968212A (en) | Viewpoint-based dynamic scheduling method for three-dimensional urban scene data | |
CN101119485A (en) | Characteristic reservation based three-dimensional model progressive transmission method | |
CN111932668A (en) | Three-dimensional visualization method, system, medium and electronic equipment for urban landscape model | |
CN114513520A (en) | Web three-dimensional visualization technology based on synchronous rendering of client and server | |
EP3923186A2 (en) | Video recognition method and apparatus, electronic device and storage medium | |
CN114356544A (en) | Parallel computing method and system facing edge cluster | |
Li et al. | CEBOW: A Cloud‐Edge‐Browser Online Web3D approach for visualizing large BIM scenes | |
CN114723898A (en) | Method and device for lightening massive point cloud model | |
CN104601950B (en) | A kind of video frequency monitoring method | |
CN112395073A (en) | High-performance fast rendering method for large vector data | |
Baig et al. | Bit rate reduction in cloud gaming using object detection technique | |
Rodriguez-Santana et al. | Mobile computation offloading architecture for mobile augmented reality, case study: Visualization of cetacean skeleton | |
Li et al. | User Interests Driven Collaborative Cloud-Edge-Browser Architecture for WebBIM Visualization | |
CN106803231A (en) | A kind of figure parallel drawing method based on sort first load balances | |
CN112799928A (en) | Knowledge graph-based industrial APP relevance analysis method, device and medium | |
Murturi et al. | On Provisioning Procedural Geometry Workloads on Edge Architectures. | |
CN116630552B (en) | Optimized rendering method for large-scale three-dimensional process factory model | |
CN111800742B (en) | Management method and device of mobile position data, storage medium and terminal | |
CN118042181B (en) | Video rendering method, apparatus, electronic device, computer-readable storage medium, and computer program product |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |