Pages: [1] 2   Go Down

Author Topic: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler  (Read 10706 times)

Doug Gray

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2197

One of the mantras in color management is that Perceptual Intent compresses colors near the gamut boundary so that it can map colors that are outside the gamut smoothly to the inside. For instance see the nice graphic illustrating Perceptual v. Relative:
http://www.cambridgeincolour.com/tutorials/color-space-conversion.htm

Quote
Note how perceptual maintains smooth color gradations throughout by compressing the entire tonal range, whereas relative colorimetric clips out of gamut colors (at center of magenta globules and in the darkness between them).

Apparently not very much if at all. At least on the profiles I've been using. Perceptual Intent does have a slight effect on tone. It implements a small "S" curve and changes luminance. But these changes are fairly small. As for compressing colors near the boundary and mapping outside colors smoothly inside as per the illustration it seems this may not be all that common. In fact it pretty much doesn't occur on I1Profiler or Profile Maker 5.  The following data used profiles generated from identical spectral data using a Canon 9500 II with Epson Ultra Prem. Glossy.

Attached are 2 sets of 6 graphs,  showing the actual profile responses of I1 Profiler and PM5 as the b* component of L*a*b* is swept from -127 to 127. The L* source is constant at 50 (mid gray), and a* is set to 0.

The individual graphs have the requested color component shown in red, the returned color shown in blue. In general the graphs on the right roundtrip using Perceptual out and Relative In. The profile is telling us what the actual color (this is what Relative does) generated by the Perceptual Intent is.  The right hand graphs are Colorimetric. That is Relative in, Relative out. The profiles attempt to match all colors in gamut and map out of gamut colors to the nearest gamut boundary. They do a pretty good job.

The detailed descriptions are, from left to right, top to bottom:

1. Roundtrip using Perceptual Intent to the device and Relative Intent back to L*. Notice the big difference between the I1Profiler (top set) and PM5 (bottom set). The I1 has the L* actually drop to 48 as the gamut boundaries (b* less than -80 or more than 80) are reached. OTOH, PM5 sets the L* values just over 52 over the gamut.  Different "secret sauces."

2. Roundtrip using Relative Intent to the device and Relative Intent back to L*. Both profiles do a reasonable job of keeping the L* at 50. The I1 profile is a bit better, probably because it has 36 LUTs on a side compared to 32 for PM5.

3. This shows the requested color b* component in red, the actual color printed in blue. Note how closely aligned they are until they hit gamut boundary. Oddly, the Perceptual intent clips at a slightly lower value than the Relative Intent roundtrip shown in the graph just below. This is really just an effect of Perceptual's gradual reduction of L* from 50 to 48 which decreases the b* gamut boundary.  But evidence of gamut compression? I see only a very small rounding of the blue line near the boundary.

4. Same as #3, but is an expanded, right hand side only to make comparing the lines a bit easier.

5. This shows a Relative Intent in, Relative Intent out roundtrip. Here, the specific goals in the ICC spec. are to print the specified colors are closely as possible when within the gamut and map them to the gamut boundary when outside. They track quite closely until just past 80.

6. Same as #5,  but is an expanded, right hand side only to make comparing the lines a bit easier.


« Last Edit: January 15, 2016, 11:48:17 am by Doug Gray »
Logged

GrahamBy

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 1813
    • Some of my photos
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #1 on: January 15, 2016, 04:41:24 am »

Thank you. Confronting what people believe with what really happens is the most important part of science, and happens far too rarely in many, many fields...
Logged

hugowolf

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 1001
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #2 on: January 15, 2016, 12:48:14 pm »

This using the default settings in iProfiler for the perceptual rendering intent, not changing the contrast, saturation, or neutralize gray parameters?

Brian A 
Logged

Doug Gray

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2197
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #3 on: January 15, 2016, 01:44:00 pm »

This using the default settings in iProfiler for the perceptual rendering intent, not changing the contrast, saturation, or neutralize gray parameters?

Brian A

