Method and apparatus for generating a building component bim model based on point cloud data

By processing point cloud data, selecting the initial end cross-sectional plane, and segmenting it to obtain the geometric model of the plate, the problem of large workload in BIM component modeling in existing technologies is solved, and efficient generation of BIM models is achieved.

CN116108526BActive Publication Date: 2026-06-16CCTEG BEIJING HUAYU ENG

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CCTEG BEIJING HUAYU ENG
Filing Date
2022-12-30
Publication Date
2026-06-16

AI Technical Summary

Technical Problem

The existing methods for creating BIM component models are labor-intensive and inefficient.

Method used

By processing the original point cloud data, selecting the initial end cross-section plane, and dividing it into multiple regional point cloud data and cross-sectional point cloud data, the geometric model of each plate is obtained by fitting, and the BIM model of the building component is generated based on these models.

🎯Benefits of technology

It reduces the workload of building BIM models and improves the efficiency of generating BIM models of building components.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116108526B_ABST
    Figure CN116108526B_ABST
Patent Text Reader

Abstract

The application provides a method for generating a building component BIM model based on point cloud data, comprising the following steps: obtaining original point cloud data of a building component, and selecting initial end section planes of the original point cloud data; taking point cloud data between the initial end section planes as sub-point cloud data, and obtaining a plurality of regional point cloud data according to the sub-point cloud data; obtaining a plurality of sections between the initial end section planes, and obtaining a plurality of section point cloud data; obtaining point cloud data of each panel area in each section according to the plurality of regional point cloud data and the plurality of section point cloud data, and fitting and segmenting to obtain a geometric model matched with the shape of each panel in each section according to the point cloud data of each panel area in each section; obtaining an average geometric model of a plurality of panels according to the geometric model matched with the shape of each panel in each section, and obtaining a BIM model according to the average geometric model of the plurality of panels. The application improves the efficiency of generating a building component BIM model.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of BIM model generation technology, and in particular to a method and apparatus for generating BIM models of building components based on point cloud data. Background Technology

[0002] Obtaining point clouds of existing building structures using methods such as photogrammetry and 3D laser scanning is very common. Point cloud data usually requires engineers to manually reconstruct the model within BIM software to extract information and create corresponding BIM component models, which is a labor-intensive process. Summary of the Invention

[0003] This application aims to at least partially address one of the technical problems in the related art.

[0004] Therefore, the first objective of this application is to propose a method for generating BIM models of building components based on point cloud data, which solves the technical problem of high workload in existing methods of building BIM component models. By processing the original point cloud data, a BIM model of building components is obtained, which reduces the workload of building BIM models and improves the efficiency of generating BIM models of building components.

[0005] The second objective of this application is to propose a device for generating BIM models of building components based on point cloud data.

[0006] The third objective of this application is to provide a non-transitory computer-readable storage medium.

[0007] To achieve the above objectives, the first aspect of this application proposes a method for generating a BIM model of building components based on point cloud data, comprising: acquiring original point cloud data of the building components and selecting an initial end cross-section plane of the original point cloud data, wherein the initial end cross-section plane includes a first cross-section plane and a second cross-section plane; using the point cloud data between the first cross-section plane and the second cross-section plane as sub-point cloud data, and obtaining multiple region point cloud data based on the sub-point cloud data, wherein the multiple region point cloud data belong to multiple different plates; acquiring multiple cross-sections between the first cross-section plane and the second cross-section plane, and obtaining multiple cross-section point cloud data based on the sub-point cloud data; obtaining point cloud data of each plate region within each cross-section based on the multiple region point cloud data and the multiple cross-section point cloud data, and fitting and segmenting to obtain a geometric model matching the shape of each plate within each cross-section based on the point cloud data of each plate region within each cross-section; obtaining an average geometric model of multiple plates based on the geometric model matching the shape of each plate within each cross-section, and obtaining a BIM model based on the average geometric model of multiple plates.

