CSE512 Projects (Winter 2014)

rqt_bag_diff: Tool for Visual Comparisons of Robot Sensor Data

Example use case of rqt bag diff. New control features that were not included in rqt bag are annotated. Suggested configurations for rviz (upper right corner), rqt plot and rqt image (lower right corner) are used to visualize sensor data.

rqt\_bag\_diff is a novel tool for visual comparisons of robotic sensor data. rqt\_bag\_diff provides effective data inspection and comparison functionalities by 1) building on top of an existing ROS-based visualization tool that is robust against size of the data, 2) providing new event-based navigation and filtering-based data management features and 3) providing templates for using existing ROS-based visualization tools leveraging small multiples and layering design principles.

Software

You can download our code from our git repository.

Our code is heavily relying on ROS. First, you will need to install ROS Hydro on your machine. Theoratically, ROS can be installed on various platforms, however, it works the best with Ubuntu platform. Therefore, I only have tested my code using Ubuntu machines.

Once ROS is installed, you will need to setup your ROS environment as shown here. You can now run follow commands from a terminal to build rqt_bag_diff and launch roscore.

git clone https://github.com/CSE512-14W/fp-mjyc
cp fp-mjyc/rqt_bag_diff ~/catkin_ws/src/
cd ~/catkin_ws/
catkin_make
roscore

Finally run below command to launch rqt_bag_diff from another terminal.

python ~/catkin_ws/src/rqt_bag_diff/scripts/rqt_bag_diff

You can load any .bag formatted data you want to analyze using the load GUI button on the upper-left corner of the interface.

Please see the finals paper for the detailed usage explanations.

Limitations

Due to the heck I used (see bag_widget.py), you need to have "some_sensor_data.bag" file as well as the copy of that file with filename "some_sensor_data (copy).bag"

The biggest limitation of rqt_bag_diff is how the program is currently managing "time". Timestamps from two data sources can be different, this can be problematic for ROS based viewers such as rviz and rqt_plot.

Materials