Using Color Lookup Tables (CLUTs)

What is this all about?

Color Lookup Tables – CLUTs (also “Color LUTs“) are a method of storing and reusing complex linear color transformations*.
CLUTs have the advantages of being supported by many video and image processing software packages, and also the ability to be calculated in real-time on the GPU, costing very little computing resources.
* More simple, daily use terms can be: “color styles”, or “color corrections”

CLUTs are used in the movie production industry to perform color conversions of images acquired from different sources for monitoring and editing purposes, and also for testing, applying and sharing different creative color styles across different departments, and stages of the production.
Examples of common CLUT file formats are *.3DL and *.CUBE

Why is this called a “3D” or “Cube” Lookup Table?

The reason CLUTs are referred to as “3D” color lookup tables or “Cube LUT” is that they store the effect of color operations as linear transformations of a 3D cubic space.
To understand this we have to imagine RGB color encoding as a 3D space with the R, G and B values of each color being coordinates in this cubic color space.
This means that the color correction operations we perform to create a color style, like adding contrast, saturation, warming the hues etc. are all defined as a function that for every color coordinate in the RGB color cube space defines the new coordinate where the corrected or stylized color is found.
The term Lookup table means that the new color values don’t have to be calculated every time because they have been pre-calculated and stored in a table of values.
3D CLUTs are often processed and stored as 3D Cubic textures like this example generated with Blackmagic Fusion of a 32 x 32 x 32 value CLUT.
Imagine the little 32 x 32 square patches all stacked one upon the other, that would create a 32 x 32 x 32 RGB color cube, with which color transformations can be stored by simply applying them on this texture:Cube0000

Working with CLUTs:

In this post we’ll go trough the process of creating and using a CLUT in some popular creative software packages.
* Note that there are many other software packages that support creation and usage of CLUTs, the process should be similar.

Steps shown in the following software:
Adobe Photoshop 2020
Adobe After Effects 2020
Adobe Premiere 2020
Blackmagic Design Fusion 9

In this example our source image with which the CLUT will be designed is an interior scene modeled with Blender 2.82 and rendered with Cycles Render Engine with “Filmic” tone-mapping applied, saved as a PNG file.
* I usually save Linear unclamped 32bit float EXR files as the raw output from render engines, because this is the format that provides the most freedom to manipulate and process rendered images and animation, but from my experience CLUTS don’t work well on linear unclamped color, for that reason I usually apply them at a later stage of the image development (usually after applying tone-mapping to the image).
This is why I saved the file directly as a tone-mapped PNG for this example.

A.Test_Image

Creating a CLUT in Adobe Photoshop:

For this example, a greenish-contrasty-desaturated color style is created in Photoshop by applying color adjustment layers to the image.
In this case Color Balance, Vibrance, and Curves.
* You can use different numbers and combinations of color adjustments

B.Photoshop_Grade

The new Color Style is now exported to CLUT files:

C.Photoshop_Export_CLUTS

In the Export Color Lookup Tables dialog allows naming the CLUT, adding a description, setting a quality for the color transform it will define, and selecting the wanted CLUT file formats that will be written.
After clicking OK the CLUT files will be saved in a chosen location.C1.Photoshop_Export_CLUTS

Note:
Saving the CLUT in the Presets\3DLUTs folder (found in the Adobe Photoshop installation folder) will allow reusing the CLUT as a preset look available by drop-down selection without having to locate the file each time.

Applying a CLUT in Adobe Photoshop:

With the image later selected, add a Color Lookup adjustment layer:

D.Photoshop_Lut_Adjustment

In the Color Lookup adjustment properties, open the 3DLUT File drop-down, choose Load 3D LUT, and locate the CLUT file you saved:E.Photoshop_Lut_Load

The original image now has the same color style we created earlier, but this time it’s applied by only a single Color Lookup adjustment layer:

F.Photoshop_Lut_Correction

An example of the same CLUT applied to a different image:

F1.Photoshop_Lut_Correction_B

Applying a CLUT in Adobe After Effects:

Add a Util > Apply Color LUT effect to a layer,
In the Effect Controls window, click Choose LUT and locate the wanted CLUT file:

G.AE_Apply_CLUT

Applying a CLUT in Adobe Premiere:

  1. Select the image/video clip in the timeline.
  2. Switch to the Color UI tab to get access to the Lumetri Color controls on the right.
  3. In the Creative section of the Lumetri Color controls, open the Look dropdown, choose Browse and locate the wanted CLUT file.

I.Premiere_Apply_CLUT

I.Premiere_Apply_CLUT_B

Applying a CLUT in Blackmagic Design Fusion:

Add a LUT >File LUT node to the image source.
In the File LUT properties, click the browse button and locate the wanted CLUT file:

H.Fusion_Apply_CLUT

Creating a CLUT in Blackmagic Design Fusion:

* See the numbered nodes in the flow graph below

  1. Source image/video on which the CLUT is designed.
  2. A LUT Cube Creator node, generating default neutral 3D CLUT data in the form of a Color Cube map.
  3. The nodes creating the actual color style (in this case a Color Corrector and Color Curve nodes) are operating on the LUT Cube Creator node’s output.
  4. A LUT Cube Apply node is applying the stylized CLUT data to the image/video for previewing purpose (displayed on the right viewer)
  5. A LUT Cube Analyzer node generates CLUT data from the styled LUT Cube Creator data, and allows saving it to disk as a CLUT file.
    * Choose a location and click Write File to save the CLUT file.

