Method and device for registering BIM (Building Information Modeling) model and real point cloud

By generating and registering with the real point cloud, the problems of inefficient and poor accuracy of BIM model and real point cloud are solved, and efficient registration effect of automated processing is achieved.

CN119887860APending Publication Date: 2025-04-25BOSHI SHANGHAI INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311385048.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-10-24
Publication Date
2025-04-25

AI Technical Summary

Technical Problem

In the prior art, the registration of BIM models and real point clouds mainly relies on manual operations, resulting in inefficiency and poor accuracy, especially in complex environments at construction sites.

Method used

By acquiring the BIM model and the real point cloud, a synthetic BIM point cloud is generated and registered with the real point cloud, the registration results between the BIM model and the real point cloud are determined. This method can automate processing, improving registration efficiency and accuracy.

Benefits of technology

It realizes efficient and accurate registration between the BIM model and the real point cloud, which significantly improves registration efficiency and accuracy compared with manual operations, and is suitable for complex building construction site environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119887860A_ABST
    Figure CN119887860A_ABST
Patent Text Reader

Abstract

The present disclosure provides a method, a registration device, and a computer readable storage medium for registering a Building Information Modeling, BIM, model and a real point cloud. The present disclosure provides a method, a registration device, and a computer readable storage medium for registering a building information modeling, BIM, model and a real point cloud. The method comprises the steps that a BIM model and a real point cloud are acquired, the BIM model is constructed for a target building, and the real point cloud is acquired for a construction site of the target building; based on the BIM model, generating a synthesized BIM point cloud; and carrying out registration on the synthesized BIM point cloud and the real point cloud to determine a registration result between the BIM model and the real point cloud.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of data processing, and in particular to a method, a registration device, and a computer-readable storage medium for registering a Building Information Modeling (BIM) model with a real point cloud. Background Art

[0002] BIM model usually refers to the engineering data model formed by three-dimensional digital technology in the architectural design stage. At present, BIM model has been widely used in the engineering field due to its information completeness, relevance, consistency, visualization, coordination and other characteristics. In practical applications, in order to facilitate engineering analysis and other purposes, point cloud data is usually collected for the construction site, and then the BIM model is aligned with the point cloud data. At present, the alignment work is mainly completed manually. However, the BIM model is a theoretical model in the design stage, and the construction stage is often a highly complex dynamic process. Therefore, the BIM model may differ greatly from the collected point cloud data, which makes manual alignment not only inefficient but also inaccurate. Summary of the invention

[0003] In view of the need for improvement of the prior art, embodiments of the present disclosure provide a method, a registration device, and a computer-readable storage medium for registering a BIM model with a real point cloud.

[0004] On the one hand, an embodiment of the present disclosure provides a method for aligning a Building Information Modeling (BIM) model with a real point cloud, comprising: acquiring a BIM model and a real point cloud, wherein the BIM model is constructed for a target building, and the real point cloud is collected for a construction site of the target building; generating a synthetic BIM point cloud based on the BIM model; and aligning the synthetic BIM point cloud with the real point cloud to determine a registration result between the BIM model and the real point cloud.

[0005] On the other hand, an embodiment of the present disclosure provides a registration device for aligning a BIM model with a real point cloud, comprising: at least one processor; a memory communicating with the at least one processor, on which executable code is stored, and when the executable code is executed by the at least one processor, the at least one processor executes the above method.

[0006] On the other hand, an embodiment of the present disclosure provides a computer-readable storage medium storing executable codes, which implement the above method when executed.

[0007] On the other hand, an embodiment of the present disclosure provides a registration device for aligning a BIM model with a real point cloud, comprising: a processor, comprising: an acquisition unit, for acquiring a BIM model and a real point cloud, wherein the BIM model is constructed for a target building, and the real point cloud is collected for a construction site of the target building; a generation unit, for generating a synthetic BIM point cloud based on the BIM model; and a registration unit, for aligning the synthetic BIM point cloud with the real point cloud to determine a registration result between the BIM model and the real point cloud. BRIEF DESCRIPTION OF THE DRAWINGS

[0008] The above and other objects, features and advantages of embodiments of the present disclosure will become more apparent through a more detailed description of embodiments of the present disclosure in conjunction with the accompanying drawings, wherein like reference numerals generally represent like elements throughout the various drawings.

[0009] Figure 1 is a schematic flow chart of a method for registering a BIM model with a real point cloud according to some embodiments.

[0010] Figure 2 A schematic flow chart of a process for registering a BIM model with a real point cloud according to some embodiments is shown.

[0011] Figure 3 An example of generating a synthetic BIM point cloud is shown.

[0012] Figure 4 A specific example of generating an optimized point cloud is shown.

[0013] Figure 5 is a schematic block diagram of a registration device for registering a BIM model with a real point cloud according to some embodiments.

[0014] Figure 6 is a schematic block diagram of a registration device for registering a BIM model with a real point cloud according to some embodiments. DETAILED DESCRIPTION

[0015] The subject matter described herein will now be discussed with reference to various embodiments. It should be understood that these embodiments are discussed only to enable those skilled in the art to better understand and implement the subject matter described herein, and are not intended to limit the scope of protection, applicability or examples set forth in the claims.

