Download - Scaling iterative closest point algorithm using dual ... iterative closest point algorithm... · 1100 W. Xia et al. / Optik 140 (2017) 1099–1109 [15] improved the ICP algorithm

Transcript

O

Sq

Wa

b

a

ARA

KISDT

1

b[

aaucoamti

0

Optik 140 (2017) 1099–1109

Contents lists available at ScienceDirect

Optik

j ourna l ho me pa ge: www.elsev ier .de / i j leo

riginal research article

caling iterative closest point algorithm using dual numberuaternions

enze Xiaa,b, Shaokun Hana,∗, Jingya Caoa, Jie Caoa,b, Haoyong Yub

School of Optoelectronics, Beijing Institute of Technology, Beijing 100081, ChinaDepartment of Biomedical Engineering, National University of Singapore, Singapore 117575, Singapore

r t i c l e i n f o

rticle history:eceived 12 August 2016ccepted 4 May 2017

eywords:terative closest pointcaling factorual number quaternionsransformation parameters estimation

a b s t r a c t

This paper presents a novel extended iterative closest point algorithm which can handle3D point sets registration problem with scaling factor. In each iterative process of thisalgorithm, a scaling factor is introduced into objective function used to estimate all thetransformation parameters, and this paper succeeds in solving this objective function usingdual number quaternions. If the corresponding point pairs have been established properly,this algorithm can give all the global optimal transformation parameters by one-step calcu-lation rather than iterative process. This algorithm is independent of shape representationand feature extraction, and thereby it is general for scaling registration of 3D point sets.The effectiveness of proposed algorithm is demonstrated in several experiments on sim-ulated 3D curves and real 3D point clouds. Furthermore, the execution time of proposedalgorithm is analyzed by a comparative experiment. The final results demonstrate that thisalgorithm can successfully handle 3D point sets registration problem with scaling factor,and this algorithm has a better performance in the aspect of running speed for a big size of3D point sets.

© 2017 Elsevier GmbH. All rights reserved.

. Introduction

Recently, with wide application of various 3D range data acquisition devices, 3D point sets registration problem hasecome a hot research topic. It has been widely used in a variety of fields such as topographic mapping [1], face recognition2], target recognition [3], and 3D point clouds registration [4,5].

Iterative Closest Point (ICP) algorithm has an excellent performance in 3D point sets registration problem for its goodccuracy and fast speed [6,7]. It is able to estimate the optimal transformation parameters by a finite iteration. Since the ICPlgorithm came forward 20 years ago, many scholars have introduced numerous improved algorithms. In order to speedp the closest points search, Nuchter [8] proposed cached k-D closest point search algorithm. In order to discard pseudoorresponding point pairs, Rousseeuw [9] proposed a versatile method for computing the maximum allowable distance. Inrder to decrease the probability of being trapped in a local minimum, Sharp [10] proposed invariant features, and manylgorithms used to compute rough pre-alignment parameters were described [11,12]. The genetic algorithms and evaluation

etric were introduced by Silva [13] into ICP algorithm for more precise registration. In many applications of ICP algorithm,

he 3D data always contains high level of noise and outlier, so how to improve the robustness of the registration is anothermportant research direction. Censi [14] introduced a point-to-line metric to improve the robustness of registration. Kim

∗ Corresponding author.E-mail address: [email protected] (S. Han).

http://dx.doi.org/10.1016/j.ijleo.2017.05.030030-4026/© 2017 Elsevier GmbH. All rights reserved.

1100 W. Xia et al. / Optik 140 (2017) 1099–1109

[15] improved the ICP algorithm by hierarchical model point selection and logarithmic data point search. Moreover, the ICPalgorithm was extended to the non-rigid registration [16,17].

The ICP algorithm was proposed many years ago, and its improved algorithm has achieved state-of-the-art results [18,19].However, the original ICP algorithm and its improved algorithm don’t take scaling factor into account. In fact, the scaling factoralways exists in some cases since images acquired by real digitizers differ greatly in viewpoints and scanning resolutions[20]. In [21], the scaling factor was estimated by using extended signature image. While this method needs local featuredata, it is difficult to extend it to various applications. In [22], Zin�er et al. introduced the scaling factor into error objectivefunction for the first time. In that paper, the singular value decomposition (SVD) algorithm was used to compute rotationmatrix, and the author proposed a hypothesis which claims the estimation of the rotation matrix is not affected by theintroduced scaling factor at all. However, this hypothesis was not proved by rigorous mathematical deduction, and it wasjust verified by many tests. In [20], Ying et al. proved this hypothesis, and gave the whole algorithm which can handle pointsets registration problem with scaling factor using SVD algorithm. In fact, the basic implementation process of Zin�er’salgorithm is similar to that of Ying’s algorithm.

