23
\$\begingroup\$

I am currently working to design a flash virtual tour, but I know little about how the photographs are taken.

Ideally I'd like to be able to take a set of 6 shots from a single focal point, and be able to align them seamlessly into a cube form. The other solution is to take a special fisheye image, and stretch it dynamically in flash.

I've seen examples of both as virtual tours, and ones formatted as a rotating cube are more responsive and have a higher image quality. The airbus and Cruden Homes are definitely in the cube format, I'm not entirely certain which format the New York VT uses:

I have a set of questions, the first is the most important, the others may become separate questions if I don't get an answer here:

  1. How are those photos taken?
  2. Is there a specific mount that can be used?
  3. How long does it take to set up?
  4. How much post-processing is necessary on the images?
\$\endgroup\$
2
  • 2
    \$\begingroup\$ The Airbus one is amazing! Sorry, I have no idea how it was taken. but I'll check the answers as they come. \$\endgroup\$
    – Itai
    Commented Feb 2, 2011 at 15:35
  • 1
    \$\begingroup\$ I find the controls on the Airbus one horribly unintuitive. If you're going to add mouse control to yours, please make it work more like Google's Street View. \$\endgroup\$
    – Evan Krall
    Commented Apr 17, 2011 at 9:08

3 Answers 3

11
\$\begingroup\$

A good overview of the techniques for shooting this type of 360x180/equirectangular/VR panorama can be found on Eric Rougier's fromparis website.

The basic process is to shoot enough images to cover the entire sphere, and then stitch them together as a panorama.

Mappings

Those "six shots" you're seeing are typically remapped cube faces from a full panorama. Usually in equirectangular mapping.

There are a lot of ways mathematically to represent a sphere. Cartographers have worked out a lot of these over the centuries trying to map the earth in representative ways. VR panos are typically represented in one of two formats (although there are others): six cube faces, and equirectangulars.

The equirectangular mapping is the most convenient because it can encompass the entire panorama in a single image. It's a very simple remapping. The latitude and longitude on the sphere is simply mapped to Cartesian y and x coordinates, respectively. You end up with 2x1 rectangle that has a huge amount of distortion at the poles, but which does represent the entire sphere. Like this:

Equirectangular map of the world

Use a wide lens. Probably a fisheye.

However, if you want to take a 360x180 in six shots or less, you're going to have to use a fisheye lens. Rectilinear lenses simply don't have the scene coverage required to stitch together a full sphere/cube in those few shots. There are field-of-view calculators out there that can tell you how many shots you'll need with any given lens. But if, say, you were to use the Canon EF-S 10-22 on a crop body, at 10mm, in portrait mode, assuming 25% overlap (which actually isn't that good) you'd need 7 images to cover 360 degrees in yaw, and probably 3 rows and a zenith (straight up) and nadir (straight down) to cover the full view.

Which is why most people who shoot these use fisheye lenses, to reduce the amount of shooting and stitching required. A rectilinear lens will get you higher quality, higher resolution images, but require a lot more work.

Sidenote: Lightprobes, One-Shots, and 360º cameras

You can actually make a 360x180 panorama with two shots and a regular camera by shooting a large chrome ball bearing. This technique is often used to create HDR environment maps for cgi work, but the quality of the image depends highly on the quality of the ball bearing, and typically the results won't be as suitable for VR photography.

There are also 360 "one shot" type mirrors to capture the full 360 without having to stitch, but the vertical field of view won't cover your floor and sky, and again, the quality of the image is going to rely heavily upon the quality of the mirror, and again, the results won't be as good as shooting individual images an stitching.

Ricoh came out with a neater solution, the Theta, which essentially pairs two fisheye lenses back-to-back to cover the sphere, and internally stitches the two images together. It can even do 360x180 videos, and is more convenient than the fisheye-and-stitch process. But there's very little overlap, so more of the edges (which fisheyes are traditionally weakest) are used in the final stitch. In the wake of Facebook and Youtube supporting 360º video, there are now a number of 360º action cameras that do more or less the same thing with the same strengths and weaknesses.

If you need something quick and dirty and this isn't about requiring a super-high-resolution seamless end result, these can be fun and much simpler ways to create VR panos.

