Skip to content

Labeling Instances

An instance is one animal's pose on one frame: a position (and a visible/not-visible flag) for each node in the project's skeleton.

Adding an instance

How What it does
Cmd+I / Ctrl+I Add an instance using the current placement method
Labels ▸ Add Instance Same, from the menu
Right-click ▸ Add Instance Pick the placement method for this one instance
Ctrl-drag a node of an existing user instance Clone it, pose and all (Ctrl on macOS too, not Cmd)

Placement methods

Labels ▸ Instance Placement Method decides the starting pose of a new instance. Getting this right saves a lot of dragging.

Method Starting pose
Best Centered template, offset to avoid overlapping existing instances (default)
Template The skeleton's stored template pose, unmodified
Force Directed Centered, then iteratively pushed away from existing instances
Random Random node positions
Copy Prior Frame The pose from the previous labeled frame
Copy Predictions The predicted instance already on this frame

Once you have a model, Copy Predictions turns labeling into correction.

Editing

  • Drag a node to move it.
  • Move the whole pose: double-click any node to select every node in the instance, then drag one of them.
  • Rotate the selected instance: hold Alt and scroll.
  • Shift-click nodes to add them to the selection; drag on empty canvas to draw a selection box.
  • Right-click a node or instance for its context menu — visibility, deletion, track assignment, and more.
  • Node placement mode (N, or View ▸ Node Placement Mode) is for clicking nodes down one at a time rather than dragging a pre-posed template.

Visibility

Nodes that are genuinely occluded should be marked not visible rather than parked somewhere plausible — a guessed point is training signal that says the part is there, which it isn't.

  • To mark a node non-visible, right-click it ▸ Mark Node Non-Visible (or Mark Node Visible to undo it).
  • V toggles View ▸ Show Non-Visible Nodes — whether non-visible nodes are drawn at all. If the pointer is over a node, or nodes are selected, V also flips those nodes' visibility.
  • View ▸ Display controls how much of the hidden geometry you see:

    Mode Shows
    Manual Whatever you toggled by hand
    Only selected (with hidden points) Just the selected instance, hidden points included
    All instances, visible points only Every instance, visible points only
    All visible + selected hidden points Everything, plus the selected instance's hidden points

Selecting

Action Shortcut
Select next instance `
Select next / previous instance and zoom to it Shift+Down / Shift+Up
Clear selection Esc

Clicking an instance on the canvas selects it; the Instances panel lists the current frame's instances with their track, type, and score.

Copy and paste

Action Shortcut
Copy instance Cmd+C / Ctrl+C
Paste instance Cmd+V / Ctrl+V
Copy instance track Cmd+Shift+C / Ctrl+Shift+C
Paste instance track Cmd+Shift+V / Ctrl+Shift+V

Copying a track copies the identity assignment rather than the pose — see Tracks.

Deleting

Action Shortcut
Delete selected instance Cmd+Backspace / Ctrl+Backspace
Delete instance and its track Cmd+Shift+Backspace / Ctrl+Shift+Backspace
Delete predictions in a dragged area Cmd+K / Ctrl+K

The Labels menu has the bulk options:

Menu item Deletes
Delete Predictions on Current Frame Every prediction on this frame
Delete Predictions… Predictions matching one filter: score threshold, frame range, on user-labeled frames, max instances per frame, track, or instance type
Delete Predictions from Area… (Cmd+K / Ctrl+K) Predictions inside a rectangle you drag
Delete All Predictions… Every prediction in the project, after a confirm

Working with predictions

Predicted instances are drawn distinctly from user labels (View ▸ Color Predicted Instances changes how). They are suggestions until you accept them.

Action How
Accept one prediction Double-click it
Accept all on this frame Cmd+Shift+A / Ctrl+Shift+A, or Labels ▸ Accept All Predictions on Current Frame
Accept all in the project Labels ▸ Accept All Predictions

Accepting converts a PredictedInstance into a user-labeled Instance — which is what training actually consumes.

Negative frames

Labels ▸ Mark Frame as Negative records that a frame genuinely contains no animals. This is real training signal, not an empty frame that you skipped, and the label quality check will flag a negative frame that still has instances on it.

Undo

Every edit goes through a command with a frame-level snapshot, so Cmd+Z / Ctrl+Z and Cmd+Shift+Z / Ctrl+Shift+Z work across the whole editing surface — not just node drags.

Hints

Labels ▸ Show Hints During Labeling puts contextual tips on screen as you work. Help ▸ Labeling Tips… opens the full list any time.