PointcloudDataset

class PointcloudDataset(directory, mode=None, parents=None, dataset_id=None, api=None)[source]

Bases: VideoDataset

A dataset directory for point cloud items inside a local Supervisely point cloud project.

Stores point clouds, their annotations and (optionally) related images for each item.

PointcloudDataset is a dataset for pointcloud data. PointcloudDataset object is immutable.

Parameters:
directory : str

Path to dataset directory.

mode=None

Determines working mode for the given dataset.

parents : List[str]

List of parent directories, e.g. [“ds1”, “ds2”, “ds3”].

dataset_id : Optional[int]

Dataset ID if the Dataset is opened in API mode. If dataset_id is specified then api must be specified as well.

api=None

API object if the Dataset is opened in API mode.

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/ptc_project/ds0"
ds = sly.PointcloudDataset(dataset_path, sly.OpenMode.READ)
print(ds.project_dir)

Methods

add_item_file

Adds given item file to dataset items directory, and adds given annotation to dataset annotations directory.

add_item_file_async

Adds given item file to dataset items directory, and adds given annotation to dataset annotations directory.

add_item_np

Adds given numpy array as a pointcloud to dataset items directory, and adds given annotation to dataset ann directory.

add_item_raw_bytes

Not available for PointcloudDataset class object.

add_item_raw_bytes_async

Adds given binary object as an image to dataset items directory, and adds given annotation to dataset ann directory.

datasets_dir

Returns the name of the datasets directory.

delete_item

Delete pointcloud, annotation, pointcloud info and related images from PointcloudDataset.

generate_item_path

Generates full path to the given item.

get_ann

Read pointcloud annotation of item from json.

get_ann_path

Path to the given annotation.

get_blob_img_bytes

Get image bytes from blob file.

get_blob_img_np

Get image as numpy array from blob file.

get_classes_stats

get_image_info

Not available for PointcloudDataset class object.

get_img_info_path

Not available for PointcloudDataset class object.

get_img_path

Not available for PointcloudDataset class object.

get_item_info

Information for Item with given name.

get_item_info_path

Get path to the item info json file without checking if the file exists.

get_item_meta_path

Get path to the item info json file without checking if the file exists.

get_item_path

Path to the given item.

get_item_paths

get_items_names

List of video dataset item names.

get_pointcloud_info

Information for Pointcloud with given name.

get_pointcloud_info_path

get_pointcloud_path

Path to the given pointcloud.

get_related_image_figures

Get figures from related image with given name.

get_related_images

get_related_images_path

get_seg_path

Not available for PointcloudDataset class object.

get_url

Get URL to dataset items list in Supervisely.

ignorable_dirs

Returns the list of ignorable directories.

item_exists

Checks if given item name belongs to the video dataset.

items

This method is used to iterate over dataset items, receiving item name, path to image and path to annotation json file.

key

Returns the key (name) of the dataset.

set_ann

Replaces given annotation for given item name to dataset annotations directory in json format.

set_ann_async

Replaces given annotation for given item name to dataset annotations directory in json format.

set_ann_dict

Replaces given annotation json for given item name to dataset annotations directory in json format.

set_ann_dict_async

Replaces given annotation json for given item name to dataset annotations directory in json format.

set_ann_file

Replaces given annotation json file for given item name to dataset annotations directory in json format.

set_ann_file_async

Replaces given annotation json file for given item name to dataset annotations directory in json format.

to_coco

Convert Supervisely dataset to COCO format.

to_pascal_voc

Convert Supervisely dataset to Pascal VOC format.

to_yolo

Convert Supervisely dataset to YOLO format.

Attributes

ann_dir

Path to the video dataset annotations directory.

ann_dir_name

str: Annotations directory name

blob_dir_name

blob_offsets

List of paths to the dataset blob offset files.

datasets_dir_name

directory

Path to the video dataset directory.

image_infos

If the dataset is opened from the API, returns the list of ImageInfo objects.

img_dir

Not available for PointcloudDataset class object.

img_info_dir

Not available for PointcloudDataset class object.

item_dir

Path to the video dataset items directory.

item_dir_name

str: Items data directory name

item_info_dir

Path to the video dataset item with items info.

item_info_dir_name

str: Items info directory name

meta_dir

Path to the dataset segmentation masks directory.

meta_dir_name

metadata_dir_name

