Perhaps I have misunderstood something fundamentally, maybe someone can explain the correct workflow to me:
I have recorded a rosbag in Isaac Sim, which among other things records the images from a camera under the topic “/camera_image/Cam_FR”. I have also recorded the “camera_info”:
$ ros2 bag info ${ISAAC_ROS_WS}/data/rosbag2_2024_08_01-16_00_23/
Files: rosbag2_2024_08_01-16_00_23_0.db3
Bag size: 2.6 GiB
Storage id: sqlite3
Duration: 15.147s
Start: Aug 1 2024 16:00:23.705 (1722520823.705)
End: Aug 1 2024 16:00:38.853 (1722520838.853)
…
Topic: /camera_image/Cam_FR | Type: sensor_msgs/msg/Image | Count: 193 | Serialization Format: cdr
…
…
Topic: /camera_info | Type: sensor_msgs/msg/CameraInfo | Count: 193 | Serialization Format: cdr
Everything can be displayed in RVIZ2 without any problems. Next, I would like to run one of Isaac ROS’s object detection examples on my Jetson Orin AGX or at least use the isaac_ros_image_proc to resize the image.
Next I am replaying the rosbag with the remapped topic:
$ ros2 bag play -l ${ISAAC_ROS_WS}/data/rosbag2_2024_08_01-16_00_23/ --remap /camera_image/Cam_FR:=/image_raw
And start yolov8 or the resize node in another tab:
$ ros2 launch isaac_ros_examples isaac_ros_examples.launch.py launch_fragments:=resize
The node starts up but it doesn’t seem to get any input:
[component_container_mt-1] [INFO] [1725535110.285119297] [isaac_ros_examples.container]: Load Library: /opt/ros/humble/lib/libresize_node.so
…
…
[component_container_mt-1] [INFO] [1725535111.595327732] [resize]: [NitrosNode] Starting post negotiation setup
[component_container_mt-1] [INFO] [1725535111.595470614] [resize]: [NitrosNode] Getting data format negotiation results
[component_container_mt-1] [INFO] [1725535111.595518167] [resize]: [NitrosPublisher] Negotiation ended with no results
[component_container_mt-1] [INFO] [1725535111.595549336] [resize]: [NitrosPublisher] Use only the compatible publisher: topic_name=“/resize/image”, data_format=“nitros_image_bgr8”
[component_container_mt-1] [INFO] [1725535111.595574168] [resize]: [NitrosPublisher] Negotiation ended with no results
[component_container_mt-1] [INFO] [1725535111.595592984] [resize]: [NitrosPublisher] Use only the compatible publisher: topic_name=“/resize/camera_info”, data_format=“nitros_camera_info”
[component_container_mt-1] [INFO] [1725535111.595618265] [resize]: [NitrosSubscriber] Negotiation ended with no results
[component_container_mt-1] [INFO] [1725535111.595637497] [resize]: [NitrosSubscriber] Use the compatible subscriber: topic_name=“/image_raw”, data_format=“nitros_image_bgr8”
[component_container_mt-1] [INFO] [1725535111.595656569] [resize]: [NitrosSubscriber] Negotiation ended with no results
[component_container_mt-1] [INFO] [1725535111.595672666] [resize]: [NitrosSubscriber] Use the compatible subscriber: topic_name=“/camera_info”, data_format=“nitros_camera_info”
[component_container_mt-1] [INFO] [1725535111.596211715] [resize]: [NitrosNode] Exporting the final graph based on the negotiation results
…
…
[component_container_mt-1] [WARN] [1725535127.776272407] [resize.NitrosSubscriber]: 10.0s passed while waiting to push a message entity (eid=250) to the receiver image_in
[component_container_mt-1] [WARN] [1725535143.687440169] [resize.NitrosSubscriber]: 20.0s passed while waiting to push a message entity (eid=250) to the receiver image_in
What exactly is happening? Is the resize node only accepting Nitros Input? But as far as I understand it is not possible to rosbag record a nitros node? And is it correct that all nodes that use can subscribe to a nitros image topic can also subscribe to a classical image topic?
I would be very happy if someone could show me a way of getting yolov8 to run on my rosbag, for example, or where my fundamental error in thinking lies.