The ROS bag file format is popular in robotics, where it is used to store ROS message data. Several tools for working with ROS bag files exist, such as rosbag (a tool for recording, playing back, and filtering data), rqt_bag (a tool for visualising rosbag data), rostopic (a tool for listing and echoing the content…Read more Extracting Images and Sensor Data from ROS bag files to Python
Python
Setting up ROS with Python 3 and OpenCV
The Robot Operating System (ROS) does not currently work out-of-the-box with Python 3. ROS officially supports Python 2.7 and ROS 2 supports Python 3 natively. Since Python 2.7 support is now deprecated, and most robots in 2020 still use ROS (not ROS 2), it becomes neccessary to set up Python 3 with ROS in order…Read more Setting up ROS with Python 3 and OpenCV
ROS performance testing: C++ vs Python
ROS supports both Python and C++ programming languages, however, using Python can come at a performance cost. I did an experiment to test this by writing four combinations of publisher to subscriber and then checking whether the real loop rate (of the publisher) is equal to the actual loop rate of the subscriber. The combinations…Read more ROS performance testing: C++ vs Python
Getting started with Conda
Conda is an open source cross-platform package and environment manager from Anaconda. Package manager If you're familiar with MacOSX then you've probably already used package managers like Homebrew or MacPorts that allow you to either download binaries or build code from source to easily install software. Conda is similar in that it also allows you…Read more Getting started with Conda