An asynchronous update method for digital twin point cloud editing

The digital twin system decouples point cloud editing from processing algorithms, facilitating flexible and efficient updates and edits, addressing high operational barriers and data maintenance challenges in digital twin systems.

CN119579840BActive Publication Date: 2025-07-15QIANXUN TECH (SHENZHEN) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510137007.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-02-07
Publication Date
2025-07-15
Estimated Expiration
2045-02-07

AI Technical Summary

Technical Problem

In the prior art, point cloud data editing service has a long calculation time, high operating threshold, unsatisfactory editing results, and difficult data maintenance, which cannot meet the rapid calculation and real-time update of the digital twin model.

Method used

The digital twin system is adopted to realize the asynchronous update method of point cloud data through a system composed of graph construction equipment, front-end and back-end of DDT, MinIO, and robots. The point cloud data and processing algorithm are separated by decoupling of point cloud processing algorithms and editing operations, and data processing and editing are carried out through task queues and WebSocket services.

Benefits of technology

It lowers the operation threshold, improves the accuracy of editing results, simplifies the workload of data maintenance, and realizes rapid updates and flexible editing of digital twin models.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119579840B_ABST
    Figure CN119579840B_ABST
Patent Text Reader

Abstract

The present invention discloses an asynchronous update method for digital twin point cloud editing, including: the backend sequentially selects appropriate point cloud processing algorithms for each mapping stage, generates corresponding mapping tasks, thereby generating the primitives of the 3D model, and uploads them to MinIO as primitive files; the front-end interface is used to select the point cloud data to be edited and perform editing operations on it, thereby generating new point cloud data; the front-end periodically sends the editing operations to the backend. If it is judged that they will affect the primitives, corresponding change records are generated, otherwise the scenario case database is directly updated; the backend periodically reads the change records. Once it finds an editing operation that has not been applied to the point cloud data, it calls an appropriate point cloud processing algorithm to perform editing operations and primitive segmentation on the relevant point cloud data, thereby generating new primitives and uploading them to MinIO to update the primitive files, achieving the effects of reducing the operation threshold, improving the accuracy of editing results, and simplifying data maintenance work.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a method for editing and processing point cloud data, and particularly to an asynchronous update method for digital twin point cloud editing, belonging to the technical field of the Internet of Things. Background Art

[0002] In the digital twin technology application system, the conventional process of point cloud data editing service is as follows:

[0003] First, import point cloud data, which can be actual scene data obtained by a 3D scanner or virtual scene data generated by a computer.

[0004] Secondly, preprocess and register the imported point cloud data to generate an original three-dimensional model. Among them, preprocessing includes noise filtering, outlier removal, data downsampling, etc. to improve data quality. Registration is to align point cloud data collected from multiple perspectives or at different times to the same coordinate system to ensure the consistency of subsequent processing.

[0005] Then, perform editing operations on the original three-dimensional model. The basic editing operations include adding, deleting, moving, rotating, scaling, etc. of points to modify and adjust the three-dimensional model; and perform further processing on the preliminary three-dimensional model using specific editing, such as adding driving areas, recommended paths, speed limit areas, fences, annotations, etc. to optimize and enhance the information of the point cloud.

[0006] Finally, save the edited three-dimensional model in a specific file format for subsequent use or export to other software or devices.

[0007] However, the calculation time of the above point cloud data editing service process is too long to meet the rapid calculation and real-time update of the digital twin model. The specific technical defects are as follows: a. High operation threshold: Since professional knowledge and skills are required for editing operations, the operation threshold is high and it is difficult to promote and use; b. Unsatisfactory editing results: Due to misoperations or tool limitations during the editing process, the accuracy of the editing results is insufficient; c. Difficult data maintenance: Since the editing results need to be saved in a corresponding database or file, when the data changes, it is necessary to republish the editing tool or update the database, resulting in difficult model updates and large workloads.

