# Purpose Neutralizing a **Macbeth ColorChecker** (X-Rite / Calibrite) shot on set lets us align the CG render to the live plate by removing the tint introduced by the camera / lens / white balance. Once the plate is neutralized, we can relight CG against a **reference grey** and reapply the plate's color signature at the end of the comp. # Reference Values (ACEScg, linear) The bottom row of the chart has 6 neutral patches. Sample the **4th patch from white** — the **mid-grey N5** at **~0.18–0.20** linear. This is the patch we lock onto. | Patch (from white) | Name | Linear value (ACEScg) | |---|---|---| | 1 | White N9.5 | ~0.90 | | 2 | N8 | ~0.59 | | 3 | N6.5 | ~0.36 | | 4 | **N5 (mid-grey)** | **~0.20** | | 5 | N3.5 | ~0.09 | | 6 | Black N2 | ~0.03 | # Workflow in Nuke ## 1. Setup - Work in **ACEScg** (linear). Make sure the Read node reads the plate with the correct IDT (camera → ACES). - Hold on a single frame where the chart is clearly lit by the **key light** only (no flags / bounces if possible). ## 2. Neutralize the plate ![[DoNOTDelete/Attachments/Neutralization Mcbeth/image-20220826.png]] ![[DoNOTDelete/Attachments/Neutralization Mcbeth/image-20220826 1.png]] 1. Drop a **CurveTool** or **Sample** on the mid-grey patch (N5). 2. Read the RGB values — they will not be equal (the tint). 3. Divide the plate by that RGB triplet to get a **perfectly neutral grey** on N5. - Use a **Grade** → set `multiply` to `1 / R, 1 / G, 1 / B` of the sampled value. - Or use an **Expression** / **ColorCorrect**. 4. Verify: N5 should now read `(0.20, 0.20, 0.20)` — all six neutral patches should be aligned on the diagonal of the Vectorscope (zero saturation). ## 3. `aces_grey_balance` ![[DoNOTDelete/Attachments/Neutralization Mcbeth/image-20220516 4.png|650]] At the end of the neutralization chain, add an **`aces_grey_balance`** node (OCIO / gizmo) and **sample the 4th grey patch from white (0.20)**. This locks the plate to ACES neutral reference so the CG can be composited against a known grey. ## 4. Match CG on live - Render CG with the **same HDRI / lighting rig** used on set, including a **virtual Macbeth** placed where the real one was. - Compare the virtual chart against the neutralized plate — all 24 patches should match within an acceptable delta-E. - Any residual tint in the CG is a lookdev / lighting issue, not a comp issue. ## 5. Re-apply the plate's look Once CG is integrated on the neutralized plate, **invert the neutralization** (Grade with the original RGB triplet in `multiply`) downstream of the comp, so the final image carries the original camera/lens signature. # Tips - Always neutralize on a **linear** signal, never on a display-referred (sRGB / Rec.709) image. - If the chart is lit unevenly, sample a small region and average — or use a **gradient** to compensate across the chart. - Keep the neutralization **single-channel Grade** only (no gamma, no offset) so the operation is invertible. - Save the sampled RGB triplet as a **gizmo parameter** or a **sticky note** so the entire comp team uses the same value. # Related - CG lookdev validation against Macbeth is a **lookdev sign-off** step, not just a comp step.