What's New
Version history for the SFE Toolkit. The most recent release is at the top.
Changelog
All notable changes to this project are documented in this file.
[4.2.1] - 2026-03-16
Fixed
- Documentation missing in the package [BSDK-545]
- Fix minor documentation inconsistencies
[4.2.0] - 2026-03-09
Fixed
- Fixed incorrect Face extraction preprocessing that affected accuracy. [BSDK-486]
Breaking Changes
- Face templates extracted using prior v4.x toolkit must be re-extracted.
[4.1.0] - 2026-02-18
Added
- Optional Palm landmarks on detection: palm detections can now carry attached landmarks, so you can skip calling palm landmark extraction when the detector already provides them.
- C API:
SFEPalmLandmarksandSFEPalmDetectionDatawithhas_landmarksandlandmarks. - UniFFI:
PalmLandmarksdictionary andModality::Palmwith optionallandmarks.
Fixed
- Palm landmark extraction reuses landmarks already on the detection when present. Fixes [BSDK-484].
[4.0.4] - 2026-02-12
Added
- Face template export/import support [BSDK-463]
- C API:
sfeFaceTemplateExport(),sfeFaceTemplateImport() - UniFFI:
template_export,template_import
[4.0.3] - 2026-02-09
Fixed
- Fixed incorrect score normalization in Face match/identification [BSDK-479]
[4.0.2] - 2026-02-04
Fixed
- Updated Android NDK to r28c to fix 16k page size issues [BSDK-459]
- Updated
SFEImageFormatdefinition to match implementation - More predictable identification performance on various platforms
[4.0.1] - 2026-01-30
Added
- Support for TFLite and TensorFlow models
Changed
- Fixed missing mutli-detection models in all packages
- Fixed missing models in Ambarella packages
[4.0.0] - 2026-01-29
Breaking Changes
Unified Detection API
All modality-specific detection types and functions have been replaced with a unified detection system:
- New
SFEDetectionstruct replaces all modality-specific detection types (SFEFaceDetect,SFEIrisDetect,SFEPalmDetect,SFEObjectDetect,SFETattooDetection,SFEPersonDetectOriented) - New
sfeDetect()function replaces modality-specific detection functions (sfeFaceDetect,sfeIrisDetect,sfePalmDetect,sfeObjectDetect,sfeTattooDetect) - Detection modality is indicated by
SFEModalityenum field inSFEDetection - Field names standardized:
bbox→bounding_box,bbox_confidence→confidence
Unified Tracker API
All modality-specific tracker functions have been replaced with unified tracker functions:
sfeDetectionTrackerCreate(),sfeDetectionTrackerUpdate(),sfeDetectionTrackerFree(),sfeDetectionTrackerLost(),sfeDetectionTrackerRemoved()- Tracker creation now requires 5 parameters with new
new_track_threshparameter for minimum confidence to initialize a new track max_time_lostparameter type changed fromsize_ttouint64_t
Core API Changes
- Type renames:
SFELicenseSource→SFELicenseTypeSFE_LICENSE_SOURCE_*→SFE_LICENSE_TYPE_*SFEBbox→SFEBoundingBoxSFEOrientedBbox→SFEOrientedBoundingBox
- Function renames:
sfeImageLoad()→sfeImageDecode()sfeImageSave()→sfeImageEncode()sfeSolverCreateWithParameters()→sfeSolverCreate()
- Signature changes:
sfeImageInfo(): Now returnsSFEImageInfostruct instead of separate output pointerssfeImageColorTranspose(): Now returns new image viaout_imageparameter instead of in-place modificationsfeLicenseValidate(): No longer returns license source; use newsfeLicenseType()function instead
Face API Changes
SFEFaceDetectAccuracyType→SFEFaceDetectionAccuracyTypesfeFaceLandmarks(): Now acceptsconst SFEDetection *instead ofSFEBboxsfeFaceTemplateExtract(): Now requiresconst SFEDetection *parametersfeFaceLivenessPassive(): Now returnsSFEFaceLivenessstruct instead of floatsfeFaceDetectInputSize(): Now returnsSFEDetectionInputSizestructsfeFaceCrop():face_size_extensionparameter changed fromuint32_ttofloat
Palm API Changes
- New
SFEPalmLandmarksstruct andsfePalmLandmarks()function for palm landmark extraction sfePalmTemplateExtract(): Now acceptsconst SFEPalmLandmarks *instead of detectionsfePalmAttributes(): Now acceptsconst SFEPalmLandmarks *instead of detectionsfePalmLivenessPassive(): Now acceptsconst SFEDetection *
Person API Changes
sfePersonAttributes(),sfePersonPose(),sfePersonTemplateExtract(): Now acceptconst SFEDetection *instead ofSFEBbox
Iris API Changes
sfeIrisTemplateExtract(): Now acceptsconst SFEDetection *
Tattoo API Changes
sfeTattooTemplateExtract(): Now acceptsconst SFEDetection *sfeTattooTemplateVersion(): Now returnsSFETattooTemplateVersionstruct
Other Breaking Changes
SFEEntityIdentificationCandidatestruct now includesindexfield
Added
- Unified detection API with
sfeDetect()supporting all modalities - New
multi_detect_bbdetection solver for Face, Person, Palm and QR detection - Unified tracker API with
sfeDetectionTracker*()functions SFEDetectionstruct withSFEModalitydiscriminator for type-safe detection resultsSFEImageInfostruct for image metadataSFEDetectionInputSizestruct for detection input size calculationSFEPalmLandmarksstruct andsfePalmLandmarks()functionSFEFaceLivenessstruct for liveness resultssfeLicenseType()function to query current license type
Changed
- Improved error messages with more detailed explanations
- Solvers are now validated for compatibility on load
- New face extraction models: balanced, fast, accurate (replacing legacy models)
- Updated
person_detect_fisheyesolver
Removed
- Modality-specific detection structs:
SFEFaceDetect,SFEIrisDetect,SFEPalmDetect,SFEObjectDetect,SFETattooDetection,SFEPersonDetectOriented - Modality-specific detection functions:
sfeFaceDetect(),sfeIrisDetect(),sfePalmDetect(),sfeObjectDetect(),sfeTattooDetect() - Modality-specific tracker functions:
sfeFaceTracker*(),sfeIrisTracker*(),sfePalmTracker*(),sfeObjectTracker*() - Deprecated type aliases:
SFEFaceEntity,SFEIrisEntity,SFEPalmEntity,SFEPersonEntity,SFEObjectEntity,SFETattooEntity(useSFEEntity) - Deprecated type aliases:
SFEIdentificationResult,SFE*TemplateIdentificationCandidate(useSFETemplateIdentificationCandidate) - Deprecated type aliases:
SFE*EntityIdentificationCandidate(useSFEEntityIdentificationCandidate) SFEPalmQualityAttributesandsfePalmQualityAttributes()(useSFEPalmAttributesandsfePalmAttributes())- Legacy face extraction models
[3.4.0] - 2026-01-19
Added
- Added support for fast evaluation of demographic attributes (BSDK-412)
[3.3.1] - 2026-01-13
Added
- Added
sfeLicenseTypefunction to get the license type (BSD-302)
Changed
- Python module now searches for native libraries also in system directories and LD_LIBRARY_PATH (BSDK-303)
Fixed
- Fixed an issue where Python examples from the Conan package could not be run without a prior pip installation (BSDK-303)
- Tattoo detection bounding box is clamped to the 0,1 range (BSDK-385)
- Empty tattoo detection bounding box is not propagated (BSDK-385)
[3.3.0] - 2025-12-10
Added
- Added demographic attributes (BSDK-229, BSDK-384)
Fixed
- Missing tattoo solvers are added into conan package (BSDK-383)
[3.2.4] - 2025-12-03
Changed
- Implementation of tattoo extraction uses real solver (BSDK-282)
[3.2.3] - 2025-11-28
Changed
- Implementation of tattoo detection uses real solver (BSDK-284)
[3.2.2] - 2025-11-05
Fixed
- Minor documentation fixes.
[3.2.1] - 2025-10-29
Changed
- All android libraries now use 16 kB page sizes, as mandated by Google for architectures
x86_64andarm64-v8a(BSDK-279)
[3.2.0] - 2025-10-14
Breaking Change
- Fixed Palm template extraction for
palm.extraction.resnet50; template now reports version v1.1.0 and invalidates older templates. [BSDK-291]
[3.1.5] - 2025-10-10
Added
- Added new
face_detect_fastmodel [BSDK-26]
[3.1.4] - 2025-10-06
Added
- Publishing aarch64-unknown-linux-gnu and aarch64-apple-darwin Conan packages to Artifactory [BSDK-238]
Changed
- Updated palm extraction model palm.extraction.resnet50 [BSDK-269]
- Improved performance on Intel CPUs
- Updated onnxruntime_solver to version 0.10.25
Fixed
- Revised outdated documentation and fixed run issues in code examples. [BSDK-251]
[3.1.3] - 2025-09-29
Fixed
- Added missing tattoo extraction methods into UniFFI API [BSDK-245]
[3.1.2] - 2024-09-25
Changed
- Updated
face_liveness_passive_nearby_fast.tflite.solverwith better accuracy on NXP NPUs [BSDK-234] - tflite_solver updated to v0.10.11 [BSDK-234]
[3.1.1] - 2025-09-18
Added
- Added package for aarch64-unknown-linux-gnu [BSDK-238]
- Added package for aarch64-apple-darwin [BSDK-237]
- Added
tattoomodule to Kotlin
Changed
- Improved accuracy of
face_liveness_passive_nearby_fastpreprocessing [BSDK-268] - Updated palm extraction model to palm.extraction.resnet50 (by upgrade onnxruntime_solver to version 0.10.24) [BSDK-262]
Fixed
- Missing sfeImageFree in example_face_identify.cpp
[3.1.0] - 2025-09-12
Added
- Added detection API for new
tattoomodality [BSDK-244] - Added extraction API for new
tattoomodality [BSDK-245]
Changed
- Updated
face_liveness_passive_nearby_fast[BSDK-233] - Updated Person fisheye detection model
- Updated ilicense to v3.4.3 [BSDK-259]
- Updated onnxruntime_solver to version 0.10.22 [BSDK-245]
[3.0.2] - 2025-08-21
Breaking Change
- Removed deprecated
palm::metrixfunctionality
Added
- New
core::OrientedBondingBoxtype for oriented detectors (BSDK-213) - Added
person::detect_oriented(BSDK-213)
[3.0.1] - 2025-08-18
Added
- Added palm_liveness_fast model for Rockchip RKNN2 (BSDK-121)
Changed
- Updated Rockchip RKNN2 solver version to 0.10.7 (BSDK-121)
Fixed
- YoloX square padding preventing unnecesary upscales and errors with fixed shape solvers
[3.0.0] - 2025-08-12
Breaking Change
- The
AttributesResult.qualityis now in range <0,1> instead of <0-100>.
Changed
- Updated palm attributes model (BSDK-204)
- Updated palm liveness accurate model (BSDK-197)
- Updated palm liveness fast model (BSDK-198)
- Updated onnxruntime_solver to version 0.10.18
- Updated ILicense to version 3.4.2
[2.0.2] - 2025-07-18
Changed
- Updated Rockchip RKNN2 solver version to 0.10.6 (BFO-51)
- Updated rknn_api_v2 to version 2.3.2
- Fixed palm_template_extract_accurate model output name
- palm_template_extract_accurate and palm_detect_accurate model converted with latest rknn_toolkit_2.3.2 to be compatible with rknn librknnrt 2.3.2
[2.0.1] - 2025-07-08
Changed
- The palm accurate detector performance for rockchip RKNNv2 is improved
[2.0.0] - 2025-07-04
Breaking Change
- To ensure consistent terminology across SDKs
- in C
- Renamed enum
SFEHandSidetoSFEHandPosition - Renamed
hand_sideinSFEPalmDetecttohand_position
- Renamed enum
- other languages
- Renamed enum
HandSidetoHandPosition - Renamed
hand_sidein palmDetectiontohand_position
- Renamed enum
- in C
Deprecated
sfePalmQualityAttributesis deprecated and will be removed soon. Please usesfePalmAttributesinstead.
Fixed
- Added missing palm solvers in Rockchip RKNN2 packages
Added
- Added new function
sfePalmAttributesthat providesSFEPalmAttributeswith (BSDK-123):hand_orientationhand_positionquality
[1.15.7] - 2025-06-25
Added
- Updated Rockchip RKNN2 solver version to 0.10.4 (BFO-80):
- Added Rockchip RKNN2 palm accurate detector support
- Added Rockchip RKNN2 palm accurate extractor support
- Added logging support to ONNX solvers with configurable log level and log file output
- Added parameter
log_level(empty for no log, or set to verbose, info, warning, error, fatal) - Added parameter
log_file(empty for stdout, or specify file path) - Added parameter
profile_prefixto dump JSON stats from inference - Added
session_configparameter to support advanced session settings in ONNX solvers
Changed
- Updated onnxruntime_solver to v0.10.14
- Updated fast palm detector model and postprocessing (BSDK-146)
Fixed
- Inference performance on Intel CPUs due to subnormal numbers (BSDK-182)
- Fixed NNAPI FP16 flag logic in ONNX solvers by correcting inverted condition
[1.15.6] - 2025-06-18
Fixed
- Upload conan packages into artifactory (BSDK-174)
[1.15.5] - 2025-06-17
Added
- Upload kotlin binding into maven releases repository (BSDK-174)
- Upload conan packages into artifactory (BSDK-174)
Fixed
- Python binding performance regression
[1.15.4] - 2025-06-13
sfePalmQualityAttributes- Implementation of palm quality attributes (BSDK-157)
[1.15.3] - 2025-06-06
Added
sfePalmQualityAttributes- API for Palm quality attributes (BSDK-168)- Optional JVM bindings with Kotlin examples (BSDK-149)
Fixed
- Missing generated Python bindings
[1.15.2] - 2025-06-04
Fixed
- Solvers are now loaded on Android using
loadLibrary(BSDK-152)
[1.15.1] - 2025-06-03
Added
- Licensing based on Android ID has been added for devices running Android 10 and older (i.e., below Android 11) (BSDK-152)
Fixed
- Removed unnecessary image resize before sfePalmDetect in example_palm_* and benchmark_palm applications
[1.15.0] - 2025-05-15
Added
- New palm modality detection, extraction and liveness models:
palm_detect_accurate- High-accuracy palm detection modelpalm_detect_fast- Optimized for real-time palm detectionpalm_template_extract_accurate- High-accuracy palm template extractionpalm_liveness_accurate- Enhanced palm liveness verification
Changed
- Palm template format improvements:
- Reduced template size to 522B for improved efficiency
- Enhanced palm detection with 8 keypoints (previously 4)
- Added
SFEHandOrientationandSFEHandSideenums for better hand position tracking
- Updated
sfePalmTemplateExtractAPI to require solver parameter for improved flexibility
Fixed
- Corrected const qualifier in tracking API parameters for better type safety
- Fixed parameter passing consistency in
sfePalmLivenessPassivefunction [BSDK-133]
Breaking Changes
- Removed backward compatibility with palm templates from versions 1.13.0 through 1.14.6
- This change is required due to the implementation of a new palm template algorithm
- Users must re-extract palm templates with version 1.15.0 or later
[1.14.6] - 2025-04-25
Added
- rknn2 face_detect_accurate_mask solvers for w480h640, w720h960 and w960h1280 images (rknn2 0.10.3)
Changed
- Updated face passive liveness threshold in example_face_liveness according to documentation
- Updated Rockchip RKNN2 solver version to 0.10.3
[1.14.5] - 2025-04-11
Fixed
- A bug in reported version string
[1.14.4] - 2025-04-10
Added
- Added support for Palm liveness with examples and benchmark
Changed
- Reported version string in FFI/UniFFI APIs will now match the package version
[1.14.3] - 2025-03-28
Fixed
- Fixed C API definition of SFEFaceTracked, SFEIrisTracked, SFEObjectTracked, SFEPalmTracked
- Removed unused "entity" field, use "uuid" field instead
- Added "state" field and enum to indicate the tracking state
- Updated tracking to be more readable with terminal output
[1.14.2] - 2025-03-13
Changed
- TFLite library and solvers skipped in Kotlin packages build for Android
- TFLite solver updated to v0.10.9 [BFO-21]
- Added face detectors with portrait input sizes 720x1280 and 1080x1920
[1.14.1] - 2025-03-05
Added
- Added Tracking API in C API and bindings [SE-333]
- Added Android ID based licensing [SE-255]
Changed
- Entity, SFETemplateIdentificationCandidate, SFEEntityIdentificationCandidate are now a Core types. Modality specific types are deprecated and will be removed in next major release. [SE-333]
- onnxruntime_solver updated to v0.10.6 [SE-255]
- tflite_solver updated to v0.10.7 [SE-255]
Fixed
- License with MAC address range HWID (IM0*-IM0*) is now checked against multiple MAC addresses if available.
[1.13.5] - 2025-02-18
Changed
- Updated Kotlin UniFFI bindings for better Java compatibility
- API types change: ULong => Long, UInt => Int, UByte => Byte
- Cleaned up Kotlin and Java imports
- Android in ONNXRT configuration uses Float16 solvers to reduce package size [SE-510]
- Android packages are built with opt-level = "s" [SE-510]
[1.13.4] - 2025-01-21
Added
- Add support for Android armeabi-v7a
- Add suppurt for Android arm64-v8a GPU
Changed
- Updated onnxruntime solver to v0.10.4 (fixed qr/palm keypoints calculation [SE-507])
- Update Liveness thresholds documentation
[1.13.3] - 2024-12-04
Added
- Add suport for palm modality in Kotlin for Android [SE-447]
Fixed
- Ambarella face detector post processing had wrong relative coordinates calculation
- Fixed licensing impact on identification performance
[1.13.2] - 2024-11-28
Changed
- TFLite solver updated to version 0.10.6 [SE-470]
- New passive liveness NEARBY FAST model
[1.13.1] - 2024-11-19
Added
- Added support for dynamic input shape palm detection [SE-479]
- new palm_qrcode_detect.onnxrt.solver with dynamic input shape support
- old solver renamed to palm_qrcode_detect_w640h480.onnxrt.solver
Changed
- TFLite solver updated to version 0.10.5 [SE-431]
- Improved face_detector_accurate_mask* model performance
- Default delegate is now correctly set to
vxfor NXP build,gpufor Android build
Fixed
- Jpeg encoding has wrong color order, BGR instead of RGB
Removed
[1.13.0] - 2024-11-07
Added
- Introduced new Palm modality:
- sfePalmDetect
- sfePalmTemplateExtract
- sfePalmTemplateMatch
- sfePalmTemplateVersion
- sfePalmTemplateIdentify
- sfePalmEntityIdentify
- Added assets, example and benchmark for palm modality
Changed
Fixed
Removed
[1.12.1] - 2024-11-06
Added
- Added C++ examples for face entity identification, liveness and iris identification
Changed
- Separated examples from benchmarks
Fixed
- sfeHwidGet now returns required buffer length when called with null buffer pointer.
Removed
[1.12.0] - 2024-10-25
Added
- Added new passive liveness NEARBY FAST model with significantly improved accuracy
- ONNX Runtime solver
- Updated documentation for new liveness solvers
Changed
- TFLite solver updated to 0.10.4
- New passive liveness DISTANT FAST model with significantly improved accuracy.
- TFLite VX delegate caching is enabled by default, and there is preset cache file path specific for each model
Fixed
- Iris matching score after normalization was wrongly mapped to [0.0, 1.0] range
- Fixed QualityAttributes to return zero values when an error occurs instead of returning a Result type
Removed
- Removed old passive liveness DISTANT and NEARBY model
[1.11.2] - 2024-10-04
Added
Changed
- TFLite solver update to 0.10.2 with default delegate
vxfor NXP build andgpufor Android build
Fixed
- Fixed sfeFaceSize mismatched output parameter type from size_t to float
Removed
[1.11.1] - 2024-08-05
Added
Changed
- Ambarella solver updated to v0.10.1 with a static EazyAI based implementation
- Ambarella vproc.bin location is now first searched for in current working directoryd Solver API version is now v0.10.x
Fixed
Removed
[1.11.0] - 2024-07-26
Added
- Integrated new passive liveness DISTANT FAST model with significantly improved accuracy.
- Ambarella solver SDK2.5.8 cv22 and SDK3.0.6 - cv2, cv22, cv28
Changed
- Supported Solver API version is now v0.10.x
- Update of solver version because of major fix in generic_solver [SE-399]
- Improved documentation design
Fixed
Removed
[1.10.3] - 2024-06-12
Added
- Added reference to bindings API on documentation
Changed
- Fixed missing tensorflow_lite.so in Android AAR package
Fixed
Removed
[1.10.2] - 2024-05-28
Added
- Added TFLite GPU solvers to Android Kotlin package
- Added Python connector for Linux and Windows
Changed
Fixed
Removed
[1.10.1] - 2024-05-24
Added
- Added support for new passive liveness DISTANT FAST on Rockchip RKNNv1 (rockchip solver v0.9.1)
Changed
Fixed
Removed
[1.10.0] - 2024-05-20
Added
- Integrated new passive liveness DISTANT FAST model with significantly improved accuracy.
- ONNX Runtime solver only
- Integrated new face detector ACCURATE model
- ONNX Runtime solver only
- Add support for NN model acceleration on Android GPU via TensorFlow Lite GPU delegate
Changed
- Supported Solver API version is now v0.9.x
- Deprecating passive liveness DISTANT model. It will be removed in next major release.
Fixed
Removed
[1.9.1] - 2024-03-05
Added
- sfePersonTemplateType()
Changed
Fixed
Removed
[1.9.0] - 2024-02-29
Added
- Person template extract modality
- Person template extraction
- Person template matching
- Person matching
- Uniffi API for Swift (iOS and macOS) and Kotlin (Android)
- Face solvers for Rockchip with RKNNv2
Changed
Fixed
Removed
[1.8.3] - 2024-02-23
Added
Changed
Fixed
- More robust solver dll loading on Windows
Removed
[1.8.0] - 2024-01-31
Added
- Added a new modality - Iris:
- sfeIrisDetect
- sfeIrisTemplateExtract
- sfeIrisTemplateMatch
- sfeIrisTemplateQuality
- sfeIrisTemplateVersion
- sfeIrisTemplateIdentify
- sfeIrisEntityIdentify
- Added support for Ambarella cv28 architecture
Changed
- Deprecating SFEBBox in favor of SFEBoundingBox, field names will be changed in next major release
- Ambarella solvers unified for cv2, cv22, cv25 and cv28 - version 0.8.6
- same accuracy on each architecture
- New licensing for solvers based on modalities: face, face_liveness, iris, person, object
- old licenses won't work
Fixed
Removed
[1.7.2] - 2023-11-29
Added
Changed
Fixed
- Fixed padding in sfeLicenseSet
Removed
[1.7.1] - 2023-11-27
Added
Changed
Fixed
- Fix in identification API
Removed
[1.7.0] - 2023-11-17
Added
- Added licensing API to the sfe_core library:
- sfeHwidGet
- sfeLicenseValidate
- sfeLicenseSet
Changed
Fixed
- Fixed error formatting on Windows - charset changed to Ascii, color disabled [SE-259]
- Fixed path to user specific license file location (~/AppData/Local/Innovatrics) on Windows
Removed
[1.6.0] - 2023-11-07
Added
- sfeFaceEntityIdentify function - Identify entities with multiple templates.
Changed
- SFEIdentificationResult - Is now deprecated and will be removed in next major release. Use SFEFaceTemplateIdentificationCandidate instead.
Fixed
Removed
[1.5.3] - 2023-10-27
Added
Changed
Fixed
- Sharpness calculation was fixed
- Affine transformation for rectangular images was fixed
Removed
[1.5.2] - 2023-09-14
Added
Changed
- Solver for Ambarella SDK v2.5.8 updated to later version (v0.8.6) with improved performance.
Fixed
Removed
[1.5.1] - 2023-09-07
Added
- Ambarella SDK v2.5.8 is now supported:
- Added new package containing special solvers that enable Ambarella SDK v2.5.8 support.
Changed
Fixed
Removed
[1.5.0] - 2023-08-25
Added
- Added new function sfeFaceCrop that returns face crop with its bounding box according given landmarks and face size extension.
Changed
Fixed
Removed
[1.4.2] - 2023-08-14
Added
Changed
- Integrated new passive liveness DISTANT model with significantly imporved accuracy
- ONNX Runtime solver updated to v0.8.3
- face_liveness_passive_distant.onnxrt.solver
- Rockchip solver updated to v0.8.0
- face_liveness_passive_distant_quant.rockchip.solver
- Ambarella solver updated to v0.8.3
- updated face_liveness_passive_distant_acc.ambarella.solver
- New face_liveness_passive_distant_perf_dra3.ambarella.solver with better accuracy and comparable performance replaces face_liveness_passive_distant_perf.ambarella.solver
- ONNX Runtime solver updated to v0.8.3
Fixed
Removed
[1.4.1] - 2023-07-10
Added
Changed
- Ambarella solvers updated to v0.8.1
- New BALANCED template extraction model with improved accuracy - face_template_extract_balanced_perf_dra3.ambarella.solver
- Android JNI wrapper now uses android::util::Base64 class instead of java::util::Base64 class to encode license data.
Fixed
- Fixed detection solvers in Android packages
- Fixed alignment issue on 32bit systems in sfe_face library function sfeFaceHeadPose
- Fixed SFESolverParameter ownership of name and value
Removed
[1.4.0] - 2023-06-23
Added
- Added new function sfeSolverCreateWithParameters which accepts collection of solver specific parameters (SFESolverParameter) on input. Supported solver parameters are documented in Solver documentation.
- Added support for TensorflowLite solver enabling NN acceleration on NXP iMX8M Plus chip with VX delegate support
Changed
- Ambarella solvers updated to v0.8.0
- improved accuracy of BALANCED template extraction - face_template_extract_balanced_perf.ambarella.solver
- function sfeSolverCreate is deprecated and will be replaced by sfeSolverCreateWithParameters in next major release version
- ONNX Runtime execution provider can be configured using solver parameter "runtime_provider", so on Linux x86, Windows x86 and Jetson platforms the same ONNX Runtime solver binary can be used for CPU, CUDA and TensorRT.
Fixed
Removed
- Removed onnxrt_cuda and onnxrt_tensorrt solvers.
[1.3.4] - 2023-06-06
Added
Changed
- Rockchip solver to v0.7.5 with faster input preprocessing (no channel swap, no CHW/HWC swap)
Fixed
Removed
[1.3.3] - 2023-06-02
Added
- Added support for passive liveness on Rockchip
- New documentation in HTML and PDF added to the package
- License Manager app added to the package
Changed
- Faster image resize
- Performance improvements (fast image resize, parallel warp) in all solvers
Fixed
Removed
[1.3.2] - 2023-05-18
Added
- New function sfeVersion() added into the sfe_core library
Fixed
- Fixed swapped roll and pitch calculation
[1.3.1] - 2023-05-09
Added
- Added support for passive liveness on Ambarella
- Added Android Java connector with sample application
Fixed
- Fixed missing liveness solvers in Android package
[1.3.0] - 2023-04-23
Added
- DISTANT and NEARBY passive liveness integrated into sfe_face library
- Face areas computation support (relative area, relative area in image)
- Added face quality attributes (sharpness, brightness, contrast, unique_intensity_levels) to sfe_face library
- Added support for calculating headpose angles
[1.2.4] - 2023-04-18
Added
- Added support for Ambarella CV22 and CV25 (armv8 CPU) with CVFlow support. Ambarella SDK 3.0.6 and newer is required.
[1.2.3] - 2023-04-14
Added
- Calculate detection input dimension based on face size
- Added support for ILICENSE and ILICENSE_DATA environment variables
[1.2.2] - 2023-04-03
Fixed
- Debugging symbols are now stripped
[1.2.1] - 2023-03-21
Added
- Face size api request to sfe_face lib
[1.2.0] - 2023-03-09
Added
- Introduced support for Android (armv7, armv8)
- Added pose estimation to sfe_person library
Changed
- The library sfe_person_attribute renamed to sfe_person
- sfe_face_detect, sfe_face_landmarks and sfe_face_template libraries merged into single sfe_face library
- The library sfe_object_detect renamed to sfe_object
[1.1.0] - 2023-02-20
Added
- Added license check to identification
- Added object detection for 80 object types including person, animals and vehicles
- Added 3 ONNX Runtime solvers for object detection
- object_detect_fast
- object_detect_balanced
- object_detect_accurate
Changed
- SFEBBox parameter added into sfeGetPersonAttributes function
[1.0.3] - 2023-02-13
Added
- Support for older NVIDIA Jetson Jetpacks:
- Jetpack 4.4: ONNX Runtime version 1.7.2
- Jetpack 4.6: ONNX Runtime version 1.12.2
Fixed
- Undefined symbols in ONNX Runtime solvers related to licensing were fixed
[1.0.2] - 2023-01-30
Added
- Added Windows x86_64, Linux x86_64 and Jetson ARM64 support
- ONNX Runtime solvers (CPU, CUDA and TensorRT)
- Added environment variables for threading optimization
- ONNXRUNTIME_SOLVER_INTER_THREADS
- ONNXRUNTIME_SOLVER_INTRA_THREADS
- Added person attributes detection
- supported in ONNX Runtime solvers only
Changed
- SFEBBox structure moved to libsfe_core
[1.0.1] - 2023-01-23
Added
- Added face template identification
- Added SFEFaceLandmarkType enumeration
[1.0.0] - 2023-01-09
- First version for Rockchip RV1109 armv7 CPU with RKNN support