[0016] Digital twin is also called digital mapping or digital mirroring. Its basic idea is to dynamically simulate physical objects digitally through virtual models. At present, the concept of digital twin has also been introduced in the field of construction. The main purpose is to track and check the progress or status of construction projects through virtual models. This usually involves aligning and comparing virtual models with data captured for construction projects in the real world, such as aligning the BIM model for a construction project with the real point cloud collected on site for the construction project. At present, the alignment work is mainly carried out manually. However, the BIM model is an engineering data model that integrates various relevant information of the construction project formed in the design stage. Therefore, the BIM model usually contains accurate building structure data. The real point cloud is usually obtained by scanning the construction site with a sensor (such as a lidar), which results in the real point cloud containing some noise points or other irrelevant data points in addition to the building structure data points. Therefore, the manual alignment of the BIM model with the real point cloud is not only difficult and inefficient, but also has poor accuracy.

[0017] In view of this, an embodiment of the present disclosure provides a technical solution for registering a BIM model with a real point cloud, which will be described below in conjunction with specific embodiments.

[0018] Figure 1 is a schematic flow chart of a method for registering a BIM model with a real point cloud according to some embodiments.

[0019] like Figure 1 As shown, in step 102, a BIM model and a real point cloud may be obtained.

[0020] The BIM model can be constructed for the target building. The real point cloud can be collected for the construction site of the target building. For example, the real point cloud can be obtained by scanning the construction site of the target building using a sensor (such as a lidar). It is understandable that the construction site mentioned in this article can be a site where the target building is under construction and the target building has not yet been completed; it can also be a site where the target building has been completed, and this article does not limit this.

[0021] In step 104 , a synthetic BIM point cloud may be generated based on the BIM model.

[0022] In step 106 , the synthetic BIM point cloud and the real point cloud may be registered to determine a registration result between the BIM model and the real point cloud.

[0023] In an embodiment of the present disclosure, a synthetic BIM point cloud is generated based on a BIM model, and then the synthetic BIM point cloud is registered with a real point cloud to determine the registration result between the BIM model and the real point cloud. Thus, the registration can be completed efficiently and accurately. The technical solution provided by the embodiment of the present disclosure can be automatically implemented by executing program code, which can effectively improve the registration efficiency and accuracy compared to manual registration.

[0024] In some embodiments, in step 104, a synthetic BIM point cloud may be generated from the BIM model in various applicable ways. For example, a ray tracing algorithm may be used to process the BIM model to generate a synthetic BIM point cloud. The synthetic BIM point cloud generated from the BIM model using the ray tracing algorithm may have a modality close to or consistent with the real point cloud. In other words, the synthetic BIM point cloud generated in this way may have a point distribution similar to that of the real point cloud, thereby facilitating accurate and efficient execution of the subsequent registration process.

[0025] In some embodiments, the synthetic BIM point cloud can be registered with the real point cloud to determine a first registration result. An optimized point cloud can be generated based on the real point cloud. Afterwards, the synthetic BIM point cloud can be registered with the optimized point cloud to determine a second registration result. It can be seen that in the embodiments of the present disclosure, the BIM model and the real point cloud can be registered from multiple aspects, thereby enabling efficient and accurate registration.

[0026] In some embodiments, the optimized point cloud may be used to represent a set of building structures in a construction site that correspond to a target building.

[0027] In some embodiments, the registration result may be determined based on the first registration result and the second registration result. For example, in some implementations, the registration result may include the first registration result and the second registration result. For another example, in some implementations, the first registration result and the second registration result may be processed to obtain the registration result.

[0028] It can be seen that in the embodiments of the present disclosure, the registration between the BIM model and the real point cloud can be mainly performed from two aspects. On the one hand, the synthetic BIM point cloud is registered with the real point cloud. On the other hand, the synthetic BIM point cloud is registered with the optimized point cloud obtained from the real point cloud.

[0029] Some embodiments regarding the registration of synthetic BIM point clouds with real point clouds are described below.

[0030] In some embodiments, a first set of features can be extracted from a synthetic BIM point cloud. In addition, a second set of features can be extracted from a real point cloud. Both the first set of features and the second set of features belong to the target building. Specifically, the first set of features and the second set of features can be on the same target plane in the target building and belong to the same category. The target plane can be parallel to the ground of the target building. For example, in some implementations, the first set of features can be the ground features of the target building represented by the synthetic BIM point cloud, and the second set of features can be the ground features of the target building represented by the real point cloud. In some implementations, the first set of features can be the ceiling features of the target building represented by the synthetic BIM point cloud, and the second set of features can be the ceiling features of the target building represented by the real point cloud. Of course, in addition to the ground features and the ceiling features, the first set of features and the second set of features can also be features of the same category on other planes parallel to the ground. In this way, the first alignment result can be effectively determined based on the first set of features and the second set of features.

[0031] Various applicable methods can be used to extract the first set of features from the synthetic BIM point cloud and the second set of features from the real point cloud. For example, the Random Sample Consensus (RANSAC) algorithm can be used to extract the first set of features from the synthetic BIM point cloud. Similarly, the RANSAC algorithm can be used to extract the second set of features from the real point cloud. The specific number of the first set of features and the second set of features can be set according to factors such as actual application requirements, and this article does not limit this.

[0032] In addition, it can be understood that point clouds are usually three-dimensional, so the registration between point clouds usually involves the transformation of six degrees of freedom of the coordinate system in which the point clouds are located. The transformation of six degrees of freedom can include translation transformation along the x-axis, y-axis and z-axis and rotation transformation around the x-axis, y-axis and z-axis.

