Figure 1.
The framework of SGRTmreg includes three steps: (1) a searching scheme for selecting a similar point cloud from a collection for the source model by comparing the similarity of and in four screen stages; (2) considering graph structure, coordinate distribution, and the importance of nodes and normal vector information, a learning-based optimization method called GRDO for learning a single sequence of regressors via the alignment of the source model and the target model ; (3) a transfer module for estimating the transformation between by transferring the learned regressors to the selected model . To reduce storage requirements and computation costs, each step works on the extracted key points.
Figure 1.
The framework of SGRTmreg includes three steps: (1) a searching scheme for selecting a similar point cloud from a collection for the source model by comparing the similarity of and in four screen stages; (2) considering graph structure, coordinate distribution, and the importance of nodes and normal vector information, a learning-based optimization method called GRDO for learning a single sequence of regressors via the alignment of the source model and the target model ; (3) a transfer module for estimating the transformation between by transferring the learned regressors to the selected model . To reduce storage requirements and computation costs, each step works on the extracted key points.
Figure 2.
The process of key point extraction. The pink and orange are the extracted key points.
Figure 2.
The process of key point extraction. The pink and orange are the extracted key points.
Figure 3.
The comparison of our key point extraction approach with the random and uniform downsample methods. This figure shows the zoomed-in model from the XZ and XY perspectives. The dark circles show the difference. The red circles show the main detailed difference.
Figure 3.
The comparison of our key point extraction approach with the random and uniform downsample methods. This figure shows the zoomed-in model from the XZ and XY perspectives. The dark circles show the difference. The red circles show the main detailed difference.
Figure 4.
The structure of the searching scheme, including four screening stages, considering graph structure, coordinate distribution, the importance of nodes, and normal vector information. The dotted rectangle displays the candidate point clouds moving to the next screening stage. The points circled by blue and black are clustered in the same group. Red shows the nodes with the highest importance and pink with the lowest.
Figure 4.
The structure of the searching scheme, including four screening stages, considering graph structure, coordinate distribution, the importance of nodes, and normal vector information. The dotted rectangle displays the candidate point clouds moving to the next screening stage. The points circled by blue and black are clustered in the same group. Red shows the nodes with the highest importance and pink with the lowest.
Figure 5.
The process of feature extraction.
Figure 5.
The process of feature extraction.
Figure 6.
The 3D registration datasets.
Figure 6.
The 3D registration datasets.
Figure 7.
The search results for the given source models. Red shows the given source point clouds. Green shows the selected similar point clouds.
Figure 7.
The search results for the given source models. Red shows the given source point clouds. Green shows the selected similar point clouds.
Figure 8.
The computation time of traditional registration methods on synthetic datasets (Top—Skeleton Hand, Bottom—Dancing Children). Each X-axis represents varying degrees of perturbation: rotation angles, standard deviation of noise, number of outliers, and occlusion rate.
Figure 8.
The computation time of traditional registration methods on synthetic datasets (Top—Skeleton Hand, Bottom—Dancing Children). Each X-axis represents varying degrees of perturbation: rotation angles, standard deviation of noise, number of outliers, and occlusion rate.
Figure 9.
The MSE of registration results on the ModelNet40 dataset (Top—Airplane, Bottom—Car) under various perturbations. Each X-axis represents varying degrees of perturbation, namely rotation angles, standard deviation of noise, number of outliers, and occlusion rate.
Figure 9.
The MSE of registration results on the ModelNet40 dataset (Top—Airplane, Bottom—Car) under various perturbations. Each X-axis represents varying degrees of perturbation, namely rotation angles, standard deviation of noise, number of outliers, and occlusion rate.
Figure 10.
The registration results on the WHU-TLS dataset (Top—Campus, Bottom—Heritage Building). Each column shows the registration results under a specific perturbation, while each row displays the registration results of different methods.
Figure 10.
The registration results on the WHU-TLS dataset (Top—Campus, Bottom—Heritage Building). Each column shows the registration results under a specific perturbation, while each row displays the registration results of different methods.
Figure 11.
The MSE of registration results on the WHU-TLS dataset (Top—Campus, Bottom—Heritage Building). Red signifies deep learning methods, blue represents learning-based optimization methods, and green indicates traditional registration methods. Each X-axis represents varying degrees of perturbation: rotation angles, standard deviation of noise, number of outliers, and occlusion rate. For the sake of comparison, the comparison is marked by arrows and numeric values.
Figure 11.
The MSE of registration results on the WHU-TLS dataset (Top—Campus, Bottom—Heritage Building). Red signifies deep learning methods, blue represents learning-based optimization methods, and green indicates traditional registration methods. Each X-axis represents varying degrees of perturbation: rotation angles, standard deviation of noise, number of outliers, and occlusion rate. For the sake of comparison, the comparison is marked by arrows and numeric values.
Figure 12.
The registration results on the UWA dataset.
Figure 12.
The registration results on the UWA dataset.
Figure 13.
Campus model with different densities and the extracted key points. The value in the bottom-right corner represents the number of points.
Figure 13.
Campus model with different densities and the extracted key points. The value in the bottom-right corner represents the number of points.
Figure 14.
The key points extracted via Delaunay triangulation from the Campus model (WHU-TLS dataset) and the Chair model (ModelNet40 dataset) rotated at 0°, 30°, 60°, and 90° along the X, Y, and Z axes.
Figure 14.
The key points extracted via Delaunay triangulation from the Campus model (WHU-TLS dataset) and the Chair model (ModelNet40 dataset) rotated at 0°, 30°, 60°, and 90° along the X, Y, and Z axes.
Figure 15.
The key points extracted via Delaunay triangulation from the Campus model (WHU-TLS dataset) and the Chair model (ModelNet40 dataset) under various noise and sampling rates.
Figure 15.
The key points extracted via Delaunay triangulation from the Campus model (WHU-TLS dataset) and the Chair model (ModelNet40 dataset) under various noise and sampling rates.
Figure 16.
The searching instances in the MPI Dynamic FAUST dataset.
Figure 16.
The searching instances in the MPI Dynamic FAUST dataset.
Figure 17.
The sequence of the poses of chicken wings.
Figure 17.
The sequence of the poses of chicken wings.
Figure 18.
The candidates entering the second screening round and the final selected similar point clouds (dashed rectangles).
Figure 18.
The candidates entering the second screening round and the final selected similar point clouds (dashed rectangles).
Figure 19.
The instances from the mixed dataset entering the final screening.
Figure 19.
The instances from the mixed dataset entering the final screening.
Figure 20.
Registration on the MVP dataset with various rotation angles.
Figure 20.
Registration on the MVP dataset with various rotation angles.
Figure 21.
Registration on the MVP dataset with various density distributions.
Figure 21.
Registration on the MVP dataset with various density distributions.
Figure 22.
The computation time on the motorcycle model with different sizes.
Figure 22.
The computation time on the motorcycle model with different sizes.
Figure 23.
The comparison of GRDO with transfer module () and GRDO without transfer module () under different perturbation settings on the ModelNet40 dataset (A—Airplane, C—Car). Top displays the comparison of computation time. Bottom shows the log10MSE. Each X-axis is varying degrees of perturbation, namely rotation angles, standard deviation of noise, number of outliers, and occlusion rate.
Figure 23.
The comparison of GRDO with transfer module () and GRDO without transfer module () under different perturbation settings on the ModelNet40 dataset (A—Airplane, C—Car). Top displays the comparison of computation time. Bottom shows the log10MSE. Each X-axis is varying degrees of perturbation, namely rotation angles, standard deviation of noise, number of outliers, and occlusion rate.
Table 1.
Parameter settings for deep learning methods.
Table 1.
Parameter settings for deep learning methods.
Method | Iteration | Optimizer | Learning Rate | Epoch | Batch Size |
---|
FMR | 10 | Adam | | 100 | 32 |
RGM | 2 | SGD | | 300 | 4 |
DeepGMR | 1 | Adam | | 100 | 32 |
RPMNet | 2 | Adam | | 1000 | 8 |
Table 2.
The registration results on the skeleton hand ().
Table 2.
The registration results on the skeleton hand ().
| DO | RDO | GRDO | BCPD | LSGCPD | TEASER++ |
---|
| Maximum
| IQR
| Maximum
| IQR
| Maximum
| IQR
| Maximum
| IQR
| Maximum
| IQR
| Maximum
| IQR
|
---|
R (90) | 2.491 | 1.445 | 2.497 | 1.488 | 1.121 | 1.261 | 4.794 | 5.746 | 3351 | 1393 | 3795 | 3226 |
R (120) | 2239 | 3339 | 1273 | 3334 | 1266 | 2085 | 3713 | 3371 | 2807 | 1305 | 3865 | 2875 |
R (150) | 3789 | 3311 | 3589 | 3010 | 3456 | 2649 | 3773 | 3376 | 3529 | 1449 | 3805 | 2996 |
N (006) | 56.00 | 39.00 | 6.205 | 3.151 | 5.982 | 3.064 | 53.00 | 4.931 | 1585 | 39.00 | 3682 | 2957 |
N (008) | 59.00 | 62.00 | 6.932 | 5.170 | 6.853 | 5.112 | 77.00 | 4.352 | 1539 | 62.00 | 4060 | 2803 |
N (010) | 66.00 | 73.00 | 7.418 | 3.988 | 7.207 | 3.882 | 104.0 | 4.536 | 1414 | 73.00 | 3934 | 2769 |
O (300) | 9.067 | 7.132 | 5.719 | 3.274 | 5.567 | 3.254 | 742.0 | 355.0 | 1696 | 1114 | 4983 | 2697 |
O (400) | 11.00 | 8.068 | 6.101 | 3.676 | 6.084 | 3.662 | 743.0 | 459.0 | 1635 | 1099 | 5234 | 2749 |
O (500) | 9.792 | 8.566 | 7.713 | 4.180 | 7.012 | 4.055 | 719.0 | 337.0 | 1546 | 627.0 | 4999 | 2673 |
I (045) | 491.0 | 497.0 | 493.0 | 497.0 | 513.0 | 448.0 | 1586 | 2772 | 1443 | 915.0 | 5371 | 2882 |
I (060) | 1051 | 974.0 | 1046 | 974.0 | 998.0 | 926.0 | 1103 | 1903 | 1484 | 1059 | 5192 | 2561 |
I (075) | 1286 | 1397 | 1283 | 1400 | 1246 | 1295 | 1258 | 2097 | 1492 | 959.0 | 5623 | 3075 |
Table 3.
The registration results on the dancing children model ().
Table 3.
The registration results on the dancing children model ().
| DO | RDO | GRDO | BCPD | LSGCPD | TEASER++ |
---|
| Maximum
| IQR
| Maximum
| IQR
| Maximum
| IQR
| Maximum
| IQR
| Maximum
| IQR
| Maximum
| IQR
|
---|
R (90) | 2684 | 423.0 | 2675 | 420.0 | 2235 | 263.0 | 0.007 | 0.002 | 3695 | 1381 | 4773 | 2313 |
R (120) | 2862 | 350.0 | 2862 | 346.0 | 2133 | 194.0 | 4304 | 2855 | 3776 | 1483 | 4823 | 1875 |
R (150) | 4230 | 2793 | 4125 | 2793 | 3807 | 1090 | 4283 | 2855 | 4471 | 1211 | 4310 | 2205 |
N (006) | 17.00 | 17.00 | 13.00 | 9.000 | 9.000 | 9.000 | 35.00 | 0.938 | 1995 | 1234 | 4946 | 2058 |
N (008) | 24.00 | 17.00 | 16.00 | 9.000 | 12.00 | 9.000 | 60.00 | 1.710 | 1779 | 1033 | 5012 | 2393 |
N (010) | 25.00 | 17.00 | 19.00 | 12.00 | 17.00 | 12.00 | 91.00 | 2.060 | 1732 | 1047 | 5195 | 2386 |
O (300) | 13.00 | 12.00 | 12.00 | 10.00 | 8.000 | 9.000 | 488.0 | 9.577 | 2004 | 1311 | 7283 | 3536 |
O (400) | 15.00 | 10.00 | 11.00 | 7.000 | 11.00 | 7.000 | 616.0 | 7.399 | 2002 | 1150 | 6373 | 2470 |
O (500) | 14.00 | 12.00 | 13.00 | 7.000 | 11.00 | 7.000 | 459.0 | 7.464 | 1939 | 1108 | 6882 | 2803 |
I (045) | 705.0 | 863.0 | 706.0 | 858.0 | 739.0 | 802.0 | 1355 | 2281 | 1706 | 1012 | 6029 | 2534 |
I (060) | 1455 | 1192 | 1350 | 1192 | 1389 | 1866 | 1025 | 2212 | 1672 | 1075 | 8092 | 3958 |
I(075) | 2496 | 1696 | 2493 | 1703 | 2702 | 1210 | 1296 | 2368 | 1817 | 1015 | 6882 | 3542 |
Table 4.
The number of key points (NP) and their registration error (MSE).
Table 4.
The number of key points (NP) and their registration error (MSE).
| Key Points | Original Model |
---|
| 30°
| 60°
| 90°
| 120°
| 30°
| 60°
| 90°
| 120°
|
---|
| NP | MSE | NP | MSE | NP | MSE | NP | MSE | MSE | MSE | MSE | MSE |
---|
X-axis | 1850 | 0.0191 | 1792 | 0.0225 | 1668 | 0.0242 | 1777 | 0.1287 | 0.0141 | 0.0271 | 0.0389 | 0.1387 |
Y-axis | 1834 | 0.0152 | 1833 | 0.0150 | 1646 | 0.0815 | 1786 | 0.0894 | 0.0102 | 0.0178 | 0.0798 | 0.0882 |
Z-axis | 1716 | 0.0192 | 1709 | 0.0465 | 1608 | 0.1415 | 1702 | 0.1689 | 0.0145 | 0.0468 | 0.1401 | 0.1625 |
Table 5.
Result of ablation study of searching scheme on the MPI dynamic FAUST dataset.
Table 5.
Result of ablation study of searching scheme on the MPI dynamic FAUST dataset.
| Number of Training Instances | Number of Candidates | Index |
---|
| 13 | 10/3 | 1, 2, 4, 5, 7, 9, 10, 11, 12, 14/4, 11, 14 |
, | 13 | 7 | 2, 5, 7, 9, 10, 12, 14 |
, , | 13 | 3/1 | 10, 12, 14/14 |
, , , | 13 | 1 | 12 |
Table 6.
The search results for the MPI Dynamic FAUST dataset under varying perturbations.
Table 6.
The search results for the MPI Dynamic FAUST dataset under varying perturbations.
| Varying Noise | Varying Sampling | Varying Noise and Sampling |
---|
Searching Scheme | 10, 12, 14 /12 | 11, 12, 13/12 | 9, 10, 12/12 |
D2 Shape Distribution | 2, 5, 9/9 | 1, 10, 11/11 | 1, 10, 11 /10 |
Table 7.
Result of ablation study on the MPI dynamic FAUST dataset with the pose of chicken wings.
Table 7.
Result of ablation study on the MPI dynamic FAUST dataset with the pose of chicken wings.
| Number of Training Instances | Number of Candidates | Index |
---|
| 215 | 11 | 3, 4, 5, 6, 7, 8, 9, 13, 14, 15, 17 |
, | 215 | 8 | 3, 4, 5, 6, 7, 8, 9, 13 |
, , | 215 | 3 | 3, 6, 7 |
, , , | 215 | 1 | 3 |
Table 8.
Result of ablation study of searching scheme on the ModelNet40 (car) dataset.
Table 8.
Result of ablation study of searching scheme on the ModelNet40 (car) dataset.
| Number of Training Instances | Number of Candidates | Index |
---|
| 284 | 109/98 | \ |
, | 284 | 47 | \ |
, , | 284 | 3/1 | 159, 211, 240/159 |
, , , | 284 | 1 | 240 |
Table 9.
Result of ablation study of searching scheme on the mixture of datasets.
Table 9.
Result of ablation study of searching scheme on the mixture of datasets.
| Number of Training Instances | Number of Candidates | Index |
---|
| 310 | 100 | \ |
, | 310 | 47 | \ |
, , | 310 | 5/1 | 142, 159, 208, 211, 240 |
, , , | 310 | 1 | 240 |