I’m a student in 3D/CG, and have been using rawtherapee to process raw files for use in applications such as Nuke or Substance Painter.
I basically use RT to transform a raw file into a AcesP1 32bits tiff file (all other aspects are to be not used : no undistort, no tone mapping, nothing except a white balance).
But what is really giving me issues is the size of the tiff files : from 100Mb raw to 500Mb tiffs… Which in the long run will be a significant margin of my drive TBW.
I discovered ART can export in EXR, which is exactly what i need. (at least i believe i’ll be able to store my images much much more efficiently as stored data to size ratio).
So i tried “copy/pasting” the same settings i do in RT but in ART. I got them all, except for the “abstract profile : linear g=1”…
So would anyone know how to input this same abstract profile “effect” in ART ?
Its an interesting question…I thought EXR files had no colorspace and were linear and its at the stage of the viewing application not export that you would assign a display transform/colorspace etc…
I thought…sorry to pester you I just didn’t want to do a fresh install just to sort out what comes with ART and what I added but I might go and clean this up anyway…
Are you sure the RTv4_ACES-AP1.icc profile is linear? At the least the version I have in the RT installation has (non-linear) tone curves defined. Below is a snip of the output from the IccToXml.exe program (it converts ICC profile files to XML).
RT has an ICC profile creation tool (file browser tab, upper right corner, triangle with a plus sign). You could create your own profile with the AP1 primaries and select linear tone curve for it.
Harri
I loaded as output profile “ACEScg-elle-V4-g10” from elle’s profiles.
Now the 32bits .tiff match between RT and ART ! (apart from highlights, probably due to the “highlight reconstruction method” that differs between the 2).
But when i export in .exr (PIZ or DWA compression), they have a warmer tone !
Here is the 2 images merged in “difference” blend mode in nuke :
You can see the overall red tint, and white spots that are the highlights not matching.
Would you have any idea why it is doing that red tint ? And how could i get a better highlight reconstruction in ART (in RT it’s “luminance recovery” algorithm)
I tried reproducing what you are doing as close and possible… I don’t have Nuke but I’m comparing the images in Python: and yes, I’m also getting slightly different images, TIFF compared to EXR. I think @agriggio 's help is needed here to figure out what is going on…
I’ve experimented a bit more with this, since I am also seeing a (small) difference between the TIFFs and EXRs when I compare them in python (using pyvips). It is of course always difficult to know if the difference happens during export, or if the library is doing some processing during import…
This looks really nice, since the details of the export can be modified without having to compile the whole application! What I noticed is that the EXR export uses a fixed color profile by applying a small .arp profile before export (ap0-linear.arp). See the documentation in the repo, and the files exr.txt (especially the last line), and exr/exr_io.py (the color primaries for the exported file are defined in the python code in the function write).
The color profile applied by the plugin is RTv4_ACES-AP0. It looks slightly different from the ACEScg-elle-V4-g10 (chromaticity values are slighty different). Perhaps you need to modify the profile ap0-linear.arp to refer to Elle’s profile, and also modify the python code exr_io.py to refer to the same values for chromaticity as the ICC profile uses. I hope this helps.
Continuing this: the chromaticities defined in exr_io.py match values in a table "ACES Primary and White Point Coordinates " in Wikipedia Academy Color Encoding System - Wikipedia. That table has the values for AP1 also, so it should be straightforward to modify the python code to use those values, and the .arp profile to use Elle’s profile. A final step I suppose would be to double check that Elle’s profile uses the same values as the wikipedia table.
As a test I exported from ART using the RTv4_ACES-AP0 to both TIFF and EXR and compared the files in python, and now the difference image is just noise. You could try that to check that there is nothing unexpected going on during import.
Does anyone know or have a source for how the values in ICC profiles translate into the chromaticities stored in an EXR file?
Harri, thank you very much for your time digging in this matter. It works really great now !
The last issue is the highlights reconstruction method ! Would you or someone reading this know how to use the same “luminance recovery” highlight’s reconstruction algorithm that is in RawTherapee ? I have tried all the ones available in ART and none match or come close to the RT one.