[0008] Optionally, in one embodiment of this application, an initial end cut-off plane of the original point cloud data is selected, wherein the initial end cut-off plane includes a first cut-off plane and a second cut-off plane, comprising:

[0009] Construct the minimum bounding box of the original point cloud data, where the minimum bounding box is the smallest cuboid that encloses the original point cloud data;

[0010] Using the longest side of the minimum bounding box as the axis, the two faces perpendicular to the axis at both ends of the minimum bounding box are respectively designated as the first end face and the second end face. A plane at a first preset distance from the first end face is selected as the first cross-sectional plane, and a plane at a first preset distance from the second end face is selected as the second cross-sectional plane.

[0011] Optionally, in one embodiment of this application, multiple region point cloud data are obtained based on sub-point cloud data, wherein the multiple region point cloud data belong to multiple different boards, including:

[0012] The sub-point cloud data is projected onto a plane along the axis direction to obtain a planar graphic.

[0013] The planar graphics are provided to the user, and based on the user's feedback, multiple sub-point cloud data of regions belonging to different panels are obtained.

[0014] Optionally, in one embodiment of this application, multiple cross-sections between the first and second cutting planes are obtained, and multiple cross-sectional point cloud data are obtained based on the sub-point cloud data, including:

[0015] Between the first and second cross-sections, starting from the first cross-section, a plane is cut along the axial direction at second preset distances to obtain multiple cross-sections between the first and second cross-sections;

[0016] Based on the sub-point cloud data, obtain the point cloud data for each cross section, thereby obtaining multiple cross-sectional point cloud data;

[0017] Specifically, point cloud data in the sub-point cloud data whose distance from the cross section is less than half of the second preset distance is used as the point cloud data of the cross section.

[0018] Optionally, in one embodiment of this application, point cloud data of each plate region within each cross section is obtained based on multiple region point cloud data and multiple cross section point cloud data, and a geometric model matching the shape of each plate within each cross section is fitted and segmented based on the point cloud data of each plate region within each cross section, including:

[0019] The intersection of point cloud data from multiple regions and point cloud data from multiple sections is used to obtain point cloud data belonging to each plate region within each section.

[0020] Based on the point cloud data of each plate region within each cross section, a segmentation algorithm is used to fit a geometric model that matches the shape of each plate within each cross section, thereby obtaining the geometric model corresponding to the point cloud data of each plate region within each cross section.

[0021] Specifically, when the point cloud data of each plate region within each cross section contains only a single line, a double-line geometric model is formed by offsetting the single line according to the preset thickness.

[0022] Optionally, in one embodiment of this application, before obtaining an average geometric model of multiple plates based on a geometric model matching the shape of each plate within each cross-section, the process includes:

[0023] Connect the centroid of the geometric model of the first section plane to the centroid of the corresponding geometric model of the second section plane;

[0024] If the angle between the centroid line and the axis is greater than the first preset threshold, then the centroid line is taken as the new axis, the first and second intersecting planes are reselected, and the above steps are repeated until the number of iterations is greater than the second preset threshold and / or the angle between the centroid line and the axis is less than or equal to the first preset threshold.

[0025] Optionally, in one embodiment of this application, an average geometric model of multiple plates is obtained based on a geometric model matching the shape of each plate within each cross-section, including:

[0026] Based on the geometric models corresponding to multiple plate regions, the average geometric model of multiple plates is obtained;

[0027] Specifically, by extracting mathematical expressions from multiple geometric models belonging to the same board region, multiple mathematical expressions for the same board region are obtained. The average value of the parameters of the multiple mathematical expressions is then taken to obtain the average geometric model of the board.

[0028] Optionally, in one embodiment of this application, a BIM model is obtained based on the average geometric model of multiple plates, including:

[0029] The target geometric model is obtained by connecting the average geometric models of multiple plates;

