Research on improved region growing point cloud algorithm

The effective segmentation of point clouds is a prerequisite for surface reconstruction, blind spot repair, and so on. Among them, regional growth is widely used due to its simple and easy to implement algorithm.However, the traditional regional growth segmentation algorithm often causes problems such as over-segmentation or voiding of the segmentation result due to the instability of the local features of the point cloud or the unreasonable selection of the initial seed nodes. In view of the above shortcomings, this paper proposes an improved region growing point cloud algorithm. Firstly, by calculating the Gaussian curvature and the average curvature of the point cloud data and sorting them, and setting the minimum curvature point as the seed node, the total number of clusters is reduced, and the quality of the classification result is improved. Secondly, the growth of the point cloud region growth criterion is determined by combining the normal angles. Finally, according to the shape characteristics of the point cloud and the preliminary segmentation results, each threshold is adjusted and determined, and the segmentation result is optimized.The experimental results show that compared with the traditional regional growth segmentation algorithm, this method can not only reduce the total number of segmentation regions, but also segment the point cloud data quickly and effectively, and solve the segmentation result caused by the traditional region growth point cloud segmentation method. Problems such as stability improve the accuracy and stability of point cloud segmentation.


INTRODUCTION
With the rapid development of 3D scanning technology, the acquisition of point cloud data has become more and more convenient. 3D point cloud data has been widely used in many fields such as digital city, driverless and human-computer interaction. Among them, the effective segmentation of point cloud adopts the idea of divide and conquer, which is the key link of point cloud data processing, and provides important preconditions for subsequent surface reconstruction, blind spot repair, feature description and extraction, etc. It often directly affects the quality of subsequent point cloud processing (Wang W, Ren X.L, Chen X.Y.,2018). At present, the more commonly used point cloud segmentation algorithm is better robust cluster segmentation and segmentation based on random sampling consistency. Among them, the regional growth is widely used due to the advantages of simple algorithm, easy implementation and fine segmentation in 3D point cloud segmentation. But at the same time, it also has some defects: (1) The unreasonable selection of the initial seed node will affect the quality of the segmentation result. (2) The algorithm has high requirements for parameter adjustment, low robustness and universality. (3) When the clustering result is divided, it is easy to have problems such as over-segmentation or under-segmentation. In recent years, Li Yunzhong (Li R.Z., Liu Y.Y., Yang M., Zhang Y.S.,2018) estimated the curvature of the point cloud data according to the local characteristics of the point cloud, and set the point with the smallest curvature as the seed node for point cloud segmentation, which overcomes the instability of the traditional region growth to some extent, but The algorithm does not ideally divide the point cloud data with large curvature changes. Wang Wen (Wang W, Ren X.L, Chen X.Y.,2018) proposed to combine the color information of the three-dimensional point cloud with the normal angle to add the regional growth growth rule, which improves the limitation of point cloud segmentation. Sexuality, but the method is mainly limited to color point clouds; Liu Qingqun ( Liu Q.Q., Li H., Yang W., Wang J., Lu W.H., Fan S.Z.,2017) proposed a point cloud segmentation method that combines 3D Hough transform and region growing. The 3D Hough transform combined with normal vector improves the robustness of seed point selection and can effectively distinguish The structural surface with certain differences in the size of the production is mainly focused on the extraction of the structural plane of the rock mass; Yan Dongyang (Yan D.Y., Ming D.P.,2017) et al. smoothed the data by using an improved median filter and performed the algorithm for region growing. The improvement has a high degree of discrimination, but the segmentation of point cloud data with complex texture is inferior.
In order to solve the above problems, this paper calculates the Gaussian curvature and the average curvature, sets the minimum curvature point as the initial seed point, and then uses the least square method to calculate the normal angle according to the local characteristics of the point cloud, determines the growth criterion, and finally sets the minimum and maximum. The cluster number threshold and curvature threshold optimize the segmentation result, which improves the accuracy of point cloud segmentation and the segmentation result is more stable.

Point Cloud Denoising
Due to the influence of equipment measurement errors, the data obtained by laser scanning will inevitably be interfered by external noise. Usually, the density distribution of point cloud data sets is uneven, and a small number of outliers that are separated from the masses are generated. These problems may complicate the computation of local point cloud features (such as surface normals or rate of curvature change), causing subsequent point cloud processing to fail. Therefore, it is indispensable to denoise the original point cloud data before the point cloud segmentation. This paper selects the SatisticalOutlierRemoval(Radu B.R., Zoltan C.M., Nico B., Mihai D., Michael B.,2008) filter for denoising. This method is based on the calculation of the distance distribution from the point to the adjacent point in the input data. The neighborhood of each point is statistically analyzed, and the average distance from all its neighbors is calculated. The average distance is outside the certain standard range. Points are treated as noise and are removed from the point cloud data set. The comparison results before and after denoising are shown in Figures 1(a) and (b).

Point Cloud Simplification
Since the original point cloud data selected in this paper is too large, even if the noise is removed by the SatisticalOutlierRemoval filter, the data density is still too large, resulting in a slow calculation rate, which has a certain impact on the real-time performance of subsequent point cloud segmentation. Under the premise of maintaining the shape characteristics of the point cloud data, the point cloud is downsampled by the VoxelGrid(Yao F.S.,2017) filter, a threedimensional voxel mesh is created by the input point cloud data, and then the center of gravity of each voxel is calculated. The central position of the voxel approximately replaces the entire voxel data. The comparison of the effects before and after simplification is shown in Figure 1(b),(c) and Table 1.  It can be seen from the streamlined results that under the premise of maintaining the shape of the point cloud, the preprocessing of the point cloud can greatly improve the segmentation efficiency.

