| Literature DB >> 36080984 |
Biao Wang1, Jie Zhou1, Yan Huang1, Yonghong Wang1, Bin Huang1.
Abstract
Entire surface point clouds in complex objects cannot be captured in a single direction by using noncontact measurement methods, such as machine vision; therefore, different direction point clouds should be obtained and registered. However, high efficiency and precision are crucial for registration methods when dealing with huge number of point clouds. To solve this problem, an improved registration algorithm based on double threshold feature extraction and distance disparity matrix (DDM) is proposed in this study. Firstly, feature points are extracted with double thresholds using normal vectors and curvature to reduce the number of points. Secondly, a fast point feature histogram is established to describe the feature points and obtain the initial corresponding point pairs. Thirdly, obviously wrong corresponding point pairs are eliminated as much as possible by analysing the Euclidean invariant features of rigid body transformation combined with the DDM algorithm. Finally, the sample consensus initial alignment and the iterative closest point algorithms are used to complete the registration. Experimental results show that the proposed algorithm can quickly process large data point clouds and achieve efficient and precise matching of target objects. It can be used to improve the efficiency and precision of registration in distributed or mobile 3D measurement systems.Entities:
Keywords: ICP algorithm; distance disparity matrix; double threshold; feature extraction; machine vision; point cloud registration
Year: 2022 PMID: 36080984 PMCID: PMC9460075 DOI: 10.3390/s22176525
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.847
Figure 1Flowchart of the proposed algorithm.
Figure 2Normal vector reaction surface information. (a) Gradual region; (b) Abrupt region.
Figure 3Local coordinate system.
Figure 4Schematic of wrong point pair.
The average number of neighbourhood points under different values of k.
| k/m | 0.01 | 0.0009 | 0.0008 | 0.0007 | 0.0006 | 0.005 | 0.004 | 0.003 | 0.002 | 0.001 |
| Neighbourhood points | 623 | 507 | 402 | 309 | 229 | 159 | 102 | 58 | 25 | 5 |
Figure 5Flowchart of how to obtain the threshold value .
All parameters of the proposed algorithm.
| Parameters | Value | Definition |
|---|---|---|
| k | 0.002 m | Neighbourhood radius |
|
| 20 rad | Threshold of normal vector change degree |
|
| 15 1/m | Threshold of average curvature local characteristic weight |
|
| 0.001 m | Threshold of ending the DDM algorithm |
|
| 0.004 m | Radius of calculating FPFH |
|
| 0.01 m | Max distance threshold of corresponding points for ICP |
|
| 50 | Max iteration number for ICP |
Registration results from the same angle.
| Model | Number of Points | Algorithm | Time of Coarse Registration | Time of ICP | MSE |
|---|---|---|---|---|---|
| Bunny | 40,256 | ICP | / | 61.758 s | 1.939 × 10−7 |
| Algorithm in [ | 11.805 s | 1.088 s | 2.560 × 10−7 | ||
| Algorithm in [ | 3.443 s | 0.652 s | 9.116 × 10−7 | ||
| Proposed | 1.676 s | 0.604 s | 1.259 × 10−16 | ||
| Armadillo | 23,404 | ICP | / | 20.287 s | 5.169 × 10−7 |
| Algorithm in [ | 8.593 s | 0.663 s | 3.041 × 10−7 | ||
| Algorithm in [ | 2.839 s | 0.412 s | 8.219 × 10−8 | ||
| Proposed | 2.807 s | 0.345 s | 3.515 × 10−16 | ||
| Dragon | 34,836 | ICP | / | 56.146 s | 2.735 × 10−7 |
| Algorithm in [ | 10.561 s | 0.908 s | 3.967 × 10−7 | ||
| Algorithm in [ | 4.833 s | 0.616 s | 9.306 × 10−8 | ||
| Proposed | 1.610 s | 0.511 s | 8.385 × 10−16 | ||
| Buddha | 78,056 | ICP | / | 164.677 s | 5.632 × 10−8 |
| Algorithm in [ | 30.416 s | 4.158 s | 8.658 × 10−8 | ||
| Algorithm in [ | 4.098 s | 1.418 s | 4.228 × 10−8 | ||
| Proposed | 20.666 s | 2.873 s | 6.643 × 10−16 | ||
| Plane | 36,980 | ICP | / | 39.74 s | 5.185 × 10−12 |
| Algorithm in [ | 324.319 s | 3.639 s | 5.932 × 10−7 | ||
| Algorithm in [ | 132.853 s | 1.103 s | 1.904 × 10−7 | ||
| Proposed | 1.146 s | 0.539 s | 1.835 × 10−15 |
Figure 6Registration effect of the same angle. (a) Initial position; (b) ICP; (c) Algorithm in [27]; (d) Algorithm in [28]; (e) Proposed.
Registration results of different angles.
| Model | Number of Points | Algorithm | Time of Coarse Registration | Time of ICP | MSE |
|---|---|---|---|---|---|
| Bunny | 40,256, 40,097 | ICP | / | 47.315 s | 9.332 × 10−6 |
| Algorithm in [ | 6.141 s | 1.261 s | 1.302 × 10−6 | ||
| Algorithm in [ | 2.900 s | 0.737 s | 2.995 × 10−5 | ||
| Proposed | 0.991 s | 0.599 s | 4.481 × 10−8 | ||
| Armadillo | 23,404, 28,341 | ICP | / | 19.867 s | 6.527 × 10−6 |
| Algorithm in [ | 11.957 s | 0.815 s | 2.230 × 10−6 | ||
| Algorithm in [ | 3.580 s | 0.519 s | 4.474 × 10−6 | ||
| Proposed | 1.558 s | 0.427 s | 6.581 × 10−8 | ||
| Dragon | 34,836, 22,092 | ICP | / | 27.818 s | 1.559 × 10−5 |
| Algorithm in [ | 3.385 s | 0.709 s | 6.722 × 10−6 | ||
| Algorithm in [ | 4.701 s | 0.531 s | 2.325 × 10−5 | ||
| Proposed | 1.789 s | 0.348 s | 9.180 × 10−8 | ||
| Buddha | 78,056, 69,158 | ICP | / | 224.568 s | 2.223 × 10−5 |
| Algorithm in [ | 9.837 s | 2.454 s | 2.159 × 10−5 | ||
| Algorithm in [ | 3.789 s | 1.511 s | 2.158 × 10−5 | ||
| Proposed | 10.260 s | 1.137 s | 7.440 × 10−8 | ||
| Airpane | 36,980, 34,117 | ICP | / | 165.056 s | 2.235 × 10−4 |
| Algorithm in [ | 274.603 s | 6.119 s | 6.248 × 10−6 | ||
| Algorithm in [ | 49.362 s | 2.317 s | 5.254 × 10−6 | ||
| Proposed | 0.910 s | 0.491 s | 2.037 × 10−8 |
Figure 7Registration effect of different angles.(a)Initial position; (b)ICP; (c) Ref. [27]; (d) Ref. [28]; (e) Proposed.
Comparison of numbers in each processing stage.
| Point Clouds | Number of Points | |||
|---|---|---|---|---|
| Original Points | Feature Points | Initial Matched Points | Final Matched Points | |
| Bunny 0° and 45° | 40,256, 40,097 | 1044, 487 | 31 | 15 |
| Armadillo 60° and 90° | 23,404, 28,341 | 2324, 2711 | 73 | 38 |
| Dragon 24° and 48° | 34,836, 22,092 | 1441, 1228 | 79 | 49 |
| Buddha 0° and 48° | 78,056, 69,158 | 7436, 5648 | 884 | 375 |
| Airplane | 36,980, 34,117 | 1162, 879 | 15 | 10 |