[0030] The target geometric model is stretched according to the direction and length of the axis to obtain the BIM model.

[0031] To achieve the above objectives, a second aspect of this application provides an apparatus for generating BIM models of building components based on point cloud data, comprising:

[0032] The original point cloud acquisition module is used to acquire the original point cloud data of the building components and select the initial end cross-sectional plane of the building components based on the original point cloud data. The initial end cross-sectional plane includes a first cross-sectional plane and a second cross-sectional plane.

[0033] The regional point cloud acquisition module is used to take the point cloud data between the first and second cut planes as sub-point cloud data, and obtain multiple regional point cloud data based on the sub-point cloud data. The multiple regional point cloud data belong to multiple different boards.

[0034] The cross-section acquisition module is used to acquire multiple cross-sections between the first and second cutting planes, and to obtain multiple cross-section point cloud data based on the sub-point cloud data;

[0035] The geometric model acquisition module is used to obtain the point cloud data of each plate region in each cross section based on the point cloud data of multiple regions and the point cloud data of multiple cross sections, and to fit and segment the point cloud data of each plate region in each cross section to obtain a geometric model that matches the shape of each plate in each cross section.

[0036] The BIM model acquisition module is used to obtain the average geometric model of multiple plates based on the geometric model that matches the shape of each plate in each section, and to obtain the BIM model based on the average geometric model of multiple plates.

[0037] To achieve the above objectives, a third aspect of this application provides a non-transitory computer-readable storage medium that, when the instructions in the storage medium are executed by a processor, enables the execution of a method for generating a BIM model of building components based on point cloud data.

[0038] The method, apparatus, and non-transitory computer-readable storage medium for generating BIM models of building components based on point cloud data in this application embodiment solve the technical problem of high workload in existing methods of building BIM component models. By processing the original point cloud data, the BIM model of the building component is obtained, which reduces the workload of building BIM models and improves the efficiency of generating BIM models of building components.

[0039] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description

[0040] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the following description of the embodiments taken in conjunction with the accompanying drawings, wherein:

[0041] Figure 1 This is a flowchart of a method for generating a BIM model of building components based on point cloud data, provided in Embodiment 1 of this application;

[0042] Figure 2 This is a structural schematic diagram of a device for generating BIM models of building components based on point cloud data, as provided in Embodiment 2 of this application. Detailed Implementation

[0043] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain this application, and should not be construed as limiting this application.

[0044] The method and apparatus for generating BIM models of building components based on point cloud data according to embodiments of this application are described below with reference to the accompanying drawings.

[0045] Figure 1 This is a flowchart illustrating a method for generating a BIM model of building components based on point cloud data, as provided in Embodiment 1 of this application.

[0046] like Figure 1 As shown, the method for generating BIM models of building components based on point cloud data includes the following steps:

[0047] Step 101: Obtain the original point cloud data of the building components and select the initial end cut plane of the original point cloud data, wherein the initial end cut plane includes a first cut plane and a second cut plane.

[0048] Step 102: Take the point cloud data between the first and second cut planes as sub-point cloud data, and obtain multiple region point cloud data based on the sub-point cloud data, wherein the multiple region point cloud data belong to multiple different plates.

[0049] Step 103: Obtain multiple cross-sections between the first and second cutting planes, and obtain multiple cross-sectional point cloud data based on the sub-point cloud data;

[0050] Step 104: Based on point cloud data of multiple regions and point cloud data of multiple sections, obtain point cloud data of each plate region in each section, and based on point cloud data of each plate region in each section, fit and segment to obtain a geometric model that matches the shape of each plate in each section.

[0051] Step 105: Obtain the average geometric model of multiple plates based on the geometric model that matches the shape of each plate in each section, and obtain the BIM model based on the average geometric model of multiple plates.