In this paper, we propose an extended ICP algorithm with scaling factor. This algorithm is independent of shape repre-sentation and feature extraction, and thereby it is general for scaling registration of 3D point sets. It can easily be appliedto a wide range of existing variants of the ICP algorithm. This paper also proves that the estimation of the rotation matrixis not affected by the introduced scaling factor at all by rigorous mathematical deduction. In each iterative process whenthe corresponding point pairs have been established properly, this algorithm can also give all the global optimal transfor-mation parameters by one-step calculation rather than iterative process. In our work, all the transformation parameters arecomputed by using the dual number quaternions(DQ) method. In order to verify the effectiveness of proposed algorithm,several experiments on simulated 3D curves and real 3D point clouds were performed. The final results demonstrate thisalgorithm can successfully handle 3D point sets registration problem with scaling factor, which is not possible for the basicICP algorithm without initial registration. We can also conclude that the basin of convergence of the ICP algorithm with orwithout scaling factor depends strongly on the shape and structure of the point sets, and good pre-alignment parameters arevery important for entire algorithm. In many applications of ICP algorithm, the execution time is always an important factorneeded to be considered. Especially, with the progress of various 3D range data acquisition techniques, the size of point setsis becoming bigger and bigger. Therefore, it is strongly required that the registration algorithm can have an as fast runningspeed as possible for large point sets. Therefore, the execution time of proposed algorithm is analyzed by a comparativeexperiment. The final result shows that our algorithm has a better performance in the aspect of running speed for a big sizeof 3D point sets compared with Zin�er’s algorithm. So our algorithm has a better application prospect in the future.

The paper is organized as follows. In Section 2, we firstly review the structure and the mathematical details of the basic ICPalgorithm. Then, we present our algorithm and analyze its convergence. In Section 3, several experiments on simulated 3Dcurves and real 3D point clouds are performed in order to verify the effectiveness of proposed algorithm. Then, a comparativeexperiment is carried out in order to analyze the execution time of proposed algorithm. In Section 4, several conclusionsbased on the previous experiments are drawn.

2. Theory

2.1. The problem statement

What we want to handle in this paper is to register two 3D point sets. It is a very difficult problem because the effectof rotation, translation, scaling, noise and outlier point. In order to handle this registration problem, we must describe thisproblem using mathematical language firstly.

Given two point sets in R3, a scene point sets is defined as X and a model point sets is defined as M, and assume that theyhave large overlap. T is a transformation, and it can adjust position, attitude and scaling of X. f is an objective function. Then,the registration problem between X and M can be represented by the following mathematical function

T = arg min f [T(X), M] . (1)

In this function, f can be various objective functions, and T is what we want to obtain.

2.2. The ICP algorithm

The basic ICP algorithm is the most popular algorithm for registration of 3D point sets. In this algorithm, the transformationT is represented using rotation matrix R and translation vector t. The objective function is represented using the sum of squaredistance between these two point sets. Then, the registration problem can be written as

n

(R∗, t∗) = arg min∑i=1

[(Rxi + t) − mi]2, (2)

where, xi ∈ X, mi ∈ M.

ippt

2

mIa[tcmststo

tc

w

wd

w

W. Xia et al. / Optik 140 (2017) 1099–1109 1101

The basic ICP algorithm is a kind of iterative algorithm, and it is not able to compute R* and t* just by one-step calculation. Itteratively performs the following two steps until convergence. In the first step, corresponding point pairs between the sceneoint sets and the model point sets are searched. In the second step, the transformation that best aligns the correspondingoint pairs is computed and applied to the scene point sets. As the registration error is reduced in every iterative process,he basic ICP algorithm always converges in finite time.

.3. The ICP algorithm with scaling factor

The basic structure of extended ICP algorithm with scaling factor is similar to that of the basic ICP algorithm. This extendedethod can provide optimal transformation parameters after a finite iteration, and each iterative process contains two steps.

n the first step, the algorithm needs to search the corresponding point pairs between scene point sets and model point sets,nd the simplest searching strategy is shortest-distance method. Many other searching strategies have been proposed in8]. In the second step, after corresponding point pairs have been formed, the optimal transformation parameters needo be estimated, which is also called the absolute orientation problem. The most common method for this operation is tohoose the sum of square distance between scene point sets and model point sets as error objective function. Then, variousathematical tools can be used to try to solve this objective function. It had been proved that DQ algorithm can be used to

