3Dlut to hald/clut using Natron


Simple tutorial for convert 3Dlut or any custom grading to Hald/clut file for using it in Gimp, Krita, RawTherapee,…
I hope the OFX porting of G’MIC including the clut workflow too.



a very nice and inspiring video!

but i think, the mentioned tools are mostly limited to 8bit processing.
that’s a very problematic drawback in my opinion!
i usually try to use only natron / openfx extensions and workflows, that comply to more advanced professional standard of nowadays video fx. an eclectic mixture, including legacy 8bit solutions, will often lead to unforeseeable troubles at the end.


I done an empirical test, I have exported a frame tiff 16f and applied the same lut in Krita(clut.png) than I have loaded in the OCIOfileTransform node in Natron(.cube).
Seem not exist apparent difference, the file “clut.png” is mapped on the image(tiff) samples that is 16 bit float, more or less the same process that happening when you mapping a .cube/.3dl/etc… I’m not sure but I think is so.
Anyway you can use hald image also more huge, just change the number in the command line, eg. with “hald:16” you will have a 4K image that should be right for 10/12/16bit.
You can find some more info here:


hmmm - you may be right!

g’mic is using 32bit internally and recent version of gimp, krita and darktable support more then 8bit too.

the quality of high bit depth 3D LUT processing depends a lot on the used interpolations. OCIO does a very well job in this respect. i don’t know, how well it is implemented in those other mentioned alternatives.