# PlanarTracker

> Set corner1-4 around a flat surface at the reference frame, Track, then Export a CornerPin2D (relative = from the reference frame, absolute = from the full format).

| Node | PlanarTracker |
|---|---|
| Menu | Transform › PlanarTracker |
| **Names in each format** | |
| .oink comp (JSON) | `"type": "OC_N_planartracker"` |
| .nk script | none: written as an Oink node |
| Python | `nuke.createNode("OC_N_planartracker")` |
| Assistant (MCP) | `create_node(type="PlanarTracker")` |
| Tab search | `planartracker`, or its initials `pt` |

![PlanarTracker properties](/shots/nodes/planartracker@2x.webp)

## Inputs and outputs

| Port | Name | Type |
|---|---|---|
| input 0 | Image | image |
| output 0 | Image | image |

## Knobs

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

| Knob | Label | Type | Default | Range / values | .nk knob | Description |
|---|---|---|---|---|---|---|
| `corner1` | corner1 | vector ×2 | `672, 378` | -2000 to 6000 |  |  |
| `corner2` | corner2 | vector ×2 | `1248, 378` | -2000 to 6000 |  |  |
| `corner3` | corner3 | vector ×2 | `1248, 702` | -2000 to 6000 |  |  |
| `corner4` | corner4 | vector ×2 | `672, 702` | -2000 to 6000 |  |  |
| `reference_frame` | reference frame | float | `1` | -100000 to 100000 (integer) |  |  |
| `track_range` | range | menu | `input` | input, custom |  |  |
| `range_first` | first | float | `1` | -100000 to 100000 (integer) |  |  |
| `range_last` | last | float | `100` | -100000 to 100000 (integer) |  |  |
| `use_features` | feature init | bool | `true` |  |  | Initial guess from libmv feature tracks |
| `refine` | refine (whole region) | bool | `true` |  |  | Direct (whole-region) homography refinement |

### 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 |  |  |  |  |


---
Sources: opencomp_core/nodes/tracking/planar_tracker.py, opencomp_electron/src/components/properties/knobSchema.ts, opencomp_core/nodes/help/planartracker.md
