Installation

This guide will help you get started with the id3 Face SDK in just a few simple steps.

Step 1: Request a License

To use the SDK, you’ll need a valid license. Here’s how to get started:

  1. Create an account on our customer portal: https://customer.id3.eu

  2. Contact our sales team at contact@id3.eu to request a license

  3. You’ll receive a license key and download instructions

  4. See Licensing for details

Step 2: Download the SDK archive

  1. Download the SDK archive from the link provided by our sales team

  2. Extract the archive to your preferred location

The SDK is delivered as a compressed archive containing the following structure:

├───activation                      # License activation tools for Windows, Linux and Jetson Nano
│   ├───cli-tool
│   └───windows-tool
├───bin                             # Native libraries
│   ├───android
│   ├───apple
│   ├───linux
│   └───windows
├───dart                            # Dart wrapper
│   └───id3_face
├───docs                            # API reference and Developer Guide
│   ├───3rdparty
│   ├───developer-guide
│   └───javadoc
├───dotnet                          # .NET dynamic libraries
├───include                         # C header files
├───java                            # Java jar archives
├───python                          # Python package
├── CHANGELOG.md
├── LICENSE.md
└── README.md

Step 3: Download AI models

The SDK requires AI models for operation. Follow these steps to get started:

  1. Download the required models from: https://cloud.id3.eu/index.php/s/y63PysbS3w6NPm6

  2. Extract the models to a known location (e.g., ~/face_models/)

Note

Only download the models you need for your specific use case. See AI Models for details on available models and their purposes.

Step 4: Install the SDK

pip install id3face

Or select the suitable wheel file for your platform and Python version, and run

pip install id3face-x.y.z-cp311-cp311-win_amd64.whl

Then import it in your code:

import id3face
print(f"Using Face SDK version: {id3face.__version__}")

Add the dependency to your pubspec.yaml:

dependencies:
  id3_face:
    path: ../../sdk/dart/id3_face

Then import it in your Dart code:

import 'package:id3_face/id3_face.dart';

Include the namespace:

using id3.Face;

Add the Maven dependency to your pom.xml:

<dependency>
    <groupId>eu.id3</groupId>
    <artifactId>face</artifactId>
    <version>1.0.0</version> <!-- Use the latest version -->
</dependency>

Then import the package:

import eu.id3.face.*;

Include the header file in your project:

#include "id3Face.h"

// Link against the appropriate library for your platform
// - Windows: id3Face.lib
// - Linux: -lid3face

Step 5: Run the Samples

  • C/C++: Windows, Linux

  • .NET: C# examples

  • Mobile: Android (Kotlin/Java) and iOS (Swift)

  • Cross-platform: Flutter (Dart)

  • Python: Quick integration examples

# Clone the samples repository
git clone https://github.com/id3Technologies/face-sdk-samples.git
cd face-sdk-samples

Note

For detailed setup instructions for each platform, refer to the README in each sample directory.

Step 6: Add the SDK to your own project

The SDK relies on native libraries that must be copied to a bin subdirectory within your project’s target directory.

The following libraries are necessary:

Library

Description

id3Face.dll

The main library for face processing and operations.

To automate the process within Visual Studio, add a pre-build event to your project:

  • Right-click on your project in the Solution Explorer and select Properties.

  • Go to the Build Events tab.

  • In the Pre-build event command line box, enter the following command:

    mkdir $(TargetDir)bin
    mkdir $(TargetDir)devices
    
    xcopy /e /y $(SolutionDir)..\..\bin\*.dll $(TargetDir)\bin
    xcopy /e /y $(SolutionDir)..\..\devices\* $(TargetDir)\devices
    

This command copies all DLL files from the SDK’s native library directory to the bin subdirectory of your project’s target directory every time the project is built.

Ensure the path $(SolutionDir)..\..\ is correctly adjusted to point to the location where the SDK’s native libraries are stored.

Add one of the following native library:

  • /bin/linux/x64/libid3Face.so, or

  • /bin/linux/x64_gpu/libid3Face.so for CUDA support.

Include the AAR package to your project:

  • /bin/android/eu.id3.face.aar

Include the package in your project:

  1. Unzip the Framework:

    Unzip the /bin/apple/id3Face.xcframework.zip package to access the id3Face.xcframework directory.

  2. Add the Framework to Xcode:

    Open your Xcode project and drag the id3Face.xcframework directory into the “Frameworks, Libraries, and Embedded Content” section.

  3. Update Build Settings:

    Ensure that id3Face.xcframework is listed under “Link Binary with Libraries” in your target’s “Build Phases”. Set the “Framework Search Paths” in your target’s “Build Settings” to include the path to id3Face.xcframework.

  4. Configure Code Signing:

    Adjust the code signing settings in Xcode to allow the app to run with the included framework.

  5. Handle Runtime Dependencies:

    Ensure any additional runtime dependencies required by id3Face.xcframework are included.