> For the complete documentation index, see [llms.txt](https://docs.unitlab.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.unitlab.ai/documentation/annotations/annotation-workbench.md).

# Annotation Workbench

Understand the shared shell, item state, controls, and navigation.

## Watch the multimodal Workbench in action

See how Unitlab brings modality-native editors into one operating model for ontology, item state, automation, review, and reproducible delivery.

{% embed url="<https://cdn.prod.website-files.com/651fc1beafe23dfe4999151d/6a7610b174ee3346f6af02c1_unitlab-multimodal-data-platform-explainer-1080p.mp4>" %}

[Open the full-screen Unitlab AI explainer](https://cdn.prod.website-files.com/651fc1beafe23dfe4999151d/6a7610b174ee3346f6af02c1_unitlab-multimodal-data-platform-explainer-1080p.mp4).

The Workbench is the shared execution environment for annotation and review. It keeps ontology, item state, instructions, comments, issues, navigation, and workflow actions consistent while loading the native editor required by the active data.

{% hint style="info" %}
**Use this area when:** you are training annotators or reviewers, troubleshooting missing actions, or designing a consistent multimodal operating flow.
{% endhint %}

## Choose an annotation workspace

Select the guide that matches the data and decision you need to produce.

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>🖼️</td><td><strong>Image Annotation</strong></td><td>Boxes, masks, polygons, cuboids, landmarks, properties, and relations.</td><td><a href="/documentation/annotations/image-annotation.md">Image Annotation</a></td></tr><tr><td>🎞️</td><td><strong>Video Annotation</strong></td><td>Frame-accurate tracks, events, timelines, and dynamic properties.</td><td><a href="/documentation/annotations/video-annotation.md">Video Annotation</a></td></tr><tr><td>🧊</td><td><strong>LiDAR Annotation</strong></td><td>3D point clouds, calibrated cameras, point labels, cuboids, and temporal tracks.</td><td><a href="/documentation/annotations/lidar-annotation.md">LiDAR Annotation</a></td></tr><tr><td>🔤</td><td><strong>Text Annotation</strong></td><td>Entities, nested spans, classifications, and relations.</td><td><a href="/documentation/annotations/text-annotation.md">Text Annotation</a></td></tr><tr><td>📄</td><td><strong>Document &#x26; PDF</strong></td><td>Native text, images, tables, regions, pages, and document values.</td><td><a href="/documentation/annotations/document-and-pdf-annotation.md">Document &amp; PDF Annotation</a></td></tr><tr><td>🎧</td><td><strong>Audio Annotation</strong></td><td>Temporal events, speakers, transcripts, waveforms, and spectrograms.</td><td><a href="/documentation/annotations/audio-annotation.md">Audio Annotation</a></td></tr><tr><td>🩻</td><td><strong>Medical Annotation</strong></td><td>DICOM, synchronized multiplanar views, clinical properties, and segmentation.</td><td><a href="/documentation/annotations/medical-annotation.md">Medical Annotation</a></td></tr><tr><td>🔬</td><td><strong>Pathology Annotation</strong></td><td>Whole-slide images, deep zoom, tissue, cells, nuclei, and biomarkers.</td><td><a href="/documentation/annotations/pathology-annotation.md">Pathology Annotation</a></td></tr><tr><td>🛰️</td><td><strong>Geospatial Annotation</strong></td><td>Satellite and aerial imagery, large rasters, coordinates, and spatial geometry.</td><td><a href="/documentation/annotations/geospatial-annotation.md">Geospatial Annotation</a></td></tr><tr><td>✨</td><td><strong>Detect Anything (SAM 1–SAM 3)</strong></td><td>Magic Touch, prompt labeling, Find Similar, tracking, batch automation, and models.</td><td><a href="/documentation/auto-labeling/detect-anything-sam-1-sam-3.md">Detect Anything (SAM 1–SAM 3)</a></td></tr></tbody></table>

### How this area fits into production

{% code collapsedlinecount="10" %}

```mermaid
flowchart TB
  A["Assigned task"]
  B["Workbench context"]
  C["Native editor"]
  D["Ontology values"]
  E["Save + stage action"]
  F["Review or completion"]
  A --> B
  B --> C
  B --> D
  C --> E
  D --> E
  E --> F
```

{% endcode %}

![Image annotation Workbench](https://292810646-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGjVLUz4wthGkGlRKM6rM%2Fuploads%2FJR6FTWW8jqHz0VT6Hh7F%2Fimage-workbench.png?alt=media\&token=bc9b4805-7ab8-4b94-a6b8-4a0863a388d8)

*The center canvas changes by modality; ontology, item status, contextual collaboration, navigation, and workflow actions remain part of the same operating shell.*

### What this area controls

Across modalities, Unitlab keeps a recognizable operating model:

* top-center previous/next work-item navigation;
* active class or annotation type;
* Multiview mode and layout controls;
* object/class or event/entity inspection;
* item properties;
* object properties and relations;
* comments;
* tags;
* appearance and visibility controls;
* save and version-history controls;
* workflow actions appropriate to the active stage;
* project instructions and issue context.

The active native editor supplies the modality-specific toolbar, timeline, player, page controls, and inspector content. The surrounding Workbench stays stable when navigation crosses data families.

### Annotation keyboard shortcuts

Press **H** in the active annotation panel to open **Annotation Shortcuts**. The dialog adapts to the current editor. In Multiview, activate the panel you want to work in before using shortcuts.

Use **Ctrl** on Windows/Linux or **Cmd** on macOS wherever **Ctrl/Cmd** is shown. **Alt** is **Option** on macOS. Tool availability also depends on the annotation type, selection, and whether the panel is editable. When typing in a field, use the field's normal text-editing controls.

### Common actions and view controls

| Shortcut                                     | Action                                     | Context                                                                                                      |
| -------------------------------------------- | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------ |
| **H**                                        | Open Annotation Shortcuts                  | Active editor                                                                                                |
| **Ctrl/Cmd + Z**                             | Undo                                       | Annotation edits in the active editor                                                                        |
| **Ctrl/Cmd + Y** or **Ctrl/Cmd + Shift + Z** | Redo                                       | Annotation edits in the active editor                                                                        |
| **Delete** or **Backspace**                  | Delete the selected annotation             | During LiDAR path drawing, removes the last point instead                                                    |
| **Ctrl/Cmd + C / X / V**                     | Copy / cut / paste an annotation           | Visual, audio, text, HTML, tabular, and LiDAR editors; native text copy takes priority when text is selected |
| **Shift + V**                                | Hide or show annotations                   | Active editor                                                                                                |
| **1–9**                                      | Activate the class assigned to that number | Image, video, medical, document, pathology, geospatial, audio, text, HTML, and tabular editors               |
| **= / − / 0**                                | Zoom in / zoom out / reset the view        | Visual canvases, LiDAR, and time series; the zoom-in key is displayed as **+** in the dialog                 |
| **Shift + H**                                | Go to Home                                 | Image, video, medical, document, audio, text, HTML, and tabular editors                                      |

Numeric keys use the hotkey assigned to a class, rather than its position in the class list. A compatible selected visual object can also be reassigned to that class. Audio class switching releases an interval selected under another class.

Clipboard support follows the annotation type. Raster brush masks can be pasted within the same file. LiDAR geometric objects can be copied individually or as a group; painted point segments cannot be copied.

Use the explicit workflow actions in the header to submit, review, or reject work. **R** and **K** are tool or editing shortcuts in several editors.

### Visual annotation tools

Here, **visual canvases** means image, video, medical, document, pathology, and geospatial editors. LiDAR tools are listed separately below.

| Shortcut      | Tool                                      | Available context                                                          |
| ------------- | ----------------------------------------- | -------------------------------------------------------------------------- |
| **V**         | Pan and select                            | Visual canvases                                                            |
| **B**         | Bounding Box                              | Visual canvases                                                            |
| **N**         | Cuboid                                    | Image, video, document, pathology, and geospatial                          |
| **F / E**     | Brush / Eraser                            | Visual canvases                                                            |
| **P**         | Polygon                                   | Visual canvases                                                            |
| **L / J / U** | Polyline / Skeleton / Keypoint            | Image, video, document, pathology, and geospatial                          |
| **M**         | Magic Touch                               | Image, video, medical, pathology, and geospatial                           |
| **S**         | Detect all objects                        | Image, video, pathology, and geospatial; requires a supported active class |
| **T**         | Toggle crosshair                          | Visual canvases                                                            |
| **C**         | Comment                                   | Visual canvases                                                            |
| **D**         | Select PDF Text                           | Document only                                                              |
| **\[ / ]**    | Decrease / increase brush size            | Visual canvases                                                            |
| **G / K / X** | Overlay / Preserve / Overwrite brush mode | Image, video, medical, and document; use between brush strokes             |
| **Shift + P** | Show or hide Spectral Profile             | Geospatial raster with pinned spectra                                      |

For **Magic Touch**, click to include an area and use **Shift + click** to exclude it. In pathology and geospatial editors, Brush and Eraser operate on vector mask geometry. Select an existing mask or polygon and enter its edit mode before modifying it.

### Select, edit, and confirm

| Control                                           | Behavior                                                                                      |
| ------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| **Enter** on a selected visual object             | Enter edit mode where the on-canvas Edit action is available; press again to confirm the edit |
| **Esc** during a supported canvas drawing or edit | Finish or confirm the current annotation, then release the selection as appropriate           |
| **Z** during an armed visual-object edit          | Leave edit mode and discard the changes made in that edit                                     |
| **Arrow keys** with a selected visual annotation  | Move it by 1 pixel; **Shift + arrow** moves it by 5 pixels                                    |
| **Ctrl/Cmd + drag** in Pan mode                   | Select multiple visual objects; add **Shift** to extend the selection                         |
| **Esc** with a multiple-object selection          | Clear the group selection                                                                     |

Selected-object movement takes priority over image or frame navigation. Deselect the annotation before using arrows to navigate. Escape is context-sensitive: a menu, active gesture, or review panel may handle it first. Use the visible **Clear** and approval controls to resolve staged AI predictions.

### Object ordering

| Shortcut | Action                                      |
| -------- | ------------------------------------------- |
| **W**    | Bring selected annotation to front          |
| **O**    | Bring selected annotation one level forward |
| **I**    | Send selected annotation one level backward |
| **Q**    | Send selected annotation to back            |

These commands apply to overlapping annotations on visual canvases. LiDAR uses **W**, **O**, and **Q** for different actions because 3D objects have no canvas stacking order.

### Navigation and playback

| Context                           | Shortcut             | Action                                                                             |
| --------------------------------- | -------------------- | ---------------------------------------------------------------------------------- |
| Image, audio, text, HTML, tabular | **← / →**            | Previous / next work item                                                          |
| Document                          | **← / →**            | Previous / next page                                                               |
| Document                          | **Shift + ← / →**    | Previous / next document                                                           |
| Video, medical, LiDAR             | **← / →**            | Previous / next frame or slice; video navigation follows the configured frame step |
| Video, medical                    | **Shift + ← / →**    | Previous / next work item                                                          |
| Video, medical, audio, LiDAR      | **Space**            | Play / pause                                                                       |
| Video, medical                    | **D / R / Y**        | Track forward / backward / both directions for a supported selected annotation     |
| Video                             | **Alt + M**          | Mute / unmute native video audio                                                   |
| Video                             | **Alt + ↑ / ↓**      | Raise / lower native video volume                                                  |
| Audio                             | **Shift + ← / →**    | Rewind / forward by the skip duration in View Settings                             |
| Audio                             | **Alt + M**          | Mute / unmute                                                                      |
| Audio                             | **↑ / ↓**            | Raise / lower volume                                                               |
| Audio                             | **Alt + → / ←**      | Increase / decrease playback speed                                                 |
| Audio                             | **L / P**            | Toggle loop / autoplay                                                             |
| Audio                             | **S / T**            | Toggle spectrogram / timeline                                                      |
| Audio                             | **Ctrl/Cmd + O / I** | Zoom waveform in / out                                                             |

Tracking follows the selected annotation's current range and is unavailable when there are no frames to process in that direction. Use the top-center navigation controls to move between work items in editors without an item-navigation shortcut.

### LiDAR tools and box editing

| Shortcut                | Action                                                             |
| ----------------------- | ------------------------------------------------------------------ |
| **V**                   | Pan/select mode                                                    |
| **N / O / P / L / U**   | Cuboid / Sphere / Polygon / Polyline / Keypoint                    |
| **M / E**               | Paint points / Erase point labels                                  |
| **C**                   | Comment on a location in the scene                                 |
| **\[ / ]**              | Decrease / increase brush size                                     |
| **K / X**               | Protect existing point labels / Overwrite labels                   |
| **W / S**               | Move the selected cuboid forward / backward along its own length   |
| **A / D**               | Move the selected cuboid left / right along its own width          |
| **Shift + W / S**       | Raise / lower the cuboid                                           |
| **Alt + W / S**         | Make the cuboid longer / shorter                                   |
| **Alt + D / A**         | Make the cuboid wider / narrower                                   |
| **Alt + Shift + W / S** | Make the cuboid taller / shorter while keeping its bottom in place |
| **F / G**               | Turn the cuboid left / right by 1°; add **Shift** for 15°          |
| **Q**                   | Fit the selected cuboid to the points inside it                    |
| **B**                   | Toggle Batch View for a selected cuboid in a multi-frame scene     |
| **T / R / Y**           | Track the cuboid forward / backward / both directions              |
| **Ctrl/Cmd + A**        | Select all objects on the current frame in Pan mode                |

Cuboid moves and size changes use 0.05 m steps. Hold a key to repeat the adjustment; releasing it commits the edit as one undo step. These box keys follow keyboard positions.

In Pan mode, drag empty space with the left button to orbit and the right button to pan. While a drawing or painting tool is active, the right button orbits. Drag an object to move it, or use **Alt + drag** to move it vertically. Use **Ctrl/Cmd + click** to toggle an object in a group, or **Ctrl/Cmd + drag** to select a group; add **Shift** to extend it.

Click successive points for a polyline or polygon. Finish with a double-click, **Enter**, or **Esc**; a polygon can also close on its first point. **Backspace/Delete** removes the last point while drawing. Between gestures, **Esc** saves pending painted labels and releases the selection. During a drag or brush stroke, **Esc** cancels that gesture. In Batch View, **Esc** closes the view.

### Audio, text, HTML, tabular, and time-series tools

| Context             | Shortcut                     | Action                                   |
| ------------------- | ---------------------------- | ---------------------------------------- |
| Audio               | **V / R / C**                | Pan / Interval / Comment                 |
| Text, HTML, tabular | **V / T / R / C**            | Pan / Entity / Relation / Comment        |
| Time series         | **V / R / P / C**            | Pan / Range / Point / Comment            |
| HTML Interact mode  | **Ctrl/Cmd + Shift + Enter** | Capture the current state for annotation |

### Pointer and timeline controls

| Context                       | Control                                  | Action                                                                   |
| ----------------------------- | ---------------------------------------- | ------------------------------------------------------------------------ |
| Image and document canvas     | Mouse wheel                              | Zoom around the pointer                                                  |
| Medical stack                 | Mouse wheel / **Shift + wheel**          | Change slice / zoom                                                      |
| Audio waveform or spectrogram | Mouse wheel / **Ctrl or Alt + wheel**    | Pan / zoom around the pointer                                            |
| Time-series chart             | **Ctrl/Cmd + wheel**                     | Zoom around the pointer                                                  |
| Time-series chart             | **Shift + wheel** or horizontal scroll   | Pan through time; ordinary vertical scroll moves through the chart stack |
| Focused timeline              | **← / →**                                | Seek backward / forward                                                  |
| Focused timeline rows         | **↑ / ↓**, **Home / End**                | Move through visible rows or reach the first / last row                  |
| Focused timeline group row    | **← / →**                                | Collapse / expand the group                                              |
| Timeline                      | **Ctrl/Cmd + wheel** / **Shift + wheel** | Zoom / pan horizontally                                                  |
| Timeline resize handle        | **↑ / ↓**                                | Increase / decrease the timeline height                                  |

For a focused timeline annotation, use **Shift + F10** or the **Menu** key to open its available actions. **Esc** cancels an in-progress timeline edit. Pressing **Esc** in a fullscreen Workbench panel exits fullscreen once no more specific interaction has consumed the key.

### Annotation View Settings

The View Settings panel controls how the active editor looks and responds without changing the source file. Available sections adapt to the resource family and Workbench mode.

| Section                     | Controls                                                                                                                 | Effect                                                                                                                                               |
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Canvas / Rendering**      | Pixel Perfect                                                                                                            | Preserves one-to-one pixel rendering for supported standalone image views; hidden where it does not apply, including medical and multi-panel layouts |
| **Annotation Display**      | Display object names; Show properties & attributes; object-label font size; selected-object opacity; object-edge opacity | Controls labels and visual emphasis without changing saved geometry                                                                                  |
| **Annotation Tools**        | Handle size; primitive keypoint sensitivity; show polyshape angles; ruler around cursor                                  | Adjusts editing precision, control-point size, angle visibility, and local measurement guidance                                                      |
| **Auto zoom**               | Auto zoom on timeline click; auto zoom on object-list click                                                              | Centers and enlarges the selected annotation when the corresponding navigation action is used                                                        |
| **Image Adjustments**       | Color Map; Invert Image; Brightness; Contrast; Image Saturation                                                          | Changes the inspection view only; source-image properties remain unchanged                                                                           |
| **Video**                   | Default annotation length; Jump frames                                                                                   | Sets the initial temporal span for a new annotation and the number of frames used by jump navigation                                                 |
| **Hounsfield unit presets** | Built-in preset selection; custom preset name; Save W/L; delete custom preset                                            | Applies and stores medical window/level presets                                                                                                      |
| **3D Viewer Settings**      | Threshold; Opacity                                                                                                       | Controls the medical 3D rendering                                                                                                                    |
| **Projection (MIP)**        | Single slice, MIP (max), MinIP (min), Average; slab thickness                                                            | Controls multi-slice projection when a medical volume is available                                                                                   |
| **Windows Levels**          | VOI LUT mode; histogram; window-width/level range; reset                                                                 | Controls the displayed intensity range for medical-image inspection                                                                                  |

Settings persist as annotation-view preferences. They alter rendering, navigation, or editing ergonomics; they do not rewrite the uploaded media.

### Work-item status

Item status is derived from the item’s current workflow stage, not maintained as an unrelated manual field. User-facing status buckets include:

* New;
* In annotation;
* In Review;
* AI Review where applicable;
* Processing;
* Complete;
* Archived;
* Error.

Task-level status can further show Reopened, Skipped, Pending, Dispatched, Running, Paused, Succeeded, or Failed. An **Invalid** sub-state appears when the latest saved history fails required-property or value validation. Validation is non-blocking: the save succeeds, the item is marked for correction, and the workflow can route it appropriately.

### 7. Multiview Workbench UX

Multiview is the default project annotation experience for all six data families. It is a persistent workspace containing the project header, work-item navigation, mode/layout selector, resizable panel grid, one active editor, and one or more passive inspection panels.

### Two modes

| Mode               | What the panels show                                       | Editing model                                                       | Default layout |
| ------------------ | ---------------------------------------------------------- | ------------------------------------------------------------------- | -------------- |
| **Current file**   | Multiple views of the same datasource                      | One active editor; sibling panels mirror its changes in real time   | 1×1            |
| **Multiple files** | Neighboring work items from the current queue/filter scope | One selected panel is editable; other items remain passive previews | 1×3            |

Layouts range from 1×1 to 4×4. Users can resize panel boundaries, fullscreen a panel, and switch modes from the Workbench header. Mode, layout, and panel sizes persist for the user.

### Active and passive panels

Only the active panel can mutate annotations. It receives the full native editor: tools, hotkeys, selection, object/event/entity editing, player or page controls, comments, classes, properties, history, and workflow actions.

Passive panels can show media, annotations, labels, pages, frames, waveforms, text, or medical projections. In Current file mode they receive the active panel’s live annotation changes, but they cannot originate edits, change the active selection, save, control playback, change a PDF page, edit text entities, or alter waveform regions.

When the user activates a passive panel:

1. Unitlab visually selects it immediately.
2. Any in-progress save in the outgoing panel is allowed to settle.
3. Unsaved changes are saved or safely snapshotted.
4. The outgoing panel becomes passive and pauses modality-specific playback.
5. The incoming native editor loads and restores its panel state.
6. The route updates only after the editor is ready.
7. If hydration fails, Unitlab restores the previous active panel instead of blanking the workspace.

### Current file flow

1. The user opens a work item from a dataset, Task Queue, Batch Queue detail, filtered grid, or direct link.
2. Unitlab creates multiple panel sessions for the same datasource without duplicating data or history.
3. One panel is active; the rest are read-only siblings.
4. Active edits are broadcast to siblings in real time.
5. The user can activate another panel to work from a different view, frame, page, or zoom state.
6. Saving refreshes the shared history and updates every sibling to the persisted result.

Current-file examples:

* **Image:** compare the same image at different zoom or inspection states.
* **Video:** inspect different frames of the same video while sharing annotations and downloaded frames.
* **Audio:** inspect different time regions while one waveform editor remains authoritative.
* **Text:** compare different windows of the same text while entity/relation changes remain synchronized.
* **Document:** compare different PDF pages without confusing page changes with work-item navigation.
* **Medical:** assign Axial, Sagittal, Coronal, and 3D views to separate slots with synchronized annotation state.

### Multiple files flow

1. The user selects **Multiple files** and a layout.
2. Unitlab fills the grid with the active item and neighboring items from the current visible set.
3. The visible set preserves queue, upload-session, archive, search, status, class, and assignment filters.
4. The user activates any ready panel.
5. If the item belongs to another data family, the correct editor loads within the same Workbench shell.
6. Previous/next navigation continues through the filtered work-item sequence.
7. Empty tail slots and inaccessible items appear as panel-level states rather than replacing the whole page with an error.

This mode supports mixed review, such as an image, video, PDF, and audio item in one 2×2 layout, while guaranteeing that only the selected panel is editable.

### Navigation hierarchy

Unitlab maintains three distinct navigation levels:

* **Top-center previous/next:** changes the project work item and can cross data families or move between loose items and Data Groups.
* **Panel activation:** changes which visible panel is editable without leaving the Workbench.
* **Within-item media navigation:** changes a video frame, audio time region, text window, medical slice/view, or PDF page inside the current work item.

Keeping these levels separate is essential for predictable UX. A PDF page change must never advance to another datasource, and a medical slice change must never appear as another project item.

### Grouped Workbench

A Data Group opens as one grouped Workbench whose layout is fixed by the Auto-Grouping builder. The header shows the group layout rather than the general mode/layout selector. Activating a tile never tears down the group route.

The project’s unified previous/next sequence treats each group as one work unit and excludes its member tiles from the loose-item sequence. Grouped saves remain attributable to the group.

### Start with the right page

| Decision                 | Production guidance                                                             |
| ------------------------ | ------------------------------------------------------------------------------- |
| Learn universal controls | Start with keyboard shortcuts, view settings, item state, and workflow actions. |
| Annotate one modality    | Continue to Image, Video, Text, Document & PDF, Audio, or Medical Annotation.   |
| Work across files        | Use Multimodal Annotations and the Multiview Workbench.                         |
| Improve speed            | Use AI-assisted annotation only inside the same quality contract.               |

### Operating boundary

* Saving annotation state is different from routing the task to another stage.
* Viewer navigation is different from project-item navigation.
* A missing action can be caused by role, stage, selection, resource state, or configuration.

### A production-ready handoff

An annotator can identify the active item, ontology, workflow stage, save state, navigation scope, and next valid action without leaving the task.

***

> **Explore related Unitlab capabilities:** [enterprise data annotation workflows](https://unitlab.ai/en/data-annotation) · [multimodal data annotation](https://unitlab.ai/en/multimodal-annotation)
