Ask Your Question

Revision history [back]

Converting rosbag data into pandas dataframes is easy. Rosbag provides a nice python API that you can use to read the messages, something like this:

import rosbag
from sensor_msgs.msg import NavSatFix
from nav_msgs.msg import Odometry

import pandas as pd

with rosbag.Bag('input.bag') as bag:
    for topic, msg, t in bag.read_messages(topics=['/odometry/filtered', '/gps/filtered']):
        if t == '/gps/filtered':
            print msg.header.stamp, msg.latitude, ... # see http://docs.ros.org/api/sensor_msgs/html/msg/NavSatFix.html
            # TODO: write into pandas dataframe

ROS time is unix time (seconds since the epoch, 01-01-1970). Simply google for "unix time to gps time python" or something.

Good luck with your project!