Introduction
In this project, I worked with Nuke’s Machine Learning CopyCat workflow to remove water droplets from a character’s face in a fast-moving action shot. The footage included strong facial expressions and quick motion, which made the cleanup work difficult to do manually. CopyCat became the ideal solution, helping automate the cleanup while keeping the natural look of the performance.
Project Overview
The main goal was to clean water droplets from the actor’s face across a series of shots. Because the face was always changing—muscles shifting, expressions moving, and the actor turning quickly—traditional paint and patch methods would have taken a lot of time and effort.
To solve this, I trained a custom CopyCat model using “clean” and “dirty” frames. After training, the model predicted clean frames for the entire sequence, saving time and delivering consistent results.
Workflow:
For this shot, I worked with a 156-frame sequence. To build the training data, I selected 15 frames, skipping every 10 frames to cover different facial positions and motion changes. I cleaned these selected frames manually using paint tools. While painting, I was careful not to change the original pixels too much—I tried to keep the skin detail and texture as close to the real plate as possible.
Cropping for Optimization
Since I only needed the face area, I cropped the footage to reduce resolution and speed up training.
It was very important that both the ground-truth frames and the original plate were cropped to the exact same size. If the crops don’t match, CopyCat can produce incorrect results.
After cropping, I connected everything to the CopyCat node using appendclip node.
Training Settings
These are the settings I used for training:
Epochs: 30,000
Batch size: Auto
Crop size: 256
Checkpoint interval: 1000
Contact sheet interval: 100
Training took about 1 hour 40 minutes on my RTX 5070 Ti GPU.
When the training reached around 60%, the graph started flattening and became almost linear. That told me the model was no longer learning much, so I stopped training early.
Summary
In this project, I used Nuke’s Machine Learning CopyCat workflow to remove water droplets from a character’s face in a 156-frame shot. I selected 15 frames—skipping every 10 frames—to capture different facial motions and cleaned them manually while keeping the original detail as close as possible. To speed up training, I cropped only the face area and made sure both the plate and ground-truth crops matched exactly.
Using CopyCat, I trained the model with 30,000 epochs, auto batch size, a 256 crop size, and regular checkpoints. Training took about 1 hour and 40 minutes on an RTX 5070 Ti GPU, but I stopped at around 60% when the loss graph became flat. After that, I used an Inference node to apply the model to the full shot, precomped the result, and did only a few minor manual paint fixes.
The final output kept the natural facial texture and movement while removing the droplets effectively, showing how useful CopyCat can be for detailed cleanup tasks in production
Thanks
Mazhaurl Islam Shuvo