Course: Acquisition & Processing of 3D Geometry
Academic Year: 2015-2016
Term: 2
Instructor: N. Mitra
Programming Language: C/C++
Libraries/APIs: Eigen, LibANN, GLFW, OpenGL

The Iterative Closest Point algorithm is a general purpose algorithm intended to match various geometrical primitives. In this assignment, the 3D ICP algorithm was implemented, as well as some of its variants, affecting the speed/accuracy. We use the algorithm to match multiple scanned point cloud set versions (from different degrees  0,45,90,135,..) of the famous Stanford Bunny Model. The algorithm is utilized, in order to move a model M2 (45 degrees) towards model M1 (0 degrees) by estimating the optimal transformation (output of ICP). The results are visualized for better understanding of the registration.