Reconstruction of three-dimensional objects in a scene from multiple two-dimensional images of the scene has been the subject of research since the late 19th century. Such reconstruction may be useful in a number of areas, including obtaining information about physical (three-dimensional) characteristics of objects in the scene, such as determination of the actual three-dimensional shapes and volumes of the objects. Reconstruction has also recently become particularly important in, for example, computer vision and robotics. The geometric relation between three-dimensional objects and the images created by a simple image recorder such as a pinhole camera (that is, a camera without a lens) is a source of information to facilitate a three-dimensional reconstruction. Current practical commercial systems for object reconstruction generally rely on reconstruction from aerial photographs or from satellite images. In both cases, cameras are used which record images from two locations, whose positions relative to a scene are precisely determinable. In reconstruction from aerial photographs, two cameras are mounted with precise spacing and orientation on a common airborne platform, which ensures that the geometries of the cameras relative to each other are fixed in a known condition. With satellites, the positions and orientations of the satellites can be determined with great accuracy, thereby providing the required geometrical information required for reconstruction with corresponding precision. In any case, reconstruction of the desired objects shown in the images can be performed from two-dimensional photographic or video images taken from such an arrangement.
Generally, reconstruction methods are non-linear and they generally do not behave well in the presence of errors in measurement of the various camera calibration parameters and in the images from which the objects are to be reconstructed. Conventional reconstruction methods rely on the successful decoupling of two sets of parameters known as intrinsic and extrinsic parameters. The extrinsic parameters are related to the external geometry or arrangement of the cameras, including the rotation and translation between the coordinate frame of one camera in relation to the coordinate frame of the second camera. The intrinsic parameters associated with each camera is related to the camera's internal geometry in a manner that describes a transformation between a virtual camera coordinate system and the true relationship between the camera's image plane and its center of projection (COP). The intrinsic parameters can be represented by the image's aspect ratio, the skew and the location of the principal point, that is, the location of the intersection of the camera's optical axis and the image plane. (Note that the camera's focal length is related to the identified intrinsic parameters, in particular the aspect ratio, and thus it need not be considered as a parameter.)
These intrinsic and extrinsic parameters are coupled together and it is possible to recover the Euclidean three-dimensional structure of the scene depicted in two views only if these two sets of parameters can be decoupled. The precise manner in which the intrinsic and extrinsic parameters are coupled together is as follows. If the intrinsic parameters for the cameras are used to form respective three-by-three matrices M and M', and R and "t" represent the rotational and translational external parameters, then for points p=(x,y,1).sup.T and p'=(x',y',1).sup.T ("T" represents the matrix transpose operation) representing the projection in the two images of a single point P in the scene, EQU z'p'=zM'RM.sup.-1 p-M't (1)
where z and z' represent respective depth values for point P relative to the two camera locations.
There are several general methods for reconstruction. In one set of methods, the values of the various parameters in equation (1) are determined. In one such method the values of the internal parameters are determined by a separate and independent "internal camera calibration" procedure that relies on images of specialized patterns. In a second such method, more than two views of a scene are recorded and processed and the two sets of parameters are decoupled by assuming that the internal camera parameters are fixed for all views. Processing to determine the values of the parameters proceeds using non-linear methods, such as recursive estimation, non-linear optimization techniques such as Levenberg-Marquardt iterations, and more recently projective geometry tools using the concept of "the absolute conic." One significant problem with the first approach (using a separate internal camera calibration step) is that even small errors in calibration lead to significant errors in reconstruction. The methods for recovering the extrinsic parameters following the internal calibration are known to be extremely sensitive to minor errors in image measurements and require a relatively large field of view in order to behave properly. In the second approach (using more than two views of a scene) the processing techniques are iterative based on an initial approximation, and are quite sensitive to that initial approximation. In addition, the assumption that the internal camera parameters are fixed is not always a good assumption.
Another set of methods does not require determining the values of the various parameters in equation (1). Instead, reconstruction is performed from an examination of various features of the scene which are present in images of the scene that are recorded from a plurality of diverse locations. One such method, described in U.S. Pat. No. 5,598,515, entitled "System And Method For Reconstructing Surface Elements Of Solid Objects In A Three-Dimensional Scene From A Plurality Of Two Dimensional Images Of The Scene," issued Jan. 28, 1997, in the name of Amnon Shashua, describes a system and method for scene reconstruction from two views. In the system and method described in that patent, the epipole for at least one of the images is determined, which can lead to error in the reconstruction. In several other methods, described in, for example, A. Shashua, "Algebraic functions for recognition," IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 17, No. 8, pp. 779-789 (1995), and R. Hartley, "Lines and points in three views-a unified approach," Proceedings of the 1994 Image Understanding Workshop, pp. 1009-1016, do not require the direct determination of the epipoles, but those methods require use of three views. All of these methods require that corresponding points and/or lines, that is, points and/or lines in the views which are projections of the same points and/or lines in the scene, be located in all of the three views. In some applications, locating corresponding points and/or lines in the three views can be difficult or impossible.