我正在使用这个简单的启动脚本来尝试从一个183 am的rosbag中提取jpg图像。
<launch>
<node pkg="rosbag" type="play" name="rosbag" args="-d 2 /media/aaron/TOSHIBA\ EXT/udacity/data_2/dataset-2-2.bag"/>
<node name="extract" pkg="image_view" type="extract_images" respawn="false" output="screen" cwd="ROS_HOME">
<param name="sec_per_frame" value="0.02"/>
<param name="filename_format" value="frame%05.jpg"/>
<remap from="image" to="center_camera/image_color"/>
</node>
</launch>但是我得到了以下错误,
PARAMETERS
* /extract/filename_format: frame%05.jpg
* /extract/sec_per_frame: 0.02
* /rosdistro: kinetic
* /rosversion: 1.12.5
NODES
/
extract (image_view/extract_images)
rosbag (rosbag/play)
ROS_MASTER_URI=http://localhost:11311
core service [/rosout] found
process[rosbag-1]: started with pid [12638]
process[extract-2]: started with pid [12639]
terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::io::bad_format_string> >'
what(): boost::bad_format_string: format-string is ill-formed
[extract-2] process has died [pid 12639, exit code -6, cmd /opt/ros /kinetic/lib/image_view/extract_images image:=center_camera/image_color __name:=extract __log:=/home/aaron/.ros/log/e34ccf72-9510-11e6-bbf0-0017c4cb3b67/extract-2.log].
log file: /home/aaron/.ros/log/e34ccf72-9510-11e6-bbf0-0017c4cb3b67/extract-2*.log所以包继续加载播放,这种大小的玫瑰包需要超过30分钟才能开始播放,但是它不能启动图像提取节点。主题名称是正确的,我可以使用来自rosrun的图像提取,但是我不能格式化文件名。此外,在使用rosbag play/ rosrun提取的总共70659个jpgs中,我只收到了9882个jpgs。
你知道为什么它说字符串的格式不正确吗?
发布于 2016-10-20 06:21:57
看起来您的filename_format缺少小数类型'i‘或'd’
<launch>
<node pkg="rosbag" type="play" name="rosbag" args="-d 2 /media/aaron/TOSHIBA\ EXT/udacity/data_2/dataset-2-2.bag"/>
<node name="extract" pkg="image_view" type="extract_images" respawn="false" output="screen" cwd="ROS_HOME">
<param name="sec_per_frame" value="0.02"/>
<param name="filename_format" value="frame%05d.jpg"/>
<remap from="image" to="center_camera/image_color"/>
</node>
https://stackoverflow.com/questions/40119275
复制相似问题