4. Export JSON format¶
Warning
Exported file is encoded in UTF-8 with BOM.
4.1. JSON definition¶
4.1.1. ExportFileSchemeVersion¶
Version of export schema
4.1.2. ConfigurationVersion¶
Version of project configuration in export file. It is increased when project configuration changes (e.g. when new tool is added, project name edited or dataset assigned).
4.1.3. AnnotationVersion¶
Version of annotations in export file. It is increased when annotations were changed (e.g. when new annotations were created).
4.1.4. SetVersion¶
Version of image sets in export file. It is increased when image sets were changed (e.g. when image was assigned to set).
4.1.5. ProjectName¶
Name of exported project
4.1.6. VersionGenerated¶
Date of generated export in UTC time zone (ISO 8601 format)
4.1.7. DataFilterType¶
Filter used for exporting annotations. Possible values:
Everything
- project configuration (annotation tools, assigned datasets) and all annotations in “Waiting for approval” and “Finished” statuses are exported including not annotated imagesAnnotated
- project configuration and all annotations in “Waiting for approval” and “Finished” statuses are exportedAccepted
- project configuration and all annotations in “Finished” status are exportedProject configuration only
- project configuration is exported
4.1.8. TotalAnnotationPoints¶
Sum of all exported annotations points
4.1.9. Tools¶
List of marking tools added to project with their definition
4.1.9.1. Name¶
Name of marking tool
4.1.9.2. Color¶
Color of marking tool in hex code
4.1.9.3. Type¶
Type of marking tool. Possible values:
Point
Rectangle
(for Bounding box type)Polyline
(for Line type)Polygon
RotatedRectangle
(for Oriented rectangle type)Brush
4.1.9.4. IsUsed¶
true
when marking tool was used during annotation process
4.1.9.5. Order¶
integer
used for sorting marking tools
4.1.10. Questions¶
4.1.10.1. Text¶
The content of the question
4.1.10.2. AnswerType¶
Type of question. Possible values:
TrueFalse
(for Yes/No type)Alternative
(for Radio type)MultiSelect
(for Checkbox type)Text
StatusPassFail
(for Pass/Fail type)SetTrainTest
(for Train/Test type)Number
4.1.10.3. PossibleAnswers¶
List of available answers. Empty for Text and Number questions.
4.1.10.4. IsRequired¶
true
when question must be answered during annotation process
4.1.10.5. IsUsed¶
true
when question was answered during annotation process
4.1.10.6. Scopes¶
Image
for questions. For attributes list of linked marking tools
4.1.10.7. Order¶
integer
used for sorting questions
4.1.11. DataSets¶
List of linked datasets
4.1.11.1. DataSetName¶
Name of linked dataset
4.1.11.2. Images¶
List of images in dataset
4.1.11.2.1. ImageId¶
Internal image id in GUID format
4.1.11.2.2. ImageName¶
Name of image
4.1.11.2.3. ImageSize¶
integer
Width and integer
Height define the size of an image
4.1.11.2.4. ImageURL¶
URL of image uploaded by CSV file or using /api/Images/addImageFromUrl
API method
4.1.11.2.5. Annotations¶
List of image annotations
4.1.11.2.5.2. AnnotationDuration¶
Duration of annotation in HH:mm:ss.fffffff format
4.1.11.2.5.3. AnnotationDate¶
Date of creating annotation in UTC time zone (ISO 8601 format)
4.1.11.2.5.4. ReviewStatus¶
Status of annotation. Possible values:
Accepted
- for annotations accepted during reviewToReview
- for annotations not yet reviewedRejected
- for annotations rejected during review
4.1.11.2.5.5. Reviewer¶
Email of reviewer
4.1.11.2.5.6. ReviewDuration¶
Duration of review in HH:mm:ss.fffffff format
4.1.11.2.5.7. ReviewDate¶
Date of annotation review in UTC time zone (ISO 8601 format)
4.1.11.2.5.8. CorrectionDuration¶
Duration of correcting annotation in HH:mm:ss.fffffff format
4.1.11.2.5.9. WasImageCorrected¶
true
when annotation was corrected by another team member
4.1.11.2.5.10. AnnotationPoints¶
Amount of points the annotation is worth
4.1.11.2.5.11. Questions¶
List of questions. Each question contains:
Question - the content of the question
Answers - list of selected answers. Empty for Text and Number questions
Answer - answer entered by user (Text and Number type questions)
4.1.11.2.5.12. Segmentation¶
List of marked objects. Each segmentation contains:
ClassName - name of used marking tool
Selection - object coordinates in WKT format. Upper left corner of the image has 0, 0 coordinates. Depending on tool type different geometry types are used:
Point - always represented in
Point
geometry typeBounding Box - always represented in
Polygon
geometry type. First point is always upper left cornerLine - always represented in
LineString
geometry type. Order of point is the same as order of user clicksPolygon - always represented in
Polygon
geometry type. Order of point is the same as order of user clicksOriented rectangle - always represented in
Polygon
geometry type. First and second points depends on highlighted corner of the object by small trapezeBrush - represented in
Polygon
orMultiPolygon
geometry type (depends on drawn shape)
Questions - list of answers to object attributes
4.2. Sample formatted JSON file¶
{
"ExportFileSchemeVersion": "1.9",
"ConfigurationVersion": 1,
"AnnotationVersion": 1,
"SetVersion": 1,
"ProjectName": "Project 01",
"VersionGenerated": "2020-10-12T10:54:00.1218868Z",
"DataFilterType": "Everything",
"TotalAnnotationPoints": 14.50,
"Tools": [
{
"Name": "Bounding Box",
"Color": "#75ec90",
"Type": "Rectangle",
"IsUsed": true,
"Order": 0
},
{
"Name": "Point",
"Color": "#53eccf",
"Type": "Point",
"IsUsed": false,
"Order": 1
}
],
"Questions": [
{
"Text": "Set",
"AnswerType": "SetTrainTest",
"PossibleAnswers": [
"Train",
"Test"
],
"IsRequired": false,
"IsUsed": true,
"Scopes": [
"Image"
],
"Order": 1
},
{
"Text": "Colour of object",
"AnswerType": "Alternative",
"PossibleAnswers": [
"Red",
"Green",
"Blue"
],
"IsRequired": false,
"IsUsed": true,
"Scopes": [
"Bounding Box"
],
"Order": 2
},
{
"Text": "Is object damaged?",
"AnswerType": "TrueFalse",
"PossibleAnswers": [
"Yes",
"No"
],
"IsRequired": false,
"IsUsed": true,
"Scopes": [
"Bounding Box"
],
"Order": 3
},
{
"Text": "Damage description",
"AnswerType": "Text",
"PossibleAnswers": [],
"IsRequired": false,
"IsUsed": true,
"Scopes": [
"Bounding Box"
],
"Order": 4
}
],
"DataSets": [
{
"DataSetName": "Dataset 02",
"Images": [
{
"ImageId": "a30a556c-8ba1-44ca-b50e-8bb32d775549",
"ImageName": "A.jpg",
"ImageSize": {
"Width": 1024,
"Height": 768
},
"ImageURL": null,
"Set": "NotSet",
"Annotations": []
},
{
"ImageId": "690edcc9-0863-457d-a6cc-922e2a969a07",
"ImageName": "B.jpg",
"ImageSize": {
"Width": 1024,
"Height": 768
},
"ImageURL": null,
"Set": "Train",
"Annotations": []
},
{
"ImageId": "95b92180-b769-47ac-a52c-9aa4bb39b8e1",
"ImageName": "D.jpg",
"ImageSize": {
"Width": 1024,
"Height": 768
},
"ImageURL": null,
"Set": "Train",
"Annotations": []
},
{
"ImageId": "4469b173-8dfc-48e0-9916-c9cfd133b9a2",
"ImageName": "C.jpg",
"ImageSize": {
"Width": 1024,
"Height": 768
},
"ImageURL": null,
"Set": "Test",
"Annotations": []
}
]
},
{
"DataSetName": "Dataset 01",
"Images": [
{
"ImageId": "0ddfe314-4ba6-4737-8c7c-0cee2f024ec8",
"ImageName": "0009.jpg",
"ImageSize": {
"Width": 1024,
"Height": 768
},
"ImageURL": null,
"Set": "Train",
"Annotations": [
{
"AnnotationsAuthor": "annotator@test.com",
"AnnotationDuration": "00:00:24.5490000",
"AnnotationDate": "2020-10-12T10:51:47.0515741Z",
"ReviewStatus": "Accepted",
"Reviewer": "reviewer@test.com",
"ReviewDuration": "00:00:02.6530000",
"ReviewDate": "2020-10-12T10:53:45.8988427Z",
"CorrectionDuration": "00:00:00",
"WasImageCorrected": false,
"AnnotationPoints": 4.00,
"Questions": [
{
"Question": "Set",
"Answers": [
"Train"
]
}
],
"Segmentation": [
{
"ClassName": "Bounding Box",
"Selection": "POLYGON((59.687823 39.281729,121.416254 39.281729,121.416254 89.78681,59.687823 89.78681,59.687823 39.281729))",
"Questions": [
{
"Question": "Colour of object",
"Answers": [
"Green"
]
},
{
"Question": "Is object damaged?",
"Answers": [
"No"
]
},
{
"Question": "Damage description"
}
]
}
]
}
]
},
{
"ImageId": "9fe9a70c-5f59-4f93-b89e-3458e1bebeda",
"ImageName": "0004.jpg",
"ImageSize": {
"Width": 1024,
"Height": 768
},
"ImageURL": null,
"Set": "Train",
"Annotations": [
{
"AnnotationsAuthor": "annotator@test.com",
"AnnotationDuration": "00:00:53.6710000",
"AnnotationDate": "2020-10-12T10:52:40.7773278Z",
"ReviewStatus": "ToReview",
"Reviewer": null,
"ReviewDuration": "00:00:00",
"ReviewDate": null,
"CorrectionDuration": "00:00:00",
"WasImageCorrected": false,
"AnnotationPoints": 10.50,
"Questions": [
{
"Question": "Set",
"Answers": [
"Test"
]
}
],
"Segmentation": [
{
"ClassName": "Bounding Box",
"Selection": "POLYGON((391.015711 65.764051,494.504876 65.764051,494.504876 153.95925,391.015711 153.95925,391.015711 65.764051))",
"Questions": [
{
"Question": "Colour of object",
"Answers": [
"Blue"
]
},
{
"Question": "Is object damaged?",
"Answers": [
"Yes"
]
},
{
"Question": "Damage description",
"Answer": "discoloration"
}
]
}
]
}
]
},
{
"ImageId": "35c46c9a-01fa-4c27-bac5-554513b35934",
"ImageName": "0005.jpg",
"ImageSize": {
"Width": 1024,
"Height": 768
},
"ImageURL": null,
"Set": "NotSet",
"Annotations": []
},
{
"ImageId": "5e18238d-f4bf-454a-ab73-5764490e6efc",
"ImageName": "0007.jpg",
"ImageSize": {
"Width": 1024,
"Height": 768
},
"ImageURL": null,
"Set": "NotSet",
"Annotations": []
},
{
"ImageId": "b2de124f-2a66-4c6e-aaaf-5adfe119e7c7",
"ImageName": "0003.jpg",
"ImageSize": {
"Width": 1024,
"Height": 768
},
"ImageURL": null,
"Set": "NotSet",
"Annotations": []
},
{
"ImageId": "91f0af5f-fbcf-4314-8298-9a5ed09600f6",
"ImageName": "0008.jpg",
"ImageSize": {
"Width": 1024,
"Height": 768
},
"ImageURL": null,
"Set": "NotSet",
"Annotations": []
},
{
"ImageId": "06836fce-0f98-4560-b1d2-badf2cc5a6a8",
"ImageName": "0001.jpg",
"ImageSize": {
"Width": 1024,
"Height": 768
},
"ImageURL": null,
"Set": "NotSet",
"Annotations": []
},
{
"ImageId": "9309f906-6b1b-4769-ad67-c1684f65ddee",
"ImageName": "0002.jpg",
"ImageSize": {
"Width": 1024,
"Height": 768
},
"ImageURL": null,
"Set": "NotSet",
"Annotations": []
},
{
"ImageId": "f9a7f68c-13bf-49e9-b0b2-f94e27abaf8d",
"ImageName": "0006.jpg",
"ImageSize": {
"Width": 1024,
"Height": 768
},
"ImageURL": null,
"Set": "NotSet",
"Annotations": []
}
]
}
]
}