What are 'Clipped Colors' from ICC Profile Conversions?
You've been told that converting an image from one color space to another can result in clipped colors, but how, why, and where does the clipping actually happen? This article shows you a real-world example of clipped colors in the image itself, in the image color gamut as seen from inside the CieLAB reference color space, and in the image's individual red, blue, and green channels.
Written September 2013. Updated February 2015.
Page Contents
- Source and destination color spaces and conversion intents (providing the necessary minimum of technical terminology in two really short paragraphs)
- Clipped colors when converting a bright red flower from ProPhotoRGB to sRGB
- Clipping after converting from ProPhotoRGB to sRGB caused an obvious loss of detail in the petal highlights
- How small is sRGB? sRGB and ProPhotoRGB inside CieLAB
- The flower color gamut in CieLAB before and after converting from ProPhotoRGB to sRGB
- Clipped colors means lost channel detail
- Conclusion and other examples of clipped colors
Source and destination color spaces and conversion intents
When you convert an image from one color space to another, the image's original color space is called the source color space and the color space to which the image is converted is called the destination color space. In the example below, the source color space is the very large ProPhotoRGB color space and the destination color space is the much smaller sRGB color space. Because the destination color space isn't big enough to hold all the colors in the original image, some of the image colors will be clipped upon conversion (unless you soft proof first).
Unfortunately, the often-repeated mantra that "perceptual intent preserves colors" is simply not true for most standard RGB working spaces. Here's why: Perceptual intent requires that the destination profile have a perceptual intent table. Most of the standard RGB working spaces such as ProPhotoRGB and sRGB are matrix profiles, and matrix profiles don't have tables. When you convert an image to a matrix profile, if you ask for perceptual intent, what you actually get is relative colorimetric intent, which clips.
You might think, well, why doesn't the software warn you? and you would be right, on this point all imaging software I've ever seen is downright misleading. You might also think you really want that perceptual intent table, but perceptual intent ICC profile conversions have their own problems, which will be a topic for another article.
Clipped colors when converting a bright red flower from ProPhotoRGB to sRGB
Clipping after converting from ProPhotoRGB to sRGB caused an obvious loss of detail in the petal highlights
I wanted to show you the original ProPhotoRGB image. But some of you aren't using color-managed browsers and some of you aren't using monitors that are capable of showing reds that are more saturated than the reddest sRGB reds (no monitor that I know of can show the reddest ProPhotoRGB reds!). So both flowers in Figure 1 are already in the sRGB color space. The difference is that the flower on the left was soft proofed to look as much as possible like the original image before the conversion to sRGB. The flower on the right demonstrates what happens when you allow your image editing program to automatically convert a bright, saturated image like this flower image from ProPhotoRGB to sRGB without the benefit of soft proofing.
Two notes about Figure 1: First, unlike the old CRT monitors, many consumer-grade LCD monitors can't display even the more saturated sRGB reds (much less reds that are more saturated than the reddest possible sRGB red). So whether you can actually see the veining details in the flower on the left depends, alas, as much on your monitor as on the actual image. Feel free to download the images and eye-dropper around — the red channel in the image on the left has full detail in the petal highlights.
Second, the point is to show you what clipped colors look like, not to convince you that clipped colors are always a bad thing, so which flower you like the best isn't really relevant (to my surprise, I somewhat prefer the version with the clipped colors). This flower example demonstrates a fundamental truth about converting to a color space that can't contain all of the original image's color gamut: Artistic trade-offs must be made, often between preserving details (the flower on the left) and maintaining bright saturated colors (the flower on the right).
How small is sRGB? sRGB and ProPhotoRGB inside CieLAB
Just how small is sRGB compared to ProPhotoRGB? Figure 2 tells the tale:
The flower color gamut in CieLAB before and after converting from ProPhotoRGB to sRGB
As you can see from Figure 2, sRGB is much, much smaller than ProPhotoRGB. In fact, it's far too small to hold the reddest reds in the original ProPhotoRGB flower image. So when you convert the image from ProPhotoRGB to sRGB, the colors in the original ProPhotorRGB flower image that are too bright or saturated to fit inside the sRGB color space are simply clipped to the boundaries of the sRGB color space. Figure 3 shows you what color gamut clipping looks like inside the CieLAB reference color space:
Looking at Figure 3, you can see that after the conversion from ProPhotoRGB to sRGB, a lot of the flower's brighter, more saturated reds were clipped to the boundaries of the sRGB color space. The next section explains where clipping is located when you examine an image in your digital darkroom.
Clipped colors means lost channel detail
Detail in an RGB image is actually channel detail, that is, detail is carried in an RGB image's red, green, and/or blue channels. When colors in an RGB image are clipped upon converting from a larger to a smaller color space, the image looses detail in one or more channels, which means portions of one or more channels have been clipped to either solid white or solid black.
Figure 4 shows that in the ProPhotoRGB color space (left column), all three channels of the red flower image are fully detailed. After converting to sRGB (right column), the red channel was clipped to solid white in the petal highlights (the areas outlined in black) and the green channel was clipped to solid black over all portions of the red petals.
By comparing Figure 4 with Figure 1, you can see that the visible loss of details in the image after the conversion to sRGB is confined to areas where the red channel was clipped to white. Places where the green channel was clipped to black but the red channel retained detail (wasn't clipped to white) don't show any visible loss of detail.
Red is the dominant color for the flower petals and green is the dominant color for the background foliage. On the one hand, as the red flower example suggests, a large area of clipped color in the dominant channel of a given color (eg the red channel of the red flower petals) usually results in a visible and obvious loss of detail in the image itself. On the other hand, large areas of clipped color in a non-dominant channel (eg the flower petals' green channel) can sometimes be completely lost without any visible loss of detail in the actual image.
What you can't really see from Figure 4 is that the blue channel suffered almost no clipping after the conversion to sRGB. It got brighter in some places (in the magenta portions of the petals — red and blue make magenta) and darker in other places (in the deep red portions of the petals and in the areas of green foliage). But almost none of the blue channel clipped to solid black or white. What this means to you, in your digital darkroom, is that if someone handed you the clipped red flower and said "put detail back into the red flower", you could pull the detail from the blue channel and blend it into the red channel. But that is a topic for another article.
Conclusion and other examples of clipped colors
Well, that's it for an example showing you what color clipping looks like, and I hope you enjoyed this pictorial tour of color gamut clipping during relative colorimetric ICC profile conversions (giving those technical terms introduced at the beginning of the article a little exercise). For additional examples of clipped colors during ICC profile conversions, see Photographic colors that exceed the very small sRGB color gamut, which shows which colors from an interpolated digital camera raw files are likely to be clipped upon conversion to sRGB.