Re: Linear Tonal Response output (print) ICC profiles possible?
On Jan 5, 2018, at 12:18 PM, forums@walkerblackwell.com wrote:
I’m not looking for a visual match. That’s what normal ICCs do.
[...]
Let’e say our dMax is L* 14.45 on Matte Paper and our dMin (paper white) is L* 96.5
...but that's the problem! L* _is_ visual! That's the entire point of the definition. The math has grown much more sophisticated in recent refinements, but the basic "unit" of L* is designed to be the minimum humanly-perceptible difference between two samples -- and it just happens that there's "close enough" to 100 such "units" in typical viewing environments that the standard was defined as such. L* is an entirely _perceptual_ measure, and only becomes absolute when coupled with viewing conditions. As in...D65 L*=100, a*=0, b*=0 is a very noticeably bluer color than D50 L*=100, a*=0, b*=0. Both D50 and D65 are defined with certain illumination (brightness) levels; swap them out for actual illuminants with similar spectral distributions but different brightnesses (as in, move the dimmer switch up and down) and the colors thus defined will be perceptually dramatically brighter and dimmer, even though every sample in this exercise remains L*=100, a*=0, b*=0. The most common absolute, non-perceptual measure is XYZ...but it's something useless and unintuitive to artists (though it's really good for mathematicians).
What I’m talking about is simple. Is there a consistent way to calibrate with an ICC such that numbers above print like this when measured with a spectro (approximately as the real values have been rounded to 2 decimals):
If I understand right, simplified, you want the following: R=G=B=0 => D50 L*=14.45, a*=0, b*=0 [...] R=G=B=120 => D50 L*=53.09, a*=0, b*=0 [...] R=G=B=255 => D50 L*= 96.5, a*=0, b*=0 A good perceptual rendering will come close...but, immediately, you've got some big honkin' practical problems. Maximum density is almost always far from neutral, and paper white is almost always different from neutral in a different direction. If you want closest possible to the neutral axis, you're going to have to clip both...meaning your maximum density is going to be a lot lighter, and you'll have to lay down at least some ink over the entire page. Your dMax suddenly in reality isn't as dark, and your dMin isn't as bright. Or, you can decide to have off-neutral maxima and minima...but how do you transition to and from them? Do you draw a straight line from the color of dMax to paper white? That rarely produces pleasing results. More common is to keep most of the neutral axis neutral, and then bend it to the extremes. But at what point to start bending, and how much to bend? Such considerations are what separate the good color management systems from the ugly -- and where Grame's skill (and aesthetic) in ArgyllCMS really shines through. Further complicating is that, though Lab units are supposed to be visually identical in all dimensions, such that a change of one a* unit is perceptually as "dramatic" at all points as a change of one L* unit or one b* unit...that's not actually the case. So you either need a better color space (they exist, and Graeme makes effective use of them behind the scenes) or you have to use "special sauce" magic that might result in perceptual uniformity at the expense of linearity in Lab space. And yet another complication...R=G=B=0 in your monitor's native (unprofiled) space is going to have some L* value that isn't actually 14.45, and R=G=B=255, again won't be L*=96.5. In a really tightly controlled viewing environment, your monitor _might_ have a profiled R=G=B=255 => L*=100, but I'd honestly be surprised if any such actually exists. That means that you're mapping R=G=B=255 => L*=482.7, a*=1.7, b*=-8.4 (to pick a random but realistic number) on your monitor to R=G=B=255 => L*=239.8, a*=-0.8, b*=2.5 on your printer (again random but realistic, considering typical office illumination). Hopefully, you can extrapolate the madness that ensues.... The typical approach to what I think you're trying to accomplish is what's called, "soft proofing." You can supply Photoshop with your printer's profile and tell it to render the image as closely as possible to how it'll print. Since monitors typically have larger gamuts than printers, especially near the neutral axis, this usually works well. The soft proof will look washed out compared to the rest of the screen...but, in a well-controlled environment, the print placed next to the monitor will look exactly as washed-out. The real-world problem is that your print is going to, again, look completely different when you take it out of your perfectly-controlled proofing booth and into the real world. It's why National Geographic looks drop-dead gorgeous in a viewing booth but is nearly uselessly dark in the typical living room in the evening. You could actually make a print that looks drop-dead gorgeous in the living room, but it's going to look washed-out and faint in that viewing booth.... If I might suggest...the perfect starting point for you, right this instant, would be to grab a roll of PTFE (teflon) thread tape. It's as close as you're going to get to a perfect lambertian reflector without spending thousands of dollars -- and you need expensive equipment to tell the difference. Fill your monitor with white, and hold the roll in front of the monitor. The extent to which there's a visual mismatch between the two is the extent to which your viewing environment is compromised. Until the thread tape and the monitor match, nothing you ever get out of the printer will match. It's a brutal test for all its simplicity and cost-effectiveness. It's also quite enlightening.... Cheers, b&
On Jan 5, 2018, at 3:19 PM, Ben Goren <ben@trumpetpower.com> wrote:
On Jan 5, 2018, at 12:18 PM, forums@walkerblackwell.com wrote:
I’m not looking for a visual match. That’s what normal ICCs do.
[...]
Let’e say our dMax is L* 14.45 on Matte Paper and our dMin (paper white) is L* 96.5
...but that's the problem! L* _is_ visual! That's the entire point of the definition. The math has grown much more sophisticated in recent refinements, but the basic "unit" of L* is designed to be the minimum humanly-perceptible difference between two samples -- and it just happens that there's "close enough" to 100 such "units" in typical viewing environments that the standard was defined as such.
L* is an entirely _perceptual_ measure, and only becomes absolute when coupled with viewing conditions.
As in...D65 L*=100, a*=0, b*=0 is a very noticeably bluer color than D50 L*=100, a*=0, b*=0. Both D50 and D65 are defined with certain illumination (brightness) levels; swap them out for actual illuminants with similar spectral distributions but different brightnesses (as in, move the dimmer switch up and down) and the colors thus defined will be perceptually dramatically brighter and dimmer, even though every sample in this exercise remains L*=100, a*=0, b*=0.
I’m standardizing to a D50 env. And am not too worried about a/b axis right now (black ink to paper white). For now it’s just not part of the worry . . .
The most common absolute, non-perceptual measure is XYZ...but it's something useless and unintuitive to artists (though it's really good for mathematicians).
What I’m talking about is simple. Is there a consistent way to calibrate with an ICC such that numbers above print like this when measured with a spectro (approximately as the real values have been rounded to 2 decimals):
If I understand right, simplified, you want the following:
R=G=B=0 => D50 L*=14.45, a*=0, b*=0 [...] R=G=B=120 => D50 L*=53.09, a*=0, b*=0 [...] R=G=B=255 => D50 L*= 96.5, a*=0, b*=0
YEP! (But a/b can kinda go wherever they go based on paper and black ink.)
A good perceptual rendering will come close...but, immediately, you've got some big honkin' practical problems. Maximum density is almost always far from neutral, and paper white is almost always different from neutral in a different direction. If you want closest possible to the neutral axis, you're going to have to clip both...meaning your maximum density is going to be a lot lighter, and you'll have to lay down at least some ink over the entire page. Your dMax suddenly in reality isn't as dark, and your dMin isn't as bright. Or, you can decide to have off-neutral maxima and minima...but how do you transition to and from them? Do you draw a straight line from the color of dMax to paper white? That rarely produces pleasing results. More common is to keep most of the neutral axis neutral, and then bend it to the extremes. But at what point to start bending, and how much to bend? Such considerations are what separate the good color management systems from the ugly -- and where Grame's skill (and aesthetic) in ArgyllCMS really shines through.
Yeah. Not worried about black ink color, etc as above.
Further complicating is that, though Lab units are supposed to be visually identical in all dimensions, such that a change of one a* unit is perceptually as "dramatic" at all points as a change of one L* unit or one b* unit...that's not actually the case. So you either need a better color space (they exist, and Graeme makes effective use of them behind the scenes) or you have to use "special sauce" magic that might result in perceptual uniformity at the expense of linearity in Lab space.
Just neutral (ish) axis for now to simplify things.
And yet another complication...R=G=B=0 in your monitor's native (unprofiled) space is going to have some L* value that isn't actually 14.45, and R=G=B=255, again won't be L*=96.5. In a really tightly controlled viewing environment, your monitor _might_ have a profiled R=G=B=255 => L*=100, but I'd honestly be surprised if any such actually exists. That means that you're mapping R=G=B=255 => L*=482.7, a*=1.7, b*=-8.4 (to pick a random but realistic number) on your monitor to R=G=B=255 => L*=239.8, a*=-0.8, b*=2.5 on your printer (again random but realistic, considering typical office illumination). Hopefully, you can extrapolate the madness that ensues….
This is where soft-proofing with Preserve RGB numbers comes into play. Yeah, I do this already for linear environments . . ., etc.
The typical approach to what I think you're trying to accomplish is what's called, "soft proofing." You can supply Photoshop with your printer's profile and tell it to render the image as closely as possible to how it'll print. Since monitors typically have larger gamuts than printers, especially near the neutral axis, this usually works well. The soft proof will look washed out compared to the rest of the screen...but, in a well-controlled environment, the print placed next to the monitor will look exactly as washed-out.
yep. But not worried just wondering if it can be done
The real-world problem is that your print is going to, again, look completely different when you take it out of your perfectly-controlled proofing booth and into the real world. It's why National Geographic looks drop-dead gorgeous in a viewing booth but is nearly uselessly dark in the typical living room in the evening. You could actually make a print that looks drop-dead gorgeous in the living room, but it's going to look washed-out and faint in that viewing booth….
Again. I’m not thinking about this in a viewing booth. For sake of argument let’s say I don’t give a single damn about how good or bad it looks under any condition. I just want the printed neutrals (or near neutrals) to measure L* linear when measured with a spectrophotometer that has been calibrated against tile white. I’m not thinking about monitor brightness, contrast conditions, or anything in the monitor. Just hard photoshop numbers translated to hard printed values. Simple. All other things can go where they go for now. If the print is near the sun I’m fine with it blinding me, if the print is in shadow I’m fine with it looking too dark. But linear printed L* values (percentage of reflected light) related to a TILE WHITE of a spectro is what I’m after.
If I might suggest...the perfect starting point for you, right this instant, would be to grab a roll of PTFE (teflon) thread tape. It's as close as you're going to get to a perfect lambertian reflector without spending thousands of dollars -- and you need expensive equipment to tell the difference. Fill your monitor with white, and hold the roll in front of the monitor. The extent to which there's a visual mismatch between the two is the extent to which your viewing environment is compromised. Until the thread tape and the monitor match, nothing you ever get out of the printer will match.
It's a brutal test for all its simplicity and cost-effectiveness. It's also quite enlightening....
Cheers,
b&
On Jan 5, 2018, at 1:52 PM, forums@walkerblackwell.com wrote:
All other things can go where they go for now. If the print is near the sun I’m fine with it blinding me, if the print is in shadow I’m fine with it looking too dark. But linear printed L* values (percentage of reflected light) related to a TILE WHITE of a spectro is what I’m after.
First...it's really important to understand that L* values are _not_ the percentage of reflected light. L* values (ideally but not actually) represent 100 perceptually-equal step wedges between absolute black (*NOT* dMax, but an actual absence of light) and a perfect lambertian reflector (of which, again, PTFE thread tape is an astonishingly good approximation) under close-to-typical illumination. You're familiar, I hope, with the famous Kodak 18% gray card? It reflects (within manufacturing tolerances, which are pretty broad) 18% of incident light. Plop your spectrometer on it, and it'll give you a D50 Lab reading of L*=50, a*=0, b*=0...plus or minus at least five units (did I mention manufacturing tolerances?). That works out to a gamma power curve of roughly two (rounded to one significant digit) -- and for very good reason, because that's a mirror to the human visual system. The gray card might _look_ like it's midway between black and white, but it's only reflecting about 18% of the light -- much darker, in reality, than we perceive it to be. (But not really, of course...there's that whole inverse square thing of light going on such that the logarithmic nature of perception actually does make sense; it's just that we naively expect everything "simple" to be linearly additive, like counting apples.) If you truly want linear reflectivity values...profiling probably isn't for you. Instead...either grab a densitometer or figure out how to use your spectro in a densitometer mode. Print your step wedges in non-color-managed / null transform / profiling / whatever mode. Plug the measurements into a spreadsheet and calculate the offset needed to make the numbers come out the way you want. Create a tone curve layer in Photoshop using those numbers -- oh, and make sure that your working space in Photoshop is gamma 1.0, or else you'll have to bake in the inverse of the gamma into your spreadsheet. That will probably get you "close enough" on the first try, but you can certainly add as many iterations as you want until you're chasing diminishing returns. ...but, I gotta warn you. The ICC profiling infrastructure, complex and seemingly over-engineered as it may be, exists for a reason. The densitometer approach you're trying to re-create is the way things were done in the pre-digital age of the printing press and halftoning cameras. The existence of great works from that era demonstrates that great work is possible, no doubt...but, by any objective measure, modern systems technically run rings around their quarter-century-ago counterparts. That includes factors that you're so casually dismissive of, like neutrality, as well as ones (like dMax) that you seem concerned with. A modern black-and-white inkjet print from a latest-generation top-of-the-lne fine art printer on baryta paper by a skilled operator is going to be more neutral _and_ have a greater dMax _and_ have a whiter dMin _and_ significantly more detail and less grain than any large-format photographic print you'll find from the pre-digital age. If that's the standard you're chasing...densitometry is the worng path to follow. Cheers, b&
On Jan 5, 2018, at 4:32 PM, Ben Goren <ben@trumpetpower.com> wrote:
On Jan 5, 2018, at 1:52 PM, forums@walkerblackwell.com wrote:
All other things can go where they go for now. If the print is near the sun I’m fine with it blinding me, if the print is in shadow I’m fine with it looking too dark. But linear printed L* values (percentage of reflected light) related to a TILE WHITE of a spectro is what I’m after.
First...it's really important to understand that L* values are _not_ the percentage of reflected light. L* values (ideally but not actually) represent 100 perceptually-equal step wedges between absolute black (*NOT* dMax, but an actual absence of light) and a perfect lambertian reflector (of which, again, PTFE thread tape is an astonishingly good approximation) under close-to-typical illumination.
PTFE, Tile White : Tomatoes, Tomotoes. Percentage of reflected vs perceptually-equal step wedges between absolute black and PTFE thread tape. We are saying the same thing. As I understand it L* is the percentage of light between Absence (zero) and PTFE white: aka, the percentage of “PTFE white” a tone presents between no light and PTFE with PTFE = to 100. Generally percentages (and numbers in general) are agreed to be equidistant from each other . . . . I think we are saying the same thing here . . . . . . . uhmm
You're familiar, I hope, with the famous Kodak 18% gray card? It reflects (within manufacturing tolerances, which are pretty broad) 18% of incident light.
yes.
Plop your spectrometer on it, and it'll give you a D50 Lab reading of L*=50, a*=0, b*=0...plus or minus at least five units (did I mention manufacturing tolerances?).
Exactly.
That works out to a gamma power curve of roughly two (rounded to one significant digit) -- and for very good reason, because that's a mirror to the human visual system. The gray card might _look_ like it's midway between black and white, but it's only reflecting about 18% of the light -- much darker, in reality, than we perceive it to be. (But not really, of course...there's that whole inverse square thing of light going on such that the logarithmic nature of perception actually does make sense; it's just that we naively expect everything "simple" to be linearly additive, like counting apples.)
Again, for the sake of the argument lets pretend I’m blind and just letting the spectro and it’s industry standard config be the visual system here.
If you truly want linear reflectivity values...profiling probably isn't for you.
That is the question I’m after. I actually DO want these in an ICC (linear L* numbers). I’ve hacked icc to do this in various iterative ways but it’s a pain. I’m hoping there is a way to do it in one target printing.
Instead...either grab a densitometer or figure out how to use your spectro in a densitometer mode. Print your step wedges in non-color-managed / null transform / profiling / whatever mode. Plug the measurements into a spreadsheet and calculate the offset needed to make the numbers come out the way you want.
The problem is with how various ICC software generate this transformation. In my investigation it is a never a standard curve so I can’t predict it. It’s actually not a gamma curve. It’s usually a type of S curve that changes based on the paper and rendering intent . . .
Create a tone curve layer in Photoshop using those numbers -- oh, and make sure that your working space in Photoshop is gamma 1.0, or else you'll have to bake in the inverse of the gamma into your spreadsheet. That will probably get you "close enough" on the first try, but you can certainly add as many iterations as you want until you're chasing diminishing returns.
Yes. I’ve done all this iteratively already for years but it’s nothing I can share with others as it’s a clunky workflow.
...but, I gotta warn you. The ICC profiling infrastructure, complex and seemingly over-engineered as it may be, exists for a reason.
It exists to crunch shadows bellow their useful values and make mid-tones and highlights too light in general in my opinion . . .
The densitometer approach you're trying to re-create
I’m not recreating a gamma or dot gain. I can easily do LOG transforms to the target values or measured values but that does not result in anything linear in output when applied through modern ICC making softwares.
is the way things were done in the pre-digital age of the printing press and halftoning cameras. The existence of great works from that era demonstrates that great work is possible, no doubt...but, by any objective measure, modern systems technically run rings around their quarter-century-ago counterparts.
That includes factors that you're so casually dismissive of, like neutrality, as well as ones (like dMax) that you seem concerned with. A modern black-and-white inkjet print from a latest-generation top-of-the-lne fine art printer on baryta paper by a skilled operator is going to be more neutral _and_ have a greater dMax _and_ have a whiter dMin _and_ significantly more detail and less grain than any large-format photographic print you'll find from the pre-digital age. If that's the standard you're chasing...densitometry is the worng path to follow.
I’m just going to end this convo here. It’s going nowhere. Best, Walker
Cheers,
b&
On Fri, Jan 5, 2018 at 10:32 PM, Ben Goren <ben@trumpetpower.com> wrote:
On Jan 5, 2018, at 1:52 PM, forums@walkerblackwell.com wrote:
All other things can go where they go for now. If the print is near the sun I’m fine with it blinding me, if the print is in shadow I’m fine with it looking too dark. But linear printed L* values (percentage of reflected light) related to a TILE WHITE of a spectro is what I’m after.
First...it's really important to understand that L* values are _not_ the percentage of reflected light. L* values (ideally but not actually) represent 100 perceptually-equal step wedges between absolute black (*NOT* dMax, but an actual absence of light) and a perfect lambertian reflector (of which, again, PTFE thread tape is an astonishingly good approximation) under close-to-typical illumination.
You're familiar, I hope, with the famous Kodak 18% gray card? It reflects (within manufacturing tolerances, which are pretty broad) 18% of incident light.
Plop your spectrometer on it, and it'll give you a D50 Lab reading of L*=50, a*=0, b*=0...plus or minus at least five units (did I mention manufacturing tolerances?).
Meanwhile there are some OBA free inkjet papers, satin finish, that come close to the white reflectance of PTFE thread tape (12mm wide, 9mm high stack, Lab 98.9 0.0 0.5) Lab 98.8 0.0 0.9 for Arca Proline Vibrant Superior FineArt Rag satin 300 gsm, Lab 98.8 -0.2 1.8 for Inkpress Baryta 307 gsm. White museum board underneath the samples. Over the last decade there has been quite a gain in paper white reflectance of inkjet papers without using OBA whitening agents. For the dynamic range (in practice) it actually is more important than Dmax improvements. OBA free papers improve much to better color constancy in changing light conditions. For inkjet inks the HP Z models have a Photo Black for gloss papers that is near neutral, the same for the grey inks in some of the Z models. Fading to a warmer black in time is minimal. The Matte Black ink is right away warmer though. Of the plain carbon pigment based matte black inks the latest version of the Eboni black inks (MIS) is the most neutral but like all carbon pigments a bit warm. That said for most humans neutral is still warm, one wonders what that respons would have been if OBA never had been used in any product. Pity that there is no PTFE thread tape in a grey quality that is as inexpensive, neutral and fade resistant as the white version. As a white reference / gray card the PTFE thread tape has limited use being near Lab 100. I went through several grey plastic samples to find near neutral ones for that purpose, they exist with numbers not beyond Delta E* 0.8 from neutral and are less prone to shift in time due to filth or fading than the normal grey cards. Various inexpensive products intended to be neutrally colored are made in higher quantities and more batches than the special tiles (ceramic, BaSO4, PTFE) for optical measurements, the deviations will be higher but a nice (not UV cut) spectrometer can be a godsend then. Met vriendelijke groet, Ernst http://www.pigment-print.com/spectralplots/spectrumviz_1.htm July 2016 update, 700+ inkjet media white spectral plots
participants (3)
-
Ben Goren
-
Ernst Dinkla
-
forums@walkerblackwell.com