Skip to content

Latest commit

 

History

History
178 lines (128 loc) · 5.69 KB

NeolixOD.rst

File metadata and controls

178 lines (128 loc) · 5.69 KB

Neolix OD

This topic describes how to manage the Neolix OD dataset, which is a dataset with reference/label_format:Box3D label type (Fig. %s <example-neolixod>).

The preview of a point cloud from "Neolix OD" with Box3D labels.The preview of a point cloud from "Neolix OD" with Box3D labels.

Authorize a Client Instance

An reference/glossary:accesskey is needed to authenticate identity when using TensorBay.

../../../docs/code/NeolixOD.py

Create Dataset

../../../docs/code/NeolixOD.py

Organize Dataset

It takes the following steps to organize "Neolix OD" dataset by the ~tensorbay.dataset.dataset.Dataset instance.

Step 1: Write the Catalog

A Catalog <reference/dataset_structure:catalog> contains all label information of one dataset, which is typically stored in a json file.

../../../tensorbay/opendataset/NeolixOD/catalog.json

The only annotation type for "Neolix OD" is reference/label_format:Box3D, and there are 15 reference/label_format:Category types and 3 reference/label_format:Attributes types.

Important

See catalog table <reference/dataset_structure:catalog> for more catalogs with different label types.

Step 2: Write the Dataloader

A reference/glossary:dataloader is needed to organize the dataset into a ~tensorbay.dataset.dataset.Dataset instance.

../../../tensorbay/opendataset/NeolixOD/loader.py

See Box3D annotation <reference/label_format:Box3D> for more details.

Note

Since the Neolix OD dataloader <neolixod-dataloader> above is already included in TensorBay, so it uses relative import. However, the regular import should be used when writing a new dataloader.

../../../docs/code/NeolixOD.py

There are already a number of dataloaders in TensorBay SDK provided by the community. Thus, instead of writing, importing an available dataloader is also feasible.

../../../docs/code/NeolixOD.py

Note

Note that catalogs are automatically loaded in available dataloaders, users do not have to write them again.

Important

See dataloader table <reference/glossary:dataloader> for dataloaders with different label types.

Visualize Dataset

Optionally, the organized dataset can be visualized by Pharos, which is a TensorBay SDK plug-in. This step can help users to check whether the dataset is correctly organized. Please see features/visualization:Visualization for more details.

Upload Dataset

The organized "Neolix OD" dataset can be uploaded to tensorBay for sharing, reuse, etc.

../../../docs/code/NeolixOD.py

Similar with Git, the commit step after uploading can record changes to the dataset as a version. If needed, do the modifications and commit again. Please see features/version_control:Version Control for more details.

Read Dataset

Now "Neolix OD" dataset can be read from TensorBay.

../../../docs/code/NeolixOD.py

In reference/dataset_structure:Dataset "Neolix OD", there is only one segment <reference/dataset_structure:Segment>: default. Get a segment by passing the required segment name or the index.

../../../docs/code/NeolixOD.py

In the default reference/dataset_structure:Segment, there is a sequence of reference/dataset_structure:Data, which can be obtained by index.

../../../docs/code/NeolixOD.py

In each reference/dataset_structure:Data, there is a sequence of reference/label_format:Box3D annotations,

../../../docs/code/NeolixOD.py

There is only one label type in "Neolix OD" dataset, which is box3d. The information stored in reference/label_format:Category is one of the category names in "categories" list of catalog.json <neolixod-catalog>. The information stored in reference/label_format:Attributes is one of the attributes in "attributes" list of catalog.json <neolixod-catalog>. See reference/label_format:Box3D label format for more details.

Delete Dataset

../../../docs/code/NeolixOD.py