olve similar optimization problem without scaling factor [24]. However, in the previous research, there is no any evidencehat shows DQ algorithm can be used to solve an optimization problem with scaling factor. In this paper, we succeed inolving this optimization problem with scaling factor using DQ algorithm. A comparison of four algorithms which are ableo solve point sets registration problem without scaling factor can be found in [23]. In this paper, our work mainly focusesn the second step, and we introduce a scaling factor into the objective function.

Given two point sets in R3, a scene point sets is defined as {x0i}n

i=1and a model point sets is defined as {m0

i}n

i=1, and assume

hat they are corresponding point sets. In this case, the objective function of transformation parameters estimation probleman be express as

(R∗, t∗, k∗) = arg minn∑

i=1

[(Rkx0

i + t)

− m0i

]2, (3)

here R is rotation matrix, t is translation vector, and k is scaling factor.In order to solve this optimization problem using DQ method, the scene and model point sets need to be defined again as

xi =[

x0i

0

], mi =

[m0

i

0

]. (4)

Then, the function of registration error can be express as

E =n∑

i=1

[(kW (r)T Q (r) xi + W (r)T s

)− mi

]2, (5)

here r and s are two quaternions, W(r) and Q(r) are two important matrix functions of quaternions [7], and they can beefined as(

R 0

0 1

)= W (r)T Q (r) ,

(t

0

)= W (r)T s. (6)

Thus, the error function can be written as a quadratic function of r and s,

E = nsT s + ksT C1r + sT C2r + krT C3r + k2C4 + C5, (7)

here

C1 = 2n∑

i=1

W (xi) , (8)

C2 = −2n∑

i=1

Q (mi) , (9)

C3 = −2n∑

Q T (mi) W (xi) , (10)

i=1

C4 =n∑

i=1

xiT xi, (11)

1102 W. Xia et al. / Optik 140 (2017) 1099–1109

C5 =n∑

i=1

miT mi. (12)

We need to compute r and s to minimize this error function subject to the constraints

rT r = 1,sT r = 0. (13)

In order to solve this constrained minimum optimization problem, Lagrange multipliers method is used, and the Lagrangefunction can be written as

L = nsT s + ksT C1r + sT C2r + krT C3r + k2C4

+C5 + �1(

rT r − 1)

+ �2sT r, (14)

where �1 and �2 are Lagrange multipliers. Taking the partial derivatives gives

∂L

∂r= k

(C3 + C3

T)

r + kCT1s + C2

T s + 2�1r + �2s = 0, (15)

∂L

∂s= 2ns + kC1r + C2r + �2r = 0, (16)

∂L

∂k= rT C3r + sT C1r + 2kC4 = 0. (17)

Thus, the solution of Eqs. (13), (15), (16), and (17) for r and s gives the optimal solution for transformation parameters ofobject.

In order to solve these equations, Eq. (16) is multiplied by rT

2nrTs + krT C1r + rT C2r + �2rT r = 0. (18)

Since C1 and C2 are skew symmetric,

�2 = 0. (19)

We can now solve for s as a function of r from Eq. (16),

s = − 12n

(kC1r + C2r) . (20)

Substituting Eqs. (19) and (20) into Eq. (17) gives

k =rT

(C3 − 1

2n CT2C1

)r

12n rT CT

1C1r − 2C4. (21)

Substituting Eqs. (19) and (20) into Eq. (15) gives

−[

kC3 +(

14

k2C1C1 + 12

kC1C2 + 14

C2C2

)/n

]r = �1r. (22)

Since C1 and C2 are skew symmetric, if I is defined as identity matrix, C1 and C2 satisfy the following two equations

C1C1 = aI, C2C2 = bI. (23)

Substituting Eq. (23) into Eq. (22) gives

Ar =[− 1

4nk

(4n�1 + ak2 + b

)]r, (24)

where

A = C3 + C1C2

2n. (25)

Thus, the quaternion r is an eigenvector of matrix A, and �1 is related to the corresponding eigenvalue. In theory, thisequation has four solutions. Since A is real and symmetric, all of the eigenvalues and the eigenvectors will be orthogonal.

The mathematical expression of the quaternion s has been obtained, so the following equations are given

sT s = − 14n2

(k2rT C1C1r + 2krT C1C2r+rT C2C2r

), (26)

ksT C1r = 12n

(k2rT C1C1r + krT C1C2r

), (27)

sT C2r = 12n

(krT C1C2r + rT C2C2r

). (28)

Ecae

vfawtsu

t

2

hait

Ts

Pa

s

w

rE

wia

tvps

pH

W. Xia et al. / Optik 140 (2017) 1099–1109 1103

Substituting the above result back into Eq. (7) gives

E = k2C4 + C5 − �1. (29)

