ZED SDK 4.1
Release notes of the ZED SDK 4.1.x series
Release notes of the ZED SDK 4.1 series. Patch releases are listed newest first. Download links and the full changelog, including ZED Tools and integrations, are available on the ZED SDK 4.1 release page.
What’s New
This release of the ZED SDK is now a stable release of the major version 4. It brings significant stability and performance improvements. We’re introducing a new generation of the Positional Tracking module for more precise and robust localization. A new version of SVO is also available, recording full sensor data and supporting custom user data for ease of use.
4.1.4
Released: Sep 10, 2024
Bug Fixes
- Resolved issues with SVO recording and playback. Improved
LOSSLESSmodes performances and robustness to corruption while using less memory. SVO repair uses less memory. Resolved reading problems on Windows, as well as SVO real time mode. - Added HDR mode support for ZED One 4K.
4.1.3
Released: Jul 16, 2024
SDK
- Added status reporting for NEURAL depth model optimization errors. The
Camera::open()function can now fail to reflect theNEURALdepth status. - Enabled mask retrieval for custom object detection.
- Improved GNSS calibration speed when covariance is very low, such as with RTK.
Bug Fixes
- Fixed an issue with the quad camera configuration that prevented all cameras from opening on JetPack 6.
- Fixed the depth min and max getter methods in the Python API.
- Fixed an issue with custom object detection where the 3D bounding box height increased along with the width.
- Fixed several edge cases in positional tracking generation 2.
4.1.2
Released: May 24, 2024
SDK
- Improved fusion sources synchronization for enhanced robustness in case of inconsistent data rates.
- Improved robustness of Positional Tracking Gen 2 IMU initialization.
- Added support for the JetPack 6.0 Production Release.
Bug Fixes
- Fixed a memory leak when closing the camera during SVO playback.
- Fixed a bug that could prevent recording lossless H26X SVO on Jetson.
- Fixed a regression in the image acquisition pipeline for HD1080 at 30FPS in USB mode that could impact performance.
- Fixed SVGA capture mode with ZED X cameras, which could result in black images.
4.1.1
Released: May 7, 2024
SDK
- Improved USB reliability on Linux platforms.
Bug Fixes
- Enhanced the reliability of ZED SDK streaming features, addressing issues where
CAMERA_NOT_INITIALIZEDerrors occurred randomly. - Corrected
GNSS_RTK_FIXreporting errors that incorrectly displayedGNSS DATA NEED FIX. - Fixed bad GNSS heading value.
- Fixed positional tracking gen2 potential random behavior after it relocates.
- Fixed a crash that could occur when reading a corrupted H264/H265 SVO2 on Jetson
- Fixed a crash when reading/writing unsupported SVO files on Jetson Nano. The
enableRecordingfunction now returns anERROR_CODEdue to the absence of a hardware encoder on this platform. A software fallback will be introduced in a future release. - Fixed SVO2 recording issues related to image-based compression or lossless H26X.
4.1.0
Released: Apr 3, 2024
New Features
Positional Tracking GEN2
- Introduced a new Positional Tracking generation, GEN2. It can be enabled using
PositionalTrackingParameters::mode = POSITIONAL_TRACKING_MODE::GEN_2. It outputs more robust and precise trajectories compared to GEN1, leveraging IMU data at full frequency for better motion estimation. This version requires the new SVO2 data. A new warningERROR_CODE::SENSORS_DATA_REQUIREDhas been introduced to inform about missing high-frequency data when using the module. The state enum has been reworked for clarity on the module status;ODOMETRY_STATUS,SPATIAL_MEMORY_STATUS, andPOSITIONAL_TRACKING_FUSION_STATUSare now available. It’s accessible using the new structPositionalTrackingStatus.
Recording using SVO2
- Introduced a new default SVO2 format, recording sensor data at full frequency rate.
- Supports custom user data using new functions
Camera::ingestDataIntoSVOalongside a new structSVOData. The data can then be retrieved when opening the file usingCamera::retrieveSVOData. Each data stream is associated with a string key, the data points are associated with a timestamp to replay synchronously if needed.Camera::getSVODataKeysretrieves all custom data stream keys present in the current SVO2 file. This format is mandatory to use the new Positional Tracking Gen2 with IMU data for best accuracy. The older format can still be recorded by setting the environment variableZED_SDK_SVO_VERSIONto 1.
Improve Neural Depth
- Introduced a new
NEURAL+mode providing higher quality than Neural with sharper edges and more accurate depth, though requiring more computation. - Improved
NEURALmode accuracy and confidence. This new model is more accurate with no runtime difference. The confidence has been reworked for accurate edges and minimized flying pixels. It also improves confidence estimation in challenging areas such as sky, hard illuminations, very close objects, etc., to remove false depth measurements reliably. Neural modes from previous versions can be accessed on demand.
Region of interest per module
- Reworked the Region of Interest to be applied independently for each module instead of implicitly for all at once. This feature allows masking an irrelevant part of the frame to avoid polluting results with unnecessary data. Typical usage includes masking a vehicle part where the camera is mounted to improve positional tracking precision and irrelevant depth data for obstacle detection. It can also be used to detect objects or body skeletons on only some part of the frame. The feature is now applied to each module through a new
MODULEenum, with defaults applying to all modules. FunctionsCamera::setRegionOfInterestandCamera::getRegionOfInterestcan be used to set the ROI. Auto-detection mode can find the static part of the image automatically by moving the camera for some time. It can be enabled usingCamera::startRegionOfInterestAutoDetection, withRegionOfInterestParametersfor adjusting detection parameters.
Global localization / Geo Tracking
- Improved Global Localization module accuracy and robustness, compatible with the new Positional Tracking GEN2. It now better behaves across a wider range of settings, especially across GNSS signal precision, from very precise RTK to dead reckoning.
- Supports and requires an antenna position relative to the camera, as well as the type of GNSS fix (2D, 3D, RTK FIX, etc.) to improve precision of the fusion. Samples have been improved for clarity, utilizing SVO2 custom data to record GNSS data, allowing a single recorded SVO2 file to contain all necessary data.
General
- Improved ZED X image quality by reducing motion blur and optimizing ISP to limit exposure time, resulting in better image quality and positional tracking precision improvements. Installing the SDK will automatically install the ISP config override for all ZED X cameras.
- Improved image validity check module on the ZED 2 and ZED 2i to detect rare cases of auto exposure getting stuck underexposing the left image.
- Improved ZED X capture process for more stable opening of multiple cameras and an optimized color conversion workflow.
- Reduced CPU usage and memory allocations in the ZED X capture process.
- Improved depth minimum range to better estimate working range based on camera baseline, lens, and depth algorithm used.
- Enhanced performance of Body Tracking models for better runtime performance and accuracy compared to version 4.0.
- Fixed a random issue where the depth minimum value was clamped at 1.5m.
Fusion
- Improved Body Tracking fusion synchronization process to better handle low or irregular framerate
- Fixed the depth unit returned by
retrieveMeasure, the user-definedUNITwas not applied.
Bug Fixes
- Fixed AI performance regression for NVIDIA Pascal GPUs (GTX 1070, GTX 1080, etc.), correcting incorrect
fp16execution without hardware support, leading to poor performance compared tofp32. - Fixed grab recovery that lost camera video settings.
- Fixed a crash that could occur when calling the
resetPositionalTrackingfunction. - Fixed a crash when using the Object detection masks that could get corrupted.