[0033] For example, a first coordinate system may be established for a synthetic BIM point cloud. The first coordinate system may use the ground of the target building represented by the synthetic BIM point cloud as the xy plane, and accordingly, the upward direction perpendicular to the xy plane may be used as the positive direction of the z-axis of the first coordinate system. Similarly, a second coordinate system may be established for a real point cloud. The second coordinate system may use the ground of the target building represented by the real point cloud as the xy plane, and accordingly, the upward direction perpendicular to the xy plane may be used as the positive direction of the z-axis of the second coordinate system.

[0034] Further combined with the above embodiment, the first set of features and the second set of features are both on a plane parallel to the ground. Then, when the first coordinate system and the second coordinate system are both established with the ground as the xy plane, the first set of features can be on the xy plane of the first coordinate system or on a plane parallel to the xy plane, and the second set of features can be on the xy plane of the second coordinate system or on a plane parallel to the xy plane. Therefore, the first registration result can represent the translation transformation along the z-axis between the synthetic BIM point cloud and the real point cloud. Specifically, the first registration result can represent the translation transformation parameters between the z-axis of the first coordinate system and the z-axis of the second coordinate system.

[0035] There may be different cases regarding the rotation transformation along the x-axis and the y-axis. In some cases, the ground represented by both the synthetic BIM point cloud and the real point cloud may be pre-adjusted to be parallel, that is, the xy plane of the first coordinate system is parallel to the xy plane of the second coordinate system. In this case, there will be no rotation transformation along the x-axis and the y-axis, so no further special determination is required.

[0036] In some cases, the ground surfaces represented by the synthetic BIM point cloud and the real point cloud may not be parallel, so the rotation transformation between the synthetic BIM point cloud and the real point cloud along the x-axis and the y-axis can be determined in an applicable manner. For example, an improved RANSAC algorithm can be used to extract the ground features of the synthetic BIM point cloud and the real point cloud, calculate the normal vectors of the ground features of the synthetic BIM point cloud and the normal vectors of the ground features of the real point cloud, calculate the angle between the two normal vectors, calculate the projection in the reference coordinate system (for example, the reference coordinate system can be the coordinate system where the real point cloud is located), and then calculate the rotation angle along the x-axis and the y-axis.

[0037] It can be seen that through the above method, the transformations of three degrees of freedom are fixed, namely the translation transformation along the z-axis and the rotation transformations around the x-axis and the y-axis.

[0038] The following describes another aspect of the registration process. As mentioned above, in addition to the registration between the synthetic BIM point cloud and the real point cloud, the synthetic BIM point cloud can also be registered with the optimized point cloud. This is because the BIM model is pre-formed in the design stage, so it usually contains accurate data about the building structure of the target building, and the real point cloud, in addition to the data points representing the building structure of the target building, may also contain some noise points or data points representing structures or objects that are not related to the target building (such as some temporary equipment, furniture, personnel, etc. at the construction site), which may cause registration errors. Therefore, in order to make the registration more accurate, such noise points or irrelevant data points can be removed as much as possible from the real point cloud, thereby generating an optimized point cloud, so that the optimized point cloud can accurately represent a set of building structures corresponding to the target building at the construction site. In this way, registering the optimized point cloud with the synthetic BIM point cloud can obtain a more accurate and reliable registration result.

[0039] The optimized point cloud can be generated in various applicable ways. For example, in some embodiments, a set of available point clusters can be extracted from the real point cloud. Each available point cluster can represent a single building structure of the target building. Then, the optimized point cloud can be generated based on the set of available point clusters.

[0040] In some embodiments, a set of initial point clusters may be extracted from the real point cloud, and then available point clusters may be formed based on the initial point clusters.

[0041] A set of initial point clusters can be extracted in various applicable ways. For example, in some embodiments, the real point cloud can be preprocessed to determine the initial point cloud. Preprocessing can include at least one of noise reduction processing and point density reduction processing. For example, preprocessing can include point cloud segmentation, voxel sampling, Gaussian filtering, etc. Point cloud segmentation can be used to remove noise points or irrelevant data points in the real point cloud. Voxel sampling can be used to reduce the point cloud density. Gaussian filtering can be used to remove noise points or irrelevant data points in the real point cloud. Of course, in different implementations, preprocessing can also include other processing methods, which are not limited in this article.

[0042] Then, a set of initial point clusters can be extracted from the initial point cloud. This can be achieved in various appropriate ways. For example, in some embodiments, a region growing algorithm can be used to extract a set of initial point clusters from the initial point cloud. Of course, other clustering algorithms can also be used to extract a set of initial point clusters, which is not limited in this article.

[0043] Each initial point cluster may represent a single building structure of the target building, or may represent multiple building structures of the target building. For example, a single building structure may be a building structure such as a wall or a column that has a separate building meaning. In order to obtain a usable point cluster based on the initial point clusters, each initial point cluster may be processed. For example, for each initial point cluster, it may be determined whether the initial point cluster represents a single building structure or multiple building structures of the target building. If the initial point cluster represents a single building structure of the target building, then the initial point cluster may be determined as a usable point cluster. If the initial point cluster represents multiple building structures of the target building, then the initial point cluster may be split until the point cluster obtained by the split represents a single building structure of the target building, and the point cluster obtained by the split is used as a usable point cluster.

