github_url: | https://github.com/nicolas-chaulet/torch-points3d |
---|
.. toctree:: :maxdepth: 2 :caption: Contents:
Torch Points 3D is a framework for developing and testing common deep learning models to solve tasks related to unstructured 3D spatial data i.e. Point Clouds. The framework currently integrates some of the best published architectures and it integrates the most common public datasests for ease of reproducibility. It heavily relies on Pytorch Geometric and Facebook Hydra library thanks for the great work!
We aim to build a tool which can be used for benchmarking SOTA models, while also allowing practitioners to efficiently pursue research into point cloud analysis, with the end-goal of building models which can be applied to real-life applications.

You can easily install Torch Points3D with pip
pip install torch
pip install torch-points3d
but first make sure that the following dependencies are met
- CUDA 10 or higher (if you want GPU version)
- Python 3.6 or higher + headers (python-dev)
- PyTorch 1.7 or higher
- MinkowskiEngine (optional) see here for installation instructions
- Task driven implementation with dynamic model and dataset resolution from arguments.
- Core implementation of common components for point cloud deep learning - greatly simplifying the creation of new models:
- Core Architectures - Unet
- Core Modules - Residual Block, Down-sampling and Up-sampling convolutions
- Core Transforms - Rotation, Scaling, Jitter
- Core Sampling - FPS, Random Sampling, Grid Sampling
- Core Neighbour Finder - Radius Search, KNN
- 4 Base Convolution base classes to simplify the implementation of new convolutions. Each base class supports a different data format (B = number of batches, C = number of features):
- DENSE (B, num_points, C)
- PARTIAL DENSE (B * num_points, C)
- MESSAGE PASSING (B * num_points, C)
- SPARSE (B * num_points, C)
- Models can be completely specified using a YAML file, greatly easing reproducability.
- Several visualiation tools (tensorboard, wandb) and dynamic metric-based model checkpointing , which is easily customizable.
- Dynamic customized placeholder resolution for smart model definition.
The following models have been tested and validated:
- Relation-Shape Convolutional (RSConv) Neural Network for Point Cloud Analysis
- KPConv: Flexible and Deformable Convolution for Point Clouds
- PointCNN: Convolution On X-Transformed Points
- PointNet++: Deep Hierarchical Feature Learning on Point Sets in a Metric Space
- 4D Spatio-Temporal ConvNets: Minkowski Convolutional Neural Networks
- Deep Hough Voting for 3D Object Detection in Point Clouds
We are actively working on adding the following ones to the framework:
- RandLA-Net: Efficient Semantic Segmentation of Large-Scale Point Clouds - implemented but not completely tested
and much more to come ...
- Segmentation
- Registration
- Classification
- Object detection
.. toctree:: :glob: :maxdepth: 1 :caption: Developer guide :hidden: src/gettingstarted src/tutorials src/advanced
.. toctree:: :glob: :maxdepth: 2 :caption: API :hidden: src/api/models src/api/datasets src/api/transforms src/api/filters