1
Introduction
During a Bachelors project [8] a practical setup for 3D reconstruction using the voxel coloring algorithm [10] was developed. The voxel coloring algorithm takes a number of photos with known camera position as input and outputs a 3D reconstruction consisting of a regular grid of cube-shaped voxels (see figure 1). Voxels are ‘volume elements’ in analogy with pixels.
Figure 1: On the left an input image for voxel coloring is shown, with 4 marked reference points (red squares) which need to be selected by the user manually in every image to determine camera position and orientation. On the right a voxel reconstruction created using voxel coloring. The images show a figure called Tweety which is trademarked and copyrighted by Warner Bros. The practical setup used consisted of a cheap webcam, a tripod and a home-built Meccano turntable. The setup could be used to take photos from different sides of an object automatically. We are going to perform 3D reconstruction using voxel coloring as well, but without using the turntable as it was shown in [8] that it isn’t really needed. During this assignment we are going to look at the different steps involved in 3D reconstruction with voxel coloring. Intuitively, the first step is to acquire images of the object we want to reconstruct (section 3). The second step is to determine the real-world position and orientation of the camera, as that information is required by the voxel coloring algorithm. We will cover the perspective camera model and camera calibration in section 5. After several in1
termediate steps1 we will cover the actual voxel coloring. After voxel coloring is complete one wants to view the reconstruction made; for this purpose an OpenGL voxel viewer for Windows is available2 .
2
Roadmap
This assignment will span 3 lab
References: [1] Jean-Yves Bouguet. Camera calibration toolbox for Matlab. http://www.vision.caltech.edu/bouguetj/calib_doc [2] Bruce Culbertson, Tom Malzbender and Greg Slabaugh. Generalized Voxel Coloring. In Proceedings of the ICCV Workshop, Vision Algorithms Theory and Practice, SpringerVerlag Lecture Notes in Computer Science 1883, pages 100-115, 1999. [3] Laura Downes and Alex Berg. CS184: Computing rotations in 3D. http://www.cs.berkeley.edu/~ug/slide/pipeline/assignments/as5/rotation.html [4] J.D. Foley, A. van Dam, S.K. Feiner and J.F. Hughes. Computer Graphics: Principles and Practice. Addison-Wesly Publishing Co, section 12.6, 1990. [5] Kiriakos N. Kutulakos and Steven M. Seitz. A theory of shape by space carving. In International Journal of Computer Vision, 38(3): pages 198-218, 2000. [6] Phidgets Inc. - Unique USB Interfaces http://www.phidgets.com [7] Andrew C. Prock and Charles R. Dyer. Towards real-time voxel coloring. In Proceedings of the DARPA Image Understanding Workshop, pages 315-321, 1998. [8] Koen E.A. van de Sande. A Practical Setup for Voxel Coloring using off-the-shelf Components. Bachelor Thesis, University of Amsterdam, June 2004. Available from http://voxelcoloring.sourceforge.net. [9] Koen E.A. van de Sande. Voxel Coloring Framework. http://voxelcoloring.sourceforge.net [10] Steven M. Seitz and Charles R. Dyer. Photorealistic scene reconstruction by voxel coloring. In Proceedings of the Computer Vision and Pattern Recognition Conference, pages 10671073, 1997. [11] Steven M. Seitz and Charles R. Dyer. Photorealistic scene reconstruction by voxel coloring. In International Journal of Computer Vision, 35(2): pages 151-173, 1999. [12] Thomas Verstraeten. 3D Scene Reconstruction using Voxel Coloring. Master Thesis, University of Amsterdam, August 2003. 20