Nodes · Transform
CameraTracker
Transformv1core
Overview
Footage in, a solved camera out. The solve is an explicit action — the kernel passes the image through untouched — and its result is baked into the node's knobs as ordinary, undoable animation.
How to
- Wire the plate.
- Press ▶ Solve and watch the phase/percentage/ETA; Cancel lands at the next frame boundary.
- Check the track-curve diagnostics for the worst offenders before trusting the camera.
Inputs
| Input | What it takes |
|---|---|
| in | the image this node works on |
Outputs
| Output | Type |
|---|---|
| out | Image |
Parameters
| Parameter | Type | Default | What it does |
|---|---|---|---|
| features | Int | 300 | Not documented yet. |
| min_separation | Float | 12 | Not documented yet. |
| patch_radius | Int | 12 | Not documented yet. |
| levels | Int | 4 | Not documented yet. |
| min_length | Int | 8 | Not documented yet. |
| fb_max | Float | 0.3 | Not documented yet. |
| motion | Choice | auto | Not documented yet. |
| focal_mode | Choice | unknown | Not documented yet. |
| focal_guess_px | Float | 0 | Not documented yet. |
| refine_lens | Bool | true | Not documented yet. |
| detect_movers | Bool | true | Blacksmith auto-holdout: find everything moving independently of the camera (actors, cars) and keep its features out of the solve. Unconfirmed mattes must WIN an A/B solve or they are dropped. |
| matte_accept | Text | String::new( | Accepted suggestion ids (JSON). A ◇ suggestion — dense motion with no track support — gates nothing until accepted here or in the triage rows. |
| holdout | Text | "hard".into( | Solver-gate strength. hard (default) excludes matted observations outright; soft keeps 1 in 10 of them — for shots where the matte is aggressive and static coverage is thin. |
| holdout_regions | Text | String::new( | Not documented yet. |
| matte_ignore | Text | String::new( | Not documented yet. |
| mattes | Text | String::new( | Not documented yet. |
| layers | Text | String::new( | Flat surfaces you've declared (JSON) — drawn with ▱ Add surface in the viewer. Each stores the quad and the frame you drew it on; the corners are tracked at solve time, so nothing goes stale when the plate changes. |
| layer_stats | Text | String::new( | Not documented yet. |
| tx | Float | 0 | Translate X — position along the world X axis, metres. |
| ty | Float | 0 | Translate Y — position along the world Y axis (up), metres. |
| tz | Float | 0 | Translate Z — position along the world Z axis, metres. The camera looks down −Z. |
| rx | Float | 0 | Rotate around X, degrees. |
| ry | Float | 0 | Rotate around Y (turntable), degrees. |
| rz | Float | 0 | Rotate around Z (roll), degrees. |
| focal_mm | Float | 35 | Not documented yet. |
| aperture_h | Float | 36 | Not documented yet. |
| k1 | Float | 0 | Not documented yet. |
| k2 | Float | 0 | Not documented yet. |
| solve_rms | Float | 0 | Not documented yet. |
| frame_rms | Float | 0 | Not documented yet. |
| cloud | Text | String::new( | Not documented yet. |
| tracks | Text | String::new( | Not documented yet. |
| status | Text | String::new( | Not documented yet. |
| solve_start | Float | 0 | Not documented yet. |
| solve_cx | Float | 0 | Not documented yet. |
| solve_cy | Float | 0 | Not documented yet. |
| solve_f_px | Float | 0 | Not documented yet. |
| solve_norm | Float | 0 | Not documented yet. |
| overlay | Choice | tracks | Not documented yet. |
See also
- Camera Tracker (HDCT) — How to get a solved 3D camera out of a plate.