OpenColorIO
OpenColorIO copied to clipboard
Support for ICC Parametric curves type 1-4
Address issue #1623 by supporting ICC Parametric Curve type 1-4 implemented as 1DLUT. I used a side-car python script during my tests to compare the results against pure Python or DemoICCMax. Opening that now to allow time for discussion.
- Size of the 1DLUT is currently 1024, increasing that was decreasing the match against the pure Python implementation, I have a feeling this is related to inversion and flat slopes,
- Follows ICC white paper recommendations on parameters validation, there are no unit tests validating all possible failure case at the moment,
- Added a RangeTransform on the pure exponent path to follow ICC specs more closely. Unit tests sample updated using directly OCIO results for the case where clipping changed the expected values as I don't know exactly how the values were obtained,
- As before, all the TRC tags in the profile should be of the same type, the individual parameters can vary among red, green and blue but the function type should match.