q. (29) is the registration error between two point sets. In order to minimize Eq. (29), four eigenvectors of A and theorresponding �1 are computed. Then, the four corresponding scaling factor k can be computed by Eq. (21). Substituting thebove four pairs of k and �1 into Eq. (29) gives four error values. Then, we select r, k and �1 corresponding to the smallestrror values as the final result.

Having got the above solutions, the quaternion s can be computed from Eq. (20). The rotation matrix R* and the translationector t* can then be solved from Eq. (6). Since the rotation matrix R* is only related to r, and the quaternion r can be solvedrom the matrix A, we can conclude that the estimation of the rotation matrix is not affected by the introduced scaling factort all. We can also conclude that our solutions are global optimal solutions of objective function in each iterative processhen the corresponding point pairs have been established. By now, we can get our entire iterative algorithm by combining

he above step and the step of searching corresponding point pairs. In this paper, the shortest-distance method is used toearch corresponding point pairs, and in order to decrease the effect of outliers, the technology of outlier rejection in [7] issed. Therefore, the whole ICP algorithm with scaling factor is reasonably drawn out as follow.

Input: Two point sets {x0i}n

i=1and{m0

i}n

i=1.

Repeat:Step 1: Search corresponding point pairs using the method of shortest-distance and outlier rejection by the (s-1)th

ransformation (Rs-1, ts-1, ks-1)Step 2: (Rs, ts, ks) can be calculated according to Eqs. (6) and (21) and satisfies the condition rT r = 1, sT r = 0.Until: |E(Rs, ts, ks)-E(Rs-1, ts-1 ks-1)|< ε or s reaches a maximum number of iteration.Output: Rotation matrix Rs

*, translation vector ts* and scaling factor ks

*.

.4. Local minimum

In this section, the convergence of our algorithm will be analyzed and proved. Our algorithm and the basic ICP algorithmave the same process of searching the corresponding point pairs. Although the correct corresponding point pairs are notble to be formed in one step, it is expected to move to the correct point pairs much nearer by iteration. However, by now,n practice, none of searching strategy of corresponding point pairs can assure that the point sets monotonically moves tohe corresponding point sets. Hence, the problem of local minimum can never be avoided.

heorem. The extended ICP algorithm with scaling factor converges to a local or global minimum with respect to the sum ofquare distance.

roof. Given two point sets in R3, a scene point sets is defined as {x0i,s−1}n

i=1and a model point sets is defined as {m0

i,s−1}n

i=1,

nd assume that they are pseudo corresponding point pairs. Hence, the sum of square distance can be written as

es =n∑

i=1

|x0i,s−1 − m0

i,s−1|2. (30)

After the best transformation parameters are computed by the ICP algorithm which is presented in this paper, the newum of square distance can be written as

Es =n∑

i=1

|(

Rsksx0i,s−1 + ts

)− m0

i,s−1|2, (31)

here, Rs, ts and ks are rotation matrix, translation vector and scaling factor, respectively.In the Section 2.3, we have proved that our algorithm can provide global optimal transformation parameters after cor-

esponding point pairs have been formed. In other words, Es is the minimum of Eq. (31). Therefore, we can conclude thats ≤ es.

If the inequation of es ≤ Es-1 can be proved, the monotonic sequence (0 ≤···≤ Es ≤ es ≤ Es–1 ≤···) can assure that our algorithmill converges to a minimum with respect to square distance. However, as previously stated about searching strategy, there

s not any kind of searching strategy which can assure the above inequation by now. Therefore, in some cases, maybe ourlgorithm will not monotonically converges to a minimum.

The above theorem shows that there is a probability in which our algorithm will converge to a local minimum. To obtainhe global minimum, the simplest method is to find all the local minimums. However, it is very difficult to detect thesealues accurately. But good pre-alignment parameters and searching strategy of corresponding point pairs can reduce therobability of falling into local minimum. Therefore, how to estimate good pre-alignment parameters and good searching

trategy of point pairs are very important for entire algorithm.

It is worth mentioning that we research the convergence of our algorithm by analyzing the error value of each iterativerocess, because the sum of square distance between these two point sets are used as objective function in our algorithm.owever, the sum of square distance is not the best objective function, and the error function of all the transformation

1104 W. Xia et al. / Optik 140 (2017) 1099–1109

Fig. 1. Registration result of 3D curves: (a) the basic ICP (b) this work (c) Zin�er at al. work (d) absolute error of scaling factor (e) absolute error of rotationmatrix(f) absolute error of translation vector.

parameters is the best objective function. The reason why we still chose the sum of square distance is that in this case wecan easily obtain the optimal resolution of objective function by the least-squared technique. Therefore, how to obtain anoptimal resolution from the error objective function of all the transformation parameters is a good research direction in thefuture.

