Quoting Anders Torger <tor...@ludd.ltu.se>:
Hello, > with the gamma curve specified as an array of numbers That's the whole point. If the gamma is specified as an array of 16 bits numbers, then the interpolation happens in 16 bits. This is because the profile, not the CMM. In fact, if the profile uses multiprofile elements and a table of floats, then the interpolation happens in float precision. I would recommend to use modern (V4) profiles, with parametric curves or much better with multiprofile elements. This runs well in unbounded mode. Regards Marti > Hello, > > I'm one of the developers of RawTherapee, a photo editing software with > a floating point engine and which uses lcms2 for color management. > > Recently I discovered that when making a transform from float to float > (or float to 16 bit) using a basic icc with the gamma curve secified as > an array of numbers the output contains fewer distinct values than the > input. If the gamma is specified with a single number (ie pow(x, > g/256)) but otherwise the same icc (not LUT, just matrix) the output > is the expected, ie about the same amount of distinct numbers as the > input. > > Thus there is some precision lost in the curve interpolation code. > > If I've managed to navigate the code correctly it happens in > cmsEvalToneCurveFloat() where a 16 bit integer path is taken despite > it's perfectly possible to make a floating point interpolation. > > As we want to maintain precision with widely used legacy icc files we'd > like to see this fixed. > > /Anders Torger > ------------------------------------------------------------------------------ > Shape the Mobile Experience: Free Subscription > Software experts and developers: Be at the forefront of tech innovation. > Intel(R) Software Adrenaline delivers strategic insight and game-changing > conversations that shape the rapidly evolving mobile landscape. Sign up now. > http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk > _______________________________________________ > Lcms-user mailing list > Lcms-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/lcms-user ------------------------------------------------------------------------------ Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk _______________________________________________ Lcms-user mailing list Lcms-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lcms-user