To ensure seamless data loading in Encord, whitelist https://app.encord.com in any 3rd party VPNs, firewalls, or URL isolators. This helps to prevent potential issues with opening your data in Encord.

Annotation and review tasks are completed in a purpose-built user interface in the Label Editor. The Label Editor interface has two modes which depend on if you are performing an annotate or a review task.

This section contains information on the Label Editor in general. More information can be found in pages relating to specific modalities:

The following video goes through the basics of annotating images in the Label Editor.

The following video goes through the basics of annotating videos in the Label Editor.

Check out our Video Tutorials page for more introductory videos!

New Label Editor

Our new Label Editor is now the default Label Editor for all. It contains several key improvements over the previous Label Editor V1:

  • Enhanced Speed and Performance: Experience a smoother workflow within the Label Editor.
  • Shape Vertices: Vertices are hidden for a cleaner interface and appear only when a shape is selected.
  • Right-click Interactions: Each shape now features a convenient right-click menu for quick access to actions.
  • Video Timeline Upgrades: Merge object tracks via the right-click menu and zoom in or out on the timeline. Tooltips appear when hovering over timeline objects.
  • New Polygon/Polyline Interactions: Add or remove vertices using clicks, and delete the last vertex with the backspace key.
  • New Bitmask Interactions: Move and copy/paste bitmasks easily. Use the Shift key to select multiple bitmasks for merging. Toggle overlap settings by right-clicking a bitmask or via Panoptic mode in the bitmask brush tool.
Label Editor V1 is deprecated and will be removed from the platform soon. If you have any concerns please contact support@enocord.com. In the meantime you can revert back to Label Editor V1 using Encord Labs.

Annotation mode

Annotation mode components:


Copy and paste labels and instances

Using the copy and paste features in the Label Editor can significantly save time and effort. Here’s how you can efficiently use these features:

  • Copy: To copy both the label and the instance, use the keyboard shortcut CMD + C on Mac or Ctrl + C on Windows.

  • Paste instance: To paste the copied instance, use CMD + V on Mac or Ctrl + V on Windows. Instances can only be pasted onto a different frame from where they were copied.

  • Paste Label: To paste just the label / shape, use CMD + Shift + V on Mac or Ctrl + Shift + V on Windows. Labels can be pasted onto any frame.


Bulk label operations

Fixing incorrect labels is an important step in producing high-quality datasets. With bulk label operations, annotators can merge labels which should really be one instance, or efficiently delete multiple labels in bulk.

Bulk label operations are accessed in the editor menu.

Merge operations

Merge one or more label objects into a single object.

  1. Select all objects to be merged in the Select objects to be merged drop-down menu.
  2. Select the target object in the Select objects to be merged into field.
  3. Click Merge.

Delete operations

Encord lets you perform bulk delete operations as follows:

Remove labels of a specific class:

  1. Select a class to delete from the Select class menu.
  2. Specify the frame range.
  3. Click the Delete button.

Delete all labels within a frame range:

  1. Navigate to the Delete all labels from range section.
  2. Set a range to delete labels from.
  3. Click Delete.

Delete labels below a specified confidence level:

  1. Navigate to the Delete labels below confidence section.
  2. Set the minimum confidence threshold. All labels with a confidence value below this threshold are deleted.
  3. Specify a range of frames to delete the specified labels from.
  4. Click Delete.

Classes

In annotation mode, the Classes section of the Label Editor shows you the available Ontology classes, both objects and classifications. You can create a new instance by either clicking the desired class, or by using the indicated instantiation hotkeys. Learn more about Ontologies in general here or learn more about the details of Ontology structure on Encord.


Instances and Frame labels

The canvas is your labeling area to annotate the instances of the Ontology classes.

  • An instance is a specific occurrence of a class. For example, if you have a class called “Car”, an instance of this class could be “Car(0)”, which might represent a specific black sedan. This single instance can appear in a single frame or a range of frames, and therefore, instances may contain multiple labels across frames. You can think of an instance as a unique object that belongs to a certain class.

  • A frame label is a frame-specific annotation of an instance. For example, the annotation of “Car(0)” on frame 201 is a label. Labels are used to annotate instances in specific frames, providing more detailed information about the instance in the context of that frame.

You can group instances of the same class together using the Group by class button.

Skip or Submit labels

Submit a task

Labels are applied in the Label Editor. Click the Submit button to submit your labels for review.

All issues need to be resolved before a task can be submitted.

Skip a task

Users have the option to skip tasks in instances where, for example, the file is blurred, or if they suspect the task was erroneously added.

When a user skips a task, it is automatically unassigned from them, and the task’s status is updated to Skipped. If another task is available, it automatically opens in the Label Editor and is assigned to the user.

  1. Click the Skip button to skip an annotation task.
  1. A dialog appears. Enter a reason for skipping the task - the reason is added as a comment to the task that annotators and reviewers can see. If no reason is entered “This task was skipped” is added by default.

View annotator instructions

The Annotator instructions button is available in the top-left corner of the Label Editor if annotation instructions are provided by the Admin or Team Manager.

To learn how to upload annotation instructions click here

Confidence score

Each instance or label is assigned a confidence score (denoted with the symbol α) that appears next to the label name.

The confidence score is a measure of a machine learning model’s certainty that a given prediction is accurate. The higher the confidence score, the more certain a model is about its prediction.

Manual labels are always assigned α = 100%, while label predictions created via models and automated methods such as interpolation will have a confidence score below 100% (α < 100%).

