Skip to main content

Enrollment SDK

The Innovatrics Enrollment SDK processes images of face, iris, and fingerprint (print) modalities and builds an Applicant — an enrolled person's biometric representation — suitable for further processing. It covers image processing, template extraction, 1:1 verification, and 1:N identification. The core is a C++ library with Java and C# connectors.

Functionality runs either in-process or on a provided server process (enrollment_server) for image, print, face, and iris operations.

This page reflects the Linux x86_64 package, v28.2.0.

Getting the SDK​

Distributed through the Innovatrics Customer Portal and available on request via sales@innovatrics.com.

Runtime requirements​

  • Linux — glibc 2.17 or higher (CentOS 7 and above); a CPU with the AVX2 instruction set; x86_64; libusb installed.
  • Windows — Windows Vista SP2 / Windows Server 2008 SP2 or higher; AVX2; x86_64 or x86. On x86 (32-bit), the iris, face, and print embedding functionalities are not supported.
  • Android — 5.0 or higher (API level 21).

Package and installation (Linux)​

Installation is isolated — all required shared libraries ship with the SDK and neither affect nor are affected by other SDKs. Root privileges are required.

  • bin/ — enrollment_server, License Manager (license_manager_cli, license_manager_gui), and performance tools.
  • include/ — C++ headers (enrollment/…).
  • lib/ — shared libraries.
  • binding/ — Java and C# connectors.
  • sample/ — C++, Java, and C# samples (run.sh).
  • doc/ — the API reference (see API Reference).

Only one variant of the SDK can be installed at a time; the package manager enforces this, so uninstall the previous variant before installing another. Large model files (*.solver, *.nnkitsolver) can be removed when unused to reduce the installation size.

Licensing​

A valid license file named iengine.lic is required. Place it in one of the following (searched in this order):

  • Linux — working directory, ~/.innovatrics/, or /etc/innovatrics/
  • Windows — working directory, %LOCALAPPDATA%/Innovatrics/, or C:/ProgramData/Innovatrics/

Alternatively, pass the license content to Initialize(). Obtain the hardware ID for license generation with bin/license_manager_cli -I (or the HardwareID() function), then generate the license for that HWID on Customer Portal and copy it to one of the paths above.

Dongle licensing: the dongle must be connected before the application starts (or before Initialize() is called) and remain connected for the whole runtime.

Initialization​

By default the SDK initializes automatically when the shared library loads, provided the iengine.lic license and the solver models (at iface/models, next to the library) are present. To take manual control — for example to set OpenCV / ONNX Runtime thread counts or a custom models path — suppress auto-initialization by setting INNO_ENROLLMENT_SDK_MANUAL_INITIALIZATION=1 before the application starts, then call Initialize(config) once. The helpers DefaultModelsDirectory() and FindLicenseFile() populate the default paths.

Samples​

Runnable C++, Java, and C# samples ship in sample/ (run.sh).

Support​

Contact sdk_support@innovatrics.com for issues or licensing details.