=Paper=
{{Paper
|id=Vol-2210/paper31
|storemode=property
|title=Point clouds registration based on the point-to-plane approach for orthogonal transformations
|pdfUrl=https://ceur-ws.org/Vol-2210/paper31.pdf
|volume=Vol-2210
|authors=Artyom Makovetskii,Sergei Voronin,Vitaly Kober,Aleksei Voronin,Dmitrii Tihonkih
}}
==Point clouds registration based on the point-to-plane approach for orthogonal transformations==
Point clouds registration based on the point-to-plane
approach for orthogonal transformations
A Makovetskii1, S Voronin1, V Kober2, A Voronin1 and D Tihonkih1
1
Chelyabinsk State University, Bratiev Kashirinykh str. 129, Chelyabinsk, Russia, 454001
2
Department of Computer Science, CICESE, Carretera Ensenada-Tijuana 3918, Ensenada,
B.C., Mexico, 22860
Abstract. The most popular algorithm for aligning of 3D point data is the Iterative Closest
Point (ICP). This paper proposes a new algorithm for orthogonal registration of point clouds
based on the point-to-plane ICP algorithm for affine transformation. At each iterative step of
the algorithm, an approximation of the closed-form solution for the orthogonal transformation
is derived.
1. Introduction
The Iterative Closest Point (ICP) algorithm [1-5] has become the dominant method for aligning three
dimensional models based purely on the geometry. For alignment it is necessary to find a geometric
transformation that connects two point clouds in β3 by the best way with respect to the πΏ2 norm. The
ICP algorithm consists of two main stages:
1. Searching of corresponding points (pairs) in two clouds;
2. Minimizing the error metric (variational subproblem of the ICP).
There are two basic approaches to choosing the error metric for pairs of points. Within the point-to-
point approach [1], the distance between the elements of the pair in β3 is used. Within the point-to-
plane approach [2] the distance between the point of the first cloud and the tangent plane to the
corresponding point of the second cloud is used.
The key point [6] of the ICP algorithm is the search of either an orthogonal or affine
transformations, best in the sense of a quadratic metric that combines two point clouds with a given
correspondence between points (the variational subproblem of the ICP algorithm).
For the point-to-point metric in the case of orthogonal transformations, the solution in a closed-
form was obtained by Horn [7,8]. The solution [7] is based on the use of quaternions, whereas the
solution [8] uses orthogonal matrices. The solutions are linear in time with respect to the number of
point pairs. The original ICP algorithm is widely used for the rigid objects registration, but it does not
work well for the case of the non-rigid objects. An extension of the ICP algorithm is proposed [9],
using scaling in addition to rotation and translation. A generalization of this algorithm to the case of an
arbitrary affine transformation was done [10,11]. A closed-form solution to the point-to-point problem
was derived [12-14].
The above mentioned approaches for solving the variational subproblem of the ICP algorithm are
based on the point-to-point metric. The point-to-plane metric has been shown to perform better than
the point-point metric in terms of accuracy and convergence rate [15]. A closed-form solution to the
point-to-plane case for orthogonal transformations is an open problem. Instead, iterative methods
IV International Conference on "Information Technology and Nanotechnology" (ITNT-2018)
Image Processing and Earth Remote Sensing
A Makovetskii, S Voronin, V Kober, A Voronin and D Tihonkih
based on the linear least-squares optimization or closed-form methods for small angles only are often
used [12]. Iterative solutions require an initial approximate estimate of the transformation parameters,
and the iterations might converge slowly, converge to a local optimum or not converge at all.
In [16,17] a closed-form solution to the point-to-plane problem for an arbitrary affine
transformation is proposed. The affine approach works well when the correspondence between point
clouds is good. In this case, the affine point-to-plane method precisely reconstructs original geometric
transformation for arbitrary affine transformations, in particular for orthogonal transformations
[16,17]. When a correspondence between clouds is not sufficiently good, the affine approach cannot
reconstructs an original orthogonal transformation.
In this paper, we propose an approximation of a closed-form solution to the point-to-plane problem
for orthogonal transformation. The method is based on the closed-form solution for the affine point-to-
plane problem [16,17], matrix polar decomposition and the Hornβs method for calculating the nearest
orthonormal matrix [8]. The proposed method does not require an initial approximate estimate.
Computer simulation results are provided to illustrate the performance of the proposed method of
solving the minimization problem.
2. Closed-form solution for affine point-to-plane problem
Let π = {π1 , β¦ , ππ } be a source point cloud, and π = {π1 , β¦ , ππ } be a destination point cloud in β3 .
Suppose that the relationship between points in π and π is given in such a manner that for each point
ππ exists a corresponding point ππ . The ICP algorithm is commonly considered as a geometrical
transformation for rigid objects mapping π to π
π
ππ + π‘, (1)
where π
is a rotation matrix, π‘ is a translation vector, π = 1, β¦ , π.
The group of affine transformations in the dimension of three has 12 generators. It means that the
affine transformation in the dimension of three is a function of 12 variables. Let us consider the ICP
variational problem for an arbitrary affine transformation in the point-to-plane case. Denote by π(π) a
surface constructed from the cloud π, by π(ππ ) denote a tangent plane of π(π) at point ππ . Let π½(π΄, π)
be the following function:
π½(π΄) = βππ=1(< π΄ ππ β ππ , ππ > )2 , (2)
where <β,β> denotes the inner product, π΄ is a matrix of an affine transformation in the homogenous
coordinates:
π11 π12 π13 π‘1
π π22 π23 π‘2
π΄ = ( 21 ), (3)
π31 π32 π33 π‘3
0 0 0 1
ππ is a point from the cloud π, ππ is the unitary normal for π(ππ )
π1π π1π
π π
ππ = π2 , ππ = π2 . (4)
π3π π3π
(1) (0)
The ICP variational problem can be stated as follows:
arg ππππ΄ π½(π΄) . (5)
The solution of the problem (5) is given by the following way [16,17]:
ππ΄ = πΆ. (6)
π is the coefficients matrix 12 Γ 12
π π π π π π π π π π π π
ππ = (π11 π21 π31 π41 π12 π22 π32 π42 π13 π23 π33 π43 ),
π = 1, β¦ ,3, (7)
π
πππ = βππ=1(ππ ππ)πππ , π, π = 1, β¦ ,4, π = 1, β¦ ,3, (8)
IV International Conference on "Information Technology and Nanotechnology" (ITNT-2018) 237
Image Processing and Earth Remote Sensing
A Makovetskii, S Voronin, V Kober, A Voronin and D Tihonkih
π1π π1π πππ π1π π2π πππ π1π π3π πππ 0
π2π π1π πππ π2π π2π πππ π2π π3π πππ 0
(ππ ππ)π = , π = 1, β¦ , π, π = 1, β¦ ,3, (9)
π3π π1π πππ π3π π2π πππ π3π π3π πππ 0
π π
( π1 ππ π2π πππ π3π πππ 0)
ππ ππ ππ ππ ππ ππ ππ ππ ππ ππ ππ ππ
π3π+π = (π11 π21 π31 π41 π12 π22 π32 π42 π13 π23 π33 π43 ),
π, π = 1, β¦ ,3, (10)
ππ
πππ = βππ=1(ππ ππ ππ)πππ , π, π = 1, β¦ ,4, π, π = 1, β¦ ,3, (11)
π1π π1π πππ πππ π1π π2π πππ πππ π1π π3π πππ πππ 0
π
π2π π1π πππ πππ π2π π2π πππ πππ π2π π3π πππ πππ 0
(ππ ππ ππ) = , π = 1, β¦ , π, π, π = 1, β¦ ,3. (12)
π3π π1π πππ πππ π3π π2π πππ πππ π3π π3π πππ πππ 0
π π π
( π1 ππ ππ π2π πππ πππ π3π πππ πππ 0)
πΆ is the coefficients column with 12 elements
ππ = βππ=1 πππ < ππ , ππ >, π = 1, β¦ ,3, (13)
π3π+π = βππ=1 πππ πππ < ππ , ππ > , π, π = 1, β¦ ,3. (14)
π΄ is the column of variables with 12 elements
π΄ = (π11 π12 π14 π14 = π‘1 π21 π22 π23 π24 = π‘2 π31 π32 π33 π34 = π‘3 ) π‘ . (15)
The reconstructed affine transform is done by the following formula:
π΄ = π β1 πΆ. (16)
3. Polar decomposition and orthogonal transformations
A square matrix M can be decomposed into the product of an orthonormal matrix R and a positive
semi-deο¬nite matrix S [5]. The matrix S is always uniquely determined. The matrix R is uniquely
determined when M is nonsingular. When M is nonsingular, we can actually write directly [8]
π = π
π, (17)
1
π
= π(ππ‘ π)β2. (18)
π‘
The matrix π π is positive semi-deο¬nite and symmetric. The orthogonal matrix π
in (18) can be
computed by the following way [8]:
1
0 0
βπ1
1
π
= ππΆ 0 0 πΆπ‘ , (19)
βπ2
1
0 0
( βπ3 )
where πΆ is orthogonal matrix consisting of columns, that are eigenvectors of the matrix ππ‘ π.
Numbers ππ , π = 1, β¦ ,3, are eigenvalues of the matrix ππ‘ π. The formula (18) also defines [8] a
nearest orthogonal matrix π
for the nonsingular matrix π. It means that the formula (18) describes the
projection from the group ππΏ(3) to the subgroup ππ(3).
4. Projection on πΊπΆ(π)
For approximation of the exact solution of the problem (5) we propose the following method. At each
step of the ICP algorithm, we project a top-left submatrix π΄β² (size of 3 Γ 3) of a matrix π΄ of an affine
transform, computed by the formula (16), to ππ(3) by the formula (19). After that it is necessary to
recalculate a translation π‘ = (π‘1 , π‘2 , π‘3 ) π‘ .
Denote by π
a result of projection of a top-left submatrix 3 Γ 3 of a matrix π΄ to ππ(3). Denote by
π the following matrix π Γ 3:
π11 π12 π13
π=( β¦ ), (20)
π π π
π1 π2 π1
IV International Conference on "Information Technology and Nanotechnology" (ITNT-2018) 238
Image Processing and Earth Remote Sensing
A Makovetskii, S Voronin, V Kober, A Voronin and D Tihonkih
denote by π£ the following vector-column π Γ 1:
π£π =< ππ β π
π π , ππ >. (21)
Then the problem
βππ=1(< π
ππ + π‘ β ππ , ππ > )2 = βππ=1(< π‘, ππ > β< ππ β π
ππ , ππ > )2 β minπ‘ , (22)
is the least squares problem for the equation
ππ‘ = π£. (23)
Thus we have:
π‘ = (π π‘ π)β1 π π‘ π£. (24)
Figure 1. Illustration of projection of Figure 2. Block-diagram of the proposed
the top-left submatrix π΄β² onto ππ3 . algorithm.
Figure 1 illustrates projection of the top-left submatrix π΄β² of the matrix π΄ of the affine transform
onto submanifold ππ3 . The block-diagram of the proposed algorithm as part of the ICP algorithm is
shown in Figure 2.
5. Computer simulation
5.1. We consider two variants of the ICP algorithm here
The first is point-to-point ICP based on Horn algorithm. The second is point-to-plane ICP based on the
proposed approximation of an exact solution of the variational problem. Other elements of ICP
algorithm are same.
5.1.1. Let π be the cloud consisting of 34817 points, see figure 1 (blue colour)
The cloud π (green colour) is obtained from π by the orthogonal transformation π = π1 β π, where
π1 is given by
1.00000 0.00000 0.00000 3.10000
0.00000 0.83867 β0.54464 1.13270
π1 = ( ).
0.00000 0.54464 0.83867 1.92795
0.00000 0.00000 0.00000 1.00000
Computed by the proposed method transformation π1 is given as
1.00000 0.00000 0.00000 3.10000
0.00000 0.83867 β0.54464 1.13270
π1 = ( ).
0.00000 0.54464 0.83867 1.92795
0.00000 0.00000 0.00000 1.00000
The reconstructed by the point-to-point ICP geometrical transformation has the same matrix. The
point-to-point ICP method converges in 31 iterations, processing time 1745 milliseconds. The
proposed ICP method converges in 10 iterations, processing time 913 milliseconds.
Figure 3 shows the clouds π (blue) and π (green), figure 4 shows the clouds πβ² = π1 β π (blue)
and π (green) together.
IV International Conference on "Information Technology and Nanotechnology" (ITNT-2018) 239
Image Processing and Earth Remote Sensing
A Makovetskii, S Voronin, V Kober, A Voronin and D Tihonkih
Figure 3. Cloud π (blue), cloud π (green). Figure 4. Cloud πβ² = π1 β π (blue), cloud π
(green).
5.1.2. Let π be the cloud consisting of 34817 points, see figure 3 (blue colour)
The cloud π (green colour) is obtained from π by the orthogonal transformation π = π2 β π, where
π1 is given by
0.91015 β0.36772 0.19081 β0.79646
0.21782 0.81653 0.53463 2.18083 ).
π2 = (
β0.35240 β0.44503 0.82326 2.41239
0.00000 0.00000 0.00000 1.00000
Computed by the proposed method transformation π2 is given as
0.91015 β0.36772 0.19081 β0.79646
0.21782 0.81653 0.53463 2.18083 ).
π2 = (
β0.35240 β0.44503 0.82326 2.41239
0.00000 0.00000 0.00000 1.00000
The reconstructed by the point-to-point ICP geometrical transformation has the same matrix. The
point-to-point ICP method converges in 41 iterations, processing time 2458 milliseconds. The
proposed ICP method converges in 16 iterations, processing time 1491 milliseconds.
Figure 5. Cloud π (blue), cloud π (green). Figure 6. Cloud πβ² = π2 β π (blue), cloud π
(green).
Figure 5 shows the clouds π (blue) and π (green), figure 6 shows the clouds πβ² = π2 β π (blue)
and π (green) together.
5.1.3. Let π be the cloud consisting of 34817 points, see figure 5 (blue colour)
The cloud π (green colour) is obtained from π by the orthogonal transformation π = π3 β π, where
π3 is given by
0.98163 0.00000 β0.19081 β0.64070
0.03641 0.98163 0.18730 0.03261
π3 = ( ).
0.18730 β0.19081 0.96359 1.21591
0.00000 0.00000 0.00000 1.00000
Computed by the proposed method transformation π1 is given as
IV International Conference on "Information Technology and Nanotechnology" (ITNT-2018) 240
Image Processing and Earth Remote Sensing
A Makovetskii, S Voronin, V Kober, A Voronin and D Tihonkih
0.98163 0.00000 β0.19081 β0.64070
0.03641 0.98163 0.18730 0.03261
π3 = ( ).
0.18730 β0.19081 0.96359 1.21591
0.00000 0.00000 0.00000 1.00000
The reconstructed by the point-to-point ICP geometrical transformation has the same matrix. The
point-to-point ICP method converges in 19 iterations, processing time 984 milliseconds. The proposed
ICP method converges in 9 iterations, processing time 747 milliseconds.
Figure 7. Cloud π (blue), cloud π (green). Figure 8. Cloud πβ² = π3 β π (blue), cloud π
(green).
Figure 7 shows the clouds π (blue) and π (green), figure 8 shows the clouds πβ² = π3 β π (blue)
and π (green) together.
5.1.4. Let π be the cloud consisting of 106289 points, see figure 7 (blue colour)
The cloud π (green colour) is obtained from π by the orthogonal transformation π = π4 β π, where
π4 is given by
0.83867 0.54464 β0.00000 1.38331
β0.45677 0.70337 β0.54464 β0.29804
π4 = ( ).
β0.29663 0.45677 0.83867 0.99881
0.00000 0.00000 0.00000 1.00000
Computed by the proposed method transformation π4 is given as
0.83867 0.54464 β0.00000 1.38331
β0.45677 0.70337 β0.54464 β0.29804 ).
π4 = (
β0.29663 0.45677 0.83867 0.99881
0.00000 0.00000 0.00000 1.00000
The reconstructed by the point-to-point ICP geometrical transformation has the same matrix. The
point-to-point ICP method converges in 24 iterations, processing time 6316 milliseconds. The
proposed ICP method converges in 16 iterations, processing time 5792 milliseconds.
Figure 9. Cloud π (blue), cloud π (green). Figure 10. Cloud πβ² = π4 β π (blue), cloud π
(green).
Figure 9 shows the clouds π (blue) and π (green), figure 10 shows the clouds πβ² = π4 β π (blue)
and π (green) together.
IV International Conference on "Information Technology and Nanotechnology" (ITNT-2018) 241
Image Processing and Earth Remote Sensing
A Makovetskii, S Voronin, V Kober, A Voronin and D Tihonkih
6. Conclusion
In this paper, we revised error minimizing steps of the ICP algorithm. A new algorithm for orthogonal
registration of point clouds based on the point-to-plane ICP algorithm for affine transformation is
proposed. At each iterative step of the algorithm, an approximation of the closed-form solution for the
orthogonal transformation is derived.
7. References
[1] Besl P and McKay N 1992 A Method for Registration of 3-D Shapes IEEE Transactions on
Pattern Analysis and Machine Intelligence 14 239-256
[2] Chen Y and Medioni G 1992 Object Modeling by Registration of Multiple Range Images
Image and Vision Computing 10 145-155
[3] Protsenko V I, Kazanskiy N L and Serafimovich P G 2015 Real-time analysis of parameters of
multiple object detection systems Computer Optics 39(4) 582-591 DOI: 10.18287/0134-2452-
2015-39-4-582-591
[4] Myasnikov V V 2015 A local order transform of digital images Computer Optics 39(3) 397-405
DOI: 10.18287/0134-2452-2015-39-3-397-405
[5] Goshin Ye V and Fursov V A 2015 3D scene reconstruction from stereo images with unknown
extrinsic parameters Computer Optics 39(5) 770-776 DOI: 10.18287/0134-2452-2015-39-5-
770-775
[6] Turk G and Levoy M 1994 Zippered Polygon Meshes from Range Images Computer Graphics
Proceedings, Annual Conference Series 311-318
[7] Horn B 1987 Closed-Form Solution of Absolute Orientation Using Unit Quaternions Journal of
the Optical Society of America A 4 629-642
[8] Horn B, Hilden H and Negahdaripour S 1988 Closed-form Solution of Absolute Orientation
Using Orthonormal Matrices Journal of the Optical Society of America Series A 5 1127-1135
[9] Du S, Zheng N, Ying S, You Q and Wu Y 2007 An extension of the ICP algorithm considering
scale factor Proc. 14th IEEE Internat. Conf. on Image Processing (ICIP) 193-196
[10] Du S, Zheng N, Ying S and Liu J 2010 Affine iterative closest point algorithm for point set
registration Pattern Recognition Letters 31 791-799
[11] Du S, Zheng N, Meng G and Yuan Z 2008 Affine Registration of Point Sets Using ICP and
ICA IEEE Signal Processing Letters 15 689-692
[12] Tihonkih D, Makovetskii A and Kuznetsov V 2016 A modified iterative closest point algorithm
for shape registration Proc. SPIE Appl. of Digital Image 9971 99712D
[13] Tihonkih D, Makovetskii and Kuznetsov V 2016 The iterative closest points algorithm and
affine transformations Proc. Int. Conference of Analysis of Images, Social Networks, and Texts
351-359
[14] Vokhmintsev A, Makovetskii A, Kober V, Sochenkov I and Kuznetsov V 2015 A fusion
algorithm for building three-dimensional maps Proc. SPIE's 60 Annual Meeting: Applications of
Digital Image Processing XXXVIII 9599 959929-1
[15] Rusinkiewicz S and Levoy M 2001 Efficient Variants of the ICP Algorithm Proceedings of the
International Conference on 3-D Digital Imaging and Modeling 145-152
[16] Makovetskii A, Voronin S, Kober V and Tihonkih D 2017 An efficient point-to-plane
registration algorithm for affine transformations Applications of Digital Image Processing
10396 103962J
[17] Makovetskii A, Voronin S, Kober V and Tihonkih D 2017 Affine registration of point clouds
based on point-to-plane approach Procedia Engineering 201 322-330
Acknowledgments
The work was supported by the Ministry of Education and Science of Russian Federation (grant β
2.1743.2017) and by the RFBR (grant β 18-07-00963).
IV International Conference on "Information Technology and Nanotechnology" (ITNT-2018) 242