Yep. Just the default settings. It would be interesting to test the "neutralize gray" settings as it isn't really that clear what this is intended to do. Contrast is almost certainly related to "S" curve strength. When this is done in Photoshop with RGB curves it also increases saturation while just changing L* in a profile B2A0 map would not. It would be interesting to investigate what the saturation setting does.

It's fairly easy to test Perceptual mappings because you can find the colors they are mapped to by using the profile's A2B1 which gives you the Lab color that would be printed within reasonable accuracy.
Logged

howardm

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 1984
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #4 on: January 15, 2016, 02:05:10 pm »

isn't the neutralize gray setting designed to remove the influence/bias of paper white from light grays?  In a perfect world the greys would be along the L axis but once you introduce non-white paper base, they depart the axis.

Doug Gray

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2197
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #5 on: January 15, 2016, 02:52:08 pm »

isn't the neutralize gray setting designed to remove the influence/bias of paper white from light grays?  In a perfect world the greys would be along the L axis but once you introduce non-white paper base, they depart the axis.

Interesting I'll look at that specific issue.

Relative to the other settings, There is no significant difference in mapping until low L* values are reached where BPC dominates. Oddly, for the Chroma Plus settings in PM5 saturation is increased slightly at about 5% for the blue parts of the b* over the length of b* from 0 to -100 and it cuts off earlier. However, no compression or mapping of out of gamut color occurs. Just slightly increased saturation and only on the blue side of b*. I guess that is why it's called Chroma Plus.
Logged

digitaldog

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 20646
  • Andrew Rodney
    • http://www.digitaldog.net/
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #6 on: January 15, 2016, 02:56:38 pm »

isn't the neutralize gray setting designed to remove the influence/bias of paper white from light grays? 
Yes.
Logged
http://www.digitaldog.net/
Author "Color Management for Photographers".

Doug Gray

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2197
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #7 on: January 15, 2016, 03:47:31 pm »

isn't the neutralize gray setting designed to remove the influence/bias of paper white from light grays?  In a perfect world the greys would be along the L axis but once you introduce non-white paper base, they depart the axis.

It does. I just checked it. As Andrew also said, neutral gray removes the effects of the paper white.  That isn't possible at the highest L* values so from L*=85 to L*=100 the a* and b* values move gradually back towards the paper white with about half the distance to paper white recovered at L=95.
Logged

Tim Lookingbill

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2436
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #8 on: January 15, 2016, 05:23:25 pm »

It does. I just checked it. As Andrew also said, neutral gray removes the effects of the paper white.  That isn't possible at the highest L* values so from L*=85 to L*=100 the a* and b* values move gradually back towards the paper white with about half the distance to paper white recovered at L=95.

Interesting. Wonder how a pure RGB grayramp looks printed that way viewed under a 4700K Solux lamp? In CMYK commercial press work we never even got that exacting and the grays still looked just fine.

The one thing I'm trying to understand since I don't have gray ink (if that's what's discussed here) over inkjet CMYK gray mixing is that the lighter the gray the more it requires paper white to show through in order to make it light. The mixture must have to reduce black considerably in order for that to happens since it's the most densest ink. That means CYM must adjust it's mixture ratio to maintain neutral gray to fight the staining effect of paper white.

So I'm asking is there really that much of a visual difference in compensating for non-neutral paper white?
Logged

Doug Gray

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2197
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #9 on: January 15, 2016, 05:38:40 pm »

Interesting. Wonder how a pure RGB grayramp looks printed that way viewed under a 4700K Solux lamp? In CMYK commercial press work we never even got that exacting and the grays still looked just fine.

The one thing I'm trying to understand since I don't have gray ink (if that's what's discussed here) over inkjet CMYK gray mixing is that the lighter the gray the more it requires paper white to show through in order to make it light. The mixture must have to reduce black considerably in order for that to happens since it's the most densest ink. That means CYM must adjust it's mixture ratio to maintain neutral gray to fight the staining effect of paper white.

So I'm asking is there really that much of a visual difference in compensating for non-neutral paper white?