[0052] The method for generating a BIM model of building components based on point cloud data in this application embodiment involves: acquiring the original point cloud data of the building components and selecting an initial end cross-section plane of the original point cloud data, wherein the initial end cross-section plane includes a first cross-section plane and a second cross-section plane; using the point cloud data between the first cross-section plane and the second cross-section plane as sub-point cloud data, and obtaining multiple region point cloud data based on the sub-point cloud data, wherein the multiple region point cloud data belong to multiple different plates; acquiring multiple cross-sections between the first cross-section plane and the second cross-section plane, and obtaining multiple cross-section point cloud data based on the sub-point cloud data; obtaining point cloud data for each plate region within each cross-section based on the multiple region point cloud data and the multiple cross-section point cloud data, and fitting and segmenting to obtain a geometric model matching the shape of each plate within each cross-section based on the point cloud data of each plate region within each cross-section; obtaining an average geometric model of multiple plates based on the geometric model matching the shape of each plate within each cross-section, and obtaining a BIM model based on the average geometric model of multiple plates. Therefore, this method can solve the technical problem of high workload in existing methods of creating BIM component models. By processing the original point cloud data, a BIM model of the building components can be obtained, which reduces the workload of building BIM models and improves the efficiency of generating BIM models of building components.

[0053] This application obtains the original point cloud of building components through photogrammetry, 3D laser scanning, etc. The original point cloud format can be common point cloud formats such as PCD and ASC.

[0054] Further, in this embodiment of the application, an initial end cut-off plane of the original point cloud data is selected, wherein the initial end cut-off plane includes a first cut-off plane and a second cut-off plane, including:

[0055] Construct the minimum bounding box of the original point cloud data, where the minimum bounding box is the smallest cuboid that encloses the original point cloud data;

[0056] Using the longest side of the minimum bounding box as the axis, the two faces perpendicular to the axis at both ends of the minimum bounding box are respectively designated as the first end face and the second end face. A plane at a first preset distance from the first end face is selected as the first cross-sectional plane, and a plane at a first preset distance from the second end face is selected as the second cross-sectional plane.

[0057] In this embodiment, the minimum bounding box of the original point cloud (i.e., the smallest cuboid that encloses all points of the original point cloud) can be established. The longest side of the minimum bounding box is taken as the axis direction, and the two faces perpendicular to the axis are taken as end faces. The planes at each end point at a distance r×L from the end face are taken as the first cross-sectional plane P1 and the second cross-sectional plane P2, where the side length of the axis is L and r is a small non-negative value, such as 5%. If the result obtained by the above method is not ideal, the user can manually select two points on the component near the end, connect them to form an axis, and take the planes passing through the two points and perpendicular to the axis as the first cross-sectional plane P1 and the second cross-sectional plane P2.

[0058] Furthermore, in this embodiment of the application, multiple region point cloud data are obtained based on the sub-point cloud data, wherein the multiple region point cloud data belong to multiple different boards, including:

[0059] The sub-point cloud data is projected onto a plane along the axis direction to obtain a planar graphic.

[0060] The planar graphics are provided to the user, and based on the user's feedback, multiple sub-point cloud data of regions belonging to different panels are obtained.

[0061] In this embodiment, points falling between the cut planes in the original point cloud are selected to form sub-point clouds. The sub-point clouds are projected onto the plane along the axial direction, and a graphical interface is provided to the user, who can select m regions of sub-point clouds R[0:m] belonging to different steel plates.

[0062] Furthermore, in this embodiment of the application, multiple cross-sections between the first and second cross-sections are obtained, and multiple cross-sectional point cloud data are obtained based on the sub-point cloud data, including:

[0063] Between the first and second cross-sections, starting from the first cross-section, a plane is cut along the axial direction at second preset distances to obtain multiple cross-sections between the first and second cross-sections;

[0064] Based on the sub-point cloud data, obtain the point cloud data for each cross section, thereby obtaining multiple cross-sectional point cloud data;

