OdoViz is a reactive web-based tool for 3D visualization and processing of autonomous vehicle datasets designed to support common tasks in visual place recognition research. Comes with out of the box support for popular driving datasets.
OdoViz has been published in 2021 IEEE International Intelligent Transportation Systems Conference (ITSC 2021) and is available on IEEE Xplore® here. If you use this software and/or its code, please cite using
@INPROCEEDINGS{9564712,
author={Ramachandran, Saravanabalagi and McDonald, John},
booktitle={2021 IEEE International Intelligent Transportation Systems Conference (ITSC)},
title={OdoViz: A 3D Odometry Visualization and Processing Tool},
year={2021},
pages={1391-1398},
doi={10.1109/ITSC48978.2021.9564712}}
The video presentation and tutorials have been made available on YouTube here to assist the user in getting to know the system better. OdoViz is open-sourced under the MIT licence for the benefit of the wider research community.
You can access the hosted instance from the official website, which has been made available for demonstration purposes. You can host your own instance using the instructions given below.
-
Clone the repo
git clone https://github.com/robotvisionmu/odoviz.git cd odoviz
-
Setup and start the server in one of the following methods:
Docker
# Build container docker build -t odoviz:latest . # Set ODOVIZ_DATA_DIR and execute container export ODOVIZ_PORT=3001 ODOVIZ_DATA_DIR=<datasets_dir> docker run --rm -d -v $ODOVIZ_DATA_DIR:/data -p $ODOVIZ_PORT:3001 odoviz:latest
NPM or Yarn
# Install dependencies and build client app cd client yarn install NODE_ENV=production yarn run build # Install dependencies for server cd .. yarn install # Set ODOVIZ_DATA_DIR and start server export ODOVIZ_PORT=3001 ODOVIZ_DATA_DIR=<datasets_dir> yarn start
Note that the
datasets_dir
is the parent directory containing various datasets. -
Access the front-end
Once the server is started (using Docker or yarn), you can open http://localhost:3001 and use it. For more details about the client, please refer to the client README.md
For general questions and queries, open a new thread in discussions. If the software does not work as intended, please check the existing issues before raising a new issue. Pull requests are welcome.
Odoviz is very useful for visualizing whole trajectories and global level tasks such as visualizing loop closures, identifying and analyzing pose correspondences, etc. If you are rather interested in primarily processing and visualisation at the local level of the vehicle, i.e. targeting egocentric tasks such as real-time visualisation and playback of vehicle sensor data, 3D object detection, etc., please take a look at:
- Autonomous Visualization System by Uber: https://avs.auto
- Webviz by Cruise: https://webviz.io
- Open3D: https://open3d.org
This work was supported by Science Foundation Ireland grant 13/RC/2094 to Lero - the Irish Software Research Centre and grant 16/RI/3399 and Maynooth University. The website and the live instance is hosted by Department of Computer Science, Maynooth University.