Creating spherical panoramas
Spherical panoramas (see types of panoramas) are increasingly popular with VR photographers (both professional and amateur), and they can be more challenging to produce. Some companies used to claim that there is something extra special about being able to look vertically up and down and they would also have you believe that their technology is the only way of achieving this. That is not the case.
To achieve the required 180 degree vertical field-of-view, you have these choices:
- Use an ultra-wide angle fisheye lens that allows you to capture at least 180 degrees vertically
- Shoot more than one row of pictures
- Use a 14 or 15mm wide angle lens in such a way that you can add "up" and "down" shots
The last two options above are really the same thing - just because you shoot more than one row of images does not mean each row has to have the same number of images. If your lens almost gives you 180 degrees vertically, why not just shoot an extra up and a down shot?
If you use a lens with a minimum vertical FOV of 180 degrees, all you need do is take 2 or 3 pictures in a row just like you would with a non spherical panorama. Very simple indeed.
The lens required is an 8mm fisheye or equivalent. Although there are not many manufacturers of these kinds of lenses, they are now quite easy to get - but beware that not all cameras have compatible circular fisheye lenses.
Here is a summary of circular fisheye stitching software that is currently available (discontinued software such as iPIX has been omitted):
- PTGui, PTAssembler/PTMac etc and PanoTools. You will need a version of the PanoTools engine that supports 180 degree fisheye which you can find easily by searching the panoguide forums or google.
- Panomizer (web based tool that uses 2 hemispherical fisheye pictures - based on PanoTools)
- Panoweaver (2+ fisheye pictures. If you use a full-frame fisheye you need additional "up" and "down" shots - see below)
- Realview 3D (2 hemispherical fisheye pictures)
- 3DVista Studio (2+ fisheye pictures)
- Realviz Stitcher Unlimited DS (2+ hemispherical fisheye pictures and any other lens too)
You can also convert your circular fisheye images into rectilinear equivalents and stitch them in software that does not normally support circular fisheye lenses. There are two well known ways to achieve this:
- Warp the images using Helmut Dersch's PanoTools version 2.2 or earlier. See for example the article on spherical panoramas with PhotoVista.
- deFish by Ken Turkowski - which you can use to convert a fisheye image into a rectilinear image ready for stitching with other image stitching software
What about the iPIX patents?
There are several patents concerning stitching fisheye images and there has been litigation for patent infringement in the past. The most well known litigation was between Interactive Pictures Inc (iPIX) and Live Picture, iMove Inc and Professor Helmut Dersch. Ford Oxaal also owns patents in this area and he and iPIX settled out of court in March 2002 - it would appear that iPIX paid for a licence for Oxaal's technology. To the best of my knowledge the Oxaal and iPIX patents are valid only in USA (perhaps Canada also, not sure). In Europe some iPIX patent applications were thrown out. Following the bankruptcy of iPIX in 2006, Sony have bought iPIX's intellectual property including these controversial fisheye imaging patents.
Panoguide cannot give a legal opinion on the validity or extent of these patents today. However companies that until 2006 had deliberately not released software for stitching fisheye images have now done so. To my knowledge in theory, company A could sue company B for patent infringement, but cannot sue the customers of company B. If you have serious concerns about your commercial use of this technology please seek your own legal advice.
|Two rows of images shot with the iMove SPS with an 18mm lens|
Shooting more than one row of images allows you to increase the vertical field of view of the stitched panorama, and of course if you shoot enough you can create a full spherical panorama this way. How many images you need depends on your lens - but just as with the images in each row, the amount of overlap does not have to be exact or constant.
For example, if you use an 18mm lens (or similar), you will get a finished panorama with approx 360 x 90 degrees field of view. Instead of making sure the camera is level with the horizon just pitch the camera up slightly for the first row and down slightly for the second. Stitch the whole lot together and you will get around 160 degree vertical field-of-view (allowing for some overlap).
Here are some essential tips about this approach:
- The more you pitch the camera up or down, the fewer pictures you require. If you are shooting 8 images on the horizon and getting 50% overlap, you can probably reduce this to 4 or 6 when pitched up/down at 40 degrees. Experiment yourself to ensure you don't waste time and effort shooting more pictures than you need.
- You do not have to shoot a row level with the horizon
- The main thing to watch out for is the exposure and lighting differences. When shooting multi-row it is essential you fix the exposure and aperture on every shot to ensure you get no lighting differences (the thumbnails above show the kind of lighting problems you can get if you do not do this)
- be extra careful about lighting changes such as clouds moving in front of the sun when shooting outdoors - you are shooting more pictures which will take longer, so there's a greater change of the light changing between the first and last shot.
- you need a a spherical pano head which will allow you to pitch the camera accurately (a non-spherical pano head cannot do this).
- if you have moving subjects in the scene (cars, people, etc) ensure you allow plenty of overlap and use software that allows you to easily edit the overlaps to avoid ghosts, blur etc, such as RealViz Stitcher
There is one fairly obvious advantage over using a circular 8mm lens: you can create a far higher resolution panoramic image because there are more source images.
- PTGui, PTAssembler/PTMac etc PanoTools (rectilinear or fisheye lenses)
- REALVIZ Stitcher (rectilinear lenses only)
- PanaVue Image Assembler* (rectilinear or fisheye lenses)
* note that Image Assembler will allow you to stitch multiple rows of images together, BUT it cannot stitch the poles of the image, i.e. the very top and bottom. So you can use Image Assembler to produce a panorama with up to 180 degree FOV, but you should not view the panorama back using a spherical viewer because the "top" and "bottom" will not have been stitched.
If your lens has a wide enough field-of-view, you can shoot a single row of images plus "up" and "down" shots to end up with a spherical panorama. In practice this is almost impossible without a fisheye lens because (a) there aren't many extremely wide angle rectilinear lenses available and (b) most digital SLR cameras are less than full frame, so even an 8mm fisheye lens gets cropped down.
If you have an 8mm circular fisheye lens and a non-full-frame digital SLR, then this is probably the technique you already use - the camera will crop the sides of the circle of the fisheye image, leaving you with "drum shaped" images instead of circles. As a result you need more shots around to create the 360 degrees around, and to allow for any inaccuracy in the shoot, an additional up shot. Of course you probably want a down shot too after you've detached the camera from the tripod.
If you do have a suitable lens for this approach, you will need one of the following to do the image stitching involved:
- ISeeMedia PhotoVista Panorama plus an image Editor such as Adobe PhotoShop or JASC PaintShop Pro and Helmut Dersch's PanoTools (rectilinear or fisheye lenses). See spherical panoramas with PhotoVista. Overall this approach is complicated and the other solutions below are much simpler and likely to yield far better results.
- Panoweaver (specifically supports this technique when using full-frame or "drum" fisheye images)
- PTGui, PTAssembler/PTMac etc PanoTools (rectilinear or fisheye lenses)
- REALVIZ Stitcher (fisheye or rectilinear lenses)