Models allow you to select a Minimum confidence threshold that determines the lowest confidence that label predictions can have to appear as annotations. It ranges from 0 to 1.

A Minimum confidence threshold of 0.6, as seen in the image above, states that only labels above a confidence score α = 60% will be accepted as labels.


Labels pane

The Labels pane shows all the instantiated objects and classifications for a data unit. Objects are grouped first by class, and sorted by creation time within each class, with earlier objects on top. They are named in an “ABC (0)” format, where ABC is the Ontology class and 0 is the first instance annotation.

  • A: Toggle between showing displaying all labels, or only labels in the current frame.
  • B: Show / Hide details for this instance.
  • C: The range of frames the instances appears on.
  • D: Attributes the object has and the frames they appear on.
  • E: Filter by frame range.
  • F: Sort label instances.
  • G: Search for an instance.
  • H: Show / Hide labels.
  • I: Show / Hide labels for this instance.
  • J: Additional actions. Described below.
  • K: Keyboard shortcut to create a label for this instance.
  • L:Edit attributes for this instance.
  • M: Add a new label for this instance.
  • N: Toggle auto-annotation for SAM.

Click the three dots icon to access additional actions:

Copy URL: Copies the URL for the particular object.

Copy identifier: Each object instance is automatically assigned a unique alphanumeric ID, which can be used to identify it within the project. This ID is sometimes known alternately as a feature hash, instance hash, or instance identifier. For objects and classifications, it may also be known as the object hash or classification hash. Use this button to copy the instance identifier to your clipboard — which may help in workflows using specific instances in source code or for other purposes.

Track from this frame: Initiates single object tracking. This type of automated labeling creates labels for the specified object from the current frame, according to the Single object tracking settings section in the editor settings.

Interpolate: Interpolates this object’s location for a range between specified frames. Please see our documentation on interpolation for more details.

Go to object: Navigate to the specified object in the data asset. If it is present in more than one frame, the first frame the object appears it will be shown.

Split object track: In some cases, particularly when many objects overlap, labels may be associated with the correct instance in several frames, but later become associated with a different instance. In those cases, use the Split object track feature, which will split the labels from one instance into two at the frame specified.

Change class: Use the drop-down in the modal to change the current class of an instance. You can only switch within classes of the same annotation type. For example, you cannot switch from a bounding box to a polygon.

Delete object: Delete an object from a single frame or a range of frames. To delete labels between frame ranges, move the frame slider to the desired frames, or input the From and To (exclusive) values in the relevant form. Delete actions are recorded in the User activity log. You can view the deleted objects in the Activity reports.

Attributes

The details pane allows you to modify attributes efficiently. For dynamic attributes, use the ‘Preserve chosen state’ feature. When this feature is toggled ‘ON’, any subsequent labels for that instance automatically inherit the same dynamic attribute value as the frame where ‘Preserve chosen state’ was enabled.

See our tutorial on adding attributes for a detailed guide

If you have numerous attributes, use the search bar to quickly find specific attributes or attribute values.

Instance keyboard shortcuts

The Show Instance Draw Hotkey is located at the top of the pane under the instance ID. Hover over this section to view the hotkey for creating additional labels of this instance. This method offers a more convenient way to identify the drawing hotkey than searching through the Instance and Frame Labels pane. To prevent conflicts with attribute>-setting hotkeys, ensure the details pane is closed before creating new labels for that instance.

Finally, click the frames in the frame range in blue under the Show Instance Draw Hotkey section to jump to the start and end of various frame ranges where the instance appears. The instance details pane will remain open until you either click on another instance, click Done, or press the Esc key.


Automated Labeling

Automated labeling includes several techniques to quickly create labels and classifications automatically.

For a more detailed explanation of these features, please visit our automated labeling page.
  1. Click the Automated labeling button to open the Automated labeling panel.
  2. Select the type of automated labeling you want to use.
  3. Run automated labeling for the selected objects.

Alternatively, run object tracking or interpolation on videos, image groups, and image sequences by:

  1. Right-clicking a label.
  2. Selecting Track from this frame to initiate object tracking or auto-segmentation tracking, or select Interpolate to interpolate the selected object instance.

Segment anything model (SAM)

Segment anything model (SAM) allows you to create labels around distinct features in all supported file formats.

  • Click the wand icon within the polygon class.
  • Click on the part of the frame or image you want segmented.
    • Left-click a section you want to add to your label.
    • Right-click a part of the selected area to remove it from the label.
  • Click Add label once the area you want labeled is highlighted.
A step-by-step guide for using SAM can be found here.

Edit polygons and polylines

Encord provides multiple tools to edit polygon and polyline labels after they have been created.

Move vertices

Click and drag a vertex to move it to a new location.

Adding a polygon or polyline vertex

You can add more vertices to a polygon after it has been created.

  1. Click the polygon you want to add a vertex to
  2. Click the position along the edge of the polygon you want to add a vertex. Repeat to add as many vertices as necessary.

Removing a polygon or polyline vertex

You can remove the last vertex by pressing the Backspace key.

Remove vertices from a polygon as follows:

  1. Click the polygon you want to remove vertices from
  2. Right-click a vertex to delete it

Polygon and polyline brush tool

Use the brush tool to modify the edge of a polygon or polyline in a free-hand manner.

  1. Right-click the polygon you would like to edit.
  2. Click Edit with brush or click the G hotkey. A floating brush tool menu appears.
  3. Adjust the brush size to suit your needs.
  4. Mouse over location you would like to start editing from, and click and hold to start the edit process.
  5. Drag the cursor freely to draw out the new polygon edge let go of mouse to finish editing.

