by Head of Product, Aaron Meyers
It may be a 45-mile drive between SmugMug headquarters in Mountain View, California, and San Francisco, but when you walk into our headquarters you find yourself surrounded by sites of the city. The Bay Bridge, the Ferry Building, Coit Tower, and the Golden Gate Bridge all envelope you. You stare at a storm burning in the sky in front of you. But the sky isn’t really on fire: it’s a giant panoramic photo in our Media Room taken by SmugMug co-founder Chris MacAskill.
Over 23 attempts, Chris took 336 photos with a long, telephoto lens (the Canon 300mm f/2.8L for those lens junkies out there!) and his trusty Canon 5D Mark II, and he turned those two evenings into one of the most-visited photos on display in Silicon Valley. Featured in the San Jose Business Insider and the Huffington Post, this amazing wraparound print attracts visitors each week to see it and many more stunning photos at our headquarters.
SmugMug’s San Francisco Panorama
Originally printed in 2009, the past seven years haven’t been too kind to the image and it’s seen better days, most notably thanks to a pot of flying coffee. It was time to reprint and reprocess the photo using the latest Photoshop, Lightroom, panoramic stitching, and luminosity-masking techniques. That’s where I come in.
Over the course of one and a half months, I acquired the original RAW files from Chris, imported the photos into Lightroom, reprocessed each individual photo, stitched them into several panoramas, and blended various exposures together. It was a serious undertaking: three different software programs, various Photoshop filters, and many hours spent perfecting it. Let’s dive into how it was done.
Processing with Lightroom
The first step in reprocessing the panorama was importing the photos into Lightroom. Chris had sent me all the files as Canon CR2 RAW files with his edits saved as separate XMP sidecar files. I hate keeping extra XMP files, and I immediately converted the photos to Adobe’s own RAW format — DNG — which combines the RAW and edit information into one file. The XMP sidecar files were then deleted.
The CR2 files were imported and converted to Adobe’s DNG format
Now it was time to start editing. The first roadblock I stumbled upon was figuring out how Chris photographed the image. When you create a panoramic photo, you start on one edge of the scene and then slowly move the camera left or right, then up and down. Each photo should overlap the previous one by at least 30% so one can match up the same features between photos. Overall, I had to sift through:
- Two days of photos.
- 36 slightly overlapping photos per pass.
- Multiple passes of the same exposure as he tried to “get it right.”
- Three different exposures (too dark, normal, and too bright).
- Changing light as the sun moved closer and closer to the horizon and eventually disappeared.
To get a handle on the 336 photos that I was sorting through, I took advantage of Lightroom’s “stacking” feature. It allows you to group photos together in a stack that can be collapsed and expanded. This allowed me to group each pass of photos together. Each pass was photographed with the same settings (same shutter speed, ISO, and aperture) so they all looked the same. But each pass might be slightly different from the previous; for example, pass one might have used aperture f/5.6 while pass two used aperture f/9. I was going to edit every photo in a given pass the same, then repeat for each pass.
The photos were stacked into groups of 30 – 36, representing each pass.
Now that the photos were stacked into their groupings, it was time to start editing. Lightroom has a nifty feature that allows you to copy and paste your editing settings from one photo to the next. All I needed to do was edit one photo in each pass, then apply it to the rest of the photos in each stack. Canon 5D Mark II files have a hard time capturing really bright scenes and really dark scenes all at once (i.e., dynamic range), so I had to ensure I didn’t push the limits of each of these files. Luckily, Chris took bright and dark versions, which would later enable me to control brightness without pushing the files too much and avoid unnecessary noise in the image.
I left the white balance mostly the same, knowing I’d be cleaning up the color balance, temperature, and tint later. I focused mostly on extracting color and detail from the photo by increasing the contrast, clarity, vibrance, and saturation. I also slightly reduced the highlights to pull out some of the detail in the clouds while also increasing the whites so they still retained the look of clouds. I also brightened the city lights.
I edited each photo to bring out detail and color.
This is the point where I ran into my first unexpected bump (though easily surmountable). Chris initially made a common mistake — he photographed the pano in Aperture Priority mode. This means the camera’s sensitivity to light (ISO) and aperture (f-stop) were fixed but the shutter speed changed as the camera tried to guess the exposure. In theory, every photo would come out with the same brightness, but the camera was fooled in a few of the photos. Some of the individual photos in each pass were darker or lighter than others. I had to fix the exposure on each photo before proceeding, trying to get each photo to have almost the same exposure.
The photo on the left is darker than the right, requiring additional editing to match.
Some of the passes were done (as I would have hoped) in Manual mode, with the shutter speed, aperture, and ISO all fixed. The only problem is that taking 30+ photos takes time, and in that time the sun is setting and the sky is getting darker. If Chris started taking photos on the left (the Bay Bridge), by the time he got to the right (the Golden Gate Bridge), the sky would be much darker than when he began. I had to account for this as well and processed the photos so they’d have similar exposure.
Lastly, I wanted to get as much detail out of the sky as possible. That meant applying a gradient filter to the sky to increase its warmth, darken it, and bring out the midtones and darks in the sky by increasing contrast and clarity. The shapes of the storm clouds became more apparent and the clouds returned to a more natural-looking color.
Top: the Gradient Filter is applied (in red).
Bottom: Extra details are pulled out in the sky and the purple color reduced.
Stitching with Autopano Giga
Once each stack of photos was processed in Lightroom, it became time to stitch the 30–36 photos into one, long panorama using an amazing piece of software called Autopano Giga. Let’s start by discussing a few key terms that are useful to know when stitching panoramas:
- Projection: How the software maps a 3–D scene (San Francisco) into a 2–D image (our panoramic photo). Cambridge in Color has a great tutorial that’s worth reading if you want to know more.
- Control Points: Spots identified on two or more photos that are identical. They’ll exist in different places in each photo, and by identifying where that specific point is on each photo, we can then align the photos. Control points can be the edge of a building, a boat, a tree, a door—anything you can identify as the same point in both photos.
- Rendering: The final step of running all the mathematical calculations to determine how the pano will look. It performs a number of steps: warping, de-ghosting, exposure blending, color balancing, and much more before finally saving the blended panorama.
Photoshop and Lightroom can stitch panoramas, but there are a few reasons why I prefer Autopano:
- Autopano lets you specify the number of control points each photo will find. The more control points, the less chance of “ghosting,” where two photos aren’t properly aligned which results in a blurring effect.
- Autopano lets you manually add or adjust the points in case it guessed slightly wrong, which allows me to improve the accuracy of the stitch.
- Autopano lets me change the projection on the fly, before rendering. This lets me figure out which projection will give the most realistic-looking photo.
The first step is to let Autopano detect the control points and then align the photo. It will then offer a preview of the stitch, while allowing me to add or edit control points, change the projection type, and more.
Autopano lets me preview the stitch and change the projection type before rendering the pano.
Choosing different projection types lets me see which of the projections creates the most realistic-looking photo. Autopano initially suggested “Planar,” but I found that “Spherical” returned the best results. The planar version, which you see below, had too much bowing in the center. You’ll notice that the horizon line tilts downward as you move away from the center of the photo, something I wanted to avoid. The spherical projection had a straight horizon, exactly what I wanted!
Autopano will render the image once all your settings are complete.
Once you’ve finalize the settings, Autopano renders the panorama into its final 400-megapixel image. Rendering a 400-megapixel image can take some time, but I borrowed one of SmugMug’s Mac Pro computers, and it whizzed through the calculations and saved the photo to an external hard drive.
Processing in Photoshop
With the photos stitched, it was time to bring them into Photoshop and begin fixing a few issues. The first problem to tackle was removing the purple and orange cast from the buildings. This appearance was due to the white balance of the sky but in reality, the buildings shouldn’t be this purple and lights shouldn’t be this orange. Using color-balance, hue-saturation, and selective-color adjustments, I was able to remove the purple and orange and warm up the buildings.
Top: The purple buildings and orange lights seem off.
Bottom: The odd colors are removed using several color adjustments.
Since the sky is a major part of this photo, I instantly noticed an interesting effect: the thickness of the clouds caused them to change in color from blue to purple. Even if this color variation was natural, it looked weird and needed to be corrected.
Some parts of the sky will need color correction to get the colors to transition more naturally.
On closer inspection, I noticed that the spherical projection wasn’t quite perfect: at the edges of the photo, the horizon and the Golden Gate Bridge were slightly slanted. Using the puppet warp tool in Photoshop, I was able to straighten the edges that had bowed on the corners.
Top: The spherical projection shows signs of warping at the edges.
Bottom: The puppet warp tool fixed the warped edges.
A few other things needed to be cleaned up in the photo: the city lights were brightened a bit, the clouds had extra detail returned in them, and shadows in the city buildings were pulled out in order to make them look less black. Trying to do all this manually would have been a great amount of effort; however, I let Photoshop do this for me automatically. Using luminosity masks, Photoshop can automatically select parts of a photo based on how bright they are, and then only apply changes to areas that have the detected brightness. Below you can see how Photoshop automatically detected the brightest parts of the photo, allowing me easily make changes to the city lights.
A luminosity mask was used to select only the brightest parts of the photo: the city lights.
The final step was to add sharpening to the photo. For this, I use the free plug-in from Nik software called Sharpener Pro 3. I just used the default settings to add a little bit of sharpness.
Nik Sharpener Pro was used to add some extra sharpness to the photo.
The final image
With all the photos reprocessed, stitched, and then edited to perfection in Photoshop, we’re finally done! The final photo came out to a whopping 425.5 megapixels (67,683px wide x 6,288 px tall at 240 ppi).
Compare the original edit:
To our final edit:
The final San Francisco panorama.
Now, to hang this beauty somewhere where a pot of coffee can’t find it….