[0008] Therefore, it is urgent to research and develop a new method for editing and updating point cloud data in the present invention. Summary of the Invention

[0009] In view of the existing technical problems above, the present invention provides an asynchronous update method for digital twin point cloud editing, aiming to reduce the operation threshold, improve the accuracy of editing results, and simplify the workload of data maintenance.

[0010] To achieve the above technical objectives, the present invention provides an asynchronous update method for digital twin point cloud editing. By using a digital twin system mainly composed of a mapping device, the front end and back end of DDT, MinIO, and a robot, the method includes the following steps:

[0011] Collect point cloud data in the scene through the mapping device and upload it to MinIO;

[0012] According to the characteristics of the point cloud data and the mapping requirements, the back end sequentially selects appropriate point cloud processing algorithms for each mapping stage and generates corresponding mapping tasks; all mapping tasks enter the task queue in sequence and dequeue from the task queue in sequence for mapping processing, thereby generating the primitives of the 3D model and uploading them to MinIO as primitive files;

[0013] Select the point cloud data to be edited through the front-end interface and perform editing operations on it to generate new point cloud data; the front end regularly sends the editing operations to the back end. After receiving the editing operations, if the back end determines that they will affect the primitives, it generates corresponding change records; otherwise, it directly updates the scene case database;

[0014] The back end regularly reads the change records. Once it finds an editing operation that has not been applied to the point cloud data, it calls the appropriate point cloud processing algorithm according to the change records to perform editing operations and primitive segmentation on the relevant point cloud data, thereby generating new primitives and uploading them to MinIO to update the primitive files.

[0015] Further, the point cloud processing algorithms of the method of the present invention include: point cloud data preprocessing algorithm, point cloud data registration algorithm, point cloud data three-dimensional reconstruction algorithm, point cloud data primitive segmentation algorithm, and point cloud data post-processing algorithm.

[0016] Further, the step of dequeuing from the task queue in sequence for mapping processing includes:

[0017] For the currently dequeued mapping task, start the corresponding algorithm container, download the corresponding point cloud data from MinIO, and import it into the algorithm container; start the operation of the point cloud processing algorithm, and at the same time monitor the running status and results of the algorithm container; once the point cloud processing algorithm completes the operation and generates results, upload the results to MinIO;

[0018] Subsequently, process the return value and the final status, update the back-end status displayed on the front end, close the corresponding algorithm container, and update the task queue;

[0019] Repeat the above steps for the next dequeued mapping task until there are no pending mapping tasks in the task queue.

[0020] Further, the method of the present invention for starting a corresponding algorithm container according to the point cloud processing algorithm includes:

[0021] Starting a corresponding algorithm container in K8S according to the selected point cloud processing algorithm;

[0022] Subsequently, judge the startup status of the algorithm container:

[0023] If the startup is successful, the backend status is mapping, and update the backend status displayed on the front end;

[0024] If the startup fails, process the return value and the final status, and update the backend status displayed on the front end.

[0025] Further, the method of the present invention further includes: after opening the operation of the point cloud processing algorithm:

[0026] The backend starts the WebSocket service;

[0027] View the backend status through the front end. If the backend status is mapping, the front end initiates a WebSocket connection and performs data transmission with the WebSocket service through the port range exposed by K8S.

[0028] Further, the method of the present invention for selecting the point cloud data to be edited through the front-end interface and performing editing operations on it includes:

[0029] Selecting the point cloud data to be edited through the front-end interface;

[0030] The front end downloads the corresponding point cloud data from MinIO through the backend, performs editing operations on it, and reflects the editing operations on the point cloud data in real time.

[0031] Further, the editing operations include: basic editing and specific editing;

[0032] The basic editing includes adding, deleting, moving, rotating, and scaling points;

[0033] The specific editing includes adding a driving area, a recommended path, a speed limit area, a fence, and a label.

[0034] Further, the change record includes the ID of the edited point cloud data, the type of the editing operation, and the corresponding parameters.

