Skip to main content

Data Annotation

Annotation maps a piece of robot data to a natural language description and provides the supervision signal for training. The annotation result determines whether a model can map an instruction such as "clear the table" to specific actions and objects.

Definitions​

TermDescription
Annotation taskThe task unit that carries annotation work for a batch of datasets; it has state transitions
Annotation recordOne time segment within a piece of data, or one image region
SkillAn action template, such as pick {A} from {B}
ObjectThe object acted on, filling {A} in the template
TargetThe target position or container of the action, filling {B} in the template
AdverbialAdditional description, such as the order of actions
PanelThe rendering unit of data, corresponding to one camera or sensor Topic

Annotation Types and Fields​

Annotation Types​

The platform provides three annotation methods, with the entries and applicable objects below.

Annotation typeApplicable objectAnnotated contentEntry
Semantic segmentation annotationTime-series data such as MCAPTime segment + skill, object, target, and adverbial, generating Chinese and English descriptionsEnter Studio from the data list
Image item annotationCamera view imagesImage region + item nameImage annotation page
Batch annotationHomogeneous datasetsReuse one sample annotationBatch annotation page of an annotation task

Semantic segmentation annotation covers one piece of data and can contain one or more annotation time segments. Each time segment corresponds to one atomic action, and the segments form a complete task sequence by sequence_id.

Annotation Content Fields​

FieldValue sourceDescription
SkillDictionaryAction template; determines the description pattern
ObjectDictionary{A} in the template
TargetDictionary{B} in the template
PositionPosition optionRelative position of the object
HandLeft hand, right hand, both handsRecords the hand that performs the action
AdverbialDictionaryAdditional wording, placed before or after
Quality score0–1; -1 means not scoredThe form uses 0.5–5 stars with a step of 0.5, and the stored value is the star value divided by 5
Custom descriptionManual inputOverrides the description generated from the template

Storage Form of Annotation Results​

Annotated contentStorage recordMain fields
Semantic segmentation annotationOne record per time segmentStart and end timestamps, start and end frame numbers, skill, object, target, English description, Chinese description, options, quality score, invalid reason
Image item annotationOne record per regionItem name, region coordinates, image width and height, hard sample flag, annotation type

Annotation records are associated by the dataset and task they belong to and can enter the training flow with data export, as described in Data export.

Basis and Sources​

ItemValueBasis and source
Semantic annotation content fieldsSkill, object, target, position, hand, adverbialOptions provided by the annotation form; see "Annotation content fields"
Quality score range0–1; -1 means not scoredThe form uses 0.5–5 stars, and the stored value is the star value divided by 5
Image annotation types5 enum valuesThe annotation type enum recorded for object detection: BBOX, POINT, POLYGON, LINE, CIRCLE

Annotation Interface and Operations​

Annotation Interface​

After entering the data detail, data is rendered as panels, and each panel corresponds to one camera or sensor Topic.

Panel Adjustment​

OperationMethod
Change rendered contentClick the settings button at the top-left of the panel and choose a panel type from the menu
Change data sourceChoose the Topic message source to switch to from the settings menu

Dataset page showing all available data

Click the settings button at the top-left of the panel

Select a panel type from the drop-down menu

Change the Topic message source from the settings menu

Preview the newly selected Topic content

Timeline​

The annotation timeline shows completed annotation time segments grouped by skill and supports expanding or collapsing skill rows. The playback controls on the panel provide play, pause, forward, and backward to locate the start and end moments of an action.

Keyboard Shortcuts​

ShortcutAction
QMark the action start moment
RMark the action end moment
EnterAdd annotation
Ctrl+SSave annotation
SpacePlay or pause
←Backward
→Forward
1, 2, 3Apply the Nth predicted description

Fine-grained Annotation​

Fine-grained annotation marks one or more action time segments in a single data stream and suits a piece of data that contains multiple actions. For annotation task flows, see Create annotation task and Annotator guide.

