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 (create_model warns when loading them). 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.16

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.16
File Size Uploaded
torch_pointcloud-0.0.16.tar.gz 586.9 kB Details

Built distribution (wheel)

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

Total release size: 1.3 MB

Release files / torch_pointcloud-0.0.16.tar.gz

Download URL torch_pointcloud-0.0.16.tar.gz
Size 586.9 kB
Tags Source
SHA-256 checksum
How to use checksums
7ec6025187aaee9dd6892d7459756f481f8be1c7a25fde14444366d2f8d106e6
BLAKE2b-256 checksum
How to use checksums
c9058d14a8ccce3520d22aefd6cf6236666cd3aaf91dc28f38a1de44dd9c8e3b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","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.16-py3-none-any.whl

Download URL torch_pointcloud-0.0.16-py3-none-any.whl
Size 720.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cc752718873262b639d2ad723fe151a3b96854e5f65ea1e0929607b0fc60219c
BLAKE2b-256 checksum
How to use checksums
09912544ca6f0b9fb4e6a75791de049d251fe21980aa59d706a9f7ee35a797bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","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

This release

0.0.16 This release

2 release files

0.0.15

2 release files

0.0.14

2 release files

0.0.13

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