Improve rosbag support
What's Changed
This PR brings all the power of kiss-icp to NON-ROS environments. An example (tested) is a macOS on a M2 chip. Since we can't natively install ROS1 or ROS2, relying on such tools forbids the use of the pipeline for simple rosbags. Therefore, building on top of the rosbags
library, we now support loading ROS1/ROS2 and .mcap files on any target system.
This PR can be considered a continuation of #75.
Other changes:
- Better guessing of user intentions:
kiss_icp_pipeline <path-to-any-ros-related-bag-or-dir>
now works. With bagfiles, ROS2 databases, multiple bagfiles, etc. No need to select the topic beforehand, we will guess or guide you through it - Improve error msgs in case the topic is wrongly specified
- ROS 1 / ROS 2 dataloaders merged into one unique one
- Support to read the directory if the user specifies the
metadata.yaml
file - Support for multiple
.bag
files inside on unqiue directory. Finally! - Merge "a bit" the mcap and ros dataloadres
- Improve help message
rosbags
is now. a hard dependency for any ROS related pipeline. Before, we had the option to avoid installing it and using the native ROS 1 support. Since this is such a tiny library, it doesn't hurt to do this
Full Changelog: v0.2.5...v0.2.6