Skip to navigation

Import from Dataset Ninja

Overview

Imports a public dataset from Dataset Ninja, in full or as its published sample, into the OvalBee dataset you pick. Images keep their annotations and are tagged with their split and image-level labels.

Dataset Ninja is a catalog of public computer vision datasets. Pick one from the built-in catalog or paste a link. Everything lands in the one destination dataset, as a new version of it. The LAST_RUN output opens a hidden dataset holding only the images and annotations of the latest run.

Import from Dataset Ninja Dataset

Prerequisites

RequirementWhat you need
Internet accessA worker that can reach datasetninja.com and assets.supervisely.com, where Dataset Ninja hosts its archives.

How it works

1

Looks up the archive of the chosen Dataset Ninja page, full or sample.

2

Downloads and unpacks the archive.

3

Creates a new version of the destination dataset.

4

Imports each Supervisely project in the archive with its annotations, then uploads any images outside a project without annotations.

5

Tags every project image with the split it came from and with its image-level labels.

6

Adds the images and their annotations to the new version and to the hidden LAST_RUN dataset, and adds the classes and tags the projects declare to the destination’s ontology.

FAQ

Import size defaults to Full. Choose Sample for the smaller archive published by Dataset Ninja. Catalog rows marked (no sample) have none, and a sample import of such a dataset stops with an error instead of downloading the full dataset.

A ZIP or TAR archive holding Supervisely-formatted projects, plain image directories, or both. Projects keep their annotations, while loose JPEG, PNG, BMP, and TIFF images are imported without any.

Each project image carries the archive’s structure as asset tags, so Filter images can carve subsets out of the single imported dataset.

TagWhere it comes from
splitThe name of the dataset directory inside the archive (valid, train, robots_project-ds0), or an image label named after a split (train, val, valid, validation, test, trainval, dev). The directory wins when both are present.
class_<label>An image-level label with no value, one tag per label, always true.
<name>An image-level label that has a value, kept as it is, for example weather: rain.

In Filter images these read as images:split=valid, images:class_cat=true, images:weather=rain. Dots and commas in a label name become underscores, so the tag stays filterable. Loose images carry no tags.

The page address may not name a Dataset Ninja dataset, or the dataset isn’t published in Supervisely format, in which case only its original source offers a download. Otherwise the link couldn’t be fetched or unpacked, or the archive held no importable images.

The whole archive is imported again into another new version of the destination dataset, and every image gets a second copy there. The node doesn’t replace earlier images, and the earlier versions stay available. LAST_RUN moves to a new version holding only this run. Point the node at a new dataset when you don’t want duplicates.

Inputs

Dataset Ninja dataset
stringRequired

Public dataset to import. Click the field to browse the Dataset Ninja catalog by name or category, or paste a Dataset Ninja page link at the bottom of the dialog. Placeholder: https://datasetninja.com/pcb-component-detection. Key: LINK.

Import size
selectDefaults to fullRequired

Choose the full dataset or its published sample. If no sample is available, the import stops without downloading the full dataset. If Dataset Ninja dataset holds an archive link on assets.supervisely.com, that archive is downloaded whatever you choose here. Key: ARCHIVE_TYPE.

Options:

  • Full (full)
  • Sample (sample)
Destination dataset
datasetRequired

Dataset that receives the imported images and annotations, or a new name to create one. Each import adds a new version, so what the dataset held before stays available. Key: DATASET.

Outputs

Dataset
dataset

ID of the OvalBee dataset that received imported image assets. Key: DATASET.

Last Run
dataset

Hidden dataset containing the images and annotations imported during the last run. A rerun writes a new version of it. Shown as an artifact. Key: LAST_RUN.

JSON config

Machine-readable node interface for automation and advanced usage.

{
"name": "Import from Dataset Ninja",
"description": "Import a full dataset or a sample from Dataset Ninja, including its images, annotations, splits and image-level labels.",
"category": "Import",
"namespace": "datasetninja",
"templateKey": "import_ops/import_from_dataset_ninja",
"version": "v1",
"inputs": [
{
"key": "LINK",
"label": "Dataset Ninja dataset",
"type": "string",
"description": "Public dataset to import. Click the field to browse the [Dataset Ninja](https://datasetninja.com) catalog by name or category, or paste a Dataset Ninja page link at the bottom of the dialog.",
"required": true,
"default": null,
"visibleWhen": null,
"options": {
"control": "dataset-ninja",
"placeholder": "https://datasetninja.com/pcb-component-detection"
}
},
{
"key": "ARCHIVE_TYPE",
"label": "Import size",
"type": "select",
"description": "Choose the full dataset or its published sample. If no sample is available, the import stops without downloading the full dataset. If Dataset Ninja dataset holds an archive link on assets.supervisely.com, that archive is downloaded whatever you choose here.",
"required": true,
"default": "full",
"visibleWhen": null,
"options": {
"control": "tabs",
"options": [
{
"label": "Full",
"value": "full"
},
{
"label": "Sample",
"value": "sample"
}
]
}
},
{
"key": "DATASET",
"label": "Destination dataset",
"type": "dataset",
"description": "Dataset that receives the imported images and annotations, or a new name to create one. Each import adds a new version, so what the dataset held before stays available.",
"required": true,
"default": null,
"visibleWhen": null
}
],
"outputs": [
{
"key": "DATASET",
"label": "Dataset",
"type": "dataset",
"description": "ID of the OvalBee dataset that received imported image assets.",
"artifact": false,
"badge": false,
"badgeOpens": null,
"hidden": false
},
{
"key": "LAST_RUN",
"label": "Last Run",
"type": "dataset",
"description": "Hidden dataset containing the images and annotations imported during the last run. A rerun writes a new version of it.",
"artifact": true,
"badge": false,
"badgeOpens": null,
"hidden": false
}
]
}