Pages: [1]   Go Down

Author Topic: Two general understanding profile questions?  (Read 625 times)

Beau

  • Newbie
  • *
  • Offline Offline
  • Posts: 4
Two general understanding profile questions?
« on: January 11, 2022, 11:02:04 pm »

I have a couple question. I have read A couple books, Color Management for Photographers by Andrew Rodney and Digital Color Management: Encoding Solutions 2nd Edition by Edward J. Giorgianni, a number of Digital Dog writings, the ICC spec, and been through the relevant Wikipedia pages. I also looked at the details of my profiles with ColorSync. I have calibrated both display and printer/papers with my Calibrite/x-rite ColorMunki spectrophotometer. I am a retired ME/software engineer so am familiar with the basic ideas of calibration/profiling. After all this I still have plenty of questions, hoping someone can answer a couple. There is an information gap between theory and specifications. Thanks in advance.
 
1.     Are working ICC profile defined color spaces independent of data type (8/16-bit integer, 32-bit float)?
        a.     Assuming they are mathematical models it seems yes.
        b.     Caveat: Aside from a limited/small data type such as int8 having basic issues with representing a very large space (step       size and/or extent/gamut).
        c.     I would expect that both the CMM conversions, and photo editor operations (adjustments/filters) will clearly need to support for each data type (int16 and float32).
2.     What determines if a color space is linear or nonlinear?
        a.     The rgbTRCs are not linear for [Adobe RGB (1998)]
        b.     My current Affinity software displays several working profiles using a 16-bit integer as [Adobe RGB (1998)] and 32-bit float version as [Adobe RGB (1998) (Linear)]. There is not a second (linear) ICC file.
        c.     But there are also profiles not available as 32-bit spaces such as Adobe [Display P3], Adobe [Pro Photo RGB], and one not as an integer space [ACES CG Linear (Academy Color Encoding System AP1)] which does allow integers per the spec.
Logged

digitaldog

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 20630
  • Andrew Rodney
    • http://www.digitaldog.net/
Re: Two general understanding profile questions?
« Reply #1 on: January 12, 2022, 08:51:36 am »

In a nutshell:
1. Yes that is correct.
2. The designer of the color space. For example, Kodak designed a linear and nonlinear color space with the same primaries: RIMM and ROMM RGB.
https://www.kronometric.org/phot/color/Kodak%20RIMM.pdf
Logged
http://www.digitaldog.net/
Author "Color Management for Photographers".

simon.garrett@iee.org

  • Jr. Member
  • **
  • Offline Offline
  • Posts: 55
Re: Two general understanding profile questions?
« Reply #2 on: January 12, 2022, 09:17:14 am »

What Andrew says.

Adding to point (2), the main reason for a non-linear TRC in a profile used for storing encoded images is (as I understand it) to match human visual perceptual response, where we are sensitive to a relative change in luminance, rather than an absolute change.  The result is that (for example) in an 8-bit linear encoded system, a change from 10 to 15 is much more visible than a change from 150 to 155.  On that 8-bit linear encoded system, the step size may be visible at the lower end, so it makes sense to use a non-linear TRC that reduces the step size at the low end.  Hence nearly all 8-bit encoding systems (e.g. jpeg) use a non-linear TRC.  It doesn't matter so much with 16-bits, where the low end step size with linear encoding is generally too small to be visible.

Any non-linear TRC in an encoded image needs to be reverse before display, obviously, but colour management does that. 

In the bad old days, and before colour management, CRT displays had a non-linear response (more exponential) so a compensating (logarithmic) curve was applied before display.  In a colour-managed system, any non-linear response of an output device is described in the TRC of the device profile, so the output is corrected automatically by the colour managed software. 

But I reserve the right to be wrong.
Logged

Doug Gray

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2197
Re: Two general understanding profile questions?
« Reply #3 on: January 12, 2022, 08:24:27 pm »

What Andrew says.

Adding to point (2), the main reason for a non-linear TRC in a profile used for storing encoded images is (as I understand it) to match human visual perceptual response, where we are sensitive to a relative change in luminance, rather than an absolute change.  The result is that (for example) in an 8-bit linear encoded system, a change from 10 to 15 is much more visible than a change from 150 to 155.  On that 8-bit linear encoded system, the step size may be visible at the lower end, so it makes sense to use a non-linear TRC that reduces the step size at the low end.  Hence nearly all 8-bit encoding systems (e.g. jpeg) use a non-linear TRC.  It doesn't matter so much with 16-bits, where the low end step size with linear encoding is generally too small to be visible.

Any non-linear TRC in an encoded image needs to be reverse before display, obviously, but colour management does that. 

In the bad old days, and before colour management, CRT displays had a non-linear response (more exponential) so a compensating (logarithmic) curve was applied before display.  In a colour-managed system, any non-linear response of an output device is described in the TRC of the device profile, so the output is corrected automatically by the colour managed software. 

But I reserve the right to be wrong.

Good summary but with a small quibble.

The VCTG tag in profiles isn't really part of the profile math. It's intended to initialize the 1D LUTs in the video driver so that the output will correspond to the TRCs in the profile. The latter reflects the gamma of the RGB based matrix profile such as 2.2 for Adobe RGB (1998). On a high end monitor which corrects things internally, the TRC will just map 1 to 1. For older or non smart monitors it fixes up most non-linearities existing in the monitor's RGB responses.
Logged

simon.garrett@iee.org

  • Jr. Member
  • **
  • Offline Offline
  • Posts: 55
Re: Two general understanding profile questions?
« Reply #4 on: January 13, 2022, 07:02:29 am »

Good summary but with a small quibble.

The VCTG tag in profiles isn't really part of the profile math. It's intended to initialize the 1D LUTs in the video driver so that the output will correspond to the TRCs in the profile. The latter reflects the gamma of the RGB based matrix profile such as 2.2 for Adobe RGB (1998). On a high end monitor which corrects things internally, the TRC will just map 1 to 1. For older or non smart monitors it fixes up most non-linearities existing in the monitor's RGB responses.

Quite right, and forgive my over-simplification. 
Logged
Pages: [1]   Go Up