4.2. Weighting Strategy Steps
Based on
Table 3, the decision matrix can be described as
Equations (11) and (12) are applied to transform the decision matrix into fuzzy form, as shown in
Table 4.
The small positive number Δd in Equation (12) is set to be 0.005.
The boundaries of each criterion and corresponding fuzzy RP points are calculated according to Equation (13), and the results are shown in
Table 5.
The decision matrix is normalized according to Equation (14), and the results are shown in
Table 6.
The standard variances of criteria are calculated according to Equation (7), and the results are shown as
Table 7.
The distance correlations between different pairs of criteria are calculated according to Equation (15), and the results are shown in
Table 8.
The amounts of information and weights of criteria are calculated according to Equations (8)–(10) and corresponding ranks are assigned to the criteria based on the weights. The results are shown in
Table 9.
Table 9 indicates that among all the labels, table, chair, and wall hold the top three rankings in terms of weights, which aligns well with the practical requirements of point cloud registration in 3D indoor spaces. In the Stanford Large-Scale 3D Indoor Spaces Dataset, chairs, walls, and tables are indispensable objects that occupy the central positions in the indoor space and the majority of the spatial volume. Improving the accuracy of point cloud registration for these objects will correspondingly enhance the registration accuracy for the entire 3D indoor space, as registration transforms the entire indoor space into a rigid structure. On the other hand, the weight assigned to clutter is minimized to a value close to zero, effectively minimizing the negative impact of noise and incorrectly matched points that will reduce registration accuracy.
4.3. Point Cloud Registration Experiments
We use the entire S3DIS dataset in the experiments, from Area_1 to Area_6 [
32]. When the S3DIS datasets are used as a whole, all the test data are the averaged results of the six indoor spaces in the datasets, as shown in
Figure 3. PointNet is used for semantic segmentation of the point cloud.
We divide the registration experiment into two parts. In the first part, we conduct experiments with weighted PP-ICP under different parameters, using the corresponding experimental data to determine the parameters that enable the algorithm to perform optimally. We also conduct other experiments to study the influence of semantic segmentation quality on the registration results. The second part is a comparison of weighted PP-ICP with three other registration algorithms: ICP, the NDT, and PointNetLK. We assess the advantages and disadvantages of weighted PP-ICP relative to the other algorithms by comparing the algorithms in terms of root mean square (RMS) error, runtime, and hardware resource utilization across six test scenarios in the datasets, using the method of controlled variables. In these experiments, we conduct both single-axis and multi-axis angle tests on the entire S3DIS dataset. In the single-axis angle test, we rotate the datasets around one axis, keeping the other two axes fixed. The range of rotation angles varies from 15° to 120°, in steps of 15°. The multi-axis angle tests maintain a range of angles between 15° and 120°, with a step of 15° in between. For each type of rigid transformation, we rotate all three axes clockwise by the same angle value, for example, [30°, 30°, 30°] and [60°, 60°, 60°].
Section 3 uses subjective assignment to determine each category’s importance in the semantic segmentation results. The following tests will verify the validity of these assignments. According to
Table 2, we reduce the importance of all labels above 0.5 and increase those below 0.5, resulting in a change magnitude of 0.2 for each group, which decreases to 0.1 when starting from 0.2. This process generates four groups of data regarding label importance, as shown in
Table 10.
We calculate and integrate the corresponding weight values into the proposed registration algorithm based on these four sets of data. We perform validation using multi-axis angle tests, as illustrated in
Figure 4 and
Table 11.
Figure 4 and
Table 11 demonstrate that group 1 consistently has the smallest RMS across all rotational angles. The maximum value in group 3, 3.134, is 3.11 times higher than the maximum value in group 1, which is 0.762; the maximum value in group 4, 3.674, exceeds the maximum in group 1 by 3.82 times. These results validate that the subjective assignment of label importance in
Section 3 is reasonable.
Given that this paper proposes an algorithm based on weights generated from point cloud semantic segmentation results, we expect the quality of segmentation to significantly influence the algorithm’s registration performance. However, we notice differences in the point cloud segmentation results among the six areas of the datasets during the experimental process, prompting us to conduct further tests to investigate the impact of semantic segmentation on the registration algorithm in this paper.
PointNet calculates the whole-scene point accuracy for each area in the datasets to assess the quality of semantic segmentation for the entire area.
Table 12 displays the whole-scene point accuracy values for the six areas.
Table 12 shows that Area_6 has the best quality of semantic segmentation, while Area_5 has the worst. Three tests for the six areas are conducted with the rotational angles of the three axes being [30°, 30°, 30°], [60°, 60°, 60°], and [90°, 90°, 90°] respectively. The visualizations of the registration results when the rotational angle is equal to 30° are shown in
Figure 5, and the test data are shown in
Figure 6 and
Table 13.
Figure 6 and
Table 13 reveal that Area_6 has the smallest RMS under all three rotation angles, whereas Area_5 has the largest. This corresponds with the results of the PointNet semantic segmentation, where the whole-scene point accuracy is the highest in Area_6 and the lowest in Area_5. Similarly, the whole-scene point accuracy in Area_2 is higher than in Area_4, and the RMS in Area_2 is also smaller than in Area_4 under all three rotation angles. Based on what we have seen in practice, we can say that the proposed algorithm in this paper has a positive relationship between how well it registers and how well it semantically segments point clouds. Correct classifications in semantic segmentation are the only way to assign the correct weights in the registration algorithm’s weight distribution process, thereby enhancing the algorithm’s accuracy.
We conduct comparison experiments after determining the importance of labels in semantic segmentation. We set the translation to [0.1, 0.2, 0.15] for all tests. We set the change in angle in the rotational axis for each small rigid transformation in the weighted PP-ICP to 1°.
Figure 7 and
Table 14 display the root mean square error (RMS).
Figure 7 and
Table 14 demonstrate that the proposed algorithm in this paper consistently achieves the smallest RMS in all tests, while the original ICP consistently demonstrates the highest RMS. This demonstrates the significant improvement in registration accuracy achieved by the algorithm proposed in this paper. On the other hand, as the rotation angle increases, the RMS of all the algorithms increases, but the weighted PP-ICP always has the smallest increase. This means that the algorithm is very stable when rigid bodies change shape at different rotation angles.
The multi-axis angle tests maintain the angle’s range between 15° and 120°, with a 15° step. For each type of rigid transformation, we rotate all three axes clockwise by the same angle value, such as [30°, 30°, 30°] and [60°, 60°, 60°].
Figure 8 and
Table 15 display the tests.
Figure 8 and
Table 15 demonstrate that in the multi-axis angle tests, the weighted PP-ICP consistently exhibits the smallest RMS, with the exception of the cases at 15° and 30°. Similar to the single-axis angle tests, the RMS increases as the rotation angle increases. However, we observe that in the multi-axis angle tests, the RMS of all the algorithms surpasses that of the single-axis angle tests, suggesting an increase in registration errors as the complexity of the rigid-body transformations increases.
We evaluate the runtime and computation resources used during the multi-axis tests for the four algorithms on a personal computer with a CPU processor (AMD Ryzen 7 4800H) and 16.0 GB of RAM to validate the efficiency.
Figure 9 and
Table 16 display the results.
Figure 9 and
Table 16 conclude that the weighted PP-ICP algorithm in this paper exhibits significantly shorter runtimes than the original ICP, NDT, and PointNetLK. However, in comparison to the NDT, the proposed algorithm does not perform better in terms of CPU or memory usage. The main reason for this is that the NDT breaks up the original point cloud into a voxel grid to obtain Gaussian distributions through feature extraction. It then changes these distributions to the reference point cloud’s coordinate system [
4]. Compared to ICP, which directly matches the original point cloud, the NDT significantly reduces computational complexity, thereby enhancing the hardware efficiency of the algorithm.