Graviton
Linh Community
  • What is Graviton?
  • Getting Started
    • Work Flow
    • First Steps
  • Administration
    • Manage Account
    • Manage Team
  • Dataset
    • Create Dataset
      • Upload data to dataset
      • Prerequisite: Upload data to S3
    • Export Data
      • Appendix: Download data from S3
    • Access Dataset
    • Import Data
    • Dataset Insights
  • Annotation
    • 2D Workspace
    • 3D Workspace
    • Task Inspection
    • Export Annotation Task
  • Accelerate
    • Instruction
    • Assign By Labels
    • Feedback
  • Other
    • Integration
    • FAQ
    • What's next
  • πŸ†•Release notes
    • Changelog
  • πŸ”’Data Security
    • Company Security
    • Cloud Security
    • Access Security
    • Workforce Risk Management
    • HIPAA (In Progress)
    • PDPA (In Progress)
    • GDPR (In Progress)
Powered by GitBook
On this page
  • 1. Upload Options
  • Upload via browser
  • Upload via S3
  • 2. Data folder format on S3
  • 2D Image
  • 3D Point Cloud

Was this helpful?

  1. Dataset
  2. Create Dataset

Upload data to dataset

PreviousCreate DatasetNextPrerequisite: Upload data to S3

Last updated 2 years ago

Was this helpful?

1. Upload Options

Upload via browser

If you have less than 500 2D images to work with, feel free to drag and drop them. If you are working with much more images, heavy videos, or point clouds, we strongly recommend using the option "Upload via S3".

Upload via S3

To upload via S3, you need to provide these credentials:

  • Access key

  • Secret access key

  • S3 URI: Path to folder or file. For example:

    • Folder: s3://client-linh/upload/2d/

    • File: s3://client-linh/upload/2d/upload.zip

To find more info on uploading data to your S3 bucket, please visit here.

2. Data folder format on S3

2D Image

Individual mode

upload
β”‚
└───batch2
    β”‚   image3.png
    β”‚   image4.png

The images should be under a folder.

In the case above, to upload both image3.png, image4.png, you may upload the folder upload/batch2 via S3.

Sequence mode

# Bucket: client-linh
upload
β”‚
└───sequence1
β”‚   β”‚   image1.jpg
β”‚   β”‚   image2.jpg
β”‚   |   ...
|
└───sequence2
    β”‚   image3.png
    β”‚   image4.png

Above is the format to upload sequences of 2D images. Each child folder (sequence1 and sequence2) represents a sequence containing a set of images.

In this example, sequence1 is a sequence containing image1.jpg, image2.jpg and so on, and sequence2 is another sequence containing image3.png and image4.png. Then to upload these 2 sequences, upload the folder upload.

3D Point Cloud

Individual mode

# Bucket: client-linh
upload
β”‚
└───lidar
β”‚   β”‚   image1.bin
β”‚   β”‚   image2.pcd
|   |   image3.pcd
β”‚   |   ...
|
└───camera_front
β”‚   β”‚   000001.png
β”‚   β”‚   000002.png
β”‚
└───camera_back
β”‚   β”‚   000003.jpg
β”‚
└───manifest.json

Files in the uploaded folder (in this case the folder named upload) should be structured in this example format.

Files and folders explanation:

  • The folder names here like lidar, camera_front are just examples. You can specify the names of your choice.

  • There is a compulsory file named manifest.json, which contains the mapping between lidar and context images. The manifest.json file should follow this format:

[
    {
        "lidar": "lidar/image1.bin",
        "camera": {
            "camera_front/000001.png": "front",
            "camera_back/000003.jpg": "back"
        }
    },
    {
        "lidar": "lidar/image2.pcd",
        "camera": {
            "camera_front/000002.png": "front"
        }
    },
    {
        "lidar": "lidar/image3.pcd",
        "camera": {}
    },
    ...
]
  • manifest.json contains a list of lidar items. Within each item, lidar key corresponds to the relative path of the lidar file, and the camera key corresponds to the mapping between context image's relative path and the camera ID (camera ID will be used when projecting from 3D to 2D).

    • For instance, in this case, there are 2 context images camera_front/000001.png and camera_back/000003.jpg being mapped with a lidar file lidar/image1.bin. Context image camera_front/000001.png has camera ID as front.

Sequence mode

# Bucket: client-linh
upload
β”‚
└───sequence1
β”‚   β”‚
β”‚   └───lidar
β”‚   β”‚   β”‚   image1.bin
β”‚   β”‚   β”‚   image2.pcd
|   |   |   image3.pcd
β”‚   β”‚   |   ...
β”‚   |
β”‚   └───camera_front
β”‚   β”‚   β”‚   000001.png
β”‚   β”‚   β”‚   000002.png
β”‚   β”‚
β”‚   └───camera_back
β”‚   β”‚   β”‚   000003.jpg
β”‚   β”‚
β”‚   └───manifest.json
|
└───sequence2
    β”‚
    └───pointcloud
    β”‚   β”‚   image3.bin
    β”‚   β”‚   image4.pcd
    β”‚   |   ...
    |
    └───camera_front
    β”‚   β”‚   000004.png
    β”‚   β”‚   000005.png
    β”‚
    └───camera_back
    β”‚   β”‚   000006.png
    β”‚
    └───manifest.json

    

For sequence mode, each child folder represents a sequence containing a set of point clouds and their corresponding context images.

In this case, there are 2 sequences named sequence1 and sequence2. Inside each sequence, the format follows the "Individual mode" (as specified above).

For instance, the manifest.json in sequence1 will be as below. Please note that the order of items inside the list is the order of the lidar frames within the sequence.

[
    {
        "lidar": "lidar/image1.bin",
        "camera": {
            "camera_front/000001.png": "front",
            "camera_back/000003.jpg": "back"
        }
    },
    {
        "lidar": "lidar/image2.pcd",
        "camera": {
            "camera_front/000002.png": "front"
        }
    },
    {
        "lidar": "lidar/image3.pcd",
        "camera": {}
    },
    ...
]