Apparatus, method, and program for creating 3D models
By clustering and approximating curves within point cloud data using DBSCAN and RANSAC, the method addresses the challenge of unevenly spaced points to create accurate 3D models of thin objects like cables, even when some point clouds are missing.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-11-25
- Publication Date
- 2026-03-17
AI Technical Summary
Existing fixed three-dimensional laser scanners produce dense point clouds at short distances and sparse point clouds at long distances, making it difficult to create accurate 3D models of thin objects like overhead cables near utility poles, as points are not evenly spaced and some portions of the point cloud are missing.
The method involves clustering point cloud data, extracting curves through these clusters, and concatenating point clouds that align with these curves to create a 3D model, using techniques like DBSCAN and RANSAC for clustering and curve approximation.
This approach allows for the creation of a 3D model of thin objects regardless of the distance between points, effectively modeling cables and other thin structures by identifying and connecting point clouds that coincide with catenary curves.
Smart Images

Figure 0007831492000001 
Figure 0007831492000002 
Figure 0007831492000003
Abstract
Description
Technical Field
[0001] The present disclosure relates to a technique for creating a three-dimensional model from point cloud data representing three-dimensional coordinates.
Background Art
[0002] A technique for three-dimensionally modeling outdoor structures using an in-vehicle three-dimensional laser scanner (Mobile Mapping System: MMS) has been developed (see, for example, Patent Document 1). The technique of Patent Document 1 creates a three-dimensional model after creating point clouds and scan lines on a space where no point clouds exist.
[0003] Since MMS can acquire point clouds while moving along an object, the point clouds in the measurement range can be acquired evenly and at a certain interval. On the other hand, there is a need to create a three-dimensional model using point clouds acquired by a fixed three-dimensional laser scanner. However, the fixed three-dimensional laser scanner produces a dense point cloud at a short distance from the measurement point and a sparse point cloud at a long distance, and this characteristic is显著 manifested depending on the size and shape of the object.
[0004] In the prior art, points are complemented as scan lines up to a certain threshold of the distance between point clouds. However, when the distance between point clouds is large and they are not regarded as point clouds on the same object, the points between them cannot be complemented. Therefore, in 3D modeling using a fixed three-dimensional laser scanner, there is a problem that it is difficult to create a three-dimensional model of a thin object such as an overhead cable near a utility pole.
Prior Art Documents
Patent Documents
[0005]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0006] This disclosure aims to enable the creation of a 3D model even for objects where the points are not spaced equally apart and only a portion of the point cloud exists. [Means for solving the problem]
[0007] The apparatus and method disclosed herein are apparatus and method for creating a three-dimensional model of a small-diameter object from point cloud data representing three-dimensional coordinates, Clustering is performed on the points included in the aforementioned point cloud data. For at least one of the clusters, find the curve that passes through the points within the cluster. Extract the point cloud located on the curve that coincides with the aforementioned curve, A three-dimensional model of the object is created by concatenating the extracted point clouds. [Effects of the Invention]
[0008] According to this disclosure, a 3D model of an object can be created regardless of the distance between 3D points. Therefore, this disclosure makes it possible to create a 3D model even for objects where the points are not spaced equally apart and only a portion of the point cloud exists. [Brief explanation of the drawing]
[0009] [Figure 1] An example of 3D point cloud data is shown. [Figure 2] This shows an example of a 3D model in which structures are represented as objects. [Figure 3] This disclosure provides an example of a method for creating a 3D model from point cloud data. [Figure 4] An example of a point cloud acquired with a 3D laser scanner is shown. [Figure 5] An example of clusters and approximation curves is shown. [Figure 6] An example of a 3D model created from the point cloud data disclosed herein is shown. [Figure 7] This is an explanatory diagram for the process of excluding point clouds that are too large in the z-axis direction from the cluster. [Figure 8] Shows an example of the system configuration of the present disclosure. [Figure 9] Shows an example of the flow of processing in functional unit 3-2. [Figure 10] Shows an example of the flow of processing in functional unit 3-2. [Figure 11] Shows an example of the flow of processing in functional unit 3-3. [Figure 12] Shows an example of the flow of processing in functional unit 3-4. [Figure 13] Shows an example of the point cloud data that functional unit 3-2 reads as input. [Figure 14] Shows an example of a cable model. [Figure 15] Shows an example when actually creating a model from a point cloud.
Mode for Carrying Out the Invention
[0010] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings. Note that the present disclosure is not limited to the embodiments shown below. These examples are merely illustrative, and the present disclosure can be implemented in various modified and improved forms based on the knowledge of those skilled in the art. In the present specification and drawings, components having the same reference numerals indicate the same components as each other.
[0011] (Overview of the Present Disclosure) The present disclosure is an apparatus and method for creating a three-dimensional model of an object from point cloud data representing three-dimensional coordinates acquired by a three-dimensional laser scanner. FIG. 1 shows an example of point cloud data. The point cloud data is data representing the surface shape of an object such as a structure as a set of points 91, and each point 91 represents the three-dimensional coordinates of the surface of the structure. By forming a line 92 that connects the points 91 of the three-dimensional point cloud data, a three-dimensional model in which the structure is objectified can be created. For example, as shown in FIG. 2, a three-dimensional utility pole model 111 and a cable model 112 can be created.
[0012] FIG. 3 shows an example of the method of the present embodiment. Step S11 of performing clustering on the points 91 included in the point cloud data; Step S12 of obtaining a curve passing through the points 91 within at least one of the clusters generated by the clustering; Step S13 of extracting the point cloud arranged on the curve that coincides with the curve; Step S14 of generating a three-dimensional model of the object by connecting the extracted point cloud; It has.
[0013] In the present disclosure, in order to connect the points located on the curve, even when the distance between points is greatly separated, a three-dimensional model in which the point cloud on the same object is objectified can be created. For this reason, the present disclosure can create a cable model 112 even for a thin object such as an aerial cable, a suspension wire, or a horizontal branch wire. Therefore, the present disclosure can detect the state of thin target equipment such as an aerial cable.
[0014] (First Embodiment) In the present embodiment, an example is shown in which the thin target equipment is a cable and the curve is a catenary curve. In step S11, a point cloud mass assumed to be other than the cable is automatically deleted, and a cable candidate cluster is generated. For example, when the point cloud is points d11 to d48 as shown in FIG. 4, points d38 to d48 and d49 to d59 corresponding to the pole model 111 are determined, the pole model 111 is generated, and points d38 to d48 and d49 to d59 are deleted. As a result, cable candidate clusters 121 to 125 as shown in FIG. 5 are generated. At this time, the ground H0 at the location where the cable is arranged can be specified using points d38 to d48 and d49 to d59.
[0015] In step S11, the specific method for deleting clusters of points other than cables is arbitrary. For example, the point cloud can be converted into voxels. When viewing the voxels in the xy plane, if P% or more of the point cloud is contained within an m x n grid using DBSCAN, it can be deleted as a cluster of points other than cables, such as houses or the ground. Here, DBSCAN is a clustering method that considers a cluster of points that meet the condition of having a certain number of points within a threshold distance from a given point as a single cluster.
[0016] Then, in step S12, a straight line in 3D is calculated from the point cloud of the generated cable candidate clusters 121-125 by straight line approximation using RANSAC, and the catenary curve 131 is calculated using that straight line. On the other hand, since cables appear as straight lines in the xy plane, straight line approximation is performed from the point cloud of cable candidate clusters 121-125. This makes it possible to extract the point cloud corresponding to cables from the point cloud included in cable candidate clusters 121-125. Using the point cloud that falls within the residual using the straight line corresponding to the cable, the catenary curve 131 including the z direction is calculated. Here, the xy plane refers to a plane parallel to the ground, for example, the x axis can be north-south and the y axis can be east-west. The z axis represents an axis perpendicular to the ground and is the axis in the direction of height.
[0017] In step S14, a point cloud is extracted that lies on the same line in the xy-plane and lies on the catenary curve 131. Then, using all the extracted point clouds, a cable model 112 is created as shown in Figure 6.
[0018] Step S12 may omit the linear approximation. In this case, for example, RANSAC is used to directly calculate the catenary curve from areas with a high density of points, such as cluster 123 in the central part of the pole models 111. Then, in step S13, the point cloud of candidate cable models is extracted again from that catenary curve. This allows for the creation of a more accurate cable model by recreating the cable model 112 using the extracted point cloud in step S14.
[0019] When calculating the catenary curve 131 in step S12, the remaining point cloud shown in Figure 5 is clustered in 3D using DBSCAN. For example, from the point clouds included in clusters 121 to 125, clusters that are linear and have an angle of a certain magnitude or greater in the z-axis are selected as cable candidate clusters using RANSAC. In this embodiment, an example is shown where clusters 121 to 125 correspond to cable candidate clusters. Here, RANSAC is a learning method that estimates the parameters of the mathematical model to be calculated by excluding the influence of outliers as much as possible from data that includes outliers.
[0020] In this embodiment, the straight-line distance between endpoints calculated by RANSAC for cable candidate clusters is stored as the cluster length. Then, cluster 123, which has the largest calculated cluster length, is selected. Next, RANSAC linear approximation is performed in the xy-plane for the point cloud included in cluster 123. Since a RANSAC line can be represented by a "fixed point" and a "value obtained by multiplying the direction vector by the variable T", any point included in cluster 123 is set as a fixed point, and catenary approximation is performed with the z direction as a function of T. This allows the catenary curve 131 to be calculated.
[0021] From the point cloud, clusters 121, 122, 124, and 125 (excluding cluster 123) that lie on a straight line in the xy-plane and on the catenary curve 131 in 3D space are extracted, and the extracted clusters are determined to be connected clusters constituting the same object. Finally, for each extracted connected cluster, a cable model 112 is created from RANSAC's curve approximation using all the points included in the connected cluster.
[0022] In this embodiment, since the cable model is created using clusters that lie on the catenary curve 131, it can be used to create the model even if the distance between clusters is not constant. Therefore, this embodiment can create a cable model regardless of the distance between points. In addition, in this embodiment, the model is created after deleting the point cloud other than cable candidates, thus speeding up the process.
[0023] (Second embodiment) Point clouds that are too large in the z-axis direction are likely to represent utility poles or walls. Therefore, in this embodiment, when deleting point clouds other than cables in step S11, point clouds that are too large in the z-axis direction are excluded from the cluster.
[0024] For example, in this embodiment, as shown in Figure 7, points d38-d48 and d49-d59 are used to identify the ground level H0 at the location where the cable is placed. Then, a point cloud is extracted from the ground level H0 at a certain height between H1 and H2 (for example, between 4m and 8m), and then clustered in 3D using DBSCAN. Subsequently, as shown in Figure 5, from the cluster point cloud, RANSAC is used to select cable candidate clusters from among clusters that are linear and have a certain angle along the z axis, and that are within a certain size standard.
[0025] In this embodiment, clustering is performed after deleting point clouds other than cable candidates, thereby speeding up the process.
[0026] (Overall structure) Figure 8 shows an example of the system configuration of the present disclosure. The system of the present disclosure comprises a fixed 3D laser scanner 1, a storage medium 2, and an arithmetic processing unit 3. The arithmetic processing unit 3 comprises a cable model extraction unit 3-1 and various equipment information calculation units 3-5. The device of the present disclosure comprises an arithmetic processing unit 3, and may also include a storage medium 2 in addition to these. The device of the present disclosure can also be realized by a computer and a program, and the program can be recorded on a recording medium or provided via a network.
[0027] The system disclosed herein stores point cloud data acquired by a fixed 3D laser scanner 1 in a storage medium 2. The point cloud to be stored is, for example, the type shown in Figure 1. The cable model extraction unit 3-1 comprises functional units 3-2 to 3-4. Functional unit 3-2 takes point cloud data as input and reads it, then deletes point clouds that are determined to be densely populated from the read point cloud data. At this time, for example, a common clustering method such as DBSCAN is used to delete point clouds with a density above a certain level in a two-dimensional plane. Then, the functional unit 3-2 performs clustering again on the point clouds other than the densely clustered point clouds (using DBSCAN, a common clustering method, where points within a certain distance are considered a cluster if there are more than a certain number of points in the point cloud). Then, the functional unit 3-2 extracts clusters as cable candidate clusters that can be determined to be straight lines by RANSAC and whose straight-line component is at or above a certain angle with respect to the vertical axis. Functional unit 3-3 combines the extracted clusters in order from the longest distance between their endpoints, and those clusters that lie on the catenary curve approximation formula are combined as combined clusters constituting the same object. At this time, the residual with the RANSAC approximation line may be used to determine which clusters lie on the catenary curve approximation formula. This speeds up the combined cluster determination process. Functional units 3-4 calculate and output the parameters of the catenary curve fitted for each coupled cluster. The various equipment information calculation unit 3-5 uses the parameters calculated by the functional unit 3-4 to extract a cable model 112 that matches the catenary curve.
[0028] Figure 9 shows an example of the processing flow in functional unit 3-2. If the point cloud of utility poles and trees has been removed in advance before generating the cluster, there are no obstacles such as trees or houses (objects other than the ground) above or below the cable. In this case, functional unit 3-2 performs the following processing. The point cloud data is read (S10), and points below a certain height are deleted (S21). For example, the ground component is deleted. Next, the point cloud data is converted to a 2D xy-plane by removing the vertical component (S22), and the 2D data is converted into a mesh of a set length (S23). Then, the DBSCAN method is used to remove meshes exceeding a certain range and density (S24). Next, for the remaining point cloud, use the DBSCAN method to form clusters of point clouds with a certain size and density (S25).
[0029] Approximate with a straight line using the Ransac method, and determine whether there is a certain proportion or more of point clouds within a certain residual error (S31). Also, determine whether the approximate straight line has an angle greater than a certain angle with respect to the vertical axis (S32). Here, "within the residual error" means that the distance between the approximated straight line and the point cloud is within the threshold value. If the answer is No in at least one of steps S31 and S32, do not use it as a cable candidate cluster (S43). On the other hand, if the answer is Yes in steps S31 and S32, use it as a cable candidate cluster (S41). Then, use the distance between the endpoints of the cable candidate cluster as the cluster length (S42). Execute steps S31 to S42 for each cluster i.
[0030] Fig. 10 shows an example of the processing flow in the functional unit 3-2. Read the point cloud data (S10), and extract the point cloud within a certain height range H1 < h < H2 (S20). Next, for the remaining point cloud, use the DBSCAN method to form clusters of point clouds with a certain size and density (S25). Next, approximate with a straight line using the Ransac method, and determine whether there is a certain proportion or more of point clouds within a certain residual error (S31). Also, determine whether the approximate straight line has an angle greater than a certain angle with respect to the vertical axis (S32). Also, determine whether the size of the cluster in the vertical axis direction is greater than a certain size (S33). If the answer is No in at least one of steps S31 and S32, or if the answer is Yes in step S33, do not use it as a cable candidate cluster (S43). On the other hand, if the answer is Yes in steps S31 and S32 and the answer is No in step S33, use it as a cable candidate cluster (S41). Then, use the distance between the endpoints of the cable good candidate cluster as the cluster length (S42). Execute steps S31 to S42 for each cluster i.
[0031] Figure 11 shows an example of the processing flow in functional unit 3-3. Cable candidate clusters are sorted in descending order of cluster length (S51), and it is determined whether they are already joined clusters (S52). If the result in step S52 is No, a catenary approximation curve and a RANSAC approximation line on the xy plane are calculated from the point cloud data belonging to cable candidate cluster j (S53). Then, it is determined whether the proportion within the residuals of the approximation curve is greater than or equal to a certain value (S54). Here, the "proportion within the residuals" is the proportion of point clouds whose distance from the approximated curve is within a threshold.
[0032] If the answer in step S54 is Yes, it is determined whether the proportion of the residuals within the catenary approximation curve and the RANSAC approximation line on the xy plane of the cable candidate cluster j is greater than or equal to a certain value (S61). If the answer in step S61 is Yes, k will be made into a joined cluster of j (S62). On the other hand, if the answer in step S61 is No, k will not be made into a joined cluster of j (S63). Steps S52 to S62 are performed for each cluster j.
[0033] Figure 12 shows an example of the processing flow in functional unit 3-4. A catenary curve is approximated using Ransac with all point clouds in the combined cluster (S71), the values of a, b, c, and T of the approximated catenary curve (Z=cosh(a*(Tb))+c) are used as parameters (S72), and the parameters are output to a file (S73).
[0034] An example of the processing performed by the equipment information calculation unit 3-5 when extracting cables will be described below. From the area measured by a fixed point cloud, the area from which the cable is to be extracted is cropped, and the cropped file is used as input as an LAS format file. • Read the S0.LAS file. The x, y, and z coordinates of the loaded LAS file data are stored in memory as a NumPy array. Step S1. Find and delete the clumps. This will remove the point cloud corresponding to trees and houses. For example, the point cloud is voxed with a voxel size other than cable size, such as 0.1m. Then, the voxels are filtered. For example, each coordinate of the point cloud is projected onto the xy plane, and if there are more than p% of the DBSCAN n×n cells, they are deleted as a cluster. Step S2. Cluster the points in the point cloud that are not part of the cluster. For example, cluster the remaining points in 3D (DBSCAN). Next, clusters that are straight lines and whose Z-axis angle is greater than or equal to a certain angle are designated as cable candidate clusters using RANSAC. Then, the straight-line distance between the RANSAC endpoints of the cable candidate clusters is stored in memory as the cluster length. Step S3. Generate the combined cluster. For example, execute steps S3-1 to S3-4 below. Step S3-1. Select the cluster with the longest cluster length from among the remaining cable candidate clusters. In this embodiment, when performing steps S3-2 and S3-3, clusters with a cluster length of less than 2.0m are not considered as candidates. Step S3-2. Approximate the point cloud within the cable candidate cluster from Step S3-1 with a RANSAC line in the XY plane. Since a RANSAC line can be represented by a "fixed point" and "a value obtained by multiplying the direction vector by the variable T", perform a catenary approximation using T and Z. Step S3-3. For all cable candidate clusters other than those in Step S3-1, determine whether they lie on the RANSAC line of 3-2 in the XY plane (r=0.1, 60% or more) or on the catenary of Step S3-2 (r=0.05, effective = 70% or more). If both determinations are OK, determine that they are coupled clusters constituting the same object. Step S3-4. Return to Step S3-1. Step S4. Perform catenary fitting on the combined clusters to create a model. Step S4-1. For the point cloud within the clusters determined to be combined clusters constituting the same object in Step S3, RANSAC linear approximation is performed in the XY plane. Since a RANSAC line can be represented by a "fixed point" and a "value obtained by multiplying the direction vector by the variable T", catenary approximation is performed using T and Z. Step S4-2. Maximum value of Tmax , the minimum value of T min Outputs the origin of the XY plane, direction vectors, and catenary curve parameters a, b, c (Z = cosh(a*(Tb)) + c) for T and Z. That's all.
[0035] Figure 13 shows an example of point cloud data read as input by the functional unit 3-2. In this example, the point cloud to be analyzed has 2,803,930 points. Figure 14 shows an example of a cable model 112. In this example, 12 coupled clusters were extracted from the point cloud in Figure 13. The dashed lines FL01 to FL12 in Figure 14 represent the cable models 112 obtained from each coupled cluster. Figure 15 shows an example of actually creating a model from the point cloud. When the tension value was calculated based on the modeled cable model 112 obtained in this way, it was found to be 1398.4 N. When the tension of the cable measured using the point cloud in Figure 13 was measured, it was found to be 1285 N. Therefore, it was found that the cable model obtained using this disclosure can derive tension with an error of +9%.
[0036] As explained above, this disclosure relates to the process of creating a 3D model of a cable-shaped target equipment from 3D point cloud data acquired by a 3D laser scanner. From the clusters generated from the 3D point cloud, clusters that are linearly approximated are extracted as candidate cable clusters. For a given cable candidate cluster, a connected cluster is generated in which a predetermined proportion or more of the 3D point clouds are within a predetermined distance from the catenary approximation curve derived from that cluster. A cable model is created by connecting the points included in the joined cluster.
[0037] This allows the present disclosure to create a cable model regardless of the distance between three-dimensional points. Therefore, the present disclosure can create a three-dimensional model even for objects where the points are not evenly spaced and only a portion of the point cloud exists. [Industrial applicability]
[0038] This disclosure can be applied to the information and communications industry. [Explanation of symbols]
[0039] 1: Fixed 3D laser scanner 2:Storage medium 3: Processing Unit 3-1: Cable model extraction section 3-2, 3-3, 3-4: Functional parts 3-5: Various equipment information calculation department 91: point 92: line 111: Utility pole model 112: Cable Model
Claims
1. A device for creating a three-dimensional model of a small-diameter object from point cloud data representing three-dimensional coordinates, Point clouds with a density exceeding the set value are removed from the point cloud data as point clouds other than the object with the small diameter. A point cloud having a z-coordinate corresponding to the height at which the object exists is extracted from the point cloud data. Clustering is performed on the points included in the extracted point cloud data. A straight line is calculated from the point clouds of multiple clusters obtained by the aforementioned clustering using linear approximation, and a catenary curve is obtained using this straight line. From the clusters obtained by the aforementioned clustering, clusters that are arranged on the same straight line on an x-y plane parallel to the ground and that coincide with the catenary curve in three-dimensional space are extracted, thereby extracting coupled clusters that constitute the same object. A three-dimensional model of the object is created using the extracted combined clusters. Device.
2. The object in question is an overhead cable, suspension wire, or horizontal guy wire. The apparatus according to claim 1.
3. A utility pole model is generated from the point cloud data contained in the aforementioned point cloud data. The catenary curve is determined using clusters that are located between the aforementioned utility pole models and have a high density. The apparatus according to claim 2.
4. A method for creating a three-dimensional model of a small object from point cloud data representing three-dimensional coordinates, Point clouds with a density exceeding the set value are removed from the point cloud data as point clouds other than the object with the small diameter. A point cloud having a z-coordinate corresponding to the height at which the object exists is extracted from the point cloud data. Clustering is performed on the points included in the extracted point cloud data. A straight line is calculated from the point clouds of multiple clusters obtained by the aforementioned clustering using linear approximation, and a catenary curve is obtained using this straight line. From the clusters obtained by the aforementioned clustering, clusters that are arranged on the same straight line on an x-y plane parallel to the ground and that coincide with the catenary curve in three-dimensional space are extracted, thereby extracting coupled clusters that constitute the same object. A three-dimensional model of the object is created using the extracted combined clusters. method.
5. A program for realizing a computer as the device described in any one of claims 1 to 3.
Citation Information
Patent Citations
Point group analysis processing apparatus, point group analysis processing method and program
JP2015001901A
Facility state detection method and device therefor
JP2015078849A
Facility state detecting method and device setting method
JP2017156179A
Facility state detection method, detection system and program
JP2018195240A
Cable extraction system and cable extraction method
JP2021060776A