The repository contains a GitHub Actions workflow for auto-deployment of built Docker images to husarion/zed-desktop, husarion/zed-desktop-cpu and husarion/zed-jetson Docker Hub repositories. This process is based on zed-ros2-wrapper repository.
ROS1:
husarion/zed-desktop:noetic
for desktop platform with CUDA (tested on platform with 11.7).husarion/zed-desktop-cpu:noetic
a simple demo version on the CPU, allowing you to check if the camera and IMU are working properly. Image dedicated to platforms with amd64 and arm64 architecture.husarion/zed-jetson:noetic
for Jetson platform currently support - Jetson Xavier, Orin AGX/NX/Nano, CUDA 11.4 (tested on Xavier AGX).husarion/zed-jetson:melodic
for Jetson platform currently not supported - Jetson Nano, TX2/TX2 NX, CUDA 10.2 (tested on Nano).
ROS2:
husarion/zed-desktop:humble
for desktop platform with CUDA (tested on platform with 11.7).husarion/zed-desktop-cpu:humble
a simple demo version on the CPU, allowing you to check if the camera and IMU are working properly. Image dedicated to platforms with amd64 and arm64 architecture.husarion/zed-jetson:foxy
for Jetson platform currently support - Jetson Xavier, Orin AGX/NX/Nano, CUDA 11.4 (tested on Xavier AGX).
1. Plugin the Device
For best performance please use USB 3.0 port, depend of the camera model. Then use lsusb
command to check if the device is visible.
Important
To use the ZED X camera, you'll need to install the ZED X Driver additionally. Follow the official tutorial Setting up ZED X on Orin Nano / NX Developer Kits provided by Stereolabs for detailed instructions.
1. Clone the repository
git clone https://github.com/husarion/zed-docker.git
cd zed-docker/demo
2. Select Appropriate Docker Image
export ZED_IMAGE=<zed_image>
Replace <zed_image>
with appropriate Docker image from below table.
Docker Image |
---|
husarion/zed-jetson:foxy |
husarion/zed-desktop:humble |
3. Select the appropriate camera model
export CAMERA_MODEL=<camera_model>
Replace <camera_model>
with appropriate camera model from below table.
Product Name | Camera Model |
---|---|
ZED | zed |
ZED Mini | zedm |
ZED 2 | zed2 |
ZED 2i | zed2i |
ZED X | zedx |
ZED X Mini | zedxm |
4. Activate the Device
docker compose up zed
Note
You can run the visualization on any device, provided that it is connected to the computer to which the sensor is connected.
5. Launch Visualization
xhost local:root
docker compose up rviz
Note
First run of ROS 2 Docker images downloads configuration files and optimize camera. This may take several minutes.
6. Configure RViz.
Add following topic to RViz:
- RGB image topic:
/<camera_model>/zed_node/rgb/image_rect_color
- Point cloud topic:
/<camera_model>/zed_node/point_cloud/cloud_registered
1. Clone the repository
git clone https://github.com/husarion/zed-docker.git
cd zed-docker/demo
2. Activate the Device
docker compose -f dompose-cpu.yaml up
3. Launch Visualization
xhost local:root
docker compose up rviz
Note
First run of ROS 2 Docker images downloads configuration files and optimize camera. This may take several minutes.
Docker Compose volume - /tmp/argus_socket:/tmp/argus_socket
is only necessary for ZED X camera.
Docker Buildkit doesn't support build image with Nvidia runtime, so there is dedicated action for pushing locally building image from Jetson.