ZIP archive structure

For each source video or image file, zip archive exported by Keylabs Annotation Platform contains:

  1. Single JSON file with all the objects and attributes annotated in the file. File name is the source file name (including any parent directories) with β€œ.json” suffix appended. JSON structure is described in the next section.

  2. Optionally, masks of objects identified in the source image or video, as PNG images. Depending on project settings, separate PNG files may be produced for each object, or multiple objects may be exported as a single PNG file where different colors denote different object classes.

  3. All images related to a single source file reside in the archive under a common directory named after the source file with β€œ.images” suffix added. *.images directory contains sub-directories for each source movie frame, named 00001, 00002, etc (frame number padded with 0s to at least 5 digits, starting from frame 1).

  4. Images are treated as 1-frame movies. For each frame, the following images may be produced:

  • all.png contains combined mask with all the objects present on this frame.

  • multiple files named after object ids (see JSON File Structure) with β€œ.png” suffix containing masks of individual objects present on this frame.

Example zip archive structure

Assuming we have a source file named β€œdir1/dir2/file.mp4”. It contains 5 frames, and there are 4 objects identified in this video. Object 0.1 is only present on frames 1-3, and object 0.4 is only present on frames 2-5. For this file, the following annotation data will be generated in the zip archive:

dir1/
`-- dir2/
|-- file.mp4.json - metadata, objects, attributes, AABB for each object
and vector representation for objects that support it.
`-- file.mp4.images/
|-- 00001/
| |-- 0.1.png - object 0.1 as it appears on frame 1
| |-- 0.2.png
| |-- 0.3.png
| `-- all.png - combined mask containing all the objects as they
appear on frame 1
|-- 00002/
| |-- 0.1.png - object 0.1 as it appears on frame 2

| |-- 0.2.png
| |-- 0.3.png
| |-- 0.4.png - object 0.4 as it appears on frame 2
| `-- all.png - combined mask containing all the objects as they
appear on frame 2
|-- 00003/
| |-- 0.1.png
| |-- 0.2.png
| |-- 0.3.png
| |-- 0.4.png
| `-- all.png
|-- 00004/
| |-- 0.2.png
| |-- 0.3.png
| |-- 0.4.png
| `-- all.png
`-- 00005/
|-- 0.2.png
|-- 0.3.png
|-- 0.4.png
`-- all.png

Last updated