Back to Top

Original Images

One of eleven photos from the example image sets

RGB Normals

RGB-encoded normals of 11 images

Needle Maps

Normal maps shown with projected arrows (with a needle spacine of 5)

Albedo Maps

Albedo maps of the images

Depth Maps

Depth maps from different angles with and without the albedo map

Discussion

The images above were created using a program which could:
- show a set of images with different lighting
- calculate light directions (using images of reflections off of a chrome sphere)
- calculate normals using these lighting directions and represent the normals as a rgb-encoded map or a needle map
- calculate and display an albedo map of the object
- and calculate and create a depth map of the object that you could then rotate around

I wrote the portions of the code that calculated the lighting directions, normals, albedo map, and depth map. I was able to get the lighting, normals, and albedo map to work and thus the rgb maps, needle maps, and albedo maps of the objects were captured after using my code. I was unable to get the depth map to fully work so I opened the light directions, normals, and albedo in the class executable and produced the above depth maps.


Of the three reconstructions I've shown here, I think that the cat turned out the best. This method was able to get most of the cat's shape and even the detail of the face. However, part of the left side of the cat and the bottom part of its tail that was in shadow all of the images is missing, which would make reconstruction a 3d model of it with many gaps. The tip of the cat's nose and foot is just a bit too pointed, but otherwise it is very close.

The rock reconstruction did a pretty good job at getting the texture, however, the shape of the rock seems a bit weird, especially when looked from the side. It seems to extend too much towards the camera.

From the front, the owl reconstruction looks good, however, once it is rotated, its flaws start to show. Most noticable is the eye portion that sticks out. It seems that the code has a problem with black (or nearly black) parts of the object. The owl's left side (the side of his face turning away) also becomes distorted when turned to face forward. The program was unable to account for a difference in depth between the beak and the portion of the face behind it.

This program does a good job reconstructing portions of an object directly facing and oriented towards the camera. However, to be able to reconstruct a full 3d model of the object, we would require more images at differnt perspectives. Combining all of the depth maps of these different angles would then allow us to make a full non-distorted reconstruction.