Facial recognition technology is demonstrated here that can enroll and identify individuals while also verifying face liveness in real-time.
The demonstration showcases the capability to enroll individuals from photo galleries on iPhone and identify them in real-time using a camera.
The face recognition project relies on kby-ai's SDK, which requires a license for each bundle ID.
-
The code below shows how to use the license: https://github.com/kby-ai/FaceRecognition-iOS/blob/40b54da44a0c72c6bef275a060fc6b1ff8b3360c/FaceRecognition/ViewController.swift#L37-L44
-
To request a license, please contact us:
Email: contact@kby-ai.com
Telegram: @kbyai
WhatsApp: +19092802609
Skype: live:.cid.66e2522354b1049b
-
Copy the SDK (facesdk.framework folder) to the root folder of your project.
-
Add SDK framework to the project in xcode
Project Navigator -> General -> Frameworks, Libraries, and Embedded Content
- Add the bridging header to your project settings
Project Navigator -> Build Settings -> Swift Compiler - General
- Step One
To begin, you need to activate the SDK using the license that you have received.
FaceSDK.setActivation("...")
If activation is successful, the return value will be SDK_SUCCESS. Otherwise, an error value will be returned.
- Step Two
After activation, call the SDK's initialization function.
FaceSDK.initSDK()
If initialization is successful, the return value will be SDK_SUCCESS. Otherwise, an error value will be returned.
The FaceSDK offers a single function for detecting face and liveness detection, which can be used as follows:
let faceBoxes = FaceSDK.faceDetection(image)
This function takes a single parameter, which is a UIImage object. The return value of the function is a list of FaceBox objects. Each FaceBox object contains the detected face rectangle, liveness score, and facial angles such as yaw, roll, and pitch.
The FaceSDK provides a function that can generate a template from a UIImage. This template can then be used to verify the identity of the individual captured in the image.
let templates = FaceSDK.templateExtraction(capturedImage, faceBox: faceBox)
The SDK's template extraction function takes two parameters: a UIImage object and an object of FaceBox.
The function returns a Data, which contains the template that can be used for person verification.
The "similarityCalculation" function takes a byte array of two templates as a parameter.
let similarity = FaceSDK.similarityCalculation(templates, templates2: personTemplates)
It returns the similarity value between the two templates, which can be used to determine the degree of similarity between the two individuals.