[0035] Further, the method of the present invention for calling a suitable point cloud processing algorithm according to the change record, performing editing operations and primitive segmentation on the corresponding point cloud data, so as to generate new primitives includes:

[0036] The backend downloads the corresponding point cloud data from MinIO, calls the appropriate point cloud processing algorithm according to the change record, starts the corresponding algorithm container, and imports the point cloud data into the algorithm container; starts the operation of the point cloud processing algorithm, and at the same time monitors the running status and results of the algorithm container; after the operation is completed, generates the edited point cloud data, and closes the corresponding algorithm container;

[0037] Call the point cloud data segmentation algorithm, start the corresponding algorithm container, and import the edited point cloud data into the algorithm container; start the operation of the point cloud data segmentation algorithm, and at the same time monitor the running status and results of the algorithm container; after the operation is completed, generate new primitives, and close the corresponding algorithm container.

[0038] Further, after updating the primitive file, the method of the present invention further includes:

[0039] The backend notifies the front-end user to refresh the editing operations applied to the point cloud data;

[0040] Once the front-end user refreshes, the updated primitives can be queried, as well as the change records corresponding to the editing operations not applied to the point cloud data, and the latest primitives are loaded and rendered.

[0041] In summary, the innovation of the present invention lies in decoupling the editing operations of point cloud data from the point cloud processing algorithm, and achieving free combination through dynamic binding, so that the editing operations and the running of the point cloud processing algorithm can be carried out separately, thereby improving the flexibility and efficiency of editing, solving the problem of difficult update of the digital twin model, reducing the operation threshold, improving the accuracy of the editing result, and simplifying the data maintenance work.

[0042] Compared with the conventional point cloud data editing service, the present invention has the following technical advantages:

[0043] 1. The present invention separates the point cloud data from the point cloud processing algorithm, making the editing result independent of the original point cloud data. When the data changes, only the point cloud processing algorithm needs to be updated to achieve asynchronous update of the digital twin three-dimensional model, making the update of the digital twin three-dimensional model simple and easy, and greatly simplifying the data maintenance work.

[0044] 2. The present invention realizes multiple editing and repeated use of point cloud data, avoids the work of repeatedly making point cloud processing algorithms, makes the maintenance work simple and easy, and greatly reduces the workload of developers.

[0045] 3. The present invention provides efficient and accurate point cloud processing algorithms and tools, obtains more ideal editing results, improves the accuracy of the editing results, and at the same time reduces the operation threshold by providing methods and tools for simplifying editing operations, enabling non-professionals to easily edit and update point cloud data. Brief Description of the Drawings

[0046] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings required for the description of the embodiments or the prior art. Obviously, the drawings in the following description are only some embodiments recorded in the present application. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.

[0047] Figure 1 It is the step schematic diagram of the method embodiment of the present invention;

[0048] Figure 2 It is the flowchart of step S1 in the method embodiment of the present invention;

[0049] Figure 3 It is the flowchart of steps S2 and S3 in the method embodiment of the present invention. Detailed Embodiments

[0050] In the following description, specific details such as specific system structures and technologies are proposed for the purpose of illustration rather than limitation, so as to thoroughly understand the embodiments of the present application. However, those skilled in the art should understand that the present application can also be implemented in other embodiments without these specific details.

[0051] Moreover, it should be understood that when used in the specification of the present application and the appended claims, the term "comprising" indicates the presence of the described features, wholes, steps, operations, modules, and / or units, but does not exclude the presence or addition of one or more other features, wholes, steps, operations, modules, units, and / or their combinations. It should also be understood that the term " / and" used in the specification of the present application and the appended claims refers to any combination and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0052] As Figure 1 shown, this embodiment provides a method for asynchronous update of digital twin point cloud editing, which utilizes a digital twin system mainly composed of a mapping device, the front end and back end of DDT, MinIO, and a robot.