[0044] In some embodiments, the principal component analysis (PCA) and RANSAC algorithm may be used to determine whether the initial point cluster represents a single building structure or multiple building structures. For example, for each initial point cluster, the main direction of the building structure represented by the initial point cluster may be determined by PCA, and the normal vector of the surface of the building structure represented by the initial point cluster may be determined by the RANSAC algorithm. Then, the angle between the main direction and the normal vector may be determined. If the angle is greater than a preset angle threshold, it means that the initial point cluster may represent multiple building structures; if the angle is less than or equal to the preset angle threshold, it can be considered that the initial point cluster represents a single building structure. In the case where the initial point cluster represents multiple building structures, the initial point cluster may be split into multiple smaller point clusters. For example, the RANSAC algorithm may be used to split the initial point cluster. For the split point clusters, the above process can still be repeated. For example, it is determined whether the split point cluster represents a single building structure or multiple building structures. If the point cluster represents a single building structure, the point cluster can be used as an available point cluster. If the point cluster represents multiple building structures, it can be further split. Until each point cluster obtained represents a single building structure, a set of usable point clusters is obtained.

[0045] In some embodiments, a set of available point clusters may be directly converted into an optimized point cloud.

[0046] In some embodiments, in order to further improve the accuracy of the registration, a set of preferred point clusters can be selected from a set of available point clusters, and then the set of preferred point clusters can be converted into an optimized point cloud. For example, for each available point cluster, it can be determined whether the surface of the building structure represented by the available point cluster is perpendicular to or parallel to the ground of the target building. If so, the available point cluster can be determined as a preferred point cluster. It can be seen that the preferred point cluster can actually represent a building structure with a more regular shape. For example, in some embodiments, the building structure represented by each preferred point cluster can have a rectangular shape, such as a rectangular parallelepiped-shaped structural beam, wall, horizontal plate, or other building structure. In this way, the optimized point cloud is formed using the preferred point cluster representing a more regularly shaped building structure, which will be able to further improve the accuracy of the registration between the synthetic BIM point cloud and the optimized point cloud.

[0047] After the optimized point cloud is determined, the synthetic BIM point cloud and the optimized point cloud may be registered to determine a second registration result.

[0048] In some embodiments, in order to perform registration, a group of building structures represented by the synthetic BIM point cloud and a group of building structures represented by the optimized point cloud can be made to belong to the same category, such as such building structures can include walls, columns, structural beams, etc. For example, in some implementations, the category of the building structure can be pre-set. Since the BIM model is a virtual model formed in the design stage, it usually contains accurate building structure category information. In this way, when generating a synthetic BIM point cloud, the synthetic BIM point cloud can be made to have points representing building structures of corresponding categories. For the optimized point cloud, the real point cloud can be subjected to feature and semantic segmentation or category extraction, thereby identifying points representing building structures of corresponding categories from the real point cloud and including them in the optimized point cloud. In this way, using the information representing building structures belonging to the same category in the two point clouds for registration can not only improve the processing efficiency of the entire registration process, but also improve the accuracy of the registration.

[0049] The registration of the synthetic BIM point cloud and the optimized point cloud can include two processes: a feature matching process and a point matching process. The feature matching process can be used as a preliminary match, and the point matching process can be optimized based on the result of the feature matching process.

[0050] Specifically, based on the features of a group of building structures represented by the synthetic BIM point cloud and the features of a group of building structures represented by the optimized point cloud, feature matching can be performed on the synthetic BIM point cloud and the optimized point cloud to determine the preliminary registration result. For example, a feature-based iterative closest point algorithm (ICP) can be used to perform feature matching on the synthetic BIM point cloud and the optimized point cloud.

[0051] Then, the synthetic BIM point cloud and the optimized point cloud can be point matched, so as to adjust the preliminary registration result to generate a second registration result. For example, a point-based ICP algorithm can be used to perform point matching on the synthetic BIM point cloud and the optimized point cloud. It can be seen that the second registration result obtained in this way will be more accurate.

[0052] In addition, as mentioned above, point cloud registration can involve transformations of six degrees of freedom. It has been introduced above how to determine the transformations of three degrees of freedom, namely the rotation transformations around the x-axis and y-axis and the translation transformation along the z-axis. Then, in the process of registering the synthetic BIM point cloud with the optimized point cloud, the transformations of the remaining three degrees of freedom can be determined, namely the translation transformations along the x-axis and y-axis and the rotation transformation around the z-axis. It can be understood that registering the synthetic BIM point cloud with the optimized point cloud is actually also a process of jointly determining the translation transformations along the x-axis and y-axis and the rotation transformation around the z-axis.

[0053] In this case, the second registration result can represent: the translation transformation parameters between the x-axis of the first coordinate system where the synthetic BIM point cloud is located and the x-axis of the second coordinate system where the real point cloud is located, the translation transformation parameters between the y-axis of the first coordinate system and the y-axis of the second coordinate system, and the rotation transformation parameters between the z-axis of the first coordinate system and the z-axis of the second coordinate system.

[0054] Then, the registration result between the BIM model and the real point cloud can be determined based on the first registration result and the second registration result.

