ROS的.bag文件转图片并保存

该文章介绍了一种用Python和OpenCV将ROS的.bag文件中的图像数据转换并保存为图片的方法。通过rosbag和CvBridge库,对特定话题(例如/camera/left/image_raw)的图像消息进行处理,将每个图像保存为对应时间戳的.jpg文件。
摘要由CSDN通过智能技术生成

         有时候需要处理ROS录制的.bag中每一条信息。若使用发布和订阅的方法容易遗漏信息,无法达到要求。本文提供一种基于python和opencv的.bag文件转图片并保存的方法,主要利用了rosbag和cv_bridge两个库,精简了代码使其易于理解和使用。

import rosbag
import cv2
from cv_bridge import CvBridge
 
image_path = './images/'
bag_path = './image.bag'
topic_name = '/camera/left/image_raw'

bridge = CvBridge()
with rosbag.Bag(bag_path, 'r') as bag:
  for topic,msg,t in bag.read_messages():
    if topic == topic_name:
      cv_image = bridge.imgmsg_to_cv2(msg,"bgr8")
      timestr = "%.6f" %  msg.header.stamp.to_sec()
      image_name = timestr+ ".jpg"
      cv2.imwrite(image_path+image_name, cv_image)
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值