История изменений
Исправление AP, (текущая версия) :
Краткая версия: можно использовать и профили с LUT, но тогда сложно сохранять постоянство экспозиции.
Длинная версия:
Troy:
I can’t speak to Darktable specifically, but I can speak to a general rule of thumb for observer stimulus encodings.
Everything we do in image making land in RGB is based around observer stimulus. Every camera, will use that 3x3 matrix, which as Poynton coined, is the colour formation matrix.
More specifically, it’s the colour stimulus formation matrix.
Colour stimulus because it’s a stimulus specification. Formation because it is a math fit, not an actual representation of energy to observer stimulus. And matrix because it is a matrix.
If you pay close attention to all of those matrices, you’ll see that they are nothing more than columnar representations of the fit result to change the camera observer sensed values into observer driven XYZ positions.
Specifically, address your question, the Y row is very important. It is not an energy preserving / conserving transform. It in fact trades off energy conservation (Sum of energy or our closest link XYZ here) but rather luminance conserving!
That is, it’s actually exposure invariant.
It trades magnitudes of energy for magnitudes of exposure.
This is why despite more “close approximations” for things like chromatic adaptation always drop the nonlinear stuff, like classic Bradford!
Your answer? It is very hard to maintain exposure invariance with a LUT of the sorts that are in ICCs typically. (edited)
And exposure invariance is critical in many cases.
(Or at least deemed so.)
(2D or “2.5D” LUTs can maintain exposure invariance, but that’s another discussion, and subject to how they are applied etc.) (edited)
As you can probably infer, when dealing with open domain stimulus to emulate light transport like sides of things, that variance will become a larger problem. For closed domain imagery? Not much of a problem!
Aurelien:
Darktable supports any ICC including LUT, but as Troy demonstrated, anything else than a matrix looses the exposure invariance and has no interest for input sensor profiling
Matrices are robust albeit inaccurate
Исходная версия AP, :
Краткая версия: можно использовать и профили с LUT, но тогда теряется инвариантность экспозиции.
Длинная версия:
Troy:
I can’t speak to Darktable specifically, but I can speak to a general rule of thumb for observer stimulus encodings.
Everything we do in image making land in RGB is based around observer stimulus. Every camera, will use that 3x3 matrix, which as Poynton coined, is the colour formation matrix.
More specifically, it’s the colour stimulus formation matrix.
Colour stimulus because it’s a stimulus specification. Formation because it is a math fit, not an actual representation of energy to observer stimulus. And matrix because it is a matrix.
If you pay close attention to all of those matrices, you’ll see that they are nothing more than columnar representations of the fit result to change the camera observer sensed values into observer driven XYZ positions.
Specifically, address your question, the Y row is very important. It is not an energy preserving / conserving transform. It in fact trades off energy conservation (Sum of energy or our closest link XYZ here) but rather luminance conserving!
That is, it’s actually exposure invariant.
It trades magnitudes of energy for magnitudes of exposure.
This is why despite more “close approximations” for things like chromatic adaptation always drop the nonlinear stuff, like classic Bradford!
Your answer? It is very hard to maintain exposure invariance with a LUT of the sorts that are in ICCs typically. (edited)
And exposure invariance is critical in many cases.
(Or at least deemed so.)
(2D or “2.5D” LUTs can maintain exposure invariance, but that’s another discussion, and subject to how they are applied etc.) (edited)
As you can probably infer, when dealing with open domain stimulus to emulate light transport like sides of things, that variance will become a larger problem. For closed domain imagery? Not much of a problem!
Aurelien:
Darktable supports any ICC including LUT, but as Troy demonstrated, anything else than a matrix looses the exposure invariance and has no interest for input sensor profiling
Matrices are robust albeit inaccurate