str: Metadata directory name

metadata_directory

Path to the video dataset metadata directory.

name

Video Dataset name.

path

Returns a relative local path to the dataset.

pointcloud_dir

pointcloud_info_dir

project_dir

Path to the video project containing the video dataset.

related_images_dir_name

str: Related images directory name

seg_dir

Not available for PointcloudDataset class object.

seg_dir_name

str: Segmentation masks directory name

short_name

Short dataset name, which does not include it's parents.

annotation_class

alias of PointcloudAnnotation

item_info_class

alias of VideoInfo

item_info_type

alias of PointcloudInfo

classmethod datasets_dir()

Returns the name of the datasets directory.

classmethod ignorable_dirs()

Returns the list of ignorable directories.

static get_url(project_id, dataset_id)

Get URL to dataset items list in Supervisely.

Parameters:
project_id : int

VideoProject ID in Supervisely.

dataset_id : int

VideoDataset ID in Supervisely.

Returns:

URL to dataset items list.

Return type:

str

Usage Example:
from supervisely import VideoDataset

project_id = 10093
dataset_id = 45330
ds_items_link = VideoDataset.get_url(project_id, dataset_id)

print(ds_items_link)
# Output: "/projects/10093/datasets/45330"
add_item_file(item_name, item_path, ann=None, _validate_item=True, _use_hardlink=False, item_info=None)[source]

Adds given item file to dataset items directory, and adds given annotation to dataset annotations directory. if ann is None, creates empty annotation file.

Parameters:
item_name : str

Item name.

item_path : str

Path to the item.

ann=None

Pointcloud annotation object or path to annotation json file.

_validate_item : bool, optional

Checks input files format.

If True creates a hardlink pointing to src named dst, otherwise don’t.

item_info=None

Pointcloud info object or Pointcloud info object converted to dict or path to item info json file for copying to dataset item info directory.

Returns:

None

Return type:

None

Raises:

RuntimeError – if item_name already exists in dataset or item name has unsupported extension.

async add_item_file_async(item_name, item_path, ann=None, _validate_item=True, _use_hardlink=False, item_info=None, img_info=None)

Adds given item file to dataset items directory, and adds given annotation to dataset annotations directory. If ann is None, creates empty annotation file.

Parameters:
item_name : str

Item name.

item_path : str

Path to the item.

ann=None

Annotation object or path to annotation json file.

_validate_item : bool, optional

Checks input files format.

If True creates a hardlink pointing to src named dst, otherwise don’t.

item_info=None

ImageInfo object or ImageInfo object converted to dict or path to item info json file for copying to dataset item info directory.

img_info=None

Deprecated version of item_info parameter. Can be removed in future versions.

Returns:

None

Return type:

NoneType

Raises:

RuntimeError – if item_name already exists in dataset or item name has unsupported extension.

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
ds = sly.Dataset(dataset_path, sly.OpenMode.READ)

ann = "/home/admin/work/supervisely/projects/lemons_annotated/ds1/ann/IMG_8888.jpeg.json"
loop = sly.utils.get_or_create_event_loop()
loop.run_until_complete(
    ds.add_item_file_async("IMG_8888.jpeg", "/home/admin/work/supervisely/projects/lemons_annotated/ds1/img/IMG_8888.jpeg", ann=ann)
)
print(ds.item_exists("IMG_8888.jpeg"))
# Output: True
add_item_np(item_name, pointcloud, ann=None, item_info=None)[source]

Adds given numpy array as a pointcloud to dataset items directory, and adds given annotation to dataset ann directory. if ann is None, creates empty annotation file.

Parameters:
item_name : str

Item name.

pointcloud : np.ndarray

numpy Pointcloud array [N, 3], in (X, Y, Z) format.

ann=None

Pointcloud annotation object or path to annotation .json file.

item_info : NamedTuple, optional

NamedTuple containing information about pointcloud item.

Returns:

None

Return type:

None

Raises:

Exception – if item_name already exists in dataset or item name has unsupported extension

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/ptc_project/ds0"
ds = sly.PointcloudDataset(dataset_path, sly.OpenMode.READ)

pointcloud_path = "/home/admin/Pointclouds/ptc0.pcd"
img_np = sly.image.read(img_path)
ds.add_item_np("IMG_050.jpeg", img_np)
add_item_raw_bytes(item_name, item_raw_bytes, ann=None, img_info=None)[source]

