Investigation of VWG_GM GammutCompressor

Hello all,

In the last few years, as part of our activities for the Electronic Imaging Conference in SanFrancisco in January, we have always investigated the ACES pipeline at least in one paper.
Mostly it addressing problems related to the Input Device Transform (IDT) and last year Rec. 709 in - and outputs.
This year we looked at the new GamutCompressor algorithm.

Here is a link to the slightly revised live presentation video at the conference (about 18) minutes.

Here the complete paper can be downloaded.
Ebs_PAPER_2021_v07 (2).pdf (1.8 MB)

We concluded that it is one way to integrate the algorithm into the ACES modules without parameterization directly behind the IDT. However, on the other hand, it could also be useful to add the algorithm as a stand-alone operator in specific host programs. Here, the parameters could be accessible to the user:

  1. Recommendations for implementation

    As stated in section 1.2, the Compressor is intended to be inserted in the ACES pipeline after the Input Device Transform (IDT). The ACES system consists – to this moment – of modules that lack parameterization. To integrate all possible case studies, some settings have been made very broad, especially the Distance Limit values. Naturally, this means that certain production pipeline problems cannot be treated specifically.

The recommendation is therefore to consider two different implementation scenarios:

  1. Placing the GamutCompressor in the ACES pipeline with the default values directly after the Input Device Transform (IDT).
  2. Additionally, the algorithm could be implemented directly into an application as a Look Modification Transform (LMT); for VFX work, it could be The Foundry’s Nuke. To use this algorithm’s powerful functionality, the parameters should be exposed to the user. This allows exceptional cases to be explicitly handled that would cause artifacts in other cases. For such an operator inserted directly into the application, it would be helpful to display the image areas with the out-of-gamut colors. Furthermore, the CIE xy-chromaticity diagram could be useful as an additional analysis tool.


Eberhard Hasche


Thanks @hasche,

This is good feedback for the working group, we came down to the same recommendations but having them independently assessed is awesome!



Yes, agree with @Thomas_Mansencal here 100%! Appreciate the post and the work - hope you will join us for the implementation group that will be starting up in March! :slight_smile:

Thank you, @hasche. It was really interesting to see your presentation of the investigation. Glad to have the feedback.

May I ask, since your initial source images were display-referred sRGB JPEGs (probably with unknown in-camera gamut mapping applied, which might explain why you struggled to find values near the gamut boundary) how did you convert those to ACEScg to apply the gamut compressor?

Thank you, Nick, for watching. The conversion to ACEScg was done using the default matte_paint for jpeg images and Utility - Rec.709 - Camera for movies.

Due to the shortage of available presentation time some topics fell a bit short and need some extra explanation. What I wanted to say with “hard to find” is the following. My intention in the first section was to find out, which images are not affected by the GamutCompressor and I started with imagery I would use as an establishing shot in a natural environment. For this category it was not easy to find images that contained colors outside the Zone of Trust, most image colors were safe in the area that is described by the ColorChecker Classic 24 patches like the ones depicted in the next figure.

Here there is no difference between the original color values and the compressed ones ( < 0.0000001 )

Now and then some more saturated colors appeared, like in the next images and only the top left image contains colors that reach the sRGB gamut boundary.


But here the differences are minimal (< 0.0005 ) and not visible when amplified by the factor of 100 or even 1000).

So I flipped through my Library and searched specifically for images with more saturated colors and – not surprisingly – came up with the following list:
Nature: Flowers, Mushrooms, Animals (birds)
Human-made: Paint, Car paint, Cloth, Glass
Lights (!)

This tests should aid people who are using the GamutCompresser down the line which motifs/objects are affected by the compressor to take extra care of it if needed.