I can see the effect soft proofing a gray ramp.  The Paper has a pretty noticeable blue tint (b* goes to -7 at the white point).  looks sort of strange. The tones below L90 or so look reddish compared to the full "white" at L100.  I prefer the paper gray which maintains the proper adapted color to the paper white. There is virtually no difference with neutral papers that don't have OBs.

Logged

hugowolf

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 1001
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #10 on: January 15, 2016, 09:57:23 pm »

Interesting. Wonder how a pure RGB grayramp looks printed that way viewed under a 4700K Solux lamp? In CMYK commercial press work we never even got that exacting and the grays still looked just fine.

The one thing I'm trying to understand since I don't have gray ink (if that's what's discussed here) over inkjet CMYK gray mixing is that the lighter the gray the more it requires paper white to show through in order to make it light. The mixture must have to reduce black considerably in order for that to happens since it's the most densest ink. That means CYM must adjust it's mixture ratio to maintain neutral gray to fight the staining effect of paper white.

So I'm asking is there really that much of a visual difference in compensating for non-neutral paper white?

There is no gray without white pigment. There is a reason why Epson has K, LK, and LLK labeled inks. They are just diluted blacks.

Brian A
Logged

Doug Gray

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2197
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #11 on: January 16, 2016, 12:01:37 am »

Interesting difference in how I1Profiler and PM5 do Perceptual Intent across the L* range.

PM5 does not do any tone curve modifications but does a full BPC. I1Profiler does a partial BPC down to L=4 so at L:8, the paper's BP, the actual L is at 11. It continues to drop until L=4 (L=8 on the paper) then stays at L=8. It also does a slight, midrange contrast increase as a small "S" curve. At L:35 it drops L by 1, and at L:75 it increases L by 2 on a glossy with BP at L=8. On a matte with BP=23, BPC is also done down to L=4 and the "S" curve is added. However, the paper's BP is so high that it overrides most of the midrange contrast increase.

The I1Profiler profiles were v4 so it might be that X-Rite is following the ICC reference medium model for Perceptual Intent.

EToA:
I tested the partial BPC in Photoshop and Photoshop shows a full BPC rather than a pedestal from L=0 to 4. Odd.  I examined the B2A0 LUT path and, guess what, it implements the Lab 0 to 4 pedestal in the "B-Curve section for the L channel only. The 3D LUTs get their input from the "B" curves. Other LUT paths such as B2A1 and all PM5 paths have a one to one B curve. Best guess is that Photoshop is simply ignoring the "B" curve component and assuming it is one to one as they have always been that way.

So now the question is, is this just in Photoshop's internal profile conversions or do they actually ignore the "B" curve when printing.  Either way Adobe's CME is broken even if only slightly. Time for a physical print test. 


EToA:
Ran a Photoshop print test and the L=4 pedestal does not appear. So Photoshop is printing the same way it's soft proofing works.

The problem is that Photoshop is NOT using the V4 "B" curves in the B2A0 tables. Most likely because "B" tables are new to ICC V4 as are the output reference medium specified in V4.

Selecting ICC V2 in I1 Profiler is probably a good idea for anyone using Perceptual Intent as it eliminates the pedestal and does a full BPC like PM5 but still has the contrast enhancement at the default settings.

As a side note, the "neutralize grays" slider at 0 is similar to the "paper colored gray" selection in PM5. However, putting the slider at 100 does not produce actual neutral grays in the manner of PM5. It just makes the grays about halfway closer to neutral. Not that this is very useful since this is mostly an issue with OBs and most people don't want the paper white to be a different hue from the grays in these.

Also, the results with the I1Profiler re gamut compression are unchanged in V2.


EtoA:
After examining the "B" curve detail in the V4 profile the B2A0 black point is exactly at L=3.16, not 4. This implements the dynamic range of the Standard References Medium black (Dmax:2.45) which is new to V4.