Not available for PointcloudDataset class object. :raises NotImplementedError: in all cases.

async add_item_raw_bytes_async(item_name, item_raw_bytes, ann=None, img_info=None)

Adds given binary object as an image to dataset items directory, and adds given annotation to dataset ann directory. If ann is None, creates empty annotation file.

Parameters:
item_name : str

Item name.

item_raw_bytes : bytes

Binary object.

ann=None

Annotation object or path to annotation json file.

img_info=None

ImageInfo object or ImageInfo object converted to dict or path to item info json file for copying to dataset item info directory.

Returns:

None

Return type:

NoneType

Raises:

RuntimeError – if item_name already exists in dataset or item name has unsupported extension

Usage Example:
import supervisely as sly
from supervisely._utils import run_coroutine

dataset_path = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
ds = sly.Dataset(dataset_path, sly.OpenMode.READ)

img_path = "/home/admin/Pictures/Clouds.jpeg"
img_np = sly.image.read(img_path)
img_bytes = sly.image.write_bytes(img_np, "jpeg")
coroutine = ds.add_item_raw_bytes_async("IMG_050.jpeg", img_bytes)
run_coroutine(coroutine)

print(ds.item_exists("IMG_050.jpeg"))
# Output: True
delete_item(item_name)[source]

Delete pointcloud, annotation, pointcloud info and related images from PointcloudDataset.

Parameters:
item_name : str

Item name.

Returns:

True if successful, otherwise False

Return type:

bool

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/ptc_project/ds0"
ds = sly.PointcloudDataset(dataset_path, sly.OpenMode.READ)
result = dataset.delete_item("PTC_0748.pcd")
# Output: True
generate_item_path(item_name)

Generates full path to the given item.

Parameters:
item_name : str

Item name.

Returns:

Full path to the given item

Return type:

str

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
ds = sly.Dataset(dataset_path, sly.OpenMode.READ)

print(ds.generate_item_path("IMG_0748.jpeg"))
# Output: '/home/admin/work/supervisely/projects/lemons_annotated/ds1/img/IMG_0748.jpeg'
get_ann(item_name, project_meta, key_id_map=None)[source]

Read pointcloud annotation of item from json.

Parameters:
item_name : str

Pointcloud name.

project_meta

Project Meta.

key_id_map=None

Key ID map.

Returns:

Pointcloud annotation object

Return type:

PointcloudAnnotation

Raises:

RuntimeError – if item not found in the project

Usage Example:
import supervisely as sly

project_path = "/home/admin/work/supervisely/projects/pointcloud_project"
project = sly.PointcloudProject(project_path, sly.OpenMode.READ)

ds = project.datasets.get('ds1')

annotation = ds.get_ann("PTC_0056")
# Output: RuntimeError: Item PTC_0056 not found in the project.

annotation = ds.get_ann("PTC_0056.pcd")
print(type(annotation).__name__)
# Output: PointcloudAnnotation
get_ann_path(item_name)[source]

Path to the given annotation.

Parameters:
item_name : str

PointcloudAnnotation name.

Returns:

Path to the given annotation

Return type:

str

Raises:

RuntimeError – if item not found in the project

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/ptc_project/ds0"
ds = sly.PointcloudDataset(dataset_path, sly.OpenMode.READ)

ds.get_ann_path("PTC_0748")
# Output: RuntimeError: Item PTC_0748 not found in the project.

ds.get_ann_path("PTC_0748.pcd")
# Output: '/home/admin/work/supervisely/projects/ptc_project/ds0/ann/IMG_0748.pcd.json'
get_blob_img_bytes(image_name)

Get image bytes from blob file.

Parameters:
image_name : str

Image name with extension.

Returns:

Bytes of the image.

Return type:

bytes

Usage Example:
import supervisely as sly

dataset_path = "/path/to/project/lemons_annotated/ds1"
dataset = sly.Dataset(dataset_path, sly.OpenMode.READ)
image_name = "IMG_0748.jpeg"

img_bytes = dataset.get_blob_img_bytes(image_name)
get_blob_img_np(image_name)

Get image as numpy array from blob file.

Parameters:
image_name : str

Image name with extension.

Returns:

Numpy array of the image.

Return type:

numpy.ndarray

Usage Example:
import supervisely as sly