[0065] Specifically, point cloud data in the sub-point cloud data whose distance from the cross section is less than half of the second preset distance is used as the point cloud data of the cross section.

[0066] In this embodiment, a distance threshold parameter t (non-negative) is taken, and the first cutting plane P1 is copied along the axial direction to the second cutting plane P2, with a copy made at every distance t, forming a sequence P[0:n] composed of n cutting planes; for each cutting plane P[i] in the sequence, points in the sub-point cloud that are less than t / 2 from the cutting plane are selected to form a cross-sectional sub-point cloud S[i]. This process is repeated for each cutting plane to obtain a sequence S[0:n] composed of n cross-sectional point clouds.

[0067] Further, in this embodiment of the application, point cloud data of each plate region within each cross section is obtained based on multiple regional point cloud data and multiple cross section point cloud data, and a geometric model matching the shape of each plate within each cross section is obtained by fitting and segmenting based on the point cloud data of each plate region within each cross section, including:

[0068] The intersection of point cloud data from multiple regions and point cloud data from multiple sections is used to obtain point cloud data belonging to each plate region within each section.

[0069] Based on the point cloud data of each plate region within each cross section, a segmentation algorithm is used to fit a geometric model that matches the shape of each plate within each cross section, thereby obtaining the geometric model corresponding to the point cloud data of each plate region within each cross section.

[0070] Specifically, when the point cloud data of each plate region within each cross section contains only a single line, a double-line geometric model is formed by offsetting the single line according to the preset thickness.

[0071] In this application, for each cross-sectional sub-point cloud S[i] and region sub-point cloud R[j], the intersection SR[i,j] = S[i] ∩ R[j] is taken, which means the set of points within the i-th cross-section that fall within the range of plate region j.

[0072] In this embodiment, mathematical models of common geometric shapes such as parallel line segments, parallel arcs, and concentric circles are constructed. Based on the RANSAC (Random Sample Consensus) algorithm, the geometric model that best matches the shape of the plate in each intersection SR[i,j] is fitted and segmented. This geometric model is recorded as G[i,j]. Thus, m×n geometric models G[0:n,0:m] located at different positions on the axis and belonging to different regions are obtained.

[0073] In some cases, due to scanning angle and other reasons, the point cloud may only contain a single line segment, a single arc, or a single circle. The user needs to specify a thickness value, and the single line is offset according to the thickness to form a double-line geometric model. That is to say, G[0:n,0:m] are all double-line models.

[0074] Further, in this embodiment of the application, before obtaining the average geometric model of multiple plates based on the geometric model matching the shape of each plate within each cross-section, the process includes:

[0075] Connect the centroid of the geometric model of the first section plane to the centroid of the corresponding geometric model of the second section plane;

[0076] If the angle between the centroid line and the axis is greater than the first preset threshold, then the centroid line is taken as the new axis, the first and second intersecting planes are reselected, and the above steps are repeated until the number of iterations is greater than the second preset threshold and / or the angle between the centroid line and the axis is less than or equal to the first preset threshold.

[0077] In this embodiment of the application, if the line connecting the centroids C[0] and C[n-1] of the geometric models G[0,0:m] and G[n-1,0:m] at the ends is not parallel to the axis taken in the second step (i.e., the angle between the two is greater than a certain threshold), then the line connecting C[0] and C[n-1] is taken as the new axis, and the plane passing through C[0] and C[n-1] and perpendicular to the new axis is taken as the new end cutting plane. The above steps are repeated until the number of iterations is greater than a certain threshold or the angle between the centroids at the ends is less than or equal to the threshold.

[0078] Furthermore, in this embodiment of the application, an average geometric model of multiple plates is obtained based on a geometric model matching the shape of each plate within each cross-section, including:

[0079] Based on the geometric models corresponding to multiple plate regions, the average geometric model of multiple plates is obtained;

