ISPRS Commission III, Vol.34, Part 3A »Photogrammetric Computer Vision“, Graz, 2002
SIMULTANEOUS REGISTRATION OF MULTIPLE VIEWS OF A 3D OBJECT
Helmut Pottmann *, Stefan Leopoldseder *, Michael Hofer *
* Institute of Geometry, Vienna University of Technology, Wiedner Hauptstr. 8-10, A-1040 Wien, Austria -
pottmann@geometrie.tuwien.ac.at, leopoldseder@geometrie.tuwien.ac.at, hofer@geometrie.tuwien.ac.at
KEY WORDS: registration, matching, inspection, three-dimensional data, CAD, geometry.
ABSTRACT
In the reconstruction process of geometric objects from several three-dimensional images (clouds of measurement points)
it is crucial to align the point sets of the different views, such that errors in the overlapping regions are minimized. We
present an iterative algorithm which simultaneously registers all 3D image views. It can also be used for the solution of
related positioning problems such as the registration of one or several measurement point clouds of an object to a CAD
model of that object. Our method is based on a first order kinematical analysis and on local quadratic approximants of the
squared distance function to geometric objects.
1 INTRODUCTION
In the reconstruction process of surfaces with help of stereo
photogrammetry one often obtains several point clouds
arising from different views of the object. By evaluation
of the surface texture in the different images, correspon-
dences between points of overlapping point clouds can be
determined with some confidence value. Now, the differ-
ent point clouds have to be combined into one consistent
representation. There, we may get errors in the overlap-
ping regions. Minimization of those errors is the goal of
the present algorithm.
A more challenging task is the simultaneous registration
of several moving systems where no point-to-point corre-
spondences are known. One application where only two
systems are involved is the following:
Suppose that we are given a large number of 3D data points
that have been obtained by some 3D measurement device
(laser scan, light sectioning, . . .) from the surface of a tech-
nical object. Furthermore, let us assume that we also have
got the CAD model of this workpiece. This CAD model
shall describe the ‘ideal’ shape of the object and will be
available in a coordinate system that is different to that of
the 3D data point set. For the goal of shape inspection it
is of interest to find the optimal Euclidean motion (transla-
tion and rotation) that aligns, or registers, the point cloud
to the CAD model. This makes it possible to check the
given workpiece for manufacturing errors and to classify
the deviations.
Another application with more than two systems is the
multiple matching of different 3D laser scanner images
of some 3D object. The 3D point sets of different views
will be given in different coordinate systems, their position
in a common ‘object’ coordinate system may be known
only approximately. Now the key task is to simultaneously
match, or register, the different point sets such that they
optimally fit in their overlapping regions.
In the following we show how to solve these optimization
problems with an iterative algorithm. In each iteration step
all N systems are registered simultaneously. An arbitrary
number of systems (at least one) is kept fixed. The algo-
rithm uses a kinematical analysis of first order and solves
a linear system of equations, which comes from a least
squares problem. In the case that we do not have corre-
spondences, the algorithm is based on local quadratic ap-
proximants of the squared distance function to geometric
objects. The novelty in our method concerns the following
apects: We use local quadratic approximants of the squared
distance function instead of pure point-point or point-plane
distances. By an approach which relies on instantaneous
kinematics we just solve a linear system in each iteration
step, even in case of simultaneously registering more than
two systems.
In Sec. 2 we briefly review contributions in the literature
which are closely related to our algorithm. In Sec. 3 some
basic facts of spatial kinematics are collected. Sec. 4 is
devoted to the mathematical description of our algorithm
which simultaneously aligns multiple point clouds in the
case that point-to-point correspondences are known. In
Sec. 5 we describe how to treat the more difficult case
where no correspondences are given. Finally, in Sec. 6
topics of further research are addressed.
2 CURRENT REGISTRATION ALGORITHMS
Let us first focus on registration problems where only two
systems are involved (N — 2). One system moves rela-
tive to the second system which is kept fixed. If point-to-
point correspondences are known, the optimal motion that
minimizes the Euclidean distances between corresponding
points can be explicitly given. The use of quaternions for
determining this motion can already be found in (Faugeras
Hebert, 1986, Horn, 1987). In many applications, how-
ever, no point-to-point correspondences are given. One
example is the alignment of a single 3D point cloud to
a geometric entity which could be a CAD model or an-
other 3D point set. Here a well-known standard algorithm
is the iterative closest point (ICP) algorithm of Besl and
McKay (Besl McKay, 1992). In Sec. 2.1 we will briefly
summarize this algorithm which establishes point-to-point
correspondences in each iteration step and uses the rep-
resentation of 3D Euclidean motions by unit quaternions.
For an overview on the recent literature on this topic we
refer to (Eggert et al., 1998). A summary with new results
on the acceleration of the ICP algorithm has been given by
Rusinkiewicz and Levoy (Rusinkiewicz Levoy, 2001).
A - 265