Color Match - Sync Renders To Color Palette
Instructions
1. Pick your color
Input the target color with HEX code or color picker.
2. Adjust location of render
Change X and Y coordinates and size of target point on your render image. This area will be used to for color matching.
3. Select color to Change
Right click on the color property of material or compositor node you wish to change. Select Assign to Color Match option in the menu.
4. Run Color Match
The process will render a small part of your image multiple times and optimize the color in that area to match your target color as close as possible.
How it works?
The algorithm behind Color Match is based on gradient descent, a method of finding the minimum difference from a given value. The process will render a small part of your image and calculate the error between the desired color and the actual color. Each iteration will adjust the RGB values to minimize the error.
You can control the size of the step taken in each iteration by adjusting the Step Size value. A smaller step size will result in a more precise movement, but will take longer to converge. Too large of a step size could result in the algorithm overshooting the minimum and oscillating around the desired color.
Features
- Operates with color properties from materials and compositor nodes.
- Works with Cycles and Eevee render engines.
- Matching can be done regardless of the color space of the image.
Limitations
The color matching algorithm is not magic. It will not be able to match colors that cannot be achieved with change of only a single RGB value. In this cases you will likely need to adjust lighting and materials of the scene.
The algorithm for colormatching tries to get a color as close as possible to the target color, but there will always be a little bit of error. You can make the error smaller and unnoticable with more iterations.