Skip to main content

3D visualization + Python

Project description

viser logo viser viser logo

pyright mypy typescript-compile codecov

viser is a library for interactive 3D visualization in Python.

Features include:

  • API for visualizing 3D primitives
  • GUI building blocks: buttons, checkboxes, text inputs, sliders, etc.
  • Scene interaction tools (clicks, selection, transform gizmos)
  • Programmatic camera control and rendering
  • An entirely web-based client, for easy use over SSH!

For usage and API reference, see our documentation.

Installation

You can install viser with pip:

pip install viser

To include example dependencies:

pip install viser[examples]
# Clone the repository.
git clone https://github.com/nerfstudio-project/viser.git

# Install the package.
# You can also install via pip: `pip install viser`.
cd ./viser
pip install -e .[examples]

# Run an example.
python ./examples/02_gui.py

After an example script is running, you can connect by navigating to the printed URL (default: http://localhost:8080).

See also: our development docs.

Examples

Point cloud visualization

https://github.com/nerfstudio-project/viser/assets/6992947/df35c6ee-78a3-43ad-a2c7-1dddf83f7458

Source: ./examples/07_record3d_visualizer.py

Gaussian splatting visualization

https://github.com/nerfstudio-project/viser/assets/6992947/c51b4871-6cc8-4987-8751-2bf186bcb1ae

Source: WangFeng18/3d-gaussian-splatting and heheyas/gaussian_splatting_3d.

SMPLX visualizer

https://github.com/nerfstudio-project/viser/assets/6992947/78ba0e09-612d-4678-abf3-beaeeffddb01

Source: ./example/08_smpl_visualizer.py

Acknowledgements

viser is heavily inspired by packages like Pangolin, rviz, meshcat, and Gradio. It's made possible by several open-source projects.

The web client is implemented using React, with:

The Python API communicates via msgpack and websockets.

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

viser-0.1.30.tar.gz (4.5 MB view hashes)

Uploaded Source

Built Distribution

viser-0.1.30-py3-none-any.whl (4.5 MB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page