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 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 :
The next step minimizes the global error.