Skip to content
Esta página ainda não está disponível no seu idioma. Exibindo a versão em inglês.

Geometry Primitives

Boxes, polygons, polylines, ellipses, 2D cuboids, keypoint sets with skeletons, and instance-keyed brush masks, with V7-style keyboard conventions and a legacy profile.

Potato's image surface covers bounding boxes, polygons, polylines, ellipses, 2D cuboids, keypoint sets with skeleton topology, and instance-keyed brush masks. All of them are configured through image_annotation's tools list.

yaml
annotation_schemes:
  - annotation_type: image_annotation
    name: objects
    description: "Outline everything you find."
    source_field: image
    tools: [bbox, polygon, polyline, ellipse, cuboid_2d, keypoint_set, brush, eraser, sam]
    labels:
      - {name: vehicle, color: "#FF6B6B", key_value: "1"}
      - {name: person, color: "#4ECDC4", key_value: "2"}

Runnable example: examples/image/geometry-primitives/.

The tools

ToolShapeTypical use
bboxRectangleObject detection
polygonClosed multi-point shapeInstance segmentation
polylineOpen pathLane markings, cracks, cables
ellipseEllipseCells, apertures, round objects
cuboid_2dProjected 3D boxVehicles seen from a single camera
keypoint_setNamed points plus skeleton edgesPose, faces, anatomical landmarks
brush / eraserPainted maskFine-grained segmentation
fillColour-aware flood fillLarge uniform regions
samClick to segmentSee interactive segmentation

Keypoint sets carry COCO visibility flags and a skeleton topology, so a pose exports as a pose rather than as a bag of points.

Keyboard conventions changed in 2.8

Defaults now follow V7 and CVAT conventions:

KeyTool
vSelect
rRectangle
bBrush
fFill
kKeypoint
[ / ]Decrease / increase size

This is a change: b used to be bbox and f used to be freeform. A study already in the field can keep the old bindings:

yaml
    keybinding_profile: legacy

Annotators see a one-time notice about the change rather than discovering it by drawing the wrong shape.

Working faster

  • Per-class show and hide with h and Shift+H, persisted across the whole project rather than reset per image.
  • Copy annotations from the previous image with Ctrl/Cmd+D, or set carry_over to do it automatically. Useful for near-duplicate frames.
  • Two-finger pan and pinch zoom for tablets and stylus work.

Fixes worth stating

Several image features had shipped in earlier versions without working, and saying so is more useful than quiet correction:

  • Accepting an AI detection called a method that did not exist, so it was a silent no-op.
  • The freeform tool drew paths that were never saved.
  • Brush strokes leaked between instances, through three separate instance-switch bugs.
  • Image annotation was completely inert during the training phase.

All are fixed in 2.8. If you ran an image study on an earlier version, the training phase in particular is worth checking.