Ask Your Question
4

How can I use bag file data in Matlab?

asked 2011-09-27 03:21:02 -0500

fresh_ros_user gravatar image

I have datas in bag file such as velocity and acceleration from the sensors. I want to read data with respect to time domain to make calculations in Matlab. How can I gain the data and use in Matlab? Thanks for your answers.

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted
15

answered 2011-09-27 03:31:16 -0500

DimitriProsser gravatar image

If you play back the bag, you can use:

rostopic echo -p /topic_name

to display the data in a MatLab-friendly format. You can output this to a text file with:

rostopic echo -p /topic_name > data.txt

Or, you can even convert a topic directly to CSV with:

rostopic echo -b file.bag -p /topic

NOTE: This will only work with simple message types. LaserScans, PointClouds, arrays, etc won't work very well because the entire message is rendered to text.

The other option would be to use the rosbag API, located here to load the data into a C++ program and manipulate it that way.

edit flag offensive delete link more

Comments

Or use the python API along with scipy.io.savemat to write out a .mat file. Dan Lazewatsky ( 2011-09-27 04:38:37 -0500 )edit

Could you please show how to open that text file in Matlab? None of the tutorials helped me solve this

miloup ( 2014-04-06 21:15:57 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

[hide preview]

Question Tools

Follow
2 followers

Stats

Asked: 2011-09-27 03:21:02 -0500

Seen: 3,799 times

Last updated: Feb 04 '12