# Point Cloud Segmentation from iPhone-Based LiDAR Sensors Using the Tensor Feature
## 3 Methodology
### The Algorithm of the Point Cloud Segmentation Workflow
The saliency of points in Figure 8a are higher between the single objects, which can be taken as the noisy point samplings and filtered out from the dataset. However, the saliency of line in Figure 8b describes the framework of the geometric objects, which is higher than that of other points. In Figure 8c, the saliency of the surface is obviously higher on the ground, while not higher than that in the single objects, and this might be caused by the size of the neighborhood, since a larger neighborhood is set for noisy data samplings. The line features of the dataset are extracted using the line saliency threshold value, then the line features are further shrunk to a single line, as depicted in Figure 9. The threshold value for the dataset is \(\eta_{line}=500\), and the line features are extracted with a value higher than the threshold value. Figure 8: The saliency of the different geometric structures in the dataset. (**a**) The saliency of surface; (**b**) The saliency of line; (**c**) The saliency of point. Figure 7: The normal vectors computed using tensor feature encoding. ### Point Cloud Segmentation Based on the Tensor Clustering

To remove the noisy point in the point cloud, the point with a point saliency higher than the threshold value \(\mathbf{\eta}_{point}=100\) is taken as the noise and is further removed from the dataset. Moreover, the point cloud datasets are segmented based on tensor clustering, using the regional growth of the surface saliency \(\mathbf{\eta}_{surface}=110\) and the related normal vectors. In the noisy point cloud datasets, a high angle threshold value is needed. Here, the angle threshold value for the normal vectors is set to \(\mathbf{\theta}_{surface}\)= 10\({}^{\circ}\), and any normal vector with an angle difference higher than that threshold value is considered to be a different surface. To verify the segmentation result of the proposed method, a comparison is made between the different geometric feature-based point cloud segmentation methods, as depicted in Figure 10, and the ground truth segmentation with ten parts is shown in Figure 10a. Since the PCA method and the optimal searching distance are both applied in [PERSON] [19] and [PERSON] [20], they are put into the same method group; moreover, a similar strategy to compute the tensor is applied in [PERSON] [9], [PERSON] [21], and [PERSON] [22],

Figure 10: The comparison of different point cloud segmentation methods. (**a**) Ground truth segmentation of the dataset; (**b**) Segmentation result by [PERSON] [18]; (**c**) Segmentation result by [PERSON] [19] and [PERSON] [20]; (**d**) Segmentation result by [PERSON] [9], [PERSON] [21], and [PERSON] [22]; (**e**) Segmentation result by the proposed method. Figure 9: The line feature extraction result based on the tensor feature. and these three methods are also put into the same method group. Hence, as seen in Figure 10, KD-tree-based space division by [PERSON] [18], the PCA method by [PERSON] [19] and [PERSON] [20], tensor voting by [PERSON] [9], [PERSON] [21], and [PERSON] [22], and the proposed method are all experimented with, and the results of the point cloud in the dataset are compared. In Figure 10b, the dataset is segmented into 16 parts, using the automatically computed parameters (Max angle: 5\({}^{\circ}\), Max relative distance: 1.0 m, Max distance: 0.1 m, Min points per facet: 10, Max edge length 0.00) by the algorithm. Since the searching distance \(r\) of the methods by [PERSON] [19] and [PERSON] [20], [PERSON] [9], [PERSON] [21], and [PERSON] [22] can be adaptively selected, set \(\mathbf{r}\in\left[\mathbf{0.1},\mathbf{0.3}\right]\) m. As a result, the point cloud in Figure 10c is segmented into 12 parts, and in Figure 10d, the number of the segments is also 12 parts. However, in Figure 10e, the point cloud conducted by the proposed method is segmented into 17 parts.