Eraser tool

Use the eraser tool to remove any part of a polygon in a free-hand manner.

  1. Right-click the polygon you would like to edit.
  2. Click Edit with brush or click the G hotkey. A floating brush tool menu appears.
  3. Select the eraser tool.
  4. Adjust the brush size to suit your needs.
  5. Mouse over location you would like to start editing from, and click and hold to start the edit process.
  6. Drag the cursor freely to draw out the new polygon edge let go of mouse to finish editing.

Editor canvas interactions

Shape-specific interactions

ShapeInteractionsModalities
BitmaskAbility to move (one or multiple)All
Ability to ‘select multiple’ with Shift + clickAll
Draw using polygon ‘pen’All
Panoptic modeAll
PolygonAll
Add vertex with left-clickAll
Remove vertex with right-clickAll
PolylineAll
Add vertex with left-clickAll
Remove vertex with right-clickAll

Right-click interactions

Track from this frame refers to auto-segmentation tracking for Polygons and Bitmasks, and to object tracking for all other label shapes.
ShapeRight-click InteractionsModalities
Bounding BoxTrack from this frameVideos, image groups, and image sequences only
Bounding BoxInterpolateVideos, image groups, and image sequences only
Bounding BoxSplit object trackAll
Bounding BoxChange classAll
Bounding BoxCopy identifierAll
Bounding BoxDelete objectAll
Bounding BoxCopy URLAll
Rotatable Bounding BoxTrack from this frameVideos, image groups, and image sequences only
Rotatable Bounding BoxInterpolateVideos, image groups, and image sequences only
Rotatable Bounding BoxSplit object trackAll
Rotatable Bounding BoxChange classAll
Rotatable Bounding BoxCopy identifierAll
Rotatable Bounding BoxDelete objectAll
Rotatable Bounding BoxCopy URLAll
PolygonInterpolateAll
PolygonSplit object trackAll
PolygonChange classAll
PolygonCopy identifierAll
PolygonDelete objectAll
PolygonCopy URLAll
PolygonTrack from this frameVideos
PolygonEdit with brushAll
PolygonFreehand edge touchupAll
PolylineTrack from this frameVideos, image groups, and image sequences only
PolylineInterpolateVideos, image groups, and image sequences only
PolylineSplit object trackAll
PolylineChange classAll
PolylineCopy identifierAll
PolylineDelete objectAll
PolylineCopy URLAll
PolylineFreehand edge touchupAll
KeypointTrack from this frameVideos, image groups, and image sequences only
KeypointInterpolateVideos, image groups, and image sequences only
KeypointSplit object trackAll
KeypointChange classAll
KeypointCopy identifierAll
KeypointDelete objectAll
KeypointCopy URLAll
BitmaskInterpolateVideos, image groups, and image sequences only
BitmaskChange classAll
BitmaskCopy identifierAll
BitmaskDelete objectAll
BitmaskCopy URLAll
BitmaskSelect more bitmasks to combineAll
BitmaskTrack from this frameVideos
Object PrimitiveTrack from this frameVideos, image groups, and image sequences only
Object PrimitiveInterpolateVideos, image groups, and image sequences only
Object PrimitiveChange classAll
Object PrimitiveCopy identifierAll
Object PrimitiveDelete objectAll
Object PrimitiveCopy URLAll

Review mode

The following video goes through the basics of reviewing images in the Label Editor.

The following video goes through the basics of reviewing videos in the Label Editor.

As a reviewer, your label editor workspace will look as below. Learn how to use the features in the components illustrated below.

Review mode components


Single label review

The normal review mode displays all labels simultaneously, allowing you to quickly approve or reject many labels in bulk actions. Alternately, enter the Single label review mode by toggling the switch at the top left. The single label review mode automatically highlights the selected instance, and hides all other objects. This allows you to carefully review one instance at a time including their attributes, and quickly iterate through the different instances using the Up and Down keys on your keyboard or by clicking the appropriate buttons in the UI.

The Single label review feature can also be considered “turbo review mode,” analogous to the “turbo attribute mode” in annotation mode, because it allows the reviewer to quickly step through and review instance attributes. “Turbo attribute mode” in the editor settings can be disabled while in review mode.

Single label review settings

The default zoom level for single label review can be adjusted to suit your needs.

  1. Open the editor settings by clicking in the editor header.

  2. In the General settings section adjust the Set the default zoom level for single label view value highlighted in the screenshot below. The settings will be applied for the next selected label.

  • Initially, the default is set to 60%
  • 20% corresponds to no zoom. It’s the magnification at which the image or frame is displayed in the Label Editor.
  • To zoom in, increase the percentage value.
  • To zoom out, decrease the percentage value. The minimum value is 1%.

Report missing labels

This feature is only available for Manual QA projects.

If a reviewer determines that a label is missing entirely (as opposed to annotated incorrectly), they can use the report missing labels feature to indicate labels are missing in a given frame or image. Navigate to the frame with the missing labels and use the Report missing labels button to create a report at that frame. You can only create one missing label report per frame per review task — subsequent reports at the same frame in the same task will overwrite previous reports. Missing label reports will be sent back to the annotator via the same issues list as rejected labels.


Edit labels during review

It is sometimes faster, more convenient, and less error-prone to have reviewers make edits to annotations, instead of outright rejecting them. Rejection requires the return of the entire set of labels to the annotator.