[0053] It should be noted that DDT (Dynamic digital twins) is an editing and display platform for digital twin technology. It can collect, store, and process a large amount of data in real time, generate digital twin copies through data analysis and modeling, and then establish virtual digital copies to achieve real-time simulation and monitoring of the physical world. It is mainly applied to application scenarios such as intelligent manufacturing, intelligent inspection, status monitoring, and early warning analysis of equipment, production lines, factories, etc. MinIO is a cloud storage service used to store large-scale, dispersed unstructured data such as point cloud data.

[0054] S1. Collect SLAM data and generate a 3D model: Collect the point cloud data in the scene through a mapping device and upload it to MinIO; the backend selects appropriate point cloud processing algorithms for each mapping stage in sequence according to the characteristics of the point cloud data and mapping requirements, and generates corresponding mapping tasks; all mapping tasks enter the task queue in sequence and are dequeued from the task queue in sequence for mapping processing, thereby generating the primitives of the 3D model and uploading them to MinIO as primitive files. The specific steps are introduced as follows.

[0055] S1-1. Collect the point cloud data in the scene through mapping devices such as 3D scanners, lidar, or cameras, or robots carrying mapping devices, and upload the point cloud data to MinIO.

[0056] S1-2. The backend selects appropriate point cloud processing algorithms for the preprocessing stage, registration stage, 3D reconstruction stage, and primitive segmentation stage in sequence according to the characteristics of the point cloud data and mapping requirements, and generates corresponding mapping tasks.

[0057] Specifically, mapping usually refers to the process of constructing a complete 3D model from the original point cloud data in the initial stage. This process may involve multiple mapping stages, such as preprocessing, registration, 3D reconstruction, primitive segmentation, etc., and may also involve multiple point cloud processing algorithms. The point cloud processing algorithms can be algorithms provided by third-party libraries or software, or custom-developed algorithms, including but not limited to: point cloud data preprocessing algorithms, point cloud data registration algorithms, point cloud data 3D reconstruction algorithms, point cloud data primitive segmentation algorithms, point cloud data post-processing algorithms, which are introduced as follows.

[0058] 1) Point cloud data preprocessing algorithm: By filtering, denoising, resampling, etc. the point cloud data, noise and outliers are removed, and the quality and density of the point cloud data are optimized. Specifically, this algorithm can adopt filtering methods based on statistics, distance, shape, etc.

[0059] 2) Point cloud data registration algorithm: Register point cloud data at different positions and angles so that they are aligned in the same coordinate system to form a 3D model. Specifically, in implementation, this algorithm can adopt feature-based registration methods, geometry-based registration methods, optimization-based registration methods, etc.

[0060] 3) Point cloud data reconstruction algorithm: Convert point cloud data into a 3D model or surface to achieve visualization and analysis of point cloud data. Specifically, in implementation, this algorithm can adopt triangle mesh-based reconstruction methods, voxel-based reconstruction methods, implicit surface-based reconstruction methods, etc.

[0061] 4) Point cloud data segmentation algorithm: Segment the point cloud map into primitives of 50m × 50m. Each primitive consists of several point clouds, and each point cloud has corresponding position information, height information, and color information.

[0062] 5) Point cloud data post-processing algorithm: Read the 3D model and change records, including the ID of the edited point cloud data, the type of editing, and the corresponding parameters. Based on the edited point cloud data, considering the distribution characteristics and density rules of the surrounding point clouds, this algorithm efficiently updates the coordinates of associated points through a coordinate transformation matrix.

[0063] Moreover, when selecting a suitable point cloud processing algorithm according to the characteristics of point cloud data and mapping requirements, the following conditions should be considered: the applicable scenario of the algorithm, accuracy requirements, computing resource requirements, and the usability of the algorithm, etc. For example, different point cloud processing algorithms are applicable to different scenarios. Some point cloud processing algorithms are applicable to 3D reconstruction in indoor environments, while others are applicable to 3D reconstruction in outdoor environments.

