Difference between revisions of "Lens correction model"
Erik Krause (talk | contribs) m (added Distortion Remove and abc.xls info) |
Erik Krause (talk | contribs) m (→Tools to correct barrel and pincushion distortion: added links) |
||
Line 34: | Line 34: | ||
* [[nona]] or [[nona_gui]] (both part of the [[hugin]] distribution) can be used identically to [[PTStitcher]]. | * [[nona]] or [[nona_gui]] (both part of the [[hugin]] distribution) can be used identically to [[PTStitcher]]. | ||
− | * The Correct filter in the [[Panorama Tools Plugins]] for the [[gimp]] or [[photoshop]] uses the same a, b & c parameters as [[PTStitcher]]. Note that it doesn't know about d & e parameters and uses 'd' as an overall scaling factor instead. | + | * The [[Panorama_Tools_Plugins#Radial_Shift|Correct Radial Shift]] filter in the [[Panorama Tools Plugins]] for the [[gimp]] or [[photoshop]] uses the same a, b & c parameters as [[PTStitcher]]. Note that it doesn't know about d & e parameters and uses 'd' as an overall scaling factor instead, which should be d = 1-(a+b+c) to keep the image roughly the same size. If you need to shift the correction center like with the d & e parameter you must combine it with [[Panorama_Tools_Plugins#Vertical_Shift_.26_Horizontal_Shift|Vertical Shift]] and/or [[Panorama_Tools_Plugins#Vertical_Shift_.26_Horizontal_Shift|Horizontal Shift]]. |
* [[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. | * [[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. | ||
* [[Clens]] is a command line version of [[PTLens]]. | * [[Clens]] is a command line version of [[PTLens]]. | ||
+ | |||
+ | * [[PTShift]] determines different a, b & c parameters for the three color channels in order to correct for [[Chromatic aberration]] with the [[Panorama_Tools_Plugins#Radial_Shift|Correct Radial Shift]] filter. | ||
* [[Gimp wideangle plugin]] uses a different formula altogether to correct distortion. | * [[Gimp wideangle plugin]] uses a different formula altogether to correct distortion. |
Revision as of 21:08, 15 December 2005
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, pincushion distortion and wavy distortion
There are a number of ways to determine the a, b, c and fov parameters for a particular lens/camera combination:
- Taking a single photograph of a rectangular object, selecting lots of horizontal and vertical control points, then optimising roll, pitch, yaw, fov, a, b & c. You need to set the output format to Rectilinear Projection for this technique to work. The process is similar to this hugin architectural tutorial:
- 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 more complex forms of distortion so are not very important, you can normally just zero them and use the b parameter by itself.
If you want to see how changing the parameter influences distortion correction go to http://www.4pi.org/downloads/ and get abc.xls. Don't deactivate macros on loading.
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.
- nona or nona_gui (both part of the hugin distribution) can be used identically to PTStitcher.
- The Correct Radial Shift filter in the Panorama Tools Plugins for the gimp or photoshop uses the same a, b & c parameters as PTStitcher. Note that it doesn't know about d & e parameters and uses 'd' as an overall scaling factor instead, which should be d = 1-(a+b+c) to keep the image roughly the same size. If you need to shift the correction center like with the d & e parameter you must combine it with Vertical Shift and/or Horizontal Shift.
- 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.
- PTShift determines different a, b & c parameters for the three color channels in order to correct for Chromatic aberration with the Correct Radial Shift filter.
- Gimp wideangle plugin uses a different formula altogether to correct distortion.
- Gimp phfluuh plugin is another tool that corrects lens distortion using yet another formula.
- CamChecker is a tool for automatically determining lens distortion and generates a different set of parameters from everything else.
- zhang_undistort is a tool distributed with hugin that uses CamChecker parameters to actually correct distortion.
- Distortion Remove uses a completely different approach with a distortion matrix. Page in german only: http://www.stoske.de/digicam/Artikel/verzeichnung.html