pytorch-pointcloud
A PyTorch library for deep learning on point clouds: models, pretrained weights, datasets, transforms and inferers, inspired by timm.
Check out the documentation at pytorch-pointcloud.org!
|
Object classification pointnet2-ssg.modelnet40.xu-yan
|
Part segmentation pointnext-sm.shapenetpart.openpoints
|
Indoor segmentation / detection ptv3-base.scannet20.pointcept
|
|
Outdoor segmentation / detection spvcnn-119gmacs.semantickitti.mit-han-labsecond.kitti.openpcdet
|
Large scale segmentation utonia-lp.scannet20.pointcept
|
Feature extraction sonata-lp.scannet20.fair
|
Installation
Install the library with pip (or uv):
pip install torch-pointcloud
Quickstart
import torch
import torch_pointcloud as tp
# Requires torch-cluster, torch-scatter
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 the transform that turns a raw point cloud into what the network expects:
import torch_pointcloud as tp
# Requires torch-scatter, torch-cluster, spconv
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.
Documentation
The documentation covers installation, a get-started guide, the model zoo, datasets, transforms, tutorials and the full API reference.
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.
Release files for torch-pointcloud 0.0.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| torch_pointcloud-0.0.7.tar.gz | 561.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| torch_pointcloud-0.0.7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.2 MB
Release files / torch_pointcloud-0.0.7.tar.gz
| Download URL | torch_pointcloud-0.0.7.tar.gz |
|---|---|
| Size | 561.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
12d26ec2800b6922bde176b1d4a11244182dce7748c0988f73a833333c9ab614
|
|
BLAKE2b-256 checksum How to use checksums |
ca84c08b0d77e60fc99a48783143258a06c1402c9720a12746f7aa25cf0f2e1e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.18 {"installer":{"name":"uv","version":"0.12.18","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.7-py3-none-any.whl
| Download URL | torch_pointcloud-0.0.7-py3-none-any.whl |
|---|---|
| Size | 682.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8fb82addc055e278b52ca68b552850b94cd1346bb9a1374a5de8171547cf503e
|
|
BLAKE2b-256 checksum How to use checksums |
e2b3e1b7afe1c2161ab0526f827fea66eea32f8ddf8436d33d9d12e41c511627
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.18 {"installer":{"name":"uv","version":"0.12.18","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}
|