Procedure​

  1. Click the data name in the data list to enter Studio.
  2. Play the data and position the progress at the action start moment.
  3. Click "Start" or press Q to record the start timestamp.
  4. Play to the action end moment, then click "Stop" or press R to record the end timestamp.
  5. Select the skill, object, target, position, and hand in the form, or fill in a custom description.
  6. Click "Add Marker" or press Enter to add the time segment to the annotation list.
  7. Repeat steps 2 through 6 until all actions are covered.
  8. Click the save button at the top-right or press Ctrl+S to upload the annotation to the server.

Click the start button or use the Q shortcut to start annotation

Click the stop button or use the R shortcut to end annotation

Fill in the natural language description of the annotation

Choose a predefined description from the options or add a new one

Click the Add Marker button or press Enter to confirm

Click the save button at the top-right to upload the annotation

warning

Unsaved annotations exist only in the current browser. Save before leaving the page, or the changes are lost.

Batch Annotation​

Batch annotation is used for homogeneous datasets. The platform provides three modes; select one according to the table below.

ModeActionApplicable scenario
Quick AnnotationWrite the same description for all selected datasetsThe datasets share the same action
Batch Copy AnnotationsCopy a sample annotation to target datasets in proportion to the timelineThe action segmentation matches the sample
Batch Replace AnnotationsBatch replace descriptions, objects, and targets by ruleThe wording needs to be unified and corrected

Quick Annotation Procedure​

  1. Select "Quick Annotation" on the batch annotation page of the annotation task.
  2. Fill in the English description and the Chinese description.
  3. Submit, and the system writes that description for all selected datasets.

Batch Copy Annotation Procedure​

  1. Select one piece of data with a completed annotation as the sample.
  2. Select the target datasets that need the annotation copied.
  3. Submit the copy, and the system generates target annotations in proportion to the timeline.
  4. Review the copy result and the failed items.

Batch Replace Annotation Procedure​

  1. Set the replacement rules on the batch replace page, covering descriptions, objects, and targets.
  2. Submit the replacement, and the system rewrites the annotation wording of the selected datasets by rule.

Select sample data from the list

Create a new annotation task

View the created annotation task

Complete the annotation of the sample data

Save the completed sample annotation

Select the sample to use as a template

Start batch copy annotations

The system reports a successful copy

View the batch annotation result

Image Item Annotation​

Image annotation labels item names on camera view images. The entry is the image annotation page, reached from the annotation export page.

Procedure​

  1. Select the dataset to annotate; the corresponding image loads at the top of the page.
  2. Drag on the image to draw a rectangular region, or click to mark a point.
  3. Fill in an item name for each region; the name comes from the object list in the dictionary.
  4. Repeat steps 2 and 3 to add all regions.
  5. Submit to save all item annotations.

The annotation object list comes from the dictionary; for how it is maintained, see Dictionary management.

Limitations​

Annotation is constrained by the existing boundaries below.

ItemLimitDescription
Time referenceStart and end timestamps requiredAn annotation without timestamps cannot be saved; frame number fields are optional and export as empty when missing
Quality score0–1; -1 means not scoredThe form uses 0.5–5 stars with a step of 0.5, and the stored value is the star value divided by 5
Image annotation typesBBOX, POINT, POLYGON, LINE, CIRCLEEach record has only one type; the default is BBOX
Image annotation regionRectangular region or single pointDrag to draw a rectangle, or click to mark a point
Skill and object valuesTaken from the dictionaryWording outside the dictionary cannot be used as a skill, object, or target
Unsaved annotationsExist only in the current browserSave before leaving the page, or the changes are lost
Data for batch annotationHomogeneous datasetsQuick Annotation, Batch Copy Annotations, and Batch Replace Annotations apply by the same action or the same segmentation
PagePurpose
Data managementDataset search, preview, and batch actions
Data exportExport annotation results for training
Data formatMCAP structure and annotation data fields
Dictionary managementMaintenance of skill, object, target, and adverbial dictionaries
Data QCAutomatic quality check rules for ROS recordings