[0055] In combination with the embodiments described above, the registration result may include transformation parameters of six degrees of freedom, namely, translation transformation parameters along the x-axis, y-axis, and z-axis between the first coordinate system and the second coordinate system (that is, translation transformation parameters between the BIM model and the real point cloud), and rotation transformation parameters around the x-axis, y-axis, and z-axis between the first coordinate system and the second coordinate system (that is, rotation transformation parameters between the BIM model and the real point cloud). As described above, in some implementations, the rotation transformation along the x-axis and the y-axis may be pre-fixed. Then, in this case, the registration result may include transformation parameters of four degrees of freedom, but does not include rotation transformation parameters around the x-axis and the y-axis.

[0056] In some embodiments, the real point cloud can be acquired multiple times, and the synthetic BIM point cloud can be iteratively registered based on the real point clouds acquired multiple times (for example, from the above two aspects), so as to determine the registration result between the BIM model and the real point cloud. Through such an iterative process, the accuracy of the registration result can be greatly improved.

[0057] In some embodiments, the registration result can also be displayed in a visual way. For example, the registration between the BIM model and the real point cloud can be displayed in a three-dimensional graphic, and the registered BIM model and the real point cloud collected in real time on site can be displayed in a split screen. The split screen display enables the builder user to see the virtual design drawing (i.e., the BIM model) while comparing the similarities and differences between the BIM model and the real construction site data (i.e., the real point cloud). The registration effect can be obtained through the split screen display comparison.

[0058] In addition, in some implementations, the above-mentioned registration scheme can be integrated into the digital twin artificial intelligence Internet of Things (AIOT) chain. AIOT is a combination of artificial intelligence (AI) and the Internet of Things (IoT). The digital twin AIOT chain can associate the physical world with the virtual model, thereby providing a solution for visualization, traceability and collaboration of the building / facility environment. For example, in the digital twin AIOT chain, sensors and other devices can be used to scan physical buildings to obtain real point clouds. The real point cloud can be uploaded to an artificial intelligence-based cloud service platform (for example, a Software as a Service (SaaS) cloud platform). The cloud service platform can implement the registration scheme of the present disclosure, so that the cloud service platform can register the real point cloud with the BIM model to obtain a registration result. The registration results can be output in various ways, such as graphically displaying the registration of the real point cloud and the BIM model (for example, superimposing the corresponding graphics of the two), or using split screen to compare the graphics of the real point cloud and the BIM model, so as to provide users with more intuitive registration results. In addition, the cloud service platform can also be further trained based on such data to further improve the accuracy of the registration. The cloud service platform can also iteratively register the synthetic BIM point cloud based on the real point cloud acquired multiple times.

[0059] In order to more clearly understand the technical solution of the present disclosure, the following will be further described in conjunction with specific examples. It should be understood that these examples do not impose any limitation on the scope of the present disclosure.

[0060] Figure 2 A schematic flow chart of a process for registering a BIM model with a real point cloud according to some embodiments is shown.

[0061] In step 210, a BIM model and a real point cloud may be obtained. The BIM model may be constructed for the target building. The real point cloud may be collected for the construction site of the target building, such as by scanning the construction site with a laser radar.

[0062] In step 220 , the BIM model may be processed using a ray tracing algorithm to generate a synthetic BIM point cloud.

[0063] The synthetic BIM point cloud obtained by the ray tracing algorithm can have a point distribution similar to that of the real point cloud, which is conducive to improving the accuracy and reliability of subsequent registration.

[0064] Figure 3 An example of generating a synthetic BIM point cloud is shown. Figure 3 In the example of , the BIM model 222 may be processed first to obtain a corresponding three-dimensional model 224. The three-dimensional model 224 may be in an OBJ format. Then, the three-dimensional model 224 may be processed to obtain point cloud data 226. The point cloud data 226 may be in a PCD format. Then, based on the point cloud data 226, a synthetic BIM point cloud 228 may be obtained.

[0065] Return to Figure 2 , after generating the synthetic BIM point cloud, in step 230, the translation transformation between the synthetic BIM point cloud and the real point cloud along the z-axis may be determined.

[0066] Specifically, a first coordinate system may be established for the synthetic BIM point cloud. The first coordinate system may use the ground represented by the synthetic BIM point cloud as the xy plane, and the direction perpendicular to the ground upward as the positive direction of the z axis. In addition, a second coordinate system may be established for the real point cloud. The second coordinate system may use the ground represented by the real point cloud as the xy plane, and the direction perpendicular to the ground upward as the positive direction of the z axis.

[0067] In some implementations, a RANSAC algorithm may be used to extract a set of ground features from the synthetic BIM point cloud and a set of ground features from the real point cloud. For ease of description, the set of ground features extracted from the synthetic BIM point cloud is referred to as the first set of ground features, and the set of ground features extracted from the real point cloud is referred to as the second set of ground features.

[0068] Then, the translation transformation parameters along the z-axis between the first coordinate system and the second coordinate system can be determined based on the first group of ground features and the second group of ground features. For example, the distance along the z-axis between the first group of ground features and the second group of ground features can be calculated to determine the translation transformation parameters along the z-axis.

[0069] In addition, Figure 2 In the example, it is assumed that the xy plane of the first coordinate system is preset to be parallel to the xy plane of the second coordinate system. In this case, there is no need to further determine the rotation transformation parameters along the x-axis and the y-axis.

[0070] In step 240 , the translation transformation along the x-axis and the y-axis and the rotation transformation along the z-axis between the synthetic BIM point cloud and the real point cloud may be jointly determined.

