неверно сформированная строка для извлечения изображения на roslaunch

#ros

#ros

Вопрос:

Я использую этот простой скрипт запуска, чтобы попытаться извлечь изображения JPG из пакета rosbag объемом 183 ГБ.

 <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.jpg"/>
                <remap from="image" to="center_camera/image_color"/>
        </node>
</launch>
  

но я получаю следующую ошибку,

 PARAMETERS
 * /extract/filename_format: frame.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
  

Таким образом, пакет продолжает загружаться для воспроизведения, для запуска воспроизведения пакета rosbag такого размера требуется более 30 минут, однако он не может запустить узел извлечения изображения. Название темы правильное, и я могу использовать извлечение изображения с ним из rosrun, но тогда я не могу отформатировать имя файла. Кроме того, я получил только 9882 JPG-файла из общего числа 70659, используя rosbag play / rosrun extract.

Есть идеи, почему он говорит, что строка неверно отформатирована?

Комментарии:

1. Если ваша проблема решена, то отметьте ее как таковую, пожалуйста.

Ответ №1:

Похоже, вам не хватает десятичного типа ‘i’ или ‘d’ для вашего filename_format

 <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="framed.jpg"/>
            <remap from="image" to="center_camera/image_color"/>
    </node>