Exporting data from Encord

Exporting labels from the Encord web-app

Learn how to export data from the Encord web-app by watching this video. For more details, read on below!


The 'Export' tab is where you export the labels and classifications created in a project.

A. Select the files you'd like to export data for by clicking the checkboxes next to the files you'd like to include in your export. Click the Export to export the selected data.

B. Select the format for your exported data; COCO or JSON.

C. Toggle this switch if you'd like to include signed URLs in your export.

D. Select the label status of the annotations you would like to be included in the data export.

E. Select the objects you would like to include in the data export.

F. Select which classifications to include in the data export.

ℹ️

Note

Download files are tagged with a unique id for the project they are exported from and the time at which the export is made.

After the Export button is pressed, progress can be monitored using the icon in the top-right of the page.

Once the process has completed, the symbol will appear. Click it to download your data.

Export data format

All Labels will be exported in a single JSON or COCO file. Both export formats contain the exact same information.

See the table below for a description of all the values contained in the exported files.

KeyDescriptionNotes
label_hashThe label's ID
created_atTime and date the label was created
last_edited_atTime and date the label was last edited
dataset_hashThe dataset's ID
dataset_titleThe dataset title
data_titleName of the task or data unit the label belongs to
data_hashthe task's ID
is_image_sequence"true" for image sequences"none" for all other file types
video_linkLink to the video or image sequence"none" if file isn't a video or image sequence
data_unitsThe files that the task is composed of
data_typeThe file format
data_sequenceThe data unit's sequence number.Only image groups and image sequences will have non 0 values, since these are composed of multiple data units compressed into a single task.
labelsThe labels and classifications on this data unit
objectsThe labels on this data unit
nameThe ontology object's name
colorThe ontology object's color
shapeWhich ontology object is being used
valueSame as the 'name' but in lowercase and with spaces removed
bitmaskContains information about bitmask labelsOnly visible for bitmask ontology objects
top (bitmask)The top-left corner's top coordinate
left (bitmask)The top-left corner's left coordinate
width (bitmask)The bitmask label's width (in pixels)
height (bitmask)The bitmask label's height (in pixels)
rleStringA base 64 run length encoded string encoding the bitmaskThis is automatically decoded when using the Encord SDK. Alternatively the pycoco framework can be used.
createdAtTime and date this label instance was created
createdByThe email of the user that created this label instance
confidenceThe label instance's confidence score
objectHashThe label instance's IDOnly refers to one specific label or classification
featureHashThe ontology object's IDIdentifies this particular ontology object type
manualAnnotation"true" for all manually created labels. "false" for all labels created with automated labeling techniques
boundingBoxContains the normalized coordinates of the label instance
h, y, x, yThe coordinates of this label instance, normalized to be between 0 and 1w = width, h = height, x and y correspond to the coordinates of the top-left corner
classificationsThe classifications in this data unit
nameThe ontology object's name
valueThe ontology object's name in lowercase and with spaces removed
createdAtThe date and time this classification instance was created
createdByThe email of the user that created this classification instance
lastEditedAtThe date and time this classification instance was last edited
classificationHashThe ID for this classification instance
data_linkA link to the data unit
widthThe data unit's width (in pixels)
heightThe data unit's height (in pixels)
object_answersAll the labels in a particular data unitThe labels will be referred to by their hash / ID
classification_answersAll the classifications in a particular data unitThe classifications will be referred to by their hash / ID
nameThe classification's name
valueThe classification's name in lowercase and with spaces removed
answersThe classification values
nameThe classification value
valueThe classification value in lowercase, and with spaces removed
featureHashThe classification value's IDIdentifies this particular classification answer
featureHashThe classification object's IDIdentifies the classification
object_actionsThe number of states a dynamic classification is inA change in state occurs each time the classification answer changes. The objectHash within the object_actions is the classification answer's ID.
rangeThe range of frames a given state occurs in
valueThe dynamic classification answerThe featureHash refers to the specific classification answer's ID
dynamic"true" for dynamic classifications
trackHashThe current state's ID, for a given range of frames
shouldPropagate"true" if 'Preserve current state' has been turned on for this classification
label_statusShows whether the data unit has been labeled, or not
export_historyContains records of every time this project was exportedThe act of exporting labels to confirm export history will itself generate an export history entry.
export_hashThe ID for a particular export instanceThe final 'export_hash" will always refer to the export you are viewing.
exported_atThe date and time for a particular export instance took place
annotation_task_statusShows the task status

Label editor coordinates

Label coordinates are normalized to be between 0 and 1. This means that the corners of the frame or image correspond to the coordinates (1,1), (1,0), (0,0), (0,1) - as seen in the image below.

To get the pixel values of any normalized coordinates, multiply them by the width or height of the label (given in pixels).

  • "x" and "h" coordinates of a label should be multiplied by the pixel height.
  • "y" and "w" coordinates of a label should be multiplied by the pixel width.

Export data using the Python SDK

See here to learn how to export JSON files from Encord's Python SDK. Please reach out to us to request for exporting COCO labels.

Exporting bitmasks

We strongly recommend exporting bitmask labels using the SDK, as seen in this example.

If you choose to export bitmasks from the webapp, you will need to use the pycoco framework to decode the rleString into a useful binary mask. This process can be laborious, and Encord can't guarantee interoperability for each version of pycoco.