Faceplugin-ltd/Open-Source-Face-Recognition-SDK
Face Recognition, Face Liveness Detection, Face Anti-Spoofing, Face Detection, Face Landmarks, Face Compare, Face Matching, Face Pose, Face Expression, Face Attributes, Face Templates Extraction, Face Landmarks
Open Source Face Recognition SDK – Quick Overview
What it is : A free, on‑premise Python SDK that lets you detect faces, extract landmarks, generate feature embeddings and compare two faces. It runs on Windows or Linux and works with CPUs (GPU optional). The library is built on deep‑learning models but ships only the inference code, so no data ever leaves the host machine.
Key capabilities
- Detect one or many faces in an image and return bounding boxes.
- Provide 5‑point (or more) facial landmarks.
- Produce a numeric embedding for each face (the “feature vector”).
- Compute a similarity score (0‑100) between two embeddings; a default 75 % threshold is suggested for “same‑person” decisions.
Typical workflow (Python)
from face_recognition_sdk import FaceRecognition
sdk = FaceRecognition() # initialise
info = sdk.GetImageInfo('photo.jpg', 10) # list of faces → bbox, landmarks, embedding
sim = sdk.get_similarity(info[0]['embedding'], other_embedding)
print(f'Similarity: {sim}%')
The SDK supports common image formats (JPG, PNG, BMP, TIFF) and can process multiple faces per image.
Installation
- Install Anaconda (recommended).
- Create a conda env with Python ≥ 3.9.
pip install -r requirements.txt.- Run
python run.pyto verify the install.
Why you might use it
- Privacy‑first: All computation stays on the device – ideal for security‑sensitive or regulated environments.
- Cost‑free: No licensing fees; you can embed it in commercial or internal tools.
- Cross‑platform: Works on both Windows and Linux, with optional GPU acceleration.
Typical use‑cases
- Access‑control or biometric login systems.
- Time‑and‑attendance tracking.
- Retail analytics, visitor management, or any app that needs on‑device face matching.
Limitations
- The repo only provides inference APIs; training new models is not covered.
- Accuracy and performance depend on the bundled deep‑learning model (details not disclosed in the README).
- No built‑in liveness detection – you’d need a separate solution for anti‑spoofing.
Where to go next
- The same company offers commercial SDKs with extra features such as liveness detection, ID‑document OCR, and multi‑platform mobile libraries (Android, iOS, Flutter, React‑Native, etc.).
- For more advanced needs, explore those paid offerings or integrate a separate anti‑spoofing module.
All information above is taken directly from the project's README.
Related
- Project
- Project
- Project
- Project
- Project