[0071] Specifically, an optimized point cloud may be generated based on the real point cloud, and then the translation transformation along the x-axis and y-axis and the rotation transformation along the z-axis between the synthetic BIM point cloud and the optimized point cloud may be determined.

[0072] Various appropriate methods may be used to generate the optimized point cloud. Figure 4 A specific example of generating an optimized point cloud is shown.

[0073] exist Figure 4 In the example of , at stage 242, the real point cloud 402 may be preprocessed. The preprocessing may include point cloud segmentation 2422, voxel sampling 2424, and Gaussian filtering 2426. After preprocessing, an initial point cloud 404 may be obtained. At stage 244, a region-grow algorithm may be used to process the initial point cloud 404 to obtain a set of initial point clusters 406-1, 406-2 to 406-N. N may be a positive integer greater than 1.

[0074] At stage 246, processing may be performed for each initial point cluster. Specifically, at stage 246, it may be determined whether each initial point cluster represents a single building structure or multiple building structures. If the initial point cluster represents a single building structure, the initial point cluster may be determined as a usable point cluster. If the initial point cluster represents multiple building structures, the initial point cluster may be further split until the final point clusters all represent a single building structure.

[0075] For example, for each initial point cluster, in step 2461 of stage 246, PCA can be used to determine the main direction of the building structure represented by the initial point cluster. In step 2462, the RANSAC algorithm can be used to determine the normal vector of the surface of the building structure represented by the initial point cluster. In step 2463, it can be determined whether the angle between the normal vector and the main direction is greater than a preset angle threshold. If the angle is less than or equal to the preset angle threshold, then in step 2464, the initial point cluster can be determined as a usable point cluster. If the angle is greater than the preset angle threshold, then in step 2465, the RANSAC algorithm can be used to split the initial point cluster into smaller point clusters.

[0076] The processing of stage 246 may be performed for each initial point cluster and the smaller point clusters obtained by splitting. Finally, the point clusters output by stage 246 will be used as available point clusters, such as Figure 4As shown, available point clusters 408-1, 408-2 to 408-M (M may be a positive integer greater than 1) may be used. Each available point cluster may represent a single building structure of the target building. For example, a single building structure may be a wall, a column, a structural beam, or the like, which has a separate building meaning.

[0077] Then, at stage 248 , the set of available point clusters 408 - 1 , 408 - 2 through 408 -M may be converted into an optimized point cloud.

[0078] In some cases, in order to further improve the accuracy of the registration, a set of preferred point clusters can be further selected from a set of available point clusters 408-1, 408-2 to 408-M. For example, for each available point cluster, it can be determined whether the surface of the building structure represented by the available point cluster is perpendicular to or parallel to the ground of the target building. If so, the available point cluster is selected as the preferred point cluster. If not, the available point cluster is discarded. It can be seen that determining whether the surface of the building structure represented by the available point cluster is perpendicular to or parallel to the ground of the target building actually also means judging whether the building structure represented by the available point cluster has a regular shape, such as a rectangular shape. This kind of regularly shaped building structure will be more conducive to improving the accuracy of the registration between the synthetic BIM point cloud and the optimized point cloud.

[0079] Return to Figure 2 In step 240, after the optimized point cloud is determined, the synthetic BIM point cloud and the optimized point cloud may be registered. The synthetic BIM point cloud and the optimized point cloud may be registered through a feature matching process and a point matching process.

[0080] Specifically, the category of the building structure represented by the synthetic BIM point cloud can be the same as the category of the group of building structures represented by the optimized point cloud. In this way, the feature-based ICP algorithm can be used to perform feature matching on the synthetic BIM point cloud and the optimized point cloud based on the features of the group of building structures represented by the synthetic BIM point cloud and the features of the group of building structures represented by the optimized point cloud, so as to determine the preliminary registration result.

[0081] Then, a point-based ICP algorithm may be used to perform point matching on the synthesized point cloud and the optimized point cloud, thereby adjusting the preliminary registration result, thereby obtaining a second registration result.

[0082] Through the process of step 240, the transformation of three degrees of freedom can be determined, that is, the translation transformation along the x-axis and the y-axis and the rotation transformation around the z-axis. Therefore, whether it is a feature matching process or a point matching process, the transformation of these three degrees of freedom is determined. Then, the second registration result can include the translation transformation parameters along the x-axis and the y-axis and the rotation transformation parameters around the z-axis between the synthetic BIM point cloud and the optimized point cloud.

[0083] Afterwards, in step 250 , a registration result between the BIM model and the real point cloud may be determined based on the first registration result and the second registration result.

[0084] The registration result may include a first registration result and a second registration result. In the case where the rotation transformation around the x-axis and the y-axis is fixed, the registration result may include transformation parameters of four degrees of freedom. In the case where the rotation transformation around the x-axis and the y-axis needs to be determined separately, the registration result may include transformation parameters of six degrees of freedom.

[0085] In some implementations, the alignment result may be output in a visual form, for example, the alignment between the BIM model and the real point cloud may be represented graphically.

[0086] Figure 5 is a schematic block diagram of a registration device for registering a BIM model with a real point cloud according to some embodiments.

[0087] like Figure 5 As shown, the apparatus 500 may include an acquisition unit 502 , a generation unit 504 , and a registration unit 506 .

