In this article, we’re taking a closer look at the evolving concept of splitting “creative” and “technical” aspects of a look into individual transforms. The existing concepts, differing in definition and characteristics, have a huge impact on the practical application on set and in post-production.
We’ll start with a recap of very common “CDL-plus-LUT” workflows and explore how ACES and different camera vendors propose to better define the management of both creative and color aspects through individual transforms.
CDL + LUT
In digital cinematography, a typical look pipeline consists of an ASC CDL transform followed by a 3D LUT. These two transforms are applied to a “log” camera signal (of individual encoding and colorspace, such as ARRI’s LogC or Sony’s Slog variants). Let’s take a closer look at the roles these two transformations play:
- ASC CDL transform for…
- A creative look base look, and/or
- Possible adjustments per shot.
- 3D LUT for…
- Some kind of custom look/rendering, and
- A color space and encoding transform (e.g. “LogC3 to Rec. 709”)
In Figure 1, we see that the CDL transform is typically applied directly to the camera log signal, and the 3D LUT then transforms it into the output color space.
We can distinguish two main use cases that can be solved with such a combination of a CDL transform and a 3D LUT:
- In the more simple use case, the 3D LUT comes from the camera vendor and puts a sort of “default rendering” on the camera signal to display color space. The ASC CDL transform is then used to create (and refine) a creative look.
- In a more specific use case, a colorist and the DP create a custom 3D LUT in pre-production as part of one or several “show LUTs.” These show LUTs can be created for a production with the purpose of creatively extending the vendor transform. Each show LUT is then used for an entire scene or even location, and the ASC CDL is used to further refine individual shots or lighting situations for consistency.
Already, we see that the roles of both the ASC CDL and the 3D LUT are not precisely defined, and the creative (yet static) part of a look may be covered by each (or both) of these transforms.
The Academy Color Encoding Framework (ACES) typically gives a very explicit definition of transforms, that separates them by the role that each transform plays from a camera signal to a display signal. So let’s look at an ACES block diagram to see how a look pipeline is laid out there.
We see that the creative look has its place exclusively in the “LMT” block(s). From the Academy’s Knowledge Base an LMT is defined as follows:
The ACES term for preset systematic, full-frame image modification is ‘look modification.’ACES CENTRAL – LMTs
Where “preset systematic” means a predefined look that acts as a base for a range of shots or scenes (in contrast to individual looks for each shot), and “full frame” means that it is applied to the entire frame (in contrast to color grading individual areas, e.g. via power windows).
Log and Linear Encoding
One specialty of the LMT’s definition in ACES is that it is defined as a linear application (i.e., the “working-colorspace” of an LMT is ACES2065-1 color space and scene-linear encoding). That’s a strong contrast to the custom 3D LUT in the first examples, which is applied directly to the vendor-specific log signal of the camera.
While a 3D LUT works well on such log signals, it’s more or less unusable on a linear signal. The problem with a 3D LUT in linear is that the linear encoding doesn’t have pre-defined boundaries. Although a log signal’s code values are all within a defined range (for example, 0.0 to 1.0, or 0 to 1023), they still include all highlights of the image due to the logarithmic nature of the encoding. A scene-linear signal in ACES encodes diffuse white as 1.0, and all highlights are encoded in values beyond that— sometimes up to 5.0, 20.0, or higher, depending on the camera and scene. The point is: there is no easy-to-define upper boundary for linear signals*.
The nature of a lookup table is that it consists of a table of numbers, mapped to the values of the input signal. So what do you do with an open-ended range of input values? If you were to make enough headroom in the LUT’s input definition for highlights (i.e. by defining the LUT to values up to 20.0), you’d end up with very few LUT points in the important range between black and diffuse white (e.g. just two with a 33x33x33 3D LUT)— which makes the 3D LUT simply unusable in such a scenario.
But defining the LMT in linear encoding, on the other hand, also has benefits— you cannot do everything in a 3D LUT on a log signal, and some things simply work better in linear. Transforms for gamut mapping (for example, the ACES reference gamut mapping) requires access to the linear signal, and both precise exposure adjustment and white balance transforms work best on linear signals. So how is this solved?
* Also, the low values in a linear signal can go slightly below 0.0. Hence the float encoding of linear images.
AMF and CLF
The ACES metadata file (AMF) has been designed to transport an entire ACES pipeline with all transforms from one system to another. The definition of AMF further clarifies the requirement for communicating an LMT: CLF (Common LUT Format) was specified as the format for LMTs. In order to also work properly on linear signals…
[…] CLF allows for a range of common mathematical operators to be specified precisely, in addition to supporting traditional 1D- and 3D LUTs in the file.Common LUT Format (CLF) Implementation Guide
This means you can still use traditional lookup tables in CLF, but also mix or replace them with precise mathematical functions that are defined for any code value in a linear range. This makes CLF best suited for use as LMTs in ACES.
With that, we can very explicitly separate the formulations of one look into distinct transformations.
- The LMT (e.g. represented by a CLF file) carries the look “preset” and plays thge role of a show look.
- The ASC CDL (typically before the LMT) refines the look for individual light or exposure situations.
- All color management transforms for converting between color spaces are separate (either part of the input transform, or the output transform).
Working Colorspaces, CDLs, and the Use of Traditional LUTs in ACES
Livegrade features an “LMT” node in the ACES grading modes. This node allows the user to load a CLF file representing the LMT transform. As defined by ACES, this transform is applied in linear encoding and the ACES2065-1 color space.
Before the availability of CLF, traditional LUTs have been used to achieve custom look transforms in ACES pipelines. The “trick” is used to apply a look transform not in linear encoding, but by going into a log encoding first and then back to linear afterward. This is actually done all the time when applying an ASC CDL in ACES, as the CDL is itself a look transform, it must somehow also be applied “in linear”. But as CDL is neither made for that nor works well in linear either, CDLs have their own “working color space” in ACES, such as ACEScc or ACEScct. So in Livegrade, for example, you define the working colorspace together with the ACES pipeline.
So the solution is then straightforward: the 3D LUT (we’re speaking about something like a cube file now, not a CLF file) is treated similarly to a CDL: it’s applied in a “log” working-colorspace. The 3D LUT needs to be made for this purpose (also with the knowledge of which working-colorspace will be used), so then all the range issues that we saw before in linear are no longer there. In Livegrade, you can use 3D LUTs in ACES with the 3D LUT node. The loaded LUT is then applied in the chosen “log” working colorspace of the ACES pipeline.
Figure 3 shows Livegrade’s LMT node (loaded CLF is applied in linear) and 3D LUT node (loaded cube file or similar is applied in the log working-colorspace).
Terminology, LMT and Similar Concepts
Outside of ACES, the idea to separate the creative, yet more static part of a look from the shot-individual transforms and especially color management transforms, is of course also part of other management concepts.
Since IPP2, RED introduced a “creative” 3D LUT to be loaded before the output transform that is either parameterized or another 3D LUT (the “technical” LUT). RED also discourages mixing the creative and technical aspects in one 3D LUT.
The “ARRI Reveal” color science, developed for the Alexa35 ARRI, also just introduced the new position of a “Log-to-Log” LUT in the ARRI Look File 4.
We think it is safer to use the individual terms that have been defined in their respective color pipelines instead of using a “one-for-all” term, for example, for all the creative transforms in the different color management concepts of different vendors.
A few example terms mentioned in this article:
- LMT: A creative transform (e.g. based on CLF) going from linear ACES2065-1 to linear ACES2065- 1 as defined in ACES.
- Log-to-Log LUT: A creative 3D LUT that goes from LogC4 to LogC4 in ARRI’s terminology for the Reveal color science.
- Creative LUT: A creative 3D LUT that goes from RWG/Log3G10 as defined for IPP2.
The concept of separating creative and color management transforms seems to converge over time, but specific aspects such as the working-colorspace sometimes make a huge difference.
With the understanding of some key characteristics of the different implementations and by using the right terms, together we will tackle the new complexity of managing more transforms for better creative control and outcome.