Hi,
I previously set up the Isaac ROS Centerpose module using ROS 2 Humble on an Ubuntu 22.04 machine and was able to run it successfully inside a container. The camera node (RealSense) was running outside the container, and I could subscribe to its topics from inside the container without issues.
Now, I’m trying to replicate this setup on a new machine running Ubuntu 20.04 with ROS 1 Noetic, and an RTX 4060 GPU. I’m attempting to use the Isaac ROS NITROS Bridge to forward /image_rect and /camera_info_rect from ROS 1 into the ROS 2 container so CenterPose can consume the data.
I launched the bridge using:
docker run -it --cap-add=SYS_PTRACE --privileged --network host --pid host --ipc host --runtime nvidia --name nitros_bridge -e FASTRTPS_DEFAULT_PROFILES_FILE=/usr/local/share/middleware_profiles/rtps_udp_profile.xml --rm nitros_bridge:latest nitros_bridge_convert_forward.yaml nitros_bridge_convert_forward.launch
It partially launches, but I hit some issues:
It then kills a bunch of nodes, re-launches, and logs show that the nodelets are starting.
However, there are warnings like:
The parameter 'services_1_to_2' either doesn't exist or isn't an array
The container doesn’t fully start for me to run the remaining steps
I’m also unsure if this is the intended use case for the NITROS bridge, or if I’m going about this the wrong way.
As a workaround, I’m trying to use rosbridge WebSockets to send the image stream from ROS 1 to the container — but the bandwidth overhead is making it impractical for video/image data.
My Questions:
Is the Isaac ROS NITROS Bridge the right tool to bridge image and camera_info topics from ROS 1 Noetic (host) to ROS 2 (inside container)?
If so, how can I properly resolve the launch issues and ensure the bridge functions correctly?
If not, what’s the recommended way to get high-bandwidth topics like image streams from ROS 1 into a ROS 2 container for modules like CenterPose?
Any advice would be greatly appreciated. Thanks!