Releases: luxonis/depthai-core
Release v3.5.0
Features
- Add AutoCalibration node which automatically performs dynamic calibration
- Merge v2.32.0 along with improvements on RVC2 in crashdump collection and device state retrieval
Misc
- Set tracked undistortion coefficients on legacy calibration to 0 when undistortion is turned on
- Add
eventManager.waitForPendingUploads()to avoid losing Snaps and Events that are waiting in the queue at script exit - Expand the stability test to include
NeuralAssistedStereo,FeatureTrackerandObjectTracker
[RVC4] Luxonis OS compatibility
Integration tested on Luxonis OS 1.14.1, 1.20.5 and 1.27.1
Release v3.4.0
Features
-
Add support for semantic segmentation
-
Add support for ingesting instance segmentation in the SpatialLocationCalculator to improve 3D detections
-
Add support for spatializing keypoints into 3D
-
[RVC4] Add support for USB protocol
* Requires LuxonisOS 1.27.1 or newer
* It can be forced withDEPTHAI_PROTOCOL=usbin the environment -
Add
ispoutput to Camera node -
Add Gate node
- Enables easy opening and closing a message stream in runtime
- C++ example and Python example
-
[RVC4] Add support for HFR (High frame rate) on IMX586:
- 1280x720 @ 480 FPS
- 1920x1080 @ 240 FPS
- C++ examples and Python examples
-
Add support for XLink packetization
- Optionally packetize messages sent through XLink and limit the bitrate per connection
- Useful in advanced scenarios to allow streams with large messages to run in the background
- Usage example
-
Visualizer updated to 2.0.10
- Support for live pipeline visualization when
DEPTHAI_PIPELINE_DEBUGGING=ONis set - Visualize keypoints when showing
ImgDetections - Automatically remap detections and annotations to the target stream
- Support for live pipeline visualization when
-
Add a new
CalibrationMetricsoutput to DynamicCalibration node -
Add support for a callback for Snaps & Events to get notified when an event gets sent to Hub example
-
[RVC4] Add support for external FSync
-
[RVC2] Add support for setting custom sensor tuning per sensor
-
[RVC2] Add support for setting sensor orientation in the Camera node
Bug fixes
- Fix ownership when
dai::Pipelineis copy-assigned to another variable - Fix replay for StereoDepth for the case where
ImgTransformationsaren't set
Misc
- Deprecate creating nodes without
pipeline.create - Make basalt a private dependency instead of public
- ImageAlign:
- Warn if a distorted image is sent to
ImageAlign'salignTo - Use
ImgTransformationsto get intrinsics and distortion coefficients instead of relying on heuristics and global calibration
- Warn if a distorted image is sent to
- [RVC4] Add support for RVC4 devices to DeviceManager
- [RVC2] Add new fields to ImgDetections inside
Scriptnode bindings
[RVC4] Luxonis OS compatibility
Integration tested on Luxonis OS 1.14.1, 1.20.5 and 1.27.1
Release v2.32.0
Features
- Add a
device.getStatefunction, which returns the firmware state of the device in runtime - Add
setProcessorfunction to select the processor forSyncandDemuxnodes
Misc
- Expand crashdump data in firmware with more context on what caused the crash
Release v2.31.1
Bug fixes
- Fix a hard to hit cache coherency bug in
MessageGroupmessage - Remove fixed pattern noise for the OV9[2/7]82 sensor during bring scenes with low exposure times
Release v3.3.0
Features
- Add Pipeline Debugging support
- More details can be found in the README
- The pipeline graph can be visualized with depthai_pipeline_graph
- C++ examples here and Python examples here
- Add NeuralAssistedStereo node (classical stereo + neural depth fusion)
- Add VPP node and configuration API
- Expose XLinkBridges
- Add Housing calibration support in
CalibrationHandler - [RVC4] Add SystemLogger node and expanded SystemInformation metrics
- [RVC4] Update
StereoDepthpresets on RVC4 with improved quality/fillrate trade-offs
Misc
- Add binary services support to
RemoteConnectionand configurable callback thread count - Add resize mode to build method in
NeuralNetwork,DetectionNetworkandSpatialDetectionNetworknodes - Add support for more frame types in
ImgFrame.setCvFrame() - [RVC4] Add support for manual white-balance
- [RVC4] Turn off dot projectors on pipeline stop
- [RVC4] Add temporal filter to NeuralDepth node
Bug fixes and stability
- Fix SSD parser regression and add
labelNamesupport in keypoints/detections - Fix file corruption when recording long videos with H264 encoding with
Recordnode - [RVC4] Turn off Nagle's algorithm to avoid latency spikes on Windows
- [RVC4] Fix a race condition in StereoDepth node changing the left and right input frames
- [RVC4] Fix camera mapping for custom RVC4 boards
- [RVC2] Fix an edge case for MessageGroup's cache coherency
- [RVC2] Remove false alarm warning in SpatialDetectionNetwork when input image was rotated
[RVC4] Luxonis OS compatibility
Integration tested on Luxonis OS 1.14.1, 1.18.3 and 1.23.1
Release v3.2.1
Bug fixes
- [RVC4] Fix a regression for IMX586 only working with the 4000x3000 sensor config at 30 FPS
On the LuxonisOS 1.20.5 and newer, up to 240 FPS is now supported
Release v3.2.0
Features
- Extend
DetectionParserandImgDetectionsmessage with instance segmentation and keypoints parsing - Add support for the new Snaps&Events API:
- [RVC4] Add NeuralDepth node supporting the neural depth running on device
- [RVC4] Switch the front LED to green when DepthAI is running
- [RVC2] Add tuning for the IMX577 sensor, removing the previously present blue tint
Bug fixes and stability
- Fix an edge case for IPv4LL discovery on MacOS luxonis/XLink#100
- [RVC4] Fix a small memory leak on RVC4 happening in Camera node and in StereoDepth when extended mode is enabled
- [RVC2] Fix a rare issue of IMU preventing a device reboot
- [RVC2] Patch ToF calibration that caused a minor bump in readout values in the middle of the frame
Misc
- Add HDR examples for C++ here and Python here
- Add priority implementation to
RemoteConnectionto prioritize metadata over raw frames - Expose an embedded RPC on
RemoteConnectioncalledlibraryVersionwhich returns the DepthAI version - Embedded visualizer is updated from
0.12.33to1.5.40 - Stop extracting NeuralNetwork models to a temporary directory to reduce disk usage
- [Python] Remove warnings on MacOS for duplicate symbols for
CVSliderCVWindowwhen library is used alongsidecv2 - [Python] Add support for Python3.14 and drop Python3.8
- [RVC4] Add support for flashing and reading housing calibration
- [RVC4] Refactored Camera stack with improved stability for startup and restarts
- Improves stability for multi-day runs
- Solves a rare case of camera getting stuck and unable to stream which required a device reboot
- [RVC4] Handle the timestamp change that will be present in LuxonisOS 1.21.0
- [RVC4] Add a
device.getProcessMemoryUsage()returning memory usage of just thedepthai-deviceprocess - [RVC2] Add bindings for
setTransformationin Python bindings for Script node - [RVC2] Allow DynamicCalibration to run on devices with older calibration with un-distortion disabled
- [RVC2] Autodetermine pool sizes to allow high resolution frames on IMX582 to run without explicit changes
- [RVC2] Improved handling of HDR for IMX582
- Limit the FPS to 10
[RVC4] Luxonis OS compatibility
Integration tested on Luxonis OS 1.14.1, 1.18.3 and 1.20.5
Release v2.31.0
Features
- Add tuning for the IMX577 sensor, removing the previously present blue tint
- Improve IMX678 support on RVC2 with better black level correction, improving brightness and color accuracy
New devices support
- Add support for a new revision of OAK-Thermal (R8)
- Add support for OAK-ToF (R4)
- Add support for a new revision of OAK-D-S2-[Pro]-Wide OV9728 variant (R8)
Bug fixes and stability
- Fix a rare issue of IMU preventing a device reboot
- Fix a timestamp overflow bug on the BNO08x IMU
- Fix an edge case where
dai.Deviceconstructor could get stuck indefinitely if the device lost connection at the wrong time by adding a timeout internally - Turn on the watchdog early during discovery of RVC2 USB devices to avoid soft bricking the device along with handling the case where the device gets into that state to recover it on the next boot
- Fully disable crashdump extraction when
DEPTHAI_CRASHDUMP=0is set
Misc
- Add support to explicitly remove tracklets in
ObjectTrackernode - Remove limitation for the maximum watchdog frequency from 4.5 seconds to unlimited ("infinity") by adding a software watchdog in firmware
Release v3.2.0-rc.0
Features
- Extend
DetectionParserandImgDetectionsmessage with instance segmentation and keypoints parsing - Add support for the new Snaps&Events API:
- [RVC4] Add NeuralDepth node supporting the neural depth running on device
- [RVC4] Switch the front LED to green when DepthAI is running
- [RVC2] Add tuning for the IMX577 sensor, removing the previously present blue tint
Bug fixes and stability
- Fix an edge case for IPv4LL discovery on MacOS luxonis/XLink#100
- [RVC4] Fix a small memory leak on RVC4 happening in Camera node and in StereoDepth when extended mode is enabled
- [RVC2] Fix a rare issue of IMU preventing a device reboot
- [RVC2] Patch ToF calibration that caused a minor bump in readout values in the middle of the frame
Misc
- Add HDR examples for C++ here and Python here
- Add priority implementation to
RemoteConnectionto prioritize metadata over raw frames - Expose an embedded RPC on
RemoteConnectioncalledlibraryVersionwhich returns the DepthAI version - Embedded visualizer is updated from
0.12.33to1.5.40 - Stop extracting NeuralNetwork models to a temporary directory to reduce disk usage
- [Python] Remove warnings on MacOS for duplicate symbols for
CVSliderCVWindowwhen library is used alongsidecv2 - [Python] Add support for Python3.14 and drop Python3.8
- [RVC4] Add support for flashing and reading housing calibration
- [RVC4] Refactored Camera stack with improved stability for startup and restarts
- Improves stability for multi-day runs
- Solves a rare case of camera getting stuck and unable to stream which required a device reboot
- [RVC4] Handle the timestamp change that will be present in LuxonisOS 1.21.0
- [RVC4] Add a
device.getProcessMemoryUsage()returning memory usage of just thedepthai-deviceprocess - [RVC2] Add bindings for
setTransformationin Python bindings for Script node - [RVC2] Allow DynamicCalibration to run on devices with older calibration with un-distortion disabled
- [RVC2] Autodetermine pool sizes in case to allow high resolution frames on IMX582 to run without explicit changes
- [RVC2] Improved handling of HDR for IMX582
- Limit the FPS to 10
Release v3.1.0
Features
- Automatically select the number of pools in Camera node
- Improves the performance at high resolutions for OAK1-Max
- Implement the maximum exposure cap in AE on RVC4
- Requires Luxonis OS v1.19.1
- Add setters to
PointCloudDatamessage
Bug fixes
- Address MacOS weak vtables issues causing deadlocks in the new
DynamicCalibrationnode - Turn on the watchdog early during discovery of RVC2 USB devices to avoid soft bricking the device along with handling the case where the device gets into that state to recover it on the next boot
- Fix the usage of RVC2 devices inside Linux containers because of missing udev support
- Fix undistortion on RVC4 for the chroma plane when
NV12type is requested - Use the correct
ImgTransformationsin SpatialDetectionNetwork on RVC4 in case depth was not aligned to RGB - Stability fixes for rare case with IMU halting the destruction on RVC2
- Fix a timestamp overflow bug on the BNO08x IMU on RVC2
Misc
- Update
zoo_helperbinary with better error handling - Reduce the number of symbols on Windows by performing more aggressive inlining
DynamicCalibrationinput control now has a shorter API to send commands to the node- Add intrinsics metadata to thermal frames
- Update the examples using
StereoDepthnode with removing the explicitNV12type request for better performance - Improve IMX678 support on RVC2 with better black level correction, improving brightness and color accuracy
- [Python bindings] Add explicit
numpyrequirement to the Python wheels - [Python bindings] Add missing bindings to set the filter order on the
StereoDepthnode