Photostitching ad-hoc photographs: examplesWritten by Paul Bourke
The process of taking a number of overlapping photographs of a scene and stitching them together to form a larger image is a well established way of creating higher resolution photographs. That is, creating images at a higher resolution than any current photographic sensor. The technique is familiar to a number of disciplines including astronomy (for example the large images from the Hubble Space Telescope) and microscopy where multiple images are taken of cells in an optical microscope. It also can solve problems of access, for example, photographing an extended object where there may limited space or other object occluders that don't allow one to photograph from a distance so as to capture the entire object of interest.
Gigapixel photography is an example of this, one is generally forming gigapixel panoramas or large planar areas. The process is normally structured, that is, a manual or robotic approach captures photographs in a well defined order and generally over a regular grid. An important characteristics of such photographs is the camera is stationary, it may rotate but is not translated.
The examples shown here involve more ad-hoc photographs. They may either be captured by photographers without this application in mind or they may be captured in environments for which a systematic series of photographs was problematic. The process generally involves three processes: calibration (correcting for lens effects, exposure, and other differences between the photographs); registration (finding matching features between the images); and finally blending (projecting the images onto the intended projection geometry and blending across the overlap regions in an attempt to create a seamless result).
Normally in panoramic or gigapixel photography great care is taken not to move the camera away from its so called "nodal point". Doing so limits the extent to which the sub images can be matched to form a seamless result, this is a fundamental limitation due to parallax errors. In the ad-hoc photography discussed here, the camera generally is being translated between images, indeed in some applications the camera is intentionally moved along the extent of the object being photographed. This generally results in discontinuities at some depth, noting that an improved stitch/blend can occur at a single depth but not at all depths.
The following illustrates parallax error for translated cameras and non-planar objects. The vertical structure has portions hidden (in shadow) in camera 2 but visible in camera 1. As such no common reference points can be found in that region between the two photographs.
Another form of parallax error that affects blending is illustrated below. For the image captured from camera 1 the green object is to the right of the red object. It is the opposite for camera 2 and thus a seamless blend is impossible, at least for all depths.
Neither of these effects occurs if the camera is stationary and only rotated. In that case all camera frustums are subsets of a single larger frustum.Examples
In what follows are some examples of stitching of ad-hoc photographs. Clicking on the image will result in a higher resolution version, but since some images are very large this higher resolution version may not be the highest formed. Noting also that browsers can have limits in the size of image they may load and indeed the image formats supported on browsers often have limits of 215 pixels, around 32,000 pixels.