A tool that uses simple logic to send topics recorded in ros2 bag one cycle at a time (not a strict cycle).
Project description
ros2bagsend
A tool that uses simple logic to send topics recorded in ros2 bag one cycle at a time (not a strict cycle). https://github.com/PINTO0309/simple-ros2-processing-tools
https://github.com/PINTO0309/ros2bagsend/assets/33194443/b25069a8-300e-4913-bb59-7477b3927561
1. Install ROS2
DISTRO=humble
sudo apt update && sudo apt install -y locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
sudo apt install software-properties-common
sudo add-apt-repository universe
sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key \
-o /usr/share/keyrings/ros-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
sudo apt update
sudo apt install -y \
ros-${DISTRO}-rosbag2 \
ros-${DISTRO}-vision-opencv \
ros-${DISTRO}-vision-msgs \
ros-${DISTRO}-image-pipeline
2. Install ros2bagsend
pip install ros2bagsend
3. Usage
-
Send topics in units of pseudo-frames
ros2bagsend --ros-args \ -p bag_file_path:='test.db3'
topic summary ######################################## topic_info.name0: /camera/aligned_depth_to_color/image_raw topic_info.name1: /camera/color/camera_info topic_info.name2: /camera/color/image_raw topic_info.name3: /zed2i/zed_node/depth/depth_registered topic_info.name4: /zed2i/zed_node/rgb/camera_info topic_info.name5: /zed2i/zed_node/rgb_raw/image_raw_color ###################################################### Press Enter to publish the next frame... (Interrupted by 'q' key) 1./zed2i/zed_node/rgb/camera_info: /zed2i/zed_node/rgb/camera_info time_stamp: 1703229424121013788 1./zed2i/zed_node/rgb_raw/image_raw_color: /zed2i/zed_node/rgb_raw/image_raw_color time_stamp: 1703229424128303140 Press Enter to publish the next frame... (Interrupted by 'q' key) 2./zed2i/zed_node/rgb/camera_info: /zed2i/zed_node/rgb/camera_info time_stamp: 1703229424128367120 2./zed2i/zed_node/depth/depth_registered: /zed2i/zed_node/depth/depth_registered time_stamp: 1703229424134155118 2./camera/color/camera_info: /camera/color/camera_info time_stamp: 1703229424138749661 2./camera/aligned_depth_to_color/image_raw: /camera/aligned_depth_to_color/image_raw time_stamp: 1703229424150239208 2./camera/color/image_raw: /camera/color/image_raw time_stamp: 1703229424154925667 Press Enter to publish the next frame... (Interrupted by 'q' key) 3./zed2i/zed_node/rgb/camera_info: /zed2i/zed_node/rgb/camera_info time_stamp: 1703229424184716213 3./zed2i/zed_node/rgb_raw/image_raw_color: /zed2i/zed_node/rgb_raw/image_raw_color time_stamp: 1703229424191219846 Press Enter to publish the next frame... (Interrupted by 'q' key) 4./zed2i/zed_node/rgb/camera_info: /zed2i/zed_node/rgb/camera_info time_stamp: 1703229424191263193 4./zed2i/zed_node/depth/depth_registered: /zed2i/zed_node/depth/depth_registered time_stamp: 1703229424195592537 4./camera/aligned_depth_to_color/image_raw: /camera/aligned_depth_to_color/image_raw time_stamp: 1703229424201049523 4./camera/color/camera_info: /camera/color/camera_info time_stamp: 1703229424201093864 4./camera/color/image_raw: /camera/color/image_raw time_stamp: 1703229424204340722 Press Enter to publish the next frame... (Interrupted by 'q' key) : :
-
Specifies frames to start or end transmission
frames
refers to the number of times a topic is sent, not the number of topics. In the example below, topics are sent in the range from frame 5 to frame 100, skipping up to frame 4. It is advisable to check in advance which frame range should be sent usingrqt
or similar.ros2bagsend --ros-args \ -p bag_file_path:='test.db3' \ -p start_frame_no:=5 \ -p end_frame_no:=100
-
Only analysis of statistical information is performed Analyze the list of topic names in the bag file and the number of assumed frames. It is also possible to specify
start_frame_no
andend_frame_no
. Ifstatistical_analysis_only
is specified, no topics are sent.ros2bagsend --ros-args \ -p bag_file_path:='test.db3' \ -p statistical_analysis_only:=True
Statistical information is being analyzed ... topic summary ######################################## topic_info.name0: /camera/aligned_depth_to_color/image_raw topic_info.name1: /camera/color/camera_info topic_info.name2: /camera/color/image_raw topic_info.name3: /zed2i/zed_node/depth/depth_registered topic_info.name4: /zed2i/zed_node/rgb/camera_info topic_info.name5: /zed2i/zed_node/rgb_raw/image_raw_color ====================================================== Approximate total frame count: 1,104 ###################################################### Done.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ros2bagsend-1.1.1.tar.gz
.
File metadata
- Download URL: ros2bagsend-1.1.1.tar.gz
- Upload date:
- Size: 7.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 207c562274d44a5b6158e0eaf979e24a1e306331d3eae0d7ed410b007d143982 |
|
MD5 | ba9f1f969a8e62b2ccc5ed5ee2312ccc |
|
BLAKE2b-256 | cd4bec075e3508d51635ace2ec1cd4a848446bf0265eef485ae1e3df092da97b |
File details
Details for the file ros2bagsend-1.1.1-py3-none-any.whl
.
File metadata
- Download URL: ros2bagsend-1.1.1-py3-none-any.whl
- Upload date:
- Size: 7.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 703d34e0c1906710a4f06c72e9b6650c8699a1756a36b0f2a546e4edca9c1ff2 |
|
MD5 | d6d4fe2f430c7e135278d2f0938b411f |
|
BLAKE2b-256 | 71b59f5c07eb9896148da0eb45e43bc9fb8ca4f2b2755e213a2bc1ef5d9cfe9a |