402 IEEE SIGNAL PROCESSING LETTERS, VOL. 17, NO. 4, APRIL 2010
A Fast ICP Algorithm for 3-D
Human Body Motion Tracking
Daehwan Kim and Daijin Kim
Abstract—Iterative closest point (ICP) algorithm has been
widely used for registering the geometry, shape and color of the
3-D meshes. However, ICP requires a long computation time to
find the corresponding closest points between the model points
and the data points. To overcome this problem, we propose a
fast ICP algorithm that consists of two acceleration techniques:
hierarchical model point selection (HMPS) and logarithmic data
point search (LDPS). HMPS accelerates the search by reducing
the search region of the data points corresponding to a model
point effectively: it selects the model points in a coarse-to-fine
manner and employs the four neighboring closest data points in
the upper layer to make the search region for finding the closest
data point corresponding to a model point in the lower layer.
LDPS accelerates the search by visiting the data points within
the search region using 2-D logarithm search. The HMPS method
and the LDPS method can be operating separately or together.
To evaluate the speed of the proposed ICP, we apply it to the 3-D
human body motion tracking. The proposed fast ICP is about 3.17
times faster than the existing ICP such as the K-D tree.
Index Terms—Fast ICP, hierarchical model point selection,
human body motion tracking, logarithmic data point search,
particle filter.
I. INTRODUCTION
I
TERATIVE closest point (ICP) is one of the best known
fitting or registration algorithms between two sets [1], [2],
and has been widely used for several applications, including 3-D
model fitting, shape registration, and human motion tracking.
The basic concept of the ICP algorithm is to find the corre-
sponding closest points and to estimate the motion transforma-
tion by minimizing the error between the model point set and
the data point set. After the ICP algorithm was introduced, their
many variants have been proposed [3], [4]. The basic ICP frame-
work can be explained as follows.
• Select some points in one set.
• Find the corresponding closest points in another set.
Manuscript received August 01, 2009; revised October 31, 2009. First pub-
lished January 08, 2010; current version published March 03, 2010. This work
was supported by the R&D program of the Korea Ministry of Knowledge and
Economy (MKE) and the Korea Evaluation Institute of Industrial Technology
(KEIT) (2008-F-037-01, Development of HRI Solutions and Core Chipsets for
u-Robot) and also by the WCU (World Class University) program through the
Korea Science and Engineering Foundation funded by the Ministry of Educa-
tion, Science and Technology (Project R33-2008-000-10103-0). The associate
editor coordinating the review of this manuscript and approving it for publica-
tion was Dr. Zhou Wang.
The authors are with the Department of Computer Science and Engineering,
Pohang University of Science and Technology, Pohang, Gyeongbuk 790-784,
Korea (e-mail: msoul98@postech.ac.kr; dkim@postech.ac.kr).
Color versions of one or more of the figures in this paper are available online
at http://ieeexplore.ieee.org.
Digital Object Identifier 10.1109/LSP.2009.2039888
• Minimize the error between searched pair sets and estimate
the motion transformation.
The main drawback of the ICP algorithm is that it requires a
huge amount of computational time to find the corresponding
closest points between the model and the data set. This time
increases explosively as the number of points in the model
and data sets increases. There are several ways to speed up
the ICP algorithm, which can be divided into two approaches.
The first approach is to reduce the number of iterations. Besl
and McKay [1] introduced an accelerated ICP which updated
the motion parameters using linear or parabolic extrapolation
to reduce the number of iterations. The second approach is to
reduce the search time for finding the corresponding closest
points. Besl and McKay [1] also suggested the K-D tree to
decrease the search time for finding the corresponding closest
points. Greenspan and Yurick [5] proposed the approximate
K-D tree that did not use expensive backtracking, but required
an additional time to construct the K-D tree. Turk and Levoy
[6] used the sampling methods such as subsampling or random
sampling. Although these methods reduced the computation
time required to find the corresponding closest points according
to the rate of the sampling, the registration results provided the
high error values. Benjemaa and Schmitt [7] proposed a multi
z-buffer technique to perform the local search but required the
acquisition geometry and calibration parameters.
In this paper, we propose a fast ICP algorithm that uses
two acceleration techniques: hierarchical model point selection
(HMPS) and logarithmic data point search (LDPS), which
will be explained later. To evaluate the proposed algorithm,
we apply our proposed ICP to the 3-D human body motion
tracking problem. Among many 3-D human body motion
tracking methods, the ICP algorithm that was employed by
Demirdjian [8] can track the human body motion in real-time.
However, it shows a limited tracking performance when move-
ments are rapid or large, because the closest points may be
mistakenly selected. To overcome this limitation, we employ
the modified particle filter that is appropriate for tracking the
fast moving objects because it can track the objects stochas-
tically. It can also track a large rotational and translational
motion and can reduce the number of iterations required.
The remainder of this paper is organized as follows. Sec-
tion II briefly reviews the existing ICP algorithm. Section III
explains how the fast ICP algorithm can rapidly find the closest
data point fast. Section IV introduces the human body motion
tracking method to evaluate the computation speed of the pro-
posed fast ICP. Section V shows the experimental results of the
fast ICP. Finally, Section VI presents our conclusion.
1070-9908/$26.00 © 2010 IEEE