dataset_path = "/path/to/project/lemons_annotated/ds1"
dataset = sly.Dataset(dataset_path, sly.OpenMode.READ)
image_name = "IMG_0748.jpeg"
img_np = dataset.get_blob_img_np(image_name)
get_image_info(item_name)[source]

Not available for PointcloudDataset class object. :raises NotImplementedError: in all cases.

get_img_info_path(img_name)[source]

Not available for PointcloudDataset class object. :raises NotImplementedError: in all cases.

get_img_path(item_name)[source]

Not available for PointcloudDataset class object. :raises NotImplementedError: in all cases.

get_item_info(item_name)

Information for Item with given name.

Parameters:
item_name : str

Item name.

Returns:

VideoInfo object.

Return type:

VideoInfo

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/videos_example/ds0"
ds = sly.VideoDataset(dataset_path, sly.OpenMode.READ)

print(ds.get_item_info("video_0748.mp4"))
# Output:
# VideoInfo(
#     id=198702499,
#     name='video_0748.mp4',
#     hash='ehYHLNFWmMNuF2fPUgnC/g/tkIIEjNIOhdbNLQXkE8Y=',
#     team_id=16087,
#     workspace_id=23821,
#     project_id=124974,
#     dataset_id=466639,
#     path_original='/h5un6l2bnaz1vj8a9qgms4-public/videos/w/7/i4/GZYoCs...9F3kyVJ7.mp4',
#     frames_to_timecodes=[0, 0.033367, 0.066733, 0.1001,...,10.777433, 10.8108, 10.844167],
#     frames_count=326,
#     frame_width=3840,
#     frame_height=2160,
#     created_at='2021-03-23T13:14:25.536Z',
#     updated_at='2021-03-23T13:16:43.300Z'
# )
get_item_info_path(item_name)

Get path to the item info json file without checking if the file exists.

Parameters:
item_name : str

Item name.

Returns:

Path to the given item info json file.

Return type:

str

Raises:

RuntimeError – if item not found in the project.

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/videos_example/ds0"
ds = sly.VideoDataset(dataset_path, sly.OpenMode.READ)

print(ds.get_item_info_path("video_0748"))
# Output: RuntimeError: Item video_0748 not found in the project.

print(ds.get_item_info_path("video_0748.mp4"))
# Output: '/home/admin/work/supervisely/projects/videos_example/ds0/video_info/video_0748.mp4.json'
get_item_meta_path(item_name)

Get path to the item info json file without checking if the file exists.

Parameters:
item_name : str

Item name.

Returns:

Path to the given item info json file.

Return type:

str

Raises:

RuntimeError – if item not found in the project.

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
ds = sly.Dataset(dataset_path, sly.OpenMode.READ)

print(ds.get_item_info_path("IMG_0748"))
# Output: RuntimeError: Item IMG_0748 not found in the project.

print(ds.get_item_info_path("IMG_0748.jpeg"))
# Output: '/home/admin/work/supervisely/projects/lemons_annotated/ds1/img_info/IMG_0748.jpeg.json'
get_item_path(item_name)

Path to the given item.

Parameters:
item_name : str

Item name.

Returns:

Path to the given item.

Return type:

str

Raises:

RuntimeError – if item not found in the project

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/videos_example/ds0"
ds = sly.VideoDataset(dataset_path, sly.OpenMode.READ)

print(ds.get_item_path("video_0748"))
# Output: RuntimeError: Item video_0748 not found in the project.

print(ds.get_item_path("video_0748.mp4"))
# Output: '/home/admin/work/supervisely/projects/videos_example/ds0/video/video_0748.mp4'
get_items_names()

List of video dataset item names.

Returns:

List of item names.

Return type:

List[str]

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/videos_example/ds0"
ds = sly.VideoDataset(dataset_path, sly.OpenMode.READ)

print(ds.get_item_names())
# Output: ['video_0002.mp4', 'video_0005.mp4', 'video_0008.mp4', ...]
get_pointcloud_info(item_name)[source]

Information for Pointcloud with given name.

Parameters:
item_name : str

Pointcloud name.

Returns:

Pointcloud with information for the given Dataset

Return type:

NamedTuple

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/ptc_project/ds0"
ds = sly.PointcloudDataset(dataset_path, sly.OpenMode.READ)
info = ds.get_pointcloud_info("IMG_0748.pcd")
get_pointcloud_path(item_name)[source]

