Three-dimensional resource dynamic allocation method and system based on grain storage
By using a multi-level management architecture and real-time streaming media transmission technology, cloud rendering resources are dynamically scheduled, solving the problems of inflexible resource allocation and insufficient cross-regional scheduling capabilities in existing technologies, and achieving efficient resource allocation and user experience optimization.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-03
- Publication Date
- 2026-04-14
AI Technical Summary
In existing technologies, distributed deployment architectures suffer from insufficient flexibility in resource allocation and inadequate cross-regional scheduling capabilities, making it difficult to meet the high demands of high-quality 3D scene rendering on host task processing resources. In particular, user experience and resource utilization are difficult to guarantee when there are large-scale concurrent user accesses.
A multi-level management architecture is adopted, including a central server, regional servers, and a warehouse server, forming a four-level architecture of "central-region-warehouse-host". Through real-time streaming media transmission technology and load balancing mechanism, cloud rendering host resources are dynamically scheduled to achieve hierarchical management of resources and flexible allocation across warehouses or regions.
It improves the flexibility and response speed of resource allocation, optimizes resource utilization, ensures user experience, and can efficiently schedule cloud rendering resources when there are large-scale concurrent user accesses, thereby improving the response speed of 3D model rendering and real-time data processing.
Smart Images

Figure CN120803740B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of digital twin technology, specifically relating to a three-dimensional dynamic resource allocation method and system based on grain storage. Background Technology
[0002] Digital twin technology is accelerating the digital transformation of the grain storage industry. Leveraging its high-precision simulation capabilities of grain storage environments, it can capture subtle changes in temperature, humidity, and pests in real time, thus providing accurate early warnings of potential safety hazards. Through dynamic simulation and data analysis of storage processes, it can continuously optimize resource allocation schemes such as storage capacity utilization and material distribution. However, as the industry's digitalization accelerates, customers are placing increasingly stringent demands on digital twin models. They not only require millimeter-level precision to realistically reproduce storage facilities and grain storage conditions, but also demand higher levels of 3D scene visualization and rendering effects, hoping for a more realistic and immersive experience. Simultaneously, the need for real-time interactivity is constantly increasing, requiring systems to respond quickly to commands and support multi-user collaboration and remote control.
[0003] High-quality 3D scene rendering places high demands on the host's processing resources, and traditional local rendering methods struggle to meet the needs of large-scale concurrent user access. The current mainstream cloud rendering distributed deployment model places rendering tasks on multiple cloud servers, distributes digital twin applications across multiple nodes, and pushes rendered images to the terminal via video streaming technologies such as pixel streaming, achieving a "lightweight terminal + heavy cloud rendering" infrastructure. However, how to dynamically and efficiently allocate and schedule the 3D resources required for cloud rendering based on user requests, ensuring user experience and optimizing resource utilization, remains a pressing technical problem. Existing distributed deployment architectures suffer from insufficient flexibility in resource allocation and inadequate cross-regional scheduling capabilities. Summary of the Invention
[0004] This application aims to provide a three-dimensional dynamic resource allocation scheme based on grain storage. It seeks to address the problems of insufficient resource allocation flexibility and inadequate cross-regional scheduling capabilities in existing distributed deployment architectures.
[0005] According to a first aspect of this application, this application provides a three-dimensional dynamic resource allocation method based on grain storage, comprising:
[0006] Based on the distribution of grain storage, a multi-level management architecture for deploying cloud rendering hosts is adopted; the multi-level management architecture is used for hierarchical management of cloud rendering hosts and dynamic scheduling of 3D resources;
[0007] The multi-level management architecture controls the acquisition of user terminal access requests for 3D resources, and locates and schedules the 3D resources corresponding to the access requests to the local library.
[0008] Determine if the cloud rendering host in the local library has sufficient task processing resources;
[0009] If the cloud rendering host has sufficient task processing resources, then through a distributed resource deployment method, the 3D resources are allocated to the cloud rendering host in the local library for cloud rendering.
[0010] If the cloud rendering host has insufficient task processing resources, the 3D resources will be scheduled and allocated level by level across the library area or across the region.
[0011] The rendered video stream obtained from cloud rendering is sent to the user's terminal.
[0012] Preferably, in the above-mentioned three-dimensional resource dynamic allocation method, the step of deploying a multi-level management architecture for cloud rendering hosts based on the distribution of grain storage includes:
[0013] The design proposes a clustered deployment architecture for cloud rendering hosts corresponding to the distribution of grain storage. The clustered deployment architecture includes multiple cloud rendering hosts and resource storage hosts for storing 3D resources.
[0014] For clustered deployment architecture, a corresponding multi-level management architecture is deployed; the multi-level management architecture includes a central server, regional servers and underlying repository servers, and the repository servers manage all cloud rendering hosts and resource storage hosts within the repository area.
[0015] Preferably, in the above-mentioned dynamic allocation method for three-dimensional resources, the steps of controlling the multi-level management architecture to obtain user terminal access requests for three-dimensional resources, and finding and scheduling the three-dimensional resources corresponding to the access requests to the local library include:
[0016] The central server of the multi-level management architecture obtains access requests and queries the resource storage host where the corresponding 3D resource file is located.
[0017] When the resource storage host where the 3D resource file is located is found, the access request is forwarded to the resource storage host through a multi-level management architecture in order to retrieve the 3D resource file corresponding to the 3D resource.
[0018] The 3D resource files are retrieved to the local library server, and the library server then distributes the 3D resource files to the cloud rendering host within the local library.
[0019] When the resource storage host is not found or the 3D resource file is retrieved from the resource storage host, the 3D resource file is queried from the storage server level by level, across storage areas or across regions.
[0020] Preferably, in the above-mentioned dynamic allocation method for 3D resources, the step of allocating 3D resources to a cloud rendering host in the local library for cloud rendering through a distributed resource deployment method includes:
[0021] Using real-time streaming technology, the rendering task of 3D resources is split across multiple GPU nodes;
[0022] In the local library, multiple cloud rendering hosts corresponding to GPUs are deployed in a cluster according to rendering tasks;
[0023] The task processing resources corresponding to the rendering tasks of each cloud rendering host are dynamically allocated according to the load balancing mechanism.
[0024] Preferably, in the above-mentioned dynamic allocation method for three-dimensional resources, the step of scheduling and allocating three-dimensional resources level by level across storage areas or regions includes:
[0025] The local warehouse server sends a regional resource scheduling request to the superior regional server.
[0026] When a regional server receives a regional resource scheduling request, it searches for available cloud rendering hosts among all the regional server's servers within its jurisdiction.
[0027] If a cloud rendering host with available resources is found, the regional server will allocate the 3D resources to the cloud rendering host with available resources in a distributed resource deployment manner, and start the cloud rendering host to render the 3D resources.
[0028] If no cloud rendering host with available resources is found, a global resource scheduling request is initiated from the regional server to the central server. The central server then searches for available cloud rendering hosts within the jurisdiction of all regional servers across the entire platform, allocates 3D resources to available cloud rendering hosts according to the distributed resource deployment method, and starts rendering services for the 3D resources.
[0029] Preferably, in the above-mentioned dynamic allocation method for three-dimensional resources, the step of sending the rendered video stream obtained from cloud rendering to the user terminal includes:
[0030] Establish a WebRTC connection with the user terminal and use the WebRTC connection to forward the rendered video stream to the user terminal;
[0031] Real-time monitoring of network latency, packet loss rate, and bandwidth latency on the user terminal side;
[0032] Based on network latency, packet loss rate, and bandwidth delay, negative feedback is used to adjust the forwarding order and frequency of the rendered video stream.
[0033] Preferably, the above-mentioned dynamic allocation method for three-dimensional resources further includes, after the step of sending the rendered video stream obtained from cloud rendering to the user terminal:
[0034] After the user terminal downloads the rendered video stream, the rendered video stream is merged into the digital twin image generated by the digital twin model through viewpoint alignment.
[0035] The video stream is parsed and rendered to obtain multi-frame decoded images. The format-processed multi-frame decoded images are then input into the digital twin model. The digital twin model is used to learn the texture features of the decoded images in an adversarial learning manner. The learned texture features are then used to enhance the digital twin image.
[0036] According to a second aspect of this application, this application also provides a three-dimensional dynamic resource allocation system based on grain storage, comprising:
[0037] Multiple cloud rendering hosts are deployed according to the distribution of grain storage facilities, along with a multi-level management architecture corresponding to these hosts. This multi-level management architecture is used for hierarchical management of the cloud rendering hosts and dynamic scheduling of 3D resources.
[0038] The multi-level management architecture is used to obtain user terminal access requests for 3D resources, locate and schedule the corresponding 3D resources to the local library; determine whether the cloud rendering host in the local library has sufficient task processing resources; if the cloud rendering host has sufficient task processing resources, then allocate the 3D resources to the cloud rendering host in the local library for cloud rendering through a distributed resource deployment method; if the cloud rendering host has insufficient task processing resources, then schedule and allocate 3D resources level by level across libraries or regions.
[0039] A cloud rendering host is used to send the rendered video stream obtained from cloud rendering to the user terminal.
[0040] Preferably, the above-mentioned three-dimensional resource dynamic allocation system further includes:
[0041] The clustered deployment architecture of cloud rendering hosts corresponding to the distribution of grain storage includes multiple cloud rendering hosts and resource storage hosts for storing 3D resources.
[0042] The multi-level management architecture corresponds to the clustered deployment architecture. The multi-level management architecture includes a central server, regional servers, and underlying repository servers. The repository servers manage all cloud rendering hosts and resource storage hosts within the repository area.
[0043] Preferably, in the above-mentioned three-dimensional resource dynamic allocation system, the central server of the multi-level management architecture is used to obtain access requests and query the resource storage host where the three-dimensional resource file corresponding to the access request is located.
[0044] The central server is also used to forward access requests to the resource storage host when the location of the 3D resource file is found, through a multi-level management architecture.
[0045] The library server is used to retrieve the 3D resource files corresponding to the 3D resources, and the library server distributes the 3D resource files to the cloud rendering host in the local library.
[0046] The repository server is also used to query 3D resource files from the repository server level by level across repositories or regions when the 3D resource files cannot be retrieved from the resource storage host.
[0047] Preferably, in the above-mentioned three-dimensional dynamic resource allocation system, the local storage area server sends a regional resource scheduling request to the superior regional server;
[0048] A regional server is used to search for available cloud rendering hosts among all the regional servers within its jurisdiction when it receives a regional resource scheduling request.
[0049] The regional server is also used to allocate 3D resources to the cloud rendering host with available resources according to the distributed resource deployment method when a cloud rendering host with available resources is found, and to start the cloud rendering host to render the 3D resources.
[0050] The regional server is also used to initiate a global resource scheduling request to the central server when no available cloud rendering host is found.
[0051] The central server is also used to search for available cloud rendering hosts across all regional servers on the entire platform, allocate 3D resources to available cloud rendering hosts according to the distributed resource deployment method, and start rendering services for the 3D resources.
[0052] According to a third aspect of this application, this application also provides an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the three-dimensional resource dynamic allocation method based on grain storage provided in any of the above embodiments.
[0053] The technical solution of this application has at least the following technical effects:
[0054] The dynamic allocation scheme for 3D resources based on grain storage provided in this application can deploy a multi-level management architecture for corresponding cloud rendering hosts according to the distribution of grain storage. This multi-level management architecture can manage cloud rendering hosts hierarchically and dynamically schedule 3D resources. This multi-level management architecture solves the problems of inflexible resource allocation and low scheduling efficiency in existing technologies. Specifically, by deploying a multi-level management architecture, when a user terminal requests access to 3D resources, the corresponding 3D resources are located and uniformly scheduled to a local repository. This local repository is the repository corresponding to the resource storage host where the 3D resources are located. This repository contains multiple cloud rendering hosts and the aforementioned resource storage hosts, and is uniformly scheduled by the repository server managing this repository. Then, it is determined whether the cloud rendering hosts in the local repository have sufficient task processing resources. Since the 3D resources required by the external digital twin scene may be called by a large number of user terminals, the cloud rendering hosts in the local repository may have insufficient task processing resources. To address the above situation, if the cloud rendering host has sufficient task processing resources, 3D resources are allocated to local cloud rendering hosts in a distributed resource deployment manner. These local cloud rendering hosts then download the 3D resources and perform cloud rendering. If the local cloud rendering host lacks sufficient task processing resources, the 3D resources are scheduled and allocated tiered up across different regions, with a corresponding regional server managing the servers in multiple regions. This method allows for the scheduling of available resources over a wider area. After the allocated cloud rendering host downloads the 3D resources, it starts rendering and then sends the rendered video stream to the user terminal. In summary, this method dynamically and efficiently allocates and schedules the 3D resources required for cloud rendering based on user requests, with high process efficiency, thus ensuring a good user experience and optimizing resource utilization. This method solves the problems of insufficient resource allocation and inadequate cross-region scheduling capabilities in existing technologies. Attached Figure Description
[0055] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments of this application and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0056] Figure 1 This application provides a schematic diagram of a three-tier management architecture.
[0057] Figure 2 A flowchart illustrating a three-dimensional dynamic resource allocation method based on grain storage provided in this application embodiment;
[0058] Figure 3 A flowchart illustrating a method for rendering and digital twinning a video stream, provided in an embodiment of this application;
[0059] Figure 4 This is a schematic diagram of a three-dimensional dynamic resource allocation system based on grain storage, provided as an embodiment of this application. Detailed Implementation
[0060] To more clearly illustrate the overall concept of this application, a detailed explanation is provided below with reference to the accompanying drawings.
[0061] Many specific details are set forth in the following description to provide a thorough understanding of this application. However, this application may also be implemented in other ways different from those described herein. Therefore, the scope of protection of this application is not limited to the specific embodiments disclosed below. It should be noted that, unless otherwise specified, the embodiments of this application and the features thereof can be combined with each other.
[0062] In this application, unless otherwise expressly specified and limited, the terms "above" and "below" the second feature can refer to direct contact between the first and second features, or indirect contact between the first and second features through an intermediate medium. In the description of this specification, references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described can be combined in any suitable manner in one or more embodiments or examples.
[0063] The existing technology has the following drawbacks:
[0064] High-quality 3D scene rendering places high demands on the host's processing resources, and traditional local rendering methods struggle to meet the needs of large-scale concurrent user access. The current mainstream cloud rendering distributed deployment model places rendering tasks on multiple cloud servers, distributes digital twin applications across multiple nodes, and pushes rendered images to the terminal via video streaming technologies such as pixel streaming, achieving a "lightweight terminal + heavy cloud rendering" infrastructure. However, how to dynamically and efficiently allocate and schedule the 3D resources required for cloud rendering based on user requests, ensuring user experience and optimizing resource utilization, remains a pressing technical problem. Existing distributed deployment architectures suffer from insufficient flexibility in resource allocation and inadequate cross-regional scheduling capabilities.
[0065] See details Figure 1 , Figure 1This is a schematic diagram of a three-tier management architecture provided in an embodiment of this application. The system architecture deployment scheme of this application adopts a three-tier management system. At the top, a central server is deployed for overall scheduling and management; the middle layer is equipped with multiple regional servers, specifically divided into responsibilities according to geographical regions or business types; at the bottom layer, multiple repository servers are set up under each regional server to achieve localized resource management. At the very bottom, each repository server directly manages multiple cloud rendering hosts, undertaking the rendering tasks of specific 3D resources, forming a four-tier architecture of "central-region-repository-host," ensuring efficient resource allocation and centralized control.
[0066] The following is based on Figure 1 The three-tier management architecture provided in the illustrated embodiment illustrates the dynamic allocation scheme for three-dimensional resources based on grain storage provided in the following embodiment. This dynamic allocation scheme, based on a panoramic digital grain depot for the grain industry, provides a dynamic resource allocation method for distributed cloud rendering deployment to solve the problems of inflexible resource allocation and low scheduling efficiency in existing technologies. This scheme deploys a multi-tier management architecture, including at least a central server 1, regional servers 2, and storage area servers 3, enabling hierarchical management and dynamic scheduling of the cloud rendering host 4. When a user requests access to the cloud rendering service of a specific storage area, the system first attempts to allocate resources in the local storage area; if local resources are insufficient, requests are sent tier by tier to regional server 2 and even to central server 1 to schedule available resources on a larger scale. After the allocated cloud rendering host 4 downloads the required three-dimensional resources, it starts rendering and forwards the rendered video stream to the user terminal 5 via WebRTC.
[0067] like Figure 2 As shown in the embodiments of this application, the three-dimensional dynamic resource allocation method based on grain storage includes:
[0068] S110: Based on the distribution of grain storage, deploy a multi-level management architecture for cloud rendering hosts; the multi-level management architecture is used for hierarchical management of cloud rendering hosts and dynamic scheduling of 3D resources.
[0069] Specifically combined Figure 1 As shown in the three-level management architecture, the step of deploying a multi-level management architecture for cloud rendering hosts based on the distribution of grain storage in the three-dimensional resource dynamic allocation method provided in this application embodiment includes:
[0070] The design corresponds to the distribution of grain storage facilities and the clustered deployment architecture of cloud rendering hosts. The clustered deployment architecture includes multiple cloud rendering hosts and resource storage hosts for storing 3D resources.
[0071] For the clustered deployment architecture, a corresponding multi-level management architecture is deployed. This multi-level management architecture includes a central server, regional servers, and an underlying repository server. The repository server manages all cloud rendering hosts and resource storage hosts within its repository area. It should be noted that the repository server can also act as a resource storage host. This way, when a 3D resource file needs to be retrieved, it only needs to be retrieved from the repository server, which then distributes the 3D resource file to the cloud rendering hosts within the repository area.
[0072] The technical solution provided in this application embodiment, through the design of a clustered deployment architecture of cloud rendering hosts corresponding to the distribution of grain storage, enables the cloud rendering hosts to quickly monitor and render the corresponding 3D resources of the grain storage. This clustered deployment architecture of cloud rendering hosts includes multiple cloud rendering hosts and resource storage hosts. The cloud rendering hosts are used for cloud rendering of the 3D resources, and the resource storage hosts are used for storing the 3D resources. Combined with... Figure 1 As shown in the three-tier management architecture, corresponding to the clustered deployment architecture of cloud rendering hosts, the multi-tier management architecture includes at least a central server, regional servers, and underlying repository servers. The central server is responsible for overall scheduling and management; the middle layer is equipped with multiple regional servers, which can divide responsibilities according to geographical regions or business types; each regional server is responsible for multiple repository servers, thereby implementing localized resource management for the repository servers within its region. At the very bottom, each repository server directly manages multiple cloud rendering hosts and can undertake specific rendering task execution. Through the above-mentioned clustered deployment architecture corresponding to cloud rendering hosts, a multi-tier management architecture including a central server, regional servers, and underlying repository servers can be designed to form a four-tier overall system architecture of "central-regional-repository-host," thereby ensuring efficient resource allocation and centralized control of the business processing resources of cloud rendering hosts.
[0073] Figure 2 The three-dimensional resource dynamic allocation method provided in the illustrated embodiment, after deploying a multi-level management architecture for cloud rendering hosts, further includes:
[0074] S120: Controls the multi-level management architecture to obtain user terminal access requests for 3D resources, locate and schedule the 3D resources corresponding to the access requests to the local library.
[0075] By acquiring user terminal access requests for 3D resources, locating and scheduling the corresponding 3D resources to the local library, this multi-level management architecture enables unified locating and scheduling of 3D resources, and allocates corresponding cloud rendering hosts to execute rendering tasks. This method achieves hierarchical dynamic scheduling of 3D resources; for example... Figure 1The three-tier management architecture shown achieves flexible, dynamic allocation and scheduling of cloud rendering through a three-tiered structure of central server, regional server, and repository server, thereby improving the flexibility and response speed of resource allocation.
[0076] Specifically, as a preferred embodiment, the steps of controlling the multi-level management architecture to obtain user terminal access requests for 3D resources, and finding and scheduling the 3D resources corresponding to the access requests to the local library in the above-mentioned dynamic allocation method for 3D resources include:
[0077] The central server of the multi-level management architecture obtains access requests and queries the resource storage host where the corresponding 3D resource file is located.
[0078] This application can store a list of resource files on a central server, which specifically indicates the location of the 3D resource files. By using the above method, the resource storage host where the 3D resource files are located can be found through the resource file list.
[0079] When the resource storage host where the 3D resource file is located is found, the access request is forwarded to the resource storage host through a multi-level management architecture to retrieve the 3D resource file corresponding to the 3D resource.
[0080] This multi-level management architecture forwards access requests to the resource storage host, enabling dynamic scheduling and allocation of 3D resource files, thereby improving the flexibility and efficiency of resource allocation.
[0081] The process retrieves 3D resource files to the local repository server, which then distributes them to cloud rendering hosts within the local repository. The repository server manages multiple cloud rendering hosts at the lowest level, retrieving and distributing 3D resources to cloud rendering hosts with sufficient processing resources.
[0082] It should be noted that the library server can also act as a resource storage host. In this way, when a 3D resource file needs to be retrieved, it can simply be retrieved from the library server and distributed to the various cloud rendering hosts within the library for rendering.
[0083] When the resource storage host is not found or the 3D resource file is retrieved from the resource storage host, the 3D resource file is queried from the storage server level by level, across storage areas or across regions.
[0084] The technical solution provided in this application embodiment includes a multi-level management architecture comprising at least a central server, regional servers, and a repository server. The central server receives access requests from user terminals and then queries the resource storage host where the corresponding 3D resource file is located, according to the multi-level management architecture. Once the 3D resource file is found, the repository server retrieves it and, based on the business processing resources of the multiple cloud rendering hosts within the repository, allocates the 3D resource file to one or more corresponding cloud rendering hosts for rendering tasks. If the resource storage host is not found or the 3D resource file is not retrieved, the failure to find the file is reported level by level, starting from the repository server, and the higher-level regional server performs a cross-repository or cross-regional 3D resource file query operation, or the central server performs a cross-regional query operation. This method enables hierarchical dynamic scheduling and allocation of 3D resource files, improving the flexibility and response speed of resource allocation.
[0085] Figure 2 The three-dimensional resource dynamic allocation method provided in the illustrated embodiment further includes the following steps after finding and scheduling the three-dimensional resource corresponding to the access request to the local library:
[0086] S130: Determine whether the cloud rendering host in the local library has sufficient task processing resources.
[0087] When a user accesses a specific library area, the first stage requires the client server to perform a resource self-check. Specifically, the user terminal sends a rendering service request to the central server, which is distributed through a three-level process from the central server to the regional server and then to the library area server before reaching the target library area server. Then, a resource check is performed. The library area server checks the resources of the cloud rendering hosts it manages locally. If the cloud rendering host has sufficient resources, it selects an available cloud rendering host and triggers it to download the 3D resource file. The cloud rendering host then starts the cloud rendering service and performs cloud rendering on the 3D resource.
[0088] S140: If the cloud rendering host has sufficient task processing resources, then through a distributed resource deployment method, the 3D resources are allocated to the cloud rendering host in the local library for cloud rendering.
[0089] After the library server in this embodiment obtains the 3D resource file, it needs to perform a self-check of the task processing resources of all cloud rendering hosts in the local library. If there are sufficient task processing resources for rendering the 3D resource file in the local library, the 3D resources are allocated to the cloud rendering hosts in the local library through the distributed resource deployment method. The above method can balance the load of each cloud rendering host in the local library, fully release the GPU parallel computing power of each cloud rendering server, and significantly improve the response speed of heavy-load tasks such as rendering of 3D models and real-time data processing.
[0090] Specifically, the steps of allocating 3D resources to cloud rendering hosts in the local library area for cloud rendering through a distributed resource deployment method include:
[0091] Real-time streaming technology is used to split the rendering task of 3D resources across multiple GPU nodes. This real-time streaming technology can utilize UnityRenderStreaming technology from the Unity platform. This technology allows the rendering task of 3D resources to be divided into multiple subtasks and sent to multiple GPU nodes with sufficient processing resources.
[0092] In the local library, multiple GPUs are deployed in a cluster according to rendering tasks, each corresponding to a cloud rendering host.
[0093] The task processing resources corresponding to the rendering tasks of each cloud rendering host are dynamically allocated according to the load balancing mechanism.
[0094] The technical solution provided in this application, through a distributed resource deployment approach based on real-time streaming media transmission technologies such as UnityRenderStreaming, splits the rendering tasks of 3D resources across multiple GPU nodes (typically one GPU node per cloud rendering server) and deploys them in a cluster across multiple cloud rendering servers, efficiently handling high-concurrency access scenarios. This mode dynamically allocates task processing resources for cloud rendering through a load balancing mechanism, fully releasing the parallel computing power of GPUs and significantly improving the response speed of heavy-load tasks such as 3D model rendering and real-time data processing. In the 3D digital twin system of a grain depot, distributed deployment enables multiple hosts to simultaneously access the high-precision model of the storage area, view real-time temperature and humidity data and equipment status, and, in conjunction with pixel streaming technology, transmit rendering results to the terminal with low latency, balancing an immersive experience with system stability.
[0095] Figure 2 The three-dimensional resource dynamic allocation method provided in the illustrated embodiment, after allocating three-dimensional resources to a cloud rendering host in the local library for cloud rendering through a distributed resource deployment method, further includes the following steps:
[0096] S150: If the cloud rendering host lacks sufficient task processing resources, the 3D resources are scheduled and allocated tier by tier across different libraries or regions. The technical solution provided in this application employs a multi-level management architecture. When the cloud rendering host lacks sufficient task processing resources, the regional server performs cross-library scheduling. If the regional server cannot find a cloud rendering host with available resources within its region, the central server performs cross-region scheduling of cloud rendering hosts globally. This approach solves the problems of inflexible resource allocation, insufficient cross-regional capabilities, or inefficient resource download and startup processes in existing technologies.
[0097] Specifically, in a preferred embodiment, step S150 of the above-described dynamic allocation method for three-dimensional resources—the step of scheduling and allocating three-dimensional resources level by level across storage areas or regions—includes:
[0098] The local storage server sends a regional resource scheduling request to the higher-level regional server.
[0099] When a regional server receives a regional resource scheduling request, it searches for available cloud rendering hosts among all the regional servers within its jurisdiction.
[0100] If a cloud rendering host with available resources is found, the regional server will allocate the 3D resources to the available cloud rendering host according to the distributed resource deployment method, and start the cloud rendering host to render the 3D resources.
[0101] If no cloud rendering host with available resources is found, a global resource scheduling request is initiated from the regional server to the central server. The central server then searches for available cloud rendering hosts within the jurisdiction of all regional servers across the entire platform, allocates 3D resources to available cloud rendering hosts according to the distributed resource deployment method, and starts rendering services for the 3D resources.
[0102] The technical solution provided in this application embodiment involves a regional server receiving a resource access request from a library server. The regional server searches for available cloud rendering hosts among all its managed library servers and matches the 3D resources to these available cloud rendering hosts. Specifically, it instructs the library server in the target library where the available cloud rendering host is located to schedule the 3D resources, and instructs the cloud rendering host in the target library to download the 3D resource file and start the rendering service. The rendered video stream is directly forwarded to the user terminal via WebRTC (avoiding multi-level forwarding delays). If no available cloud rendering host is found, the regional server then initiates a global resource request to the central server.
[0103] The central server performs cross-regional scheduling, specifically including request upgrades: After receiving resource requests from regional servers, the central server searches for available cloud rendering hosts within the jurisdiction of all regional servers across the entire platform; then it performs global scheduling, and if a cloud rendering server with available resources is found, it assigns the target library host in the target region to perform download and rendering tasks; finally, the rendering results are directly connected to the user terminal via WebRTC technology to ensure low-latency transmission.
[0104] Figure 2 The three-dimensional resource dynamic allocation method provided in the illustrated embodiment, after scheduling and allocating three-dimensional resources across storage areas or regions at the hierarchical level, further includes the following steps:
[0105] S160: Send the rendered video stream obtained from cloud rendering to the user terminal. This can be done through the cloud rendering host with the multi-level management architecture described above.
[0106] This application's embodiments employ the WebRTC protocol to achieve bidirectional data communication between the user terminal and the aforementioned multi-level management architecture. The technical solution provided in this application's embodiments supports real-time data transmission between the client and the cloud rendering platform, and provides a data channel with customizable business logic, offering fundamental capabilities for cross-terminal interaction. Within this framework, the mouse and keyboard interaction solution is further optimized: through state segmentation technology (such as breaking down mouse operations into multiple dimensions like pressed / held / released states), combined with a dynamic event frequency control algorithm, low-latency, high-fidelity real-time interaction between users and the 3D scene deployed in the cloud via terminal devices such as mice and keyboards is achieved. This solution ultimately establishes a bidirectional data channel between the front-end interface and cloud services, ensuring smooth interaction while supporting multi-scenario adaptation through customizable business logic.
[0107] Specifically, as a preferred embodiment, the step of sending the rendered video stream obtained from cloud rendering to the user terminal in the above-described three-dimensional resource dynamic allocation method includes:
[0108] Establish a WebRTC connection with the user terminal and use the WebRTC connection to forward the rendered video stream to the user terminal.
[0109] Real-time monitoring of network latency, packet loss rate, and bandwidth latency on the user terminal side;
[0110] Taking into account network latency, packet loss rate, and bandwidth latency, negative feedback is used to adjust the forwarding order and frequency of the rendered video stream. Here, corresponding weights are assigned to network latency, packet loss rate, and bandwidth latency, and the forwarding order and frequency of the rendered video stream are adjusted based on the overall score.
[0111] Specifically, the rendered video stream is forwarded to the user terminal using the WebRTC protocol. Low-latency WebRTC is used for video stream transmission, supporting browser-side access without plugins, with latency controllable between 50-200ms. Furthermore, real-time monitoring of network latency, packet loss rate, and bandwidth latency on the user terminal side is used, with negative feedback adjusting the forwarding order and frequency of the rendered video stream. These methods improve data transmission efficiency and quality, and reduce the data transmission latency of the rendered video stream.
[0112] In summary, the dynamic allocation method for 3D resources based on grain storage provided in this application can deploy a multi-level management architecture for corresponding cloud rendering hosts according to the distribution of grain storage. This multi-level management architecture can perform hierarchical management of cloud rendering hosts and dynamically schedule 3D resources. This multi-level management architecture solves the problems of inflexible resource allocation and low scheduling efficiency in existing technologies. Specifically, by deploying a multi-level management architecture, when a user terminal requests access to 3D resources, the 3D resources corresponding to the access request are located and uniformly scheduled to a local storage area. This local storage area is the storage area corresponding to the resource storage host where the 3D resources are located. This storage area contains multiple cloud rendering hosts and the aforementioned resource storage hosts, and is uniformly scheduled by the storage area server that manages this storage area. Then, it is determined whether the cloud rendering hosts in the local storage area have sufficient task processing resources. Since the 3D resources required by the external digital twin scene may be called by a large number of user terminals, the cloud rendering hosts in the local storage area may have insufficient task processing resources. To address the above situation, if the cloud rendering host has sufficient task processing resources, 3D resources are allocated to local cloud rendering hosts in a distributed resource deployment manner. These local cloud rendering hosts then download the 3D resources and perform cloud rendering. If the local cloud rendering host lacks sufficient task processing resources, the 3D resources are scheduled and allocated tiered up across different regions, with a corresponding regional server managing the servers in multiple regions. This method allows for the scheduling of available resources over a wider area. After the allocated cloud rendering host downloads the 3D resources, it starts rendering and then sends the rendered video stream to the user terminal. In summary, this method dynamically and efficiently allocates and schedules the 3D resources required for cloud rendering based on user requests, with high process efficiency, thus ensuring a good user experience and optimizing resource utilization. This method solves the problems of insufficient resource allocation and inadequate cross-region scheduling capabilities in existing technologies.
[0113] In addition, combined Figure 3 The rendering and digital twin method for rendering video streams, as a preferred embodiment, includes the following steps:
[0114] The user terminal requests a session (equivalent to the aforementioned request to access 3D resources), and then the cloud rendering platform (equivalent to...) Figure 1The three-tier management architecture shown creates its own session and returns a queue number to the user terminal. After the user terminal finishes queuing, it establishes a WebRTC connection with the cloud rendering platform to receive the rendered video stream. Then, the cloud rendering platform starts the digital twin model, which in turn starts the digital twin service. The digital twin model combines the aforementioned cloud rendered video stream to generate a digital twin image, which is then synchronized to the user terminal. When the user terminal is idle, the connection with the digital twin model is temporarily disconnected. When the digital twin image needs to be synchronized again, the user terminal reconnects to the digital twin model and returns the digital twin image. Finally, when the user terminal ends the session, the cloud rendering platform releases the session, which also terminates the digital twin service with the digital twin model.
[0115] In addition, combined Figure 3 The method shown in the above embodiment, the three-dimensional resource dynamic allocation method, further includes the following after the step of sending the rendered video stream obtained from cloud rendering to the user terminal:
[0116] The cloud rendering host or central server with a multi-level management architecture synchronously sends the rendered video stream to the digital twin model; and synchronizes the digital twin screen with the user terminal through the digital twin model.
[0117] After the user terminal downloads the rendered video stream, the rendered video stream is merged into the digital twin image generated by the digital twin model through perspective alignment.
[0118] The video stream is parsed and rendered to obtain multi-frame decoded images. The format-processed multi-frame decoded images are then input into the digital twin model. The digital twin model is used to learn the texture features of the decoded images in an adversarial learning manner. The learned texture features are then used to enhance the digital twin image.
[0119] This application embodiment can integrate a rendered video stream with a digital twin scene. Specifically, it uses a viewpoint alignment method to bind the shooting viewpoint of the rendered video stream and a specific viewpoint of the digital twin model. Then, the rendered video stream is embedded into the digital twin image of the digital twin model. Here, the rendered video stream is parsed to obtain multiple frames of decoded images. Then, the decoded images are formatted and input into the digital twin model. The digital twin model uses adversarial learning to learn the texture features of the image. In this way, the digital twin model can use the learned texture features to enhance the digital twin image it produces, thereby improving the realism of the digital twin image.
[0120] See also: Figure 4 , Figure 4 This application provides a three-dimensional dynamic resource allocation system based on grain storage, combined with... Figure 1 As shown, the three-dimensional resource dynamic allocation system includes:
[0121] Multiple cloud rendering hosts are set up according to the distribution of grain storage, and a multi-level management architecture is set up for the multiple cloud rendering hosts. The multi-level management architecture is used to manage the cloud rendering hosts in layers and dynamically schedule 3D resources. The multi-level management architecture includes a three-level architecture of central server, regional server and storage area server.
[0122] The multi-level management architecture is used to obtain user terminal access requests for 3D resources, locate and schedule the corresponding 3D resources to the local library; determine whether the cloud rendering host in the local library has sufficient task processing resources; if the cloud rendering host has sufficient task processing resources, then allocate the 3D resources to the cloud rendering host in the local library for cloud rendering through a distributed resource deployment method; if the cloud rendering host has insufficient task processing resources, then schedule and allocate 3D resources level by level across libraries or regions.
[0123] Cloud rendering host (i.e.) Figure 4 The server rendering terminal shown is used to perform cloud rendering of 3D resources and then send the resulting rendered video stream to the user terminal (i.e., Figure 4 (The client shown).
[0124] Specifically, as a preferred embodiment, such as Figure 1 and 4 As can be seen from the architecture shown, the three-dimensional resource dynamic allocation system provided in this application embodiment also includes:
[0125] The clustered deployment architecture of cloud rendering hosts corresponding to the distribution of grain storage includes multiple cloud rendering hosts and resource storage hosts for storing 3D resources.
[0126] The multi-level management architecture corresponds to the clustered deployment architecture. The multi-level management architecture includes a central server, regional servers, and underlying repository servers. The repository servers manage all cloud rendering hosts and resource storage hosts within the repository area.
[0127] Specifically, as a preferred embodiment, combined with Figure 1 and Figure 4 As shown, the above-mentioned three-dimensional resource dynamic allocation system has a multi-level management architecture with a central server used to obtain access requests and query the resource storage host where the three-dimensional resource file corresponding to the access request is located.
[0128] The central server is also used to forward access requests to the resource storage host when the location of the 3D resource file is found, through a multi-level management architecture.
[0129] The library server is used to retrieve the 3D resource files corresponding to the 3D resources, and the library server distributes the 3D resource files to the cloud rendering host in the local library.
[0130] The repository server is also used to query 3D resource files from the repository server level by level across repositories or regions when the 3D resource files cannot be retrieved from the resource storage host.
[0131] Preferably, in the above-mentioned three-dimensional dynamic resource allocation system, the local storage area server sends a regional resource scheduling request to the superior regional server;
[0132] A regional server is used to search for available cloud rendering hosts among all the regional servers within its jurisdiction when it receives a regional resource scheduling request.
[0133] The regional server is also used to allocate 3D resources to the cloud rendering host with available resources according to the distributed resource deployment method when a cloud rendering host with available resources is found, and to start the cloud rendering host to render the 3D resources.
[0134] The regional server is also used to initiate a global resource scheduling request to the central server when no available cloud rendering host is found.
[0135] The central server is also used to search for available cloud rendering hosts across all regional servers on the entire platform, allocate 3D resources to available cloud rendering hosts according to the distributed resource deployment method, and start rendering services for the 3D resources.
[0136] like Figure 4 As shown in the system diagram, the three-tier management architecture for accessing 3D resources and allocating cloud rendering hosts includes the following steps:
[0137] First, let's discuss user access and resource allocation methods: When a user accesses a specific library area, the request processing flow of the cloud rendering service is as follows:
[0138] Phase 1: Self-check of server resources in the storage area:
[0139] Request Initiation: The user initiates a cloud rendering service request to the central server, which is distributed through three levels: central server → regional server → library server, and finally reaches the target library server.
[0140] Resource detection: The repository server checks the task processing resources of the locally managed cloud rendering hosts.
[0141] If there are sufficient task processing resources:
[0142] Select an available host and trigger it to download the 3D resource file (which can be stored on the local repository's resource storage host or deployed on the repository server).
[0143] The host starts the cloud rendering service and forwards the rendered video stream to the user terminal in real time using WebRTC technology.
[0144] If insufficient: The warehouse server sends a resource request to the superior region server.
[0145] Phase Two: Cross-Region Server Scheduling
[0146] Request reception: After receiving a resource request from a region server, the region server searches for available cloud rendering hosts among all the region servers under its jurisdiction.
[0147] If available resources are found, resource allocation is performed, specifically instructing the host in the target library to download the 3D resource files and start the rendering service. The rendered video stream is forwarded directly to the user terminal via WebRTC (avoiding multi-level forwarding delays).
[0148] If no available cloud rendering host is found, the regional server initiates a global resource request to the central server.
[0149] The third phase involves cross-regional scheduling of the central server.
[0150] Request upgrade: After receiving the resource request from the regional server, the central server searches for available cloud rendering hosts within the jurisdiction of all regional servers across the entire platform.
[0151] Global Scheduling: If available resources are found: the target library host in the target region is assigned across regions to perform the download and rendering tasks. The rendering results are directly connected to the user terminal via WebRTC technology to ensure low-latency transmission.
[0152] Finally, the above-mentioned multi-level management architecture and real-time streaming and interaction with user terminals are realized through the WebRTC protocol: the embodiments of this application use low-latency WebRTC to realize video streaming transmission, which supports browser access without plugins, and the latency can be controlled within 50-200ms.
[0153] In summary, the three-dimensional dynamic resource allocation scheme based on grain storage provided in the above embodiments of this application has the following advantages:
[0154] (1) Hierarchical dynamic scheduling: Through the three-level architecture of central server, regional server and library server, the dynamic allocation and scheduling of cloud rendering resources are realized at each level, which improves the flexibility and response speed of resource allocation.
[0155] (2) Improved resource utilization: When local resources are insufficient, idle resources can be scheduled across databases and regions, which effectively improves the overall utilization of cloud rendering hosts and avoids resource waste.
[0156] (3) User experience guarantee: Even if resources in a specific storage area are scarce, user requests can be scheduled to other available resources through the upper-level server, ensuring the success rate and smoothness of user access.
[0157] (4) On-demand loading: After receiving and confirming the assigned task, the cloud rendering host first checks whether the resource is deployed locally. If it is not, it downloads the corresponding 3D resource, reducing unnecessary storage and bandwidth usage.
[0158] The modules described in the embodiments of this application can be implemented in software or hardware. The module names, in some cases, do not constitute a limitation on the unit itself.
[0159] The various embodiments in this specification are described in a progressive manner. The same or similar parts between the various embodiments can be referred to each other. Each embodiment focuses on describing the differences from other embodiments.
[0160] The above description is merely an embodiment of this application and is not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A three-dimensional dynamic resource allocation method based on grain storage, characterized in that, include: Based on the distribution of grain storage, a multi-level management architecture for cloud rendering hosts is deployed. The multi-level management architecture is used for hierarchical management of the cloud rendering host and dynamic scheduling of 3D resources; The multi-level management architecture is controlled to obtain user terminal access requests for 3D resources, locate and schedule the 3D resources corresponding to the access requests to the local library. Determine if the cloud rendering host in the local library has sufficient task processing resources; If the cloud rendering host has sufficient task processing resources, the 3D resources are allocated to the cloud rendering host in the local library for cloud rendering through a distributed resource deployment method. If the cloud rendering host has insufficient task processing resources, the 3D resources will be scheduled and allocated level by level across the library area or across the region. The rendered video stream obtained from cloud rendering is sent to the user terminal; The step of controlling the multi-level management architecture to obtain user terminal access requests for 3D resources, and to locate and schedule the 3D resources corresponding to the access requests to the local library includes: using the central server of the multi-level management architecture to obtain the access request, and querying the resource storage host where the 3D resource file corresponding to the access request is located; when the resource storage host where the 3D resource file is located is found, the access request is forwarded to the resource storage host through the multi-level management architecture to retrieve the 3D resource file corresponding to the 3D resource; the 3D resource file is retrieved to the library server in the local library, and the library server allocates the 3D resource file to the cloud rendering host in the local library; when the resource storage host is not found or the 3D resource file is retrieved from the resource storage host, the 3D resource file is queried from the library server level by level across library areas or across regions. After the step of sending the rendered video stream obtained from cloud rendering to the user terminal, the method further includes: after the user terminal downloads the rendered video stream, fusing the rendered video stream into the digital twin image generated by the digital twin model through viewpoint alignment; parsing the rendered video stream to obtain multi-frame decoded images, inputting the format-processed multi-frame decoded images into the digital twin model, using the digital twin model to learn the texture features of the decoded images in an adversarial learning manner, and using the learned texture features to enhance the digital twin image.
2. The method as described in claim 1, characterized in that, The steps for deploying a multi-level management architecture for cloud rendering hosts based on the distribution of grain storage include: Design a clustered deployment architecture for cloud rendering hosts corresponding to the distribution of the grain storage, wherein the clustered deployment architecture includes multiple cloud rendering hosts and resource storage hosts for storing 3D resources. For the clustered deployment architecture, a corresponding multi-level management architecture is deployed; wherein, the multi-level management architecture includes a central server, regional servers and an underlying repository server, and the repository server manages all cloud rendering hosts and resource storage hosts within the repository.
3. The method as described in claim 1, characterized in that, The step of allocating the 3D resources to a cloud rendering host in the local library for cloud rendering via a distributed resource deployment method includes: Using real-time streaming technology, the rendering task of the 3D resource is split into multiple GPU nodes; In the local library area, cloud rendering hosts corresponding to the multiple GPUs are deployed in a cluster according to the rendering tasks; The task processing resources corresponding to the rendering task are dynamically allocated to each cloud rendering host according to the load balancing mechanism.
4. The method as described in claim 1, characterized in that, The steps for scheduling and allocating three-dimensional resources across storage areas or regions in a step-by-step upward manner include: The local warehouse server sends a regional resource scheduling request to the higher-level regional server. When the regional server receives the regional resource scheduling request, it searches for cloud rendering hosts with available resources in all the library servers within the jurisdiction of the regional server. If a cloud rendering host with available resources is found, the regional server allocates the 3D resources to the cloud rendering host with available resources according to the resource distributed deployment method, and starts the rendering service of the cloud rendering host for the 3D resources. If no cloud rendering host for the resource is found, the regional server initiates a global resource scheduling request to the central server. The central server then searches for a cloud rendering host with available resources across all regional servers on the platform. The 3D resource is allocated to the cloud rendering host with available resources according to the resource distributed deployment method, and the rendering service for the 3D resource is started.
5. The method as described in claim 1, characterized in that, The step of sending the rendered video stream obtained from cloud rendering to the user terminal includes: Establish a WebRTC connection with the user terminal, and use the WebRTC connection to forward the rendered video stream to the user terminal; Real-time monitoring of network latency, packet loss rate, and bandwidth latency on the user terminal side; Based on the network latency, packet loss rate, and bandwidth delay, negative feedback is used to adjust the forwarding order and frequency of the rendered video stream.
6. A three-dimensional dynamic resource allocation system based on grain storage, characterized in that, include: Multiple cloud rendering hosts are configured according to the distribution of grain storage facilities, and a multi-level management architecture corresponds to these cloud rendering hosts. The multi-level management architecture is used for hierarchical management of the cloud rendering hosts and dynamic scheduling of 3D resources. The multi-level management architecture is used to obtain user terminal access requests for 3D resources, locate and schedule the 3D resources corresponding to the access requests to the local library; determine whether the cloud rendering host in the local library has sufficient task processing resources; if the cloud rendering host has sufficient task processing resources, then allocate the 3D resources to the cloud rendering host in the local library for cloud rendering through a distributed resource deployment method; if the cloud rendering host has insufficient task processing resources, then schedule and allocate 3D resources level by level across libraries or regions. The cloud rendering host is used to send the rendered video stream obtained by cloud rendering to the user terminal. The central server of the multi-level management architecture is used to obtain access requests and query the resource storage host where the 3D resource file corresponding to the access request is located. The central server is also used to forward access requests to the resource storage host where the 3D resource file is located, through a multi-level management architecture, when the resource storage host is found. The library server is used to retrieve the 3D resource files corresponding to the 3D resources, and the library server distributes the 3D resource files to the cloud rendering host in the local library. The storage area server is also used to query the 3D resource file from the storage area server level by level across storage areas or across regions when the 3D resource file is not retrieved from the resource storage host. The user terminal is also used to, after downloading the rendered video stream, merge the rendered video stream into the digital twin image generated by the digital twin model through viewpoint alignment; parse the rendered video stream to obtain multi-frame decoded images, input the format-processed multi-frame decoded images into the digital twin model, use the digital twin model to learn the texture features of the decoded images in an adversarial learning manner, and use the learned texture features to enhance the digital twin image.
7. The system as described in claim 6, characterized in that, The system also includes: A clustered deployment architecture of cloud rendering hosts corresponding to the distribution of the grain storage, wherein the clustered deployment architecture includes multiple cloud rendering hosts and resource storage hosts for storing three-dimensional resources. The multi-level management architecture corresponds to the clustered deployment architecture. The multi-level management architecture includes a central server, regional servers, and underlying repository servers. The repository servers manage all cloud rendering hosts and resource storage hosts within the repository area.
8. The system as described in claim 6 or 7, characterized in that, The local storage area server sends a regional resource scheduling request to the superior regional server. When the regional server receives the regional resource scheduling request, it searches for cloud rendering hosts with available resources among all the regional servers within its jurisdiction. The regional server is also configured to, if a cloud rendering host with available resources is found, allocate the 3D resources to the cloud rendering host with available resources according to the resource distributed deployment method, and start the rendering service of the cloud rendering host for the 3D resources. The regional server is also used to initiate a global resource scheduling request to the central server when no cloud rendering host available for the resource is found. The central server is also used to search for available cloud rendering hosts within the jurisdiction of all regional servers across the entire platform, allocate the 3D resources to the available cloud rendering hosts according to the resource distributed deployment method, and start the rendering service for the 3D resources.
Citation Information
Patent Citations
Cross-domain colony computing resource gathering and distributing method
CN104461740A
High-fidelity cloud rendering cluster scheduling method and system
CN120371468A