uvt
This crate provides utilities for reading and writing files in the Uncrewed Vehicle Trajectory (UVT) format. The UVT format is an extension of the LTR file format introduced in Kilometer-Scale Autonomous Navigation in Subarctic Forests: Challenges and Lessons Learned.
A UVT file contains:
- a LiDAR map of the environment, stored in the
VTKformat. - A trajectory recorded by an uncrewed vehicle.
An example UVT file is available on Zenodo.
Features
This crate:
- Parses
.uvtfiles into Rust data structures. - Exports trajectories and maps back into
.uvtfiles - Generate UVT files directly from rosbags:
- ROS (1) (
.bag) - ROS 2 (
.mcap)
- ROS (1) (
Usage
To use this library simply add the crate name to your Cargo.toml file:
uvt = "0.1"
Examples
Import / Export
This crate allows to read, parse, and write uncrewed vehicle trajectories saved in the UVT format.
use io;
use ;
Generation from rosbags
You can also generate a UVT file from rosbags, be it in ROS (1) (.bag) or in ROS 2 (.mcap).
Your rosbag must contain:
- a map topic with
sensor_msgs/PointCloud2messages - a trajectory topic with
nav_msgs/Odometrymessages.
use io;
use uvt;
Citation
If you use the code or data in an academic context, please cite the following work:
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.