Color in Nuke

From RMIT Visual Effects
Revision as of 00:21, 22 March 2016 by Nukejedi (talk | contribs) (HSL 'color thinking' space)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Let us first lay down a few basic definitions and introduce you to the general landscape of color correction.

Why Nuke is a great color manipulator

Nuke is a compositor. It was designed to integrate different components from disparate sources into one single image. In order to do so it needs very good control over their color. It is in this context that I am presenting it. So, what makes Nuke so good at color? Three things:

It works with 32-bit images

A bit is short for Binary Digit and in this context refers to the amount of information that is used to describe a single pixel of color. The more bits that are available for this purpose = a wider range of colors that are expressible. With its default 8-bit of color depth Photoshop can express colors within 255 levels of lightness. After importing them, Nuke treats all images as 32-bit regardless of their original bit depth and by doing so can express 4,294,967,296 different lightness values. Enough for ya?

It calculates colors in float

In digital terms White = 1, Black = 0. In Photoshop the lightest color is white, and the darkest is black and we can not access any data above or below these values. This might seem like common sense but although we cant see them, we sometimes need those sub-blacks and super-whites in order to make complex color calculations and also to do color correction on high dynamic range images. Nuke does not truncate color information in this way and will work with any color value number at all.

It works in Linear Space

Believe it or not, most images captured with a digital device have a built in color correction. If we graph the change between the before and after with our black values in the lower right of the graph, we will see a slight curve with it's apex near the bottom. This curve is called an sRGB gamma curve. The reason why our images don't look wrong is that PC decodes the information so that the result looks ok. The reason for this seemingly needless jiggery-pokery is so that the shortcomings of digital capture and display devices, which are notoriously bad in the lower-lightness range, is compensated for. The problem is that this sRGB color space is not a nice place to adjust color in. Nuke will apply an 'anti-gamma' curve to all images that it assumes are in this space. It goes on to do all it's color calculations in linear space (i.e. no color curve is applied), which is a much nicer place to work in.

Why Nuke is not such great color manipulator

Nuke was designed primarily as a compositor not a coloring tool. Though it can color grade like a boss, it's interface for doing so is not the most elegant or easy to learn.