** Next:** Diffusing the Error.
** Up:** Computing Globally Consistent Scenes
** Previous:** Computing Globally Consistent Scenes

###

Closing the Loop.

After matching multiple 3D scans, errors have accumulated and
loops would normally not be closed. Our algorithm automatically
detects a to-be-closed loop by registering the last acquired 3D
scan with earlier acquired scans. Hereby we first create a
hypothesis based on the maximum laser range and on the robot
pose, so that the algorithm does not need to process all previous
scans. Then we use the octree based method presented in section
3.1 to revise the hypothesis. Finally, if a registration
is possible, the computed error, i.e., the transformation (, ) is distributed over all 3D scans. The respective part
is weighted by the distance covered between the scans, i.e.,

- The translational part is calculated as
.
- Of the three possibilities of representing rotations, namely,
orthonormal matrices, quaternions and Euler angles, quaternions
are best suited for our interpolation task. The problem with
matrices is to enforce orthonormality and Euler angles show
Gimbal locks [8]. A quaternion as used in computer
graphics is the 4 vector
. Given a rotation as
matrix , the corresponding quaternion
is
calculated as follows:

The quaternion describes a rotation by an axis
and an angle that are computed by

The angle is distributed over all scans using the factor
and the resulting matrix is derived as [8]:

The next step minimizes the global error.

** Next:** Diffusing the Error.
** Up:** Computing Globally Consistent Scenes
** Previous:** Computing Globally Consistent Scenes
root
2005-06-17