Edit review allows reviewers to make changes to labels, remove labels, and add new labels. Approved or rejected labels cannot be edited. Only Pending labels can be edited by reviewers. New labels made by editors are automatically approved, and cannot be changed once they have been saved. Once all labels have been approved the task moves to the Complete stage.

We recommend enabling Strict review on Review blocks when configuring Workflows. Strict review allows reviewers to revert approved labels back to Pending, giving reviewers the option to make changes to new labels drawn while editing labels.

To edit labels in review mode:

  1. Click the Edit labels button.
  1. Add or remove labels, or edit existing labels as necessary using the same interface annotators use to create labels.

  2. Click the Save and return to review button to save your edits and return to review mode.

The Save and return to review button replaces the Save and Cancel buttons used in earlier versions of this feature.

Edit review is primarily optimized for use in Workflow Projects. It is available for Manual QA Projects, but lacks some functionality.

  • There is no way to edit Classifications.
  • There is no way to edit approved or rejected labels, as Strict review is not available in Manual QA Projects
  • Labels created during Edit review are not added to the Review stage and can not be seen in the Label Editor.

Pending reviews pane

All labels for review for a particular data asset assigned to the reviewer are automatically loaded into then Pending reviews pane. The labels are grouped by Ontology class.


Completed reviews pane

Completed reviews are displayed in the Completed reviews pane. You can click on specific objects to highlight them. Labels can be selected and then approved or rejected for a given instance or in bulk using the Reject and Approve buttons or the matching hotkeys, b for reject and n for approve. Approved labels appear in a green background and rejected labels appear in red.


Approve and Reject all in frame buttons

The Approve all in frame and Reject all in frame buttons take the named action without having to select a particular instance or set of instances. This speeds up workflows, particularly in images, where you can judge whether all instances are correct or not by looking at an individual frame.

The Approve all in frame and Reject all in frame buttons apply to all instances present in a frame, rather than labels. This means that all instances with labels in the current frame will have all of their labels approved or rejected.
The Approve all in frame and Reject all in frame buttons can be hidden in the general settings.

Reject and Approve buttons

To reject/approve multiple object instances across frames, select the instances, and then click the Reject or Approve button, as appropriate. Alternately, you may press b for reject and n for approve.


Change review judgement

This feature is not available for Manual QA projects.

Reviewed instances can be reverted to pending. Reverting a review allows reviewers to make adjustments to one or more instances after making their initial review.

  1. Revert labels to pending :
  • Revert an approved task to pending by clicking the green tick icon next to the instance.
  • Revert a rejected task to pending by clicking the red cross icon next to the instance.
  1. Once the reviewer completes their review, they need to click the Approve task or Reject task to finalize the review.

Controls common to both modes

The current workflow status is displayed in the top left corner of the label editor.

Editor layout

Contact support to gain access to custom editor layouts.

You can customize the default Label Editor layout by uploading a JSON file that defines your preferred arrangement. These JSON files can be added in the Project settings and are applied to all tasks in a Project.

Custom editor layouts depend on a file’s client_metadata or their DICOM tags. This means that custom editor layouts only work for files that contain client_metadata or DICOM tags. Watch the video tutorials below to learn how it fits together.

To upload an editor layout:

  1. Navigate to the Project settings.
  2. Click on Layouts.
  3. Click Upload JSON.
  4. Select the JSON file containing the layout you want the Label Editor to have.

JSON file requirements:

The JSON file must follow the JSON schema defined here. The following fields are required:

Complete example

1

Add client metadata to files

Editor layouts are based on DICOM tags for DICOM files or on client_metadata for all other use cases. We provide templates for common mammography layouts based on DICOM tags here.

This example uses client_metadata. The following SDK script can be used to add client metadata to specific data units in a Dataset.

from encord import EncordUserClient
from encord.client import DatasetAccessSettings

# Instantiate Encord client by substituting the path to your private key
user_client = EncordUserClient.create_with_ssh_private_key(
                ssh_private_key_path="<private_key_path>",
            )


# Specify a Dataset to read or write metadata to
dataset = user_client.get_dataset("<dataset_hash>")

# Fetch the Dataset's metadata
dataset.set_access_settings(DatasetAccessSettings(fetch_client_metadata=True))

# Add your file names and client metadata here
layouts = {
  'Image1.jpg': {"encord-EditorGridPosition": "A", 'encord-LayoutGroup': '1'},
  'Image2.jpg': {"encord-EditorGridPosition": "B", 'encord-LayoutGroup': '1'},
  'Image3.jpg': {"encord-EditorGridPosition": "A", 'encord-LayoutGroup': "2"},
  'Image4.jpg': {"encord-EditorGridPosition": "B", 'encord-LayoutGroup': '2'},
  'Image5.jpg': {"encord-EditorGridPosition": "A", 'encord-LayoutGroup': '1'},
  'Image6.jpg': {"encord-EditorGridPosition": "B", 'encord-LayoutGroup': '1'},
  'Image7.jpg': {"encord-EditorGridPosition": "A", 'encord-LayoutGroup': "2"},
  'Image8.jpg': {"encord-EditorGridPosition": "B", 'encord-LayoutGroup': '2'},
  'Image9.jpg': {"encord-EditorGridPosition": "A", 'encord-LayoutGroup': "1"},
  'Image10.jpg': {"encord-EditorGridPosition": "B", 'encord-LayoutGroup': '1'},
  'Image11.jpg': {"encord-EditorGridPosition": "A", 'encord-LayoutGroup': "2"},
  'Image12.jpg': {"encord-EditorGridPosition": "B", 'encord-LayoutGroup': '2'},
}

