Label Editor
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.
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.
Annotation mode
Annotation mode components:
- A. Editor menu
- B. Quick toolbar
- C. Classes
- D. Instances and Frame labels
- E. Automated labeling
- F. Editor timeline (for videos and image sequences only)
- G. Annotation canvas: displays the media asset and provides interface for drawing and editing labels.
- H. Editor header
- I. Skip or Submit
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.
- Select all objects to be merged in the Select objects to be merged drop-down menu.
- Select the target object in the Select objects to be merged into field.
- Click Merge.
Delete operations
Encord lets you perform bulk delete operations as follows:
Remove labels of a specific class:
- Select a class to delete from the Select class menu.
- Specify the frame range.
- Click the Delete button.
Delete all labels within a frame range:
- Navigate to the Delete all labels from range section.
- Set a range to delete labels from.
- Click Delete.
Delete labels below a specified confidence level:
- Navigate to the Delete labels below confidence section.
- Set the minimum confidence threshold. All labels with a confidence value below this threshold are deleted.
- Specify a range of frames to delete the specified labels from.
- 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.
Skip or Submit labels
Submit a task
Labels are applied in the Label Editor. Click the Submit button to submit your labels for review.
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.
- Click the Skip button to skip an annotation task.
- 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.
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.
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.
- models must be created and trained before use.
- Object tracking and interpolation do not require set up or training, and are always available.
- Click the Automated labeling button to open the Automated labeling panel.
- Select the type of automated labeling you want to use.
- Run automated labeling for the selected objects.
Alternatively, run object tracking or interpolation on videos, image groups, and image sequences by:
- Right-clicking a label.
- 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.
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.
- Click the polygon you want to add a vertex to
- 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:
- Click the polygon you want to remove vertices from
- 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.
- Right-click the polygon you would like to edit.
- Click Edit with brush or click the G hotkey. A floating brush tool menu appears.
- Adjust the brush size to suit your needs.
- Mouse over location you would like to start editing from, and click and hold to start the edit process.
- 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.
- Right-click the polygon you would like to edit.
- Click Edit with brush or click the G hotkey. A floating brush tool menu appears.
- Select the eraser tool.
- Adjust the brush size to suit your needs.
- Mouse over location you would like to start editing from, and click and hold to start the edit process.
- Drag the cursor freely to draw out the new polygon edge let go of mouse to finish editing.
Editor canvas interactions
Shape-specific interactions
Shape | Interactions | Modalities |
---|---|---|
Bitmask | Ability to move (one or multiple) | All |
Ability to ‘select multiple’ with Shift + click | All | |
Draw using polygon ‘pen’ | All | |
Panoptic mode | All | |
Polygon | All | |
Add vertex with left-click | All | |
Remove vertex with right-click | All | |
Polyline | All | |
Add vertex with left-click | All | |
Remove vertex with right-click | All |
Right-click interactions
Shape | Right-click Interactions | Modalities |
---|---|---|
Bounding Box | Track from this frame | Videos, image groups, and image sequences only |
Bounding Box | Interpolate | Videos, image groups, and image sequences only |
Bounding Box | Split object track | All |
Bounding Box | Change class | All |
Bounding Box | Copy identifier | All |
Bounding Box | Delete object | All |
Bounding Box | Copy URL | All |
Rotatable Bounding Box | Track from this frame | Videos, image groups, and image sequences only |
Rotatable Bounding Box | Interpolate | Videos, image groups, and image sequences only |
Rotatable Bounding Box | Split object track | All |
Rotatable Bounding Box | Change class | All |
Rotatable Bounding Box | Copy identifier | All |
Rotatable Bounding Box | Delete object | All |
Rotatable Bounding Box | Copy URL | All |
Polygon | Interpolate | All |
Polygon | Split object track | All |
Polygon | Change class | All |
Polygon | Copy identifier | All |
Polygon | Delete object | All |
Polygon | Copy URL | All |
Polygon | Track from this frame | Videos |
Polygon | Edit with brush | All |
Polygon | Freehand edge touchup | All |
Polyline | Track from this frame | Videos, image groups, and image sequences only |
Polyline | Interpolate | Videos, image groups, and image sequences only |
Polyline | Split object track | All |
Polyline | Change class | All |
Polyline | Copy identifier | All |
Polyline | Delete object | All |
Polyline | Copy URL | All |
Polyline | Freehand edge touchup | All |
Keypoint | Track from this frame | Videos, image groups, and image sequences only |
Keypoint | Interpolate | Videos, image groups, and image sequences only |
Keypoint | Split object track | All |
Keypoint | Change class | All |
Keypoint | Copy identifier | All |
Keypoint | Delete object | All |
Keypoint | Copy URL | All |
Bitmask | Interpolate | Videos, image groups, and image sequences only |
Bitmask | Change class | All |
Bitmask | Copy identifier | All |
Bitmask | Delete object | All |
Bitmask | Copy URL | All |
Bitmask | Select more bitmasks to combine | All |
Bitmask | Track from this frame | Videos |
Object Primitive | Track from this frame | Videos, image groups, and image sequences only |
Object Primitive | Interpolate | Videos, image groups, and image sequences only |
Object Primitive | Change class | All |
Object Primitive | Copy identifier | All |
Object Primitive | Delete object | All |
Object Primitive | Copy URL | All |
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
- A. Editor menu
- B. Single label review toggle
- C. Quick toolbar
- D. Pending reviews pane
- E. Completed reviews pane
- F. Reject and Approve buttons
- G. Editor timeline (for videos and image sequences only)
- H. Editor header
- I. Edit labels during review
- J. Approve and Reject all in frame buttons
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.
Single label review settings
The default zoom level for single label review can be adjusted to suit your needs.
-
Open the editor settings by clicking in the editor header.
-
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
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.
To edit labels in review mode:
- Click the Edit labels button.
-
Add or remove labels, or edit existing labels as necessary using the same interface annotators use to create labels.
-
Click the Save and return to review button to save your edits and return to review mode.
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.
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
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.
- 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.
- 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
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:
- Navigate to the Project settings.
- Click on Layouts.
- Click Upload JSON.
- 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
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.
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 forencord-EditorGridPosition
set to eitherA
orB
. -
The
topLevelGridFilter
is defined asencord-LayoutGroup
, meaning tasks with matchingencord-LayoutGroup
metadata values are displayed together in the Label Editor, ensuring they appear side by side when they share the sameencord-LayoutGroup
values.
Create a JSON file
Upload the JSON file to your Project in Encord.
- Navigate to the Project settings.
- Click on Layouts.
- Click Upload JSON.
- Select the JSON file containing the layout you want the Label Editor to have.
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.
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.
Icon | Name | Description |
---|---|---|
Help | Links to the: quick start guide, documentation, learning hub, and Encord support team. | |
Notifications | Shows the current status and history of actions taken in the application. This includes uploading datasets, training models, and exporting labels. | |
Share | Copies the URL of the asset currently being labeled or reviewed. | |
Save labels | Manually saves labels on the Encord server. | |
Label editor settings | Settings controlling your labeling and reviewing experience. | |
Comments | Add and view comments pertaining to a frame, or the entire data unit. | |
Issues | Shows any issues with submitting the current task, such as any objects or classifications marked as Required. |
Quick toolbar
A toolbar with handy tools to:
- Rotate the label editor.
- Adjust filters; contrast, brightness, gamma, and pixelated scaling.
- Remove polygon vertices.
- Add comments to a frame or image.
- Quickly center an image.
- Zoom in and out.
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.
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 on | Pixelated 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 type | Chrome | Firefox |
---|---|---|
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:
- Open the comments pane.
- Click + New comment.
- In the Apply to section, ensure that Entire file is selected.
- Type your comment.
- Press Enter on your keyboard to add the comment.
To reply to a frame comment:
- Open the comments pane.
- Click Reply on the comment you want to reply to.
- Type the reply you want to add.
- 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.
- Open the comments pane.
- Click + New comment.
- In the Apply to section, ensure that Current frame is selected.
- Type your comment.
- Press Enter on your keyboard to add the comment.
To reply to a frame comment:
- Open the comments pane.
- Click Reply on the comment you want to reply to.
- Type the reply you want to add.
- 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:
- Right-click the location you want to add the comment and select Add comment.
- Type your comment.
- Press the Enter key to add the comment. The comment icon now indicates in-frame comment.
To reply to an in-frame comment:
- Click the comment icon to open the in-frame comment. =
- Click Reply.
- Type the reply you want to add.
- 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.
Icon | Meaning |
---|---|
This comment applies to the entire task | |
This comment applies to a particular frame | |
This comment applies to a particular location within a frame |
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:
- Click the Issues icon to open the issues drawer.
- Click Create.
- Create the Required object or classification that’s missing and click Confirm.
- Re-open the Issues drawer and resolve the next issue.
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:
- When you have the same task open in two different tabs or browser windows:
- 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.
Editor settings are divided into several sections which can be filtered using the search bar:
- Data details: Details relating to the file currently open in the Label Editor.
- General: General interactions with the Label Editor.
- Label display: Toggle elements to show or hide those elements within the Label Editor.
- Drawing: Control how labels are drawn.
- Object tracking: Settings controlling object tracking.
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.
Setting | Description |
---|---|
Data title | The title of the file currently open in the Label Editor. |
Data type | The type of data unit currently open in the Label Editor. |
Dimensions | The size of the image or frame currently open in the Label Editor. |
Frames per second | frequently 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 compatibility | Some 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
- Set the default zoom level for single label review
- Display bulk Approve/Reject buttons
- Invert mouse wheel zoom direction
- Display timestamps
- Turbo mode
- Frame skip interval
- Enable skip to next annotation buttons
- Display image title
- Expand classifications
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:
- Object and classification instances.
- Attributes on the editor timeline
- Consensus review.
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.
Enable turbo mode:
- Open the editor settings.
- Use the search bar to search for Turbo mode.
- 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.
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.
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:
- Polygon vertex size
- Object opacity
- Selected object opacity
- Primitive keypoint sensitivity
- Drawing line aides
- Freehand drawing & Polygon coarseness
- Show polyshape angles
- Permanent drawing (new instances)
- Permanent drawing (existing instances
- Object primitive points
- Interpolation auto adjustments
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.
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.
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.
- Click once to start drawing your label.
- Move the cursor to draw the polygon or polyline
- Click again to complete your label.
Show polyshape angles
Polygon and polyline angles can be displayed in the label editor to provide useful insights into your labels.
- Open the label editor Settings by clicking on the editor header.
- Navigate to the Drawing settings section and enable the Show polyshape angles toggle. Click back on to the slice to display the angles.
- Draw a polygon or polyline as you usually would.
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.
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 Standard model launches the standard object tracking algorithm which runs faster but is less accurate.
- The Advanced model runs auto-segmentation tracking which runs slower but is much more accurate.
The choice of setting determines which algorithm is run when using the Shift + T keyboard shortcut.
Keyboard shortcuts
Use the following hotkeys to speed up common or useful operations.
Review mode
Action | Shortcut | Configurable? |
---|---|---|
Approve selected label | N | Yes |
Reject selected label | B | Yes |
Approve all labels | No default hotkey. Must be configured. | Yes |
Reject all labels | No default hotkey. Must be configured. | Yes |
Toggle review edit mode | Ctrl + E | No |
Mark as not labelled | ⇧ + Y | No |
Mark as in progress | ⇧ + U | No |
Mark as labelled | ⇧ + L | No |
Mark as review required | ⇧ + O | No |
Mark as reviewed | ⇧ + P | No |
Turbo attribute mode | Ctrl + ⇧ + T | No |
Toggle auto zoom (Turbo review mode) | Ctrl + ⇧ + Y | No |
Review mode | Ctrl + ⇧ + R | No |
Single label review:
Action | Hotkey | Configurable? |
---|---|---|
Go to next label | ↑ | Yes |
Go to previous label | ↓ | Yes |
Previous | ↓ | No |
Next | ↑ | No |
General
Action | Shortcut |
---|---|
Save | Ctrl + S |
Submit task | ⇧ + Enter |
Shortcuts menu | Ctrl + ⇧ + K |
Next | ↑ |
Previous | ↓ |
Approve | N |
Reject | B |
Next frame | → |
Previous frame | ← |
Play / Pause | Space |
Copy (Mac) | ⌘ + C |
Copy (Windows) | Ctrl + C |
Paste (Mac) | ⌘ + V |
Paste (Windows) | Ctrl + V |
Special paste (Mac) | ⌘ + ⇧ + V |
Special paste (Windows) | Ctrl + ⇧ + V |
Delete | Backspace |
Delete selected object from frame | ⇧ + D |
Select all (Mac) | Ctrl + A |
Select all (Windows) | Alt + Ctrl + A |
Complete | Enter |
Cancel | Esc |
Change class type | C |
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:
Action | Shortcut |
---|---|
Add keyframe | ⇧ + A |
Delete keyframe | ⇧ + D |
Previous keyframe | ⇧ + ← |
Next keyframe | ⇧ + → |
Annotate mode
Common Actions:
Action | Shortcut |
---|---|
Permanent drawing | Ctrl + ⇧ + P |
Freehand drawing | D |
SAM segmentation | Ontology hotkey + Shift + A |
Classification Ranges: |
Action | Shortcut |
---|---|
Add range | N |
Save range | M |
Set to this frame | X |
Set to this frame & save | Z |
Set start to this frame | C |
Set end to this frame | V |
Draw Polygon Mode:
Action | Shortcut |
---|---|
Cancel | Esc |
Complete | Enter |
Select brush tool | G |
Select eraser | H |
Increase brush size | [ |
Decrease brush size | ] |
Add vertex | A |
Remove vertex | S |
Edit vertex | F |
Brush tool | G |
Draw Bitmask Mode:
Action | Shortcut |
---|---|
Cancel | Esc |
Complete | Enter |
Select brush | F |
Increase brush size | ] |
Decrease brush size | [ |
Select eraser | H |
Select eyedrop picker | J |
Toggle threshold mode | G |
DICOM specific operations:
Action | Hotkey |
---|---|
Windowing modification | Alt + 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
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:
- Click the polygon you want to add a vertex to
- Click the Add vertex icon in the floating window that appears, or use the A hotkey to activate ‘Add vertex mode’
- 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
- 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::
- Click on the polygon you want to remove a vertex from.
- Click the Remove vertex icon in the toolbar that appears, or use the S hotkey to activate ‘Remove vertex mode’.
- Move the cursor to the vertex you want to remove. The cursor should have a ‘cancel’ icon attached.
- Click the vertex you want to remove.
- Continue removing any vertices until you are satisfied.
- 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.
To use freehand edge touchup:
- Click the polygon you would like to edit.
- Click the Freehand edge touchup icon in the floating toolbar that appears, or use the F hotkey to activate ‘freehand edge touchup’ mode.
- Mouse over the vertex you would like to start editing from, and click to start the edit process.
- 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.
Was this page helpful?