Out of Gamut: The High-Bit Advantage
In my last column on relative gamut sizes in color spaces such as my eponymously named Bruce RGB, I promised to address the topic of large-gamut spaces in a future column. Before tackling that topic, I need to clarify another, related issue: It’s a rare week that passes without someone asking me what the point is of using high-bit files — that is, files that contain more than 8 bits of color information per channel, such as 12 or 16 bits — when all our printing devices thus far are limited to taking 8-bit channels for their input. In this column, we’ll look at the pros and cons of using high-bit files — 48-bit files, for example — instead of their 24-bit counterparts.
Let’s start with the cons of using high-bit files, because they’re relatively straightforward. First, any file that has more than 8 bits per channel actually occupies 16 bits of memory per channel, so your file size doubles, as does the required storage space.
Second, support for high-bit files is limited to a few image-editing applications, such as Adobe Photoshop and Heidelberg Linocolor. Even then, you can only perform a limited set of operations on them.
Finally, before you send an image to a printer, a Web page, or a page layout application, you must downsample the high-bit file to 8 bits per channel.
The pros of using high-bit files are a little less clear, but they are nonetheless very real. They can best be understood by comparing what happens when you apply the same edit to one file with 8-bit channels and another with 16-bit channels.
When you start with 8-bit channels, as in the 24-bit RGB file shown in Figure 1, each channel has 256 possible values or levels. The histograms of the three channels, shown in Figure 2, indicate that the file has pixels at each of the possible values in each channel.
But each edit you make to that 24-bit file — a levels tweak, a contrast curve, a color balance change, or a conversion to another color space — will subtly degrade the image, and you’ll wind up with fewer than 256 levels afterwards. In some cases, levels that were formerly adjacent will get stretched apart, creating the possibility of posterization or color banding. In other cases, levels that were formerly adjacent will get pushed together, so that you lose potential detail. (In a digital file, detail is recorded as differences between pixel values: if two pixels have different values, you can exaggerate the difference to make the detail more visible, but once they’re the same value, that detail is gone into the bit bucket, never to return.)
If we apply the Levels move shown in figure 3 — a hefty but by no means unheard-of correction — we may not see any obvious posterization or color banding in the resulting image, shown in figure 4. But if we look at the histograms of each channel, shown in figure 5, we can see that we’ve opened up some holes in the shadow end, some of them as large as 6 levels, where the 1.8 gamma tweak stretched the shadow values apart. And we can see some spikes in the highlights where the same gamma tweak compressed the highlight values.
The message here is not that holes and spikes in histograms are automatically a bad thing; pretty much any file that’s been through final edits will have some holes and spikes. But holes in the histogram represent potential posterization or banding that further edits will almost certainly make worse, and spikes represent lost potential detail. The trick with editing images is to make sure that the holes don’t wind up causing visible posterization, and that the detail you sacrifice in the spikes isn’t important to the image. It’s easier to attain that goal if you delay making the holes and spikes as long as possible, which is where the 16-bit advantage comes in.
Do That Again
If we repeat this experiment starting with a 48-bit file containing 16 bits per channel rather than using 24-bit color, which uses the standard 8 bits per channel, we can see at the start that the 48-bit image and the histograms look identical to the 24-bit one (see Figure 6). But there’s an important difference: In the 24-bit file, each channel contains 256 possible levels, from 0 to 255; in the 48-bit file, each channel contains 65,536 possible levels. Our monitors don’t display them, and our histogram doesn’t show them, but they’re there, and they make a big difference.
If we apply the same levels tweak to the 48-bit file, we get the result shown in figure 8. As can be seen from the histograms (see Figure 9), each channel still contains data at each of the possible 8-bit levels: If we immediately downsampled the 48-bit file to 24-bit RGB, each channel would still have data at each of the 256 levels. Of course, the actual image shown here had to be downsampled to 8-bit channels and compressed with JPEG, but even so you can probably see that the gradations in the 48-bit edited file are a little smoother than the ones in the 24-bit edited file shown in figure 4.
The practical implication of this is simple: If you make your major global edits for tone and color on high-bit files, you stand much less chance of running into visible posterization and banding than you will if you apply the same edits to a file that started out with 8-bit channels.
Most current scanners and many high-end digital cameras capture more than 8 bits of color data per channel. When you tweak images using the tools provided by the scanner or camera driver, you’re actually working on the high-bit data. If your scanner or camera has no facility for delivering its raw high-bit data to an image-editing application such as Photoshop, you can and should make your major corrections using the driver’s tools.
If the driver does offer the capability to transfer high-bit files to Photoshop, you could still use the driver’s tools to make your major edits, but there are reasons why you might be better off transferring the high-bit data to Photoshop and making the corrections there instead.
First, most scanner drivers display a small proxy of the prescan image, forcing you to make your decisions about tone and color based on
a postage-stamp sized preview. But in Photoshop, you can see every pixel in the image when you edit your high-bit files, so you can see exactly what’s happening to important detail that the small prescan proxy might not show.
Second, while Photoshop has been using device-independent RGB working spaces for more than two years now, most scanner vendors have yet to catch on. If they implement color management at all, they probably only do so to transform scanner RGB to your monitor RGB. The upshot is that unless you set monitor RGB as your Photoshop RGB working space (which is a bad idea for reasons too numerous to go into here), the image you see in the scanner driver will almost certainly look different than the one that lands in Photoshop. If you simply use the scanner driver to crop and set resolution, and then bring the high-bit data into Photoshop instead, you can avoid that whole problem.
Third, while scanner drivers vary enormously in their capabilities, very few of them offer a toolset anywhere near as complete as even the limited subset of Photoshop tools that are available for high-bit images.
So just what are the limitations on what you can do with high-bit files in Photoshop? Most of the tools in the tool palette don’t work on high-bit files. Those that do are the marquee, the lasso, the rubber stamp, the history brush, the various path tools, the eyedroppers, the measure tool, the hand, and the zoom tool. With this collection, you can make arbitrary selections using the lasso or pen tools, you can remove dust and scratches using the rubber stamp, you can turn global edits into selective ones using the History brush, and you can sample, measure and navigate using the remainder.
Most of the commands on the Image menu are also available. You can duplicate, resize, and rotate high-bit images, and you can edit them using most of the tools found on the Image/Adjust menu. The ones I use tend to be Levels, Curves, Hue/Saturation, and occasionally the Channel Mixer, but Auto Levels, Auto Contrast, Color Balance, Brightness/Contrast, Invert and Equalize are also available. These provide a pretty complete set of tools for making global edits.
Selective edits are a little trickier. If you normally make selections using the lasso or the pen tools, you’ll find that functionality is still available in high-bit files. But if, like me, you tend to build selections using a combination of QuickMask, Color Range, and the Magic Wand tool, you may be a bit dismayed by their absence.
Here’s a workaround: If you want to use these tools to make selections, first duplicate the image, then downsample it to 8 bits per channel and make your selections using whatever combination of these tools works for you. Then save the selection in the 24-bit file. When you return to the high-bit file, you’ll find that you can load the saved selection from the 24-bit file via the Load Selection command on the Select menu. You can then edit the selection using any of the adjustment tools that work on high-bit files.
Lost in Space
Color space conversions are often better from high-bit files, too. In particular, I’ve seen many situations where skies start to display noticable posterization when I convert a 24-bit file to output CMYK or RGB, but if I convert the high-bit file instead, I get smooth gradations instead of obvious bands.
You can’t sharpen high-bit files in Photoshop, or use any other filters, for that matter, and you can’t print high-bit files to any output device I know of, so at some point you’ll have to downsample to 8 bits per channel. But if you do as much of your work as possible on the high-bit file prior to downsampling, you’ll generally find that you get much better results, and have much more control over the final outcome, than you would if you started with 8-bit channels.
Bruce is right on in this article about 16 bit color & tone correction. It’s crucial, if you want the highest quality from your digital files, to do the main global & local corrections in 16 bit. What many people fail to realize is even if you get a “perfect 8 bit” from your scanner, if you do a local correction in 8 bit, that area can still suffer from the loss of data that degrades images.
And. . .Bruces tip about setting up an 8 bit copy to use for the normal Photoshop selection tools is great. Not only can you do Quick Mask, but you can do Color Range or create channels such as complex gradations to use as a basis of a 16 bit selection.
If you really want to work like a real pro, do as much work in 16 bit as you can before dropping into 8 bit.
On one hand I can agree with “the better the resolution the longer you have better results”-opinion on the other hand it doesn’t solve the basic problem: oposing to other medias, we are still working in a destructive way in most of the design programms. We have good “resolutions” in programms like illustrator, freehand and photoshop, but the longer you work on a file the more it’s corrupted. If you ever worked on a harddisk-recording, or even the more object oriented way of QXP, you probably would prefer a nondestructive way of working and it would ease the work of editing and optimizing files for any purpose.
Photoshop does allow you to do non-destructive editing using Adjustment Layers
rather than burning changes into the original pixels, but not, alas, on high-bit
Admittedly, the blending computations necessary to implement adjustment layers on
16-bit channels might be quite intense for today’s CPUs, but hopefully sometime in
our lifetimes we’ll have the best of both worlds.
I had heard about 48 bit vs 24 bit editing, but never had a good reason to try it. Now I do, and I’ll do some side-by-side comparisons to satisfy myself.
As I said above, Bruce has a way of clearly explaining gobblygook – Thanks!
This states the photoshop capability precisely. While Adjustement Layers are not available in 48bit mode, the standards adjustments like Levels, Curves and Hue/Sat are available.
I also appreciate the tip to make more complex selections on an 8 bit version and copy to the high bit. I’m always darkening skies and lightening shadows.
With the new Photoshop CS understanding the strength of 48 bit is even more important. This is a good explanation.
I came across this article , after reading this I have become a little confused in what to think . Please read https://www.digitaloutput.net/back%20edit/apr03/feature2.html
AFAIK at least some SGI workstations have been capable of generating video-signals with 36 bit for quite some time. Since analog displays are naturally able to show an unlimited number of colors it is a pity that now we take a “digital step backwards” with respect to color-fidelity.