Real scene three-dimensional modeling method and device based on cloud native task batch processing scheduling
By decomposing the three-dimensional modeling task into subtasks and using the dynamic scheduling technology of cloud-native architectures, the problems of low computing efficiency and low resource utilization in traditional real-life three-dimensional modeling are solved, and efficient three-dimensional modeling processing and resource management are realized , adapt to complex and large-scale modeling needs.
Patent Information
- Application Number
- CN202411366412.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-29
- Publication Date
- 2025-01-17
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
The traditional three-dimensional modeling method has problems such as low computing efficiency, untimely resource expansion and idle large amounts of resources, and cannot effectively respond to the needs of large-scale data processing, resulting in low processing efficiency and resource utilization.
Using a cloud-native task batch scheduling method, the three-dimensional modeling task is decomposed into multiple subtasks through the task segmentation module, and the task scheduling module of the cloud architecture is used to adjust computing resources in real time, combining the task status monitoring module and the subtask processing module, dynamically Scheduling and monitoring resource use to ensure efficient execution and rational use of resources.
It significantly improves the processing efficiency and resource utilization of three-dimensional modeling tasks, can quickly respond to real-life three-dimensional modeling needs of different scales and complexities, reduces resource waste and project development time, and improves the flexibility and scalability of the system.
Smart Images

