A parallel optimization visualization method for monitoring a wide range of video fusion geographic scenes
By improving the octree index model and WebGL parallel optimization processing, the problems of managing multiple overlapping video cameras and real-time video streaming are solved, enabling efficient visualization of large-scale surveillance videos and improving rendering efficiency and effects.
Patent Information
- Application Number
- CN202411632698.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-15
- Publication Date
- 2025-10-24
- Estimated Expiration
- 2044-11-15
AI Technical Summary
Existing technologies cannot effectively manage multiple overlapping video cameras, cannot build LOD models in real time, and do not fully utilize the parallel processing capabilities of WebGL, resulting in low visualization efficiency for large-scale surveillance video fusion scenarios.
An improved octree indexing model is adopted, cameras with overlapping video regions are inserted into the same node, and dynamic LOD strategy and WebGL parallel optimization are used to process video 3D tiles through the same rendering pipeline to achieve large-scale and efficient visualization.
It improves the visualization and efficiency of large-scale surveillance videos, making it suitable for business applications such as navigation and automated monitoring, and enhances rendering efficiency.
Smart Images

Figure CN120198829B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application belongs to the technical field of video geographic information visualization, and particularly relates to a parallel optimization visualization method for large-scale monitoring video fusion geographic scenes. BACKGROUND
[0002] Video monitoring data are widely distributed in urban scenes, have the characteristics of low cost, real-time and space, and are important data sources for current GIS. The fusion of video data and three-dimensional geographic scenes can realize immersive access of video and information, and can be widely applied to important fields such as disaster monitoring, traffic law enforcement and military applications.
[0003] Existing research has made many contributions to the fusion of video data and three-dimensional geographic scenes, which can be divided into geographic scene enhanced video methods and video enhanced geographic scene methods. Among them, the video enhanced geographic scene method uses the ShadowMap technology to map the video texture into the geographic scene and perform fusion processing, which is more in line with human cognitive habits.
[0004] Currently, the video enhanced geographic scene method mainly includes video registration and video fusion three-dimensional scene. For the video registration method, existing research has made a lot of work, which can be divided into direct estimation method and indirect estimation method. For the video fusion geographic scene, the process considers that the rectangular fitting video texture mode supported by Cesium does not conform to the actual spatial relationship, and generally uses the ShadowMap technology to realize the fusion of video and geographic scene, which is more in line with the actual scene. The existing technical method mainly adopts a pre-downsampling method to form multiple video files to construct a LOD model, and adopts a quadtree or octree method to construct a hierarchical and block organization method. However, due to the limitation of the Web end and the real-time nature of the video stream, the technology cannot pre-construct an LOD model by using a texture downsampling method for real-time video stream; the current technical method uses an index tree (quadtree or octree, etc.) organization method, and does not uniformly organize multiple cameras with video overlapping areas, cannot uniformly schedule the camera group in the overlapping area, and may cause artifacts in the overlapping area of multiple videos. At the same time, the parallel processing capability of the rendering pipeline is not fully utilized, which limits the subsequent large-scale monitoring video fusion scene application.
[0005] The present application mainly aims at the following two deficiencies of the existing large-scale monitoring video enhanced GIS method:
[0006] (1) The current organization method does not consider the unified management of multiple overlapping video cameras, and the existing LOD model is difficult to apply to real-time video stream. That is, the organization method is not applicable.
[0007] (2) Current large-scale scene scheduling algorithm does not consider WebGL parallel optimization calculation, and multiple video overlapping areas are not effectively fused, so the visualization efficiency is low, and the current method cannot meet the visualization demand of large-scale monitoring scene. SUMMARY
[0008] The purpose of the present application is to provide a large-scale monitoring video fusion geographic scene parallel optimization visualization method, which solves the technical problems that the video organization method of the prior art is difficult to apply to multiple overlapping video camera video streams, and multiple video overlapping areas are difficult to effectively fuse, and the visualization efficiency is low.
[0009] The large-scale monitoring video fusion geographic scene parallel optimization visualization method comprises the following steps.
[0010] S1, initialize parameters, form a three-dimensional video tile set according to the existing monitoring camera parameters, wherein a single monitoring camera is formed into a video three-dimensional tile.
[0011] S2, construct an octree index model for large-scale multi-monitoring video scene fusion, and when constructing, first insert the cameras with video overlapping areas into the same node, and then insert the cameras with non-overlapping video areas into the remaining nodes.
[0012] S3, based on WebGL parallel optimization scene, based on scene scheduling algorithm, realize large-scale geographic fusion scene dynamic scheduling, realize large-scale efficient visualization; the scheduling process of this step is based on the organization method of the octree index model in step S2, and a dynamic LOD strategy is used to uniformly process the video three-dimensional tiles in the current node OctreeNode using the same rendering pipeline.
[0013] Preferably, the step S1 specifically comprises.
[0014] S1.1, define a single monitoring camera into a video three-dimensional tile.
[0015] S1.2 form a cluster of video three-dimensional tiles from the three-dimensional video tile set corresponding to the camera part of the overlapping area, and each cluster forms a cluster set.
[0016] Preferably, the expression of the video three-dimensional tile is defined as:
[0017]
[0018] Wherein S represents the acquired shadow map; V represents the video stream; g(V) represents the video frame extracted from the video stream; f(S, g(V), a) represents the video texture formed by the shadow map S and the video frame g(V) with geographical features, and the video texture is superimposed on the three-dimensional geographical scene according to the transparency value a (a ranges between 0 and 1).
[0019] Preferably, each cluster Cluster has a minimum bounding box OBB cluser and the number of video three-dimensional tiles N; other video three-dimensional tiles have a minimum bounding box OBB, and the corresponding number of video three-dimensional tiles is 1; each cluster Cluster forms a cluster set ClusterSet.
[0020] Preferably, step S2 specifically comprises.
[0021] S2.1: Set the maximum value of the three-dimensional video tile stored in each node of the current octree index as T, and calculate the minimum outer bounding box of the current three-dimensional tile set to obtain the root node Root of the octree node.
[0022] S2.2: Traverse the cluster Cluster in the cluster set ClusterSet and insert the cluster Cluster into the node of the octree.
[0023] Repeat step S2.2 until all clusters Cluster in the cluster set ClusterSet are inserted into the octree.
[0024] S2.3: Insert the remaining video three-dimensional tiles not belonging to the cluster Cluster into the corresponding octree node.
[0025] Repeat step S2.3 until all the remaining video three-dimensional tiles are inserted into the octree.
[0026] Preferably, the step S2.2 specifically comprises.
[0027] S2.2.1: Set the current node OctreeNode, i.e. OctreeNode = Root.
[0028] S2.2.2: Acquire each cluster Cluster in turn; wherein the minimum bounding box of the current cluster Cluster is OBB cluser and the number of video three-dimensional tiles therein is N.
[0029] S2.2.3: Perform a judgment, if the minimum bounding box OBB node of the current node OctreeNode does not contain the minimum bounding box OBB cluser of the current cluster, then jump back to step S2.2.2 to acquire the next cluster Cluster; otherwise, execute the next step.
[0030] S2.2.4 If the number of video three-dimensional tiles N of the current cluster is greater than the free storage number of the current node OctreeNode, the current node is split into 8 octree child nodes OctreeChild according to the octree splitting manner; then the child nodes OctreeChild are traversed, the current node OctreeNode is reset, i.e., OctreeNode = OctreeChild, then step S2.2.2 is jumped back to obtain the next cluster; otherwise, the video three-dimensional tiles in the current cluster Cluster are inserted into the current node OctreeNode.
[0031] Preferably, the step S2.3 specifically comprises.
[0032] S2.3.1 The current node OctreeNode is set, i.e., OctreeNode = Root.
[0033] S2.3.2 Each video three-dimensional tile is obtained in sequence; wherein the minimum bounding box of the video three-dimensional tile is an OBB.
[0034] S2.3.3 If the minimum bounding box OBB of the current node OctreeNode does not contain the OBB, step S2.3.2 is jumped back to obtain the next video three-dimensional tile and execute the following steps; otherwise, the next step is executed. node
[0035] S2.3.4 If the current node OctreeNode has no free storage number, 8 octree child nodes OctreeChild are obtained; if the current node OctreeNode has no child node at this time, the current node OctreeNode is split into 8 octree child nodes OctreeChild according to the octree splitting manner; after the child nodes are obtained, the current node OctreeNode is reset, i.e., OctreeNode = OctreeChild, then step S2.3.2 is jumped back to execute the subsequent operation on the next video three-dimensional tile; if the current node OctreeNode has a free storage number, the video three-dimensional tile is inserted into the current node OctreeNode.
[0036] Preferably, in the step S3, the three-dimensional geographic scene update is divided into the following three stages.
[0037] S3.1 Before scene update: the breadth-first traversal algorithm is used on the root node Root to perform the visibility judgment of the current camera view frustum and the octree node on each node, to obtain the visible octree nodes NodeSet and the corresponding video three-dimensional tile set TileSet, and the LOD model of the current video three-dimensional tile is obtained during the traversal.
[0038] S3.2 Scene update: Video data service is requested asynchronously for the video three-dimensional tile set TileSet, and the current monitoring camera field of view and video texture are rendered; wherein, this step transmits all video three-dimensional tile sets in the same node to the GPU end at one time, and performs a union operation on the shadow map area of multiple video three-dimensional tiles on the GPU end to calculate fusion.
[0039] S3.3 Scene update: The video three-dimensional tile that is not visible is deleted using an asynchronous call method. This stage uses an asynchronous request mechanism.
[0040] Preferably, the specific implementation steps of constructing the LOD model in step S3.1 are as follows.
[0041] S3.1.1 If the current video three-dimensional tile is visible, set the interval extraction threshold threshold, and the default count count = 0; this step sets different interval extraction thresholds threshold according to the distance distance between the camera and the video three-dimensional tile.
[0042] S3.1.2 Refresh the scene page according to the Cesium scene update cycle mechanism, and update count = count + 1 each time.
[0043] S3.1.3 If count < threshold, go back to step S3.1.2; otherwise, perform the next step.
[0044] S3.1.4 When count = 0, extract the current video frame Frame.
[0045] Preferably, the specific implementation steps of calculating fusion and rendering in step S3.2 are as follows.
[0046] S3.2.1 Obtain NodeSet and the corresponding video three-dimensional tile set TileSet.
[0047] S3.2.2 Transmit the video three-dimensional tiles of the video three-dimensional tile set TileSet in the same node to the GPU end at one time.
[0048] S3.2.3 Obtain the video frame Frame and the shadow map ShadowMap in the video three-dimensional tile set TileSet.
[0049] S3.2.4 Use the parallel processing capability of the WebGL shader to perform a union operation on the shadow map set and the video frame set to obtain a fused video frame FrameU and a fused shadow map ShadowMapU.
[0050] S3.2.5 rendering the current video fusion geographic scene based on the fused video frame FrameU and the fused shadow map ShadowMapU.
[0051] The present application has the following advantages: the step S2 of the present application improves the octree organization method, and the improved octree index model firstly inserts cameras with video overlapping regions into the same node, and then inserts cameras with non-overlapping video regions into the remaining nodes, facilitating subsequent unified management and scheduling. By using a dynamic LOD strategy, the same rendering pipeline is used to uniformly process the video three-dimensional tiles in the OctreeNode, improving the visualization effect and efficiency. Through WebGL parallel processing, the required tile nodes are quickly obtained by traversing the video fusion large-scale organization method, and the scene parallel optimization rendering strategy is used to realize efficient visualization of video data in a large range, improving the effect and efficiency of large-scale monitoring video, and providing technical support for subsequent navigation, automatic monitoring and other business applications. The existing LOD model is difficult to adapt to real-time video stream. BRIEF DESCRIPTION OF DRAWINGS
[0052] Figure 1 The basic flowchart of the parallel optimization visualization method of the large-scale monitoring video fusion geographic scene of the present application.
[0053] Figure 2 The local visualization effect diagram under the large-scale camera video overlapping environment obtained by applying the present application.
[0054] Figure 3 The frame rate (FPS) comparison diagram obtained by comparing the present application with the prior art. DETAILED DESCRIPTION
[0055] The specific embodiments of the present application will be further described below with reference to the drawings, and by describing the embodiments, to help those skilled in the art to have a more complete, accurate and in-depth understanding of the inventive concept and technical solutions of the present application.
[0056] As shown in Figure 1 The present application provides a parallel optimization visualization method of a large-scale monitoring video fusion geographic scene, comprising the following steps.
[0057] S1, initializing parameters.
[0058] This step forms a three-dimensional video tile set according to the existing monitoring camera parameters, specifically including the following sub-steps.
[0059] S1.1 forming a single monitoring camera into a frustum range and a video fusion scene as a video three-dimensional tile, which can be abstracted as the following expression.
[0060]
[0061] where S represents the acquired shadow map; V represents the video stream; g(V) represents the video frame extracted from the video stream; f(S, g(V), a) represents the video texture formed by the shadow map S and the video frame g(V) with geographical features, and the video texture is superimposed on the three-dimensional geographical scene according to the transparency value a (a ranges from 0 to 1).
[0062] where the shadow map S includes camera parameters and a shadow map formed based on the camera parameters. The camera parameters include intrinsic parameters and extrinsic parameters. The intrinsic parameters include a field of view, a near plane, a far plane and a video aspect ratio; the extrinsic parameters mainly include a geographical position (i.e. longitude, latitude and height) of the camera and a camera pose feature (i.e. yaw, pitch and roll). The video stream V includes a uniform resource locator and a corresponding network link, and the video stream V is formed into a video through video address resolution.
[0063] S1.2 form a cluster Cluster of video three-dimensional tiles from a set of three-dimensional video tiles corresponding to the camera part of the overlapping area, and each cluster Cluster forms a cluster set ClusterSet. Each cluster Cluster has a minimum bounding box OBB cluser and a number N of video three-dimensional tiles. Other video three-dimensional tiles have a minimum bounding box OBB, and the corresponding number of video three-dimensional tiles is 1.
[0064] S2, construct an octree index model for large-scale multi-monitor video scene fusion.
[0065] Unlike the traditional octree organization, this step uses an improved octree index model. When constructing, first insert cameras with video overlapping areas into the same node, and then insert cameras with non-overlapping video areas into the remaining nodes, so as to facilitate subsequent unified management and scheduling. This step specifically includes the following sub-steps.
[0066] S2.1: Set the maximum number of three-dimensional video tiles stored in each node of the current octree index to T, and calculate the root node Root of the octree node from the minimum outer bounding box of the current set of three-dimensional tiles.
[0067] S2.2 traverse the clusters Cluster in the cluster set ClusterSet and insert the clusters Cluster into the nodes of the octree. This step includes the following sub-steps.
[0068] S2.2.1 set the current node OctreeNode, i.e. OctreeNode = Root.
[0069] S2.2.2 obtain each cluster Cluster in turn. The minimum bounding box of the current cluster Cluster is OBB cluserAnd the number of the video three-dimensional tiles in the video three-dimensional tile set is N.
[0070] S2.2.3 judges whether the minimum bounding box OBB of the current node OctreeNode contains the minimum bounding box OBB of the current cluster Cluster. node cluser If not, the method jumps back to step S2.2.2 to get the next cluster Cluster; otherwise, the next step is executed.
[0071] S2.2.4 If the number of the video three-dimensional tiles N of the current cluster Cluster is greater than the empty storage number of the current node OctreeNode, the current node is divided into 8 child nodes OctreeChild according to the octree division mode. Then the child nodes OctreeChild are traversed, the current node OctreeNode is reset, and OctreeNode=OctreeChild. Then the method jumps back to step S2.2.2 to get the next cluster Cluster; otherwise, the video three-dimensional tiles in the current cluster Cluster are inserted into the current node OctreeNode.
[0072] The step S2.2 is repeatedly executed until all the clusters Cluster in the cluster set ClusterSet are inserted into the octree.
[0073] S2.3 inserts the video three-dimensional tiles not belonging to the cluster Cluster into the corresponding octree node. The step mainly includes the following sub-steps.
[0074] S2.3.1 sets the current node OctreeNode, and OctreeNode=Root.
[0075] S2.3.2 obtains each video three-dimensional tile in turn. The minimum bounding box of the video three-dimensional tile is OBB.
[0076] S2.3.3 judges whether the minimum bounding box OBB of the current node OctreeNode contains the minimum bounding box OBB of the video three-dimensional tile. node If not, the method jumps back to step S2.3.2 to get the next video three-dimensional tile and execute the following step; otherwise, the next step is executed.
[0077] S2.3.4 If the current node OctreeNode has no free storage, obtain eight octree child nodes OctreeChild. If the current node OctreeNode does not have any child nodes, create eight octree child nodes OctreeChild for the current node OctreeNode using the octree partitioning method. After obtaining the child nodes, reset the current node OctreeNode to OctreeNode = OctreeChild, then return to step S2.3.2 and perform subsequent operations on the next 3D video tile. If the current node OctreeNode has free storage, insert the 3D video tile into the current node OctreeNode.
[0078] Repeat step S2.3 until all remaining 3D video tiles are inserted into the octree.
[0079] S3, based on WebGL (Web Graphics Library) parallel optimization scene.
[0080] This step uses a scene scheduling algorithm to dynamically schedule large-scale geographic fusion scenes, enabling efficient visualization across a wide range. This scheduling process builds on the organization of the octree index model in step S2 and utilizes a dynamic LOD strategy to uniformly process all 3D video tiles within the current OctreeNode using the same rendering pipeline, improving visualization quality and efficiency. This process, based on the Cesium page rendering update process, divides 3D geographic scene updates into the following three phases.
[0081] S3.1 Before scene update: Use the breadth-first traversal algorithm to determine the visibility of each node in the current camera frustum and octree node of the root node Root, obtain the visible octree node NodeSet and the corresponding video 3D tile set TileSet, and obtain the LOD model of the current video 3D tile during traversal.
[0082] Among them, the LOD model mainly realizes the construction process of the dynamic LOD model by setting the video frame sampling frequency. Different levels of LOD models are defined by setting different extraction frame frequencies. The specific implementation steps of building the LOD model are as follows:
[0083] S3.1.1 If the current video 3D tile is visible, set the interval extraction threshold threshold, with the default count count = 0. This step sets different interval extraction thresholds according to the distance between the camera and the video 3D tile.
[0084] S3.1.2 Update the scene page according to the Cesium scene update cycle mechanism, and update count = count + 1 each time.
[0085] S3.1.3 If count < threshold, jump back to step S3.1.2; otherwise, perform the next step.
[0086] S3.1.4 When count = 0, extract the current video frame Frame.
[0087] Step 3.1 Define different interval extraction thresholds threshold according to the actual application effect. Obviously, the farther the video three-dimensional tile is from the camera, the higher the interval extraction threshold threshold is set, the lower the video frame extraction frequency is, and the lower the corresponding LOD model level is.
[0088] S3.2 Scene update: asynchronously request video data service for the video three-dimensional tile set TileSet, and render the current monitoring camera field of view range and video texture.
[0089] In this step, all video three-dimensional tile sets in the same node are transmitted to the GPU end at one time, and the union operation is performed on the shadow map area of multiple video three-dimensional tiles to calculate the fusion on the GPU end, which avoids multiple input to the GPU and reduces the rendering efficiency, and also helps to realize the texture fusion of the video overlapping area. The specific implementation steps of calculating and rendering the fusion are as follows.
[0090] S3.2.1 Obtain NodeSet and corresponding video three-dimensional tile set TileSet.
[0091] S3.2.2 Transmit the video three-dimensional tiles of the video three-dimensional tile set TileSet in the same node to the GPU end at one time.
[0092] S3.2.3 Obtain the video frame Frame and shadow map ShadowMap in the video three-dimensional tile set TileSet.
[0093] S3.2.4 Use the parallel processing capability of WebGL shader to perform union operation on the shadow map set and the video frame set respectively to obtain a fused video frame FrameU and a fused shadow map ShadowMapU.
[0094] S3.2.5 Render the current video fusion geographic scene based on the fused video frame FrameU and the fused shadow map ShadowMapU.
[0095] S3.3 Scene update: use asynchronous calling method to delete the tile that is not visible. This stage uses an asynchronous request mechanism.
[0096] The step uses the same rendering pipeline to optimize the same node of the octree in the dynamic scheduling process, and uniformly processes the video overlapping area, so that a better fusion effect is obtained and the rendering efficiency is improved.
[0097] The method traverses the video to quickly obtain the required tile node in a large range of organization modes, and uses a scene parallel optimization rendering strategy to realize large-scale efficient visualization of video data, thereby improving the effect and efficiency of large-scale monitoring video, and providing technical support for subsequent navigation, automatic monitoring and other business applications.
[0098] As shown in Figure 2 , Figure 3 , the rendering effect of the method in the large-scale camera video overlapping environment is simulated by experiment, and it is compared with the prior art using the traditional octree organization mode and the dynamic LOD model in the method combined with the traditional octree organization mode. The experiment records the rendering efficiency of the same scene at 584m under different simulated scenes for 1 to 70000 videos. Obviously, the rendering efficiency of the method is higher than that of the prior art.
[0099] The above describes the present application in conjunction with the drawings, and it is obvious that the specific implementation of the present application is not limited by the above method. Any non-essential improvement using the inventive concept and technical solution of the present application, or direct application of the inventive concept and technical solution of the present application to other occasions without improvement, is within the protection scope of the present application.
Claims
1. A method for parallel optimized visualization of large-scale monitoring video fused geographical scenes, characterized in that: The method comprises the following steps: S1, initializing parameters, forming a video three-dimensional tile set according to existing monitoring camera parameters, wherein a single monitoring camera is defined as a video three-dimensional tile in a view frustum range and a video fusion scene; S2, constructing an octree index model for a large-scale multi-monitoring video scene fusion, wherein the cameras with video overlapping regions are inserted into the same node, and the cameras with non-overlapping video regions are inserted into the remaining nodes; S3, optimizing the scene in parallel based on WebGL, and realizing dynamic scheduling of a large-scale geographic fusion scene based on a scene scheduling algorithm, thereby realizing large-scale efficient visualization; The scheduling process of this step is based on the organization mode of the octree index model in step S2, and a dynamic LOD strategy is used to uniformly process the video three-dimensional tiles in the current node OctreeNode by using a same rendering pipeline; The step S1 specifically comprises: S1.1, defining a single monitoring camera as a video three-dimensional tile in a view frustum range and a video fusion scene; S1.2, forming clusters of video three-dimensional tiles from the video three-dimensional tile set corresponding to the camera part of the overlapping region, and forming a cluster set from the clusters; The expression of the video three-dimensional tile is defined as: Wherein S represents an obtained shadow map; V represents a video stream; g(V) represents a video frame extracted from the video stream; f(S, g(V), a) represents video texture with geographic features formed by the shadow map S and the video frame g(V), and the video texture is superimposed on a three-dimensional geographic scene according to the transparency value a, and a takes a value in the range of 0-1; Each cluster Cluster has a minimum oriented bounding box OBB cluser and a number of video three-dimensional tiles N; other video three-dimensional tiles have a minimum oriented bounding box OBB and a corresponding number of video three-dimensional tiles of 1; each cluster Cluster forms a cluster set ClusterSet.
2. The parallel optimized visualization method for monitoring a large-scale video fusion geographic scene according to claim 1, characterized in that: The step S2 specifically comprises: S2.1, setting the maximum value of the three-dimensional video tiles stored in each node of the current octree index as T, and obtaining the root node Root of the octree node by calculating the minimum bounding box of the current three-dimensional tile set; S2.2, traversing the clusters Cluster in the cluster set ClusterSet and inserting the clusters Cluster into the nodes of the octree; Repeat step S2.2 until all clusters Cluster in the cluster set ClusterSet are inserted into the octree; S2.3, inserting the video three-dimensional tiles not belonging to the clusters Cluster into the corresponding octree nodes; Repeat step S2.3 until all the remaining video three-dimensional tiles are inserted into the octree.
3. The parallel optimized visualization method of claim 2, wherein: The step S2.2 specifically comprises: S2.2.1, setting the current node OctreeNode, and letting OctreeNode=Root; S2.2.2 sequentially obtain each cluster Cluster; wherein the minimum bounding box of the current cluster Cluster is OBB cluser And the number of video three-dimensional tiles therein is N; S2.2.
3. Make a judgment, if the minimum bounding box OBB of the current node OctreeNode does not contain the minimum bounding box OBB of the current cluster Cluster node does not contain the minimum bounding box OBB of the current cluster Cluster cluser then jump back to step S2.2.2 to get the next cluster Cluster; otherwise, execute the next step; S2.2.4, if the number N of the video three-dimensional tiles of the current cluster is greater than the empty storage number of the current node OctreeNode, then the current node is divided into 8 octree child nodes OctreeChild according to the octree division mode; then the child nodes OctreeChild are traversed, the current node OctreeNode is reset, and OctreeNode=OctreeChild is set, then step S2.2.2 is jumped back to obtain the next cluster Cluster; otherwise, the video three-dimensional tiles in the current cluster Cluster are inserted into the current node OctreeNode.
4. The parallel optimized visualization method of claim 2, wherein: The step S2.3 specifically comprises: S2.3.1 setting a current node OctreeNode, i.e., OctreeNode = Root; S2.3.2 sequentially obtaining each video three-dimensional tile; wherein, the minimum bounding box of the video three-dimensional tile is an OBB; S2.3.3 If OctreeNode minimum bounding box OBB node does not contain the OBB, then go back to step S2.3.2 to get the next video 3D tile and perform the following steps; otherwise, perform the next step; S2.3.4 if the current node OctreeNode has no spare storage number, obtaining eight octree child nodes OctreeChild; if the current node OctreeNode has no child node at this time, forming eight octree child nodes OctreeChild according to the octree splitting mode for the current node OctreeNode; after obtaining the child nodes, resetting the current node OctreeNode, i.e., OctreeNode = OctreeChild, and then jumping back to step S2.3.2 to perform subsequent operations on the next video three-dimensional tile; if the current node OctreeNode has spare storage number, inserting the video three-dimensional tile into the current node OctreeNode.
5. The parallel optimized visualization method for monitoring a large-scale video fused geographic scene according to claim 1, characterized in that: In the step S3, the three-dimensional geographic scene update is divided into the following three stages: S3.1 before scene update: using a breadth-first traversal algorithm for the root node Root to perform visibility judgment of the current camera frustum and the octree node for each node, obtaining visible octree nodes NodeSet and corresponding video three-dimensional tile sets TileSet, and obtaining the LOD model of the current video three-dimensional tile during traversal; S3.2 scene update: obtaining video data services through asynchronous request for the video three-dimensional tile set TileSet, and rendering the current monitoring camera field of view range and video texture; wherein, this step transmits all video three-dimensional tile sets in the same node to the GPU end at one time, and performs a union operation on the shadow map regions of multiple video three-dimensional tiles to calculate fusion on the GPU end; S3.3 after scene update: using an asynchronous calling mode to delete the tile; this stage uses an asynchronous request mechanism.
6. The parallel optimized visualization method of claim 5, wherein: The specific implementation steps of constructing the LOD model in step S3.1 are as follows: S3.1.1 if the current video three-dimensional tile is visible, setting an interval extraction threshold threshold, and the default count is 0; this step sets different interval extraction thresholds threshold according to the distance distance between the camera and the video three-dimensional tile; S3.1.2 refreshing the scene page according to the Cesium scene update cycle mechanism, and updating count = count + 1 each time; S3.1.3 if count < threshold, jumping back to step S3.1.2; otherwise, performing the next step; S3.1.4 when count = 0, extracting the current video frame Frame.
7. The parallel optimized visualization method of claim 5, wherein: The specific implementation steps of calculating fusion and rendering in step S3.2 are as follows: S3.2.1 obtaining NodeSet and corresponding video three-dimensional tile sets TileSet; S3.2.2 transmit the video 3D tiles of the video 3D tile set TileSet in the same node to the GPU end at one time; S3.2.3 acquire the video frame Frame and the shadow map S in the video 3D tile set TileSet; S3.2.4 utilize the WebGL shader parallel processing capability, and obtain a fused video frame FrameU and a fused shadow map ShadowMapU by respectively solving the shadow map set and the video frame set; S3.2.5 render the current video fused geographic scene based on the fused video frame FrameU and the fused shadow map ShadowMapU.
Citation Information
Patent Citations
Three-dimensional model data tile type rapid loading method
CN106600523A
Stadium three-dimensional video fusion visual monitoring system and method
CN111586351A