Path to the given pointcloud.

Parameters:
item_name : str

Pointcloud name

Returns:

Path to the given pointcloud

Return type:

str

Raises:

RuntimeError – if item not found in the project

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/ptc_project/ds0"
ds = sly.PointcloudDataset(dataset_path, sly.OpenMode.READ)

ds.get_pointcloud_path("PTC_0748")
# Output: RuntimeError: Item PTC_0748 not found in the project.

ds.get_pointcloud_path("PTC_0748.pcd")
# Output: '/home/admin/work/supervisely/projects/ptc_project/ds0/pointcloud/PTC_0748.pcd'

Get figures from related image with given name.

Parameters:

Name of the item in the dataset.

Related image name.

Returns:

List of figures from related image.

Return type:

List[Dict]

Raises:

RuntimeError – if item not found in the project

get_seg_path(item_name)[source]

Not available for PointcloudDataset class object. :raises NotImplementedError: in all cases.

item_exists(item_name)

Checks if given item name belongs to the video dataset.

Parameters:
item_name : str

Item name.

Returns:

True if item exist, otherwise False.

Return type:

bool

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/videos_example/ds0"
ds = sly.VideoDataset(dataset_path, sly.OpenMode.READ)

ds.item_exists("video_0748")     # False
ds.item_exists("video_0748.mp4") # True
items()

This method is used to iterate over dataset items, receiving item name, path to image and path to annotation json file. It is useful when you need to iterate over dataset items and get paths to images and annotations.

Returns:

Generator object, that yields tuple of item name, path to image and path to annotation json file.

Return type:

Generator[Tuple[str]]

Usage Example:
import supervisely as sly

input = "path/to/local/directory"
# Creating Supervisely project from local directory.
project = sly.Project(input, sly.OpenMode.READ)

for dataset in project.datasets:
    for item_name, image_path, ann_path in dataset.items():
        print(f"Item '{item_name}': image='{image_path}', ann='{ann_path}'")
key()

Returns the key (name) of the dataset.

set_ann(item_name, ann, key_id_map=None)

Replaces given annotation for given item name to dataset annotations directory in json format.

Parameters:
item_name : str

Item name.

ann

VideoAnnotation object.

key_id_map=None

KeyIdMap object.

Returns:

None

Return type:

NoneType

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/videos_example/ds0"
ds = sly.VideoDataset(dataset_path, sly.OpenMode.READ)

height, width = 500, 700
new_ann = sly.VideoAnnotation((height, width), frames_count=0)
ds.set_ann("video_0748.mp4", new_ann)
async set_ann_async(item_name, ann)

Replaces given annotation for given item name to dataset annotations directory in json format.

Parameters:
item_name : str

Item name.

ann

Annotation object.

Returns:

None

Return type:

NoneType

Usage Example:
import supervisely as sly
from supervisely._utils import run_coroutine

dataset_path = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
ds = sly.Dataset(dataset_path, sly.OpenMode.READ)

height, width = 500, 700
new_ann = sly.Annotation((height, width))

coroutine = ds.set_ann_async("IMG_0748.jpeg", new_ann)
run_coroutine(coroutine)
set_ann_dict(item_name, ann)

Replaces given annotation json for given item name to dataset annotations directory in json format.

Parameters:
item_name : str

Item name.

ann : dict

Annotation as a dict in json format.

Returns:

None

Return type:

NoneType

Raises:

RuntimeError – if ann_path is not str

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
ds = sly.Dataset(dataset_path, sly.OpenMode.READ)

new_ann_json = {
    "description":"",
    "size":{"height":500, "width":700},
    "tags":[],
    "objects":[],
    "customBigData":{}
}

ds.set_ann_dict("IMG_8888.jpeg", new_ann_json)
async set_ann_dict_async(item_name, ann)

Replaces given annotation json for given item name to dataset annotations directory in json format.

Parameters:
item_name : str

Item name.

ann : dict

Annotation as a dict in json format.

Returns:

None

Return type:

NoneType

Raises:

RuntimeError – if ann_path is not str

Usage Example:
import supervisely as sly
from supervisely._utils import run_coroutine

dataset_path = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
ds = sly.Dataset(dataset_path, sly.OpenMode.READ)