[0080] Specifically, by extracting mathematical expressions from multiple geometric models belonging to the same board region, multiple mathematical expressions for the same board region are obtained. The average value of the parameters of the multiple mathematical expressions is then taken to obtain the average geometric model of the board.

[0081] In this embodiment, for geometric models G[0:n,j] belonging to the same specified region j, the mathematical expressions of the geometric models are extracted, and the average value of the parameters of these n expressions is taken (not limited to taking the average value) to form a representative mathematical expression, which is used as the average geometric model G. 平均 [j].

[0082] Furthermore, in this embodiment of the application, a BIM model is obtained based on the average geometric model of multiple plates, including:

[0083] The target geometric model is obtained by connecting the average geometric models of multiple plates;

[0084] The target geometric model is stretched according to the direction and length of the axis to obtain the BIM model.

[0085] In this embodiment of the application, for m average geometric models G 平均 [0:m] can be used to represent m average geometric models G. 平均 [0:m] Calculate the intersection points and connect them as a whole to obtain the target geometric model. Then, stretch the target geometric model according to the direction and length of the axis to obtain the BIM model.

[0086] For example, the geometric parameters of the target geometric model can be converted into an IFC format BIM model by defining IfcCurve (including IfcPolyLine, IfcIndexedPolyCurve, etc.), IfcArbitraryClosedProfileDef, and IfcExtrudedAreaSolid. The BIM model contains precise cross-sectional geometric expressions and axis directions and lengths. The cross-sectional geometric expressions are stretched according to the axis directions and lengths to obtain the IFC format BIM model.

[0087] Figure 2 This is a structural schematic diagram of a device for generating BIM models of building components based on point cloud data, as provided in Embodiment 2 of this application.

[0088] like Figure 2 As shown, the device for generating BIM models of building components based on point cloud data includes:

[0089] The original point cloud acquisition module 10 is used to acquire the original point cloud data of the building component and select the initial end cross-sectional plane of the building component based on the original point cloud data. The initial end cross-sectional plane includes a first cross-sectional plane and a second cross-sectional plane.

[0090] The regional point cloud acquisition module 20 is used to take the point cloud data between the first and second cut planes as sub-point cloud data, and obtain multiple regional point cloud data based on the sub-point cloud data, wherein the multiple regional point cloud data belong to multiple different boards.

[0091] The cross-section acquisition module 30 is used to acquire multiple cross-sections between the first cutting plane and the second cutting plane, and to obtain multiple cross-section point cloud data based on the sub-point cloud data;

[0092] The geometric model acquisition module 40 is used to obtain point cloud data of each plate region in each cross section based on point cloud data of multiple regions and point cloud data of multiple cross sections, and to fit and segment to obtain a geometric model that matches the shape of each plate in each cross section based on the point cloud data of each plate region in each cross section.

[0093] BIM model acquisition module 50 is used to obtain the average geometric model of multiple plates based on the geometric model that matches the shape of each plate in each section, and to obtain the BIM model based on the average geometric model of multiple plates.

[0094] The apparatus for generating BIM models of building components based on point cloud data according to embodiments of this application includes: an original point cloud acquisition module for acquiring original point cloud data of building components and selecting an initial end cross-sectional plane of the building components based on the original point cloud data, wherein the initial end cross-sectional plane includes a first cross-sectional plane and a second cross-sectional plane; a region point cloud acquisition module for using the point cloud data between the first cross-sectional plane and the second cross-sectional plane as sub-point cloud data and obtaining multiple region point cloud data based on the sub-point cloud data, wherein the multiple region point cloud data belong to multiple different plates; a section acquisition module for acquiring multiple sections between the first cross-sectional plane and the second cross-sectional plane and obtaining multiple section point cloud data based on the sub-point cloud data; a geometric model acquisition module for obtaining point cloud data of each plate region within each section based on the multiple region point cloud data and the multiple section point cloud data, and fitting and segmenting to obtain a geometric model matching the shape of each plate within each section based on the point cloud data of each plate region within each section; and a BIM model acquisition module for obtaining an average geometric model of multiple plates based on the geometric model matching the shape of each plate within each section, and obtaining a BIM model based on the average geometric model of multiple plates. Therefore, this method can solve the technical problem of high workload in existing methods of creating BIM component models. By processing the original point cloud data, a BIM model of the building components can be obtained, which reduces the workload of building BIM models and improves the efficiency of generating BIM models of building components.

