step1: 首先查看自己的rosbag中视频相关的topic信息:执行rosbag info命令
rosbag info radar_camera.bag
[备注:adar_camera.bag是我自己的包名,这里需要改成你自己的包名]
我的包里有一个topic是与视频相关的,如下图,这里要注意的是 我的视频格式是“compressed”压缩的。
topics:
/cam_rear_left/image_raw/compressed 100 msgs : sensor_msgs/CompressedImage
step2:命令行输入
rosrun image_transport republish compressed in:=/cam_rear_left/image_raw/ raw out:=camera_out/image
代码解析:
in:=/cam_rear_left/image_raw/ 这里是与step1中的topic对应的。
out:=camera_out/image 是新起的topic
这里可以运行rostopic list查看当前的topic列表
step3:抽取图片
rosrun image_view extract_images _sec_per_frame:=0.05 image:=/camera_out/image
代码解析:
_sec_per_frame:=0.05为周期50ms一帧,可根据自己的需要设置
image:=/camera_out/image这里是step2中新起的topic
step4:播放rosbag才能抽取图片
rosbag play radar_camera.bag
step5:将抽取的图片生成视频
jpeg2yuv -I p -f 10 -j frame%04d.jpg -b 1 > tmp.yuv //其中-f 10 表示频率, -b 1 表示起始图片的编号。
上述命令生成yuv格式的视频。还有如下可用:
ffmpeg -r 15 -s 1920*1080 -i frame%04d.jpg test.mp4 ,将图片生成帧率15,分辨率1920*1080,名字为test的mp4视频文件。
使用使用FFMPEG压缩生成.avi视频
ffmpeg -r <FPS> -b <BITRATE> -i frame%04d.jpg <OUTPUT>.avi文章来源:https://www.toymoban.com/news/detail-738247.html
OK! finish~ 文章来源地址https://www.toymoban.com/news/detail-738247.html
到了这里,关于rosbag中提取图片和视频的步骤的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!