Skip to content

stereolabs/zed-sdk

Repository files navigation

ZED SDK

The ZED SDK is a cross-platform library designed to get the best out of the ZED cameras.
In this project, we provide tutorials and code samples to get started using the ZED SDK API.

Website · Store · API Reference · Community · Blog

SDK Version ZED Discourse Docker Pulls Github Stars


🎉 The ZED SDK 5.4 is released!

ZED SDK 5.4 makes the built-in NEURAL depth models noticeably faster: an optimized inference path delivers up to 20% quicker depth inference and ~15% lower GPU load on Jetson Thor — with gains carrying over to Orin and desktop GPUs, and the largest wins on heavier pipelines (more cameras, NEURAL PLUS, or concurrent recording) — all with outputs unchanged. The release also opens the depth pipeline to custom algorithms through the experimental DEPTH_MODE::CUSTOM: an externally computed disparity or depth map — for example from a custom stereo network — can be fed to the SDK each frame, and the full pipeline (point cloud, spatial mapping, object detection, plane detection) then runs on the ingested data. A companion stereo retrieveTensor overload pre-processes both rectified views in a single fused GPU pass, producing inference-ready tensors that bind directly to frameworks such as TensorRT.

Recording and streaming gain a leaner path. SVO recording and outbound streaming now run entirely from Camera::read(), and stereo rectification is performed on demand, so pure recording or streaming pipelines no longer pay its CPU/GPU cost. A new polling API retrieves encoded H264/H265 packets directly — from incoming, outgoing, or recorded streams — without a second encoding session, and new rectified LEFT_NV12 / RIGHT_NV12 views feed hardware encoders without an extra color conversion.

This release also extends the platform reach with experimental support for ARM desktop systems (SBSA: NVIDIA DGX Spark, GH200, and ARM CUDA servers). A new monotonic MONOTONIC_RAW_CLOCK timestamp option yields timestamps immune to both NTP/PTP step and frequency adjustments, the per-camera lens distortion model is now exposed through LENS_DISTORTION_MODEL, and SLAM GEN_3 reports per-pose confidence. Numerous stability and accuracy fixes round out the release across depth, streaming, calibration, and USB camera handling.

Please check the Release Notes of the latest version for more details.

Overview

Depth Sensing Object Detection Body Tracking
Depth Sensing Object Detection Body Tracking
Positional Tracking Global Localization Spatial Mapping
Positional Tracking Global Localization Spatial Mapping
Camera Control Plane Detection Multi Camera Fusion
Camera Control Plane Detection Multi Camera Fusion

Why ZED?

  • 🎯 End-to-end spatial perception platform for human-like sensing capabilities.
  • ⚡ Real-time performance: all algorithms of the ZED SDK are designed and optimized to run in real-time.
  • 📷 Reduce time-to-market with our comprehensive, ready-to-use hardware and software designed for multiple applications.
  • 📖 User-friendly and intuitive, with easy-to-use integrations and well-documented API for streamlined development.
  • 🛠️ Wide range of supported platforms, from desktop to embedded PCs.

Getting started

The ZED SDK contains all the libraries that power your camera along with tools that let you experiment with its features and settings.

To get started:

The documentation and API reference are great starting points to learn more about the ZED SDK and its many modules.

Samples

This repository contains ready-to-use and samples to start using the ZED SDK with only a few lines of code. They are organized by ZED SDK module:

  • Tutorials - A series of basic tutorials that demonstrate the use of each API module.

  • Camera Control - This sample shows how to adjust the ZED camera parameters.

  • Camera Streaming - This sample shows how to stream and receive on local network the ZED's video feed.

  • Depth Sensing - This sample shows how to capture a 3D point cloud and display with OpenGL. It also shows how to save depth data in different formats.

  • Positional Tracking - This sample shows how to use positional tracking and display the result with OpenGL.

  • Global Localization - This sample shows how to fuse the ZED SDK's positional tracking with GNSS data for global positioning.

  • Spatial Mapping - This sample shows how to capture 3D meshes with the ZED and display it with OpenGL. Classic Mesh and Point Cloud fusion are available.

  • Object Detection - This sample shows how to use the Object Detection API module with the ZED.

  • Body Tracking - This sample shows how to use the Body Tracking API with the ZED.

  • Recording - This sample shows how to record and playback video files in SVO format. SVO files let you use all the ZED SDK features without having a ZED connected.

Supported platforms

Here is the list of all supported operating systems for the latest version of the ZED SDK. Please find the recommended specifications to make sure your configuration is compatible with the ZED SDK.

Ubuntu LTS Windows Jetson

The ZED SDK requires the use of an NVIDIA GPU with a Compute Capability > 5.

If you are not familiar with the corresponding versions between NVIDIA JetPack SDK and Jetson Linux, please take a look at our blog post.

Integrations

The ZED SDK can be easily integrated into projects using the following programming languages:

C++ Python C# C

Thanks to its comprehensive API, ZED cameras can be interfaced with multiple third-party libraries and environments.

Unity Unreal Engine 5 OpenCV ROS ROS 2
Pytorch YOLO Matlab Isaac SIM Touch Designer

Community

Join the conversation and connect with other ZED SDK users to share ideas, solve problems, and help make the ZED SDK awesome. Our aim is to make it extremely convenient for everyone to communicate with us.

  • Discourse is our forum where all ZED users can connect. This is the best place to brainstorm and exchange about ZED cameras, ZED SDK software, and other Stereolabs products. Feel free to create an account and ask your questions, or even share your awesome projects!

  • Twitter Follow Stereolabs @Stereolabs3D for official news and release announcements.

  • GitHub If you come across a bug, please raise an issue in this GitHub repository.

  • Email To talk to Stereolabs directly, the easiest way is by email. Get in touch with us at support@stereolabs.com.