#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>