Running the Ouster visualizer
After installing the ouster-sdk
package, you can run:
$ simple-viz --sensor <sensor hostname>
where <sensor hostname>
is the hostname (os-99xxxxxxxxxx) or IP of the sensor.
Alternately, to replay the existing data from pcap
and json
files call the visualizer as:
$ simple-viz --pcap <pcap_path> [--meta <meta_path>]
The sample visualizer does not currently include a GUI, but can be controlled with the mouse and keyboard:
Click and drag rotates the view
Middle click and drag moves the view
Scroll adjusts how far away the camera is from the vehicle
- Keyboard controls:
Key
What it does
o
Toggle on-screen display
p/P
Increase/decrease point size
m
Cycle point cloud coloring mode
b
Cycle top 2D image
n
Cycle bottom 2D image
R
Reset camera
e/E
Increase/decrease size of displayed 2D images
'/"
Increase/decrease spacing in range markers
w
Camera pitch up
s
Camera pitch down
a
Camera yaw left
d
Camera yaw right
1
Toggle first return point cloud visibility
2
Toggle second return point cloud visibility
0
Toggle orthographic camera
=/-
Dolly in/out
?
Prints key bindings
space
Toggle pause
esc
Exit visualization
./,
Step one frame forward/back
ctrl + ./,
Step 10 frames forward/back
>/<
Increase/decrease playback rate (during replay)
shift
Camera Translation with mouse drag
shift+z
Save a screenshot of the current view
shift+x
Toggle a continuous saving of screenshots
?
Print keys to standard out
The visualizer also includes an option to control the orientation of the point cloud in space when
loaded. If you possess, say, an OS-DOME mounted an upside down, you can start the visualizer with
the option --extrinsics
:
$ simple-viz --sensor 10.0.0.13 --extrinsics -1 0 0 0 0 1 0 0 0 0 -1 0 0 0 0 1
The input is a row-major homogenous matrix.
For other options, run simple-viz -h
Note
All basic primitives that you see as part of simple-viz
visualizer are exposed through
viz.PointViz
bindings. Please see PointViz Tutorial & API Usage for how to use it
programmatically in Python.
Advanced usage with sensor
The Ouster visualizer automatically configures connected sensors to send data to the appropriate udp
destination address. If your sensor is already configured appropriately, you may find it useful to
use the argument --no-auto-dest
to save time by skipping the roundtrip to reconfigure the
sensor.