Selection of Seed Points
Whether the selection of seed points is reasonable or not directly affects the segmentation results (Chen X.J., Zhang G., Hua X.H.,2015). The traditional regional growth algorithm usually uses the RANSAC algorithm to obtain the seed points. Although this method is simple, it is prone to overlap segmentation and the segmentation result is unstable. By calculating the mean curvature and Gaussian curvature of each point of the point cloud, the point with the smallest curvature in the point cloud data is selected as the initial seed point to start growing, that is, the seed point is selected in the most flat area, which reduces the total number of segments and avoids overlapping segmentation. , and improve the stability of the segmentation. The calculation steps for selecting seed points are as follows: The partial derivative The International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Volume XLII-3/W10, 2020 International Conference on Geomatics in the Big Data Era (ICGBD), 15-17 November 2019, Guilin, Guangxi, China Gaussian curvature K and mean curvature H are two important geometric features for analyzing three-dimensional surfaces (Besl P J, Jain R C1.,1998). By combining the two to select the minimum curvature point, the local features of the point cloud surface can be better obtained. The calculation formula of the average curvature Z and the Gaussian curvature H of a point P in the algorithm surface is as follows: by the following formula: The principal curvature K1, K2 can be calculated to lay the foundation for the subsequent curvature threshold setting. Where K1 represents the maximum value of the curvature of the surface in all directions at this point, and K2 represents the minimum value.

Determination of Growth Criteria
The least square method is used to fit the estimated tangent plane normal (He M.F., Zhou L.H., Shen H.C.,2005), that is, the eigenvector and eigenvalue of a covariance matrix are analyzed. For a point Pi in the surface, the eigenvector corresponding to the minimum eigenvalue of the covariance matrix C is obtained. This is the normal vector for this point. Then, according to the normal vector, the angle between the normal of the neighborhood point and the normal of the current seed point is obtained, and the normal deviation range between the two points is set. When the angle is within the specified standard range, the point is added. Go to the seed point. Among them, the formula for calculating the covariance matrix C is as follows: Where K is the number of points adjacent to point Pi and p is the centroid of the nearest neighbor element. The formula for calculating the angle of the normal is as follows:

Threshold Setting
The region growing algorithm of point cloud segmentation usually uses three-dimensional geometric features such as normal and curvature to grow, and the threshold setting is also a very important parameter in the region growth, and even directly affects the segmentation result. Firstly, according to the point cloud information, the minimum and maximum clustering point thresholds of the point cloud clustering need to be set, and the maximum clustering number generally selects a value much larger than the number of point clouds, so that the number of points after the segmentation is smaller than the point of the minimum clustering value. Will be abandoned. Secondly, set the allowable range of the two-point normal deviation. If the deviation between the two normals is less than the smooth threshold set by the algorithm, then the two points are classified into the same cluster. Finally, according to the minimum and maximum values of the principal curvature, the value of the curvature of the point cloud is adjusted. The reasonable curvature threshold can avoid the undersegmentation and over-segmentation of the point cloud data to a certain extent.
In summary, the overall flow of the improved region-based point cloud algorithm is shown in Figure 2.

4.EXPERIMENTAL RESULTS AND ANALYSIS
In this paper, the data of the group is used to collect data from the front of the school library using RIEGLVZ-1000 highprecision ground 3D laser scanner. The data of this group is obtained through all pre-processing work. The experimental operating system is Visual Studio 2015 VC++win64 console application, open source point cloud library PCL1.80. For the sake of observation, the segmentation result is set with random color labels, and the same color represents the same cluster. The point cloud segmentation is performed by the traditional region growing algorithm and the improved algorithm, and the number of segmented point cloud clusters is counted. The experimental results are shown in Figure 3 (a),(b)and Table 1. Figure 3. Point cloud segmentation experiment results Fig. 3(a) is the result of the segmentation of the traditional region growing algorithm. It can be seen from the experimental results that the traditional region growing algorithm can not segment the point cloud data well, and the local region even has the problem of over-segmentation and under-segmentation. . Fig. 3(b) is a segmentation effect diagram improved by the algorithm. Compared with the traditional algorithm, the segmentation effect is obviously improved, and the windows, walls and texts in the data can be effectively segmented, and the boundary retention is good. The ideal segmentation effect.

CONCLUSION
In this study, the SatisticalOutlierRemoval[5] filter is used to denoise the point cloud data, and the VoxelGrid[6] filter is used to downsample the point cloud. Under the premise of maintaining the shape of the point cloud, the point cloud data is streamlined. Greatly improved the speed of point cloud segmentation. Secondly, by calculating the Gaussian curvature and the average curvature, the minimum point of curvature is selected as the initial seed point, which reduces the total number of point cloud clusters and avoids the problem of overlapping segmentation. Then, the least square method is used to calculate the angle between the normal of the neighborhood point and the normal of the current seed point, set the normal deviation range between the two points, determine the regional growth criterion, and finally set the threshold of the minimum and maximum number of clusters. The curvature threshold optimizes the segmentation result. The experimental results show that the improved algorithm has a much higher segmentation speed than the traditional region growing algorithm, and the segmentation result is more ideal and accurate.
Yao F.S.,2017:Processing and application of drone image matching point cloud . PLA Information Engineering University.