/bagpy

Python package for reading, and extracting data from rosbag file and perform any analysis on it.

Primary LanguageJupyter NotebookOtherNOASSERTION

Strym Logo

Build Status Maintenance made-with-python made-with-sphinx-doc PyPI version shields.io PyPI license Downloads

bagpy

A Python package to facilitate the reading of a rosbag file based on semantic datatypes.

bagpy provides a wrapper class bagreader written in python that provides an easy to use interface for reading bag files recorded by rosbag record command. This wrapper class uses ROS's python API rosbag internally to perform all operations. One of the interesting features about using bagreader is that a user doesn't need to supply rostopic name to extract relevant data. One can extract data based on the type of data the user is seeking.

Requirements

  • Ubuntu 18.04 or later
  • Python 3.5 or higher. Python 2.x support not available. Python 3.x virtual environment is recommended for pip installation.
  • Works with Windows as well, how, I don't provide support for Windows. See my comment on an issue here: jmscslgroup#2 (comment)

Installation

pip install bagpy

Usage principle

The philosophy behind developing this project is to make everything as simple and less confusing as possible. As a result, there are not too many options or freedom of usage being provided by bagreader class. If you need a wide variety of options, users can directly use ROS's rosbag python package or Robotics System Toolbox APIs provided by MATLAB. However, if you are looking for simplicity, bagpy is an elegant choice.

Examples

See Notebooks and python scripts at https://github.com/jmscslgroup/bagpy/tree/master/notebook for examples.