## Thursday, July 24, 2008

### mesh lab alignment registration

First of all you should have well understood the layers mechanism in MeshLab and the fact that each mesh can have an transformation matrix. The alignment process simply modify the transformation of each layer.

The main idea is that you iteratively glue your misaligned meshes over the already aligned ones. A mesh that is aligned toghether with a set already aligned mesh is said being Glued (a * is shown near to its name). Initially all the meshes are 'unglued'. You task is to roughly align all your meshes.

Once the mesh are glued in a rather good initial position you can start the Alignment Process: the system chooses what meshes have some overlapping part and for each pair of meshes the system starts a ICP alignment algorithm that precisely align the chosen pair. At the end of the process all the glued meshes will hopefully be aligned toghether.

Key Concepts:
• ICP: Iterated closed point: The basic algorithm that automatically precisely align a moving mesh M onto a fixed one F. The main idea is that we choose a set of (well distributed) points over M and we search on F the corresponding nearest points. These pairs are used to find the best rigid transformation that bring the points of M onto their corresponding on F. ICP has a lot of tunable parameters.
• Global Alignment: also known as multiview registration. A final step that evenly distributes the alignment error among all the alignments in order to avoid the biased accumulation of error.
• Absolute Scale. The parameters of the alignment tool are in absolute units, and the defaults are ok for a standard scanner outputting meshes in millimeter units. So for example the target error (e.g. the error that the ICP try to achieve, is 0.05 mm something that can be achieved with a good scanner. Obviously if your range maps are in a different unit (microns, kilometers, ... ) you have to adjust the default alignment parameters, otherwise the alignment process will fail.

Ref.

http://meshlab.sourceforge.net/wiki/index.php/Alignment