Releases: prophesee-ai/openeb
Releases · prophesee-ai/openeb
v4.1.0
- Added Time Surface C++ sample showing how to compute the Time Surface of the CD events and to display it using our SDK UI module
- Deprecated SimpleDisplayer class in favor of SDK UI Metavision::Window and Metavision::MTWindow
- Renamed Metavision::DeviceConfig::get_evt_format_key to Metavision::DeviceConfig::get_format_key
- Renamed Metavision::DeviceConfig::set_evt_format to Metavision::DeviceConfig::set_format
- Renamed Metavision::DeviceConfig::evt_format to Metavision::DeviceConfig::format
- Removed OpenCV from dependency list of C++ SDK Get Started sample
v4.0.1
- Deprecated Python binding get_i_eventrailfilter_module and added get_i_event_trail_filter_module to replace it
- Deprecated Channel Python binding that was bound in metavision_hal and added Channel binding in I_TriggerIn to replace it
- Fixed Metavision::DeviceConfig::get_evt_format_key and Metavision::DeviceConfig::set_evt_format
- Fixed compilation issue on Ubuntu when using Cuda 11.7
- Fixed GUI interactions in Vibration Estimation sample
- Removed OpenCV from dependency list of Getting Started Guide for SDK in C++
v4.0.0
Here is a comprehensive list of the changes to the HAL API introduced in this release ordered by class:
- DeviceDiscovery
- Added DeviceDiscovery::list_device_config_options function to get a list of (key,option) representing configuration options that can be set on a DeviceConfig to customize the way a device can be opened
- I_AntiFlickerModule
- Changed enable()/disable() into bool enable(bool)
- Removed set_frequency function from HAL I_AntiFlickerModule (function set_frequency_band should be used now)
- Removed set_frequency_band boolean parameter stop and added set_filtering_mode to select AFK filter
- Added some functions to get/set advanced AFK configuration (threshold, duty cycle etc.)
- I_CameraSynchronization
- Added class allowing to control the camera mode (standalone, master or slave)
- I_Decoder
- Decoding is now handled in I_EventsStreamDecoder and I_EventFrameDecoder
- I_DeviceControl
- This class was removed
- Functions start and stop are now handled via cpp:class:I_EventsStream Metavision::I_EventsStream class. An example of new API usage can be found in metavision_hal_showcase sample
- Functions set_mode_standalone, set_mode_master, and set_mode_slave were moved to I_CameraSynchronization class. An example of new API usage can be found in metavision_hal_sync
- Function reset was removed
- I_DigitalCrop
- Added class to leverage digital cropping offered by last generation of sensors
- I_DigitalEventMask
- Added class to enable/disable pixels individually
- I_ErcModule
- Renamed I_Erc class into I_ErcModule
- Changed void enable(bool) into bool enable(bool)
- Added functions to retrieve some ERC settings (e.g. get_min_supported_cd_event_rate, get_max_supported_cd_event_rate)
- I_EventTrailFilterModule
- Renamed I_NoiseFilterModule class into I_EventTrailFilterModule
- Changed void enable(Type type, uint32_t threshold)`/disable() into bool enable(bool state)
- Added set_threshold and set_type functions to configure the filter
- Added functions to retrieve some filter settings (get_min_supported_threshold, get_max_supported_threshold)
- I_EventsStream
- Replaced Future::I_EventsStream class with I_EventsStream, making the seek feature part of the default Metavision:: namespace
- Changed methods seek and get_seek_range to non-virtual methods
- I_HW_Identification
- Removed get_system_version
- Removed as_string from HAL in favor of name_ field
- Renamed get_available_raw_formats to get_available_data_encoding_formats
- Added get_current_data_encoding_format function
- Added field name_ to SensorInfo
- I_Monitoring
- Added get_pixel_dead_time to retrieve pixel dead time (aka. “refractory period”)
- I_ROI
- Removed I_ROI::set_ROIs which was creating multiple ROI windows using row/columns mechanism hence creating “shadow symmetric” windows. The new function I_ROI::set_windows allows to create proper ROI Windows but multiple windows are only available in some sensors. The old set_ROIs behaviour with “shadow symmetric” windows can now be achieved using I_ROI::set_lines.
- Removed I_ROI::set_ROIs_from_bitword, use the I_ROI::set_lines instead
- Removed I_ROI::set_ROIs_from_file
- Renamed I_ROI::set_ROI to I_ROI::set_window
- Added I_ROI::get_max_supported_windows_count function that returns the maximum number of independent windows supported by the device
- Added I_ROI::set_windows function to set multiple independent windows: an exception will be thrown if the number of windows passed is higher than what is returned by I_ROI::get_max_supported_windows_count
- Added I_ROI::set_mode function to switch between the ROI and RONI mode when supported
- I_TriggerIn
- Added I_TriggerIn::get_available_channels function to get the list of channels that are available and can be enabled/disabled
- Numerical values for the channel argument of I_TriggerIn functions replaced by a strongly typed enumerations that abstracts the actual channel value. I_TriggerIn::Channel::Main, I_TriggerIn::Channel::Aux and I_TriggerIn::Channel::Loopback should now be used instead of the actual numeric value specific to the underlying system.
- I_TriggerOut
- Added I_TriggerOut::get_period and I_TriggerOut::get_duty_cycle functions
Other changes in OpenEB API:
- Base module
- Added LogOptions class to be used with setLogOptions as a replacement for setLogLevel and setLogStream
- Added LogOptions::setLevelPrefixPadding function to enable fixed length level block logging
- HAL
- Renamed metavision_hal_viewer sample into metavision_hal_showcase to convey the info that this sample is meant to be used as an example of various HAL facilities rather than as a viewer.
- Prophesee Devices
- Prophesee EVK1 devices plugins have been discontinued
- Changed set method I_ll_biases implementation to raise exception when attempting to set an invalid bias
- Provide a shared library psee_hw_layer to access underlying implementations of facilities
- Core module
- Added CoolWarm color palette to enable clearer distinction between negative and positive events
- Added TimeDecayFrameGenerationAlgorithm class to generate on demand colored visualization of events with exponential decay
- Driver module
- In AntiFlickerModule class, removed set_frequency (function set_frequency_band should be used now)
- In Roi class, renamed Roi::Rectangle to Roi::Window
- In Roi class, the function Roi::set(const std::vector& windows) will now try to set multiple independent windows and may throw an exception if the operation fails, as opposed to setting the union of rows and lines covered by the multiple windows as was done in previous releases
- Renamed NoiseFilteringModule class into EventTrailFilterModule
- Added Camera::from_serial overload that enables passing device config options
- Renamed Camera::CameraConfiguration::event_format to Camera::CameraConfiguration::data_encoding_format
- Added new HDF5 event data format with a lossless compression codec for event-based data called ECF (Event Compression Format)
- Requirements and support
- Updated supported C++ Standard to C++17
- Dropped Ubuntu 18.04 support
- Updated Ubuntu 20.04 python support (now Python 3.8 and Python 3.9 are supported)
- Added Ubuntu 22.04 support (with Python 3.9 and Python 3.10)
- Updated Windows python support (now Python 3.8 and Python 3.9 are supported)
- Updated Windows and Ubuntu 3rd parties minimum required versions (see Installation Guides)
v3.1.2
OpenEB
- Added code sample showing how to record a RAW file using the Python API
- Split Tracking samples documentation into Generic Tracking and Spatter Tracking
- Reviewed RawReader Python class to lower its memory consumption
- Fixed issue in pipeline FrameDisplayStage preventing it to work properly when instantiated several times in a row
- Minor enhancements in Getting Started Guide for SDK in Python for better clarity
Documentation
- Enhanced Installation Guides: upgrade from previous version, dependencies installation, camera plugins configuration etc.
v3.1.1
-
Prophesee Devices
- Fixed issue in Gen31-based EVKs plugins preventing to set bias_refr in some specific situations
-
OpenEB
- In Core module, fixed issue in seek_event() Python function in RawReader module
- Synchronization samples are now displaying master/slave information in window's name
-
Documentation
- Fixed list of required dependencies for OpenEB
- Updated the information related to PyTorch installation
- Added information on the loading order of camera plugins
- Added note about Trigger In polarity inversion for EVK4 in Timing Interfaces page
- Enhanced API documentation of BaseFrameGenerationAlgorithm in Python
v3.1.0
- Prophesee Devices
- Released new firmware for EVK3 and EVK4, upgrade is required (To have access to this page, request an account in the Knowledge Center)
- Fixed error raised when activating Trigger In on EVK4
- Fixed sensor configuration to avoid events being produced outside of ROI in some specific circumstances
- Removed register address check against register map when reading and writing camera register using the Hardware Register facility
- OpenEB
- New version of the EVT3 decoder with protocol violation detection and mitigation
- Documentation
- Pages on Cameras Synchronization and Timing Interfaces were fully revamped
- Fixed some wrong references in Quick Start of ML module
v3.0.2
[3.0.2] Minor version bump (imported from f3107c5b0cf)
v3.0.1
-
General
- New version (1.1) of the Metavision License with updated information about the Source offer
-
OpenEB
- Fixed Github Action CI
-
Documentation
- Added list of supported cameras for OpenEB
- Added some example videos in Core ML sample guides
- Added missing steps for FFMPEG in the install guides
- Fixed Trigger In channel ID for EVK3 Gen4.1
v3.0.0
[3.0.0] Import f48bec34040
v2.3.2
Merge pull request #44 from prophesee-ai/release/v2.3.2 [2.3.2] Import c6f4e8a3c4f