# IBKGizmo

> Image based keyer.

Image based keyer. Keys the fg input against a clean plate (the c input, usually an IBKColour) with red and blue/green weights, and subtracts the screen so the result is premultiplied and despilled.

| Node | IBKGizmo |
|---|---|
| Menu | Keyer › IBKGizmo |
| **Names in each format** | |
| .oink comp (JSON) | `"type": "OC_N_ibkgizmo"` |
| .nk script | `IBKGizmoV3`, also imports `IBKGizmo` ([how .nk import works](/docs/nuke-users/nk-import)) |
| Python | `nuke.createNode("IBKGizmoV3")` |
| Assistant (MCP) | `create_node(type="IBKGizmo")` |
| Tab search | `ibkgizmo`, or its initials `ibkg` |

![IBKGizmo properties](/shots/nodes/ibkgizmo@2x.webp)

## Usage
- st = pick keys against a single colour instead of the c input: Ctrl+click (or Ctrl+Shift+drag)
  in the Viewer with the panel open picks it from the fg input.
- Luminance match brings back foreground brighter than the screen.

## Inputs and outputs

| Port | Name | Type |
|---|---|---|
| input 0 | fg | image |
| input 1 | c | image |
| input 2 | bg | image |
| output 0 | Image | image |

## Knobs

Panel tab **Ibkgizmo**, in panel order.

| Knob | Label | Type | Default | Range / values | .nk knob | Description |
|---|---|---|---|---|---|---|
| `st` | screen type | menu | `C-green` | C-green, C-blue, pick | `st` | C-green, C-blue (use the c input) or pick (use colour). |
| `colour` | colour | colour ×3 | `0, 1, 0` | 0 to 1 | `colour` | the screen colour for pick. |
| `red_weight` | red weight | float | `0.5` | 0 to 1 | `red_weight` |  |
| `blue_green_weight` | blue/green weight | float | `0.5` | 0 to 1 | `blue_green_weight` |  |
| `lm_enable` | luminance match | bool | `false` |  | `lm_enable` |  |
| `level` | screen range | float | `1` | 0 to 2 | `level` |  |
| `luma` | luminance level | float | `0` | 0 to 1 | `luma` |  |
| `ss` | screen subtraction | bool | `true` |  | `ss` | screen subtraction (fg minus the screen times 1 - alpha). |
| `usebg` | use bkg luminance | bool | `false` |  | `usebg` | add the bg input's luminance where the key is transparent. |

### Other knobs (Python, .nk and the assistant; not on the panel)

| Knob | Label | Type | Default | Range / values | .nk knob | Description |
|---|---|---|---|---|---|---|
| `gl_color` | Viewer Controls Color | float ×3 | `0, 0, 0` | 0 to 1 |  |  |
| `postage_stamp_frame` | Static Frame | int | `1` | -2147483648 to 2147483647 |  |  |
| `lifetimeStart` | Lifetime Start | int | `0` | -2147483648 to 2147483647 |  |  |
| `lifetimeEnd` | Lifetime End | int | `100` | -2147483648 to 2147483647 |  |  |
| `useLifetime` | Use Lifetime | boolean | `false` |  |  |  |
| `cached` | Cached | boolean | `false` |  |  |  |
| `bookmark` | Bookmark | boolean | `false` |  |  |  |
| `dope_sheet` | Dope Sheet | boolean | `false` |  |  |  |
| `clone_group` | Clone Group | string |  |  |  |  |
| `link_source` | Link Source | string |  |  |  |  |
| `link_overrides` | Link Overrides | string |  |  |  |  |
| `split_views` | Split Views | string |  |  |  |  |

## Examples

Open these from **Help › Examples…**, or from the **?** menu in this node's Properties panel.

- **IBK: clean plate + difference key** (`examples/keying/ibk_clean_plate.oink`): The image based keyer pair on the Tears of Steel plate 08_3a (CC BY 3.0, Blender Foundation, mango.blender.org). IBKColour erodes the actor out of the screen and fills the hole from the surrounding green, giving a clean plate that follows the screen's uneven light. IBKGizmo keys the plate against it (red / blue-green weights 0.5) and subtracts the screen colour, so the result is premultiplied and despilled. The Viewer shows it over black.


---
Sources: opencomp_core/nodes/keyer/ibk.py, opencomp_electron/src/components/properties/knobSchema.ts, opencomp_core/nodes/help/ibkgizmo.md, opencomp_core/nk/mapping.py
