Blog reprinted from: http://blog.csdn.net/cjx2lxj/article/details/50529618
This article is from the 2015 ICIP conference, mainly introduces a new region growth algorithm in the field of image segmentation
The questions raised
LiDAR detects the surface of an urban environment to form three-dimensional geometric points, and the corresponding point cloud segmentation technique is often used for building reconstruction. Because of the complexity of the building, the data partition computation is very big, the traditional point cloud segmentation method needs the human intervention, but also time-consuming. In order to improve the efficiency and accuracy of the segmentation algorithm, this paper uses an efficient regional growth algorithm to segment the building point data scanned by aerial laser and extract the attention characteristics.
Related work
Comparison of three data partitioning methods:
1) method based on model fit
Common Hough Transformation method, Ransan method
Advantages: Mainly used for 3D point cloud segmentation, undisturbed by noise and abnormal data
Disadvantage: Segmentation quality is greatly influenced by pixel features, and is not suitable for large data segmentation
2) A method based on regional growth
Advantages: Widely used in 3D point cloud segmentation, simple execution
Disadvantage: The robustness is not very good, by the segmentation of a variety of evaluation criteria, the effect of long calculation time
3) method based on clustering feature
Pros: Good robustness, no need to find points or find areas
Disadvantage: Large data volume segmentation calculation is very large, can not detect the continuous boundary points, after the segmentation needs refinement processing.
The proposed programme
The point cloud data set is obtained by using an eight-tree-based region growth algorithm, the point cloud is divided into sub-data blocks, and then the resulting incomplete data blocks are refined processing. The algorithm mainly consists of coarse segmentation and two parts refinement. Coarse segmentation Stage (A), point cloud data set after Voxel representation (A.1), quickly clustered into a number of smooth sub-data block, using the regional growth method, gradually to the adjacent similar characteristics of the Voxel Group (A.2); refinement phase (B), Merges unassigned points (points not yet assigned to any fragments) into incomplete chunks to make them smooth and complete fragments. Algorithm structure diagram:
3.1. Voxel Treatment
Voxel is the decomposition process based on the eight-fork tree, first to determine the smallest closed cube, as the root node or level 0 node. The root node is recursively subdivided into eight sub-pixels, and non-voxel continues to divide until the remaining threshold is divided or the minimum pixel size criterion is reached. Decomposition process.
In this tree form, the voxel is decomposed in a consistent space-all nodes are divided into eight sub-regions of the same size. In addition, pointers are stored in each non-leaf node, thereby explicitly connecting to child nodes to facilitate tree-to-landscape connectivity. The link from the parent node to the child node is one-way. Each node is reclassified with the number of sample points in it. Here, if a node contains more than three points, it is defined as a non-empty node, otherwise it is a null node. It is important to note that only non-empty nodes can be subdivided.
A variety of termination criteria can be used, such as the minimum pixel size, a predefined maximum depth of the tree, or the maximum number of sample points per voxel. This selects the remaining threshold R and the minimum voxel size D, as the termination condition. The size of the voxel is chosen with the minimum density of the point cloud as the benchmark. In the case of dense data, you can refer to the expected segmentation level.
In order to make the surface of the segmented block smoother, an adaptive octal tree decomposition method is used, which significantly reduces the number of voxel, thus reducing the amount of growth steps in this area. During the segmentation process, the remaining values continue to divide the eight-fork tree to make the split surface smooth, 3.3, the voxel size is marked in different colors, where the larger voxel appears in the smooth region, the smaller pixels appear in the edges, corners, and surrounding rough areas.
3.2. Characteristic significance estimation
The characteristic vectors and residual values of voxel after the voxel processing are calculated, and the two salient features are applied in the subsequent growth process of voxel-based regions. The principal component analysis method is used to calculate the salient features. Residual vector method: After rejecting the data missing point, the covariance matrix M is established with the remaining points, and the eigenvalue decomposition of M, corresponding to the characteristic vector of the minimum eigenvalue of M, is the normal vector of the point. The fitting plane of the point data is determined by the center p and the normal vector n, and the point pi to the orthogonal distance of the plane is di; the bias RMS r,r is the residual value in this article, which is proportional to the data noise level and curvature.
3.3. Regional growth algorithm based on eight-fork tree
The adjacent voxel has similar characteristics after the region growth segmentation based on the eight-fork tree, and the region growth process is the grouping of data blocks with similar characteristics. This paper describes an algorithm for regional growth of eight-fork tree, which returns a set of roughly smooth surface blocks.
However, the resulting segmented fragment is incomplete, which means that there are still multiple points that have not yet been allocated. Since pixels at the edge of the building may contain data points from multiple surfaces, these points are not in the Voxel-based step. Therefore, the extracted fragments require further refinement steps.
Refinement
In the refinement process, in order to speed up the process, only the voxel adjacent to the incomplete fragment boundary is merged into the fragment, and each incomplete cluster expands to become a complete fragment nearby.
1. Extract the boundary pixel points to find adjacent boundary points near the cluster
In order to improve the efficiency of the refinement step, only the pixels of the bounding voxel and the buffer around the inner boundary of the cluster are thinned out. Voxel has less than eight contiguous finite segments (voxel with the same segment ID) that may be at a certain boundary. Buffers are determined by extending the cluster boundary by a certain distance.
2. Quick Refinement
Refine the algorithm process.
The target point is the above boundary point (incomplete point), the distance between the target point and the best fit plane of the neighboring cluster, if it is less than the given threshold, the target point is divided into the corresponding cluster, and if it is greater, the search continues.
The effect achieved
The experiment uses two ancient buildings of land exploration and a modern building model of aerial detection, comparing ancient buildings with modern complex samples, and comparing the regional growth algorithm based on the eight-fork tree with the original point-based segmentation algorithm. Segmentation.
The experiment result diagram above uses is this paper proposed region growth point cloud segmentation algorithm, below uses is the original point-based region growth segmentation algorithm, can see, this paper algorithm segmentation effect is very smooth, the original algorithm segmentation slightly rough. In this paper, the algorithm is more accurate and the operation efficiency is more high.
The experimental results show that the algorithm determines the efficiency and robustness of the algorithm, is faster than the traditional region segmentation algorithm at least one order of magnitude, the adaptability ratio between 75-95%, segmentation effect is good, the resulting segmentation image is very smooth.
Consider the advantages
(1) The efficient use of eight-fork tree algorithm, the segmentation process and traditional algorithm compared to the time-consuming minimum. The advantages of using the eight-fork tree are the following three points:
1) The volume of voxel is significantly smaller than the number of points, which greatly accelerates the regional growth process.
2) The neighborhood-based vector helps avoid a large number of nearest neighbor searches on the initial data points.
3) The Voxel mesh itself has an intrinsic spatial structure that allows quick and easy searching of adjacent voxel.
(2) The algorithm effectively integrates the eight-fork tree and the clustering segmentation region growth algorithm, which greatly improves the efficiency of the algorithm and improves the accuracy.
Possible improvements
(1) The selection of the appropriate voxel size still requires manual intervention, in order to make the voxel mesh can accurately present the local surface characteristics of the point cloud, so the voxel size selection needs to be improved.
(2) In modern building testing, corners and other relatively complex parts, the segmentation effect is not very smooth, the algorithm needs to be optimized.
Cloud segmentation algorithm of regional growth point based on eight-fork tree