Basically, Photoshop ignores the "B" curve and treats it as a no-change transform. Effectively this results in full BPC (infinite dynamic range) in Perceptual for V4 which makes it the same as V2. Photoshop does implement the variations between V2 and V4 LUT coding. These would cause small differences, a bit less than 1 dE, between V2 and V4 had they not been done correctly. In V4 these 3D LUTS are tagged: lutBToAType. In V2 the 3D LUTs are tagged:lut16Type.

In summary, aside from Photoshop ignoring the "B" curves in Perceptual Intent on I1Profiler V4 profiles, Photoshop does accurately render exactly the same on the Relative Colorimetric  A2B1 and BtoA1 paths to within digitization error ( < +/-.01 on L*, a*, or b*).


« Last Edit: January 16, 2016, 05:02:17 pm by Doug Gray »
Logged

GWGill

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 608
  • Author of ArgyllCMS & ArgyllPRO ColorMeter
    • ArgyllCMS
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #12 on: January 17, 2016, 07:38:51 pm »

Not really a surprise, given that these profilers have no way of knowing what the source gamut is.
Logged

Doug Gray

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2197
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #13 on: January 17, 2016, 10:18:59 pm »

Not really a surprise, given that these profilers have no way of knowing what the source gamut is.

So true. But I wonder how the notion became so widely circulated. For a long time I believed it as well. It may be something that is largely in device link profiles.
Logged

torger

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 3267
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #14 on: January 19, 2016, 08:57:56 am »

I've noted that commercial printing software adds a bit of perceptual rolloff to the relative intent, that is it doesn't clip colors straight off like the original ICC intention. That together with blackpoint compensation makes the relative intent sort of perceptual on steroids. When I print I use relative colorimetric with blackpoint compensation with either say Lightroom/Photoshop or a pre-processed file using LCMS tifficc.

If you want the "correct" relative colorimetric without BPC and with straight off clipping you find it in Argyll processing the file with cctiff.

The problem with perceptual ICC profiles is that it's hardcoded for a specific source gamut, so it may compress stuff even if it's not necessary. It's then more flexible this nonstandard way to do the perceptual compression in the printing software itself which knows both the source gamut and the actual colors in the file printed.
Logged

Doug Gray

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2197
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #15 on: January 19, 2016, 11:56:46 am »

I've noted that commercial printing software adds a bit of perceptual rolloff to the relative intent, that is it doesn't clip colors straight off like the original ICC intention. That together with blackpoint compensation makes the relative intent sort of perceptual on steroids. When I print I use relative colorimetric with blackpoint compensation with either say Lightroom/Photoshop or a pre-processed file using LCMS tifficc.
I would be interested in further information about this.  ICC V4.3 specifically disallows this in Relative Colorimetric intent. Along the same lines I have seen some canned profiles implement black point "correction" in Colorimetric Intent when it should be limited to Perceptual and optionally, Saturation. Perfectly OK in Perceptual Intent but it hoses over soft proofing when included in Relative. ICC has made it clear that the proper implementation of both V2 and V4 profiles should not implement BPC. It has documented Adobe's proposal for optionally including BPC when desired as it sometimes is but that is to be done by the color engine, not the AToB1 or BToaA1 LUTs.

Quote
If you want the "correct" relative colorimetric without BPC and with straight off clipping you find it in Argyll processing the file with cctiff.
Matlab doesn't implement BPC either. It is, fortunately, a rather simple process to implement Adobe's BPC in Matlab which I have done. I have a function, "ProfileConvert" which has the that option. It converts colors into XYZ, find the BP by inspecting AToB0, scales XYZ against that then converts back to LABPCS and implements the BToA conversion.

Quote
The problem with perceptual ICC profiles is that it's hardcoded for a specific source gamut, so it may compress stuff even if it's not necessary. It's then more flexible this nonstandard way to do the perceptual compression in the printing software itself which knows both the source gamut and the actual colors in the file printed.

This seems to be the case for embedded profiles in printer drivers where the "Printer Handles Color Management" since the source colorspace is usually sRGB or sometimes Adobe RGB. The problem with generic ICC profiles is they have no idea what the actual image source colorspace is. When it's sRGB they can and sometimes do expand sRGB somewhat into the printer's colorspace where possible within limits as to what looks good. This isn't possible when they don't know the source colorspace.

