Skip to content
This repository has been archived by the owner on Oct 9, 2023. It is now read-only.

Latest commit

 

History

History
100 lines (74 loc) · 3.1 KB

pointcloud_segmentation.rst

File metadata and controls

100 lines (74 loc) · 3.1 KB

Point cloud segmentation is currently in Beta.

Point Cloud Segmentation

The Task

A Point Cloud is a set of data points in space, usually describes by x, y and z coordinates.

PointCloud Segmentation is the task of performing classification at a point-level, meaning each point will associated to a given class. The current integration builds on top Open3D-ML.


Example

Let's look at an example using a data set generated from the KITTI Vision Benchmark. The data are a tiny subset of the original dataset and contains sequences of point clouds. The data contains multiple folder, one for each sequence and a meta.yaml file describing the classes and their official associated color map. A sequence should contain one folder for scans and one folder for labels, plus a pose.txt to re-align the sequence if required. Here's the structure:

data
├── meta.yaml
├── 00
│   ├── scans
|   |    ├── 00000.bin
|   |    ├── 00001.bin
|   |    ...
│   ├── labels
|   |    ├── 00000.label
|   |    ├── 00001.label
|   |   ...
|   ├── pose.txt
│   ...
|
└── XX
   ├── scans
   |    ├── 00000.bin
   |    ├── 00001.bin
   |    ...
   ├── labels
   |    ├── 00000.label
   |    ├── 00001.label
   |   ...
   ├── pose.txt

Learn more: http://www.semantic-kitti.org/dataset.html

Once we've downloaded the data using ~flash.core.data.download_data, we create the PointCloudSegmentationData. We select a pre-trained randlanet_semantic_kitti backbone for our PointCloudSegmentation task. We then use the trained PointCloudSegmentation for inference. Finally, we save the model. Here's the full example:

../../../flash_examples/pointcloud_segmentation.py

To learn how to view the available backbones / heads for this task, see backbones_heads.

image


Flash Zero

The point cloud segmentation task can be used directly from the command line with zero code using flash_zero. You can run the above example with:

flash pointcloud_segmentation

To view configuration options and options for running the point cloud segmentation task with your own data, use:

flash pointcloud_segmentation --help