
this class (Mamic and Bennamoun, 2002). Let us re-
mark the methods based in principal components (PC)
(Campbell and Flynn, 1999; Skocaj and Leonardis,
2001), which use them in the matching process as dis-
criminant parameters to reduce the initial range im-
ages database of an object generated from all possible
viewpoints.
The method presented in this paper can be classi-
fied halfway of the two classes because the appear-
ance of the object from all the possible points of
view are not stored and managed. Instead of that,
only some features of each view are stored and han-
dled. More specifically, just three critical distances
are established from each point of view. These dis-
tances are determined by means of the principal com-
ponents computation. A first approach to the transfor-
mation matrix between the partial view and the com-
plete object can be obtained from this computation.
The definitive transformation is finally achieved by
applying a particular version of the Iterative Closest
Point (ICP) algorithm (Besl and McKay, 1992) to the
gross transformation obtained in the previous stage.
A comparative study of different variants of the ICP
algorithm can be seen in (Rusinkiewicz and Levoy,
2001).
The paper is organized as follows. A general de-
scription of the overall method is exposed in the next
section. The method developed to obtain the database
with the principal components from all the possible
viewpoints are described is section 3. Section 4 is de-
voted to present the matching algorithm built on top
of the principal components database. A set of exper-
imental results is shown in section 5 and conclusions
are stated in section 6.
2 OVERALL DESCRIPTION OF
THE METHOD
As it has been mentioned, the first stage of the pro-
posed method is based on the computation of the prin-
cipal components from the range data corresponding
to a partial view. Let us call X to this partial view.
Principal components are defined as the set of eigen-
values and eigenvectors {(λ
i
, ˜e
i
) |i = 1, . . . , m} of
the Q covariance matrix:
Q = X
c
X
T
c
(1)
where X
c
represents the range data translated with
respect to the geometric center.
In the particular case we are considering, X
c
is a
matrix of dimension n × 3 and there are three eigen-
vectors that point to the three existing principal direc-
tions. The first eigenvector points to the spatial direc-
tion where the data variance is maximum. From a ge-
ometrical point of view, and assuming that the range
data is homogeneously distributed, it means that the
distance between the most extreme points projected
over the first direction is the maximum among all pos-
sible X
c
couple of points. The second vector points
to another direction, normal to the previous one, in
which the variance is maximum for all the possible
normal directions. It means again that the distance
between the most extreme points projected over the
second direction is the maximum among all the pos-
sible directions normal to the first vector. The third
vector makes a right-handed reference system with
the two others. The eigenvalues represent a quantita-
tive measurement of the maximum distances in each
respective direction.
From the point of view of its application to the
matching problem it is important to remark firstly that
the eigenvalues are invariant to rotations and trans-
lations and the eigenvectors invariant to translations,
and secondly that the frame formed by the eigenvec-
tors represents a reference system fixed to the own
range data. The first remark can be helpful in the
process of determining which portion of the complete
object is being sensed in a given partial view, i.e. the
recognition process. The second one gives an initial
estimation of the searched transformation matrix that
matches the partial view with the complete object in
the right pose. In fact, it is only valid to estimate the
rotation matrix because the origins of the reference
systems do not coincide.
To implement the recognition process it is neces-
sary to evaluate, in a previous stage, all the possible
partial views that can be generated for a given com-
plete object. We propose a method that considers a
discretized space of the viewpoints around the object.
Then a Virtual Partial View (VPV) is generated for
all the discretized viewpoints using a z-buffer based
technique. Principal components of each one of these
VPV are then computed and stored, such that they can
be used in the recognition process.
Initial information of the possible candidate zones
to matching a sample partial view to the complete ob-
ject can be extracted by comparing the eigenvalues of
the sample with the stored values. Nevertheless, this
is only global information and it only concerns to ori-
entation estimation. A second process must be imple-
mented in order to obtain a fine estimate of the final
transformation matrix. We use the ICP algorithm ap-
plied to the set of candidates extracted in the previous
process. The transformation matrix estimated from
the eigenvectors is used as the initial approximation
required by the ICP algorithm. The final matching
zone is selected as the one that minimizes the ICP er-
ror. Figure 1 shows a schematic block diagram of the
entire developed method. More implementation de-
tails are explained in next sections.
ICINCO 2004 - ROBOTICS AND AUTOMATION
4