[argyllcms] Re: Calculating film LUTs for a film recorder

  • From: Doug Private <doug17r@xxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Wed, 15 Aug 2012 01:10:58 +1000

On Wed, Aug 8, 2012 at 10:42 AM, Philip Pemberton <philpem@xxxxxxxxxxxxx>wrote:

> ...
> Image data is sent from the host (PC, Mac, whatever) as a {x}*{y}*3
> array of bytes (usually 4096x2732xRGB for 35mm). This data is fed to an
> 8:8 translation LUT (which converts a byte to a byte, thus allowing
> PseudoColor images to be printed without applying the palette data), and
> then on to an 8:11 LUT which converts the final pixel values into an
> exposure level value for that colour channel.
> The problem is, all the LUTs I have are for ancient and long-obsolete
> film stock. I'd like to create some new ones for more modern films (i.e.
> stuff I can still buy - Fuji FP100C packfilm is my main target).
> I can load a linear LUT into the printer and expose a piece of film to
> whatever image I like, then measure the density levels (either with my
> Xrite 890 or the flatbed scanner -- colour calibrated with a Wolf-Faust
> target). The problem is... how would I go about turning the "exposure
> value E produced density D" data (I think this might count as a
> Hurter-Driffield curve) and converting it into a LUT?
> Can I do this with Argyll? If not, then what algorithms should I be
> looking at implementing?

I have tried applying the LUT to the 8 bit RGB values sent to the recorder
and saving a new ti3 file with these, and then trying to pass this to
colprof and printcal, but these fail to find the white point.  The white
point red value is at just 64% after applying the LUT, but the green and
blue go to almost 100%, and this seems to be unexpected in the code.  I had
intended to try and adapt the code to accept this, and perhaps this could
be done.

> All the curves I've decrypted and dumped seem to follow the same format:
> a steep rise at the beginning, a pseudo-linear ramp, and a second steep
> rise towards the end. I get the impression this is somehow an inverse of
> the H-D curve, but I have no idea how to calculate it... About four
> hours of Google searching hasn't revealed anything useful :(

Is does appear that the algorithms in printcal would suit these devices too
but will need some adapting.

BTW: I am trying to use a DTP41T to read the film, writing color patches to
a series of 35mm film frames, and coordinating the patch separators with
the black 35mm inter-frame separators so that the film can be read by the
DTP41T in larger strips.  This takes some custom placement of the patches
but could probably be automated.

Argyll is usable for generating a profile for a given LUT so if you can
find one that is roughly ok then perhaps you can get by as is.

> Thanks,
> --
> Phil.
> philpem@xxxxxxxxxxxxx
> http://www.philpem.me.uk/

Other related posts: