The picture below show the lab setup to acquire the images. The camera is attached to the Linux computer so we can save the images. The projector is also hooked up to the computer so we can control what type of light source we want to project.
To to the depth reconstruction, we project a series of stripes on the object. The next step is to acquire the image of the object on the computer. After that, we use the 2D coordinates and the stripe locations (know parameters from the camera image) to computer the 3rd coordinate. The result is a series of 3D coordinates describing the object.
Before we acquire any images, we need to calibrate the system. This is necessary because we need to take into account the parameters of the camera and the location of the camera with respect to the projector for out calculations. Some camera parameters are, focal length (fx, fy), distortion (k), and center of image (cx, cy). We also need to know the postion of the camera and projector relative to each other. This allows us to map the camera image to the projector and vice versa. These parameters are the rotation matrix (R) and the translation vector (T).
Below are a few images of the depth data plotted in Matlab. Next to them are the corresponding images as seen by the camera. These images are not the actual images we used. We had to re-acquire these images for this report becuase we did not have them. The are a close representation to what we actually used. The Matlab images look a bit wierd because the plot program rotated them into a wierd postion.
| View 1: |
|
|
| View 2: |
|
|
| View 3: |
|
|