Basic Shooting Workflow

The most common technique used for shooting these panoramas is to use a fisheye lens, to hold the camera in portrait orientation (for the most vertical coverage), and to shoot a row of images, while rotating the camera/lens as closely as possible around its no-parallax point (NPP), and then, if required, to rotate the camera in pitch around the NPP to take zenith (straight up) and nadir (straight down) shots to finish coverage.

There are variants to this type of coverage, of course, mostly altering the angle of tilt to eliminate the need to shoot a separate zenith or nadir or both. But the goal is always the same: to completely cover the sphere with enough overlap for a good stitch.

Like any panorama, it's best to try and keep exposure, white balance, and focus locked and consistent between member images, to consider whether HDR exposure coverage might be required with bracketing, and to shoot enough coverage/overlap so that you can erase ghosts and clones.

Holding the Camera

If the panorama is being taken outside with no nearby objects of interest, these types of panos actually can be taken handheld. Hans Nyberg was probably one of the first to use a Sigma 8mm circular fisheye lens to do this. However, this does require some talent at keeping a camera rotating around the same spot in space, and judging your angle of rotation. Some folks use levels, plumb-lines, and guides on the ground as aids. But generally, this way of shooting panos does require skill, and won't work as well for indoors panos, where the required precision is higher.

So the vast majority of folks who do this use a tripod and a panohead.

A panohead typically has a lower and upper rail (like an L-bracket for portrait shooting), but the upper rail will also have an arm that swings out from the top to hold the camera and lens, so that the lens can be centered over the center of the tripod/head, and adjusted back and forth to rotate precisely at the no-parallax point of the lens/body combination, as well as rotated in pitch.

panohead

It may also have detents (click stops) at regular intervals for easy rotation to exact intervals, and the upper arm joint is marked off with precise angles, so you can tilt by specific amounts.

For me, setting up to shoot a 360x180 pano requires only a few minutes, since I have all of my gear pre-calibrated for my equipment, and I use quick releases. I just have to set up the tripod, screw on the pano head lower arm, attach the upper arm, and then lock my camera/lens into the quick release. I usually don't bother with precise leveling, since if I've correctly covered the entire sphere, I can readjust the viewpoint to "level" out the pano in post (not a luxury you have with non-spherical panos).

Shooting

When shooting, with my specific fisheye/body combinations, I tend to take six shots varying the yaw at 60° intervals, a zenith, and then two nadirs, with the panohead rotated 180° between the two nadir shots (for the most panohead/tripod erasure), and then for added security and if shutter speed allows, I remove the tripod, and handhold the camera for one more nadir shot (trying to make sure to keep my shadow out of the "patch" area).

Stitching

Now comes the hard part. Stitching. This subject can get extraordinarily deep, but you basically need a specialized stitching package that can handle fisheye images and creating equirectangulars. There are dozens of these out there, but PTGui (commercial) and Hugin (open source) seem to be among the more popular ones. Many packages, such as Photoshop's PhotoMerge feature, and Microsoft ICE can produce an equirectangular, but may not give you any tools for correcting one that doesn't stitch cleanly.

The basic steps are similar to any other panorama: load up the images into the stitcher, let the stitching package align and then merge the images. Where you might run into some problems are the nadir (the zenith usually isn't a problem unless it's featureless blue sky, because the panohead has taken care of alignment/coverage for you).

If you have errors in the stitching, though, you may need to adjust control points (defined points in member images where they overlap), adjust positioning, or mask portions of images, and these more sophisticated stitchers give you that control.

Good basic tutorials on using PTGui and Hugin can be found here:

Nadir Patching

Nadir patching is always going to be the most difficult task because you'll want to erase the tripod and panohead. Some folks cheat by simply covering that portion of the scene with a logo or mirrorball mapping. :D But if you choose a relatively featureless area to set your tripod down, simple cloning/content-aware fill/patching in Photoshop can fix the issue. The problem is getting an image to perform these tasks on. Mapping the unfinished pano out to cube faces, and then patching the bottom cube face and replacing it in the pano is one method; rotating the whole panorama in pitch so that the nadir is at the horizon and less distorted is another. And using a handheld nadir shot with viewpoint correction in PTGui is another (see: John Houghton's tutorial).

