ANR AI Point Tracker
Tracks points through a shot with an AI tracker or a classical pattern tracker, carries hidden points through occlusions, and exports a Nuke Tracker or CameraTracker.
- Trackers
- Trackers pack
- Tracker models
- 3 inputs
- 54 controls
Overview
The AI Point Tracker follows points you choose on a Reference Frame through the whole shot. The AI trackers follow features that change shape, light or angle, such as a turning face or a deforming object. Classical Precision (CPU - No AI) is a pattern tracker with a pattern box and a search box per point, for crisp texture where you want a classic track without a graphics card.
Points come from clicks in the viewer, from an even grid in a box you drag, or from a matte of the subject (Points From). Track forward and backward from the Reference Frame with the transport buttons, and watch the viewer follow.
When a point is hidden or leaves the frame, Post Tracking Refine decides where it goes: by default Trajectory Matching carries it with the points still visible and blends it back onto the subject when it reappears, with no jump. You can change the method after tracking and apply it with Refine Occluded Frames, without tracking again.
On the Points tab, Export to Tracker builds an ordinary Nuke Tracker from the result, and Export to Camera Tracker a CameraTracker with the points as user tracks.
Inputs
- Sourcerequired
The plate to track.
- Matteoptional
A matte of the subject, for Points From: From Matte: points are scattered inside its alpha on the Reference Frame. Separate white areas count as separate regions for Separate tracker per mask.
- Occlusionoptional
Not used by point tracking. Leave it empty.
Output. The plate with each tracked point drawn on it. Turn off Draw Markers to pass the plate through untouched. The tracks themselves are keyframes on the node, exported from the Points tab.
Quick start
- Add ANR AI Point Tracker and connect the plate to Source.
- Go to a frame where the features are clear and press Set to Current Frame (a new node already starts on the frame it was created on).
- Leave Points From on Click Points and click the features to follow in the viewer, or choose Grid In Box and drag a box.
- Press ▶▶ to track to the end of the Range. Then go back to the Reference Frame and press ◀◀ to track to the start. The model loads by itself the first time.
- Scrub and check the markers: amber means low confidence, red a lost point. Change Post Tracking Refine if a hidden point goes the wrong way.
- On the Points tab, tick T, R and S as needed and press Export to Tracker. A Tracker connected to the plate appears beside the node.
The panel
The node's panel as Nuke shows it, with the values of a new node. Click any control to see what it does; tabs and sections work as in Nuke.
Every tracking control, under the toolbar row of transport buttons.
The list of tracked points, and the exports to a Tracker or a CameraTracker.
No control matches.
All controls
ANR Point46 controls
Every tracking control, under the toolbar row of transport buttons.
- Add PointButton
anrPointTb_addPoint Add an algorithm point, then click its feature in the viewer. Existing tracks stay in place.
- |◀Button
anrPointTb_trackStepBackward Tracks one frame backward and stops.
- ◀Button
anrPointTb_trackBackward Tracks backward from the current frame one frame at a time, the viewer following, until the start of the Range or until you press ■.
- ■Button
anrPointTb_stop Stop ANR AI Point Tracker: ANR AI Point Tracker1
- ▶Button
anrPointTb_trackForward Tracks forward from the current frame one frame at a time, the viewer following, until the end of the Range or until you press ■.
- ▶|Button
anrPointTb_trackStepForward Tracks one frame forward and stops.
- Center ViewerButton
anrPointTb_center Centres the viewer once on the selected points (on the first point when none is selected).
- FollowCheckbox
anrPointTb_follow Keeps the viewer centred on the selected points as the frame changes.
- Analyse RangeButton
anrPointTb_analyse Same as Analyse Whole Range (Best Quality).
- Refine OccludedButton
anrPointTb_refine Same as Refine Occluded Frames: re-applies Post Tracking Refine to the tracks on the node.
- StatusStatus
status Reports whether the inference models are installed and which device is in use.
- Load ModelButton
loadModel Load the chosen tracker into memory. Takes a few seconds. The node passes the picture through until this succeeds.
- UnloadButton
unloadModel Release the model and its VRAM. Useful before rendering something else heavy on the same GPU.
- Tracking ModelMenu
trackModel Frame by Frame is included with the plugin, and fine for paid work.
Extra Heavy is a research-only model that does not come with the plugin. The first time you pick it, its licence is shown; accept it and choose a folder, and it downloads from its authors. It may only be used for non-commercial research, and the same goes for its tracks. Research Models... lists what is installed and removes it.Frame by Frame Tracker (included): the AI tracker, fast, one frame at a time; track it with the transport buttons. Frame by Frame Extra Precision: the same AI tracker followed by sub-pixel matching against each point's reference patch, rejecting weak or ambiguous matches; slower. Classical Precision (CPU - No AI): a pattern tracker on the CPU with a pattern and search box per point.
- Track PointPositionSome modes
classicalCenter Selected algorithm point. Add Point in Points, then click to place. Grab its marker to move it; empty clicks preserve existing tracks.
- Pattern SizeSliderSome modes
classicalPatternSize Inner box width in source pixels. Drag its corners in the viewer. Include a distinctive feature, not just a flat area.
- Search SizeSliderSome modes
classicalSearchSize Outer search box width in source pixels, centered at the last measured point. Enlarge for fast movement. Drag its corners in the viewer.
- Match ThresholdSliderSome modes
classicalThreshold Classical Precision: how well a match must agree with the point's reference pattern to be accepted, from 0.5 to 0.99. Below it the point is lost on that frame. Raise it to reject doubtful matches, lower it for soft or changing features.
- Moving CropCheckboxSome modes
classicalMovingCrop Process a crop around each algorithm point, including its full search box and optical-flow margin. Turn off to compare full-image processing. This does not enlarge the search box.
- Research ModelStatus
anrResearchInfo Extra Heavy is a research-only model you install yourself. This line says whether it is installed here.
- Research Models...Button
anrResearchManage The research-only models installed on this machine: their licences, where they are, and Remove.
- Extra Heavy Tracker Window (frames)Slider
trackWindow How many frames the Full Range Tracker (Extra Heavy) looks at together on every step: the reference frame plus the most recent ones. Each step is a full pass over the window, so the time per frame grows with it.
Measured on a 4K face shot: 16 frames took 3.0 s a frame, 8 frames 2.4 s and 4 frames 1.2 s, and the tracks were no worse at 8 (4.6 against 4.5 px on a round trip) or even at 4 (1.4 against 1.9 px on the lips). A longer window gives the model more context through an occlusion; the reference frame is always in it, so re-detection does not depend on this. The window is also capped by what fits on the card. The Frame by Frame Tracker ignores it.- Points FromMenu
promptMode Where the points to follow come from.
Grid In Box -- drag a box and scatter an even grid inside it. For planar surfaces, warps and mesh work, where you want many points rather than chosen ones.
Click Points -- click them in the viewer, the way you would place trackers by hand. Best when you know which features matter.
From Matte -- scatter points inside the matte wired into the Matte input, so only the subject is tracked. Feed it an ANR AI Matte and the two nodes work together.- PointsSlider
trackGrid How many points to scatter, for Grid In Box and From Matte. They are laid out to suit the shape of the box, so 40 points in a wide box gives more columns than rows. Anything landing outside the box or off the matte is dropped, so the result can be fewer than asked for.
- Subtract ModeCheckbox
subtractMode When on, clicking in the viewer adds an exclude point instead of an include point. Ctrl-click does the same in hosts that forward modifier keys.
- Clear PromptsButton
clearPrompts Remove every click point and box from the current frame.
- Reference FrameSlider
trackRefFrame The frame the points are placed on. Analyse runs forward to the end of the range and backward to its start, both from here, so a point can be placed where it is easiest to see rather than on the first frame.
- Set to Current FrameButton
trackRefFromPlayhead Set Reference Frame to the frame the viewer is on.
A new node already starts on the frame it was created at, so this is for after you have moved somewhere else and want to prompt from there instead.- RangeMenu
trackRangeMode Which frames to track. Input uses the range of the footage into this node, Global uses the project range, and Custom uses the two frame fields below.
- Custom FirstSlider
trackRangeStart First and last frame to analyse, used when Range is set to Custom.
- Custom LastSlider
trackRangeEnd First and last frame to analyse, used when Range is set to Custom.
- Analyse Whole Range (Best Quality)Button
trackAnalyse Solves the whole range as one clip with either Full Range Tracker: the model sees every frame of the range together, both directions, which is what those models were built for and many times faster than frame by frame. The Frame by Frame Tracker has no whole-clip mode, so the button is off while it is selected; track it with the transport buttons.
The final-quality pass. Seeds at Reference Frame, walks the range forward and backward from there, and writes a keyframe per frame.
This route ALWAYS feeds the model the plate at its own resolution -- Track Detail does not reduce it -- and it may use the two-pass moving crop, which is the only thing here that sees the whole shot before deciding where to look. It is the slow one, and it is the one to use on long occlusions and small subjects.
It REPLACES every key inside the range, including ones the interactive buttons wrote. Keys outside the range are left alone. Loads the model first if it is not up.- ◀◀Button
trackBackward Interactive. Track from the CURRENT frame back to the start of the range. Same trade-off as the forward button: fast, resumable, whole-frame, and no future-aware crop.
- |◀Button
trackStepBackward Track one frame backwards and stop.
- ▶|Button
trackStepForward Track one frame forward and stop, so you can watch it and correct it.
Carrying on from where you stopped keeps the model's memory, which is what carries a point through an occlusion. Jumping somewhere else first re-seeds from wherever the points are on that frame instead, which is what you want after a scrub.- ▶▶Button
trackForward Interactive. Track from the CURRENT frame to the end of the range, writing a key per frame and carrying the viewer along so you can watch it. Stops at the range end, or when you cancel, and picks up again from where it stopped.
This is the quick-check workflow, not the final one. It has no first pass, so it cannot use the moving crop and it only ever sees the whole frame -- on a small subject in a wide plate that is exactly where Analyse Whole Range wins. What the model is fed here is set by Interactive Quality.- Clear TracksButton
trackClear Delete every keyframe this node has written, and the points placed on it. Analyse overwrites rather than appends, so this is only needed to start over.
- Tracking InputMenu
trackInputSpace How the pixels are encoded on their way to the model. This changes the TRACKING BUFFER only -- the picture this node renders is untouched, and no display transform is baked into anything.
Working Space is the default and what this node has always done: clamp the host's values to 0..1 and quantise. Measured level with sRGB on a normally exposed plate and better on a display-referred one, so it is the safe setting.
sRGB encodes the buffer the way the older Python tracker did -- it rendered sRGB JPEGs, so its tracker never saw a linear pixel. Worth trying on a DARK scene-linear plate, and only there: two and a half stops down it measured 21% more accurate, because clamping linear leaves 44 distinct code values where sRGB leaves 116. On material that is already display-referred it encodes twice, flattens the contrast and makes the model guess -- measured inventing a sighting 530 px from the truth.
Press Dump Tracking Frame on both settings and look at the two files: the right one is the one that looks like the shot.- Dump Tracking FrameButton
trackDumpFrame Write the exact bytes the model would be fed for the current frame, as a PNG beside the tracks file, and put the path in Status. Nothing else reads it -- it exists so Tracking Input and Interactive Quality can be checked by eye instead of assumed.
- Refine Low-Confidence FramesCheckbox
trackRefineLowConfidence Include amber low-confidence frames as lost frames when applying Post Tracking Refine. Refinement starts at the first amber frame, not only at the first red frame. The yellow selection ring is unrelated. Choose a refinement method or press Refine Occluded Frames to apply. Turning this off affects future refinements; use Undo to revert an applied refinement.
- Post Tracking RefineMenu
trackOccludedMode What to do with a marker while it is hidden - behind something, or out of frame. Picking one applies it to the tracks already on the node.
Trajectory Matching (the default): every stretch a marker was not seen is rebuilt. While other markers are still seen it moves with them (their pan, rotation and scale) - forwards from where it was last seen, backwards from where it is seen again. Only while no marker at all is seen does it follow its own path, at its own speed and direction, and the two sides are blended there, so it meets the subject exactly when it is found again, with no jump. A marker that never comes back keeps its motion to the end. While tracking it keys the model's own guess, like Independent; the rebuild runs when you pick it or press Refine Occluded Frames.
Independent: the marker goes where the AI guesses it is. Each marker keeps its own identity, so a turning face or a deforming object comes back on the right spot. Best with the Full Range Tracker (Heavy), whose guess while hidden measured within half a pixel.
Follow Visible Markers: hidden markers move with the ones still visible, so a rigid cluster holds its shape. Use this with the Frame by Frame Tracker when a marker leaves the frame - that model cannot place a point outside the picture.
Interpolate Gap: no keys while hidden; the curve draws a straight line across.
Hidden frames never count as solved, whichever you pick. Change it after tracking and press Refine Occluded Frames to apply it without tracking again.- Refine Occluded FramesButton
trackRefineOccluded Re-apply Post Tracking Refine and Keep Moving Off-Screen to the tracks already on this node, without tracking again.
Every frame the model reported hidden is rewritten the way the current method says: carried on the visible markers, the model's own coordinate, or left to the curve. Frames the model saw are not touched. So track once with any model, then try the three modes on the result and keep the one that looks right. Works on any track made after this button existed; older tracks have no record of the model's own coordinate and use the keyed position instead.- Keep Moving Off-ScreenSlider
trackCoastFrames How many frames the points carry on travelling after the LAST one has left the frame, before they stop and wait for the subject to come back.
While any point is still visible the hidden ones always follow the motion of the ones that can be seen. This is only about what happens once nothing is visible at all and there is nothing left to measure: the points coast on the last motion for this many frames, then hold.
0 stops them the moment the last one goes, which can look early - a subject part-way out of frame stops before it has finished leaving. Higher values carry it further out. None of these frames count as solved, so no match-move is ever built from them.- Draw MarkersCheckbox
trackShowMarkers Draw each tracked point onto the output picture. Useful for checking a track and for rendering a reference; turn it off to pass the plate through untouched.
- DeviceMenu
device Automatic picks the fastest available and is what you want. The other two force a specific backend for testing: CUDA is the GPU, CPU is many times slower and cannot run tracking on the ONNX engine at all.
- TracksSlider
trackCount How many tracks Analyse produced. Read-only.
Points8 controls
The list of tracked points, and the exports to a Tracker or a CameraTracker.
- anrClassicalPointListPanel
anrClassicalPointList The list of points, in two groups: AI points and Classical points. Selecting a group or a point makes that tracking mode active. Ctrl- or Shift-click selects several points to delete or export; Delete removes them. Classical points can be renamed, switched on and off, and given their own Pattern, Search and Match values in the list. The buttons below add a point, delete the selection, go to the reference frame, and track or analyse.
- Export to TrackerButton
anrExportTracker Build a native Tracker4 from these tracks. Occluded frames arrive marked as interpolated rather than solved.
- Export to Camera TrackerButton
anrExportCameraTracker Build a CameraTracker with these tracks as its User Tracks, ready to solve. Its table has no per-frame enable column, so occluded frames arrive as genuine GAPS in the curve rather than as keys marked unsolved. It does not press Solve -- that wants survey points and a lens model, and is your call.
- T (translate)Checkbox
anrExportT Set this column for every exported track. Rotate and scale need at least two tracks to mean anything.
- R (rotate)Checkbox
anrExportR Set this column for every exported track. Rotate and scale need at least two tracks to mean anything.
- S (scale)Checkbox
anrExportS Set this column for every exported track. Rotate and scale need at least two tracks to mean anything.
- Separate tracker per maskCheckbox
anrExportPerMask OFF exports the usual way: one node holding every track.
ON builds a node per mask region instead, each holding only the points that sat on it -- for separate objects that each want their own match-move, rather than one solve averaging across things that are not moving together.
Only does anything when the points came From Matte and the matte has more than one separate region in it. A region is a connected white area of the picture on the Matte input: the node is handed a rendered matte, not the Roto's list of shapes, so two shapes that touch or overlap count as one.- Export Selected Points OnlyCheckbox
anrExportSelectedPoints When enabled, both Export to Tracker and Export to Camera Tracker use only the selected rows in Points. Select the AI group to export all its points. With no selected tracks, nothing is exported.
Tips
- |◀ and ▶| track one frame and stop, so you can watch and correct. Carrying on from where you stopped keeps the model's memory, which is what carries a point through an occlusion.
- For a classical track: pick Classical Precision (CPU - No AI), press Add Point, click the feature in the viewer, then drag the pattern and search box corners. Each point keeps the frame you placed it on as its reference. Classical points can be tracked with the transport buttons or Analyse Whole Range (Best Quality).
- Frame by Frame Extra Precision adds sub-pixel matching against each point's reference patch on top of the AI tracker: slower, and it can help on textured points.
- From Matte with a matte of the subject keeps every point on it; with Separate tracker per mask each separate object gets its own Tracker on export.
- On a dark scene-linear plate, try Tracking Input: sRGB (dark scene-linear plates). Dump Tracking Frame writes what the tracker sees, so you can compare the settings by eye.
- Center Viewer centres the viewer on the selected points; Follow keeps them centred as the frame changes.
- Export Selected Points Only exports just the rows selected in the Points list.
- Unload frees the GPU memory when you are done tracking.
Good to know
- The AI trackers are made for an NVIDIA GPU (CUDA). Classical Precision runs on the CPU and needs no graphics card.
- If the Tracker models were not installed with ANR Tools, Nuke offers to download them when you create the node. After the download, try again; restart Nuke if it asks you to.
- With the included AI trackers, track with the transport buttons: Analyse Whole Range (Best Quality) refuses them and says so in Status.
- With Classical Precision a lost point stays unsolved until you place it again.
- Hidden and carried frames never count as solved. Export to Tracker marks them unsolved, and Export to Camera Tracker leaves them out as gaps.
- Export to Camera Tracker does not press Solve: add survey points and a lens model and solve it yourself.
- The viewer toolbar (Add Point, the arrows, ■, Center Viewer, Follow, Analyse Range, Refine Occluded) and the ANR Point tab come with Nuke 15.2. In other versions, use the panel's buttons and the Points tab.
Something unclear or missing? Write to [email protected].