for dr in dataset.data_rows:
  dr.client_metadata = layouts[dr['data_title']]
  print (dr.title)
  print (dr.client_metadata)
  dr.save()
2

Create a JSON file

Create a JSON for specifying the editor layout that suits your needs.

In the JSON file below:

  • The grid arrangement is configured to display two files side by side in the Label Editor.

  • The gridContent section specifies that tasks in either position (0 or 1) can have client metadata values for encord-EditorGridPosition set to either A or B.

  • The topLevelGridFilter is defined as encord-LayoutGroup, meaning tasks with matching encord-LayoutGroup metadata values are displayed together in the Label Editor, ensuring they appear side by side when they share the same encord-LayoutGroup values.

    {
      "grid": [
        [0],
        [1]
      ],
      "gridContent": {
        "0": {
          "client_metadata_query": {
            "or_conditions": [
              {
                "key": "encord-EditorGridPosition",
                "operator": "=",
                "value": "A"
              },
              {
                "key": "encord-EditorGridPosition",
                "operator": "=",
                "value": "B"
              }
            ]
          }
        },
        "1": {
          "client_metadata_query": {
            "or_conditions": [
              {
                "key": "encord-EditorGridPosition",
                "operator": "=",
                "value": "A"
              },
              {
                "key": "encord-EditorGridPosition",
                "operator": "=",
                "value": "B"
              }
            ]
          }
        }
      },
      "topLevelGridFilter": {
        "client_metadata": {
          "key": "encord-LayoutGroup",
          "operator": "="
        }
      },
      "$schema": "https://raw.githubusercontent.com/encord-team/Annotate/main/editor-layouts/editor_layout_schema.json"
    }
    
3

Create a JSON file

Upload the JSON file to your Project in Encord.

  1. Navigate to the Project settings.
  2. Click on Layouts.
  3. Click Upload JSON.
  4. Select the JSON file containing the layout you want the Label Editor to have.
4

Create a JSON file

Open any task in the task queue of your Project.

The JSON file in this example results in the following Label Editor layout.

We provide an end-to-end walkthroughs for how to set up ustom editor layouts using :

Editor menu

Open the editor menu by clicking the menu icon in the top left corner of the Label Editor.

The editor menu contains the following controls:

  • Return to Project - Returns the user to the Project navigation.
  • Save changes - Saves the current state of all labels.
  • View - Allows users to change what information is displayed next to all labels.
  • Bulk label operations (annotation mode only) - Allows the user to perform actions on many labels at once.
  • Automated labeling (annotation mode only) - Lets the user choose between several automated labeling techniques.
  • Dark mode - Toggle dark mode on and off.
  • Keyboard shortcuts - Displays a full list of keyboard shortcuts.
  • Editor settings - Opens the Editor settings.

Editor header

The Editor header at the top-right of the navigation bar contains buttons and menu items to perform labeling activities as well as manage general app settings and notifications.

IconNameDescription
HelpLinks to the: quick start guide, documentation, learning hub, and Encord support team.
NotificationsShows the current status and history of actions taken in the application. This includes uploading datasets, training models, and exporting labels.
ShareCopies the URL of the asset currently being labeled or reviewed.
Save labelsManually saves labels on the Encord server.
Label editor settingsSettings controlling your labeling and reviewing experience.
CommentsAdd and view comments pertaining to a frame, or the entire data unit.
IssuesShows any issues with submitting the current task, such as any objects or classifications marked as Required.

Quick toolbar

A toolbar with handy tools to:

Remove polygon vertices (the scissors tool) is currently not available in review or review-edit mode.
Click the zoom icon again to disable zoom.

Rotate the label editor

Click the Rotate toolbar icon on the quick toolbar to bring up a pop-up that enables you to rotate the label editor by using the slider, as shown below.

Click the Rotate 90 degrees icon to rotate the editor in increments of 90 degrees.

Pixelated scaling

The Pixelated scaling feature enhances the visibility of individual pixels in an image or frame by disabling the browser’s automatic edge smoothing. This increased pixel clarity aids annotators in creating precise, pixel-perfect annotations, thereby improving their annotation accuracy, especially when zooming into an image.

Pixelated Scaling turned onPixelated Scaling turned off

Enable Pixelated scaling by selecting the Adjust filters icon ()in the Quick toolbar and enabling the Pixelated scaling checkbox, as shown below.

Pixelated scaling is a browser-specific feature. The table below shows which types of files Pixelated scaling works for Firefox and Chrome.

File typeChromeFirefox
Image
Image group
Video
Image sequence

Media navigation controls

The video frame slider lets you quickly scroll through frames in a video asset. Below the frame slider are a range of controls to let you play, skip and navigate through media. Notice that the navigation controls are not displayed in single images files, as well as any media with only 1 frame.

Icon descriptions

The Time and Frame rate information for each frame is displayed in the far lower right corner.


Comments

Comments can be added during the annotation or review stages and are visible to any user accessing the data unit. All comments are visible in the comments pane, where any user can add a reply.

You can add comments to:

Task comments

Task comments relate to the entire task / data unit. For example, a comment relating to the resolution of a video is a task comment.

To add a comment to the entire task:

  1. Open the comments pane.
  2. Click + New comment.
  3. In the Apply to section, ensure that Entire file is selected.
  4. Type your comment.
  5. Press Enter on your keyboard to add the comment.

To reply to a frame comment:

  1. Open the comments pane.
  2. Click Reply on the comment you want to reply to.
  3. Type the reply you want to add.
  4. Press the Enter key to add the reply.

Frame comments