Delivery Format

Then you have to decide on how you want to represent the panorama as a delivery format. In the past, QuicktimeVR was the king of formats, as it was the only one, but those days are long gone, especially now that Apple has withdrawn support for the format. Today, the two most common formats are Flash and HTML5, and there are a lot of software packages that can create these formats for you from an equirectangular pano (Pano2VR, KRPano, etc. etc.)

Hotspots for Tours

The final step for making a VR Tour is to link your panos together by using "hotspots". Specialized software will make this easier than wading into the Flash or HTML5 files, but you're basically just making links over specific areas of each pano.

\$\endgroup\$
3
  • \$\begingroup\$ There are also special lenses you can get that work with a mirror to shoot a 360 and then software to map that onto a cylinder (note that it doesn't allow you to look up, but on the other hand, it's a one shot approach suitable for the web that doesn't need stitching). \$\endgroup\$
    – user13451
    Commented Nov 19, 2014 at 2:44
  • \$\begingroup\$ Yeah, or you can use a chrome ballbearing to make a lightprobe image. However, the problem is that the quality of the mirror dictates the quality of the image, and they don't compete well with stitched panos. \$\endgroup\$
    – inkista
    Commented Nov 19, 2014 at 2:58
  • \$\begingroup\$ Ahh... I missed that part (the pano head image kicked in the web reader ADD feature - "ohh! picture"). Might be worth it to add an image of that set of tools for the "ohh picture" crowd. \$\endgroup\$
    – user13451
    Commented Nov 19, 2014 at 3:02
15
\$\begingroup\$

These VR images are usually shot with standard camera as a multi image panorama, and then processed in software.

The easiest way is to use a special panoramic (sometimes called VR) tripod head which pivots the camera about the exact centre of the lens in order to ensure the photos line up and there's no paralax error. Shooting vertically with a wide angle lens, ideally a 20mm equiv. or wider, pan through 360 degrees, then take the camera off the tripod and shoot a single sky and ground image (i.e. straight up and straight down)

If you don't have a wide lens you can shoot a two or three row panorama. This can avoid the need for a sky/ground shot, but you'll have tripod legs in your ground shot! There's no need to use a fisheye lens, a standard rectiliear lens will do, the software will do the rest.

The images need to be assembled using a special piece of software which will stitch the images together to create a single 360 degree by 180 degree rectangular image, or a cube map if you prefer. PTGui is often recommended for this task. Other good panorama stitching programs should be able to do this as well.

There's obviously quite a bit of post processing involved, but if you shoot with a good overlap between images the software should be able to assemble them with little interaction, though it might take a while to process.

Shooting multiple exposures in each position and creating a tonemapped HDR panorama is also commonly done, as it helps deal with large changes in brightness you can get planning through 360 degrees, especially outdoors in direct sunlight.

\$\endgroup\$
3
  • 1
    \$\begingroup\$ Is there anything in particular that PTGui does that photoshop (or similar) can't do? \$\endgroup\$
    – zzzzBov
    Commented Feb 2, 2011 at 17:23
  • \$\begingroup\$ You can do it with Photoshop's built in tools but it's a bit more work, you have to get it to stitch the pano normally without floor or sky images, then use the 3D tools to create a sphere map and align the floor and sky by hand. \$\endgroup\$
    – Matt Grum
    Commented Feb 3, 2011 at 15:33
  • 1
    \$\begingroup\$ "pivots the camera about the exact centre of the lens" is not exactly correct. You're looking to rotate the camera/lens combination around the no-parallax point. Which may not be the nodal point or where the entrance pupil sits, either. And with lenses like the Sigma 8mm f/3.5 circular fisheye, the NPP can shift with rotation angles. \$\endgroup\$
    – inkista
    Commented Apr 19, 2014 at 0:17
3
\$\begingroup\$

Phones that run android can do this. Simply download the Google Camera app and use the Google Photo Sphere function. Ideally one should do this on a real (system)camera that runs Android eg Samsung Galaxy NX.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.