We present a new algorithm that reconstructs 3D shapes from 2D images. Unlike previous algorithms that produce points or voxels representing the shapes, our algorithm produces their polygonal approximations. Such approximations are simpler, easier to manipulate, and more suitable for many graphics applications.
The algorithm consists of the following steps. First, we project the 2D images onto a plane, called ``test plane.'' The test plane is chosen at random from the set of all planes that pass through the volume, where the object to be reconstructed exists. Next, we compare the projected images with each other. If the test plane is tangential to the object, the images will coincide at some regions on the plane. We then represent such regions using texture-mapped polygons. By collecting these polygons together, we can obtain a polygonal approximation of the 3D object.
One important feature of our algorithm is its capability to incrementally refine the resulting approximations. This feature has turned out useful especially when the objects' shapes are very complex. We also show some examples to demonstrate that our algorithm works fine with partly noisy images.