Urban-level three-dimensional data updating method based on digital twin visualization engine and related equipment
Through the method based on the digital twin visualization engine, the problem of complex data update operations of existing three-dimensional base plates is solved, and the rapid and flexible local updates on the three-dimensional base plates are achieved, which meets the needs of rapid construction of digital twin applications and improves the efficiency and accuracy of data updates.
Patent Information
- Application Number
- CN202411652320.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-19
- Publication Date
- 2025-03-11
- Estimated Expiration
- 2044-11-19
AI Technical Summary
The existing three-dimensional base plate data format 3DTiles is complex in data processing and update operations, especially in cutting, erasing and replacing existing three-dimensional data. The existing tools are complex in operation, which is not conducive to fast and flexible management and cannot meet the needs of rapid construction of digital twin applications.
The city-level three-dimensional data update method based on the digital twin visualization engine is adopted, and the rapid and flexible local updates on the three-dimensional base plate are achieved through lightweight visualization tools and cloud-native technology. The specific steps include drawing the three-dimensional data area that needs to be updated, performing coordinate system conversion, geometric processing of the three-dimensional tile data nodes, data update processing in the specified LOD level, and analyzing other LOD levels layer by layer for full-range data updates, and finally storing the updated data in the object repository.
It realizes rapid and flexible local updates on the three-dimensional base plate, meets the needs of rapid update of three-dimensional data, improves the efficiency and accuracy of data updates, and is easy to deploy and expand.
Smart Images

