LogoLogo
  • Getting started with Keylabs
  • Application overview
    • Application navigation
    • Application toolbar
      • Informative panel
      • Panel
      • View
      • Edit
      • File
      • Tools
      • Frame location buttons
      • 🔧Tool buttons in the Merge Editor
    • Model Assisted Labeling
      • Segment Anything 2 model
    • Setting up your custom workflow
  • Release Notes
    • Release notes 2.0 - 2.3-1
      • Release notes 2.0
      • Release notes 2.1
      • Release notes 2.2
      • Release notes 2.3
      • Release notes 2.3-1
    • Release notes 1.90 - 1.92
      • Release notes 1.90
      • Release notes 1.91
      • Release notes 1.92
    • Release notes 1.80-1.89
      • Release notes 1.89
        • Release notes 1.89-2
      • Release notes 1.88
        • Release notes 1.88-1
      • Release notes 1.87
      • Release notes 1.86
      • Release notes 1.85
      • Release notes 1.84
      • Кelease notes 1.83
      • Release notes 1.82
      • Release notes 1.81
      • Release notes 1.80
  • HOW TO START
    • Project creation
    • Files uploading
    • Classes
      • Setting up classes
        • Bounding box
        • Oriented Bounding Box
        • Cuboid
        • Polygon
        • Multiline
        • Skeleton
        • Mesh
        • Bitmap
      • Setting up attributes
        • Select
        • Mugshot
        • String
        • Boolean
        • Separator
  • HOW TO ANNOTATE
    • ⚙️Annotation shapes
      • 🦲Bounding Box object annotation
      • 〰️Multiline and Polygon objects annotation
      • 💀Annotation of Skeleton object
      • 👾Annotation of Bitmap object
      • 🔘Mesh object annotation
    • Stacking order
    • Video annotation
      • Interpolation function
        • Attribute interpolation
  • HOW TO MANAGE
    • 🛠️Setting up a Project
      • Project types
      • Stages
      • Merge project creation
      • Configuration
    • ⚡Project Management
      • Project Status
      • Clone project creation
      • Files filtering
    • 👷User Management
      • User roles
        • Worker
        • Project Manager
        • Super User
        • Admin
        • Customer
      • Locations
    • 👨‍💻Arranging the workflow
      • Adding a user
      • Files management
    • 📣Audit
      • Changelog
      • Reports usage for audit
    • 📊Reports
      • Whole platform reports
        • Velocity reports
        • Timetable reports
          • TimeTable Aggregated
          • TimeTable raw data
          • Timetable current state
      • Per project reports
        • Velocity reports - by date
        • Velocity reports - by user
        • Worklog Aggregated
        • Worklog - Raw data
        • Worklog Time by File
  • TIPS AND TRICKS
    • ▶️Shortcuts
  • HOW TO INTEGRATE
    • Export
    • Files Storage
      • Platform storage
      • External storage
    • 🗒️Keylabs Export Format
      • ZIP archive structure
      • JSON File Structure
    • CLI/SDK
      • CLI
      • SDK
Powered by GitBook
On this page

Was this helpful?

  1. HOW TO INTEGRATE
  2. Keylabs Export Format

ZIP archive structure

PreviousKeylabs Export FormatNextJSON File Structure

Last updated 11 months ago

Was this helpful?

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 ) 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

🗒️
JSON File Structure