Figure CN119323633A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to but is not limited to the technical field of real-scene three-dimensional modeling, and in particular relates to a real-scene three-dimensional modeling method and device based on cloud-native task batch scheduling. Background Art
[0002] With the full advancement of real-life 3D construction, the surveying and mapping and geographic information industry in the new era has a new positioning and new demands in serving economic and social development and ecological civilization construction. At present, traditional 3D modeling software generally uses single-machine computing or multi-computer parallel clusters for 3D modeling. With the full development of real-life 3D projects, a large amount of 3D modeling data will be generated waiting to generate 3D models. However, the processing efficiency of existing 3D modeling software gradually decreases as the task volume increases, and it is limited by the cluster size and cannot perform large-scale calculations.
[0003] In order to solve the problem of large-scale data processing, the usual solution for traditional 3D modeling software is to increase computing resources to expand computing power. Due to the large shooting and acquisition range and the large amount of image data of traditional 3D modeling software, one computer usually cannot complete the reconstruction task at one time. It is necessary to manually adjust the reconstruction framework according to the computer performance and adjust the reconstruction range to adapt to the maximum range that the computer hardware can reconstruct. (Quoted from CN202110602068.7) This method takes a lot of time to build and configure the cluster and does not have effective flexibility. Moreover, after the resource configuration is completed, when there is no task processing or the task processing volume is small, the computing resources in the cluster will be idle, resulting in low resource utilization or even waste. In addition, the method of increasing computing resources also has certain limitations in responding to sudden large-scale data processing needs, and cannot quickly adapt to changing load requirements, further affecting the overall processing efficiency and economy.
[0004] The cloud-native system architecture platform adopts a distributed computing model, which not only supports multiple servers to execute tasks in parallel, but also supports the rapid adjustment of computing resources and storage resources to make resource utilization more efficient. The real-life 3D modeling task combined with the cloud-native architecture can utilize huge and flexible computing resources, which can not only complete a large number of 3D modeling tasks in a short time and improve modeling efficiency, but also quickly expand computing and storage resources according to demand, adapting to real-life 3D modeling tasks of different scales and complex requirements.
[0005] In view of the above analysis, the technical problems that need to be solved urgently in the prior art are:
[0006] Traditional real-scene 3D modeling methods have problems such as low computing efficiency, untimely resource expansion, and a large amount of idle resources. Summary of the invention
[0007] In response to the problems existing in the prior art, the present invention provides a real-scene three-dimensional modeling method and device based on cloud-native task batch scheduling.
[0008] The present invention is implemented as follows: a real-scene 3D modeling method based on cloud-native task batch scheduling, the method specifically comprising:
[0009] S1: Calculate the encrypted data of the 3D modeling task, and the task segmentation module divides the encrypted data into blocks;
[0010] S2: Design a task scheduling module based on cloud architecture, adjust the operation of subtasks and task distribution in real time according to the computing resources available in the cloud architecture system, and optimize the utilization of distributed computing resources in real time;
[0011] S3: Run the task status monitoring module in the system to monitor the execution status of subtasks in real time;
[0012] S4: The subtask processing module generates the image data in each block accordingly, and uploads the generated results to the storage resource pool after the operation is completed;
[0013] S5: Monitor the execution status of all subtasks. When all subtasks are completed, call the model merging module to merge the entire model.
[0014] Furthermore, S1 divides the real-scene 3D reconstruction task into blocks using the aerial triangulation encrypted data, and reversely pulls the image data required to reconstruct the area according to the distribution position of the sparse point cloud in each sub-block, and generates a task configuration table. The sub-block configuration table includes the image data to be processed in each sub-block and the sub-block data information. The following are the key steps to implement the task segmentation module:
[0015] (1) Spatial data analysis: Extract image feature points from aerial images and perform image feature matching. Based on the feature extraction results, perform feature point matching. After image feature matching is completed, perform bundle method regional block adjustment to generate aerial triangulation encrypted data, including the camera position, attitude, and sparse point cloud connecting the camera feature points.
[0016] (2) Sub-block division strategy: Based on the sparse point cloud in the generated aerial triangulation data, the entire 3D modeling task is divided into 50 m × 50 m blocks in the effective calculation area to generate multiple sub-blocks.
[0017] (3) Data preparation: According to the sub-block division results, reverse pull the camera position distribution position and image data corresponding to the sparse point cloud in each sub-block. Reverse pulling is to calculate the feature points contained in the corresponding camera acquisition image in the current block sparse points, pull and select the corresponding image data, and pre-process the image. This step includes image data screening, alignment and format conversion;
[0018] (4) Task configuration table generation: Generate a task configuration table file for each sub-block. The configuration table records in detail the specific information of the image data to be processed in each sub-block, including the image file path, data volume, and processing priority.
[0019] Furthermore, the task scheduling module S2 mainly includes the following key steps:
[0020] (1) Build a cluster resource pool: Initialize the resource information of the cloud computing cluster, such as CPU, GPU, memory, and disk space;
[0021] (2) Subtask distribution statistics: The large 3D modeling task is divided into multiple subtasks. The subtasks are queued for execution through the task scheduling module and are arranged in the resource pool to wait for the execution of the task scheduling module. According to the allocation strategy of the task scheduling module, each subtask is distributed to the corresponding computing resources.
[0022] (3) Subtask priority and weight: Assign a priority and weight to each subtask. The priority is used to determine the order of task scheduling, and the weight is used to determine the resources required for each subtask.
[0023] (4) Dynamic resource allocation and scheduling: monitor the processing of each subtask and dynamically adjust the allocation based on actual resource usage;
[0024] (5) Monitoring and feedback: The real-time monitoring platform collects information about the execution of subtasks, such as the time required, failure rate, and resource consumption, and analyzes this data to continuously optimize the task scheduling strategy.
[0025] (6) Merge task call: After all subtasks are completed, collect and integrate the processing results of the subtasks, and call the overall merge task to merge the results generated by the subtasks into the final result.
[0026] Further, the task status monitoring module S3 monitors various running states of subtasks, including running completion, abnormal termination, interruption, pause, waiting for resources, etc., and performs corresponding operations according to different running states. The following are the key steps to implement this module:
[0027] (1) Subdividing task status granularity: subdividing subtask status into multiple categories, including running, completed, abnormal termination, manual interruption, paused, and waiting for resources;
[0028] (2) Real-time data collection: Regularly query the task status in the resource pool or use existing monitoring tools to achieve this;
[0029] (3) Notification and alarm mechanism: Generate notifications or alarms based on changes in subtask status, and take appropriate measures based on the specific status and situation of each subtask;
[0030] (4) Status and performance reports: The task status monitoring module generates status reports and performance reports so that operators and managers can understand the overall task progress and resource consumption.
[0031] Furthermore, the subtask execution in S4 mainly includes the following operators: depth map generation, depth map fusion, gridding, texture mapping, format conversion, etc. in the current sub-block, and the subtask processing module is executed in the cloud computing resources, including:
[0032] Subtask execution environment: Configure the execution environment on cloud computing resources, including preparing the execution environment for any tools or frameworks required for the real-life 3D modeling process, and using automation tools to quickly configure and manage the execution environment;
[0033] Subtask processing module: Develop a processing module for each subtask to run various parts of the real scene 3D modeling process on cloud computing resources. Each processing module contains one or more serial operators to complete the entire subtask process;
[0034] Concurrent task execution: The scheduling system executes each subtask in parallel in cloud computing resources according to task priority and resource availability, uses parallel computing technology and load balancing strategies to maximize the overall project progress and resource utilization, monitors resource usage in real time, and dynamically adjusts task scheduling;
[0035] Result upload: After each subtask processing module is completed, the generated processing results (such as depth map, fusion map, mesh, texture and conversion data, etc.) are uploaded to the resource pool.
[0036] Furthermore, the key steps of the S5, model merging module include:
[0037] (1) Result retrieval: The task status monitoring module is used to obtain the information of all subtasks that have been successfully completed and uploaded to the storage resource pool, and the processing result data of the subtasks are extracted in sequence;
[0038] (2) Model alignment and compatibility: ensuring that the 3D models obtained from each subtask are partially compatible and ready for the merge operation, aligning, scaling, or deleting some models, eliminating inconsistencies and ensuring seamless merging;
[0039] (3) Merging algorithm: Implement a merging algorithm to combine the real-scene 3D model parts from different subtasks into a complete real-scene 3D model;
[0040] (4) Merging process call: When the task status monitoring module confirms that all subtasks have been successfully executed, the merging module is called according to the preset merging strategy to start merging the various model parts into a complete real-life 3D model;
[0041] (5) Verification of merged results: After the merge process is completed, the generated complete real-life 3D model is verified to check its completeness, accuracy, and consistency. If any problems occur, it is necessary to trace back to the relevant subtasks and make adjustments to resolve the potential problems.
[0042] (6) Storage and output: The final complete real-life 3D model is stored in a storage resource pool and an output file is generated for subsequent overall analysis, design, and optimization.
[0043] Another object of the present invention is to provide a real-scene 3D modeling device based on cloud-native task batch scheduling, which specifically includes:
[0044] The task segmentation module is used to decompose the entire real-scene 3D modeling task into multiple subtasks through the association relationship of the aerial triangulation encrypted data;
[0045] The task scheduling module is used to adjust the operation of subtasks and the dispatch of tasks in real time according to the computing resources available in the cloud architecture system;
[0046] The task monitoring module is used to monitor the execution status of subtasks in real time, including real-time status such as running progress and resource utilization.
[0047] The subtask processing module is used to generate the image data in each block accordingly, and upload the generated results to the storage resource pool after the operation is completed for further integration and processing;
[0048] The task merging module is used to merge the 3D models generated by each subtask to generate a complete real-scene 3D model for subsequent overall analysis, design and display.
[0049] In combination with the above technical solutions and the technical problems solved, the advantages and positive effects of the technical solutions to be protected by the present invention are as follows:
[0050] First, the task segmentation module is used to process the entire real-life 3D modeling task in blocks based on the association relationship of the aerial triangulation data. By decomposing the modeling task into multiple subtasks, the aerial triangulation data processing module can effectively cope with the complexity and resource consumption of the 3D modeling task. The subtasks in 3D modeling are usually the longest and most resource-consuming parts. By segmenting large 3D tasks into multiple subtasks and executing them concurrently, the modeling efficiency and the utilization of computing resources can be significantly improved.
[0051] Second, the task scheduling module based on cloud architecture. This module designs a cloud-based system to monitor and adjust available computing resources in real time to ensure the efficient operation of subtasks and the smooth delivery of tasks. The core function of the task scheduling module is to optimize the overall utilization of system resources by dynamically scheduling distributed computing resources. It can adjust and optimize the executing tasks according to the real-time operating status in the cloud system to ensure the reasonable allocation of tasks and efficient use of resources.
[0052] Third, the task status monitoring module is responsible for real-time monitoring of the execution status of all subtasks, including key indicators such as running progress and resource utilization. Through this module, we can ensure that each task is completed on time, and regularly upload the task status to the task scheduling module for further adjustment and optimization. The task status monitoring module can provide timely feedback on the overall operating status of the system, so that the task scheduling module can be dynamically optimized according to the current system load and resource usage, thereby further improving system performance and resource utilization.
[0053] Fourth, the subtask processing module is the core processing unit in the entire modeling process. It is responsible for processing the image data of each block, mainly including a series of operations such as depth map generation, depth map fusion, meshing, texture mapping, format conversion, etc. After all processing steps are completed, the subtask processing module will upload the generated results to the storage resource pool for subsequent integrated processing. This module is designed to improve the processing efficiency of image data and ensure that the generated 3D model has high-quality texture and geometric structure.
[0054] Fifth, the model merging module. When all subtasks are completed, the task status monitoring module uploads the running status and processing results to the storage resource pool. At this time, the model merging module will be called to integrate the 3D models generated by each subtask. By merging the results of these subtasks, the model merging module can generate a complete real-life 3D model for subsequent overall analysis, design, and presentation. The innovation of this module is that it can efficiently integrate the results of different subtasks to generate a complete and high-precision model, thus providing a solid foundation for subsequent applications.
[0055] In view of the problems existing in the prior art, such as high complexity of 3D modeling tasks, large resource consumption, low efficiency of task management and resource utilization, the present invention proposes an innovative modular design and scheduling mechanism based on cloud architecture. This solution significantly improves the processing efficiency and resource utilization of 3D modeling tasks through technical means such as task segmentation, concurrent execution, dynamic scheduling and real-time monitoring.
[0056] By decomposing a task into multiple subtasks and executing them concurrently, combined with real-time resource scheduling and status monitoring, the present invention can effectively solve the problems of uneven resource allocation, task delays, and unbalanced system loads in large-scale 3D modeling tasks. The high-quality 3D model finally generated can provide reliable data support for subsequent analysis and display. At the same time, the technical solution of the present invention has a high degree of creativity and provides new ideas and technical support for the development of 3D modeling technology.
[0057] The present invention splits a large 3D modeling task into multiple subtasks for parallel processing, making full use of the computing power and resources of the native cloud cluster. It can quickly parallelize multiple groups of subtasks and efficiently utilize resources for 3D modeling. It can also effectively reduce the problem of insufficient resource utilization when processing small tasks.
[0058] The present invention can adaptively adjust and allocate cluster resource configuration according to the task scale based on the native cloud architecture, and can effectively cope with the needs of real-life 3D modeling projects of different scales and complexities, thereby realizing adaptive configuration of computing and storage resources.
[0059] The present invention utilizes the dynamic task scheduling system of the native cloud cluster to dynamically schedule tasks in real time according to resource utilization, and reasonably implements task allocation and scheduling. Dynamic task scheduling can ensure the optimal utilization of computing resources.
[0060] In summary, the present invention utilizes the advantages of native cloud computing technology to achieve efficient processing of three-dimensional modeling tasks and rational utilization and management of computing resources, thereby significantly improving modeling efficiency and the flexibility and scalability of the system.
[0061] Second, the expected benefits and commercial value of the technical solution of the present invention after transformation are as follows: the technical solution of the present invention significantly improves the modeling efficiency and resource utilization by optimizing the processing flow of 3D modeling tasks. In commercial applications, this efficient 3D modeling technology can significantly reduce project development time and cost, especially in the fields of architecture, urban planning, virtual reality, etc., and has significant market potential.
[0062] Expected benefits include:
[0063] Reduce costs: Reduce the manpower and time required for modeling, thereby reducing the operating costs of the enterprise.
[0064] Improve competitiveness: Improve the competitive advantage of enterprises in the industry through efficient modeling processes and high-quality 3D model generation.
[0065] Expanded market: Since this technical solution can handle complex modeling tasks, enterprises can expand into more areas that require refined modeling, such as smart cities and digital asset management.
[0066] Increased Revenue: Efficient modeling capabilities will attract more customers, thereby increasing the revenue stream of the business.
[0067] The technical solution of the present invention fills the technical gaps in the industry at home and abroad: At present, although the three-dimensional modeling technology at home and abroad has achieved certain development, it still has problems such as low efficiency and waste of resources when dealing with large-scale and highly complex modeling tasks. The technical solution of the present invention fills the following technical gaps through innovative means such as task segmentation, concurrent execution, and real-time monitoring: Effective combination of task segmentation and concurrent processing: The existing technology is difficult to efficiently process large-scale three-dimensional modeling tasks. The present invention significantly improves modeling efficiency and resource utilization by combining task segmentation with concurrent processing.
[0068] The technical solution of the present invention solves a technical problem that people have been eager to solve but have never succeeded in solving: large-scale 3D modeling tasks have always been a difficult technical problem to overcome in the industry, especially when dealing with complex scenes and large amounts of data, the existing technology is difficult to ensure efficient and stable operation. The present invention successfully solves this problem and achieves a technical breakthrough in the following ways:
[0069] Efficient task segmentation and concurrent processing: The processing of large-scale 3D modeling tasks has always been a bottleneck. The present invention effectively solves this problem through scientific task segmentation and concurrent processing strategies, so that large-scale modeling tasks can be completed within a limited time.
[0070] Dynamic resource scheduling: The resource scheduling mechanism of traditional modeling systems cannot cope with complex task requirements. The present invention solves the problem of unreasonable resource allocation through dynamic scheduling technology based on cloud architecture, enabling the system to flexibly adjust resources according to actual needs to ensure efficient execution of tasks.
[0071] Real-time monitoring and adjustment: Since modeling tasks usually need to run for a long time, how to ensure the stability of the task has always been a problem. The present invention solves this problem through a real-time monitoring module, ensures the smooth progress of the task, and can make dynamic adjustments according to actual conditions to avoid task failure. BRIEF DESCRIPTION OF THE DRAWINGS
[0072] Figure 1 It is a flow chart of a real-scene 3D modeling method based on cloud-native task batch scheduling provided by an embodiment of the present invention;
[0073] Figure 2 It is a task status monitoring module provided by an embodiment of the present invention;
[0074] Figure 3 is a subtask flow chart provided by an embodiment of the present invention;
[0075] Figure 4 is a merging task flow chart provided by an embodiment of the present invention;
[0076] Figure 5 This is an architecture diagram of a real-scene 3D modeling device based on cloud-native task batch scheduling provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0077] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.
[0078] like Figure 1 As shown, an embodiment of the present invention provides a real-scene 3D modeling method based on cloud-native task batch scheduling, and the method specifically includes:
[0079] S1: Calculate the encrypted data of the 3D modeling task, and the task segmentation module divides the encrypted data into blocks;
[0080] S2: Design a task scheduling module based on cloud architecture, adjust the operation of subtasks and task distribution in real time according to the computing resources available in the cloud architecture system, and optimize the utilization of distributed computing resources in real time;
[0081] S3: Run the task status monitoring module in the system to monitor the execution status of subtasks in real time;
[0082] S4: The subtask processing module generates the image data in each block accordingly, and uploads the generated results to the storage resource pool after the operation is completed;
[0083] S5: Monitor the execution status of all subtasks. When all subtasks are completed, call the model merging module to merge the entire model.
[0084] S1, using the encrypted data of aerial triangulation to divide the real scene 3D reconstruction task into blocks, according to the distribution of the sparse point cloud in each sub-block, reversely pull the image data required to reconstruct the area, thereby generating a task configuration table, which includes the image data to be processed in each sub-block and the sub-block data information. The following are the key steps to implement the task segmentation module:
[0085] (1) Spatial data analysis: First, extract image feature points from aerial images and perform image feature matching. Based on the feature extraction results, perform feature point matching. After image feature matching is completed, perform bundle method regional block adjustment to generate aerial triangulation encrypted data. Aerial triangulation encrypted data includes the position and attitude of the camera and the sparse point cloud connecting the camera feature points.
[0086] (2) Sub-block division strategy: Based on the sparse point cloud generated in the aerial triangulation encrypted data, the entire 3D modeling task is divided into 50 m × 50 m blocks in the effective calculation area to generate multiple sub-blocks. This grid division strategy can ensure that the task volume of each sub-block is moderate, which facilitates the synchronization of sub-task parallel processing time.
[0087] (3) Data preparation: According to the sub-block division results, reverse pull the camera position distribution position and image data corresponding to the sparse point cloud in each sub-block. Reverse pull is to calculate the feature points contained in the corresponding camera acquisition image in the current block sparse point, pull and select the corresponding image data, and pre-process the image to ensure the consistency of data quality in the sub-block. This step includes image data screening, alignment and format conversion.
[0088] (4) Task configuration table generation: Generate a task configuration table file for each sub-block. The configuration table records the specific information of the image data to be processed in each sub-block, including the image file path, data volume, and processing priority. This configuration information will be used for subsequent task scheduling and execution.
[0089] The subtasks of 3D modeling are the longest and most resource-intensive part of the entire modeling process. Dividing large 3D tasks into tasks and executing subtasks in a concurrent manner can improve modeling efficiency and utilization of computing resources.
[0090] S2, designs a task scheduling module. This module is responsible for functions such as subtask allocation, scheduling, and resource pool optimization. In order to make full use of distributed computing resources and improve modeling efficiency, this module monitors resource usage in real time, and dynamically adjusts the allocation and execution of subtasks in real time according to the current operating status of resources in the cluster, optimizes the utilization of distributed computing resources, and ensures the normal operation of subtasks. In addition, this module dynamically adjusts the preset maximum number of subtasks in parallel according to the usage of the cluster resource pool to ensure the rational use of cluster resources. In order to realize the functions of sending, scheduling, resource task statistics monitoring, etc. of block 3D reconstruction subtasks, the task scheduling module mainly has the following key steps:
[0091] (1) Build a cluster resource pool: Initialize the resource information of the cloud computing cluster, such as CPU (Central Processing Unit), GPU (Graphics Processing Unit), memory, and disk space. The initialization information will be used to measure resource availability and scheduling, and to achieve load balancing among multiple clusters.
[0092] (2) Subtask distribution statistics: Split the large 3D modeling task into multiple subtasks, and use the task scheduling module to form an execution queue for the subtasks, which are arranged in the resource pool and wait for the execution of the task scheduling module. According to the allocation strategy of the task scheduling module, each subtask is distributed to the corresponding computing resources. Design an efficient task distribution algorithm, taking into account task priority, resource availability, and dependencies between tasks, to ensure the reasonable scheduling and allocation of tasks, and to ensure that each subtask is allocated to the most suitable resources to achieve optimal performance and resource utilization.
[0093] (3) Subtask priority and weight: Assign priority and weight to each subtask. Priority is used to determine the order of task scheduling, and weight is used to determine the resources required for each subtask. This enables resource and flexibility allocation and dynamic adjustment.
[0094] (4) Dynamic resource allocation and scheduling: Monitor the processing of each subtask and dynamically adjust the allocation based on actual resource usage. For example, if a resource bottleneck occurs during processing, the task can be reallocated to other available resources. At the same time, resource allocation is adjusted in real time between subtasks based on resource availability.
[0095] (5) Monitoring and feedback: The real-time monitoring platform collects information about the execution of subtasks, such as the time required, failure rate, and resource consumption. By analyzing this data, we can continuously optimize the task scheduling strategy and make the system more efficient and adaptive.
[0096] (6) Merge task call: After all subtasks are completed, collect and integrate the processing results of the subtasks, and call the overall merge task to merge the results generated by the subtasks into the final result.
[0097] S3 is to realize the task status monitoring module, which is used to monitor the execution status of each subtask in real time, including key parameters such as progress and resource consumption, to ensure that the task is completed on time and coordinate the required resources. The task status monitoring module monitors various running states of subtasks, including running completion, abnormal termination, interruption, pause, waiting for resources, etc., and performs corresponding operations according to different running states. Figure 2 As shown, the following are the key steps to implement this module:
[0098] (1) Task status monitoring module: Design and implement a task status monitoring module to conveniently track and monitor the execution status of each subtask. This module will be responsible for monitoring various indicators of subtasks, including resource consumption (CPU, GPU, memory, disk space, etc.).
[0099] (2) Task status granularity: The subtask status is subdivided into multiple categories, including running, completed, abnormal termination, human interruption, paused, and waiting for resources. This subdivision granularity helps to take corresponding measures to ensure that the task is completed on time.
[0100] (3) Real-time data collection: In the task status monitoring module, implement real-time data collection. This can be achieved by regularly querying the task status in the resource pool or using existing monitoring tools. Ensure the frequency and accuracy of data collection so that the task status is reflected in a timely manner.
[0101] (4) Notification and alarm mechanism: Generate notifications or alarms based on changes in subtask status so that operators can understand the task status in a timely manner and make corresponding adjustments. Take appropriate measures for the specific status and situation of each subtask. For example, when a subtask fails, the task retry mechanism is triggered; when a subtask is suspended, the resources released by the task are reallocated; when a subtask is waiting for resources, try to schedule other available resources to meet the task requirements. When a subtask fails, relevant personnel can be notified immediately to ensure that the task can continue smoothly after the problem is resolved.
[0102] (5) Status and performance reports: The task status monitoring module generates status reports and performance reports so that operators and managers can understand the overall task progress and resource consumption. These reports will help to continuously optimize task scheduling strategies and ensure the effective use of resources.
[0103] Through the above key steps and detailed implementation scheme, the task status monitoring module will be able to monitor and manage the execution status of each subtask in real time, ensure that the task is completed on time, optimize resource allocation, and improve the overall modeling efficiency. This will effectively enhance the management capabilities of the task resource pool scheduling system based on the cloud architecture. Through this module, it can ensure that the task is completed on time and the task status is uploaded to the task scheduling module regularly. The task scheduling module can further adjust and optimize the executing tasks according to the overall operating status of the current system, thereby further optimizing the overall system performance and resource utilization.
[0104] S4, the subtask execution module, is mainly used to run the subtask of the current 3D modeling. The subtask processing module is executed in the cloud computing resources. The subtask processing module will run the relevant parts of the real scene 3D modeling process according to their respective assignments, and upload the processing results to the resource pool for subsequent integration. Figure 3 ,The subtasks mainly include the following operators: depth map generation in the current sub-block, depth map fusion, meshing, texture mapping, format conversion and other computing modules composed of the subtask flow. Executing the subtask processing module in the cloud computing resources has the following key steps:
[0105] Subtask Execution Environment: Configure the execution environment on cloud computing resources and ensure that all necessary software, libraries, and dependencies are installed and available. This includes preparing the execution environment for any tools or frameworks required for the real-life 3D modeling process. Use automated tools to quickly configure and manage the execution environment to ensure consistency and scalability.
[0106] Subtask processing modules: Develop processing modules for each subtask to run various parts of the real scene 3D modeling process on cloud computing resources. Each processing module should contain one or more serial operators to complete the entire subtask process. Ensure that each processing module can perform steps such as depth map generation, depth map fusion, meshing, texture mapping, and format conversion in sequence.
[0107] Concurrent task execution: The scheduling system executes each subtask in parallel in cloud computing resources according to task priority and resource availability. Use parallel computing technology and load balancing strategies to maximize the overall project progress and resource utilization. Monitor resource usage in real time and dynamically adjust task scheduling to ensure efficient resource utilization and smooth task execution.
[0108] Result upload: After each subtask processing module is completed, the generated processing results (such as depth maps, fusion maps, meshes, textures, and conversion data, etc.) are uploaded to the resource pool. Ensure that the resource pool provides sufficient storage space and appropriate storage management strategies to store and manage the output data of all subtasks. Use a distributed storage system to ensure data reliability and availability. After each subtask processing module is completed, the generated processing results (such as depth maps, fusion maps, meshes, textures, and conversion data, etc.) are uploaded to the resource pool. Ensure that the resource pool provides sufficient storage space to store and manage the output data of all subtasks.
[0109] In S5, in order to ensure that the divided 3D models are merged after all subtasks are completed, the present invention designs a model merging module, which is responsible for integrating the 3D model parts generated by each subtask into a complete real-scene 3D model for further overall analysis, design and display. Figure 4 ,The key steps to implement this module include:
[0110] (1) Result retrieval: The task status monitoring module is used to obtain information about all subtasks that have been successfully completed and uploaded to the storage resource pool, and the processing result data of the subtasks are extracted in sequence.
[0111] (2) Model alignment and compatibility: Ensure that the 3D models obtained from each subtask are partially compatible and ready for the merge operation. Some models are aligned, scaled, or pruned to eliminate inconsistencies and ensure seamless merging.
[0112] (3) Merging algorithm: Implement a merging algorithm to combine the real-world 3D model parts from different subtasks into a complete real-world 3D model. This usually involves merging data such as vertices, meshes, and textures, and resolving potential conflicts and overlaps.
[0113] (4) Merge process call: When the task status monitoring module confirms that all subtasks have been executed successfully, the merging module is called according to the preset merging strategy to start merging the various model parts into a complete real-life 3D model.
[0114] (5) Verification of merged results: After the merge process is completed, the generated complete real-life 3D model is verified to check its completeness, accuracy, and consistency. If any problems occur, it is necessary to trace back to the relevant subtasks and make adjustments to resolve the potential problems.
[0115] (6) Storage and output: Store the final complete real-life 3D model in the storage resource pool and generate output files for subsequent overall analysis, design, and optimization. Ensure that the storage resource pool has sufficient storage space and appropriate access rights management.
[0116] Through the above key steps, the present invention realizes the merging of the block 3D models after all subtasks are completed and the results are uploaded to the storage resource pool, thereby obtaining a complete real-scene 3D model, providing basic data for overall analysis, design and optimization.
[0117] The key steps of the model merging module involved in step S5 of the present invention first start with result retrieval. The task status monitoring module obtains all subtask information that has been successfully completed and uploaded to the storage resource pool. The processing result data of each subtask will be extracted in turn for subsequent model merging operations. This step ensures that all model data is ready and can enter the merging stage, which is the basis of the entire process.
[0118] Next, the model alignment and compatibility processing is performed. The core of this step is to ensure that the 3D model parts obtained from different subtasks remain compatible before merging. To this end, some models need to be aligned, scaled or deleted to eliminate inconsistencies between models. This process ensures that the various model parts can be seamlessly connected, providing a solid foundation for subsequent merging operations.
[0119] The third step is to implement the merging algorithm. This merging algorithm is designed to combine the real-world 3D model parts from different subtasks into a complete real-world 3D model. The algorithm needs to take into account the spatial relationship and data structure of each model part to ensure that the final merged model can accurately reflect the actual situation. The accuracy of the merging algorithm directly affects the integrity and accuracy of the final model.
[0120] After all subtasks are successfully executed and all model parts are ready, the task status monitoring module triggers the merge process call. According to the preset merge strategy, the merge module will start to merge the various model parts into a complete real-life 3D model. This step ensures that the merge operation is performed when all preparations have been completed, minimizing the error rate during the merge process.
[0121] After the merging process is completed, the merged results need to be verified. This step verifies the completeness, accuracy, and consistency of the generated complete real-life 3D model. If problems are found during the inspection, they need to be traced back to the relevant subtasks for adjustment and the merge operation needs to be repeated until all problems are resolved.
[0122] Finally, the verified complete real-life 3D model will be stored in the storage resource pool and an output file will be generated for subsequent overall analysis, design, and optimization. This final step ensures the persistence and availability of the model, allowing the model to be reused or further optimized in future work, supporting the long-term development and accurate analysis of the entire project.
[0123] like Figure 5 As shown, an embodiment of the present invention provides a real-scene 3D modeling device based on cloud-native task batch scheduling, which specifically includes:
[0124] The task segmentation module is used to decompose the entire real-scene 3D modeling task into multiple subtasks through the association relationship of the aerial triangulation encrypted data;
[0125] The task scheduling module is used to adjust the operation of subtasks and the dispatch of tasks in real time according to the computing resources available in the cloud architecture system;
[0126] The task monitoring module is used to monitor the execution status of subtasks in real time, including real-time status such as running progress and resource utilization.
[0127] The subtask processing module is used to generate the image data in each block accordingly, and upload the generated results to the storage resource pool after the operation is completed for further integration and processing;
[0128] The task merging module is used to merge the 3D models generated by each subtask to generate a complete real-scene 3D model for subsequent overall analysis, design and display.
[0129] In order to adapt to the task scheduling management of cloud native, the key step is to reasonably divide the real-scene 3D modeling task into task blocks. This embodiment describes how to use aerial triangulation encrypted data to reasonably divide the real-scene 3D modeling task into task blocks in a cloud native environment. By decomposing the task into multiple subtasks and reversely pulling the required image data based on the distribution of the sparse point cloud, a task configuration table is generated to achieve efficient scheduling and execution of the task. The specific implementation steps of the task segmentation module are as follows:
[0130] 1. Spatial data analysis
[0131] (1) Data input: Input the image data obtained by drone aerial photography. The data format is standard JPEG format.
[0132] (2) Feature point extraction and matching: Use the SIFT (Scale-Invariant Feature Transform) algorithm to extract feature points from image data. Match the extracted feature points to build the association relationship between images.
[0133] (3) Bundle Block Adjustment: Perform bundle block adjustment on the matched feature points to generate the camera position, attitude and sparse point cloud data. Output aerial triangulation encrypted data, including the camera position information and sparse point cloud data.
[0134] 2. Sub-block partitioning strategy
[0135] According to the generated aerial triangulation encrypted data, the sparse point cloud is rasterized. The standard size of each grid is 50 meters × 50 meters to ensure the reasonable division of tasks. The entire 3D modeling task is divided into sub-blocks after rasterization, and each sub-block corresponds to an independent sub-task. Generate a list of rasterized sub-blocks and record the spatial position and range of the sub-blocks. According to the sub-blocks divided by the grid, preliminarily allocate the task amount of each sub-block to ensure the synchronization and balance of tasks during parallel processing. Record the task allocation in the sub-block task list as a reference for subsequent scheduling.
[0136] 3. Data Preparation
[0137] (1) Reverse pull of image data: Based on the sparse point cloud data of the sub-block, determine the camera position and corresponding image data contained in each sub-block. Calculate the distribution of each sparse point in the current sub-block and reverse pull the relevant image data collected by the camera.
[0138] (2) Data screening and alignment: Screen the pulled image data and remove images that do not meet the quality requirements. Perform geometric alignment on the selected image data to ensure the spatial consistency of the image.
[0139] (3) Format conversion: Convert image data into a unified processing format and convert image data in other formats into JPEG format for subsequent processing. Ensure that the data format is unified to meet the requirements of subsequent modeling algorithms.
[0140] 4. Task configuration table generation
[0141] Creation of configuration table file Generate a task configuration table file for each sub-block. The configuration table includes the following contents:
[0142] (1) Image file path: the storage path of the image to be processed in the sub-block.
[0143] (2) Data volume: The amount of image data required to be processed in each sub-block.
[0144] (3) Processing priority: Assign processing priority based on the urgency of the task and the system load.
[0145] Upload the generated task configuration table file to the cloud task scheduling system. The cloud task scheduling system allocates and schedules tasks based on the information in the configuration table. The scheduling system allocates cloud computing resources based on the task configuration table and concurrently executes the modeling tasks of each sub-block. Monitor the progress of task execution in real time and dynamically adjust resource allocation based on task completion.
[0146] Through the above steps, the real-life 3D modeling task was successfully divided into blocks, and each sub-block task was assigned in detail through the configuration table, ensuring efficient execution of tasks and rational use of resources. Finally, a complete real-life 3D model was output, providing high-quality data support for subsequent applications.
[0147] 2. Task Execution Management Module
[0148] Design and implement a cloud-based dynamic scheduling subtask execution management module for efficient processing of large-scale 3D modeling tasks. By real-time monitoring of resource usage, dynamically adjusting the allocation and execution of subtasks, optimizing the utilization of distributed computing resources, and ensuring the stability and efficiency of the system. The following is a specific implementation example:
[0149] 1. Build a cluster resource pool
[0150] In a cloud computing environment, initialize the resource information of the cluster, including hardware resources such as CPU, GPU, memory, disk space, as well as network bandwidth and I / O capabilities. Obtain the real-time status of cluster resources through API calls and store them in the resource pool management database. The resource pool data will be updated regularly to reflect the current availability of resources. Configure the load balancer to achieve balanced distribution of resources among multiple clusters. Perform a preliminary availability assessment of cluster resources, including information such as resource load and available capacity of each node. When the scheduling module is started, perform a preliminary check of the resource status to ensure that the basic resource data for scheduling is accurate.
[0151] 2. Subtask distribution statistics
[0152] (1) Task splitting: The entire 3D modeling task is divided into multiple subtasks based on the encrypted data. The subtask division takes into account the task dependencies and computing requirements. Each subtask contains relevant image data, sparse point cloud information, and processing requirements. The subtask information is stored in the task queue.
[0153] (2) Task queue generation: Arrange the split subtasks into an execution queue in a certain order. The subtasks in the queue will wait for the scheduling module to allocate and execute them. Design an efficient task distribution algorithm, taking into account factors such as task priority, resource availability, and dependencies between tasks to ensure the reasonable scheduling and allocation of tasks.
[0154] (3) Task distribution: Subtasks are assigned to the most suitable computing resources according to the allocation strategy of the task scheduling module. The scheduling strategy considers the availability of resources in the resource pool and achieves load balancing between tasks. When resources are idle, the scheduling module automatically assigns tasks in the queue to idle resources for execution.
[0155] 3. Subtask Priority and Weight
[0156] (1) Priority allocation: Set a priority for each subtask. The priority determines the execution order of tasks in the queue. Priority is set based on the importance, time sensitivity, and dependencies of the task.
[0157] Prioritize tasks with strong dependencies to ensure the smooth operation of the entire task chain.
[0158] (2) Weight allocation: Assign the required resource weight to each subtask, and dynamically adjust the resource allocation ratio according to the task's computational workload and data processing requirements. The weight setting provides a flexible resource allocation strategy for the task scheduling module, allowing resources to be reasonably allocated based on the importance and requirements of the task.
[0159] 4. Dynamic resource allocation and scheduling
[0160] (1) Real-time monitoring of resource usage: The scheduling module obtains the execution status and resource usage of subtasks in real time through the monitoring platform, including CPU / GPU utilization, memory consumption, network bandwidth, etc. If a resource bottleneck is found, such as excessive CPU load or insufficient memory, the scheduling module will dynamically adjust the task allocation and migrate some tasks to other available resources.
[0161] (2) Task scheduling adjustment: Based on the monitored resource usage, the scheduling module dynamically adjusts the execution order and resource allocation of subtasks. During the execution process, if some tasks are completed quickly, the scheduling module will automatically release the resources they occupy and reallocate the resources to other waiting tasks to improve overall efficiency.
[0162] 5. Monitoring and feedback
[0163] (1) Real-time monitoring platform: The real-time monitoring platform collects various data during the execution of subtasks, such as processing time, failure rate, resource consumption, etc. The monitoring platform feeds this data back to the scheduling module in real time to adjust the scheduling strategy.
[0164] (2) Data analysis and optimization: Analyze monitoring data to identify potential performance bottlenecks and resource waste. Based on the analysis results, the scheduling module will optimize the task scheduling strategy, such as adjusting task priorities and optimizing resource allocation algorithms, to improve the overall performance and resource utilization of the system.
[0165] 6. Merge task calls
[0166] (1) Subtask result collection: After all subtasks are completed, the scheduling module will collect and integrate the processing results of each subtask. The results include 3D model data files, image texture files, etc. The merging process will check the integrity and consistency of the subtask results to ensure that all data is correctly integrated.
[0167] (2) Overall model merging: Call the model merging module to integrate the 3D models generated by each subtask into a complete real-scene 3D model. After the complete model is generated, the final data verification and format conversion are performed for subsequent analysis, display and application.
[0168] (3) Result output and storage: The final merged 3D model will be stored in the cloud storage pool for users to download or further process. The scheduling module will record the generated result file path and task execution report in the system log for subsequent audit and optimization reference.
[0169] This example demonstrates how to design and implement a cloud-based task status monitoring module to monitor the execution status of each subtask in real time, including key parameters such as progress, resource consumption, and running status. This module is designed to ensure that tasks are completed on time and respond promptly when abnormal situations occur to optimize resource allocation and improve overall modeling efficiency.
[0170] 1. Design and implementation of task status monitoring module
[0171] (1) Module architecture design: As part of the task scheduling system, the task status monitoring module is integrated with other modules such as the resource pool, task scheduling module, and notification system. This module communicates with other modules through the API to obtain the execution status and resource usage of subtasks in real time.
[0172] (2) Status monitoring interface: A status monitoring interface is designed for each subtask, including API calls and logging functions. The interface can report the CPU, memory, and disk space usage of the task in real time, as well as statistics on network bandwidth and I / O operations.
[0173] (3) Status storage and update: Task status data is stored in a distributed database, which supports real-time query and update. Every time the status of a subtask changes, the module automatically updates the record in the database and triggers the corresponding response mechanism.
[0174] 2. Task status granularity segmentation
[0175] (1) Status category definition: Sub-task status is divided into multiple categories for easy monitoring and management. Status categories include:
[0176] Running: The task is being executed normally.
[0177] Completed: The task was successfully executed and all steps were completed.
[0178] Abnormal termination: The task is aborted unexpectedly due to an error or system problem.
[0179] Human interruption: The task is paused or stopped due to user operation.
[0180] Paused: The task is in a waiting state and has not yet been executed.
[0181] Waiting for resources: The task is waiting for the required computing resources.
[0182] (2) State transition logic: Define clear transition logic for each state. For example, a task can transition from the "running" state to the "completed" state, or to the "abnormally terminated" state when an error occurs. The transition between states is automatically handled by the monitoring module, and the record is updated when the state changes.
[0183] 3. Real-time data collection
[0184] (1) Data collection mechanism: Implement regular data collection functions to obtain task status and resource consumption information through polling or event-based methods. Use the monitoring tools provided by the cloud platform to enhance the accuracy and real-time performance of data collection.
[0185] (2) Collection frequency and delay management: Set the frequency of data collection (for example, once a minute) to ensure that the data is timely enough without causing system overload. By optimizing API calls and database operations, the delay of data collection can be reduced and the monitoring response speed can be improved.
[0186] 4. Notification and alert mechanisms
[0187] (1) Alarm triggering conditions: Define various alarm triggering conditions, such as subtask failure, resource usage exceeding a preset threshold, and task being in a waiting state for a long time. Generate corresponding alarms based on the status of subtasks and resource conditions.
[0188] (2) Notification method: Implement multi-channel notification functions, including email, SMS, instant messaging tools, etc. Automatically select the appropriate notification method based on the urgency of the task to ensure that relevant personnel receive the alarm information in a timely manner.
[0189] (3) Automated response: Design automated response measures for different states. For example, when a subtask fails, the system automatically attempts to retry the task or reallocate resources; when a subtask is waiting for resources, it attempts to schedule other available resources to meet task requirements; when a subtask fails, it can immediately notify relevant personnel to ensure that the task can continue smoothly after the problem is resolved.
[0190] 5. Status and performance reports
[0191] The task status monitoring module generates status reports and performance reports so that operators and managers can understand the overall task progress and resource consumption. These reports will help to continuously optimize task scheduling strategies and ensure the effective use of resources.
[0192] 4. Subtask Execution Module
[0193] The specific implementation of the subtask execution module in the cloud computing environment mainly covers the entire process of configuration of the execution environment, development of the subtask processing module, concurrent execution of tasks and result uploading. The following is a specific implementation:
[0194] 1. Subtask execution environment configuration
[0195] (1) Configure cloud computing resources: Select a suitable cloud service provider and create a virtual machine or container to perform tasks. Install necessary software and libraries, and install the tools and libraries required for real-life 3D modeling in the virtual machine or container. Use automated tools to configure the execution environment. Ensure the repeatability and scalability of the configuration process so that the environment can be quickly created or adjusted when needed.
[0196] (2) Ensure the compatibility of the execution environment: Verify the environment dependencies: Ensure that all dependencies are correctly installed and compatible with the real-life 3D modeling process. You can verify the correctness of the environment by running simple test tasks. Use Docker to create an image and create a configured environment image for rapid deployment and expansion.
[0197] 2. Subtask processing module development
[0198] (1) Develop subtask processing modules
[0199] Depth map generation module:
[0200] o Input: sub-block image data
[0201] o Processing: Generating depth maps using deep learning models
[0202] o Output: Depth map file
[0203] Depth map fusion module:
[0204] o Input: Depth map from multiple perspectives
[0205] o Processing: Fusion of depth maps generated from multiple perspectives into a unified depth map
[0206] o Output: fused depth map
[0207] Gridding module:
[0208] o Input: fused depth map
[0209] o Processing: Convert 3D point cloud into 3D mesh
[0210] o Output: 3D mesh file
[0211] Texture Mapping Module:
[0212] o Input: 3D mesh and corresponding image data
[0213] o Processing: Generate texture maps that fit the mesh
[0214] o Output: 3D model with texture
[0215] Format conversion module:
[0216] o Input: Textured 3D model
[0217] o Processing: Convert the 3D model to the target format (such as .obj, .ply, etc.)
[0218] o Output: 3D model file in target format
[0219] (2) Integrated processing modules: Module chain construction: Connect the various processing modules in series to form a complete subtask process. After each module is completed, it passes the output data to the next module.
[0220] (3) Error handling mechanism: Add an error handling mechanism to each module so that when an exception occurs, the error log can be recorded and the problem steps can be re-executed or skipped in a timely manner.
[0221] 3. Concurrent execution of tasks
[0222] (1) Task scheduling Task priority setting: Set the priority of the task according to the urgency and resource requirements of the task.
[0223] (2) Parallel execution and load balancing: Use the scheduling service of the cloud platform to execute tasks in parallel. Dynamically adjust resource allocation through the load balancer to optimize the efficiency of computing resources.
[0224] (3) Real-time monitoring and adjustment,Resource usage monitoring: Real-time monitoring of the CPU, memory, storage and other resource usage of each virtual machine or container. Use the cloud platform's monitoring tools to collect and analyze data.
[0225] (4) Dynamic task scheduling: Dynamically adjust the task scheduling strategy according to resource usage, such as increasing / decreasing the number of parallel tasks, or reallocating tasks to nodes with lower resource utilization.
[0226] 4. Result upload and management
[0227] (1) Subtask result upload After each subtask processing module is completed, the generated result data is automatically uploaded to the cloud resource pool. Use cloud storage services to store data.
[0228] (2) Data integrity check: After uploading, verify the integrity and consistency of the data. This can be done to ensure that the data has not been corrupted during transmission.
[0229] (3) Resource pool management: Regularly check the storage space usage of the resource pool to ensure that there is enough space to store newly generated data. If necessary, the storage space can be automatically expanded.
[0230] (4) Data backup and recovery: Implement data backup strategies, regularly back up key data, and quickly restore it when needed. Use multi-region storage and version control mechanisms to improve data reliability and availability.
[0231] Through the above embodiments, the subtasks of real-scene 3D modeling can be effectively executed in cloud computing resources. This process ensures efficient execution of each subtask and reliable management of data, providing a solid foundation for subsequent integration.
[0232] 5. Model Merging Module
[0233] In this embodiment, the model merging module is responsible for integrating the 3D model parts generated by the distributed subtasks into a complete real-scene 3D model. The following are the specific implementation steps of this module:
[0234] 1. Result retrieval
[0235] (1) Obtain subtask information: Use the task status monitoring module to regularly check the execution status of each subtask and confirm that all subtasks have been successfully completed. Retrieve the 3D model data (such as depth map, mesh, texture, etc.) generated by each subtask from the storage resource pool, which may be stored in a distributed file system.
[0236] (2) Data integrity check: After retrieving the subtask processing results, perform a verification operation to ensure that the data is not damaged during transmission and storage. This operation can be completed by comparing file verification.
[0237] 2. Model alignment and compatibility
[0238] (1) Model alignment Use the ICP (Iterative Closest Point) algorithm to align the 3D model parts generated by each subtask to ensure that their positions and directions in space are consistent. Perform necessary scaling operations on the model to make the model parts from different sources consistent in size. If there are redundant parts or unified boundaries, the model can be cropped or deleted for seamless merging.
[0239] (2) Compatibility check: Ensure that the model data formats generated by all subtasks are compatible, such as unified into .obj or .ply formats. Check and unify the model's coordinate system so that the various parts can correspond correctly during the merge operation.
[0240] 3. Merge Algorithm
[0241] (1) Merge vertices and meshes: Merge the vertex data of each model part, and ensure that adjacent vertices are merged when the vertex positions are close. Regenerate the mesh connecting each vertex to ensure that the generated complete model has a good topological structure.
[0242] (2) Texture data merging: When merging models, the texture coordinates are recalculated to seamlessly stitch the textures of each model part together. Texture conflicts and overlaps are handled, and the final texture display effect can be determined by texture blending or priority strategies.
[0243] 4. Merge process calls
[0244] (1) Triggering merging: When the task status monitoring module confirms that all subtasks have been successfully completed, the execution of the merging module is automatically triggered. According to the preset merging strategy (such as priority, overlapping area processing method, etc.), an appropriate merging algorithm is selected and the merging process begins.
[0245] (2) Process management: Allocate sufficient computing resources for the model merging process, especially when processing large-scale 3D models. If the merging operation can be performed in parallel (such as merging multiple independent model parts), it is processed in parallel on multiple nodes to improve efficiency.
[0246] 5. Verify the merge results
[0247] (1) Completeness check: Check whether the merged model contains all necessary vertices and meshes, and whether the mesh structure is error-free. Confirm that the texture mapping is correct and has no obvious defects, especially check the stitching area.
[0248] (2) Problem tracing and adjustment: If problems are found in the merged model, trace back to the processing of the relevant subtasks and analyze the root cause of the problem. After making necessary adjustments, re-execute the merging process to ensure the quality of the final model.
[0249] 6. Storage and Output
[0250] (1) Storage management: Upload the final merged complete real-life 3D model to the storage resource pool to ensure that there is enough space to store large model files.
[0251] (2) Backup and redundancy: To ensure data security, the merged model is backed up regularly and a redundant storage strategy is adopted.
[0252] (3) Output file generation: Generate model files in different formats (such as .obj, .ply, etc.) according to subsequent requirements so that they can be used in different analysis tools or design software.
[0253] (4) Access permission management: Set appropriate access permissions to ensure that only authorized users can access and use the final 3D model data.
[0254] Through this specific embodiment, the model merging module can effectively merge the 3D model parts generated by multiple subtasks into a complete real-scene 3D model. This process covers the complete flow from data retrieval, alignment, merging, verification to final storage, ensuring the quality of the model and the smooth progress of subsequent applications.
[0255] 2. Relevant evidence of the technical effects obtained by the embodiments of the present invention.
[0256] (1) Enhanced real-time monitoring and management capabilities
[0257] Real-time data collection and monitoring: The task status monitoring module can timely understand the running status and resource consumption of each subtask through regular data collection and monitoring. Compared with the traditional static monitoring method, this module can more quickly capture abnormal situations in task execution, such as resource bottlenecks, task failures, etc., so that corresponding measures can be taken quickly to reduce task interruption time.
[0258] Refined task status granularity: By subdividing the subtask status into multiple categories, the monitoring module can manage the different stages of the task execution process in a more detailed manner. This refined granularity helps to identify and classify different task abnormalities, such as human interruption, resource waiting, etc., effectively improving the flexibility of task scheduling and management.
[0259] (2) Resource Utilization Optimization
[0260] Dynamic resource allocation: The task status monitoring module monitors the resource consumption of subtasks in real time and can dynamically adjust resource allocation when resource usage is too high or insufficient. This mechanism avoids resource waste, ensures efficient use of all resources in the system, and improves the performance and stability of the overall system.
[0261] Load balancing and task scheduling optimization: By setting the priority and weight of tasks and combining real-time resource monitoring data, the scheduling module can better balance the load and ensure that each subtask is evenly distributed on the computing nodes in the cluster. Compared with the traditional static scheduling method, this dynamic scheduling method greatly improves the efficiency of task execution and resource utilization.
[0262] (3) Automation and Adaptive Capabilities
[0263] Automated response and notification mechanism: When a task anomaly is detected, the system can automatically trigger the preset response mechanism, such as task retry, resource reallocation, etc. At the same time, the system will automatically send notifications to relevant personnel to ensure that the problem can be solved in a timely manner. This automated and adaptive capability reduces the need for manual intervention and improves the reliability and maintainability of the system.
[0264] Data-driven optimization: By analyzing the data collected during task execution, the system can continuously optimize scheduling strategies and resource allocation models, so that system performance continues to improve over time. This data-driven optimization method enables the system to maintain optimal performance in different application scenarios.
[0265] It should be noted that the embodiments of the present invention can be implemented by hardware, software, or a combination of software and hardware. The hardware part can be implemented using dedicated logic; the software part can be stored in a memory and executed by an appropriate instruction execution system, such as a microprocessor or dedicated design hardware. It can be understood by a person of ordinary skill in the art that the above-mentioned devices and methods can be implemented using computer executable instructions and / or contained in a processor control code, such as a carrier medium such as a disk, CD or DVD-ROM, a programmable memory such as a read-only memory (firmware), or a data carrier such as an optical or electronic signal carrier. Such code is provided on the carrier medium. The device and its modules of the present invention can be implemented by hardware circuits such as very large-scale integrated circuits or gate arrays, semiconductors such as logic chips, transistors, etc., or programmable hardware devices such as field programmable gate arrays, programmable logic devices, etc., can also be implemented by software executed by various types of processors, and can also be implemented by a combination of the above-mentioned hardware circuits and software, such as firmware.
[0266] The above description is only a specific implementation mode of the present invention, but the protection scope of the present invention is not limited thereto. Any modifications, equivalent substitutions and improvements made by any technician familiar with the technical field within the technical scope disclosed by the present invention and within the spirit and principle of the present invention should be covered by the protection scope of the present invention.
Claims
1. A real-scene 3D modeling method based on cloud-native task batch scheduling, characterized in that: The method specifically includes: S1: Calculate the encrypted data of the 3D modeling task, and the task segmentation module divides the encrypted data into blocks; S2: Design a task scheduling module based on cloud architecture, adjust the operation of subtasks and task distribution in real time according to the computing resources available in the cloud architecture system, and optimize the utilization of distributed computing resources in real time; S3: Run the task status monitoring module in the system to monitor the execution status of subtasks in real time; S4: The subtask processing module generates the image data in each block accordingly, and uploads the generated results to the storage resource pool after the operation is completed; S5: Monitor the execution status of all subtasks. When all subtasks are completed, call the model merging module to merge the entire model.
2. The real-scene 3D modeling method based on cloud-native task batch scheduling as claimed in claim 1, characterized in that: S1, using the aerial triangulation encrypted data to divide the real scene 3D reconstruction task into blocks, according to the distribution position of the sparse point cloud in each sub-block, reversely pull the image data required to reconstruct the area, and generate a task configuration table. The sub-block configuration table includes the image data to be processed in each sub-block and the sub-block data information. The following are the key steps to implement the task segmentation module: (1) Spatial data analysis: Extract image feature points from aerial images and perform image feature matching. Based on the feature extraction results, perform feature point matching. After image feature matching is completed, perform bundle method regional block adjustment to generate aerial triangulation encrypted data, including the camera position, attitude, and sparse point cloud connecting the camera feature points. (2) Sub-block division strategy: Based on the sparse point cloud in the generated aerial triangulation data, the entire 3D modeling task is divided into 50 m × 50 m blocks in the effective calculation area to generate multiple sub-blocks. (3) Data preparation: According to the sub-block division results, reverse pull the camera position distribution position and image data corresponding to the sparse point cloud in each sub-block. Reverse pulling is to calculate the feature points contained in the corresponding camera acquisition image in the current block sparse points, pull and select the corresponding image data, and pre-process the image. This step includes image data screening, alignment and format conversion; (4) Task configuration table generation: Generate a task configuration table file for each sub-block. The configuration table records in detail the specific information of the image data to be processed in each sub-block, including the image file path, data volume, and processing priority.
3. The real-scene 3D modeling method based on cloud-native task batch scheduling as claimed in claim 1, characterized in that: The S2 task scheduling module mainly has the following key steps: (1) Build a cluster resource pool: Initialize the resource information of the cloud computing cluster, such as CPU, GPU, memory, and disk space; (2) Subtask distribution statistics: The large 3D modeling task is divided into multiple subtasks. The subtasks are queued for execution through the task scheduling module and are arranged in the resource pool to wait for the execution of the task scheduling module. According to the allocation strategy of the task scheduling module, each subtask is distributed to the corresponding computing resources. (3) Subtask priority and weight: Assign a priority and weight to each subtask. The priority is used to determine the order of task scheduling, and the weight is used to determine the resources required for each subtask. (4) Dynamic resource allocation and scheduling: monitor the processing of each subtask and dynamically adjust the allocation based on actual resource usage; (5) Monitoring and feedback: The real-time monitoring platform collects information about the execution of subtasks, such as the time required, failure rate, and resource consumption, and analyzes this data to continuously optimize the task scheduling strategy. (6) Merge task call: After all subtasks are completed, collect and integrate the processing results of the subtasks, and call the overall merge task to merge the results generated by the subtasks into the final result.
4. The real-scene 3D modeling method based on cloud-native task batch scheduling as claimed in claim 1, characterized in that: The task status monitoring module S3 monitors various running states of subtasks, including running completion, abnormal termination, interruption, pause, waiting for resources, etc., and performs corresponding operations according to different running states. The following are the key steps to implement this module: (1) Subdividing task status granularity: subdividing subtask status into multiple categories, including running, completed, abnormal termination, manual interruption, paused, and waiting for resources; (2) Real-time data collection: Regularly query the task status in the resource pool or use existing monitoring tools to achieve this; (3) Notification and alarm mechanism: Generate notifications or alarms based on changes in subtask status, and take appropriate measures based on the specific status and situation of each subtask; (4) Status and performance reports: The task status monitoring module generates status reports and performance reports so that operators and managers can understand the overall task progress and resource consumption.
5. The real-scene 3D modeling method based on cloud-native task batch scheduling as claimed in claim 1, characterized in that: The S4, subtask execution mainly includes the following operators: depth map generation, depth map fusion, gridding, texture mapping, format conversion, etc. in the current sub-block, and the subtask processing module is executed in the cloud computing resources, including: Subtask execution environment: Configure the execution environment on cloud computing resources, including preparing the execution environment for any tools or frameworks required for the real-life 3D modeling process, and using automation tools to quickly configure and manage the execution environment; Subtask processing module: Develop a processing module for each subtask to run various parts of the real scene 3D modeling process on cloud computing resources. Each processing module contains one or more serial operators to complete the entire subtask process; Concurrent task execution: The scheduling system executes each subtask in parallel in cloud computing resources according to task priority and resource availability, uses parallel computing technology and load balancing strategies to maximize the overall project progress and resource utilization, monitors resource usage in real time, and dynamically adjusts task scheduling; Result upload: After each subtask processing module is completed, the generated processing results (such as depth map, fusion map, mesh, texture and conversion data, etc.) are uploaded to the resource pool.
6. The real-scene 3D modeling method based on cloud-native task batch scheduling as claimed in claim 1, characterized in that: The key steps of the S5 model merging module include: (1) Result retrieval: The task status monitoring module is used to obtain the information of all subtasks that have been successfully completed and uploaded to the storage resource pool, and the processing result data of the subtasks are extracted in sequence; (2) Model alignment and compatibility: ensuring that the 3D models obtained from each subtask are partially compatible and ready for the merge operation, aligning, scaling, or deleting some models, eliminating inconsistencies and ensuring seamless merging; (3) Merging algorithm: Implement a merging algorithm to combine the real-scene 3D model parts from different subtasks into a complete real-scene 3D model; (4) Merging process call: When the task status monitoring module confirms that all subtasks have been successfully executed, the merging module is called according to the preset merging strategy to start merging the various model parts into a complete real-life 3D model; (5) Verification of merged results: After the merge process is completed, the generated complete real-life 3D model is verified to check its completeness, accuracy, and consistency. If any problems occur, it is necessary to trace back to the relevant subtasks and make adjustments to resolve the potential problems. (6) Storage and output: The final complete real-life 3D model is stored in a storage resource pool and an output file is generated for subsequent overall analysis, design, and optimization.
7. A real-scene 3D modeling device based on cloud-native task batch scheduling as described in claims 1-6, characterized in that: The device specifically comprises: The task segmentation module is used to decompose the entire real-scene 3D modeling task into multiple subtasks through the association relationship of the aerial triangulation encrypted data; The task scheduling module is used to adjust the operation of subtasks and the dispatch of tasks in real time according to the computing resources available in the cloud architecture system; The task monitoring module is used to monitor the execution status of subtasks in real time, including real-time status such as running progress and resource utilization; The subtask processing module is used to generate the image data in each block accordingly, and upload the generated results to the storage resource pool after the operation is completed for further integration and processing; The task merging module is used to merge the 3D models generated by each subtask to generate a complete real-scene 3D model for subsequent overall analysis, design and display.
Citation Information
Patent Citations
Automatic three-dimensional modeling measurement method based on oblique photography of unmanned aerial vehicle
CN113298944A
Cited By
Three-dimensional scene reconstruction method based on point cloud data feature extraction
CN121962524A
A Method and System for 3D Modeling and Integrated Analysis Based on UAV Imagery
CN122676122A