[0095] To implement the above embodiments, this application also proposes a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the method for generating BIM models of building components based on point cloud data as described in the above embodiments.

[0096] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., refer to specific features, structures, materials, or characteristics described in connection with that embodiment or example, which are included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.

[0097] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "multiple" means at least two, such as two, three, etc., unless otherwise explicitly specified.

[0098] Any process or method description in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing custom logic functions or processes, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which embodiments of this application pertain.

[0099] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-including system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and programmable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable medium may be paper or other suitable media on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.

[0100] It should be understood that various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0101] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.

[0102] Furthermore, the functional units in the various embodiments of this application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.

[0103] The storage medium mentioned above can be a read-only memory, a disk, or an optical disk, etc. Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of this application.

Claims

1. A method for generating BIM models of building components based on point cloud data, characterized in that, Includes the following steps: Obtain the original point cloud data of the building components, and select the initial end cut plane of the original point cloud data, wherein the initial end cut plane includes a first cut plane and a second cut plane; The point cloud data between the first and second cut planes is used as sub-point cloud data, and multiple regional point cloud data are obtained based on the sub-point cloud data, wherein the multiple regional point cloud data belong to multiple different plates respectively. Multiple cross sections between the first and second cutting planes are obtained, and multiple cross section point cloud data are obtained based on the sub-point cloud data; Based on the multiple regional point cloud data and the multiple cross-sectional point cloud data, point cloud data for each plate region within each cross-section is obtained. Then, based on the point cloud data for each plate region within each cross-section, a geometric model matching the shape of each plate within each cross-section is fitted and segmented, including: The intersection of the multiple regional point cloud data and the multiple cross-sectional point cloud data is taken to obtain the point cloud data belonging to each plate region within each cross section; Based on the point cloud data of each plate region within each cross section, a segmentation algorithm is used to fit a geometric model that matches the shape of each plate within each cross section, thereby obtaining the geometric model corresponding to the point cloud data of each plate region within each cross section. Wherein, when the point cloud data of each plate region in each cross section contains only a single line, a double-line geometric model is formed by offsetting the single line according to the preset thickness; Based on the geometric model matching the shape of each plate within each cross-section, an average geometric model of multiple plates is obtained, and a BIM model is obtained based on the average geometric model of the multiple plates; wherein, it includes: Based on the geometric models corresponding to multiple plate regions, the average geometric model of multiple plates is obtained; Specifically, by extracting mathematical expressions from multiple geometric models belonging to the same board region, multiple mathematical expressions for the same board region are obtained. The average value of the parameters of the multiple mathematical expressions is then taken to obtain the average geometric model of the board. The process of obtaining the BIM model based on the average geometric model of the multiple plates includes: By connecting the average geometric models of the multiple plates, the target geometric model is obtained; The target geometric model is stretched according to the direction and length of the axis to obtain the BIM model.

2. The method as described in claim 1, characterized in that, The initial end cut-off plane of the original point cloud data is selected, wherein the initial end cut-off plane includes a first cut-off plane and a second cut-off plane, including: Construct the minimum bounding box of the original point cloud data, wherein the minimum bounding box is the smallest cuboid that encloses the original point cloud data; Using the longest side of the minimum bounding box as the axis, the two faces perpendicular to the axis at both ends of the minimum bounding box are respectively designated as the first end face and the second end face. A plane at a first preset distance from the first end face is selected as the first cross-sectional plane, and a plane at a first preset distance from the second end face is selected as the second cross-sectional plane.

