Hi,

> but would code like this make it possible to not clip when converting at
floating point to a profile with a true gamma TRC?


Pow of a negative values is a NaN for very good reasons. I can extend
parametric curves that have negative domain defined, but guessing numbers is
a bad  practice because would work for some cases and completely fail on
others. If you use the extension you propose to pivot points in gamut
mapping, for example, the results will come completely messed out. 

sRGB can do be extended, because in lower part gamma uses a linear ramp that
is defined in negative zone. AdobeRGB cannot because is a pure exponential.

Regards

Marti Maria
The LittleCMS project
http://www.littlecms.com 

-----Original Message-----
From: Elle Stone [mailto:ellest...@ninedegreesbelow.com] 
Sent: miƩrcoles, 10 de agosto de 2016 16:26
To: Lcms Liste <lcms-user@lists.sourceforge.net>
Subject: [Lcms-user] Negative channel values are clipped upon floating point
conversions to profiles with true gamma TRCs

Hi Marti and all,

It seems that floating point (unbounded) conversions to RGB matrix profiles
with true gamma TRCs (other than gamma=1.0), such as ClayRGB with gamma=2.2
TRC, will clip negative channel values to zero. But unbounded conversions to
profiles with parametric TRCs, such as the sRGB parametric TRC, does not
clip negative channel values.

I understand that pow(value, gamma) is undefined for negative values, but
would code like this make it possible to not clip when converting at
floating point to a profile with a true gamma TRC? Or perhaps the results
wouldn't make any sense?

if (value < 0)
       {
       value = -1.0 * value;
       value =  pow (value, gamma);
       value = -1.0 * value;
       }

Best regards,
Elle
--
http://ninedegreesbelow.com
Color management and free/libre photography

----------------------------------------------------------------------------
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity
planning reports. http://sdm.link/zohodev2dev
_______________________________________________
Lcms-user mailing list
Lcms-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lcms-user


------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. http://sdm.link/zohodev2dev
_______________________________________________
Lcms-user mailing list
Lcms-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lcms-user

Reply via email to