-
Notifications
You must be signed in to change notification settings - Fork 0
Stereo Camera Setup
Arcturus uses the ZED 2i Stereo Camera provided by StereoLabs. With the ZED SDK (which requires CUDA), the camera additionally provides depth, motion sensing, and spatial AI. We typically test the ZED camera using our NVIDIA Jetson machines.
The ZED Explorer allows you to test the camera and modify its parameters live. Once you plug in the ZED to the Jetson, you can run this using
/usr/local/zed/tools/ZED_Explorer
The ZED Depth Viewer uses the ZED SDK to capture and display the depth map and 3D point cloud. You can try different depth modes to see which one works best (the recommended setting is the NEURAL mode). Once you find a good set of parameters, you can permanently modify them for our autonomy stack by modifying the zed2i.yaml
file contained in all_seaing_driver/config
. Here is the command to run the depth viewer:
/usr/local/zed/tools/ZED_Depth_Viewer
The zed-ros2-wrapper provided by StereoLabs enables using the ZED cameras with ROS 2. Instructions on installing this package is provided in the GitHub README.
To launch the ZED 2i, we can use the following command:
ros2 launch all_seaing_driver zed2i.launch.py
To override default parameters, modify the all_seaing_driver/config/zed2i.yaml
file. The parameters you can modify are listed here
Here is a list of ROS topics you might use:
-
/zed/zed_node/rgb/image_rect_color
: the RGB image provided by the ZED -
/zed/zed_node/rgb/camera_info
: the camera intrinsics for the RGB image -
/zed/zed_node/imu/data
: the IMU (angular velocity, orientation, and acceleration) data from the ZED's internal IMU
Additionally, by default, the ZED publishes 2 important TFs, map->odom
and odom->zed_camera_link
. For any testing, we should disable the map->odom
TF from being published by modifying zed2i.yaml
; this should be published by some other node. For indoors testing, it may be beneficial to keep the odom->zed_camera_link
TF generated from the ZED's VIO system. For outdoors testing, we currently disable both TFs from being published, as they should be generated by the robot localization package instead.