Lens correction model

From PanoTools.org Wiki
Revision as of 02:09, 15 December 2005 by Jdsmith (talk | contribs)
Jump to navigation Jump to search

Panorama Tools a, b & c parameters

The Panorama Tools a, b & c parameters correspond to a third-order radial polynomial describing radial lens distortion. It is never exact, but can give a pretty good approximation to the real behaviour of a given lens. The parameters are used by various tools to correct both barrel distortion and pincushion distortion.

There are a number of ways to determine the a, b, c and fov parameters for a particular lens/camera combination:

  • Taking two or more overlapping photographs and selecting lots of normal control points, then optimising roll, pitch, yaw, fov, a, b & c. This technique works with any output projection format (note that to get a really accurate measure of the field of view, you have to take a full 360 degree panorama).
  • Using a tool such as PTLens or clens to read the JPEG EXIF data and correct the image automatically by looking up the lens in an existing database.

The fov, a, b & c parameters are fairly consistent between shots with the same camera/lens combination so you can use them again and again. Though they can vary slightly depending on the focus distance, so many panographers tend to recalculate them for every stitch as part of their normal workflow.

The a & c parameters control distortion at the centre and edges of the picture so are not very important, you can normally just zero them and use the b parameter by itself.

See also Helmut Dersch's barrel distortion page.

Tools to correct barrel and pincushion distortion

  • The original PTStitcher can be scripted to batch process images with known a, b & c parameters. It can also be operated with one of the GUI front-ends.
  • PTLens is a Photoshop plugin and a stand-alone Windows tool that uses the same a, b & c parameters and comes with a database of popular lenses.
  • CamChecker is a tool for automatically determining lens distortion and generates a different set of parameters from everything else.