Frame comments relate to the entire frame. For example, comments relating to all annotations on a particular frame are frame comments.

  1. Open the comments pane.
  2. Click + New comment.
  3. In the Apply to section, ensure that Current frame is selected.
  4. Type your comment.
  5. Press Enter on your keyboard to add the comment.

To reply to a frame comment:

  1. Open the comments pane.
  2. Click Reply on the comment you want to reply to.
  3. Type the reply you want to add.
  4. Press the Enter key to add the reply.

In-frame comments

In-frame comments can be added anywhere on a frame. For example, a comment regarding a particular object label is an in-frame comment. Comments cannot be added directly on an object label.

To add a comment to a specific location:

  1. Right-click the location you want to add the comment and select Add comment.
  2. Type your comment.
  3. Press the Enter key to add the comment. The comment icon now indicates in-frame comment.

To reply to an in-frame comment:

  1. Click the comment icon to open the in-frame comment. =
  2. Click Reply.
  3. Type the reply you want to add.
  4. Press the Enter key to add the reply.

Comments pane

The comments pane allows you to see all comments on a data unit and to filter comments by type. Access the comments pane by clicking the icon, located in the top right corner of the Label Editor.

The symbols to the left of each comment imply whether the comment pertains to a particular frame, or the entire task.

IconMeaning
This comment applies to the entire task
This comment applies to a particular frame
This comment applies to a particular location within a frame
The numbers on frame-level and location specific comments show which frame the comment applies to. Click on the number to open up the frame in the Label Editor.

To filter comments by type, click the settings icon in the comments pane and select the type of comment you want to display.


Issues drawer

The Issues drawer will show any outstanding issues the user needs to resolve before moving on to the next task. It is accessed by clicking the icon on the editor header. The red number next to the icon indicates the number of issues that need to be resolved.

Issues include objects and classifications that have been marked as Required in the ontology.

Resolving issues

To resolve all outstanding issues follow the steps below:

  1. Click the Issues icon to open the issues drawer.
  2. Click Create.
  3. Create the Required object or classification that’s missing and click Confirm.
  4. Re-open the Issues drawer and resolve the next issue.
See our documentation on objects and classifications for more information on these topics.

Editor lock

The “Editor lock” is a safety feature we implemented to prevent several people making changes to the same file - annotators labeling, or reviewers reviewing the same data unit.

A warning is triggered in two cases:

  1. When you have the same task open in two different tabs or browser windows:
  1. When a different user is editing the same task:

Editor settings

All users can configure the Label Editor, and configure the Label Editor to their specific needs. This includes changing the way elements display, drawing settings, and settings related to automated labeling.

A user’s settings persist and do not reset at the end of a session.

Editor settings are divided into several sections which can be filtered using the search bar:

Use the search bar at the top of the Editor settings to search for specific settings, or keywords.

Editor settings sections

Data details

The Data details section displays information about the asset currently open for annotation, or review. This information is gotten from the data itself, and is not available for direct manipulation. We use this section to provide you with valuable information about the data you are working on, including if we may have detected any possible issues with the data encoding.

SettingDescription
Data titleThe title of the file currently open in the Label Editor.
Data typeThe type of data unit currently open in the Label Editor.
DimensionsThe size of the image or frame currently open in the Label Editor.
Frames per secondfrequently abbreviated FPS, this is the number of frames, or images, per second in a video. Higher FPS means smoother playback. This value is only valid for videos.
Browser compatibilitySome videos may have FPS or video encoding issues synchronizing drawn labels with frames in modern browsers. You can read more about supported videos here, and learn more about frame synchronization issues here and in our documentation here.

General settings

Auto-save interval

To prevent accidentally losing work, the Label Editor automatically saves your work. Use this setting to control how often labels are automatically saved. The minimum time interval for autosaving is 15 seconds and maximum is 600 seconds. By default, annotations are saved every 120 seconds.

Display bulk Approve/Reject buttons

A toggle show or hide the buttons to approve all, or reject all instances present in the frame.

Invert mouse wheel zoom direction

By default, scrolling up will zoom out and scrolling down will zoom in. Toggle this switch to invert the scroll-zoom mapping.

Display timestamps

A toggle to display timestamps instead of frame numbers for:

Turbo mode

Turbo mode simplifies the standard annotation workflow, enabling labelers to rapidly assign or confirm attributes. Activate turbo mode and choose an instance from the top-left dropdown menu to set the instance and its relevant attributes.

In turbo mode, the autozoom feature automatically focuses the camera on the active instance as you browse through them. You can adjust the zoom manually to get a better view of the instance’s context. The view auto-zooms again when moving to another instance.

Enable turbo mode:

  1. Open the editor settings.
  2. Use the search bar to search for Turbo mode.
  3. Enable the Turbo mode toggle.

Frame skip interval

The frame skip interval determines the number of frames skipped when using the forward and backward frame-skip buttons. The setting allows you to include custom numbers of frame skip intervals that are available in the video playback controls.

Show skip to next annotation button

For long videos with sparsely labeled frames, sometimes it helps to quickly jump between frames with labels. Toggle on the skip to next annotation buttons to add an extra set of playback controls which enable navigation straight to the next frame, either forward or backward, with labels. This will apply for objects and classifications. The screenshot below shows the video playback controls with the toggle off and on, respectively.

For lengthy videos that have labels on few frames, enabling the skip to next annotation buttons adds extra playback controls. These controls allow you to move forwards or backwards between labeled frames (for both objects and classifications).

Display data title