3. Experimental results

In order to verify the effectiveness of proposed algorithm and analyze the execution time of proposed algorithm, severalexperiments on simulated 3D curves and real 3D point clouds were performed, respectively. In the experiments, we comparedthe performance of the basic ICP algorithm, our algorithm and Zin�er’s algorithm [22].

3.1. Matching experiments using simulated 3D curves

In the experiment of 3D curves, experimental data were obtained by the following steps. (1) A 3D curve{

xoldi

}100

i=1with

100 coordinate points was obtained. And its mathematical expression is written as{y = 0.5x + 10

z = 10 [sin (0.1x) + 2 cos (0.25y) + 3.6], (32)

where, x was set to 1. . .100, respectively.(2) The scene data were obtained by extracting 80 coordinate points from this curve so that outlier points were added to

scene data, and then adding the mean noise within range (-1.5, 1.5) to every coordinate point. This process can be expressedas {

x0i

}80

i=1=

{xold

i

}100

i=21+

{noisei

}80

i=1. (33)

(3) The original curve was multiplied by scaling factor of 0.5. Then this curve rotated 10◦ around x, y, and z respectively.

Then the curve moved a distance according to the vector (5, 6, 7). Then a new curve{

xnewi

}100

i=1was obtained. This process

can be expressed as{xnew

i

}100

i=1= RzRyRxk0

{xold

i

}100

i=1+ t0. (34)

(4) The model data was obtained by extracting 90 coordinate points from this new curve so that outlier points wereadded to model data, and then adding mean noise within range (−1.5, 1.5) to every coordinate point. This process can beexpressed as

{

m0i

}90

i=1=

{xnew

i

}90

i=1+

{noisei

}90

i=1. (35)

The final registration result is shown in Fig. 1, and absolute errors of k, R, and t are used as the performance evaluationindicators. The reason why we do not choose the sum of square distance between these two point sets as indicator is that,

W. Xia et al. / Optik 140 (2017) 1099–1109 1105

Fa

itnIoT

wa

Hspcs

eswt2i

sawwdrsisp

3

cd

ig. 2. Registration result of 3D curves with respect to different scaling factor: (a) absolute error of scaling factor (b) absolute error of rotation matrix(c)bsolute error of translation vector.

n many cases, even in a bad registration result, the value of square distance is still very small. This is because there areoo many useful points are discarded in the iterative process. Therefore, the sum of square distance in Eqs. (2) and (3) isot the optimal objective function. The error function of all the transformation parameters is the best objective function.

n the future, in order to improve the whole performance of ICP algorithm, this objective function can replace the originalbjective function when optimal resolution of this objective function can be obtained by rigorous mathematical deduction.he mathematical equation of computing absolute error Ek, ER and Et are written as

Ek = |k0 − k∗|, (36)

ER =3∑

i=1

3∑j=1

|R0 (i, j) − R∗ (i, j) |/9, (37)

Et =3∑

i=1

|t0 (i) − t∗ (i) |/3, (38)

here, k0 is the standard scaling factor; R0 = RzRyRx is the standard rotation matrix; t0 is standard translation vector; k*, R*nd t* are the final motion parameters after undergoing 20 iterative processes.

Fig. 1(a) shows that the final registration curve using the basic ICP algorithm doesn’t converge to the model curve.owever, in Fig. 1(b) and (c) the final registration curves successfully converge to the model curve. Fig. 2(d),(e) and (f)

hows that there is no difference between our algorithm and Zin�er’s algorithm for absolute error of all the transformationarameters, and the absolute error of these two algorithms are far less than that of the basic ICP algorithm. Hence, we canonclude that the standard ICP algorithm without initial registration isn’t able to solve 3D curves registration problem withcaling factor. Our algorithm and Zin�er’s algorithm can successfully solve this registration problem of 3D curves.

In order to further analyze the performance of our algorithm, we conducted another experiment on 3D curves. In thisxperiment, the test data was obtained according to the above process. However, in this experiment, the scaling factor k waselected as experimental variable. We tested our algorithm in the condition with different scale factors. In the experiment,hen the scaling factor has been chosen, each experiment still has different result because of the different noise. Considering

hat the aim of this experiment is to analyze the ultimate performance of our algorithm, we selected the best result from0 tests as the final result. In the experiment, we also selected absolute errors of k, R, and t as the performance evaluation

ndicators. The final results are shown in Fig. 2.Fig. 2(a) reveals that, when the scaling factor k is less than 1.2 and larger than 0.4, the absolute errors Ek ER and Et are

mall, and the error of the basic ICP algorithm is fall larger than those of the rest two algorithms. When k goes beyond thebove range, the result dramatically goes bad. Hence, we can conclude that our algorithm has a big basin of convergenceith respect to the scaling factor k, and the problem of local minimum still exist. For the registration problem of 3D curvesith scaling factor, compared with the basic ICP algorithm, our algorithm has a better performance with respect to theifferent scaling factors. In addition, there is no difference between our algorithm and Zin�er’s algorithm for 3D curves withespect to the different scaling factors when both of the two algorithms have a successful registration. In [23], there was aimilar conclusion for the standard SVD and DQ methods. That paper proposed for “typical, real-world” noise levels, theres no difference for robustness of the final solutions between SVD and DQ method. The results also show that our algorithmtill has a local minimum problem. Hence, we need good pre-alignment parameters before this algorithm is applied to theroblem of 3D curves registration.

.2. Matching experiments using 3D point clouds

In the experiment of 3D point clouds, a car model from the Princeton Shape Benchmark[25] was selected as scene pointloud data. In order to get model point cloud data, the scene data was multiplied by scaling factor of 0.95 and moved aistance as vector (0, 0, 4). The reason why the scaling factor is closer to 1 than the experiment of 3D curves is that in this

1106 W. Xia et al. / Optik 140 (2017) 1099–1109

Fig. 3. Registration result of 3D point clouds: (a) the basic ICP (b) this work (c) Zin�er at al. work (d) absolute error of scaling factor (e) absolute error ofrotation matrix(f) absolute error of translation vector.

Fig. 4. Registration result of 3D point clouds with respect to different scaling factor: (a) absolute error of scaling factor (b) absolute error of rotationmatrix(c) absolute error of translation vector.

experiment there is a bigger chance to trap into local minimum. We also used absolute errors of k, R, and t as the performanceevaluation indicators. Fig. 3(a) shows the final registration result using the basic ICP algorithm has a comparatively goodconvergence result since the value of k is close to 1. In Fig. 3(b) and (c) the final registration point clouds also have a goodconvergence result. Fig. 3(d), (e) and (f) show that there is no difference between our algorithm and Zin�er’s algorithm forabsolute errors of all the transformation parameters, and the absolute error of these two algorithms are less than that ofthe basic ICP algorithm. Hence, we can conclude that our algorithm and Zin�er’s algorithm have a similar performance forsolving 3D point cloud registration problem with scaling factor, and their performance is better than the basic ICP algorithm.

In order to further analyze the performance of our algorithm in this condition, we evaluated the basin of convergence ofour algorithm with respect to the different scaling factors for 3D point clouds. In this experiment, the 3D point clouds wereobtained according to the above process. And the scaling factor k was selected as experimental variable. Considering that itis very easy to fall into local minimum for 3D point clouds when scaling factor k is far away from 1, translation vector wasset to (0, 0, 0). In the experiment, we also selected absolute errors of k, R, and t as the performance evaluation indicators.The final results are shown in Fig. 4.

Fig. 4(a) reveals that the change of the absolute error Ek is comparatively smooth and the value of Ek is less than 0.04when k belongs to the range [0.9, 1.1]. This means that the basin of convergence of 3D point clouds is comparatively smallthan that of 3D curves. Fig. 4(b) and (c) reveals that when k belongs to the range [0.65,1.3], the error values ER and Et ofthe basic ICP algorithm are larger than those of the rest two algorithms. When k goes beyond the above range, the resultsof our algorithm and Zin�er’s algorithm dramatically go bad. This means that when these three algorithms fall into localminimum, the basic ICP algorithm has a more stable performance. It is very easy to understand this phenomenon, becausethe more degrees of freedom, the more instability. Hence, we can conclude that for our algorithm 3D point clouds has a

smaller basin of convergence than 3D curves. The basin of convergence of the ICP algorithm with and without scaling factordepends strongly on the shape and structure of the point sets. Therefore, in order to reduce the probability of falling intolocal minimum, good pre-alignment parameters and good searching strategy of point pairs are very important for entirealgorithm.

W. Xia et al. / Optik 140 (2017) 1099–1109 1107

Fig. 5. Registration result of real 3D point clouds: (a) the initial position (b) the final registration result of ICP(3D view) (c) the final registration result ofIw

tbdaa

wFtihor

3

Ioroocctsoas

CP(2D view) (d) RSM error of registration within 60 iterations (e) the final registration result of this work(3D view) (f) the final registration result of thisork(2D view).

In order to test the performance of our algorithm under real 3D point cloud, we employed Stanford 3D Scanning Repositoryo compare the basic ICP algorithm with our algorithm. In this test, we display and explain the result of registration betweenun045 (40097 points) and bun000 (40256 points) of the Stanford Bunny data set [26]. In order to add the scaling effect, theata of bun000 is multiplied by 2. Considering that we don’t know the exact transformation parameters between bun000nd bun 045, we selected the RMS error as the performance evaluation indicators. The mathematical equation of RMS errorre written as

RMS = 1n

n∑i=1

[(R∗k∗xi + t∗) − mi]2, (39)

here, k*, R* and t* are the motion parameters in each iterative process. The total amount of iteration was set to 60.urthermore, because there is a big transformation between bun000 and bun045, we decided to employ the method in [20]o estimate pre-alignment parameters. The final result is shown in Fig. 5. The initial position of bun000 and bun045 is shownn Fig. 5(a). We can find that when good pre-alignment parameters are used, both the basic ICP algorithm and our algorithmave a good convergent result in Fig. 5(b)(c)(e)(f). But we can find that the RMS value of our algorithm is smaller than thatf the basic ICP algorithm. Therefore, we can conclude that our algorithm have a better performance for 3D point cloudegistration problem with scale factor compared with the basic ICP algorithm.

.3. Matching experiments on execution time

In order to analyze the execution time of our algorithm, the comparative experiment in this section was carried out.n this experiment, Stanford Bunny data set was still used as input point set. But the size of this point set was adapted inrder to meet the experimental requirement of this section. In every selected size, our algorithm and Zin�er’s algorithm wasepeatedly performed 40 times, respectively, so that we could record 40 values of execution time for every algorithm. Inrder to get a stable result, the mean value of these 40 values was selected as the running time corresponding to this size. Inrder to visually express the final result, three figures with different interval of independent variable are shown in Fig. 6. Itan be found that green curve is higher than blue curve in Fig. 6(a), the two curves have a similar trend in Fig. 6(b), and blueurve is higher than green curve in Fig. 6(c). Therefore, we can conclude that the running speed of our algorithm is slowerhan that of Zin�er’s algorithm for a small size of point sets, and the result is reverse for a big size of point sets, which isimilar to the conclusions in [23]. Furthermore, with the progress of various 3D range data acquisition techniques, the size

f point sets is becoming bigger and bigger. Therefore, it is strongly required that the registration algorithm can have ans fast running speed as possible for large point sets. So our algorithm will have a better prospect in the aspect of runningpeed in the future.

1108 W. Xia et al. / Optik 140 (2017) 1099–1109

[[

[

[

[[

Fig. 6. Execution time of different algorithms.

4. Conclusion

In conclusion, this paper presents a novel extended ICP algorithm which can handle 3D point sets registration problemwith scaling factor. In each iterative process, the scaling factor is introduced into objective function, and this paper succeedsin solving this objective function using DQ. If the corresponding point pairs have been established properly, our algorithmcan give all the global optimal transformation parameters by one-step calculation rather than iterative process. This paperprovides mathematical expression of registration error of each iterative process, and also proves that the estimation of therotation matrix is not affected by the introduced scaling factor at all by rigorous mathematical deduction.

In order to verify the effectiveness of proposed algorithm and analyze the execution time of proposed algorithm, severalexperiments on simulated 3D curves and real 3D point clouds were performed. The final results show that our algorithmhas a better performance than the basic ICP algorithm for 3D point sets registration problem with scaling factor. The basinof convergence of 3D point clouds is relatively smaller than that of 3D curves. The basin of convergence of the ICP algorithmwith and without scaling factor depends strongly on the shape and structure of the point sets. The problem of local minimumnever can be avoided. In order to reduce the probability of falling into local minimum, good pre-alignment parameters andgood searching strategy of corresponding point pairs are very important for entire algorithm. The results also show that ouralgorithm and Zin�er’s algorithm have a same performance in the aspect of registration ability. However, our algorithm hasa better performance in the aspect of running speed for a big size of 3D point sets compared with Zin�er’s algorithm.

With the progress of various 3D range data acquisition techniques, the size of point sets is becoming bigger and bigger.Therefore, our algorithm will have a better prospect in the future. Although this work has got a great success, there isalso plenty of room for further numerous research issues. Our future work will mainly focus on the anisotropic point setsregistration problem.

Acknowledgments

This project was sponsored by the National Natural Science Foundation of China (NNSFC) grant 61275018 and the Inter-national Science and Technology Cooperation Project grant 2015DFR10830. The author also wants to thanks for the financialsupport from China Scholarship Council (CSC).

References

[1] S. Ahuja, P.L. Les, S.L. Waslander, Three-dimensional scan registration using curvelet features in planetary environments, J. Field Rob. 33 (2) (2016)243–259.

[2] C. Zhang, S. Du, J. Liu, J. Xue, Robust 3D point set registration using iterative closest point algorithm with bounded rotation angle, Signal Process. 120(2016) 777–788.

[3] Y. Gao, M. Wang, R. Ji, X. Wu, Q. Dai, 3-D object retrieval with hausdorff distance learning, IEEE Trans. Ind. Electron. 61 (4) (2014) 2088–2098.[4] M. Lu, J. Zhao, Y. Guo, Y. Ma, Accelerated coherent point drift for automatic three-dimensional point cloud registration, IEEE Geosci. Remote Sens.

Lett. 13 (2) (2016) 162–166.[5] B. Bohra, D. Gupta, S. Gupta, An efficient approach of image registration using point cloud datasets, Proceedings of International Conference on

Reliability, Infocom Technologies and Optimization (2014).[6] P.J. Besl, N.D. Mckay, A method for registration of 3D shapes, Trans. Pattern Anal. Mach. Intell. 14 (2) (1992) 239–256.[7] Z.Y. Zhang, Iterative point matching for registration of free-form curves, Proceedings of International Journal of Computer Vision, IJCV (1994).[8] A. Nuchter, K. Lingemann, J. Hertzberg, Cached k-D tree search for ICP algorithms, Proceedings of International Conference on 3-D Digital Imaging

and Modeling (2007).[9] P.J. Rousseeuw, A.M. Leroy, Robust Regression and Outlier Detection, Wiley, 1987.10] G.C. Sharp, S.W. Lee, D.K. Wehe, ICP registration using invariant features, Trans. Pattern Anal. Mach. Intell. 24 (1) (2002) 90–102.11] M. Herrmann, M. Otesteanu, M. Otto, Fast and robust point cloud matching based on EM-ICP prepositioning, 10th International Symposium on

Electronics and Telecommunications (ISETC) 2012 (2012) 99–103.12] X. Leng, J. Xiao, D. Li, An initial registration method of point clouds based on random sampling, Applied Mechanics and Materials 513 (2014)

3680–3683.13] L. Silva, O.R.P. Bellon, K.L. Boyer, Precision range image registration using a robust surface interpenetration measure and enhanced genetic

algorithms, Trans. Pattern Anal. Mach. Intell. 27 (5) (2005) 762–776.14] A. Censi, An ICP variant using a point-to-line metric, IEEE International Conference on Robotics and Automation (2008) 19–25.15] D. Kim, D. Kim, A Fast ICP algorithm for 3-D human body motion tracking, IEEE Signal Process Lett. 17 (4) (2010) 402–405.

[

[[

[

[[

[

[

[[[

W. Xia et al. / Optik 140 (2017) 1099–1109 1109

16] S. Du, N. Zheng, L. Xiong, S. Ying, J. Xue, Scaling iterative closest point algorithm for registration of m–D point sets, J. Visual Commun. ImageRepresent. 21 (5) (2010) 442–452.

17] S. Du, N. Zheng, S. Ying, J. Liu, Affine iterative closest point algorithm for point set registration, Pattern Recognit. Lett. 31 (9) (2010) 791–799.18] D. Lee, Y. Yun, Y. Hwang, J. Lee, 2D grid map building using ICP algorithm and line extraction, Proceedings of International Conference on Control,

Automation and Systems (2014).19] Y. Guo, F. Sohel, M. Bennamoun, J. Wan, M. Lu, An accurate and robust range image registration algorithm for 3D object modeling, IEEE Trans.

Multimedia 16 (5) (2014) 1377–1390.20] S. Ying, J. Peng, S. Du, H. Qiao, A scale stretch method based on ICP for 3D data registration, IEEE Trans. Autom. Sci. Eng. 6 (3) (2009) 559–565.21] H. Zha, M. Ikuta, T. Hasegawa, Registration of range images with different scanning resolutions, Proceedings of International Conference on Systems,

Man and Cybernetics (2000).22] T. Zinßer, J. Schmidt, H. Niemann, Point set registration with integrated scale estimation, Proceedings of International Conference on Pattern

Recognition and Image Processing (2005).

23] D.W. Eggert, A. Lorusso, R.B. Fisher, Estimating 3-D rigid body transformations: a comparison of four major algorithms, Mach. Vision. Appl. 9 (5)

(1997) 272–290.24] W.W. Michael, S. Lejun, Estimating 3D location parameters using dual number quaternions, Image Understanding 54 (3) (1991) 358–367.25] P. Shilane, P., Min, M., Kazhdan, T Funkhouser, Princeton shape benchmark, 2004. (http://shape.cs.princeton.edu/benchmark/).26] The Stanford 3D Scanning Repository (http://www.graphics.stanford.edu/data/3Dscanrep/).