[0088] The acquisition unit 502 may acquire a BIM model and a real point cloud. The BIM model may be constructed for a target building. The real point cloud may be collected for a construction site of the target building. The generation unit 504 may generate a synthetic BIM point cloud based on the BIM model. The registration unit 506 may register the synthetic BIM point cloud with the real point cloud to determine a registration result.

[0089] Each unit of the device 500 can perform the specific process described above with respect to the method embodiment, therefore, for the sake of brevity of description, the specific operations and functions of each unit of the device 500 are not described here. The registration device 500 can be integrated in a cloud server platform to provide registration services for BIM models.

[0090] Figure 6 is a schematic block diagram of a registration device for registering a BIM model with a real point cloud according to some embodiments.

[0091] like Figure 6 As shown, the apparatus 600 may include a processor 602, a memory 604, an input interface 606, and an output interface 608, and these modules may be coupled together via a bus 610. However, it should be understood that Figure 6 This is only an example and does not limit the scope of the present disclosure. For example, in different application scenarios, the device 600 may include more or fewer modules, which is not limited herein.

[0092] The memory 604 may be used to store various information related to the functions or operations of the device 600 (such as the BIM model, real point cloud, synthetic BIM point cloud, optimized point cloud, registration results, etc. mentioned above), executable instructions or codes, etc. For example, in some embodiments, the memory 604 may store a registered BIM model. For example, the memory 604 may include, but is not limited to, a random access memory (RAM), a read-only memory (ROM), a flash memory, a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), a register, a hard disk, and the like.

[0093] The processor 602 may be used to execute or implement various functions or operations of the apparatus 600, such as the various operations described herein. For example, the processor 602 may execute executable instructions or codes stored in the memory 604, thereby implementing the various processes described above with respect to the method embodiment. The processor 602 may include various applicable processors, such as a general-purpose processor (such as a central processing unit (CPU)), a special-purpose processor (such as a digital signal processor, a special-purpose integrated circuit, etc.).

[0094] In some embodiments, the processor 602 may implement Figure 5 The various units in, for example, the processor 602 may include an acquisition unit 502 , a generation unit 504 and a registration unit 506 .

[0095] The input interface 606 can receive various data, such as the BIM model and the real point cloud. The output interface 608 can output various data, such as the registration result.

[0096] In some embodiments, the apparatus 600 may further include a display unit. The display unit may display the registered BIM model and the real point cloud, for example, in a split-screen manner.

[0097] The embodiments of the present disclosure further provide a computer-readable storage medium. The computer-readable storage medium may store executable codes, and when the executable codes are executed, the specific processes described above with respect to the method embodiments are implemented.

[0098] For example, computer-readable storage media may include, but are not limited to, RAM, ROM, Electrically-Erasable Programmable Read-Only Memory (EEPROM), Static Random Access Memory (SRAM), hard disk, flash memory, and the like.

[0099] Specific embodiments of the present disclosure are described above. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the embodiments and still achieve the desired results. In addition, the processes depicted in the accompanying drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0100] Not all steps and units in the above processes and system structure diagrams are necessary, and some steps or units may be omitted according to actual needs. The device structure described in the above embodiments may be a physical structure or a logical structure, that is, some units may be implemented by the same physical entity, some units may be implemented by multiple physical entities, or may be implemented by some components in multiple independent devices.

[0101] The optional implementation modes of the embodiments of the present disclosure are described in detail above in conjunction with the accompanying drawings. However, the embodiments of the present disclosure are not limited to the specific details in the above implementation modes. Within the technical concept of the embodiments of the present disclosure, various modifications can be made to the technical solutions of the embodiments of the present disclosure, and these modifications all belong to the protection scope of the embodiments of the present disclosure.

Claims

1. A method for registering a building information modeling (BIM) model with a real point cloud, comprising: Acquire a BIM model and a real point cloud, wherein the BIM model is constructed for a target building, and the real point cloud is collected from a construction site of the target building; Based on the BIM model, generating a synthetic BIM point cloud; The synthetic BIM point cloud is registered with the real point cloud to determine a registration result between the BIM model and the real point cloud.

2. The method according to claim 1, wherein: Registering the synthetic BIM point cloud with the real point cloud to determine the registration result includes: Registering the synthetic BIM point cloud with the real point cloud to determine a first registration result; Based on the real point cloud, generating an optimized point cloud; The synthetic BIM point cloud and the optimized point cloud are registered to determine a second registration result.

3. The method according to claim 2, wherein: The optimized point cloud is used to represent a group of building structures corresponding to the target building in the construction site; and / or, The method further includes determining the registration result based on the first registration result and the second registration result.

4. The method according to claim 2, wherein: Registering the synthetic BIM point cloud with the real point cloud to determine the first registration result includes: Extracting a first set of features from the synthetic BIM point cloud and extracting a second set of features from the real point cloud, wherein the first set of features and the second set of features are both on a target plane in the target building and belong to the same category, and the target plane is parallel to the ground of the target building; The first registration result is determined based on the first set of features and the second set of features.

5. The method according to claim 2, wherein: The first registration result is used to represent the translation transformation parameters between the z-axis of the first coordinate system where the synthetic BIM point cloud is located and the z-axis of the second coordinate system where the real point cloud is located. The first coordinate system is established with the ground of the target building represented by the synthetic BIM point cloud as the xy plane, and the second coordinate system is established with the ground of the target building represented by the real point cloud as the xy plane.

