Assignment 3: Structured Lighting for 3D Scanning

Instructor: Gabriel Taubin
Assignment developed by: Fatih Calakli

Figure 1: Six point clouds produced by the structured lighting system of Assigment 2 to be merged using the ICP algorithm.

Downloads:
handout, hw3_data_set_1.zip { pointCloud1.ply, pointCloud2.ply, pointCloud3.ply },

Here you have another data set:
hw3_data_set_2.zip { man1-points.ply, man2-points.ply, man3-points.ply, man4-points.ply, man5-points.ply, man6-points.ply }

Extra credit: reconstruct your own point clouds using the code that you wrote for Assignment 2, and then merge your scans into a single point cloud.
hw3_image_data.zip [1.03 GB]

Introduction

The triangulation-based 3D scanning methods built in previous assignments are able to produce dense point clouds. However, only points on the front-facing side of the object can be reconstructed (i.e., on the same side as the projector and camera). To produce a complete representation, multiple scans taken from various points of view must be merged to produce a point cloud with sufficient sampling density over the whole visible surface of the object being scanned. The main challenge to merging multiple scans is that each scan is produced with respect to a different coordinate system. As a result, the rigid body transformations needed to register the scans with respect to each other must be estimated. After establishing some true point correspondences you will compute the rigid body transformations using the closed form solution discused in class. Once the points clouds are in approximate registration, you will use ICP to iteratively refine the rigid body transformation between two point clouds.