new_ann_json = {
    "description":"",
    "size":{"height":500, "width":700},
    "tags":[],
    "objects":[],
    "customBigData":{}
}

coroutine = ds.set_ann_dict_async("IMG_8888.jpeg", new_ann_json)
run_coroutine(coroutine)
set_ann_file(item_name, ann_path)

Replaces given annotation json file for given item name to dataset annotations directory in json format.

Parameters:
item_name : str

Item Name.

ann_path : str

Path to the Annotation json file.

Returns:

None

Return type:

NoneType

Raises:

RuntimeError – if ann_path is not str

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
ds = sly.Dataset(dataset_path, sly.OpenMode.READ)

new_ann = "/home/admin/work/supervisely/projects/kiwi_annotated/ds1/ann/IMG_1812.jpeg.json"
ds.set_ann_file("IMG_1812.jpeg", new_ann)
async set_ann_file_async(item_name, ann_path)

Replaces given annotation json file for given item name to dataset annotations directory in json format.

Parameters:
item_name : str

Item Name.

ann_path : str

Path to the Annotation json file.

Returns:

None

Return type:

NoneType

Raises:

RuntimeError – if ann_path is not str

Usage Example:
import supervisely as sly
from supervisely._utils import run_coroutine

dataset_path = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
ds = sly.Dataset(dataset_path, sly.OpenMode.READ)
new_ann = "/home/admin/work/supervisely/projects/kiwi_annotated/ds1/ann/IMG_1812.jpeg.json"

coroutine = ds.set_ann_file_async("IMG_1812.jpeg", new_ann)
run_coroutine(coroutine)
to_coco(meta, return_type='path', dest_dir=None, copy_images=False, with_captions=False, log_progress=False, progress_cb=None)

Convert Supervisely dataset to COCO format.

Note: Depending on the return_type and with_captions parameters, the function returns different values.

If return_type is “path”, the COCO annotation files will be saved to the disk. If return_type is “dict”, the function returns COCO dataset in dictionary format. If with_captions is True, the function returns Tuple (instances and captions).

Parameters:
meta

Project meta information.

return_type : str, optional

Return type (path or dict).

dest_dir : str, optional

Path to save COCO dataset.

copy_images : bool, optional

If True, copies images to the COCO dataset directory.

with_captions : bool, optional

If True, returns captions

log_progress : str, optional

If True, log progress.

progress_cb=None

Progress callback.

Returns:

COCO dataset in dictionary format.

Return type:

dict

Usage Example:
import supervisely as sly

project_path = "/home/admin/work/supervisely/projects/lemons_annotated"
project = sly.Project(project_path, sly.OpenMode.READ)

for ds in project.datasets:
    dest_dir = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
    coco: Tuple[Dict, Dict] = ds.to_coco(project.meta, dest_dir=dest_dir)
to_pascal_voc(meta, dest_dir=None, train_val_split_coef=0.8, log_progress=False, progress_cb=None)

Convert Supervisely dataset to Pascal VOC format.

Parameters:
meta

Project meta information.

dest_dir : str, optional

Destination directory.

train_val_split_coef : float, optional

Coefficient for splitting images into train and validation sets.

log_progress : str, optional

If True, log progress.

progress_cb=None

Progress callback.

Returns:

None

Return type:

NoneType

Usage Example:
import supervisely as sly

project_path = "/home/admin/work/supervisely/projects/lemons_annotated"
project = sly.Project(project_path, sly.OpenMode.READ)

for ds in project.datasets:
    dest_dir = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
    ds.to_pascal_voc(project.meta, dest_dir=dest_dir)
to_yolo(meta, dest_dir=None, task_type='detect', log_progress=False, progress_cb=None, is_val=None)

Convert Supervisely dataset to YOLO format.

Parameters:
meta

Project meta information.

dest_dir : str, optional

Path to save YOLO dataset.

task_type : str, optional

Task type.

log_progress : str, optional

If True, log progress.

progress_cb=None

Progress callback.

is_val : bool, optional

If True, the dataset is a validation dataset.

Returns:

YOLO dataset in dictionary format.

Return type:

dict

Usage Example:
import supervisely as sly

project_path = "/home/admin/work/supervisely/projects/lemons_annotated"
project = sly.Project(project_path, sly.OpenMode.READ)

for ds in project.datasets:
    dest_dir = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
    ds.to_yolo(project.meta, dest_dir=dest_dir)