See the thread here where I examined this as done by Canon 9500 II.
http://forum.luminous-landscape.com/index.php?topic=107556.0
« Last Edit: January 19, 2016, 01:02:56 pm by Doug Gray »
Logged

torger

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 3267
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #16 on: January 21, 2016, 06:15:37 am »

I would be interested in further information about this.  ICC V4.3 specifically disallows this in Relative Colorimetric intent.

I haven't investigated it in detail so I don't have any specific information, I've just noted that it happens, and I think it breaks the ICCv2 standard too. But it's there because it's practical for real use. The blackpoint compensation thing was as far as I know a thing introduced outside standards by Adobe as it was practical for real use, and then it has later been defined and standardized. Adobe through it's de-facto monopoly has incredible power when it comes to introducing stuff like this.

I think the feature is good though, and I'm not particular fond of the hard-coded in the profile perceptual mode. It was good to have things precalculated back in the 90s when we didn't have much processing power in the computers, but nowadays I think it's better to have less hard-coding in the profile and do more image-dependent adjustments in the software.

I would guess that it's still made pretty static though, I don't think there's really any complex perceptual style gamut mapping going on, but just a short rolloff close to the gamut edge that looks a bit smoother than straight off clipping.
Logged

digitaldog

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 20646
  • Andrew Rodney
    • http://www.digitaldog.net/
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #17 on: January 21, 2016, 11:22:08 am »

But it's there because it's practical for real use. The blackpoint compensation thing was as far as I know a thing introduced outside standards by Adobe as it was practical for real use, and then it has later been defined and standardized. Adobe through it's de-facto monopoly has incredible power when it comes to introducing stuff like this.
It was introduced in the Adobe CMM (and later other's) to account for a 'bug' in mapping of black in some profiles that themselves were considered by Adobe broken. So it seems that spec's or not, profile creators have their own agendas and can produce bugs. I haven't seen profiles that are broken and need BPC in years. BPC either helps fix the bug or doesn't do anything. At least that's the idea and my experience.
Logged
http://www.digitaldog.net/
Author "Color Management for Photographers".

torger

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 3267
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #18 on: January 21, 2016, 02:45:42 pm »

It was introduced in the Adobe CMM (and later other's) to account for a 'bug' in mapping of black in some profiles that themselves were considered by Adobe broken. So it seems that spec's or not, profile creators have their own agendas and can produce bugs. I haven't seen profiles that are broken and need BPC in years. BPC either helps fix the bug or doesn't do anything. At least that's the idea and my experience.

Uhm, I thought black point compensation was the thing that caused relative colorimetric to rolloff to black point of the paper rather than just clip at the darkest color the paper could reproduce? As far as I know, please correct me if I'm wrong, the original intent of relative colorimetric is to clip the gamut straight off not only in the brightest spots, but also in the darker areas.
Logged

digitaldog

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 20646
  • Andrew Rodney
    • http://www.digitaldog.net/
Re: Perceptual Gamut Compression? Little if any in PM5 and I1Profiler
« Reply #19 on: January 21, 2016, 02:55:04 pm »

Uhm, I thought black point compensation was the thing that caused relative colorimetric to rolloff to black point of the paper rather than just clip at the darkest color the paper could reproduce? As far as I know, please correct me if I'm wrong, the original intent of relative colorimetric is to clip the gamut straight off not only in the brightest spots, but also in the darker areas.
My understanding is BPC does something useful or nothing at all depending on the profile. IF it's buggy as I saw a few decades ago, black is mapped correctly from source to destination using BPC. If the profile is kosher, nothing happens, no compensation is required. Again, I haven't see an output profile that produced goofy black mapping in a very long time. But I haven't tested every profile building app out there.
With those old, buggy profiles, without BPC, the conversion didn't look correct too; you could see this in blacks of course.
Logged
http://www.digitaldog.net/
Author "Color Management for Photographers".
Pages: [1] 2   Go Up