[0064] In addition, each point cloud processing algorithm has a corresponding algorithm container. The algorithm container refers to the running environment created for running the algorithm, which contains the dependencies and configurations required by the algorithm. Each algorithm container can be customized according to the characteristics and requirements of the algorithm to provide the best running environment.

[0065] As can be seen from the above, the key point of this step is to separate the point cloud data from the point cloud processing algorithm, making the editing result independent of the original data, achieving multiple editing and repeated use of the point cloud data. And it can select the most suitable point cloud processing algorithm to edit and optimize the point cloud data, improving the accuracy and efficiency of point cloud processing.

[0066] S1-3, as Figure 2 shown, specifically in implementation, obtain the corresponding assembly parameters, including the address of the algorithm, that is, the location or path where the algorithm is located; description of errors, that is, the detailed description of errors or exceptions that occur during the running of the algorithm; and the address of the bag file, that is, the file address containing the point cloud data.

[0067] S1-4. All mapping tasks enter the task queue in sequence and dequeue from the task queue in sequence for mapping processing, thereby generating the primitives of the 3D model and uploading them to MinIO as primitive files. The specific content is introduced as follows.

[0068] It should be noted that this step can be implemented by creating a task queue or using a queue management system. Queuing all mapping tasks to generate a task queue can not only ensure the order and fairness of tasks, but also avoid resource competition and performance degradation caused by multiple mapping tasks running simultaneously. The task queuing manages mapping tasks according to the first-in, first-out principle. New mapping tasks directly enter the end of the queue to wait for processing, and the system monitors the resource occupancy and running load of each algorithm container, thereby allocating mapping tasks to the appropriate algorithm containers. In addition, the number of mapping tasks that can be started simultaneously can be configured for the task queue.

[0069] As Figure 2 shown, in specific implementation, first, for the currently dequeued mapping task, start the corresponding algorithm container in K8S (Kubernetes, abbreviated as K8S, an open-source system for automatically deploying, scaling, and managing containerized applications). And judge the startup status of the algorithm container: if the startup is successful, the backend status is mapping in progress, and update the backend status displayed on the front end; if the startup fails, process the return value and the final status, and update the backend status displayed on the front end.

[0070] Secondly, download the corresponding point cloud data from MinIO and import it into the algorithm container. Start the operation of the point cloud processing algorithm, and at the same time monitor the running status and results of the algorithm container. During the operation, the backend starts a WebSocket service (it is a network communication protocol, a protocol for full-duplex communication on a single TCP connection provided since HTML5). And perform data transmission with the port range exposed by K8S, including: radar, aggregation, map full data, map incremental data, compressed data, etc. At this time, view the backend status through the front end. If the backend status is mapping in progress, the front end initiates a WebSocket connection and performs data transmission with the WebSocket service through the port range exposed by K8S.

[0071] Furthermore, once the point cloud processing algorithm completes the operation and generates the result, upload the result to MinIO. Subsequently, process the return value and the final status, and update the backend status displayed on the front end. The backend closes the algorithm container and updates the task queue.

[0072] Next, it is determined whether there is still data to be processed in the task queue; if so, the next mapping task is dequeued for mapping processing, and the above steps are repeated until there are no mapping tasks to be processed in the task queue, thereby releasing resources and allocating resources for new reconstruction tasks; if not, the process ends.

[0073] Finally, the point cloud data of the 3D model is stored on MinIO according to the requirements of the "primitive" file format, thereby constructing the original primitive file on MinIO.

[0074] S2. Edit the operation model and record the operation history: Select the point cloud data to be edited through the front-end interface and perform editing operations on it to generate new point cloud data; the front-end regularly sends the editing operations to the back-end. After receiving the editing operations, if the back-end determines that they affect the primitives, corresponding change records are generated; otherwise, the scenario case database is directly updated. The specific steps are introduced as follows.

