forked from vuer-ai/vuer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
135 lines (89 loc) · 3.86 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
.. raw:: html
<h2>
Vuer: Modern High-Performance Visualization for AI & Robotics in VR
.. raw:: html
</h2>
.. raw:: html
<p>
pip install vuer ⬝ visit https://docs.vuer.ai for documentation
.. raw:: html
</p>
Vuer is a light-weight visualization toolkit for interacting with
dynamic 3D and robotics data. It is VR and AR ready, and can be run on
mobile devices.
Our features include:
- light-weight and performant
- VR and AR ready
- Hackable and extensible
- Open source, licensed under MIT
Installation
============
You can install ``vuer`` with ``pip``:
.. code-block:: shell
pip install -U 'vuer[all]'
Here is an example that loads a URDF file and displays it in the
browser. For a more comprehensive list of examples, please refer to the
`examples <https://docs.vuer.ai/en/latest/examples/01_trimesh.html>`__
page.
.. code-block:: python
from vuer import Vuer, VuerSession
from vuer.schemas import DefaultScene, Urdf
app = Vuer()
@app.spawn(start=True)
async def main(session: VuerSession):
app.set @ DefaultScene(
Urdf("assets/urdf/robotiq.urdf"),
)
while True:
await session.sleep(0.1)
|Click for Live Demo|
To get a quick overview of what you can do with ``vuer``, check out the
following:
- take a look at the example gallery
`here <https://docs.vuer.ai/en/latest/examples/01_trimesh.html>`__
- or try to take a look at this demo with a Unitree Go1 robot in front
of a flight of stairs
`here <https://docs.vuer.ai/en/latest/tutorials/robotics/urdf_go1_stairs.html>`__
For a comprehensive list of visualization components, please refer to
the `API documentation on
Components <https://docs.vuer.ai/en/latest/api/vuer.html>`__.
For a comprehensive list of data types, please refer to the `API
documentation on Data
Types <https://docs.vuer.ai/en/latest/api/types.html>`__.
Now, to run the examples, first download the example datasets.
Each subdirectory in the ``assets`` directory contains a ``Makefile``.
Run the ``make`` command in each subdirectory to download the datasets.
For example:
.. code-block:: bash
cd assets/static_3d
make
Then run the examples
.. code-block:: bash
cd vuer/examples/vuer
python 01_trimesh.py
Contributing to Documentation and Features
==========================================
Documentation is a crucial part of the ``vuer`` ecosystem. To contribute
to documentation and usage examples, simply:
.. code-block:: bash
pip install -e '.[all]'
make docs
This should fire up an http server at the port ``8888``, and you can
view the documentation at ``http://localhost:8888``.
To Cite
=======
.. code-block:: bibtex
@software{vuer,
author = {Ge Yang},
title = {{VUER}: A 3D Visualization and Data Collection Environment for Robot Learning},
version = {},
publisher = {GitHub},
url = {https://github.com/vuer-ai/vuer},
year = {2024}
}
About Us
========
Vuer is built by researchers at MIT and UCSD in fields including
robotics, computer vision, and computer graphics.
.. |Click for Live Demo| image:: https://github.com/geyang/vuer/blob/master/assets/curiosity.png?raw=true
:target: https://vuer.ai?collapseMenu=True&background=131416,fff&initCamPos=2.8,2.2,2.5&ws=ws%3A%2F%2Flocalhost%3A8012&scene=3gAJqGNoaWxkcmVukd4ABKhjaGlsZHJlbpHeAAaoY2hpbGRyZW6Qo3RhZ6RVcmRmo2tleaExo3NyY9lSaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL25hc2EtanBsL20yMDIwLXVyZGYtbW9kZWxzL21haW4vcm92ZXIvbTIwMjAudXJkZqtqb2ludFZhbHVlc94AAKhyb3RhdGlvbpPLQAkeuGAAAAAAAKN0YWenTW92YWJsZaNrZXmhMqhwb3NpdGlvbpMAAMs%2FwzMzQAAAAKN0YWelU2NlbmWja2V5oTOidXCTAAABpGdyaWTDqHNob3dMZXZhwqtyYXdDaGlsZHJlbpLeAASoY2hpbGRyZW6Qo3RhZ6xBbWJpZW50TGlnaHSja2V5tWRlZmF1bHRfYW1iaWVudF9saWdodKlpbnRlbnNpdHkB3gAFqGNoaWxkcmVukKN0YWewRGlyZWN0aW9uYWxMaWdodKNrZXm5ZGVmYXVsdF9kaXJlY3Rpb25hbF9saWdodKlpbnRlbnNpdHkBpmhlbHBlcsOsaHRtbENoaWxkcmVukLJiYWNrZ3JvdW5kQ2hpbGRyZW6Q%22