Additive Keyer

Written by rafal kaniewski on .


  • This is not a keyer, as it does not create a matte that is of use. It is more of a 'relative mixer' or image blending tool. It is very good for separating translucent fine details (such as motion blur, dust or hair) that a keyers with mattes might have difficulties extracting.
  • To get it to work requires a lot of prep work on the screen and reference to work with uneven screens.
  • It is used in combination with normal keyer that provides the main core of the comp and the additive keyer generates only the subtle soft edges.

Example / Result


First developed in the UK at Quantel for the Henry and Domino keyers (where the additive name comes from) and further developed at various london post houses and the world.


What it basically does is subtract the screen colour from the FG plate (so the plate is black where the screen is) and then add the image to the BG like so:

Further control is added by separating pixels that are darker or lighter than the reference and having the option of mult'ing them with a luma of the BG.

General Tips

  • always check its working by comparing the BG with the result - i.e. the area that the reference was taken from should be identical.
  • Log space(but still in float) can improve results
  • Whole lot better results if the FG & reference are de-spilled (identical process on both)
  • Grading the FG screen to the BG helps matching, reduce grain and minimize extreme dark and light patches. 'Luminance adjustment using the despill' at 10-15% is often used. see: Spill and Fringe Suppresion
  • Use the additive keyer to add grain to the BG(if the ref. has correct matching grain), rather than trying to completely lose the grain via degraining or grading
  • If there is overall colour deviancies these can't be adjusted with the highlight and dark tint controls. Taking the saturation down to 0% will give greater control.
  • helps to get as close a match on the ref input as possible - you rarely get a 'clean screen pass' so rather than using just a single solid, try making your own clean screen (with tracking data if needed) using grads, ramps, and grading areas of your sold to match the blue screen as much as possible. This way you won't get pollution in areas where the colour of the blue screen varies. i.e. use a screen cleanplate/levelled screen as reference.
  • If there are some extreme values in the BG then it will break the key. Roll them off (film can't hold anything above 16, so 20 is a safe bet to start a roll off).

Example Composite

Includes despil, fringe luminance adjustment, a core primatte key and a additive_keyer_Gizmo_for_NUKE_5


  • Cleanplates (i.e. marker/wire removals) must have the grain perfectly matched otherwise the additive keyer will highlight this discrepancy.
  • The saturation, luminance or grain of the BG varies in different areas of the shot. This is due to an uneven screen. (solution: create a screen cleanplate/leveled screen as reference)
  • Doubled up grain. You might want to think about restricting it to an expanded edge detect and then using that to hold out any graining you are doing - preventing any noise build up on the edge areas.
  • Grain can come through exaggerated (solution: constrain, grade screen, degrain)
  • Can be over saturated (solution: use the saturation controls)
  • If using a cleanplate/leveled screen 'as reference be aware that the matching frame will flash missing grain on the bg.
  • If the FG is darker than the screen
  • Can create fringing


learn more about keying here.


0 # Anton Moss 2010-08-01 08:00
Can you provide a .nk script for this? I'd like to see what is going on in each node and what's happening to the images exactly.

0 # rafal kaniewski 2010-08-01 10:50
the additive_keyer_ Gizmo_for_NUKE_ 5 is included in the tutorial- see link above in text..

sorry I don't have an example composite script, I wrote this a few years ago for another wiki... any example is dependent on the plate, and none of the innards of any node does anything other than what is in the description of the node.... but your right about nuke hiding stuff, i miss that about shake..
0 # Salvador Zalvidea 2011-04-26 04:32

I'm getting this error when using your script, which works fine, but I just wanted to check that this wasn't a big problem.
Currently using 6.2v2 on a Linux machine.

ERROR: AdditiveKeyer2. Multiply1.value : Nothing is named "parent.balance"


0 # Joan Azpeitia 2013-08-28 08:37
Many thanks!!
+5 # André Neumann de deus 2018-05-03 13:18
What happened to the images? I can only see the text part.
0 # frank admin 2020-07-28 06:16
The image in the article is linked to an external php script which is throwing an error. Sorry, the author will have to fix that on the external server or upload an image here.

You have no rights to post comments

We have 3581 guests and 127 members online