Representing a spherical view of the world on a flat computer monitor or print requires some manner of mapping from the 3D spherical scene in which the camera and viewer are embedded to the 2D medium on which they are rendered. The techniques used for mapping are of exactly the same type long used by map makers to project the entire globe, or portions of it, onto two dimensional maps. There is no single, unique projection for representing sections of the sphere on the globe. Instead, all projections have various attributes and limitations. There are many classes of projections used for various purposes (e.g. Mathworld's Projection Page), but only a few are traditionally used for panoramic imaging.
First - a word of warning: If you are looking for a projection, that will map a spherical (even partial) panorama on a flat surface without bending lines: This won't work!
This link explains well why it is impossible: http://www.progonos.com/furuti/MapProj/Normal/CartDef/MapDef/mapDef.html
Some of the most common projections when working with Panoramic imaging are:
- 1 Cylindrical projections
- 2 Azimuthal projections
- 3 Other projections
Cylindrical projections resemble classic rectangular world maps. The horizontal Field of View is anything up to 360 degrees, horizontal distance is proportional to pan or yaw angle, vertical distance is related to the angle above or below the horizon.
Also called the "non-projection", this is a representation of the sphere which maps longitude directly to the horizontal coordinate, and latitude to the vertical coordinate. This projection is often used for the source images in panoramic viewers like PTViewer. See definition for Equirectangular Projection for more.
This is the projection most commonly used for printed panoramas with a large range of longitude (>120 degrees). It can be envisioned by imagining wrapping a flat piece of paper around the sphere tangent to the equator, and projecting a light out from the center of the sphere. A full range of longitude, up to 360 degrees, can be represented with a cylindrical projection, but near the poles, the images become very distorted, so a full range of latitude cannot be used. See Cylindrical Projection for more.
Mercator Projection is another conformal projection, similar to Cylindrical Projection. This shows less pronounced distortion than either cylindrical or Equirectangular Projection which otherwise look very similar. See mathworld's page for details
Transverse mercator projection
This is a Mercator Projection rotated 90 degrees, suitable for a long vertical image.
Transverse mercator is limited to a maximum horizontal angle of 180 degrees, though in practice images over 150 degrees are not very usable.
Azimuthal projections have rotational symmetry around the centre of the image, these are the kind of images that are produced by the various kinds of camera lens.
This is a fundamental projection which can be envisioned by imagining placing a flat piece of paper tangent to a sphere and projecting a light out from its center. Obviously, only less than 180 degrees of longitude can be represented with this projection (exactly 180 degrees would require an image of infinite width), and in practice, far less.
Most non-fisheye cameras produce a nearly rectilinear image over their field of view (albeit with varying amounts of unavoidable distortion). The Rectilinear projection is often used for prints of panoramas which cover less than ~120 degrees of longitude, since straight lines are preserved. See Rectilinear Projection for more.
In a Fisheye Projection, the distance from the centre of the image to a point is proportional to the equivalent spatial angle.
Stereographic Projection is a conformal form of Fisheye Projection where the distance from the centre is not equivalent to the spatial angle. This is much easier on the eye for printing and display purposes.
Stereographic is limited to a maximum horizontal (and vertical) angle of 360 degrees, images over 330 degrees are pretty, but not very usable.
- PANORAMIC IMAGE PROJECTIONS: http://www.cambridgeincolour.com/tutorials/image-projections.htm