[0075] It should be noted that since there may be some problems with the original point cloud data or further optimization and editing are required, after generating the 3D model, the point cloud data still needs to be edited through the front-end. The front-end interface provides point cloud visualization and editing functions. Users can select the point cloud data to be edited on the front-end interface and then perform respective editing operations on the selected point cloud data.

[0076] S2-1. As Figure 3 shown, in specific implementation, the point cloud data to be edited is selected through the front-end interface. The front-end downloads the corresponding point cloud data from MinIO through the back-end, performs editing operations on it, and reflects the editing operations on the point cloud data in real time. The editing operations include: basic editing and specific editing; the basic editing includes adding, deleting, moving, rotating, and scaling points; the specific editing includes adding driving areas, recommended paths, speed limit areas, fences, and annotations.

[0077] S2-2. As Figure 3 shown, in specific implementation, to ensure the real-time and effectiveness of editing, the front-end will regularly (such as every certain period of time or when the user completes a set of editing actions) send these editing operations to the back-end in the form of data packets.

[0078] S2-3. As Figure 3As shown, in specific implementation, the influence degree and manner of different editing operations on point cloud data are different. For example, if an editing operation changes attributes such as the coordinate position, normal direction, or color of the point cloud data, then these changes are likely to be reflected in the geometric shape and attributes of the primitive. Once the primitive is affected, the primitive file needs to be updated. Therefore, after the backend receives the editing operation sent by the frontend, it first determines whether the editing operation is of types such as addition, deletion, movement, or rotation. If so, it will affect the primitive, and there are the following two specific situations.

[0079] ‌a. If the backend determines that the editing operation has indeed affected the relevant primitive, the backend will generate one or more change records according to the specific content of the editing operation. These change records detail the ID of the point cloud data being edited, the type of editing operation (addition, deletion, movement, rotation, etc.), and the corresponding parameters.

[0080] b. If the backend determines that the editing operation has not affected any primitive, the backend will directly update the point cloud data in the scenario case database and end the process without generating change records. This direct update can ensure the real-time nature and consistency of the database, while reducing unnecessary storage and computing overhead.

[0081] As can be seen from the above, the front-end and back-end of the method of the present invention can work collaboratively, realizing multiple edits and repeated use of point cloud data, avoiding the work of repeating the production algorithm, and greatly simplifying the workload of developers. At the same time, by generating change records and processing the direct update of non-affecting editing operations, the system can maintain the integrity and consistency of the data, providing reliable data support for applications such as digital twins.

[0082] S3. Trigger the algorithm queue to automatically update the model: The backend regularly reads the change records. Once it finds an editing operation that has not been applied to the point cloud data, it calls the appropriate point cloud processing algorithm according to the change records, performs editing operations and primitive segmentation on the relevant point cloud data, thereby generating new primitives and uploading them to MinIO to update the primitive file. The specific steps are introduced as follows.

[0083] S3-1. As Figure 3 shown, in specific implementation, the backend configures a timed task that runs at a certain time interval (such as every minute, every hour, etc.) to check the change records. When the timed task runs, the backend scans the data of the change records stored in the system and traverses the change records to check whether there is an editing operation that has not been applied to the point cloud data; if no unapplied editing operation is found, the process ends and waits for the next run of the timed task; if an unapplied editing operation is found, continue to the next step.

[0084] S3-2. As Figure 3As shown, during specific implementation, the backend will parse the JSON data in the change record to obtain the ID of the point cloud data to be edited, the type of the editing operation, and the corresponding parameters.

[0085] S3-3. As Figure 3 shown, during specific implementation, the backend downloads the point cloud data to be edited from MinIO according to the information in the change record and saves it locally for subsequent editing operations and primitive segmentation.

[0086] First, according to the information in the change record, the backend uses the primitive toolkit method program to call the appropriate point cloud processing algorithm and start the corresponding algorithm container. The point cloud processing algorithm can be an algorithm provided by a third-party library or software, or a custom-developed algorithm. Then, the corresponding point cloud data is imported into the algorithm container to start the operation of the point cloud processing algorithm, while monitoring the running status and results of the algorithm container. Moreover, the point cloud processing algorithm modifies the point cloud data according to the type and corresponding parameters of the editing operation in the change record. After the operation is completed, the edited point cloud data is generated, and the corresponding algorithm container is closed.

