Method, system, device, and medium for generating 3D model of industrial scene
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- SIEMENS INDUSTRY SOFTWARE INC
- Filing Date
- 2023-08-30
- Publication Date
- 2026-06-03
AI Technical Summary
Current methods for generating 3D models of industrial scenes from point cloud data are inefficient due to large file sizes, noise, and complex topologies, requiring extensive manual post-processing and lacking flexible segmentation and meshing capabilities.
A method and system that utilize a domain-specific model library and plane-based point cloud processing to perform semantic segmentation and meshing, reducing computational complexity and improving efficiency by segmenting and meshing in one system.
This approach significantly reduces processing time for large-scale point clouds, enhances the accuracy of segmentation and meshing, and requires less manual intervention, resulting in higher-quality 3D models.
Smart Images

Figure CN2023115931_06032025_PF_FP_ABST
Abstract
Description
Method, system, device, and medium for generating 3D model of industrial sceneFIELD
[0001] The present disclosure relates to the technical field of industrial technology, in particular to a method, system, device, and medium for generating 3D model of industrial scene.BACKGROUND
[0002] In the current need for digitization and generation of smart models for digital twin, it is critical to obtain three-dimensional (3D) models which are not available in the current information technology (IT) field. The topic is even more important in the wave of industrial metaverse.
[0003] However, raw point cloud data, especially from the scanning of the entire factory scene, is often extremely large and has many non-uniform points, noise points and missing points, making it difficult to segment accurately and quickly required objects for 3D reconstruction. Moreover, when a meshing is required, it requires a more complex processing. Furthermore, the constructs in industrial field have very complex topologies which varies in various industries. The machinery and constructions are connected in many cases, which introduce additional complexity. It requires a large amount of manual post-processing work to obtain high-quality 3D models from point cloud data.SUMMARY
[0004] Embodiments of the present disclosure propose a method, system, device, and medium for generating 3D Model of industrial scene.
[0005] In a first aspect, a method for generating 3D model of an industrial scene is provided. The method comprising:
[0006] acquiring point cloud data for an industrial scene;
[0007] determining a domain of the industrial scene;
[0008] acquiring a trained semantic segmentation model associated with the domain from a model library, wherein the model library comprises multiple trained semantic segmentation models associated with respective domains;
[0009] performing semantic segmentation on the point cloud data to obtain multiple segmented objects, based on the trained semantic segmentation model associated with the domain;
[0010] meshing the multiple segmented objects; and
[0011] generating a 3D model of the industrial scene based on the meshed multiple segmented objects.
[0012] In a second aspect, a system for generating 3D model of an industrial scene is provided. The system comprising:
[0013] an interface module, configured to acquire point cloud data for an industrial scene;
[0014] a model library, configured to store multiple trained semantic segmentation models associated with respective domains;
[0015] a segmenting module, configured to determine a domain of the industrial scene, acquire a trained semantic segmentation model associated with the domain from the model library, and perform semantic segmentation on the point cloud data to obtain multiple segmented objects, based on the trained semantic segmentation model associated with the domain; and
[0016] a generating module, configured to mesh the multiple segmented objects and generate a 3D model of the industrial scene based on the meshed multiple segmented objects.
[0017] In a third aspect, an electronic device is provided. The electronic device comprising a processor and a memory, wherein an application program executable by the processor is stored in the memory for causing the processor to execute a method for generating 3D model of an industrial scene as described in any of the above.
[0018] In a fourth aspect, a computer-readable medium comprising computer-readable instructions stored thereon is provided, wherein the computer-readable instructions, when executed by a processor, implement a method for generating 3D model of an industrial scene as described in any of the above.
[0019] In a fifth aspect, a computer program product comprising a computer program, when the computer program is executed by a processor for executing a method for generating 3D model of an industrial scene as described in any of the above.
[0020] According to the above technical solutions, a flexible domain-specific model library is provided to meet the needs from different industrial scenes, thus improving modeling efficiency. Furthermore, a novel plane-based point cloud processing realizes the connection of segmentation and meshing process in one system, making point cloud processing more efficient and flexible. It is faster to process large scale input because the efforts to process the number of planes will be highly reduced comparing to the processing with massive points.BRIEF DESCRIPTION OF THE DRAWINGS
[0021] In order to make technical solutions of examples of the present disclosure clearer, accompanying drawings to be used in description of the examples will be simply introduced hereinafter. Obviously, the accompanying drawings to be described hereinafter are only some examples of the present disclosure. Those skilled in the art may obtain other drawings according to these accompanying drawings without creative labor.
[0022] Fig. 1 is a flowchart of a method for generating a 3D model of an industrial scene according to an embodiment of the present disclosure.
[0023] Fig. 2 is a schematic diagram of an exemplary workflow for generating a 3D model of an industrial scene according to an embodiment of the present disclosure.
[0024] Fig. 3 is a flowchart of performing planar segmentation according to an embodiment of the present disclosure.
[0025] Fig. 4 is a flowchart of performing planar meshing and grouping to generate a 3D model according to an embodiment of the present disclosure.
[0026] Fig. 5 is a flowchart of training a semantic segmentation model according to an embodiment of the present disclosure.
[0027] Fig. 6 is a structural diagram of a system for generating a 3D model of an industrial scene according to an embodiment of the present disclosure.
[0028] Fig. 7A is a schematic diagram of segmented planes with calculated normal vectors according to an embodiment of the present disclosure.
[0029] Fig. 7B is a schematic diagram of end output of planar segmentation according to an embodiment of the present disclosure.
[0030] Fig. 7C is a schematic diagram of triangulation result of segmented planes according to an embodiment of the present disclosure.
[0031] Fig. 7D is a schematic diagram of 3D model according to an embodiment of the present disclosure.
[0032] Fig. 7E is a schematic diagram of semantic classification results result by a trained random forest model according to an embodiment of the present disclosure.
[0033] Fig. 8 is a structural diagram of an electronic device according to an embodiment of the present disclosure.
[0034] List of reference numbers: DETAILED DESCRIPTION
[0035] In order to make the purpose, technical scheme, and advantages of the disclosure clearer, the following examples are given to further explain the disclosure in detail.
[0036] In order to be concise and intuitive in description, the scheme of the disclosure is described below by describing several representative embodiments. Many details in the embodiments are only used to help understand the scheme of the disclosure. However, it is obvious that the technical scheme of the disclosure can be realized without being limited to these details. In order to avoid unnecessarily blurring the scheme of the disclosure, some embodiments are not described in detail, but only the framework is given. Hereinafter, "including" refers to "including but not limited to" , "according to... " refers to "at least according to..., but not limited to... " . When the number of an element is not specifically indicated below, it means that the element can be one or more, or can be understood as at least one.
[0037] In the industrial field, the machinery and constructions are connected in many cases, which introduce additional complexity. It requires a large amount of manual post-processing work to obtain high-quality 3D models from point cloud data in prior art. The 3D object reconstruction also depends on the farther utilization. It can be required for a high-quality visualization, for preciseness and CAD modeling, for navigation and lightweight visualization over WEB. Flexible needs lead to the need for flexible segmentation and meshing.
[0038] Embodiments of the present disclosure propose a novel system and method for industrial 3D reconstruction of point clouds, which comprise point cloud semantic segmentation and meshing processes, especially suitable for large-scale point clouds. Point cloud semantic segmentation process segments the point cloud corresponding to the object of interests with semantic labels, the meshing process provides end output of 3D models with meshes and textures, and with a required 3D model format.
[0039] Embodiments of the present disclosure also provide domain-specific model library to meet the needs from different industrial scenes. The models in model library are trained to learn contexture-oriented features of the objects in different shapes to achieve more accurate segmentation and higher quality meshing. Furthermore, flexible APIs are also provided to make it more convenient for external 3D software tools to integrate embodiments of the present disclosure then to assist a 3D modelling.
[0040] Fig. 1 is a flowchart of a method for generating a 3D model of an industrial scene according to an embodiment of the present disclosure. As shown in Fig. 1, the method comprises:
[0041] Step 101: acquiring point cloud data for an industrial scene.
[0042] Point cloud is a dataset of points in a coordinate system, which may include 3D coordinates, colors, classification values, intensity values, time, and other information. Here, industrial scenes refer to specific application scenes in industrial sites, which may include group companies, factories, warehouses, venues, workshops, assembly lines, and workstations, among others.
[0043] Point cloud data for industrial scene can be acquired in various ways. Specific methods may include:
[0044] (1) Laser Scanner / LiDAR: Laser 3D scanners / LiDAR utilize the principle of laser ranging to record 3D coordinates, reflectivity, and texture information of many dense points on the surface of industrial scenes.
[0045] (2) Depth camera: Project light onto an object with structural features using a near-infrared laser, and collect depth information through an infrared camera.
[0046] (3) Stereo Camera: Two cameras are used to obtain two images of industrial scenes from different positions. By calculating the positional deviation of corresponding points, 3D coordinates of each point are calculated using the triangulation principle.
[0047] (4) Optical camera multi view reconstruction: Provide a corresponding set of multiple images and their feature points to estimate the position of 3D points and camera pose.
[0048] The above exemplary description provides typical examples of industrial scenes and typical examples of obtaining point cloud data from industrial scenes. Those skilled in the art may realize that this description is exemplary and is not intended to limit the protection scope of the present disclosure.
[0049] Step 102: determining a domain of the industrial scene.
[0050] Domain refers to the scope, region, specialized activity, or department corresponding to industrial scenes. Preferably, domains may have a multi-level structure. Multiple industrial domains can be divided according to different division methods. For example, the industry can be divided into the following domains by department: metallurgical industry, power industry, coal and coking industry, petroleum industry, chemical industry, mechanical industry, building materials industry, forest industry, food industry, textile, sewing, leather making industry, and other domains. For example, according to the nature of product, the industry is divided into the following domains: light industry and heavy industry. For example, based on the relative intensity of labor, capital, and technology in various industries, industrial domain can be further divided into the following areas: labor-intensive, capital intensive, and technology intensive industries. Alternatively, according to the industrial classification directory, the industrial domain can be divided into major categories, medium categories, and sub categories. Each major category, medium category, sub category or their combination can form a domain.
[0051] For example, industrial domains can include industry sectors (electronics, robotics, warehousing and office, logistics, etc. ) as well as sub levels under industry sectors (such as assembly stations, conveyors, etc. in the logistics industry) .
[0052] In one embodiment, step 102 comprising: receiving user input comprising description information of the domain; determining the domain based on the description information.
[0053] For example, text description information received from user input is: "warehousing and office" , so it can be determined that the domain of industrial scene is: warehousing and office.
[0054] In one embodiment, step 102 comprising: inputting the point cloud data into a trained domain determination model; acquiring the domain from output of the trained domain determination model. In this embodiment, the domain determination model is pre-trained. The training method for the domain determination model comprises: inputting first point cloud training data with a domain label into a first neural network model; receiving a first classification result of the domain to which the first point cloud training data belongs from the first neural network model; determining a first loss function value based on the difference between the domain label and the first classification result; configuring model parameters of the first neural network model to make the first loss function value lower than a first preset threshold; determining the configured first neural network model as the trained domain determination model.
[0055] Therefore, domain determination models can also be generated through artificial intelligence, thereby improving work efficiency.
[0056] Step 103: acquiring a trained semantic segmentation model associated with the domain from a model library, wherein the model library comprises multiple trained semantic segmentation models associated with respective domains.
[0057] After determining domain of the industrial scene in step 102, a trained semantic segmentation model associated with the domain can be retrieved from a model library based on the domain, such as by using domain as a search term. For example, assuming the domain determined in step 102 is assembly stations in the logistics industry, a trained model suitable for performing semantic segmentation for assembly stations in the logistics industry is retrieved from the model library.
[0058] The model library contains multiple trained semantic segmentation models associated with respective domains, each of which is pre-defined based on prior knowledge such as industrial factory layout and on-site asset categories. When there are multiple domains (electronics, robotics, warehousing and office scenarios, process industries... ) , specific levels can be further subdivided in each domain to provide more accurate semantic segmentation models in specific situations. The subdivision level can be multiple. For example, a factory level semantic segmentation can be trained. Then, semantic segmentation models under the factory level (such as assembly stations, machines, conveyors) can be trained in the production area of the factory, and semantic segmentation models under the factory level (such as storage piles, forklifts, material containers) can be trained in the storage area of the factory. Following this hierarchical structure, more domains can be defined, and the corresponding trained models can be saved to the model library.
[0059] Step 104: performing semantic segmentation on the point cloud data to obtain multiple segmented objects, based on the trained semantic segmentation model associated with the domain.
[0060] Here, semantic segmentation of point cloud data can be directly performed on the dimension of voxel points to form segmented objects. Preferably, firstly perform planar segmentation on point cloud data, and secondly perform semantic classification on multiple planes to form segmented objects. Performing plane segmentation first and then semantic classification on point cloud data significantly reduces computational complexity.
[0061] In one embodiment, performing semantic segmentation on the point cloud data to obtain multiple segmented objects comprises: performing planar segmentation on the point cloud data to obtain multiple planes; classifying the multiple planes based on the trained semantic segmentation model; determining multiple segmented objects each comprising planes of the same classification.
[0062] Step 105: meshing the multiple segmented objects.
[0063] In one embodiment, meshing the multiple segmented objects comprises: evaluating respective importance of respective segmented objects based on respective categories into which respective segmented objects are classified; determining respective resolutions for respective segmented objects based on the respective importance of respective segmented objects; meshing respective segmented objects based on the respective resolutions for respective segmented objects.
[0064] Preferably, determining respective resolutions comprises at least one of the following criterions:
[0065] (1) the greater the resolution for a segmented object when importance evaluation result indicates that the more important the segmented object.
[0066] (2) the lower the resolution for a segmented object when importance evaluation result indicates that the less important the segmented object.
[0067] For example, assume that categories of segmented objects include: machines, workpieces, and workbenches. Based on prior knowledge or user input, it is determined that the importance of machines and workpieces is high, while the importance of workbenches is low. Therefore, for segmented objects classified as machines and workpieces, high resolution meshing is performed, while for segmented objects classified as workbenches, low resolution meshing is performed, which reduces the complexity of meshing.
[0068] Step 106: generating a 3D model of the industrial scene based on the meshed multiple segmented objects.
[0069] In one embodiment, the method comprises a process of training a semantic segmentation model. The process comprising: inputting second point cloud training data with semantic labels into a second neural network model, wherein the second point cloud training data comprising multidimensional contexture features, the second point cloud training data is associated with a domain; receiving semantic segmentation results of the second point cloud training data from the second neural network model; determining a second loss function value based on the difference between the semantic labels and the semantic segmentation results; configure model parameters of the second neural network model to make the second loss function value lower than a second preset threshold; determining the configured second neural network model as a trained semantic segmentation model associated with the domain; storing the trained semantic segmentation model associated with the domain in the model library.
[0070] Below is a demonstration explanation of the training process using the domain name as production area in logistics warehouse. Firstly, inputting point cloud training data acquired in production areas comprising multidimensional contexture features, with semantic labels of respective objects (such as assembly stations, machines, conveyors, and so on) in the production areas into a neural network model. Then, receiving semantic segmentation results comprising classification for objects, from the neural network model. Also, determining a loss function value based on the difference between the semantic labels and the semantic segmentation results, and configuring model parameters of the neural network model to make the loss function value meets predetermined requirements, such as lower than a preset threshold, before determining the configured neural network model as a trained semantic segmentation model associated with the domain of production area in logistics warehouse.
[0071] Therefore, when new domains appear, new models corresponding to the new domains can be trained and expanded into the model library. A flexible domain-specific model library is provided to meet the needs from different scenes, thus improving modeling efficiency.
[0072] Fig. 2 is a schematic diagram of an exemplary workflow for generating a 3D model of an industrial scene according to an embodiment of the present disclosure. As shown in Fig. 2, the workflow demonstrates an entire process of point cloud segmentation and meshing. The workflow comprises:
[0073] Step 201: Load point cloud data for an industrial scene.
[0074] Step 202: Determine domain of the industrial scene based on configuration description of domain. For example, the domain can be an assembly station in the logistics industry.
[0075] Step 203: Determine segmentation method according to configuration information. For example, configured segmentation methods can be planar segmentation methods. Moreover, planar segmentation methods can include: (1) planar segmentation algorithms based on region growth; (2) Deep learning algorithm based on Point Net++backbone network; (3) A scene semantic segmentation method based on unsupervised contrastive learning, and so on.
[0076] Step 204: Obtain importance levels corresponding to respective categories to which respective objects belong.
[0077] Step 205: Use configured segmentation method to perform planar segmentation on point cloud data.
[0078] Step 206: Obtain semantic segmentation models associated with the domain from model library, and perform semantic classification on multiple planes after segmentation to obtain multiple classified planes.
[0079] Step 207: Perform meshing on multiple classified planes based on respective resolutions determined through importance levels.
[0080] Step208: Perform a grouping process on these classified planes to form a 3D model.
[0081] In Step 201 and Steps 202~204: loading necessary input for point cloud processing. The domain configuration decides which semantic segmentation model will be used from model Library, the meshing resolution configuration decides meshing resolutions of the specific object category, and the configured segmentation method decides the approach used for segmentation.
[0082] In step205, a planar segmentation model processes input point cloud to the basic elements in plane shape. In step 206, semantic segmentation model corresponding the domain classifies the planes as different object categories. To train a semantic segmentation model, machine learning based classifier may be applied here to take the input of various planes, the core idea is utilizing the contexture features (also including the geometry features) of planes to classify the objects, the machine learning algorithm are not limited here. Deep learning-based model may also be applied here if the contexture features of point and planes can be learned in the deep neural network. After the planar classification, optional Euclidean Distance Clustering algorithm may be applied to postprocess the classified planes and the nearby small planes, to obtain more accurate classification of the segmented planes as one complete object with the same semantic label. Then, in steps 207~208, the voxel-based planes can be triangulated and meshed with textures for the next 3D model output.
[0083] Fig. 3 is a flowchart of performing planar segmentation according to an embodiment of the present disclosure. As shown in Fig. 3, the flowchart comprising:
[0084] In step 301: An octree data structure is created for original point cloud to organize all the unordered points into standard voxel-based octree structure.
[0085] In step 302: All input points are indexed by voxels, eigenvalue and eigenvector of every voxel are calculated by the points in voxels.
[0086] In step 303: After the voxelization of point cloud, the voxels can be processed together as one voxel-based plane using the region growing algorithm, the growing rules is to calculate the dot product of the normal value of every two nearby voxels, adopting the cosine value of the included angle above the predefined threshold value (default 0.9) , so that the results in growing are clustered points in plane shape.
[0087] In step 304: All the obtained planes may be refined by merging the nearby planes into bigger plane according to the consistent normal value of the two planes, and the planes with very few points may also be removed, finally the output of the planar segmentation model are the clean and organized voxel-based planes.
[0088] Fig. 7A is a schematic diagram of segmented planes with calculated normal vectors according to an embodiment of the present disclosure. Fig. 7B is a schematic diagram of end output of planar segmentation according to an embodiment of the present disclosure.
[0089] Fig. 4 is a flowchart of performing planar meshing and grouping to generate a 3D model according to an embodiment of the present disclosure. As shown in Fig. 4, the flowchart of performing planar meshing and grouping to generate a 3D model comprising:
[0090] In step 401: Delaunay triangulation algorithm is proposed to process the voxel-based planes, it reflects the points in space to a plane, performs triangulation on the two-dimensional points, and then reflects them back into 3D space. As the input are already the points in 2D plane structure, so this process realizes more efficient (less points calculation per plane) and high-quality (avoid the noises in 3D space) triangulation. Optionally, the minimum number of triangles in one plane and the triangle size can be adapted according to the mesh resolution configuration.
[0091] In step 402: Textures of planes can be extracted from original RGB value in pixel points and created by mapping the pixel points to the points in the segmented planes. Optionally, the texture resolution may be adapted to the mesh resolution configuration.
[0092] In step 403: Planes with textured mesh are created with the required 3D representations. Optionally, the plane meshes may be decimated, optimized, and grouped as one complete object with the hole filling processing on surface.
[0093] Fig. 7C is a schematic diagram of triangulation result of segmented planes according to an embodiment of the present disclosure. Fig. 7D is a schematic diagram of 3D model according to an embodiment of the present disclosure.
[0094] The following describes exemplary process of training a semantic segmentation model. Machine learning methods can be used to implement contexture-based training processes, which requests to consider about the contexture-based features of the points when training point cloud segmentation model. There are many unsupervised or supervised approaches to achieve such model training, the algorithms or methods are not limited, here introduce one embodiment of contexture-based training by using the random forest classifier to train one model for electronics domain with the factory-level objects.
[0095] Fig. 5 is a flowchart of training a semantic segmentation model according to an embodiment of the present disclosure. The flowchart of training a semantic segmentation model comprising:
[0096] In step 501: A planar classification model is trained based on the contexture features of the segmented planes, which are obtained from the input points by running planar segmentation model. That means the training datasets can be generated from the planar segmentation model, and the contexture-based and geometric features can be automatically calculated for the next labelling work, the training requires only 200-300 samples to be labeled among the overall generated planes (often over 10000 planes) from the entire factory.
[0097] In step 502: Training one model classifying the factory-level objects for the feature engineering. The classes and the features of plane required for the variables input of the training as Table 1:
[0098] Table 1
[0099] The definition of variables and relevant contextual features are important to train one model with high accuracy. There are point-based features, plane geometry-based features and the spatial features for the training input, these features together have the relevant relationship with the class of the plane.
[0100] (1) Point-based features:
[0101] 1. Density by volume is the normalized point density in the plane volume.
[0102] 2. Points in plane are the number of points in the plane based on one predefined density standard.
[0103] 3. Neighbor points are the normalized number of the points of all the neighbor planes within the radius of
[0104] 0.02m.
[0105] (2) Plane geometry-based features:
[0106] 1. Max. length of plane is the maximal length of the plane
[0107] 2. Ratio of length and width is the ratio of the maximal length and the second longest length of plane.
[0108] 3. Slope of plane is the normalized value of ratio of the maximal length and the plane length in the z-axis
[0109] direction.
[0110] 4. Normal value is the normal vector in (x, y, z) .
[0111] 5. RGB values is the average value of RGB of all the points in the plane.
[0112] (3) Spatial features:
[0113] 1. Max. height in space is the normalized value of the plane maximal height in the entire point cloud space.
[0114] 2. Min. height in space is the normalized value of the plane minimal height in the entire point cloud space.
[0115] The above exemplary description provides typical examples of multidimensional contextual features, and those skilled in the art may realize that this description is only exemplary and is not intended to limit the scope of protection of the present disclosure's embodiments.
[0116] In step 503: Training random forest classifier. Random forest is a compositional supervised learning method. In random forests, multiple prediction models are generated simultaneously, and the results of these models are combined to improve the accuracy of the prediction model. In the training the max depth value of the tree is set to 40, the number of trees is set to 200 and the value of Split Variables is set to 4, in the end of training the OOB (out-of-bag) error is around 0.05.
[0117] In step 504: Generating 3d model. The model can be used after the step 503 (run planar segmentation model) in the System Workflow. The planes growing from the input point cloud can be classified with the semantic label by the trained model, it should be noted that the very small planes (less than 1000 points) and the planes with low confidence (less than 0.7) of the predicted label are not adopted, then the Euclidean distance clustering is used to group these unadopted planes with the picked classified planes as complete 3D objects.
[0118] Fig. 7E is a schematic diagram of semantic classification results result by a trained random forest model according to an embodiment of the present disclosure.
[0119] Options for user exercising embodiments of the present disclosure may comprises. (1) The user can select UI mode either for GUI operations or command line operations; (2) The user can select input file and preview the input; (3) The user can configure models and approaches according to input point cloud; (4) The user can view and save the results. All the above processes can also be realized by running the program APIs for the integration with the external 3D software.
[0120] Fig. 6 is a structural diagram of a system for generating a 3D model of an industrial scene according to an embodiment of the present disclosure.
[0121] As shown in Fig. 6, the system 10 comprising: an interface module 11, configured to acquire point cloud data for an industrial scene; a model library12, configured to store multiple trained semantic segmentation models associated with respective domains; a segmenting module 13, configured to determine a domain of the industrial scene, acquire a trained semantic segmentation model associated with the domain from the model library 12, and perform semantic segmentation on the point cloud data to obtain multiple segmented objects, based on the trained semantic segmentation model associated with the domain; and a generating module 14, configured to mesh the multiple segmented objects and generate a 3D model of the industrial scene based on the meshed multiple segmented objects.
[0122] In one embodiment, the segmenting module 13 comprises a domain selector 131, configured to input the point cloud data into a trained domain determination model, and acquire the domain from output of the trained domain determination model.
[0123] In one embodiment, the system 10 comprising a training module 16, configured to input first point cloud training data with a domain label into a first neural network model, receive a first classification result of the domain to which the first point cloud training data belongs from the first neural network model, determine a first loss function value based on the difference between the domain label and the first classification result, configure model parameters of the first neural network model to make the first loss function value lower than a first preset threshold, and determine the configured first neural network model as the trained domain determination model.
[0124] Preferably, wherein the training module 16, configured to input second point cloud training data with semantic labels into a second neural network model, wherein the second point cloud training data comprising multidimensional contexture features, the second point cloud training data is associated with a domain, receive semantic segmentation results of the second point cloud training data from the second neural network model, determine a second loss function value based on the difference between the semantic labels and the semantic segmentation results, configure model parameters of the second neural network model to make the second loss function value lower than a second preset threshold, determine the configured second neural network model as a trained semantic segmentation model associated with the domain, and store the trained semantic segmentation model associated with the domain in the model library 12.
[0125] Below is a detailed description of modules in system 10.
[0126] Interface module 11: This module functions as input data processing that can be from a file system or any other stream of various point cloud formats and output providing unit. The output can be a generated structured model in various formats. Input loader supports the point cloud data in different formats, such as E57 file, PLY file and XYZ file. The output results can be saved as various 3D models such as in OBJ file, IGES file and JT file format.
[0127] The user guidance for domain and context selection can be implemented as a UI Mode Switcher 18 (supporting both the GUI and command line input) . The user guidance can be from a general statement of the domain (e.g., electronics assembly industry, factory level) or a more precise statement (electronic assembly industry, storage area) .
[0128] Point Cloud Processing Module: this is core module of the system, which contains segmenting module 13, generating module 14, and model library 12. Model library 12 is the collection of models trained by different segmentation and meshing algorithms according to specific domains of industrial scenes. The segmenting module 13 provides a domain selector131 to choose suitable model for input point cloud scene. Generating module 14 provides resolution adaptor 141 for user to configure meshing resolutions of segmented objects (objects) according to semantic classification. The meshing resolution may provide options of High, Medium, and Low, and resolution adaptor 141 can adjust the triangulation and texture processing algorithm accordingly and resolution can be configured for some specific objects. For example, the segmented object with Chair semantic label can be assigned with High resolution and the object Pillar can be assigned with Low resolution.
[0129] Significantly, semantic segmentation models associated with respective domains are pre-defined with the prior knowledge from the general industrial factory layout and category of the assets on site. In detailed design, the domain selector 131 provides options for the trained model hierarchically. There are various industry domains (electronics, robotics, warehousing, and office scenes, process industry…) , the point is that in each domain, the segmentation level is also defined for the user configuration to provide the more accurate model in specific cases. There are multiple levels can be provided, generally the factory-level model is trained for the object category like floor / walls / ceiling / pipes / pillars / long production lines / large storages. Then under this level, one scene-level model can be trained in the volume of the production area (like assembly stations, machines, conveyors) , and another scene-level model can be trained in the volume of the warehousing area (like storage stacks, forklifts, material containers) , following this hierarchical structure more scenes can be defined, and corresponding models can be trained into model library12.
[0130] Training module 16: this is the module supporting to extend model library 12 with more domain specific models. Basically, all the models in model library 12 are trained based on contexture features in training module 16, but different semantic segmentation approaches may be applied according to the specific domains and requirements, such as the region growing based planar segmentation algorithm, the point Net++ backbone based deep learning algorithm, and the unsupervised contrastive learning-based scene semantic segmentation methods. System 10 can have built-in trained models for the general domains like electronics, robotics, warehousing, and office scenes, etc. and can also provide the possibility to extend the model library 12 in training module 16.
[0131] API library 17: this is the module having the collection of various APIs to the functions from Interface module 11, UI model Switcher 18, and point cloud processing module 15, which can be easily accessible by external industrial 3D modelling software (e.g., Siemens Process Simulate or NX software) , furthermore it also supports to be integrated as one plugin in the software to be used directly.
[0132] Based on the above description, embodiments of the present disclosure take at least one of the following advantages:
[0133] (1) Novel plane-based point cloud processing, realizing the connection of the segmentation and meshing process in one system, and making point cloud processing more efficient and flexible. It is faster to process large scale input (even over 0.1 billion points) because the efforts to process the number of planes will be highly reduced comparing to the processing with massive points. The plane growing process can also remove the noise interference for further classification and triangulation processing. The plane-based machine learning has the advantages that it is one light-weight model and easy for implementation. It requires only a small amount of training datasets and few labeling works; the input features of plane are interpretable and easy to obtain and be calculated.
[0134] (2) Supporting industrial contextual processing: from factory to object level hierarchically. And domain-oriented models for various industries provide flexible and adjustable processing from raw data to the required outcome. Especially we propose one adoptable processing and automatic alignment of machine learning models and processing flow to the target content.
[0135] (3) Modular componentization to support various implementation architectures and incorporation in any engineering workflow.
[0136] Embodiments of the present disclosure also propose an electronic device with a processor memory architecture. Figure 8 is an exemplary structural diagram of an electronic device with a processor memory architecture according to an embodiment of the present disclosure. As shown in Figure 8, electronic device 800 includes a processor 801, a memory 802, and a computer program stored on memory 802 that can run on processor 801. When the computer program is executed by processor 801, the method for generating 3D model of industrial scene as described in either of the above is implemented. Among them, memory 802 can be implemented as various storage media such as electrically erasable programmable read-only memory (EEPROM) , flash memory, programmable program read-only memory (PROM) , etc. Processor 801 can be implemented to include one or more central processors or one or more field programmable gate arrays, wherein the field programmable gate array integrates one or more central processor cores. Specifically, the central processing unit or core can be implemented as a CPU, MCU, DSP, and so on.
[0137] It should be noted that not all steps and modules in the above processes and structural diagrams are necessary, and some steps or modules can be ignored according to actual needs. The execution sequence of each step is not fixed and can be adjusted as needed. The division of each module is only for the convenience of describing the functional division used. In actual implementation, a module can be divided into multiple modules, and the functions of multiple modules can also be implemented by the same module. These modules can be in the same device or different devices.
[0138] The hardware modules in each implementation can be implemented mechanically or electronically. For example, a hardware module can include specially designed permanent circuits or logic devices (such as dedicated processors, such as FPGA or ASIC) to complete specific operations. Hardware modules can also include programmable logic devices or circuits temporarily configured by software (such as general-purpose processors or other programmable processors) for performing specific operations. As for the specific use of mechanical methods, either dedicated permanent circuits or temporarily configured circuits (such as software configuration) to implement hardware modules, it can be determined based on cost and time considerations.
[0139] The above is only a preferred embodiment of the present disclosure and is not intended to limit the scope of protection of the present disclosure. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of this disclosure shall be included within the scope of protection of this disclosure.
Claims
1.A method for generating 3D model of an industrial scene, comprising:acquiring (101) point cloud data for an industrial scene;determining (102) a domain of the industrial scene;acquiring (103) a trained semantic segmentation model associated with the domain from a model library, wherein the model library comprises multiple trained semantic segmentation models associated with respective domains;performing (104) semantic segmentation on the point cloud data to obtain multiple segmented objects, based on the trained semantic segmentation model associated with the domain;meshing (105) the multiple segmented objects; andgenerating (106) a 3D model of the industrial scene based on the meshed multiple segmented objects.2.The method of claim 1, wherein determining (102) a domain of the industrial scene comprises:receiving user input comprising description information of the domain;determining the domain based on the description information.3.The method of claim1, wherein determining (102) a domain of the industrial scene comprises:inputting the point cloud data into a trained domain determination model;acquiring the domain from output of the trained domain determination model.4.The method of claim 3, comprising:inputting first point cloud training data with a domain label into a first neural network model;receiving a first classification result of the domain to which the first point cloud training data belongs from the first neural network model;determining a first loss function value based on the difference between the domain label and the first classification result;configuring model parameters of the first neural network model to make the first loss function value lower than a first preset threshold;determining the configured first neural network model as the trained domain determination model.5.The method of claim 1, wherein meshing (105) the multiple segmented objects comprises:evaluating respective importance of respective segmented objects based on respective categories into which respective segmented objects are classified;determining respective resolutions for respective segmented objects based on the respective importance of respective segmented objects;meshing respective segmented objects based on the respective resolutions for respective segmented objects.6.The method of claim 5, wherein determining respective resolutions comprises at least one of the following criterions:the greater the resolution for a segmented object when importance evaluation result indicates that the more important the segmented object;the lower the resolution for a segmented object when importance evaluation result indicates that the less important the segmented object.7.The method of any one of claims 1-6, comprising:performing planar segmentation on the point cloud data to obtain multiple planes;classifying the multiple planes based on the trained semantic segmentation model;determining multiple segmented objects each comprising planes of the same classification.8.The method of any one of claims 1-6, comprises a process of training a semantic segmentation model comprising:inputting second point cloud training data with semantic labels into a second neural network model, wherein the second point cloud training data comprising multidimensional contexture features, the second point cloud training data is associated with a domain;receiving semantic segmentation results of the second point cloud training data from the second neural network model;determining a second loss function value based on the difference between the semantic labels and the semantic segmentation results;configure model parameters of the second neural network model to make the second loss function value lower than a second preset threshold;determining the configured second neural network model as a trained semantic segmentation model associated with the domain;storing the trained semantic segmentation model associated with the domain in the model library.9.A system for generating 3D model of an industrial scene, comprising:an interface module (11) , configured to acquire point cloud data for an industrial scene;a model library (12) , configured to store multiple trained semantic segmentation models associated with respective domains;a segmenting module (13) , configured to determine a domain of the industrial scene, acquire a trained semantic segmentation model associated with the domain from the model library (12) , and perform semantic segmentation on the point cloud data to obtain multiple segmented objects, based on the trained semantic segmentation model associated with the domain; anda generating module (14) , configured to mesh the multiple segmented objects and generate a 3D model of the industrial scene based on the meshed multiple segmented objects.10.The system of claim 9, wherein the segmenting module (13) comprises a domain selector (131) , configured to input the point cloud data into a trained domain determination model, and acquire the domain from output of the trained domain determination model.11.The system of claim10, comprising a training module (16) , configured to input first point cloud training data with a domain label into a first neural network model, receive a first classification result of the domain to which the first point cloud training data belongs from the first neural network model, determine a first loss function value based on the difference between the domain label and the first classification result, configure model parameters of the first neural network model to make the first loss function value lower than a first preset threshold, and determine the configured first neural network model as the trained domain determination model.12.The system of claim11, wherein the training module (16) , configured to input second point cloud training data with semantic labels into a second neural network model, wherein the second point cloud training data comprising multidimensional contexture features, the second point cloud training data is associated with a domain, receive semantic segmentation results of the second point cloud training data from the second neural network model, determine a second loss function value based on the difference between the semantic labels and the semantic segmentation results, configure model parameters of the second neural network model to make the second loss function value lower than a second preset threshold, determine the configured second neural network model as a trained semantic segmentation model associated with the domain, and store the trained semantic segmentation model associated with the domain in the model library (12) .13.An electronic device, comprising a processor (801) and a memory (802) , wherein an application program executable by the processor (801) is stored in the memory (802) for causing the processor (801) to execute a method for generating 3D model of an industrial scene according to any one of claims 1-8.14.A computer-readable medium comprising computer-readable instructions stored thereon, wherein the computer-readable instructions for executing a method for generating 3D model of an industrial scene according to any one of claims 1-8.15.A computer program product comprising a computer program, upon the computer program is executed by a processor for executing a method for generating 3D model of an industrial scene according to any one of claims 1-8.