property ann_dir : str

Path to the video dataset annotations directory.

Returns:

Path to the video dataset directory with annotations.

Return type:

str

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/videos_example/ds0"
ds = sly.VideoDataset(dataset_path, sly.OpenMode.READ)

print(ds.ann_dir)
# Output: '/home/admin/work/supervisely/projects/videos_example/ds0/ann'
ann_dir_name = 'ann'

str: Annotations directory name

property blob_offsets

List of paths to the dataset blob offset files.

Returns:

List of paths to the dataset blob offset files.

Return type:

List[str]

property directory : str

Path to the video dataset directory.

Returns:

Path to the video dataset directory.

Return type:

str

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/videos_example/ds0"
ds = sly.VideoDataset(dataset_path, sly.OpenMode.READ)

print(ds.directory)
# Output: '/home/admin/work/supervisely/projects/videos_example/ds0'
property image_infos : list[supervisely.api.image_api.ImageInfo]

If the dataset is opened from the API, returns the list of ImageInfo objects. Otherwise raises an exception.

Raises:

ValueError – If the dataset is opened in local mode.

Returns:

List of ImageInfo objects.

Return type:

List[ImageInfo]

property img_dir : str

Not available for PointcloudDataset class object. :raises NotImplementedError: in all cases.

property img_info_dir

Not available for PointcloudDataset class object. :raises NotImplementedError: in all cases.

property item_dir : str

Path to the video dataset items directory.

Returns:

Path to the video dataset items directory.

Return type:

str

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/videos_example/ds0"
ds = sly.VideoDataset(dataset_path, sly.OpenMode.READ)

print(ds.item_dir)
# Output: '/home/admin/work/supervisely/projects/videos_example/ds0/video'
item_dir_name = 'pointcloud'

str: Items data directory name

property item_info_dir

Path to the video dataset item with items info.

Returns:

Path to the video dataset directory with items info.

Return type:

str

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/videos_example/ds0"
ds = sly.VideoDataset(dataset_path, sly.OpenMode.READ)

print(ds.item_info_dir)
# Output: '/home/admin/work/supervisely/projects/videos_example/ds0/video_info'
item_info_dir_name = 'pointcloud_info'

str: Items info directory name

property meta_dir

Path to the dataset segmentation masks directory.

Returns:

Path to the dataset directory with masks.

Return type:

str

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
ds = sly.Dataset(dataset_path, sly.OpenMode.READ)

print(ds.meta_dir)
# Output: '/home/admin/work/supervisely/projects/lemons_annotated/ds1/meta'
property metadata_directory : str

Path to the video dataset metadata directory.

Returns:

Path to the video dataset metadata directory.

Return type:

str

Usage example:
import supervisely as sly
dataset_path = "/home/admin/work/supervisely/projects/videos_example/ds0"
ds = sly.VideoDataset(dataset_path, sly.OpenMode.READ)

print(ds.metadata_directory)
# Output: '/home/admin/work/supervisely/projects/videos_example/ds0/metadata'
property name : str

Video Dataset name.

Returns:

Video Dataset Name.

Return type:

str

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/videos_example/ds0"
ds = sly.VideoDataset(dataset_path, sly.OpenMode.READ)
print(ds.name)
# Output: "ds0"
property path : str

Returns a relative local path to the dataset.

Returns:

Relative local path to the dataset.

Return type:

str

property project_dir : str

Path to the video project containing the video dataset.

Returns:

Path to the video project.

Return type:

str

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/videos_example/ds0"
ds = sly.VideoDataset(dataset_path, sly.OpenMode.READ)
print(ds.project_dir)
# Output: "/home/admin/work/supervisely/projects/videos_example"
related_images_dir_name = 'related_images'

str: Related images directory name

property seg_dir

Not available for PointcloudDataset class object. :raises NotImplementedError: in all cases.

seg_dir_name = None

str: Segmentation masks directory name

property short_name : str

Short dataset name, which does not include it’s parents. To get the full name of the dataset, use name.

Returns:

Dataset Name.

Return type:

str

Usage Example:
import supervisely as sly

dataset_path = "/home/admin/work/supervisely/projects/lemons_annotated/ds1"
ds = sly.Dataset(dataset_path, sly.OpenMode.READ)
print(ds.name)
# Output: "ds1"