Jump to: navigation, search

Stitching fisheye images


Introduction

Fisheye images are unusual in that they produce a very wide-angled but severely distorted image. So is it possible to stitch images of this kind with Autopano?
Well yes, and it is actually just as easy to work with them as with any other kind of image!


A fisheye shot enables wide surface coverage with a minimum number of images.
This makes it very useful for the creation of complete panoramic views for effective virtual tours.


Concept

As mentioned above, a virtual tour is based on a panorama, ideally a full spherical panorama.
We will see that to create such a panorama is actually very easy (and can even be done very quickly) using the right equipment:

  • A camera
  • A fisheye lens
  • A tripod
  • A panoramic head


It is, of course, possible to create a full spherical panorama (360°x180°) with other lens types.
However, the number of shots required then varies as follows (without counting the shooting time and the risk of stitching process error):

  • With a 35mm lens, 52 shots (4 lines of about 12/15 shots) are needed.
  • With a 28mm lens, 32 shots are needed.
  • With a fisheye 10.5mm lens, only 8 photos are needed.


Finally, essential for shooting full spherical panorama is the setting of the entrance pupil of the camera/lens pair mounted on a panoramic head.
Actually, this setting prevents parallax, a very annoying problem for image stitching because it is impossible to remove. Here is a link explaining one of the techniques you can use to set the ideal rotation point: Setting the nodal point


With the entrance pupil of the panoramic head is set (accurately), the following lesson will show how to use Autopano to create a full spherical panorama with fisheye images.


The Different Types of Fisheye Image

Image taken with a Nikkor 10.5mm spherical fisheye lens (full-frame): No border is visible on the image. Image taken with a Sigma 8mm circular fisheye lens: The rounding of the border is clearly visible, specific to this type of lens. Another example of a circular fisheye image: the border is similar to the one in the previous image, but slightly more pronounced.
Fullframe fisheye image (Nikkor 10.5mm lens) Circular image (Sigma 8mm lens) Other example of Circular image



Example 1: Stitching Full-frame, Spherical Fisheye Images

The shooting

  • Equipment used: Nikon D90 + Nikkor 10.5mm fisheye lens
  • Number of images: 6 horizontal images + 1 (Zenith) + 1 (Nadir), totaling 8 images


The shooting


Direct Stitching using Autopano

If we import the images into Autopano, and the EXIF data are correctly displayed, it is clear that 8 images have been successfully imported, and that the focal length is 15mm (equivalent to 35mm) in fisheye mode.
If we then launch direct stitching, the following result is obtained after detection:


Direct detection


The result is almost perfect (the RMS value being 4.83). All that remains to do is to delete the few bad control points to remove the induced tension between the images.


Rendering

Here is the rendering generated in 2048x1024 pixels:


Rendering


Example 2: Stitching Circular Fisheye Images

The shooting

  • Equipment used: Nikon D90 + Sigma 8mm fisheye lens
  • Number of images : 6 horizontal images + 1 (Zenith) + 1 (Nadir), totaling 8 images


The shooting


Direct Stitching using Autopano

As in Example 1, if we import the images, we can see that the EXIF data are correctly displayed, showing 8 images with a focal length of 12mm (equivalent to 35mm) in fisheye mode.
The following result is obtained after detection:


Détection directe


The result is similar to that obtained in Example 1, if we apply the same process of modification (clearing the control points) and launch the rendering action.


Rendering

Here is the rendering generated (2048x1024 pixels):


Rendering


Example 3: Fisheye Image Stitching without EXIF Data

The shooting

  • Equipment used: Canon 20D + Peleng 8mm fisheye lens (not electronically connected to the camera body)
  • Number of images: 6 images + 1 (Zenith) + 1 (Nadir), totaling 8 images

The shooting


Direct Stitching using Autopano

After importing the images into Autopano, we see that no data is available for the pictures set.
Nonetheless, we will launch the detection process to view the result:


Direct detection


The result is not good. Since the EXIF data is not found by Autopano, the parameters must be set manually to achieve correct stitching.


Settings

If we open the Image Properties window, we can correctly set the image parameters.
Because the EXIF data was not found, Autopano has applied the default parameters for a standard lens type with a focal length of 50mm:


Image Properties


Firstly, we must define the lens type, essential to Autopano for correcting the distortion and hence to obtain correct stitching.
To do so, we simply have to open the dropdown menu of the lens type option and select fisheye instead of standard.
The choice of the fisheye lens type automatically triggers display of a new Circular crop tab in the window, which we will examine later.


Note: Definition of the focal length is not really important, because Autopano does not base the fisheye image stitching on this definition.
In the current case, we know the focal length (Peleng 8mm fisheye lens), so we can, nonetheless, enter this value manually in to the Focal (35mm eq.) field.


Here is the Image Properties window with the Images tab after modification:


Image Properties modified


If we now open the new Circular crop tab mentioned above, this tab enables you to set the image area to be used by Autopano.
This is very useful in this case (where the EXIF data was not found), because this area can otherwise be badly defined. You can simply use the mouse to enlarge or shrink the usage area.

Note: Hold the Ctrl (Win) / Cmd (Mac) key to enlarge or shrink the area from its centre.

Bad definition of the fisheye area: You can see the rounded borders included inside the used area. This will alter the resulting stitched and rendered image. Good definition of the fisheye area
Bad setting of the Circular crop Right setting of the Circular crop

Once you have finished defining the settings, confirm (OK) to save the changes.


Stitching after Parameter Definition

Now, this is the generated result after image parameter definition:
The group data clearly indicates that the images are 8mm, fisheye type.


Detection after parameter definition


The result is good, even though it was generated in an irregular way (FOV = 360°x180°, RMS = 4.39). For example, to apply a 180° rotation to the image, you just need to open the Panorama Editor:

1. Activate the numerical transformation tool
2. Apply a 180° rotation
Validate, the panorama is correctly oriented
Apply a rotation Result after rotation


Note:
As in the above example, the Panorama Detection can produce unexpected results (wrong orientation, incorrect viewpoint, etc...).
For example, using portrait and landscape images in the same stitching can produce a Nadir viewpoint, which triggers a poorly defined image, although this can be fixed.
If a visually incorrect panorama is generated after detection, you simply need to open the Panorama Editor and apply the appropriate rotation to retrieve a good visual result.


Rendering

Here is the rendering generated (2048x1024 pixels):


Rendering







BACK TO: Documentation / Autopano Documentation