[0087] Second, call the point cloud data segmentation algorithm and start the corresponding algorithm container. Import the edited point cloud data into the algorithm container to start the operation of the point cloud data segmentation algorithm, while monitoring the running status and results of the algorithm container. After the operation is completed, close the corresponding algorithm container, generate new primitives, and upload them to MinIO to update the primitive file.

[0088] In this way, the original 3D model and primitive file can still be edited secondarily, and the latest result is saved again after the editing is completed. Moreover, the backend records the storage path and version information of the new primitive file in the database as the new version of the primitive. After that, the user can obtain the new version of the primitive through the front-end interface or other means for further analysis, processing, or visualization operations.

[0089] S3-4. As Figure 3 shown, during specific implementation, the backend notifies the front-end user to refresh the editing operations applied to the point cloud data; once the front-end user refreshes, the updated primitives and the change records corresponding to the editing operations not applied to the point cloud data can be queried, and the latest primitive data is loaded and rendered.

[0090] In summary, in the past, the practice of integrating the point cloud data editing function into the point cloud processing algorithm achieved a high degree of coupling, but encountered great difficulties in improving convenience and accuracy. The method of the present invention innovatively separates the point cloud data editing function from the point cloud processing algorithm. In this way, whether for enhancing the convenience of point cloud editing or for improving the accuracy of point cloud editing, developers do not need to republish the point cloud processing algorithm. At the same time, the same point cloud data can be flexibly shared by multiple point cloud processing algorithms. Obviously, by decoupling the point cloud data editing function from the point cloud processing algorithm in this way, the present invention not only significantly improves the flexibility and maintainability of the point cloud processing algorithm, but also effectively saves memory occupancy, thereby improving the execution efficiency of the point cloud processing algorithm. In addition, the method of the present invention is widely applicable to various point cloud processing application scenarios such as 3D modeling, map construction, object recognition, etc., demonstrating its strong generality and practicality.

[0091] So far, the technical solution of the present invention has been described in conjunction with the preferred embodiments shown in the drawings. However, it is easy for those skilled in the art to understand that the protection scope of the present invention is obviously not limited to these specific embodiments. Without departing from the principle of the present invention, those skilled in the art can make equivalent changes or substitutions to the relevant technical features, and the technical solutions after these changes or substitutions will fall within the protection scope of the present invention.

Claims

1. A method for asynchronous update of digital twin point cloud editing, characterized in that, Using a digital twin system mainly composed of a mapping device, the front and back ends of DDT, MinIO, and a robot, including the following steps: Collect point cloud data in the scene through the mapping device and upload it to MinIO; Each point cloud processing algorithm has a corresponding algorithm container; according to the characteristics of the point cloud data and the mapping requirements, the back end sequentially selects appropriate point cloud processing algorithms for each mapping stage and generates corresponding mapping tasks; all mapping tasks enter the task queue in order and dequeue from the task queue in order for mapping processing, thereby generating the primitives of the 3D model and uploading them to MinIO as primitive files; Select the point cloud data to be edited through the front-end interface and perform editing operations on it to generate new point cloud data; the front end periodically sends the editing operations to the back end. After receiving the editing operations, if the back end determines that they will affect the primitives, it generates corresponding change records, which include: the ID of the edited point cloud data, the type of the editing operation, and the corresponding parameters, otherwise it directly updates the scene case database; Decouple the editing operations of the point cloud data from the point cloud processing algorithms and achieve free combination through dynamic binding; the back end periodically reads the change records. Once it finds an editing operation that has not been applied to the point cloud data, it calls the appropriate point cloud processing algorithm according to the change records to perform editing operations and primitive segmentation on the relevant point cloud data, thereby generating new primitives and uploading them to MinIO to update the primitive files.