K.Fusion_Create_LUT

Setting Windows 10 Ransomware protection not to block Adobe Photoshop

Software:
Adobe Photoshop 2020 | Microsoft Windows 10

If you encountered this error message when launching Adobe Photoshop:
“There was a problem with Generator. If the problem persits….”
Annotation 2020-04-18 221206

Chances are it has to do with Windows 10 Ransomware protection blocking it and one of it’s components, and if you continue to working with Photoshop with this problem you’ll find export modules (and maybe other features) not working.

In-order to fix the problem, we have to set Windows Ransomware protection not to block these components:

  1. In the Windows Virus & threat protection settings,
    Click Manage ransomware protection:
    Annotation 2020-04-18 221251
  2. In the Windows Ransomware protection settings,
    Click Allow an app through Controlled folder access:
    Annotation 2020-04-18 221352
  3. In the Allow an app through Controlled folder access settings,
    Click Add an allowed app:
    Annotation 2020-04-18 221420
  4. To avoid having to locate the specific executable files choose Recently blocked apps:
    Annotation 2020-04-18 221444
  5. In the Recently blocked apps select both AdobeGCClient.exe and Photoshop.exe:
    * Click the plus button to add them:
    Annotation 2020-04-18 221639

 

General note:
You may need to to the same with many other apps.
Every time you get a Windows notification about a process being blocked,
Visit the ransomware protection setting, check what was the last app being blocked and see if it needs to be allowed to operate

That’s it. hope you’ll find this helpful! 🙂

 

 

Photoshop CC 2018 EXR Loading Freeze

Software:
Photoshop CC 2018

Iv’e encountered a problem with loading EXR files into Photoshop CC 2018.
About 50 percent of the times the software would freeze during the load operation,
It would happen on files that I have opened many times before with previous versions of the software, and also on different PC’s.

After some testing it seams that maybe the problem is with EXR files that are compressed using PIZ Wavelet compression, although I can’t be sure because I couldn’t reproduce the problem with such files created with Blender, the problem only seams to happen with files created with 3ds max.

Does it make sense that Photoshop CC 2018 would have a problem with PIZ Compressed EXR files created with 3ds max?

I don’t know, but from the tests I did at the studio this seam to be the case…

I would love to get more info or clarification on this.

Clamp Colors in Photoshop 32 bit float Color Depth

Software:
Photoshop CC 2018

Photoshop CC 32 bit float linear workflow is developing nicely but it still lack some needed basic components, and one of them is a Clamp Color Adjustment, equivalent to a node you will find in any 32 bit float HDR capable compositing software.

Clamping the colors means limiting the britest values to set values, usually 1.0 – white and 0.0 – black, so that no pixels will have higher than white or lower than black (negative) values that can create unwanted results in further operations.

* Brighter than white (super-whites) and negative colors are a feature, and part of linear 32 bit float color processing.

* If there is such an option that I didn’t find please let me know..

In order to clamp the layers colors we convert it to a Smart Object, and convert its color depth to 16Bit internally, so the individual layer gets clamped but the main document remains 32Bit float unclamped (HDR).

To clamp the colors of a layer:

  1. Convert the layer or layers to a Smart Object.
  2. Enter the Smart Object for editing.
  3. From the Image > Mode  menu, choose 16Bits/Channel,
    And in the Conversion dialog that opens choose ‘Don’t Merge’, or choose Merge and then in the HDR Toning dialog choose Exposure And Gamma mode to keep the image unchanged.
    The conversion to 16Bit color depth without Merging or Merging using default Exposure and Gamma mode will clamp the colors.
  4. Save the Smart Object.
  5. Return to the main document, the layers colors are now clamped.

 

Photoshop Smart Objects

Software:
Photoshop CC 2018

Smart Objects are Photoshop’s non-destructive compositing / Processing functionality.
Smart Objects allow you to encapsulate (nest) layers and adjustments into a “sub-Photoshop documents” (composites in compositing terms) that have their resulting image as one layer in the main document or the Smart Object that contains them.

For example resizing a Smart Object layer doesn’t change or throw away it’s original pixels (no destructive re-sampling of the layer)

Another feature of Smart Objects is the ability to apply Smart Filters that can be changed or deleted or applied selectively using masks.

* Smart Object layers are marked with a Smart Object icon

* Images dragged into a Photoshop document are created as Smart Objects By default.

* Working with a lot of nested Smart Objects can be memory demandng and also consume scratch disk space with temporary files.

Create a Smart Object:
Right click the name of a layer or layers and choose Create Smart Object.

Untitled-2

Edit the Contents Of a Smart Object:
Right click the name of a Smart Object Layer and choose Edit Contents,
Or double click the Smart Object icon in the layer icon.
* Photoshop Smart Objects open for editing as an independent Photoshop document in a new Tab. once saved, the document containing them will be updated.

Convert the Smart Object layer to a regular layer:
Right click the name of a Smart Object Layer and choose Rasterize Layer.
* This will lose all the internal layers and effects and keep only the resulting layer.

Smart Object Operations:

Untitled-3

Creating text height maps in photoshop

Software:
Photoshop CC 2017

When you need to create a 3D title that looks carved in stone by using a height map or normal map of the text design,
And you need to have the titles remain as live text in Photoshop so that you can easily make changes to the text if needed,
A simple way to make turn the text into a height map that would look carved or beveled inwards is to apply an inner glow effect and choose the “Precise”option in the “Technique” parameter of the effect.
Beveled_Text_Height_map