A toggle to show or hide the data unit title in the label editor.

Expand classifications

A toggle to automatically expand all classifications in the Label Editor. Enabling auto-expanded classifications provides visibility into the hotkeys for all classifications and answers.

We recommend expanding when using a hotkey driven workflow.

Label display settings

The Label display section of the Label editor settings contains the following components:

Display object names

The Display object names toggle allows you to display the names of annotation objects in the Label Editor.

Display object hash

The Display object hash toggle allows you to display the label hash (ID) of annotation objects in the Label Editor.

Display object classifications

The Display object classifications toggle allows you to display attributes of annotation objects in the Label Editor.

Object label font size

The Object label font size allows you to set the font size (in px) of all Label display settings.


Drawing settings

The Drawing settings section of the Label editor settings contains the following components:

Handle size

Adjust the size of corners, vertices, and keypoints. Larger vertices are easier to spot but may disrupt visibility of the surrounding areas. The possible range is from 1 pixel to 10 pixels, but handles cannot be disabled entirely.

Object opacity

Adjust the opacity of object labels to balance label visibility with the clarity of the underlying image. Higher opacity makes labels more noticeable but can obscure the labeled content, especially if labels overlap. Lower opacity might make labels less visible during a quick scan.

The setting can range from 1% to 100%. 1% is essentially transparent, and 100% is completely opaque.

Selected object opacity

Adjust the opacity for the selected instance, calculated as a multiplier of the value defined in object opacity. The opacity multiplier can range from 1x (same as all other instances) to 10x.

Primitive keypoint sensitivity

Adjust this setting to control the necessary precision when adjusting primitive keypoint positions. Low values require high precision — you must click exactly over the keypoint in question in order to adjust it. High values give the opposite behavior — you can select and move primitive keypoints even while the cursor is a good distance from the point in question.

Possible values range from a minimum of 1.00 and maximum of 10.00.

Segment anything RDP parameter

Set the RDP parameter for the Segment-anything Model (SAM).

Drawing line aides

Aids in creating more accurate labels by adding crosshairs on the canvas to indicate where a label is drawn.

Freehand drawing & Polygon coarseness

Use freehand drawing to draw a polygon or polyline as you move the mouse, without explicitly having to click to place each vertex. The coarseness controls the spacing between two vertices. A low Polygon coarseness allows for high resolution polygons, but creates high vertex counts.

  1. Click once to start drawing your label.
  2. Move the cursor to draw the polygon or polyline
  3. Click again to complete your label.
To avoid possible performance issues with large polygons, set the coarseness only as fine as necessary to accurately define the desired segmentation.

Show polyshape angles

Polygon and polyline angles can be displayed in the label editor to provide useful insights into your labels.

  1. Open the label editor Settings by clicking on the editor header.
  2. Navigate to the Drawing settings section and enable the Show polyshape angles toggle. Click back on to the slice to display the angles.
  3. Draw a polygon or polyline as you usually would.
Enabling the toggle will display angles for any existing polyshapes.

Permanent drawing (new instances)

Continue drawing new instances without having to press the drawing hotkey for a given ontology category. After drawing an instance of a given category, the editor will stay on the same frame and immediately prompt you to create another instance of the same category. It’s normally used to create many instances of a certain class in a given frame.

Useful in semi-automated workflows where the annotator labels many instances in certain keyframes and then uses tracking or interpolation features to fill in the remainder. The video below shows the difference between creating many objects with Permanent drawing (new instances) toggled off and then on.

Continue creating new instances in the same Ontology category without reselecting the drawing hotkey. After drawing an instance, the editor remains on the same frame, ready for you to add another instance of the same category.

Permanent drawing (new instances) is beneficial in semi-automated workflows where an annotator labels multiple instances of a class in a single frame and then employs tracking or interpolation for the rest.

Permanent drawing (existing instances)

Continue drawing labels of the same instance without pressing the drawing hotkey every time for the given object instance. After creating a label of an already existing instance, the Label Editor automatically advances forward the currently specified frame skip interval and prompts for the creation of a new label of that instance on the new frame. Accelerate workflows which create many labels for specific instances throughout a data asset and also makes it easy to apply dynamic attributes through the Preserve chosen state functionality. The following video showcases the difference in creating multiple labels of the same instance with the Permanent drawing (existing instances) on and off.

Enable Permanent drawing (existing instances) to continue labeling the same instance without repeatedly pressing the drawing hotkey. After labeling an existing instance, the Label Editor automatically moves forward by the set frame skip interval, prompting you to label that instance on the new frame.

Skeleton points

This toggles the display of the individual primitive keypoint names. Since object primitives may have many points in complex shapes, displaying the names can help ensure each point is placed appropriately and that the entire annotation is oriented correctly.

Learn how to work with Skeletons here

Interpolation auto adjustments

Enabling this toggle ensures that only labels with a confidence score (α) of 99% are overwritten in successive interpolations, while manual labels (α = 100%) are kept and serve as key frames.


Object tracking

Number of frames to predict

Specify how many subsequent frames the object tracking should continue from the current frame. For example, if you start on frame 50, and set Number of frames to predict to 50, the tracker attempts to predict labels on frames up to and including frame 100.

Tracking model

Choose between the Standard and Advanced tracking models to track objects across a range of frames.

The choice of setting determines which algorithm is run when using the Shift + T keyboard shortcut.


Keyboard shortcuts

The words ‘keyboard shortcuts’ and ‘hotkeys’ are used interchangeably and refer to the same concept.
A full list of keyboard shortcuts can be found in the Label Editor. Use Control + Shift + K to open the full list of shortcuts.
Windows and Mac may have different keyboard shortcuts. Use Control + Shift + K to open the full list of shortcuts