3. The method as described in claim 1, characterized in that, The process of obtaining multiple region point cloud data based on the sub-point cloud data, wherein the multiple region point cloud data belong to multiple different boards, including: The sub-point cloud data is projected onto a plane along the axial direction to obtain a planar graphic. The planar graphic is provided to the user terminal, and multiple sub-point cloud data of different board components are obtained based on the user terminal feedback.

4. The method as described in claim 1, characterized in that, The step of obtaining multiple cross-sections between the first and second cutting planes, and obtaining multiple cross-sectional point cloud data based on the sub-point cloud data, includes: Between the first and second cutting planes, starting from the first cutting plane, a plane is cut along the axial direction at second preset distances to obtain multiple cross sections between the first and second cutting planes; Based on the sub-point cloud data, the point cloud data of each cross section is obtained, thereby obtaining multiple cross-sectional point cloud data; Specifically, point cloud data whose distance from the cross section is less than half of the second preset distance in the sub-point cloud data are used as the point cloud data of the cross section.

5. The method as described in claim 1, characterized in that, Before obtaining the average geometric model of multiple plates based on the geometric model matching the shape of each plate within each cross section, the process includes: Connect the centroid of the geometric model of the first section plane to the centroid of the corresponding geometric model of the second section plane; If the angle between the centroid line and the axis is greater than the first preset threshold, then the centroid line is taken as the new axis, the first and second cross-section planes are reselected, and the above steps are repeated until the number of iterations is greater than the second preset threshold and / or the angle between the centroid line and the axis is less than or equal to the first preset threshold.

6. A device for generating BIM models of building components based on point cloud data, characterized in that, include: The original point cloud acquisition module is used to acquire the original point cloud data of the building component and select the initial end cross-sectional plane of the building component based on the original point cloud data, wherein the initial end cross-sectional plane includes a first cross-sectional plane and a second cross-sectional plane. The regional point cloud acquisition module is used to take the point cloud data between the first and second cut planes as sub-point cloud data, and obtain multiple regional point cloud data based on the sub-point cloud data, wherein the multiple regional point cloud data belong to multiple different boards. The cross-section acquisition module is used to acquire multiple cross-sections between the first cutting plane and the second cutting plane, and to obtain multiple cross-section point cloud data based on the sub-point cloud data; The geometric model acquisition module is used to obtain point cloud data of each plate region within each cross section based on the multiple region point cloud data and the multiple cross section point cloud data, and to fit and segment to obtain a geometric model that matches the shape of each plate within each cross section based on the point cloud data of each plate region within each cross section. The BIM model acquisition module is used to obtain the average geometric model of multiple plates based on the geometric model that matches the shape of each plate in each section, and to obtain the BIM model based on the average geometric model of the multiple plates. The geometric model acquisition module is also used to take the intersection of the multiple region point cloud data and the multiple cross-sectional point cloud data to obtain the point cloud data belonging to each plate region in each cross-section. Based on the point cloud data of each plate region within each cross section, a segmentation algorithm is used to fit a geometric model that matches the shape of each plate within each cross section, thereby obtaining the geometric model corresponding to the point cloud data of each plate region within each cross section. Wherein, when the point cloud data of each plate region in each cross section contains only a single line, a double-line geometric model is formed by offsetting the single line according to the preset thickness; The BIM model acquisition module is also used to obtain the average geometric model of multiple plates based on the geometric models corresponding to multiple plate areas; Specifically, by extracting mathematical expressions from multiple geometric models belonging to the same board region, multiple mathematical expressions for the same board region are obtained. The average value of the parameters of the multiple mathematical expressions is then taken to obtain the average geometric model of the board. By connecting the average geometric models of the multiple plates, the target geometric model is obtained; The target geometric model is stretched according to the direction and length of the axis to obtain the BIM model.

7. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1-5.