Skip to content

nerfstudio-project/viser

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Nov 27, 2024
dee3060 · Nov 27, 2024
Nov 8, 2024
Aug 4, 2023
Nov 11, 2024
Nov 11, 2024
Nov 27, 2024
Nov 4, 2024
Jul 11, 2024
Jul 16, 2024
Aug 29, 2024
Jul 11, 2024
May 26, 2023
May 25, 2024
Nov 21, 2024
Sep 10, 2024

Repository files navigation

viser logo viser viser logo

pyright 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]

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

record3d.mp4

Source: ./examples/07_record3d_visualizer.py

Gaussian splatting visualization

gaussian_splat.mp4

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

SMPLX visualizer

smpl_example.mp4

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.