Use the following hotkeys to speed up common or useful operations.

Review mode

ActionShortcutConfigurable?
Approve selected labelNYes
Reject selected labelBYes
Approve all labelsNo default hotkey. Must be configured.Yes
Reject all labelsNo default hotkey. Must be configured.Yes
Toggle review edit modeCtrl + ENo
Mark as not labelled + YNo
Mark as in progress + UNo
Mark as labelled + LNo
Mark as review required + ONo
Mark as reviewed + PNo
Turbo attribute modeCtrl + + TNo
Toggle auto zoom (Turbo review mode)Ctrl + + YNo
Review modeCtrl + + RNo

Single label review:

ActionHotkeyConfigurable?
Go to next labelYes
Go to previous labelYes
PreviousNo
NextNo

General

ActionShortcut
SaveCtrl + S
Submit task⇧ + Enter
Shortcuts menuCtrl + ⇧ + K
Next
Previous
ApproveN
RejectB
Next frame
Previous frame
Play / PauseSpace
Copy (Mac)⌘ + C
Copy (Windows)Ctrl + C
Paste (Mac)⌘ + V
Paste (Windows)Ctrl + V
Special paste (Mac)⌘ + ⇧ + V
Special paste (Windows)Ctrl + ⇧ + V
DeleteBackspace
Delete selected object from frame⇧ + D
Select all (Mac)Ctrl + A
Select all (Windows)Alt + Ctrl + A
CompleteEnter
CancelEsc
Change class typeC
Track selected object from frame⇧ + T
Interpolate selected object from frame⇧ + I
Undo (Mac)⌘ + Z
Undo (Windows)Ctrl + Z
Redo (Mac)⌘ + ⇧ + Z
Redo (Windows)Ctrl + ⇧ + Z
Drag image (Windows)Ctrl + Click and drag
Drag image (Mac) + Click and drag

Keyframes:

ActionShortcut
Add keyframe⇧ + A
Delete keyframe⇧ + D
Previous keyframe⇧ + ←
Next keyframe⇧ + →

Annotate mode

Common Actions:

ActionShortcut
Permanent drawingCtrl + ⇧ + P
Freehand drawingD
SAM segmentationOntology hotkey + Shift + A
Classification Ranges:
ActionShortcut
Add rangeN
Save rangeM
Set to this frameX
Set to this frame & saveZ
Set start to this frameC
Set end to this frameV

Draw Polygon Mode:

ActionShortcut
CancelEsc
CompleteEnter
Select brush toolG
Select eraserH
Increase brush size[
Decrease brush size]
Add vertexA
Remove vertexS
Edit vertexF
Brush toolG

Draw Bitmask Mode:

ActionShortcut
CancelEsc
CompleteEnter
Select brushF
Increase brush size]
Decrease brush size[
Select eraserH
Select eyedrop pickerJ
Toggle threshold modeG

DICOM specific operations:

ActionHotkey
Windowing modificationAlt + W / Option + W
Measurement tool Alt + M / Option + M
Measurement tool Alt + M / Option + M

WACOM tablet support

Our Label Editor fully supports Wacom tablets and pens. You get the best experience if you enable freehand drawing mode.

Label Editor V1

Label Editor V1 is now deprecated, and we strongly recommend using the new Label Editor. All functionality found in Label Editor V1 is also available in the new Label Editor.

The following actions vary significantly between the legacy Label Editor V1 and the new Label Editor. To see how to perform these in the new Label Editor, see our documentation here.

Adding a polygon vertex - Label Editor V1

To add more vertices to a polygon after it has been created:

  1. Click the polygon you want to add a vertex to
  2. Click the Add vertex icon in the floating window that appears, or use the A hotkey to activate ‘Add vertex mode’
  3. Move the mouse, which should now be in a ’+’ icon, over the edge where you wish to add a vertex. The edge in question should highlight indicating you’ve placed the mouse correctly. Click to place a vertex
  4. Continue placing vertices until you’re satisfied. Press A or click the Add vertex icon on the floating toolbar to turn off add vertex mode

Removing a polygon or polyline vertex - Label Editor V1

To remove vertices from a polygon::

  1. Click on the polygon you want to remove a vertex from.
  2. Click the Remove vertex icon in the toolbar that appears, or use the S hotkey to activate ‘Remove vertex mode’.
  3. Move the cursor to the vertex you want to remove. The cursor should have a ‘cancel’ icon attached.
  4. Click the vertex you want to remove.
  5. Continue removing any vertices until you are satisfied.
  6. Click the icon from step 2 again, or press the S hotkey again to exit ‘Remove vertex mode’.

Freehand edge touchup - Label Editor V1

If you need to modify the edge of a polygon to account for complicated shapes or other requirements, the freehand edge touchup feature allows you edit the edge of the polygon in a free-hand manner, from one vertex to another.

If you need to edit your shape along the edge of the polygon, in between vertices, use the polygon brush tool instead.

To use freehand edge touchup:

  1. Click the polygon you would like to edit.
  2. Click the Freehand edge touchup icon in the floating toolbar that appears, or use the F hotkey to activate ‘freehand edge touchup’ mode.
  3. Mouse over the vertex you would like to start editing from, and click to start the edit process.
  4. Drag the cursor freely to draw out the new polygon edge. Navigate the cursor to the pre-existing vertex you want to finish on, and click to finalize the new edge boundary.