Modeling method, system and equipment of reinforcement cage, medium and program product
Through artificial intelligence, the key point data of the steel bar frame and the digital model is generated, which solves the problems of low artificial modeling efficiency and high error rate in the existing technology, and realizes efficient and accurate steel bar frame modeling and full life cycle management.
Patent Information
- Application Number
- CN202510630476.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-16
- Publication Date
- 2025-08-08
AI Technical Summary
In the prior art, the modeling of steel bar skeletons relies on manual methods, resulting in low work efficiency, high error rate, high cost, and inability to efficiently and seamlessly flow, affecting the quality and efficiency of the entire life cycle management of prefabricated components.
The artificial intelligence method is used to obtain the key point data of the steel bar skeleton, analyze and generate horizontal and vertical steel bar center lines through a visual programming environment, create a digital model, and automatically process data with Revit and Dynamo software.
It improves the intelligence and automation of steel frame modeling, reduces the error rate, improves work efficiency, and supports the data consistency and accuracy of the entire life cycle management of prefabricated components.
Smart Images

Figure CN120449275A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the technical field of steel bar skeleton modeling, and in particular to a steel bar skeleton modeling method, system, equipment, medium and program product. Background Art
[0002] Industrialization and digitalization are one of the main directions of development of my country's construction industry. Vigorously promoting new building industrialization combined with digitalization has brought unprecedented opportunities. At the same time, it has also brought challenges to the construction industry in transforming from extensive to intensive, and from high energy consumption and high pollution to sustainable development.
[0003] Rebar engineering is a fundamental component of prefabricated components and a key step in achieving cost reduction, efficiency improvement, and industrialized management in prefabrication plants. Digitalization of the rebar skeleton is essential for intelligent, industrialized production in prefabricated plants. However, traditional methods of manually reviewing and screening project data are still used for rebar engineering. While easy to implement, these methods rely heavily on the operator's skills and expertise, resulting in a high workload and prone to errors. This can lead to data fragmentation across specialized systems. This not only reduces information utilization, but also leads to delays, omissions, or even loss of information, negatively impacting overall project quality and potentially increasing project time and costs.
[0004] In addition, in the current full life cycle management of prefabricated components (planning, design, manufacturing, transportation, installation, operation and maintenance), data cannot flow efficiently and seamlessly, information flow lags behind, and data is large and changes rapidly, affecting the timeliness of model construction. Design BIM models are often easily separated from the actual situation on site and become mere display. Summary of the Invention
[0005] The technical problem to be solved by the present disclosure is to overcome the defects of low work efficiency, high error rate and high cost in the existing technology of manually modeling steel skeletons, and to provide a steel skeleton modeling method, system, equipment, medium and program product.
[0006] The present disclosure solves the above technical problems through the following technical solutions:
[0007] A first aspect of the present disclosure provides a method for modeling a steel skeleton, the method comprising:
[0008] Get the key point data file of the steel skeleton;
[0009] Parsing the key point data file in a visual programming environment and extracting key point data from the key point data file;
[0010] Generating a horizontal reinforcement centerline and a vertical reinforcement centerline based on the key point data;
[0011] A digital model of the steel bar skeleton is created based on the center lines of the transverse steel bars and the center lines of the vertical steel bars.
[0012] Preferably, the step of obtaining the key point data file of the steel skeleton includes:
[0013] Obtain the three-dimensional coordinate information of the key points of the steel skeleton and the steel bar diameter information;
[0014] A key point data file of the steel bar skeleton is generated based on the three-dimensional coordinate information of the key points and the steel bar diameter information.
[0015] Preferably, before the step of parsing the key point data file in the visual programming environment and extracting the key point data from the key point data file, the modeling method further comprises:
[0016] Import the key point data file into a visual programming environment.
[0017] Preferably, the key point data file includes multiple worksheets, the multiple worksheets including at least one of an edge point_horizontal worksheet, an edge point_vertical worksheet, an overlap point_horizontal worksheet, an overlap point_vertical worksheet, and an intersection worksheet; the key point data includes at least one of edge points, overlap points, and intersection points; and the modeling method further includes:
[0018] The key point data are stored in a plurality of worksheets.
[0019] Preferably, the key point data file includes multiple worksheets, the multiple worksheets including at least one of an edge point_horizontal worksheet, an edge point_vertical worksheet, an overlap point_horizontal worksheet, an overlap point_vertical worksheet, and an intersection worksheet; the key point data includes at least one of an edge point, an overlap point, and an intersection; and the step of generating a horizontal steel bar centerline and a vertical steel bar centerline based on the key point data includes:
[0020] In response to the absence of overlap points in the key point data of the steel bar skeleton, sorting the edge point coordinate list in the edge point_horizontal worksheet in ascending order of y coordinates or x coordinates using a list sorting node, and grouping the edge points in the edge point_horizontal worksheet;
[0021] By splitting the nodes in the list, the edge points in each group are split into groups of two points according to the preset step size to obtain the edge points at both ends of the steel bar;
[0022] Extract the intersection points that are within the area of the edge point coordinate list from the intersection point worksheet;
[0023] Integrate the intersection points with the edge points at both ends to get a new point list;
[0024] generating a horizontal reinforcement centerline and a vertical reinforcement centerline based on the new point list;
[0025] or,
[0026] The step of generating the horizontal reinforcement center line and the vertical reinforcement center line based on the key point data further includes:
[0027] In response to the presence of overlap points in the key point data of the steel bar skeleton, the edge point coordinate list in the edge point_horizontal worksheet and the overlap point coordinate list in the overlap point_horizontal worksheet are merged to obtain a merged coordinate list;
[0028] The merged coordinate lists are merged into a one-dimensional coordinate list through the list compression node;
[0029] Divide the one-dimensional coordinate list into two groups according to the odd and even indexes to obtain two groups of edge points;
[0030] Split the two sets of edge points according to the preset step size by splitting the nodes in the list to obtain the edge points at both ends of the steel bar;
[0031] Extract the intersection points that are within the area of the edge point coordinate list from the intersection point worksheet;
[0032] Integrate the intersection points with the edge points at both ends to get a new point list;
[0033] The transverse reinforcement centerline and the vertical reinforcement centerline are generated based on the new point list.
[0034] Preferably, the modeling method further comprises:
[0035] Cost accounting is performed on the steel skeleton based on the digital model of the steel skeleton.
[0036] A second aspect of the present disclosure provides a modeling system for a steel skeleton, the modeling system comprising:
[0037] An acquisition module is used to obtain key point data files of the steel skeleton;
[0038] A parsing module, configured to parse the key point data file in a visual programming environment and extract key point data from the key point data file;
[0039] A generation module, configured to generate a horizontal reinforcement centerline and a vertical reinforcement centerline based on the key point data;
[0040] A creation module is used to create a digital model of a steel bar skeleton based on the center lines of the transverse steel bars and the center lines of the vertical steel bars.
[0041] Preferably, the acquisition module includes:
[0042] An acquisition unit, used to obtain three-dimensional coordinate information of key points of the steel bar skeleton and steel bar diameter information;
[0043] The first generating unit is configured to generate a key point data file of the steel bar skeleton based on the three-dimensional coordinate information of the key points and the steel bar diameter information.
[0044] Preferably, the modeling system further comprises:
[0045] The import module is used to import the key point data file into the visual programming environment.
[0046] Preferably, the key point data file includes multiple worksheets, including at least one of an edge point_horizontal worksheet, an edge point_vertical worksheet, an overlap point_horizontal worksheet, an overlap point_vertical worksheet, and an intersection worksheet; the key point data includes at least one of edge points, overlap points, and intersection points; and the modeling system further includes:
[0047] The storage module is used to store the key point data in multiple worksheets.
[0048] Preferably, the key point data file includes multiple worksheets, including at least one of an edge point_horizontal worksheet, an edge point_vertical worksheet, an overlap point_horizontal worksheet, an overlap point_vertical worksheet, and an intersection worksheet; the key point data includes at least one of edge points, overlap points, and intersection points; and the generation module includes:
[0049] a sorting unit for, in response to the absence of overlapped points in the key point data of the steel bar skeleton, sorting the edge point coordinate list in the edge point_horizontal worksheet in ascending order of y coordinates or x coordinates using a list sorting node, and grouping the edge points in the edge point_horizontal worksheet;
[0050] The first splitting unit is used to split the edge points in each group into groups of two points according to a preset step size by splitting the nodes in a list, so as to obtain the edge points at both ends of the steel bar;
[0051] An extraction unit, for extracting intersection points located within an area of an edge point coordinate list from a work table of intersection points;
[0052] The integration unit is used to integrate the intersection points with the edge points at both ends to obtain a new point list;
[0053] A second generating unit is configured to generate a horizontal reinforcement centerline and a vertical reinforcement centerline based on the new point list;
[0054] or,
[0055] The generation module also includes:
[0056] A first merging unit is configured to merge the edge point coordinate list in the edge point_horizontal worksheet and the overlap point coordinate list in the overlap point_horizontal worksheet in response to the overlap point in the key point data of the steel bar skeleton, to obtain a merged coordinate list;
[0057] A second merging unit, configured to merge the merged coordinate lists into a one-dimensional coordinate list through a list compression node;
[0058] The second splitting unit is used to split the one-dimensional coordinate list into two groups according to the odd and even indexes to obtain two groups of edge points;
[0059] The third splitting unit is used to split the two groups of edge points according to a preset step size by splitting the nodes in a list to obtain the edge points at both ends of the steel bar;
[0060] An extraction unit, for extracting intersection points located within an area of an edge point coordinate list from a work table of intersection points;
[0061] The integration unit is used to integrate the intersection points with the edge points at both ends to obtain a new point list;
[0062] The second generating unit is used to generate the horizontal reinforcement center line and the vertical reinforcement center line based on the new point list.
[0063] Preferably, the modeling system further comprises:
[0064] An accounting module is used to perform cost accounting on the steel skeleton based on the digital model of the steel skeleton.
[0065] A third aspect of the present disclosure provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and used to run on the processor, wherein when the processor executes the computer program, the steel skeleton modeling method described in the first aspect is implemented.
[0066] A fourth aspect of the present disclosure provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steel bar skeleton modeling method described in the first aspect.
[0067] A fifth aspect of the present disclosure provides a computer program product, comprising a computer program, which, when executed by a processor, implements the steel skeleton modeling method as described in the first aspect.
[0068] On the basis of conforming to the common sense in this field, the above-mentioned preferred conditions can be arbitrarily combined to obtain the preferred embodiments of the present disclosure.
[0069] The positive progress of this disclosure is:
[0070] The present invention adopts artificial intelligence methods to obtain digital models of steel skeletons, which is convenient for display and delivery, and serves the full life cycle management of steel skeletons of prefabricated components. It has a high degree of intelligence, high degree of automation, low cost, improved work efficiency and reduced error rate. BRIEF DESCRIPTION OF THE DRAWINGS
[0071] Figure 1 This is a flow chart of the steel skeleton modeling method provided in Example 1 of the present disclosure.
[0072] Figure 2 A schematic diagram of the modules of the steel skeleton modeling system provided in Example 2 of the present disclosure.
[0073] Figure 3 This is a structural diagram of an electronic device for implementing the steel skeleton modeling method of Example 3 of the present disclosure. DETAILED DESCRIPTION
[0074] The present disclosure is further illustrated below by way of examples, but the present disclosure is not limited to the scope of the examples.
[0075] In the embodiments of the present disclosure, prefixes such as "first" and "second" are used only to distinguish different description objects, and have no limiting effect on the position, order, priority, quantity or content of the described objects. In the embodiments of the present disclosure, the use of prefixes such as ordinal numbers to distinguish description objects does not constitute a limitation on the described objects. For the statement of the described objects, please refer to the description in the context of the claims or embodiments, and no unnecessary limitations should be constituted due to the use of such prefixes. In addition, in the description of this embodiment, unless otherwise specified, the meaning of "plurality" is two or more.
[0076] In the embodiments of the present disclosure, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved comply with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0077] Example 1
[0078] Figure 1 This is a flow chart of a steel skeleton modeling method provided in Example 1 of the present disclosure, as shown in FIG. Figure 1 As shown, the modeling method includes:
[0079] S1. Obtain key point data files of steel skeleton;
[0080] S2. parsing the key point data file in a visual programming environment and extracting the key point data in the key point data file;
[0081] S3. Generate the horizontal reinforcement center line and the vertical reinforcement center line based on the key point data;
[0082] S4. Create a digital model of the steel skeleton based on the center lines of the horizontal and vertical steel bars.
[0083] In this example, a master model file for the project is created in Revit (Building Information Modeling software), and reinforced concrete components are created using Revit's modeling tools. During this process, Dynamo (a storage platform) calls Revit's API (Application Programming Interface) to extract rebar-related information from the existing geometric data, providing the foundational data for the subsequent generation of a digital model of the rebar skeleton.
[0084] Furthermore, using the Select Model Element node in Dynamo, select the component entity created above. Next, using the create_rebar_from_curves_and_shape method, pass in the generated horizontal and vertical rebar centerlines, and set parameters such as the rebar shape (rebarShape), bar type (barType), start hook (startHook), end hook (endHook), and start hook direction (startHookOrient) to generate a digital model of the rebar skeleton. These parameters can be manually defined by the user at the initial stage, while the rebar diameter can be automatically determined by importing the corresponding diameter information of the intersection.
[0085] In an optional embodiment, S1 includes:
[0086] Obtain the three-dimensional coordinate information of the key points of the steel skeleton and the steel bar diameter information;
[0087] Generate a key point data file of the steel skeleton based on the three-dimensional coordinate information of the key points and the steel bar diameter information.
[0088] In this example, an object detection algorithm is used to extract prediction boxes for the key points of the rebar skeleton. Combined with an edge detection algorithm, the pixel coordinates of the intersection points are determined using the predicted box center points. The edge detection algorithm is also used to extract the outermost pixels, obtaining pixel coordinates of edge points and overlap points. Then, using the camera's calibrated internal and external parameters, the pixel coordinates are converted to 3D coordinates, resulting in the 3D spatial locations of the key points of the rebar skeleton.
[0089] To extract the rebar diameter, we first perform edge extraction at the intersection. By determining the pixel difference between the upper and lower edges of the rebar and combining this difference with the actual physical dimensions, we calculate the rebar diameter. To classify rebars in different orientations, we divide the edge points and overlap points into two sheets based on their extension direction: for example, Sheet(Edge Point_Horizontal) and Sheet(Edge Point_Vertical). Extension direction is determined by collecting pixel coordinates around the prediction box. If the number of pixels on the left and right sides is greater than the number on the top and bottom sides, it is considered horizontal extension; otherwise, it is considered vertical extension.
[0090] After obtaining global information about the entire rebar sheet through image registration technology, we stored the data for each key point in five Excel sheets: Sheet (Edge Point_Horizontal), Sheet (Edge Point_Vertical), Sheet (Overlap Point_Horizontal), Sheet (Overlap Point_Vertical), and Sheet (Intersection Point). Each sheet contains several rows of data, each representing a key point, including its 3D coordinates (X, Y, Z), intersection point, and rebar diameter information.
[0091] This embodiment uses an RGBD camera combined with an artificial intelligence algorithm to obtain the three-dimensional coordinates of key points of steel bars and diameter data, and combines them into an Excel file. The measured data is combined with BIM technology, and a digital model of the steel skeleton is generated through Dynamo to manage the data generated during the production process. This improves the digitization of steel bar engineering and is applied to paperless quality inspection, providing a data foundation for optimizing production and product quality.
[0092] This embodiment uses artificial intelligence methods to obtain a digital model of the steel skeleton, which is convenient for display and delivery, and serves the full life cycle management of the steel skeleton of prefabricated components. It has a high degree of intelligence, a high degree of automation, and low cost, which improves work efficiency and reduces the error rate.
[0093] In an optional embodiment, before S2, the modeling method further includes:
[0094] Import key point data files into the visual programming environment.
[0095] In this example, Dynamo software was used to import the generated key point data file for the steel bar skeleton into the Dynamo environment (a visual programming environment). The 3D coordinate information of the key points and the rebar diameter information stored in the Excel spreadsheet were read using the FilePath (file path) and Excel.Import (a method for importing data from an Excel spreadsheet into the backend) nodes. Different types of key point data (such as edge points, overlap points, and intersection points) were imported based on the sheet name. This allows Dynamo to automatically distinguish and process different types of key point data, facilitating subsequent operations and analysis.
[0096] In an optional embodiment, the key point data file includes multiple worksheets, the multiple worksheets including at least one of an edge point_horizontal worksheet, an edge point_vertical worksheet, an overlap point_horizontal worksheet, an overlap point_vertical worksheet, and an intersection worksheet; the key point data includes at least one of edge points, overlap points, and intersection points; and the modeling method further includes:
[0097] Store key point data in multiple worksheets.
[0098] In an optional embodiment, the key point data file includes multiple worksheets, the multiple worksheets including at least one of an edge point_horizontal worksheet, an edge point_vertical worksheet, an overlap point_horizontal worksheet, an overlap point_vertical worksheet, and an intersection worksheet; the key point data includes at least one of an edge point, an overlap point, and an intersection point; S3 includes:
[0099] In response to the absence of overlap points in the key point data of the steel bar skeleton, sorting the edge point coordinate list in the edge point_horizontal worksheet in ascending order of y coordinates or x coordinates using a list sorting node, and grouping the edge points in the edge point_horizontal worksheet;
[0100] By splitting the nodes in the list, the edge points in each group are split into groups of two points according to the preset step size to obtain the edge points at both ends of the steel bar;
[0101] Extract the intersection points that are within the area of the edge point coordinate list from the intersection point worksheet;
[0102] Integrate the intersection points with the edge points at both ends to get a new point list;
[0103] Generate horizontal and vertical reinforcement center lines based on the new point list;
[0104] In this embodiment, if there are no overlap points: First, the edge point coordinate list in Sheet(EdgePoint_Horizontal) is sorted in ascending order by y coordinate using the List.SortByKey node. If the y coordinates are similar, they are further sorted in ascending order by x coordinate. In this way, points on the same horizontal line are sorted by horizontal position (x), and all points are arranged from bottom to top according to vertical position (y). Next, the List.GroupByKey node is used to group these edge points according to their y coordinates. In this way, points within a certain y value range are considered a group. For each edge point in each group, the List.Chop node is used to split it into groups of two points with a step size of 2, thereby obtaining the edge points at both ends of each steel bar. Assuming that the edge points of a steel bar are (x1, y1) and (x2, y2), all intersection points located in the (X1, Y1, Z1) and (x2, y2, Z2) areas are extracted from Sheet(IntersectionPoints). These intersection points are integrated with the edge points at both ends to generate a new point list. Finally, the PolyCurve.ByPoints node is used to generate the center lines of the horizontal and vertical reinforcement based on the integrated new point list.
[0105] It should be noted that the sorting rule for the vertical reinforcement is to first sort them in ascending order by x-coordinate and then in ascending order by y-coordinate. In this step, the center line of the vertical reinforcement skeleton is also generated in the above manner.
[0106] In an optional embodiment, S3 further includes:
[0107] In response to the presence of overlap points in the key point data of the steel bar skeleton, the edge point coordinate list in the edge point_horizontal worksheet and the overlap point coordinate list in the overlap point_horizontal worksheet are merged to obtain a merged coordinate list;
[0108] The merged coordinate lists are merged into a one-dimensional coordinate list through the list compression node;
[0109] Divide the one-dimensional coordinate list into two groups according to the odd and even indexes to obtain two groups of edge points;
[0110] Split the two sets of edge points according to the preset step size by splitting the nodes in the list to obtain the edge points at both ends of the steel bar;
[0111] Extract the intersection points that are within the area of the edge point coordinate list from the intersection point worksheet;
[0112] Integrate the intersection points with the edge points at both ends to get a new point list;
[0113] Generates horizontal and vertical reinforcement centerlines based on the new point list.
[0114] In this example, when processing imported key points, they must first be organized and connected according to specific rules to generate the required rebar skeleton. Specifically, if there are overlapping points: If overlapping points exist, the coordinate lists in Sheet(EdgePoint_Horizontal) and Sheet(OverlapPoint_Horizontal) are merged and then combined into a one-dimensional list using the List.Flatten node. The merged coordinate list is divided into two groups based on odd and even indices, representing two sets of edge points. Then, using the List.Chop node, the two sets of edge points are further split with a step size of 2. Each pair of split points represents the two end edge points of a rebar.
[0115] Assuming the edge points of a rebar are (X1, Y1, Z1) and (X2, Y2, Z2), all intersection points within the (X1, Y1, Z1) and (X2, Y2, Z2) regions are extracted from Sheet (Intersection Points) and integrated with the edge points at both ends. Finally, a PolyCurve.ByPoints node is used to generate the centerlines of the horizontal and vertical bars.
[0116] To further improve the accuracy of rebar centerline generation, the present invention can also preferably incorporate Python scripting to process the imported key point data. Python programming can be used to implement more precise fitting algorithms, such as polynomial fitting or neural network fitting, to perform a more precise linear fit of the rebar trajectory, thereby generating a more accurate transverse rebar centerline. This approach not only effectively reduces errors but also adapts to varying structural complexities through a self-learning mechanism.
[0117] In an optional embodiment, the modeling method further includes:
[0118] Cost accounting of the steel skeleton is carried out based on the digital model of the steel skeleton.
[0119] In this example, the digital model of the rebar skeleton created can not only be used for cost accounting, but also help optimize the design by comparing it with the design model. Combining Python scripts with the Revit API, it is possible to retrieve the rebar set in the design model, compare information such as rebar diameter, spacing, and length, and generate a quality inspection report.
[0120] This embodiment uses computer vision technology to capture key points of the rebar skeleton (e.g., edge points, overlap points, and intersections), as well as rebar diameters, to generate an Excel file. This file is then combined with Revit and Dynamo software to create a digital model of the rebar skeleton. Specifically, a Dynamo script is written to capture the 3D coordinates of the entire rebar skeleton using an RGBD camera. This file, along with other Excel files, is then imported into the Dynamo environment, automatically parsing and extracting the key point data file. Dynamo's programming interface and Revit's API are then used to automatically create a digital model of the rebar skeleton in Revit. This artificial intelligence approach to generating a digital model of the rebar skeleton facilitates presentation and delivery, serving the full lifecycle management of prefabricated component rebar skeletons with a high degree of intelligence and automation. This improves work efficiency and reduces error rates, facilitating rebar quality inspection, cost management, and subsequent construction guidance, further facilitating full lifecycle management. Furthermore, by using Dynamo to read external files, the system can customize the files and run scripts based on project requirements, converting external data into project rebar. This provides high flexibility and customizability, improving data consistency and accuracy.
[0121] Example 2
[0122] Corresponding to the aforementioned embodiment of a steel skeleton modeling method, the present disclosure also provides an embodiment of a steel skeleton modeling system.
[0123] Figure 2 A schematic diagram of a module of a steel skeleton modeling system provided in Example 2 of the present disclosure, such as Figure 2 As shown, the modeling system includes:
[0124] An acquisition module 21 is used to obtain a key point data file of a steel bar skeleton;
[0125] The parsing module 22 is used to parse the key point data file in a visual programming environment and extract the key point data in the key point data file;
[0126] A generating module 23, for generating a horizontal reinforcement centerline and a vertical reinforcement centerline based on key point data;
[0127] The creation module 24 is used to create a digital model of the steel bar skeleton based on the center line of the transverse steel bar and the center line of the vertical steel bar.
[0128] In this example, the main project model file is created in Revit, and reinforced concrete components are created using Revit's modeling tools. During this process, Dynamo uses Revit's API to extract rebar-related information from the existing geometric data, providing the basic data for the subsequent generation of a digital model of the rebar skeleton.
[0129] Furthermore, using the Select Model Element node in Dynamo, select the component entity created above. Next, using the create_rebar_from_curves_and_shape method, pass in the generated horizontal and vertical rebar centerlines, and set parameters such as the rebar shape (rebarShape), bar type (barType), start hook (startHook), end hook (endHook), and start hook direction (startHookOrient) to generate a digital model of the rebar skeleton. These parameters can be manually defined by the user at the initial stage, while the rebar diameter can be automatically determined by importing the corresponding diameter information of the intersection.
[0130] In an optional embodiment, the acquisition module includes:
[0131] An acquisition unit, used to obtain three-dimensional coordinate information of key points of the steel bar skeleton and steel bar diameter information;
[0132] The first generating unit is used to generate a key point data file of the steel bar skeleton based on the three-dimensional coordinate information of the key points and the steel bar diameter information.
[0133] In this example, an object detection algorithm is used to extract prediction boxes for the key points of the rebar skeleton. Combined with an edge detection algorithm, the pixel coordinates of the intersection points are determined using the predicted box center points. The edge detection algorithm is also used to extract the outermost pixels, obtaining pixel coordinates of edge points and overlap points. Then, using the camera's calibrated internal and external parameters, the pixel coordinates are converted to 3D coordinates, resulting in the 3D spatial locations of the key points of the rebar skeleton.
[0134] To extract the rebar diameter, we first perform edge extraction at the intersection. By determining the pixel difference between the upper and lower edges of the rebar and combining the relationship between the pixels and the actual physical dimensions, we calculate the rebar diameter. To classify rebars in different orientations, we divide the edge points and overlap points into two sheets based on their extension direction: for example, Sheet(Edge Point_Horizontal) and Sheet(Edge Point_Vertical). The extension direction is determined by collecting pixel coordinates around the prediction box. If the number of pixels on the left and right sides is greater than the number on the top and bottom sides, it is considered horizontal extension; otherwise, it is considered vertical extension.
[0135] After obtaining global information about the entire rebar sheet through image registration technology, we stored the data for each key point in five Excel sheets: Sheet (Edge Point_Horizontal), Sheet (Edge Point_Vertical), Sheet (Overlap Point_Horizontal), Sheet (Overlap Point_Vertical), and Sheet (Intersection Point). Each sheet contains several rows of data, each representing a key point, including its 3D coordinates (X, Y, Z), intersection point, and rebar diameter information.
[0136] This embodiment uses an RGBD camera combined with an artificial intelligence algorithm to obtain the three-dimensional coordinates of key points of steel bars and diameter data, and combines them into an Excel file. The measured data is combined with BIM technology, and a digital model of the steel skeleton is generated through Dynamo to manage the data generated during the production process. This improves the digitization of steel bar engineering and is applied to paperless quality inspection, providing a data foundation for optimizing production and product quality.
[0137] This embodiment uses artificial intelligence methods to obtain a digital model of the steel skeleton, which is convenient for display and delivery, and serves the full life cycle management of the steel skeleton of prefabricated components. It has a high degree of intelligence, a high degree of automation, and low cost, which improves work efficiency and reduces the error rate.
[0138] In an optional embodiment, the modeling system further includes:
[0139] Import module, used to import key point data files into the visual programming environment.
[0140] In this example, Dynamo software was used to import the generated key point data file for the steel bar skeleton into the Dynamo environment. Using the FilePath and Excel.Import nodes, the 3D coordinates of the key points and the rebar diameter information stored in an Excel spreadsheet were read. Different types of key point data (such as edge points, overlap points, and intersections) were imported based on the sheet name. This allowed Dynamo to automatically distinguish and process each type of key point data, facilitating subsequent operations and analysis.
[0141] In an optional embodiment, the key point data file includes multiple worksheets, the multiple worksheets including at least one of an edge point_horizontal worksheet, an edge point_vertical worksheet, an overlap point_horizontal worksheet, an overlap point_vertical worksheet, and an intersection worksheet; the key point data includes at least one of edge points, overlap points, and intersection points; and the modeling system further includes:
[0142] The storage module is used to store key point data in multiple worksheets.
[0143] In an optional embodiment, the key point data file includes multiple worksheets, the multiple worksheets including at least one of an edge point_horizontal worksheet, an edge point_vertical worksheet, an overlap point_horizontal worksheet, an overlap point_vertical worksheet, and an intersection point worksheet; the generation module includes:
[0144] a sorting unit for, in response to the absence of overlapped points in the key point data of the steel bar skeleton, sorting the edge point coordinate list in the edge point_horizontal worksheet in ascending order of y coordinates or x coordinates using a list sorting node, and grouping the edge points in the edge point_horizontal worksheet;
[0145] The first splitting unit is used to split the edge points in each group into groups of two points according to a preset step size by splitting the nodes in a list, so as to obtain the edge points at both ends of the steel bar;
[0146] An extraction unit, for extracting intersection points located within an area of an edge point coordinate list from a work table of intersection points;
[0147] The integration unit is used to integrate the intersection points with the edge points at both ends to obtain a new point list;
[0148] a second generating unit for generating a horizontal reinforcement centerline and a vertical reinforcement centerline based on the new point list;
[0149] In this embodiment, if there are no overlap points: First, the edge point coordinate list in Sheet(EdgePoint_Horizontal) is sorted in ascending order by y coordinate using the List.SortByKey node. If the y coordinates are similar, they are further sorted in ascending order by x coordinate. In this way, points on the same horizontal line are sorted by horizontal position (x), and all points are arranged from bottom to top according to vertical position (y). Next, the List.GroupByKey node is used to group these edge points according to their y coordinates. In this way, points within a certain y value range are considered a group. For each edge point in each group, the List.Chop node is used to split it into groups of two points with a step size of 2, thereby obtaining the edge points at both ends of each steel bar. Assuming that the edge points of a steel bar are (x1, y1) and (x2, y2), all intersection points located in the (X1, Y1, Z1) and (x2, y2, Z2) areas are extracted from Sheet(IntersectionPoints). These intersection points are integrated with the edge points at both ends to generate a new point list. Finally, the PolyCurve.ByPoints node is used to generate the center lines of the horizontal and vertical reinforcement based on the integrated new point list.
[0150] It should be noted that the sorting rule for the vertical reinforcement is to first sort them in ascending order by x-coordinate and then in ascending order by y-coordinate. In this step, the center line of the vertical reinforcement skeleton is also generated in the above manner.
[0151] In an optional embodiment, the generating module further includes:
[0152] A first merging unit is configured to merge the edge point coordinate list in the edge point_horizontal worksheet and the overlap point coordinate list in the overlap point_horizontal worksheet in response to the overlap point in the key point data of the steel bar skeleton, to obtain a merged coordinate list;
[0153] A second merging unit, configured to merge the merged coordinate lists into a one-dimensional coordinate list through a list compression node;
[0154] The second splitting unit is used to split the one-dimensional coordinate list into two groups according to the odd and even indexes to obtain two groups of edge points;
[0155] The third splitting unit is used to split the two groups of edge points according to a preset step size by splitting the nodes in a list to obtain the edge points at both ends of the steel bar;
[0156] An extraction unit, for extracting intersection points located within an area of an edge point coordinate list from a work table of intersection points;
[0157] The integration unit is used to integrate the intersection points with the edge points at both ends to obtain a new point list;
[0158] The second generating unit is used to generate the horizontal reinforcement center line and the vertical reinforcement center line based on the new point list.
[0159] In this embodiment, when processing the imported key points, they first need to be sorted and connected according to specific rules to generate the required steel skeleton. Specifically, if there are overlap points: If there are overlap points, merge the coordinate lists in Sheet(edge point_horizontal) and Sheet(overlap point_horizontal), and then use the List.Flatten node to merge them into a one-dimensional list. The merged coordinate list is divided into two groups according to the odd and even indexes, representing two groups of edge points respectively. Then, use the List.Chop node to further split the two groups of edge points with a step size of 2. Each pair of split points represents the edge points at both ends of a steel bar.
[0160] Assuming the edge points of a rebar are (X1, Y1, Z1) and (X2, Y2, Z2), all intersection points within the (X1, Y1, Z1) and (X2, Y2, Z2) regions are extracted from Sheet (Intersection Points) and integrated with the edge points at both ends. Finally, a PolyCurve.ByPoints node is used to generate the centerlines of the horizontal and vertical bars.
[0161] To further improve the accuracy of rebar centerline generation, the present invention can also preferably incorporate Python scripting to process the imported key point data. Python programming can be used to implement more precise fitting algorithms, such as polynomial fitting or neural network fitting, to perform a more precise linear fit of the rebar trajectory, thereby generating a more accurate transverse rebar centerline. This approach not only effectively reduces errors but also adapts to varying structural complexities through a self-learning mechanism.
[0162] In an optional embodiment, the modeling system further includes:
[0163] The accounting module is used to perform cost accounting for the steel skeleton based on the digital model of the steel skeleton.
[0164] In this example, the digital model of the rebar skeleton created can not only be used for cost accounting, but also help optimize the design by comparing it with the design model. Combining Python scripts with the Revit API, it is possible to retrieve the rebar set in the design model, compare information such as rebar diameter, spacing, and length, and generate a quality inspection report.
[0165] This embodiment uses computer vision technology to capture key points of the rebar skeleton (e.g., edge points, overlap points, and intersections), as well as rebar diameters, to generate an Excel file. This file is then combined with Revit and Dynamo software to create a digital model of the rebar skeleton. Specifically, a Dynamo script is written to capture the 3D coordinates of the entire rebar skeleton using an RGBD camera. This file, along with other Excel files, is then imported into the Dynamo environment, automatically parsing and extracting the key point data file. Dynamo's programming interface and Revit's API are then used to automatically create a digital model of the rebar skeleton in Revit. This artificial intelligence approach to generating a digital model of the rebar skeleton facilitates presentation and delivery, serving the full lifecycle management of prefabricated component rebar skeletons with a high degree of intelligence and automation. This improves work efficiency and reduces error rates, facilitating rebar quality inspection, cost management, and subsequent construction guidance, further facilitating full lifecycle management. Furthermore, by using Dynamo to read external files, the system can customize the files and run scripts based on project requirements, converting external data into project rebar. This provides high flexibility and customizability, improving data consistency and accuracy.
[0166] Since the system embodiments generally correspond to the method embodiments, reference will be made to the description of the method embodiments for relevant details. The system embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separate, and the components of the units may or may not be physical units, i.e., they may be located in one place or distributed across multiple network units. Some or all of the modules may be selected based on actual needs to achieve the objectives of the disclosed solution.
[0167] Example 3
[0168] Figure 3 This is a structural diagram of an electronic device shown in Example 3 of the present disclosure, wherein the electronic device includes a memory, a processor, and a computer program stored in the memory and used to run on the processor, and when the processor executes the computer program, it implements the steel skeleton modeling method described in any of the above embodiments. Figure 3 The electronic device 90 shown is only an example and should not limit the functionality and scope of use of the embodiments of the present disclosure.
[0169] like Figure 3 As shown, the electronic device 90 may be a general-purpose computing device, such as a server device. Components of the electronic device 90 may include, but are not limited to, the at least one processor 91, the at least one memory 92, and a bus 93 connecting different system components (including the memory 92 and the processor 91).
[0170] The bus 93 includes a data bus, an address bus, and a control bus.
[0171] The memory 92 may include a volatile memory, such as a random access memory (RAM) 921 and / or a cache memory 922 , and may further include a read-only memory (ROM) 923 .
[0172] The memory 92 may also include a program tool 925 (or utility) having a set (at least one) of program modules 924, such program modules 924 including but not limited to: an operating system, one or more application programs, other program modules and program data, each of which or some combination may include an implementation of a network environment.
[0173] The processor 91 executes various functional applications and data processing by running the computer program stored in the memory 92, such as the steel bar skeleton modeling method provided in any of the above embodiments.
[0174] The electronic device 90 can also communicate with one or more external devices 94 (e.g., keyboards, pointing devices, etc.). Such communication can be performed through an input / output (I / O) interface 95. In addition, the electronic device 90 can also communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network, such as the Internet) through a network adapter 96. Figure 3 As shown, the network adapter 96 communicates with other modules of the electronic device 90 via the bus 93. It should be understood that, although not shown in the figure, other hardware and / or software modules can be used in conjunction with the electronic device 90, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID (RAID) systems, tape drives, and data backup storage systems.
[0175] It should be noted that although several units / modules or sub-units / modules of the electronic device are mentioned in the detailed description above, this division is merely exemplary and not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more units / modules described above can be embodied in one unit / module. Conversely, the features and functions of one unit / module described above can be further divided and embodied by multiple units / modules.
[0176] Example 4
[0177] Embodiment 4 of the present disclosure further provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steel skeleton modeling method provided in any of the above embodiments.
[0178] The readable storage medium may include, but is not limited to, a portable disk, a hard disk, a random access memory, a read-only memory, an erasable programmable read-only memory, an optical storage device, a magnetic storage device, or any suitable combination thereof.
[0179] Example 5
[0180] Embodiment 5 of the present disclosure further provides a computer program product, comprising a computer program, which, when executed by a processor, implements any of the above-mentioned methods for modeling a steel skeleton.
[0181] The program code for executing the computer program product of the present disclosure may be written in any combination of one or more programming languages, and the program code may be executed entirely on the user device, partially on the user device, as a standalone software package, partially on the user device and partially on a remote device, or entirely on the remote device.
[0182] While specific embodiments of the present disclosure have been described above, those skilled in the art will appreciate that these are merely illustrative and that the scope of protection of the present disclosure is defined by the appended claims. Those skilled in the art may make various changes or modifications to these embodiments without departing from the principles and essence of the present disclosure, and such changes and modifications are intended to fall within the scope of protection of the present disclosure.
Claims
1. A method for modeling a steel skeleton, characterized in that: The modeling method includes: Get the key point data file of the steel skeleton; Parsing the key point data file in a visual programming environment and extracting key point data from the key point data file; Generating a horizontal reinforcement centerline and a vertical reinforcement centerline based on the key point data; A digital model of the steel bar skeleton is created based on the center lines of the transverse steel bars and the center lines of the vertical steel bars.
2. The method for modeling a steel skeleton according to claim 1, wherein: The step of obtaining the key point data file of the steel skeleton includes: Obtain the three-dimensional coordinate information of the key points of the steel skeleton and the steel bar diameter information; A key point data file of the steel bar skeleton is generated based on the three-dimensional coordinate information of the key points and the steel bar diameter information.
3. The method for modeling a steel skeleton according to claim 1, wherein: Before the step of parsing the key point data file in the visual programming environment and extracting the key point data from the key point data file, the modeling method further includes: Import the key point data file into a visual programming environment.
4. The method for modeling a steel skeleton according to claim 1, wherein: The key point data file includes a plurality of worksheets, the plurality of worksheets including at least one of an edge point_horizontal worksheet, an edge point_vertical worksheet, an overlap point_horizontal worksheet, an overlap point_vertical worksheet, and an intersection worksheet; the key point data includes at least one of an edge point, an overlap point, and an intersection point; the modeling method further includes: The key point data are stored in a plurality of worksheets.
5. The method for modeling a steel skeleton according to claim 1, wherein: The key point data file includes multiple worksheets, the multiple worksheets including at least one of an edge point_horizontal worksheet, an edge point_vertical worksheet, an overlap point_horizontal worksheet, an overlap point_vertical worksheet, and an intersection worksheet; the key point data includes at least one of an edge point, an overlap point, and an intersection; and the step of generating a horizontal steel bar centerline and a vertical steel bar centerline based on the key point data includes: In response to the absence of overlap points in the key point data of the steel bar skeleton, sorting the edge point coordinate list in the edge point_horizontal worksheet in ascending order of y coordinates or x coordinates using a list sorting node, and grouping the edge points in the edge point_horizontal worksheet; By splitting the nodes in the list, the edge points in each group are split into two points in a group according to the preset step size to obtain the edge points at both ends of the steel bar; Extract the intersection points that are within the area of the edge point coordinate list from the intersection point worksheet; Integrate the intersection points with the edge points at both ends to get a new point list; generating a horizontal reinforcement centerline and a vertical reinforcement centerline based on the new point list; or, The step of generating the horizontal reinforcement center line and the vertical reinforcement center line based on the key point data further includes: In response to the presence of overlap points in the key point data of the steel bar skeleton, the edge point coordinate list in the edge point_horizontal worksheet and the overlap point coordinate list in the overlap point_horizontal worksheet are merged to obtain a merged coordinate list; The merged coordinate lists are merged into a one-dimensional coordinate list through the list compression node; Divide the one-dimensional coordinate list into two groups according to the odd and even indexes to obtain two groups of edge points; Split the two sets of edge points according to the preset step size by splitting the nodes in the list to obtain the edge points at both ends of the steel bar; Extract the intersection points that are within the area of the edge point coordinate list from the intersection point worksheet; Integrate the intersection points with the edge points at both ends to get a new point list; The transverse reinforcement centerline and the vertical reinforcement centerline are generated based on the new point list.
6. The method for modeling a steel skeleton according to claim 1, wherein: The modeling method further comprises: Cost accounting is performed on the steel skeleton based on the digital model of the steel skeleton.
7. A steel skeleton modeling system, characterized in that: The modeling system includes: An acquisition module is used to obtain key point data files of the steel skeleton; A parsing module, configured to parse the key point data file in a visual programming environment and extract key point data from the key point data file; A generation module, configured to generate a horizontal reinforcement centerline and a vertical reinforcement centerline based on the key point data; A creation module is used to create a digital model of a steel bar skeleton based on the center lines of the transverse steel bars and the center lines of the vertical steel bars.
8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and configured to run on the processor, wherein: When the processor executes the computer program, the method for modeling a steel skeleton according to any one of claims 1 to 6 is implemented.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method for modeling a steel skeleton according to any one of claims 1 to 6 is implemented.
10. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the method for modeling a steel skeleton according to any one of claims 1 to 6 is implemented.