利用ROS中image_transport将sensor_msgs/CompressedImage转为sensor_msgs/Image
image_transport的ROS官网:http://wiki.ros.org/image_transport
image_transport的具体用法:
rosrun image_transport republish [in_transport] in:=<in_base_topic> [out_transport] out:=<out_base_topic>
具体例子:上海交大开源的一组数据 gate_03.bag
可以发现 /camera/color/image_raw/compressed 这个话题对应的类型为 sensor_msgs/CompressedImage
用VINS等开源程序处理数据时必须为 sensor_msgs/Image 类型
用 image_transport 可以将类型 sensor_msgs/CompressedImage 换为 sensor_msgs/Image
具体做法为:
在执行
rosbag play XXXX.bag
前,先执行命令
打开一个终端执行命令:
rosrun image_transport republish compressed in:=/camera/left/image_raw raw out:=/camera/left/image_raw
即可。
注:out后面路径不必与in路径一致,用程序接收out后的topic即可