Figure CN119597772A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a city-level three-dimensional data updating method and related equipment based on a digital twin visualization engine. Background Art
[0002] With the rapid development of digital twin technology, the three-dimensional model of the city has become an important foundation for supporting smart city management and planning. However, after the three-dimensional data is generated, how to achieve fast and efficient three-dimensional baseboard update and maintenance has become a technical problem that needs to be solved urgently.
[0003] The current mainstream 3D base plate data format is 3DTiles. This format is highly efficient in loading and displaying, but its data processing and update operations are complex, especially for cutting, erasing, and replacing existing 3D data. Most existing tools are heavy-duty software with complex operations, which is not conducive to fast and flexible management of urban 3D data and cannot meet the needs of rapid construction of digital twin applications. Summary of the invention
[0004] In view of the shortcomings of the existing technology, the present invention provides a city-level three-dimensional data updating method and related equipment based on a digital twin visualization engine, which adopts lightweight visualization tools and cloud-native technologies to realize fast and flexible local updates on the three-dimensional baseplate, meeting the needs of fast updating of three-dimensional data.
[0005] In order to achieve the above purpose and other advantages, the present invention adopts the following technical solutions: In a first aspect, the present invention provides a city-level three-dimensional data updating method based on a digital twin visualization engine, comprising: For the virtual three-dimensional urban space, the three-dimensional data area that needs to be updated is drawn through the digital twin visualization engine; Converting the three-dimensional data region between different coordinate systems to align the spatial positions of the three-dimensional tile data and the base plate data of the three-dimensional data region; Performing geometric processing on the nodes of the three-dimensional tile data to reorganize the geometric data in the nodes; In a specified LOD level, based on an update operation on the three-dimensional data region, data update processing is performed on all relevant nodes in the specified LOD level; After completing the data update process at the specified LOD level, analyzing other LOD levels layer by layer and performing full-range data update; The updated three-dimensional tile data is stored in an object repository and loaded for application.
[0006] According to a city-level three-dimensional data updating method based on a digital twin visualization engine provided by the present invention, the step of drawing a three-dimensional data area that needs to be updated through the digital twin visualization engine for a virtual city three-dimensional space includes: Performing three-dimensional scene rendering on the three-dimensional space of the city through a digital twin visualization engine; Based on the user's interactive operation, draw the boundary of the area that needs to be updated in the rendered three-dimensional scene; Based on the region boundary, spatial range information matching the three-dimensional base plate is acquired to determine the three-dimensional data region, and the data in the three-dimensional data region is converted into spatial data capable of coordinate conversion.
[0007] According to a city-level three-dimensional data updating method based on a digital twin visualization engine provided by the present invention, the step of converting the three-dimensional data area between different coordinate systems to align the spatial positions of the three-dimensional tile data and the base plate data of the three-dimensional data area includes: Identify the coordinate system used to construct the three-dimensional space of the city and determine the type of coordinate system to be converted; Based on the coordinate system and the coordinate system type, determining a coordinate system conversion algorithm; The coordinate system conversion algorithm is applied to the data in the three-dimensional data area that needs to be updated, and after the coordinate conversion is completed, a coordinate consistency check is performed.
[0008] According to a city-level three-dimensional data updating method based on a digital twin visualization engine provided by the present invention, the step of geometrically processing the nodes of the three-dimensional tile data to reorganize the geometric data in the nodes includes: Obtain the vertices and related geometric data contained in the node; For the vertices, performing vertex coordinate axis conversion processing and vertex coordinate transformation processing; After completing the vertex coordinate conversion process, the inclusion determination of the vertex and the triangle surface is performed respectively to obtain the corresponding inclusion determination results; Based on the inclusion determination result, the geometric data in the node is reorganized.
[0009] According to a city-level three-dimensional data updating method based on a digital twin visualization engine provided by the present invention, the step of performing data updating processing on all relevant nodes in the specified LOD level based on the update operation of the three-dimensional data area in the specified LOD level includes: Determine the specified LOD level; Based on the update operation of the three-dimensional data area, rebuild the node tree structure of the specified LOD level, and process the spatial relationship between nodes in the node tree structure; After completing the reconstruction of the node tree structure and the processing of the spatial relationship, the data is updated according to the update standard.
[0010] According to a city-level three-dimensional data updating method based on a digital twin visualization engine provided by the present invention, after completing the data update processing at the specified LOD level, the step of analyzing other LOD levels layer by layer and updating the data in a full range includes: Based on the LOD level relationship of the three-dimensional tile data, obtaining other LOD levels and analyzing the node tree structure of each LOD level layer by layer; Based on the node tree structure of each LOD level, the node tree relationship between the LOD levels is readjusted to ensure that the node trees between different LOD levels can maintain a correct parent-child relationship.
[0011] According to a city-level three-dimensional data updating method based on a digital twin visualization engine provided by the present invention, the step of storing the updated three-dimensional tile data in an object repository and loading and applying it comprises: Identify the object repositories that require storage; Determining, based on the object repository, a storage and transmission format of the three-dimensional tile data; configuring access rights of the object repository, and uploading the three-dimensional tile data to the object repository; The object repository generates a service address for the three-dimensional tile data, and based on the service address, loads the updated three-dimensional tile data into the digital twin application.
[0012] In a second aspect, the present invention provides an electronic device, the electronic device comprising: One or more processors; and a memory storing computer program instructions, which, when executed, cause the processor to perform the steps of any of the above-described city-level three-dimensional data updating methods based on a digital twin visualization engine.
[0013] In a third aspect, the present invention provides a computer-readable storage medium having a computer program / instruction stored thereon, which, when executed by a processor, implements the steps of a city-level three-dimensional data updating method based on a digital twin visualization engine as described in any one of the above-mentioned methods.
[0014] In a fourth aspect, the present invention provides a computer program product, comprising a computer program / instruction, which, when executed by a processor, implements the steps of the city-level three-dimensional data updating method based on a digital twin visualization engine as described in any one of the above-mentioned methods.
[0015] The present invention provides a city-level three-dimensional data update method and related equipment based on a digital twin visualization engine. For a virtual city three-dimensional space, a three-dimensional data area that needs to be updated is drawn through a digital twin visualization engine; the three-dimensional data area is converted between different coordinate systems to align the spatial position of the three-dimensional tile data of the three-dimensional data area and the base plate data; the nodes of the three-dimensional tile data are geometrically processed to reorganize the geometric data in the nodes; in a specified LOD level, based on the update operation of the three-dimensional data area, all relevant nodes in the specified LOD level are updated; after the data update processing is completed at the specified LOD level, other LOD levels are analyzed layer by layer and full-range data updates are performed; the updated three-dimensional tile data is stored in an object repository and loaded for application. The present invention adopts a lightweight digital twin visualization engine, which can intuitively draw the area that needs to be updated in the virtual city three-dimensional space, and adopts cloud native technology to support the storage, processing and distribution of the updated three-dimensional data. Thereby, fast and flexible local updates on the three-dimensional base plate are realized. The method is easy to deploy and expand, and meets the demand for fast updating of three-dimensional data. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other implementation methods can be obtained based on these drawings without paying any creative work.
[0017] Figure 1 It is a flowchart of a city-level three-dimensional data updating method based on a digital twin visualization engine provided by an embodiment of the present invention; Figure 2 It is a structural schematic diagram of the electronic device provided by the present invention. DETAILED DESCRIPTION
[0018] The above description is only an overview of the technical solution of the present invention. In order to more clearly understand the technical means of the present invention, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present invention more obvious and easy to understand, the following specifically cites a preferred embodiment and describes it in detail with the accompanying drawings as follows.
[0019] It should be noted that it is explicitly and implicitly understood by those of ordinary skill in the art that the embodiments described in the present invention can be combined with other embodiments without conflict. Unless otherwise defined, the technical terms or scientific terms involved in the present invention should be the usual meanings understood by people with ordinary skills in the technical field to which the present invention belongs. The words "one", "a", "a", "the" and the like involved in the present invention do not indicate a quantitative limitation and may represent the singular or plural. The terms "including", "comprising", "having" and any of their variations involved in the present invention are intended to cover non-exclusive inclusions; the terms "first", "second", "third", etc. involved in the present invention are merely to distinguish similar objects and do not represent a specific ordering of objects.
[0020] 3DTiles is a grid-oriented, displayable, large-scale 3D spatial data format. It is specially designed for streaming and rendering massive 3D geospatial data. As an open standard for 3D geospatial data, 3D Tiles is used to store and manage grid-based 3D model data. 3DTiles can support multiple levels of LOD (Level of Detail) and use Tilesets to organize and manage data. 3DTiles consists of tileset.json (an entry file that records the spatial logical relationship of tiles at all levels, such as how tiles at all levels remain continuous in space and how LOD is organized) and tiles, where tiles can be any of the .b3dm, .i3dm, .pnts, .vctr and .cmpt format files. The 3D model data in 3DTiles format uses the glTF specification and inherits its high rendering performance.
[0021] Digital twin visualization engine technology is an innovative method that integrates digital twin and visualization technology. This technology generates a virtual "twin" version of a physical system or object by integrating real-time data and advanced models. This virtual model not only reflects the state of the actual physical system in real time, but also allows users to simulate, analyze and predict in a virtual environment. With the help of three-dimensional graphics and interactive technology, users can intuitively observe and understand complex physical systems, discover potential problems, and identify optimization opportunities, thereby effectively improving the efficiency and performance of the system. Digital twin visualization engine technology has shown broad application potential in many fields such as manufacturing, aerospace, medical health, smart cities, etc., providing strong support for optimizing design and operation processes and improving decision-making quality.
[0022] Object storage is a technology that processes, stores, and retrieves data in units of objects. Each object contains the data itself, metadata, and a globally unique identifier. Object repositories store data through a flat address space, eliminating the hierarchical directory structure in traditional file systems. Since each object has a globally unique identifier (such as an object ID), users or applications are allowed to quickly retrieve objects through the identifier. Therefore, object repositories are suitable for storing and managing large amounts of unstructured data (such as images, videos, audio, 3D Tiles data, etc.), providing flexible and scalable storage solutions for cloud-native applications, and supporting rapid deployment and expansion of applications.
[0023] The applicant found that in order to improve the display efficiency of three-dimensional data, LOD technology is widely used in the 3DTiles format. LOD technology effectively reduces the amount of data and computational complexity during rendering through means such as node aggregation and triangulation compression, thereby improving the display performance. However, this optimization method brings difficulties to the update of three-dimensional data, especially for three-dimensional data update operations within a specific range (such as clipping, erasing and replacing, etc.), it is necessary to go deep into each LOD node and process the triangular faces one by one. This not only increases the difficulty of operation, but also greatly reduces the efficiency of data update. Moreover, when updating data, how to achieve consistency between these different coordinate systems is a technical difficulty. Due to the inconsistency of the coordinate system, data may be misaligned, deformed and other problems may occur during the update process, thereby affecting the accuracy and availability of the data. At present, most of the tools used to process three-dimensional data are relatively bulky and complex to operate. These tools usually require a large amount of computing resources and storage space, which are not only difficult to deploy, but also cumbersome to operate, which is not conducive to fast and flexible urban three-dimensional data management.
[0024] With the rapid development of digital twin technology, the update frequency and accuracy requirements for three-dimensional data are getting higher and higher. However, existing tools cannot meet this demand for fast and efficient data updates. Therefore, the present application embodiment provides a city-level three-dimensional data update method and related equipment based on a digital twin visualization engine, aiming to improve the efficiency and accuracy of three-dimensional data updates.
[0025] Reference Figure 1 As shown, an embodiment of the present invention provides a city-level three-dimensional data updating method based on a digital twin visualization engine, comprising: Step S1: For the virtual three-dimensional urban space, the three-dimensional data area that needs to be updated is drawn through the digital twin visualization engine.
[0026] In this embodiment, step S1 specifically includes: Step S101: Rendering a three-dimensional scene of the city three-dimensional space through a digital twin visualization engine; Step S102: based on the user's interactive operation, drawing the boundary of the area that needs to be updated in the rendered three-dimensional scene; Step S103: acquiring spatial range information matching the three-dimensional base plate based on the region boundary to determine the three-dimensional data region, and converting the data in the three-dimensional data region into spatial data capable of coordinate transformation.
[0027] Specifically, the use of advanced digital twin visualization engine technology can simulate and display the real three-dimensional environment of the city, including various elements such as buildings, roads, vegetation, etc. By rendering to provide a realistic virtual environment, users can intuitively see the three-dimensional form of the city in this virtual environment, enabling users to more accurately understand the three-dimensional structure of the city and provide an intuitive visual reference for subsequent data update operations.
[0028] The user draws the boundaries of the area that needs to be updated in the rendered 3D scene through the interactive tools provided by the digital twin visualization engine. The user can accurately draw the 3D space range that needs to be updated in the 3D space, that is, the closed 3D data area, by clicking, dragging, and other operations. Therefore, through interactive operations, the user can more flexibly control the update range to ensure that the update operation is only performed on the specified area, avoiding interference with other irrelevant data.
[0029] The system automatically calculates the spatial range information that matches the 3D baseplate based on the area boundary drawn by the user. This information includes key parameters such as the coordinates and size of the updated area. Then, the system converts the data in the 3D data area into spatial data that can be converted into coordinates, preparing for subsequent data update operations. This ensures that the updated data is consistent with the original data in position, avoiding data misalignment or loss.
[0030] Step S2: converting the three-dimensional data region between different coordinate systems to align the spatial positions of the three-dimensional tile data and the base plate data of the three-dimensional data region.
[0031] In this embodiment, step S2 specifically includes: Step S201: Identify the coordinate system used to construct the three-dimensional urban space, and determine the type of coordinate system to be converted; Step S202: determining a coordinate system conversion algorithm based on the coordinate system and the coordinate system type; Step S203: applying the coordinate system conversion algorithm to the data in the three-dimensional data area that needs to be updated, and performing a coordinate consistency check after the coordinate conversion is completed.
[0032] Specifically, constructing a virtual city 3D space involves the coordinate systems used by the digital twin visualization engine, GIS system (Geographic Information System), and 3D tile data (such as 3DTiles). For example, the digital twin engine may use the engine coordinate system, the GIS system may use the geographic plane coordinate system or the spherical coordinate system (such as the WGS84 coordinate system), and the 3D tile data may use the ECEF coordinate system (Earth-centered Earth-fixed coordinate system).
[0033] After clarifying the type of coordinate system that needs to be converted, select or design the corresponding coordinate system conversion algorithm. These algorithms are usually based on mathematical formulas and algorithm models, and can convert data from one coordinate system to data from another coordinate system. For example, for the conversion between the WGS84 coordinate system and the ECEF coordinate system, the WGS84 coordinate system uses latitude (Lat), longitude (Lon), and altitude (h) to represent the position of points on the surface of the earth, and the ECEF coordinate system uses X, Y, and Z three-dimensional Cartesian coordinates to describe a point at the center of the earth. Assuming a is the major axis of the earth (6378137.0 meters) and f is the flattening of the earth (1 / 298.257223563), e², the square of the first eccentricity, can be obtained by calculation. The conversion process from the WGS84 coordinate system to the ECEF coordinate system is as follows: (1) Calculate the parameters of the ellipse: in, N is the radius of curvature, Lat is the latitude, a is the semi-major axis of the Earth, and e² is the first eccentricity squared.
[0034] (2) Calculate the ECEF coordinates: in, h is the altitude and Lon is the longitude.
[0035] The conversion process of converting the ECEF coordinate system back to the WGS84 coordinate system is as follows: (1) Calculate longitude Lon: (2) Perform intermediate variables p : (3) Calculate the initial latitude θ (Newton's method can be used to find the exact solution): in, b is the semi-minor axis of the Earth, .
[0036] (4) Calculate latitude Lat and altitude h : in, is the square of the second eccentricity.
[0037] After the data conversion is completed, coordinate consistency check is required. The consistency of coordinates can be judged by calculating the coordinate range, mean value, standard deviation and other statistical indicators of the source data and the target data. The source data and the target data can also be imported into GIS software or map tools for visual display and comparison. By performing coordinate consistency check, it is ensured that the converted data is consistent with the spatial position of the three-dimensional base plate data. The above steps can ensure the precise alignment of the three-dimensional data update range with the base plate data spatial position, which can meet the complex spatial coordinate conversion requirements and ensure the accuracy of data update.
[0038] Step S3: Perform geometric processing on the nodes of the three-dimensional tile data to reorganize the geometric data in the nodes.
[0039] In this embodiment, step S3 specifically includes: Step S301: Obtain the vertices and related geometric data contained in the node; Step S302: for the vertex, performing vertex coordinate axis conversion processing and vertex coordinate transformation processing; Step S303: After completing the vertex coordinate conversion process, perform inclusion determination on vertices and triangles respectively to obtain corresponding inclusion determination results; Step S304: Based on the inclusion determination result, the geometric data in the node is reorganized.
[0040] Specifically, parse each node in the 3D tile data, extract the vertex information contained in the node, and the geometric data related to the vertex, such as coordinate value information (X, Y, Z), triangle surface information composed of the vertex, etc. Obtaining the vertex and related geometric data is the basis for subsequent geometric processing.
[0041] Since different systems or standards may use different coordinate axis definitions, it is necessary to perform corresponding axis conversion processing on vertex coordinates according to the coordinate axis definition of the target system. For example, the geometric data in the 3DTiles format is stored in the glTF standard, and its coordinate axis is Y-up, while the GIS system standard uses the Z-up coordinate system. Therefore, the coordinate system of all vertices needs to be converted from Y-up to Z-up to ensure the consistency of the coordinate axis definition.
[0042] Vertex coordinates may be stored in different coordinate systems (such as ECEF coordinate system, WGS84 coordinate system, etc.). In order to facilitate geospatial analysis and visualization, 3D Cartesian coordinates are converted into more intuitive and easier to understand geographic coordinates, so conversion between coordinate systems is required. For example, vertex coordinates in 3DTiles are stored in the ECEFF coordinate system, which needs to be converted to the WGS84 coordinate system or projected plane coordinates to improve the efficiency of subsequent vertex and triangle inclusion determination.
[0043] Use spatial geometry algorithms (such as point-in-polygon determination algorithms) to determine whether each vertex is within a specified three-dimensional data area to ensure that only data within the specified range is updated. Through vertex inclusion determination, it is possible to accurately determine which vertices need to be updated or retained, providing a basis for subsequent data reorganization.
[0044] Then, a spatial geometry algorithm (such as the face intersection algorithm) is used to determine whether the triangle intersects with the update range or is completely contained in the update range. By determining the triangle inclusion, it is possible to determine which triangles need to be updated or replaced to ensure that the updated 3D tile data can accurately reflect the changes in geographic spatial information.
[0045] For the filtered vertices, keep their coordinates and related attribute information. For the filtered triangles, keep their vertex indexes and possible material, texture and other attribute information. Based on the retention results, rebuild the data structure in the node, including vertex arrays, index arrays, material information, etc., to reorganize the geometric data in the node and prepare for subsequent update operations.
[0046] Step S4: In the specified LOD level, based on the update operation on the three-dimensional data area, data update processing is performed on all relevant nodes in the specified LOD level.
[0047] In this embodiment, step S4 specifically includes: Step S401: Determine the specified LOD level; Step S402: based on the update operation of the three-dimensional data region, rebuild the node tree structure of the specified LOD level, and process the spatial relationship between nodes in the node tree structure; Step S403: After completing the reconstruction of the node tree structure and the processing of the spatial relationship, the data is updated according to the update standard.
[0048] Specifically, the LOD level that needs to be updated is determined according to the user's update needs or application requirements. All relevant nodes and their attribute information in the specified LOD level are identified and extracted. Based on the update operations on the three-dimensional data area, such as data clipping, erasing or replacement, the node tree structure of the LOD level is reconstructed. During the reconstruction process, the spatial relationship between nodes is processed at the same time to ensure that the updated data is spatially consistent and coherent. Finally, according to the user-defined update standards or preset update rules, the data in the reconstructed node tree structure is updated. To ensure that all data meets the update standards, so that the updated data meets the expected standards and quality requirements.
[0049] Step S5: After completing the data update process at the designated LOD level, other LOD levels are analyzed layer by layer and the data is updated in the entire range.
[0050] In this embodiment, step S5 specifically includes: Step S501: based on the LOD level relationship of the three-dimensional tile data, obtaining other LOD levels and analyzing the node tree structure of each LOD level layer by layer; Step S502: Based on the node tree structure of each LOD level, readjust the node tree relationship between LOD levels to ensure that the node trees between different LOD levels can maintain the correct parent-child relationship.
[0051] Specifically, after completing the data update of the specified LOD level, based on the LOD level relationship of the three-dimensional tile data, other LOD levels are obtained. For each LOD level, the system analyzes its node tree structure layer by layer, including the number, type, attributes of the nodes, and the connection relationship between the nodes. On the basis of the layer-by-layer analysis, the node tree relationship of the LOD level is reconstructed to ensure that the node trees between different LOD levels can maintain the correct parent-child relationship. After the node tree relationship is reconstructed, a full range of data update processing is performed on all LOD levels. For the data update processing at the specified LOD level in step S4, a full range of data update processing is performed on all LOD levels to ensure that the updated data is consistent with the data in other LOD levels in terms of accuracy, shape, attributes, etc. Thereby achieving a full range of data update from high precision to low precision. In addition, after completing the full range of data update, it is also necessary to check whether the updated data meets the requirements of rendering performance, interactive operations, etc.
[0052] Step S6: Store the updated three-dimensional tile data in the object repository and load it for application.
[0053] In this embodiment, step S6 specifically includes: Step S601: Determine the object storage repository that needs to be stored; Step S602: determining the storage and transmission format of the three-dimensional tile data based on the object repository; Step S603: configuring access rights of the object repository and uploading the 3D tile data to the object repository; Step S604: The object repository generates a service address for the three-dimensional tile data, and based on the service address, loads the updated three-dimensional tile data into the digital twin application.
[0054] Specifically, according to the data storage strategy, data capacity requirements, and performance requirements, select a suitable object repository (such as OSS, COS, AWS S3, or a locally deployed object storage solution). Configure the access rights of the object repository according to the data security and access control requirements. Use the appropriate upload tool or API to upload the updated 3D tile data to the object repository. After the data is uploaded, the object repository will generate a unique service address. Through this service address, the digital twin application can directly access and load the updated 3D tile data. In this way, efficient management and distribution of urban 3D data is achieved, and the interactivity and user experience of digital twin applications are improved. Therefore, using an object repository for data storage and loading not only ensures the security and accessibility of the data, but also improves the efficiency and speed of data loading, providing strong support for the real-time update and dynamic display of digital twin visualization applications.
[0055] In summary, the present invention provides a city-level three-dimensional data update method based on a digital twin visualization engine. For a virtual city three-dimensional space, a three-dimensional data area that needs to be updated is drawn through a digital twin visualization engine; the three-dimensional data area is converted between different coordinate systems to align the spatial position of the three-dimensional tile data of the three-dimensional data area and the base plate data; the nodes of the three-dimensional tile data are geometrically processed to reorganize the geometric data in the nodes; in a specified LOD level, based on the update operation of the three-dimensional data area, all relevant nodes in the specified LOD level are updated; after the data update processing is completed at the specified LOD level, other LOD levels are analyzed layer by layer and the data is updated in the full range; the updated three-dimensional tile data is stored in the object repository and loaded for application. The present invention adopts a lightweight digital twin visualization engine, which can intuitively draw the area that needs to be updated in the virtual city three-dimensional space, and adopts cloud native technology to support the storage, processing and distribution of the updated three-dimensional data. Thereby realizing fast and flexible local updates on the three-dimensional base plate. The method is easy to deploy and expand, and meets the demand for fast updating of three-dimensional data.
[0056] Those skilled in the art will appreciate that, in the above method of specific implementation, the order in which the steps are written does not imply a strict execution order and does not constitute any limitation on the implementation process. The specific execution order of the steps should be determined by their functions and possible internal logic.
[0057] In addition, some embodiments of the present application also provide an electronic device. The electronic device may be a digital computer in various forms, such as a laptop computer, a desktop computer, a workbench, a personal digital assistant, a server, a blade server, a mainframe computer, etc. The electronic device may also be a mobile device in various forms, such as a personal digital processing, a cellular phone, a smart phone, a wearable device, and other similar computing devices.
[0058] The electronic device includes: one or more processors; and a memory storing computer program instructions, and when the computer program instructions are executed, the processor performs the steps of the city-level three-dimensional data updating method based on the digital twin visualization engine provided in any one or more of the above embodiments. Figure 2 An exemplary structural diagram of the electronic device is disclosed. Figure 2 As shown, the electronic device includes: one or more processors 1101, a memory 1102, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. The various components are connected to each other using different buses and can be installed on a common motherboard or installed in other ways as needed. The processor can process instructions executed in the electronic device, including instructions stored in or on the memory to display graphical information of the GUI on an external input / output device (such as a display device coupled to the interface). In some other embodiments, if necessary, multiple processors and / or multiple buses can be used with multiple memories and multiple memories. Similarly, multiple electronic devices can be connected, and each device provides some necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Among them, the components shown in this article, their connections and relationships, and their functions are only examples, and are not intended to limit the implementation of the present application described and / or required herein.
[0059] The electronic device may further include: an input device 1103 and an output device 1104. The processor 1101, the memory 1102, the input device 1103 and the output device 1104 may be connected via a bus or other means. Figure 2 The example of connecting through bus is taken in the following.
[0060] The input device 1103 can receive input digital or character information, and generate key signal input related to the user settings and function control of the electronic device, such as a touch screen, a keypad, a mouse, a track pad, a touch pad, an indicator rod, one or more mouse buttons, a trackball, a joystick and other input devices. The output device 1104 may include a display device, an auxiliary lighting device (e.g., an LED) and a tactile feedback device (e.g., a vibration motor), etc. The display device may include, but is not limited to, a liquid crystal display (LCD), a light emitting diode (LED) display and a plasma display. In some embodiments, the display device may be a touch screen.
[0061] To provide interaction with a user, the electronic device may be a computer. The computer has: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or a trackball), through which the user can provide input to the computer. Other types of devices may also be used to provide interaction with a user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).
[0062] In an embodiment of the present application, a computer program / instruction is stored on a computer-readable medium, and when the computer program / instruction is executed by a processor, the steps of the city-level three-dimensional data update method based on the digital twin visualization engine provided in any one or more of the above embodiments are implemented. The computer-readable medium may be included in the electronic device described in the above embodiment; or it may exist independently without being assembled into the device. The above computer-readable medium carries one or more computer-readable instructions.
[0063] The memory 1102 can be used as a non-transient computer-readable storage medium, which can be used to store non-transient software programs, non-transient computer executable programs and modules. The processor 1101 executes various functional applications and data processing of the server by running the non-transient software programs, instructions and modules stored in the memory 1102, so as to implement the program instructions / modules corresponding to the method provided by any one or more embodiments in the embodiments of the present application.
[0064] The memory 1102 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created according to the use of the electronic device, etc. In addition, the memory 1102 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some embodiments, the memory 1102 may optionally include a memory remotely arranged relative to the processor 1101, and these remote memories may be connected to the electronic device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0065] It should be noted that more specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present application, a computer-readable storage medium may be any tangible medium containing or storing a program that may be used by or in conjunction with an instruction execution system, apparatus, or device.
[0066] Computer-readable storage media include permanent and non-permanent, removable and non-removable media, and can be implemented by any method or technology to store information. Information can be computer-readable instructions, data structures, modules of programs or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, read-only compact disk (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices or any other non-transmission medium that can be used to store information that can be accessed by a computing device.
[0067] Computer program code for performing the operations of the present application may be written in one or more programming languages or a combination thereof, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0068] In the above embodiments, all or part of the embodiments may be implemented by software, hardware, firmware or any combination thereof. For example, an application specific integrated circuit (ASIC), a general-purpose computer or any other similar hardware device may be used to implement the embodiments. In some embodiments, the software program of the present application may be executed by a processor to implement the above steps or functions. Similarly, the software program of the present application (including related data structures) may be stored in a computer-readable recording medium, such as a RAM memory, a magnetic or optical drive or a floppy disk and the like. In addition, some steps or functions of the present application may be implemented by hardware, for example, as a circuit that cooperates with a processor to perform various steps or functions.
[0069] The computer program product provided in the embodiment of the present application includes one or more computer programs / instructions, and when the computer program / instructions are executed by the processor, the process or function described in the embodiment of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website site, a computer, a server, or a data center to another website site, a computer, a server, or a data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode. The computer-readable storage medium may be any available medium that a computer can access or a data storage device such as a server or a data center that includes one or more available media integrations. The available medium may be a magnetic medium, (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid state disk (SSD)), etc.
[0070] The flow chart or block diagram in the accompanying drawings shows the possible architecture, function and operation of the equipment, method and computer program product according to various embodiments of the present application. In this regard, each box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flow chart, and the combination of the boxes in the block diagram and / or flow chart can be implemented with a dedicated system for hardware that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0071] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art can easily mention changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims, and the above embodiments should be regarded as exemplary and non-restrictive.
Claims
1. A city-level three-dimensional data updating method based on a digital twin visualization engine, characterized in that: include: For the virtual three-dimensional urban space, the three-dimensional data area that needs to be updated is drawn through the digital twin visualization engine; Converting the three-dimensional data region between different coordinate systems to align the spatial positions of the three-dimensional tile data and the base plate data of the three-dimensional data region; Performing geometric processing on the nodes of the three-dimensional tile data to reorganize the geometric data in the nodes; In a specified LOD level, based on an update operation on the three-dimensional data region, data update processing is performed on all relevant nodes in the specified LOD level; After completing the data update process at the specified LOD level, analyzing other LOD levels layer by layer and performing full-range data update; The updated three-dimensional tile data is stored in an object repository and loaded for application.
2. The three-dimensional data updating method based on the digital twin visualization engine according to claim 1 is characterized in that: The step of drawing the three-dimensional data area that needs to be updated through the digital twin visualization engine for the virtual three-dimensional urban space includes: Performing three-dimensional scene rendering on the three-dimensional space of the city through a digital twin visualization engine; Based on the user's interactive operation, draw the boundary of the area that needs to be updated in the rendered three-dimensional scene; Based on the region boundary, spatial range information matching the three-dimensional base plate is acquired to determine the three-dimensional data region, and the data in the three-dimensional data region is converted into spatial data capable of coordinate conversion.
3. The city-level three-dimensional data updating method based on the digital twin visualization engine according to claim 1 or 2 is characterized in that: The step of converting the three-dimensional data region between different coordinate systems to align the spatial positions of the three-dimensional tile data and the baseboard data of the three-dimensional data region comprises: Identify the coordinate system used to construct the three-dimensional space of the city and determine the type of coordinate system to be converted; Based on the coordinate system and the coordinate system type, determining a coordinate system conversion algorithm; The coordinate system conversion algorithm is applied to the data in the three-dimensional data area that needs to be updated, and after the coordinate conversion is completed, a coordinate consistency check is performed.
4. The three-dimensional data updating method based on the digital twin visualization engine according to claim 1 is characterized in that: The step of geometrically processing the nodes of the three-dimensional tile data to reorganize the geometric data in the nodes comprises: Obtain the vertices and related geometric data contained in the node; For the vertices, performing vertex coordinate axis conversion processing and vertex coordinate transformation processing; After completing the vertex coordinate conversion process, the inclusion determination of the vertex and the triangle surface is performed respectively to obtain the corresponding inclusion determination results; Based on the inclusion determination result, the geometric data in the node is reorganized.
5. The city-level three-dimensional data updating method based on the digital twin visualization engine according to claim 1 is characterized in that: The step of performing data update processing on all relevant nodes in the specified LOD level based on the update operation on the three-dimensional data area in the specified LOD level includes: Determine the specified LOD level; Based on the update operation of the three-dimensional data area, rebuild the node tree structure of the specified LOD level, and process the spatial relationship between nodes in the node tree structure; After completing the reconstruction of the node tree structure and the processing of the spatial relationship, the data is updated according to the update standard.
6. The city-level three-dimensional data updating method based on the digital twin visualization engine according to claim 1 is characterized in that: After completing the data update process at the specified LOD level, the step of analyzing other LOD levels layer by layer and updating the data in the entire range includes: Based on the LOD level relationship of the three-dimensional tile data, obtaining other LOD levels and analyzing the node tree structure of each LOD level layer by layer; Based on the node tree structure of each LOD level, the node tree relationship between the LOD levels is readjusted to ensure that the node trees between different LOD levels can maintain a correct parent-child relationship.
7. The city-level three-dimensional data updating method based on the digital twin visualization engine according to claim 1 is characterized in that: The step of storing the updated three-dimensional tile data in an object repository and loading and applying the data comprises: Identify the object repositories that require storage; Determining, based on the object repository, a storage and transmission format of the three-dimensional tile data; configuring access rights of the object repository, and uploading the three-dimensional tile data to the object repository; The object repository generates a service address for the three-dimensional tile data, and based on the service address, loads the updated three-dimensional tile data into the digital twin application.
8. An electronic device, characterized in that: The electronic device comprises: One or more processors; and a memory storing computer program instructions, which, when executed, cause the processor to perform the steps of the city-level three-dimensional data updating method based on the digital twin visualization engine as described in any one of claims 1 to 7.
9. A computer-readable storage medium having a computer program / instruction stored thereon, characterized in that: When the computer program / instructions are executed by the processor, the steps of the city-level three-dimensional data updating method based on the digital twin visualization engine as described in any one of claims 1 to 7 are implemented.
10. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instructions are executed by a processor, the steps of the city-level three-dimensional data updating method based on the digital twin visualization engine as described in any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Three-dimensional model merging processing method and device and medium
CN115294312A
Digital twin system based on hybrid three-dimensional engine
CN115578492A
Multi-layer fusion digital twin space model organization method and system
CN116416502A
Three-dimensional visualization engine system based on digital twin engine and OGC standard
CN117218306A
Railway scene assembly-oriented digital twin model processing method and related equipment
CN117408034A
Cited By
Visual scene method, system and device based on digital twinning and medium
CN120596690A