2. The asynchronous update method for digital twin point cloud editing according to claim 1, characterized in that The point cloud processing algorithms include: point cloud data preprocessing algorithms, point cloud data registration algorithms, point cloud data 3D reconstruction algorithms, point cloud data primitive segmentation algorithms, and point cloud data postprocessing algorithms.

3. A digital twin point cloud editing asynchronous update method according to claim 1, characterized in that The dequeuing from the task queue in order for mapping processing includes: For the currently dequeued mapping task, start the corresponding algorithm container, download the corresponding point cloud data from MinIO, and import it into the algorithm container; start the operation of the point cloud processing algorithm, and at the same time monitor the running status and results of the algorithm container; once the point cloud processing algorithm completes the operation and generates the results, upload the results to MinIO; Subsequently, process the return value and the final status, update the back-end status displayed on the front end, and close the corresponding algorithm container to update the task queue; The next dequeued mapping task repeats the above steps until there are no pending mapping tasks in the task queue.

4. A digital twin point cloud editing asynchronous update method according to claim 3, characterized in that The starting of the corresponding algorithm container according to the point cloud processing algorithm includes: Start the corresponding algorithm container in K8S according to the selected point cloud processing algorithm; Subsequently, judge the startup status of the algorithm container: If the startup is successful, the back-end status is mapping in progress, and update the back-end status displayed on the front end; If the startup fails, process the return value and the final status, and update the back-end status displayed on the front end.

5. A digital twin point cloud editing asynchronous update method according to claim 3 or 4, characterized in that After starting the operation of the point cloud processing algorithm, it also includes: The back end starts a WebSocket service; View the back-end status through the front end. If the back-end status is mapping in progress, the front end initiates a WebSocket connection and performs data transmission with the WebSocket service through the port range exposed by K8S.

6. A digital twin point cloud editing asynchronous update method according to claim 1, characterized in that, Select the point cloud data to be edited through the front - end interface and perform editing operations on it, including: Select the point cloud data to be edited through the front - end interface; The front - end downloads the corresponding point cloud data from MinIO through the back - end, performs editing operations on it, and reflects the editing operations on the point cloud data in real - time.

7. A digital twin point cloud editing asynchronous update method according to claim 1 or 6, characterized in that, The editing operations include: basic editing and specific editing; The basic editing includes adding, deleting, moving, rotating, and scaling points; The specific editing includes adding driving areas, recommended paths, speed - limit areas, fences, and annotations.

8. A digital twin point cloud editing asynchronous update method according to claim 1, characterized in that Call the appropriate point cloud processing algorithm according to the change record, perform editing operations and primitive segmentation on the corresponding point cloud data, so as to generate new primitives, including: The back - end downloads the corresponding point cloud data from MinIO, calls the appropriate point cloud processing algorithm according to the change record, starts the corresponding algorithm container, and imports the point cloud data into the algorithm container; start the operation of the point cloud processing algorithm, and at the same time monitor the running status and results of the algorithm container; after the operation is completed, generate new point cloud data and close the corresponding algorithm container; Call the point cloud data segmentation algorithm, start the corresponding algorithm container, and import the edited point cloud data into the algorithm container; start the operation of the point cloud data segmentation algorithm, and at the same time monitor the running status and results of the algorithm container; after the operation is completed, generate new primitives and close the corresponding algorithm container.

9. A digital twin point cloud editing asynchronous update method according to claim 1, characterized in that, After updating the primitive file, it also includes: The back - end notifies the front - end user to refresh the editing operations applied to the point cloud data; Once the front - end user refreshes, the updated primitives can be queried, as well as the change records corresponding to the editing operations not applied to the point cloud data, and the latest primitives are loaded and rendered.

Citation Information

Patent Citations

  • Multi-machine cloud edge collaborative map creation and dynamic digital twinning method and system

    CN116030213A