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.14.6699
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) then you will want to 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 |
---|---|
|
|
|
|
|
|
|
x86-64 Python bindings¶
Target platform |
SHA256 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ARM C++¶
Target platform |
SHA256 |
---|---|
|
|
|
For embedded devices with limited disk space, use the following libraries which have the full model disabled to reduce binary size.
Target platform |
SHA256 |
---|---|
|
|
|
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 theNO_ERROR
defined inwinerror.h
conflicts withTrueface::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.
- General
- License Validation
- Input Image
- Face Detection and Recognition
- 1 to N Identification
- Object Detection
- Spoof Detection
- Pose Estimation
- Liveness
- Mask Detection
- Eye glasses Detection
- Environment Variables
- Frequently Asked Questions
- How many threads does the SDK use for inference?
- How can I reduce the number of threads used by the SDK?
- How can I run inference with multiple instances of the SDK on a single CPU?
- Is the SDK threadsafe?
- What architecture should I use when I have multiple camera streams producing lots of data?
- What is the difference between the static library and the dynamic library?
- What hardware does the GPU library support?
- Why is my license key not working with the GPU library?
- Why does the first call to an inference function take much longer than the subsequent calls?
- How do I use the python bindings for the SDK?
- How do I choose a similarity threshold for face recognition?
- What is the difference between similarity score and match probability?
- There are many face detection and recognition functions. Which should I use?
- How do createDatabaseConnection and createLoadCollection work?
- Why are no faces being detected in my large images?
- How can I speed up face detection running on CPU?
- What does the frVectorCompression flag do? When should I use it?
- Changelog
- Previous Stable Releases