Skip to main content
PyTorch PointCloud

Deep learning on point clouds, with PyTorch.
Models, pretrained weights, datasets, transforms and inferers, in the style of timm and PyG.

PyPI Python PyTorch Tests License

Documentation  ·  Model zoo  ·  Tutorials  ·  Changelog


ClassificationPart segmentationIndoor segmentation and detection

Feature similarityLiDAR segmentation and detectionLarge-scale features



Installation

pip install torch-pointcloud

Most models also need pyg-lib, and some a CUDA extension (spconv, flash-attn, ...), built for your torch and CUDA versions. Read the installation documentation for further details.


Quickstart

import torch
import torch_pointcloud as tp

# Requires pyg-lib
model = tp.create_model(
    "pointnext-sm.scanobjectnn-hardest.openpoints",
    task="classification",
    pretrained=True,
).eval()

pos = torch.randn(2048, 3)  # (N, 3) coordinates
x = torch.cat([pos, pos[:, 1:2] - pos[:, 1].min()], dim=1)  # (N, 4) features: xyz + height
batch = torch.zeros(2048, dtype=torch.long)  # (N,) batch index

with torch.no_grad():
    logits = model(x, pos, batch)  # (1, 15)

Each checkpoint ships information about the model, such as the transform used to preprocess the input, metrics, license and more.

import torch_pointcloud as tp

# Requires spconv and flash-attn
model, info = tp.create_model("ptv3-base.scannet20.pointcept", task="semantic-segmentation", pretrained=True, return_info=True)
info["transform"]  # the preprocessing pipeline of that checkpoint
info["weights"]["metrics"]  # {"mIoU": 77.40, "OA": 92.01}

tp.list_models("pointnext*")  # every registered PointNeXt config
tp.list_models(task="detection", pretrained=True)  # all detection checkpoints

See the examples directory for benchmarks and training recipes.


Why torch-pointcloud?

torch-pointcloud is a library of pretrained models that makes common layers and backbones easy to reuse. It does not replace research-first codebases such as Pointcept, OpenPCDet and MMDetection3D or OpenPoints but it complements them with a common interface that makes benchmarking and interoperability across architectures easier.


Contributing

Contributions are welcome. See CONTRIBUTING.md for the development setup and the pull request checks.


Citation

If you find this project useful, please consider citing:

@software{dujardin2026pytorchpointcloud,
  author = {Dujardin, Arthur},
  title = {PyTorch PointCloud},
  year = {2026},
  url = {https://github.com/arthurdjn/pytorch-pointcloud},
  doi = {10.5281/zenodo.22159632},
  license = {Apache-2.0}
}

License

Apache 2.0. See LICENSE.

Pretrained weights and adapted code keep the license of their source, and some checkpoints are restricted to non-commercial use. Most were trained on research-only datasets, whose terms also apply to the weights. See THIRD_PARTY_NOTICES.md.

Metadata

Release files for torch-pointcloud 0.0.13

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for torch-pointcloud 0.0.13
File Size Uploaded
torch_pointcloud-0.0.13.tar.gz 581.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for torch-pointcloud 0.0.13
File Interpreter ABI Platform
torch_pointcloud-0.0.13-py3-none-any.whl Python 3 none any Details

Total release size: 1.3 MB

Release files / torch_pointcloud-0.0.13.tar.gz

Download URL torch_pointcloud-0.0.13.tar.gz
Size 581.3 kB
Tags Source
SHA-256 checksum
How to use checksums
5e9176f07d46d6eda311332f4702f424cd552042601d782f8f0479291d13ac77
BLAKE2b-256 checksum
How to use checksums
a0be7b4c52fa5e7de9e6efbc4a3bf0de16e79714a2e1dcc7cd30f6f1b30ac3ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / torch_pointcloud-0.0.13-py3-none-any.whl

Download URL torch_pointcloud-0.0.13-py3-none-any.whl
Size 714.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
296fc7347fbdf12ba3dbdf16c7424f2b7fa93a22fca126b0ba8594e6486e5b69
BLAKE2b-256 checksum
How to use checksums
fe3bf56eef7add578526d96ae7d9fcbabcf006585038a06851cf7a8657ecd03f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

0.0.14

2 release files

This release

0.0.13 This release

2 release files

0.0.10

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page