Trueface SDK Reference - Stable

Welcome to the Trueface SDK. The SDK allows you to integrate Trueface’s AI models directly into your application while ensuring maximum performance and flexibility. Start by downloading the correct version of the SDK for your target platform and desired language. Next, refer to the General section for guidance on how to initialize the SDK.

Downloads

Stable release version 0.15.7233

Choosing Your Release Type

Alpha contains the absolute latest features (updated daily), but may also contain bugs. Beta contains fewer bugs while still having relatively new features. Stable will contain the fewest bugs but will take the longest to get new features. You will generally want to choose the Beta or Stable releases.

Note, if downloading the SDK in an automated manner (ex. building docker images) and you always require the latest SDK version, then replace the postfix in the download link (SDK version) with _latest.zip instead. So for example, https://reference.trueface.ai/cpp/staging/latest/uploads/truefaceSDK_v0.10.5483.zip would become https://reference.trueface.ai/cpp/staging/latest/uploads/truefaceSDK_latest.zip.

If you require a previous version of the documentation or SDK downloads, refer to the Previous Stable Releases tab on the left.

x86-64 C++

Target platform

SHA256

C++ x86-64 CPU Linux

e9ff280e43...

C++ x86-64 GPU CUDA-10.1 Linux (Ubuntu)

9beba4b1e7...

C++ x86-64 CPU macOS

3430729ed2...

C++ x86-64 CPU Windows (Release, MT)

13a16d2ebf...

x86-64 Python bindings

Python bindings Documentation
Python bindings documentation can be found here

Target platform

SHA256

Python 3.6 64Bit CPU Linux

3ca183ca3b...

Python 3.6 64Bit GPU CUDA-10.1 Linux (Ubuntu)

937cf9a240...

Python 3.7 64Bit CPU Linux

f8bf8998e2...

Python 3.7 64Bit CPU macOS

531624c8fc...

Python 3.7 64Bit GPU CUDA-10.1 Linux (Ubuntu)

b433d9d7a5...

Python 3.8 64Bit CPU Linux

ec5e129a0a...

Python 3.8 64Bit CPU macOS

c26f004e04...

Python 3.8 64Bit GPU CUDA-10.1 Linux (Ubuntu)

d36d57c413...

ARM C++

Target platform

SHA256

Aarch64 CPU Linux

b27e3e5e07...

Arm32 CPU Linux

93d2b3af9b...

For embedded devices with limited disk space, use the following libraries which have the full model disabled to reduce binary size.

Target platform

SHA256

Aarch64 CPU lite Linux

1281de1475...

Arm32 CPU lite Linux

7ef2dce8e7...

ARM Python Bindings

Python bindings Documentation
Python bindings documentation can be found here

Target platform

SHA256

Python 3.6 64Bit CPU Linux Aarch64

0182bab6a3...

Python 3.6 32Bit CPU Linux Arm32

d0720e52d4...

Python 3.7 64Bit CPU Linux Aarch64

20e54f8b54...

Python 3.7 32Bit CPU Linux Arm32

555bc1bf30...

Mobile

Target platform

SHA256

Android

N/A

GPU SDK Dependencies

While the CPU SDK is completely dependency free, the GPU SDK does have a few dependencies which must be installed. First, you must have CUDA 10.1 (runtime) installed on your Ubuntu device. Alternatively, you can use this docker image.

The other required dependencies are:

  • libomp.so

  • libopenblas.so.0

  • libcudnn.so.7

These can be installed by running the following commands:

apt-get install -y libomp-dev libopenblas-dev software-properties-common wget
OS=ubuntu1804
wget https://developer.download.nvidia.com/compute/cuda/repos/${OS}/x86_64/cuda-${OS}.pin
mv cuda-${OS}.pin /etc/apt/preferences.d/cuda-repository-pin-600
apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/${OS}/x86_64/7fa2af80.pub
add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/${OS}/x86_64/ /"
apt-get update
apt-get install -y libcudnn7

Windows SDK

Our team does the majority of development and testing in a Linux environment. The Windows SDK may therefore contain more bugs than the other platform releases and may be lacking in a few features. The current known issues and limitations are as follows:

  • PostgreSQL database management system is currently not supported.

  • Any file including winerror.h must have #undef NO_ERROR as the NO_ERROR defined in winerror.h conflicts with Trueface::ErrorCodes::NO_ERROR.

As of this time, we are only supporting a release configured version of the library (and not a debug version). Additionally, the library has been built with /MT so be sure to set the flag appropriately.

Sample Apps

Sample Apps which demonstrate full working applications.

C++ (Stable) - Contents: