Difference between revisions of "Fisheye Projection"

From PanoTools.org Wiki
Jump to: navigation, search
m (1 revision(s))
(14 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[Image:big_ben_circ_fisheye.jpg|right|Circular Fisheye projection, with permission from Ben Kreunen]]
+
in a fisheye projection the distance from the centre of the image to a point is proportional to the equivalent spatial angle.  
[[Image:big_ben_ff_fisheye.jpg|right|Fullframe Fisheye projection, with permission from Ben Kreunen]]
 
[[Image:vertical-fisheye.jpg|right|A vertical simple fisheye projection, showing non-conformal distortion around the edges]]
 
[[Image:vertical-stereographic.jpg|right|A vertical stereographic fisheye projection, showing conformal mapping]]
 
  
This is a class of [[Projections|projections]] for mapping a portion of the surface of a sphere to a flat image, typically a camera's film or detector plane.  In a fisheye projection the distance from the centre of the image to a point is close to proportional to the true angle of separation.
+
Taken from a posting of [[Helmut Dersch]]:
 +
<pre>
 +
The focal length f of common fisheye lenses corresponds
 +
quite simple to the angle of view theta and the
 +
radial position R of a point on the slide:
  
Commonly there are two types of fisheye distinguished: circular [[fisheyes]] and fullframe [[fisheyes]]. However, both follow the same projection geometrics. The only difference is one of [[field of view]]: for a circular fisheye the circular image fits (more or less) completely in the frame, leaving blank areas in the corner. For the full frame variety, the image is over-filled by the circular fisheye image, leaving no blank space on the film or detector.  A circular fisheye can be made full frame if you use it with a smaller sensor/film size (and vice versa), or by zooming a fisheye adaptor on a zoom lens.
+
R = 2 * f * sin( theta/2 )
 
 
There is no single fisheye projection, but instead there are a class of projection transformation all referred to as ''fisheye'' by various lens manufacturers, with names like ''equisolid angle projection'', or ''equidistance fisheye''.  Less common are traditional spherical projections which map to circular images, such as the [http://mathworld.wolfram.com/OrthographicProjection.html orthographic] (lenses commonly designated ''OP'') or [http://mathworld.wolfram.com/StereographicProjection.html stereographic] projections.  Luckily, most of these related projections can be dealt with in a simple way. The following explanation is taken from a posting by [[Helmut Dersch]] (link to original see below):
 
 
 
'''theta''' is the angle between a point in the real world and the optical axis, which goes from the center of the image through the center of the lens.
 
 
 
The focal length f of common fisheye lenses corresponds
 
quite simple to theta and the
 
radial position R of a point on the image on the film or sensor:
 
<pre> R = 2 * f * sin( theta/2 )</pre>
 
  
 
So for 90 degrees, which would be the maximum
 
So for 90 degrees, which would be the maximum
theta of a lens with 180 degree [[Field of View]], f=8mm, you get
+
theta of a 180 degree lens, f=8mm, you get
R = 11.3mm, which is the radius of the image circle.
+
R = 11.3mm, which is the radius of
 +
the image circle.
  
 
This projection model applies to the Nikon 8mm
 
This projection model applies to the Nikon 8mm
Line 27: Line 20:
  
 
Some older Nikon lenses (e.g. the 7.5mm) try to
 
Some older Nikon lenses (e.g. the 7.5mm) try to
approach a linear mapping (theta in rad)
+
approach a linear mapping
<pre>R = f * theta</pre>
+
 
 +
R = f * theta      (theta in rad).
 +
 
 
and succeed more or less.
 
and succeed more or less.
 
 
For most practical applictions, you won't see a big
 
For most practical applictions, you won't see a big
 
difference between the two.
 
difference between the two.
  
 
Btw, a rectilinear lens has a mapping
 
Btw, a rectilinear lens has a mapping
<pre>R = f * tan( theta )</pre>
+
 
 +
R = f * tan( theta )
 +
</pre>
  
 
We can assume that most newer fisheyes follow the first mapping scheme.
 
We can assume that most newer fisheyes follow the first mapping scheme.
Line 41: Line 37:
 
Complete text of the mail can be found at W.J. Markerink's [http://www.a1.nl/phomepag/markerink/fishyfaq.htm page about fisheye analysis]
 
Complete text of the mail can be found at W.J. Markerink's [http://www.a1.nl/phomepag/markerink/fishyfaq.htm page about fisheye analysis]
  
More information on [[fisheyes]] and their distortions in this [http://www.coastalopt.com/pdfs/FisheyeComparison_SPIE.pdf PDF from coastal optics]
+
More information on fisheyes and their distortions in this [http://www.coastalopt.com/pdfs/FisheyeComparison_SPIE.pdf PDF from coastal optics]
[[Category:Glossary]]
 

Revision as of 20:49, 22 April 2005

in a fisheye projection the distance from the centre of the image to a point is proportional to the equivalent spatial angle.

Taken from a posting of Helmut Dersch:

The focal length f of common fisheye lenses corresponds
quite simple to the angle of view theta and the
radial position R of a point on the slide:

R = 2 * f * sin( theta/2 )

So for 90 degrees, which would be the maximum
theta of a 180 degree lens, f=8mm, you get
R = 11.3mm, which is the radius of
the image circle.

This projection model applies to the Nikon 8mm
and the Sigma 8mm (which actually has f=7.8mm).
This is also what you get when you look into
a convex mirror.

Some older Nikon lenses (e.g. the 7.5mm) try to
approach a linear mapping

R = f * theta      (theta in rad).

and succeed more or less.
For most practical applictions, you won't see a big
difference between the two.

Btw, a rectilinear lens has a mapping

R = f * tan( theta )

We can assume that most newer fisheyes follow the first mapping scheme.

Complete text of the mail can be found at W.J. Markerink's page about fisheye analysis

More information on fisheyes and their distortions in this PDF from coastal optics