2024-07-11
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
InspireFaceSDK is made byinsightfaceA face recognition software development kit (SDK) developed by . It provides a series of functions to meet the face recognition needs in various application scenarios, including but not limited to gates, face access control, face verification, etc.
The SDK includes a variety of commonly used face recognition algorithms, covering face detection, face attribute analysis, face feature extraction, and face comparison. These algorithms are carefully designed to have industry-leading face recognition capabilities and algorithm accuracy. In order to meet different deployment requirements, InspireFaceSDK provides deployment options for four different platforms.
These options cover various inference scenarios, including gate chips, end devices (such as smartphones, tablets), CPUs (central processing units) and servers (CUDA), NPUs (neural processing units), etc. Developers can choose a deployment solution that suits their applications based on actual conditions.
InspireFaceSDK currently supports the following features, and more features are under development:
Index | Function | Adaptation | Note |
---|---|---|---|
1 | Face Detection | support | Supports input of images of various scales |
2 | Dense keypoint detection | support | |
3 | Face Recognition | support | High-precision model based on arcface |
4 | Face Tracking | support | With multiple tracking modes |
5 | Mask detection | support | |
6 | Silent face liveness detection | support | MiniVision |
7 | quality analysis | support | |
8 | Head pose estimation | support | |
9 | Attribute analysis | support | Age, race, gender, etc. |
10 | Expression and movement analysis | In development | Blink, shake your head, nod |
11 | Face infrared liveness detection | In development |
We have completed software adaptation and testing across various operating systems and CPU architectures. This includes compatibility verification for platforms such as Linux, macOS, iOS, and Android, as well as testing for support for specific hardware such as some Rockchip devices, to ensure stable operation in different environments.
No. | Operating System | CPU Architecture | Special Device Support | Adapted | Passed Tests |
---|---|---|---|---|---|
1 | Linux | ARMv7 | - | Already adapted | Through offline testing |
2 | ARMv8 | - | Already adapted | Through offline testing | |
3 | x86/x86_64 | - | Already adapted | Pass the online test | |
4 | ARMv7 | RV1109RV1126 | Already adapted | Through offline testing | |
5 | x86/x86_64 | CUDA | Already adapted | Through offline testing | |
6 | macOS | Intel x86 | - | Already adapted | Through offline testing |
7 | Apple Silicon | - | Already adapted | Through offline testing | |
8 | iOS | ARM | - | Already adapted | Through offline testing |
9 | Android | ARMv7 | - | Already adapted | |
10 | ARMv8 | - | Already adapted |
If you plan to use the SDK locally or on a server,Please make sure you have installed OpenCV on your host device., in order to successfully link during compilation. For cross-compiling targets, such as Android or ARM embedded boards, you can use3rdparty/ inspirreface -precompile/ OpenCV /Provides precompiled OpenCV libraries, so you canSkip this step。
3rdpartyThe directory already contains the MNN library and specifies a specific version as the stable version. If you need to enable or disable other configuration options during compilation, you can refer to the CMake options provided by MNN. If you need to use your own precompiled version, feel free to replace it if not neededPlease skip this step。
You can pull the stable version or development version of the project code to your local computer:
# Pull the stable version
git clone https://github.com/deepinsight/insightface
cd insightface/cpp-package/inspireface/
# or, Pull the develop version
git clone https://github.com/HyperInspire/InspireFace