D-Log-M Color Management LUT comparison
Purpose:
This is an overview of my new color management LUT for DJI D-Log-M. It is built using my new automated python tool to be as technically accurate as possible.
You can find a quantitative test of these using Bable Color Patchtool to test DeltaE measurements here;
www.zebgardner.com/photo-and-video-editing/accuracy-testing-of-d-log-m-color-management-tools
Background:
DJI uses D-Log-M in many of their consumer drones and cameras, I own the Mini 4 Pro that records in it. This format is intended to provide more dynamic range and more flexibility to color grade in post than recording directly in Rec.709.
Sadly DJI refuses to publish any documentation on this color space, so Black Magic is unable to incorporate it into the Davinchi Resolve color management system.
https://forum.dji.com/forum.php?mod=viewthread&tid=297669&extra=&page=1
I have previously produced a Resolve power grade and LUT using a linear workflow to try and reverse engineer what the actual tone curve for D-log-M is as detailed here;
https://www.zebgardner.com/photo-and-video-editing/dji-d-log-m-colorgrading
This process quite time intensive though and doesn't have a great way to correct the colors from camera. So I worked to implement a similar process automated in Python.
This program does the same tone curve generation to minimize error in linear space. And it also generates a 3x3 matrix to convert color primaries to minimize CIE2000 color error. This was run on the 140 sample Color Checker SG color chart, so a much wider range of hues and saturations than the Color Checker Passport Video used in my prior efforts.
This LUT will be the first step in your color grading pipeline, ending with another CST to convert from DWG/I color space to your delivery space (typically Rec709).
Comparison:
I have taken a selection of clips recorded with my Mini 4 Pro and applied 3 different color management methods to them;
Free Lut from DJI's Website
My new Python LUT
My prior power grade.
No other adjustments were made to the footage.
Comparison:
DJI LUT
The dark shots do have crushed almost detailless shadows with the DJI provided LUT, which is a common complaint I have seen of it. I would also argue the transition to clipped highlights at the sunset over the beach is very harsh
Old Power Grade
Looks to have stronger reds, or maybe more saturation over all than the Python LUT, but less than the strong contrast/saturation of DJI LUT. Blue's seem a bit purple-ish. At 0:09 looks to have the most lifted shadows
Python LUT
Blue skies lean cyan, particularly at the volcano. At 0:09 darker shadows than Power grade, but retains way more details than the DJI lut
Again these tools are meant to be technical transformations that give a accurate base for further color grading, not a one click finished 'Look'.
Usage:
I have provided the LUT in two formats.
The “DLOGM_DWG_I_SHAPER_ZRG_V1” LUT converts to Davinchi Wide Gamut, Intermediate. It is a 'Shaper LUT', that is first a 12 bit (4096 element) 1d LUT to map the tone curve of D-Log-M to Davinchi Intermediate. Then a 65 cube 3d LUT is applied to map the camera color space to Davinchi Wide Gamut. I am not sure what programs other than Resolve support this format.
You will place this LUT first in your pipeline. Then at the very end a DWG/I to Rec.709 CST. In the output CST you can enter 325 nits as the 'custom input max' and leave custom output unchecked. This is the value that
“DLOGM_REC709_65_CUBE_ZRG_V1” is a 65 Cube LUT that should be compatible with any program that accepts LUTs. It is a one step mapping from D-Log-M direct to Rec709. It would be placed at the very end of your color grade and any artistic changes made before it. This workflow is less flexible than the DWG/I LUT, so Davinchi users should use the first option.
Please provide feedback to your experiences with this tool. And if you wish to use my python tool to produce your own, go here for the details on it.