A 3D extension of torchvision.
Project description
vision3d
This library is a 3D extension of torchvision, providing datasets, tensor types, transforms, ops, metrics, and visualization utilities for 3D perception tasks.
Documentation is available at vision3d.dev.
[!WARNING]
vision3dis in active early development. The API may change without notice and documentation may be incomplete.
Requirements
- Python 3.12 or newer.
- PyTorch 2.10 or newer.
- Recommended: A CUDA-capable NVIDIA GPU for GPU execution.
- For building from source: the CUDA toolkit matching your PyTorch build.
Installation
vision3d is published on PyPI as a pre-built wheel and sdist.
The wheel is built against the
LibTorch Stable ABI
and statically links the CUDA runtime, so one wheel works for any
Python 3.12+, torch 2.10+, and any
NVIDIA driver that supports CUDA 12.8 or newer
(Linux driver ≥ 570).
From PyPI
We recommend using uv as your package manager:
uv add vision3d
Or with pip:
pip install vision3d
From source
Clone the repository and sync the environment:
git clone https://github.com/yeetypete/vision3d.git
cd vision3d
uv sync --all-extras
uv sync compiles the C++/CUDA extension as part of installing the project. On
machines where CUDA is installed but no GPU is visible (for example, inside
containers), force a CUDA build with:
FORCE_CUDA=1 TORCH_CUDA_ARCH_LIST="12.0+PTX" uv sync --all-extras
[!NOTE]
TORCH_CUDA_ARCH_LISTselects which NVIDIA compute capabilities to compile CUDA kernels for (e.g.12.0for RTX 50-series). See the PyTorch docs for the full syntax.
To produce a wheel locally:
uv build
By default uv build resolves torch from PyPI, which currently ships the cu130
variant. If your local CUDA toolkit is a different major version, point uv at
the matching PyTorch wheel index instead:
uv build --index https://download.pytorch.org/whl/cu128
Replace cu128 with whatever CUDA major version your installed CUDA toolkit
ships, e.g. cu130, cu132.
Extras
nuscenes: pulls innuscenes-devkitfor the nuScenes dataset loader.viz: pulls inrerun-sdkfor the visualization utilities invision3d.viz.
Request them at install time, for example: uv add 'vision3d[nuscenes,viz]'.
Contributing
Contributions are welcome! See CONTRIBUTING.md for how to get started.
License
vision3d is released under the
BSD 3-Clause License.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file vision3d-0.3.0.tar.gz.
File metadata
- Download URL: vision3d-0.3.0.tar.gz
- Upload date:
- Size: 92.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c8043b42273f6c8988d1c17abec9e9d8d8c6a9936b7d7926228e36f57e2834c0
|
|
| MD5 |
50abb84d7c0f5210101b83cc273229c3
|
|
| BLAKE2b-256 |
5c9169aa1d3162c7314864fc14c6e57fec32b9ba5dfa229d0b10f3557ed85219
|