I’ve been working with some very large 5+ gigapixel panoramas lately. I thought I’d share a few things I’ve learned while dealing with such large images that might help other panoramic photographers struggling with poorly documented limitations of various file types and their compatibility between common applications.

Photoshop & Lightroom

Applications and file formats both have their own set of limitations when it comes to pixel dimensions and file sizes. Let’s talk about application limitations first. Photoshop internally supports a maximum image size of 300,000 x 300,000 pixels or 90 gigapixels (assuming you have enough RAM!), but very few file types support this insane size. Lightroom is a lot more restrictive at 65,535 pixels along the greatest side. Lightroom also has a silly limitation of 512 megapixels for an image regardless of the longest side, which makes things very frustrating for a panoramic photographer. For example: 32,000 x 16,000 is the largest 2:1 equirectangular spherical panorama you can work on in Lightroom and fit under 512 megapixels. This is probably a limitation of Camera RAW, the engine underneath Lightroom’s hood. Other programs will have their own image size limitations. Sometimes it is confusing to figure out what is a program limitation and what is a file format limitation. Let’s go over a few common file formats and their limitations—keep in mind that a file format might be able to hold a larger image than your program can read.

DNG

DNG is Adobe's Digital Negative format for RAW files. It supports both lossy and lossless compression and up to 32-bit floating point. Adobe makes a DNG Converter to convert camera manufacturer-specific RAW formats into DNG format. I usually stay with the manufacturer's native RAW format, but Lightroom 6+ can merge panoramas and HDR images into DNG format (sadly, no batching feature yet), preserving the RAW data for easier editing later, such as adjusting white balance. I can't find any specified maximum image size or file size for the DNG format in Adobe's documentation, but Camera RAW will limit you to 512MP anyway. Seitz RAW Converter for their Roundshot cameras lists a maximum of 4GB for their DNG files, so the file format is capable of much larger images than Photoshop's own Camera RAW engine.

TIFF

TIFF files don’t appear to have a pixel or resolution limit that I can find, but they do have a 4GB file size limit. TIFF files support multiple layers and 8-bits, 16-bits, or 32-bits per color channel. Lightroom 4 and newer can now read 32-bit TIFFs and multiple layers, though it will only see the final top layer and any transparencies to layers underneath (i.e. the top rendered image you see in Photoshop), you cannot interact with the layers in Lightroom. TIFF files support ZIP and LZW compression for smaller file sizes. ZIP compression is more efficient than LZW compression with 16-bit and 32-bit files resulting in smaller file sizes, but it is also more CPU intensive and slower to open and save than LZW. Layers can also support ZIP compression. Often LZW results in LARGER file sizes for me than no compression at all with anything over 8-bits per channel. I use ZIP compressed TIFFs for the majority of my storage. Consider that more layers means larger file sizes and more difficulty staying under 4GB for large-dimension images or lots of layers. If you use ZIP compression on both the image and layers when saving from Photoshop, you can fit quite a large amount of data under the 4GB file size limit. I usually work in PSB format temporarily to save quicker while working, and export my final image as a ZIP compressed TIFF to read in Lightroom, as it takes significantly more CPU time to compress the image each time you save, but it is lossless compression and good for archiving.

BigTIFF

BigTIFF is a relatively new file format to get around the 4GB limitation of TIFF files; it has no practical file size limitation. Photoshop CS6 and newer can read them, but not write them, and Lightroom can’t do either. Some panorama tools can read/write this format. I find it to be of little use until there is more application support for it.