A method of estimating three-dimensional camera position information from
a series of two-dimensional images that form a panorama employs common
features in adjoining image pairs in the series to estimate a transform
between the images in the pairs. The common features are subsequently
employed to adjust an estimated rotational component of each transform by
reducing error between coordinates corresponding to the common features
in three-dimensional space in image pairs, on a pair-by-pair basis. A
global optimization of the position estimation, used for long sequences
of images such as 360 degree panoramas, refines the estimates of the
rotational and focal length components of the transforms by concurrently
reducing error between all 3D common feature coordinates for all
adjoining pairs.