6. The method according to claim 2, wherein: Based on the real point cloud, an optimized point cloud is generated, including: Extracting a set of available point clusters from the real point cloud, wherein each available point cluster in the set of available point clusters is used to represent a single building structure of the target building; The optimized point cloud is generated based on the set of available point clusters.

7. The method according to claim 6, wherein: A set of available point clusters are extracted from the real point cloud, including: Extracting a set of initial point clusters from the real point cloud; For each initial point cluster: Determining whether the initial point cluster represents a single building structure or multiple building structures of the target building; If the initial point cluster represents a single building structure of the target building, the initial point cluster is determined as an available point cluster; If the initial point cluster represents multiple building structures of the target building, the initial point cluster is split until the point cluster obtained by the split represents a single building structure of the target building, and the point cluster obtained by the split is determined as an available point cluster.

8. The method according to claim 7, wherein: A set of initial point clusters are extracted from the real point cloud, including: Preprocessing the real point cloud to determine an initial point cloud, wherein the preprocessing includes at least one of noise reduction processing and point density reduction processing; The set of initial point clusters is extracted from the initial point cloud.

9. The method according to claim 8, wherein: Extracting the set of initial point clusters from the initial point cloud comprises: The group of initial point clusters is extracted from the initial point cloud by using a region growing algorithm.

10. The method according to claim 7, wherein: For each initial point cluster, determining whether the initial point cluster represents a single building structure or multiple building structures of the target building includes: A principal component analysis algorithm and a random sampling consistency algorithm are used to determine whether the initial point cluster represents a single building structure or multiple building structures of the target building.

11. The method according to claim 7, wherein: Split the initial point cluster, including: The random sampling consensus algorithm is used to split the initial point clusters.

12. The method according to claim 6, wherein: Generating the optimized point cloud based on the set of available point clusters includes: Selecting a set of preferred point clusters from the set of available point clusters, wherein for each available point cluster, if the surface of the building structure represented by the available point cluster is perpendicular to or parallel to the ground of the target building, the available point cluster is selected as the preferred point cluster; The set of preferred point clusters is converted into the optimized point cloud.

13. The method according to claim 12, wherein: The building structure represented by each preferred point cluster has a rectangular parallelepiped shape.

14. The method according to claim 2, wherein: The group of building structures represented by the synthetic BIM point cloud and the group of building structures represented by the optimized point cloud belong to the same category; Registering the synthetic BIM point cloud with the optimized point cloud to determine a second registration result, including: Based on the features of a group of building structures represented by the synthetic BIM point cloud and the features of a group of building structures represented by the optimized point cloud, feature matching is performed on the synthetic BIM point cloud and the optimized point cloud to determine a preliminary registration result; The preliminary registration result is adjusted by performing point matching on the synthetic BIM point cloud and the optimized point cloud to determine the second registration result.

15. The method according to claim 14, wherein: Performing feature matching on the synthetic BIM point cloud and the optimized point cloud, including: Using a feature-based iterative closest point algorithm to perform feature matching on the synthetic BIM point cloud and the optimized point cloud; Point matching is performed on the synthetic BIM point cloud and the optimized point cloud, including: The synthetic BIM point cloud and the optimized point cloud are matched by using a point-based iterative closest point algorithm.

16. The method according to claim 2, wherein: The second registration result is used to represent: a translation transformation parameter between the x-axis of the first coordinate system where the synthetic BIM point cloud is located and the x-axis of the second coordinate system where the real point cloud is located, a translation transformation parameter between the y-axis of the first coordinate system and the y-axis of the second coordinate system, and a rotation transformation parameter between the z-axis of the first coordinate system and the z-axis of the second coordinate system. The first coordinate system is established with the ground of the target building represented by the synthetic BIM point cloud as the xy plane, and the second coordinate system is established with the ground of the target building represented by the real point cloud as the xy plane.

17. The method according to claim 1, wherein: Generate synthetic BIM point clouds including: The BIM model is processed using a ray tracing algorithm to generate the synthetic BIM point cloud.

18. The method of claim 1, further comprising: Acquire real point clouds multiple times; The synthetic BIM point cloud is iteratively registered based on the multiple acquired real point clouds to determine a registration result between the BIM model and the real point cloud.

19. The method of claim 1, further comprising: Outputting the registered BIM model, wherein outputting the registered BIM model comprises: outputting the registered BIM model and the real point cloud in a visual manner; and / or, Stores the parameters of the registered BIM model.

20. A registration device for registering a BIM model with a real point cloud, comprising: at least one processor; A memory in communication with the at least one processor, having executable codes stored thereon, which, when executed by the at least one processor, cause the at least one processor to perform the method according to any one of claims 1 to 19.

21. A computer-readable storage medium storing executable codes, wherein the executable codes implement the method according to any one of claims 1 to 19 when executed.

22. A registration device for registering a BIM model with a real point cloud, comprising: Processor, including: An acquisition unit, configured to acquire a BIM model and a real point cloud, wherein the BIM model is constructed for a target building, and the real point cloud is collected for a construction site of the target building; A generating unit, configured to generate a synthetic BIM point cloud based on the BIM model; A registration unit is used to register the synthetic BIM point cloud with the real point cloud to determine a registration result between the BIM model and the real point cloud.

23. The registration device according to claim 22, further comprising: A memory for storing the registered BIM model; and / or, The display unit is used to display the registered BIM model and the real point cloud.