ZED SDK 3.0
Release notes of the ZED SDK 3.0 series. Patch releases are listed newest first. Download links and the full changelog, including ZED Tools and integrations, are available on the ZED SDK 3.0 release page.
What’s New
ZED SDK 3.0 is the first release that supports the brand new ZED 2 camera, improved in every way with wider angle optics, more accurate factory calibration, built-in new generation environmental and motion sensors and industrial grade mounting system and enclosure.
The SDK 3.0 also introduces new neural depth sensing, improved positional tracking, new AI-based object detection API that detects and tracks objects in 3D, image quality enhancement, performance improvements and a lot more features.
To update to 3.0 from previous 2.X versions, read the migration guide.
3.0.3
SDK
- Fixed an issue with recording and streaming with ZED cameras that could lead to a crash of NVENC encoder.
- Added support in 3.0 for ZED stereo cameras with firmware 1142 on Windows.
- Fixed Ubuntu16 installer missing
turbojpegdependency. - Fixed Qt5 OpenGL/SVG dependencies in Ubuntu installers.
3.0.2
SDK
- Improved Spatial mapping performance by up to 200% on desktop and Jetson embedded platforms. Depth fusion is now much faster and the resulting model now refreshes in real-time on most platforms.
- Improved
DEPTH_MODE::PERFORMANCE. It now benefits from neural depth estimation with improved accuracy, edges and cleaner data. - Increased
DEPTH_MODE::PERFORMANCEspeed with a performance boost of up to 15%. - Fixed a bug in
resetTrackingfunction. The yaw angle defined by the Transform parameter was not taken into account. - Eliminated flickering in
VIEW::DEPTHimage when the scene has very low depth content. - Fixed cuDNN reported version on JetPack 4.2. The model failed to run due to an incorrect reported version. It now works correctly.
- Removed
libturbojpeg-0-devdependency from Ubuntu 16 installer since the package is only available in Ubuntu 18.
3.0.1
No ZED SDK changes in this release (ZED Tools and integrations updates only).
3.0.0
New Features
Object Detection
- Added a new module that detects and tracks objects in 2D and 3D, compatible with ZED 2.
- Added
enable/disableObjectDetectionandretrieveObjectsfunctions. - Added
ObjectDataclass that contains detected object data, such as 2D and 3D bounding box, tracking information, dimensions and 2D mask.
Depth
- Introduced neural networks for depth estimation in
ULTRAmode to improve stereo depth accuracy. Other modes will be updated in following SDK updates. - Introduced new confidence filter that detects homogenous zones. Use
textureness_confidence_thresholdto remove noisy values in the depth map such as sky or untextured areas.
Video
- Added image enhancement setting to provide more vivid and accurate colors. Enabled by default in 3.0.
- Added image sharpness setting to improve sharpening of live and recorded videos.
- Updated SVO video format to store new sensors data.
Sensors
- Introduced new Sensor API to provide access to data from IMU, barometer, magnetometer and temperature sensors in the ZED 2.
Local Streaming
- Improved local network streaming of video data between sending and receiving host computers.
- Video Streaming API is not compatible between 2.8 and 3.0.
Docker
- Improved Docker support for all ZED SDK versions.
- Introduced lightweight
runtimeDocker images for deployment of Docker applications using the ZED SDK. - Updated StereoLabs DockerHub repository with the new images.
Performance
- Improved speed of the Depth module by carefully optimizing critical functions on desktop and embedded platforms.
- Optimized image rectification pipeline.
Software Support
- Updated to C++14 (previously C++11)
- The new Object Detection module uses TensorRT and cuDNN to run efficiently on embedded platforms. The module is dynamically loaded from a separate sl_ai library to avoid the explicit dependency when using
sl_zed.
Platforms
- Added support for CUDA 10.2 and JetPack 4.3.
- Dropped support for JetPack 3.3 and Windows 7. While ZED may still be used on Windows 7, it is not officially supported.
Major 3.0 API Changes
Since there are a lot of changes compared to ZED SDK v2, a migration guide is available to help you switch easily from 2.8 to 3.0.
General
- Each enum is now an enum class (forced using
TYPE::VALUE, instead of the currentTYPE::TYPE_VALUEor evenTYPE_VALUE). - All deprecated functions/parameters/options have been removed.
- All libraries are now merged into
sl_zedfor clarity and ease of deployment. - All headers are now merged into a single
sl/Camera.hpp. Camera::grabis now blocking (guaranteed to return a new frame).
Functions
- SaveAs functions have been replaced by Mat::write().
- Added getter functions to retrieve any module parameter from Camera, such as
getPositionalTrackingParameters. - Added static function
Camera::reboot()to perform a hardware reset of the camera.
Video
- Resolution and FPS information have been moved to
Camera::getCameraInformation. - The
CAMERA_SETTINGSenum is renamed toVIDEO_SETTINGS. - Added
InitParameters::image_enhancementfor better black level correction, AWB adjustment and improved gamma curve - Added
VIDEO_SETTINGS::SHARPNESS, a digital two-pass sharpening control that improves image quality. - Video recording is now automatically handled by the grab function, without having to explicitly call the
record()function (now removed). - Added a new
pauseRecordingfunction. - Added
RecordingParametersstructure. - Deprecated
RAWandLOSSYcompression modes. They have been removed from SDK recording options. AVCHDandHEVChave been renamed intoH264andH265.
Sensors
- Added
SensorsDataclass to store the data of all the other sensors present in the new ZED 2 which includesBarometerData,TemperatureData,MagnetometerDataandIMUData. It also includes a state;CAMERA_MOTION_STATEwhich indicates if the camera is static, moving or falling. Camera::getIMUData()has been replaced byCamera::getSensorsData()to reflect the class update. It provides access to all the sensor values.
Depth
- Depth range and confidence parameters have been moved into
InitParameters. - Improved
ULTRAmode with better accuracy and contours.
Positional Tracking
- Positional Tracking module function have been renamed to include “Positional” to differentiate it from object tracking. For instance:
Camera::enableTrackingis nowCamera::enablePositionalTracking. - Spatial memory has been renamed to Area memory for consistency with Area files (
enable_area_memory,saveAreaMap)
Streaming
- Added
StreamingParameters::chunk_sizeto select the maximum size of each transmitted packet and improve packet transmission.
Spatial Mapping
- Removed all deprecated Mesh functions. The overloaded
SpatialMapfunctions that include support for bothMeshandFusedPointCloudshould now be used. extractWholeSpatialMapis now smarter if a previously retrieved map is passed as an argument. It will retrieve only the difference between the initial and updated mesh.
Compatibility
- Streaming module is not compatible between 2.8 and 3.0.
- Due to a change in SVO metadata, SVOs recorded with 3.0 will only be compatible with SDK 2.8.4 and upwards.

