Skip to content

recognito-vision/iOS-FaceRecognition-FaceLivenessDetection

Repository files navigation

recognito.vision

Face Recognition, Liveness Detection, Pose Estimation iOS SDK Demo

Latest NIST FRVT Report

This repository contains a demonstration of Recognito's face recognition SDK for iOS. The SDK includes advanced features such as face recognition, liveness detection, and pose estimation. Recognito's face recognition algorithm has been ranked as the Top 1 in the NIST FRVT (Face Recognition Vendor Test).

Our Product List for ID verification.

home RECOGNITO Product Documentation

  

feature Features

  • Face Recognition: Identify and verify individuals by comparing their facial features.
  • Liveness Detection: Determine whether a face is live or spoofed to prevent fraud in authentication processes.
  • Pose Estimation: Estimate the pose of a detected face, including Yaw, Roll, Pitch

- Additional Features

  • NIST FRVT Top 1 Algorithm: Utilize the top-ranked face recognition algorithm from the NIST FRVT for accurate and reliable results.
  • On-premise: Operate entirely within your infrastructure, ensuring data privacy and security.
  • Real-time: Perform face recognition, liveness detection, and pose estimation with minimal latency.
  • Fully-offline: Function without the need for an internet connection, ensuring reliability and data privacy.

youtube Demo Video

Recognito Youtube Channel: youtube.com/@recognito-vision

face recognition, liveness detection ios demo snap 1 face recognition, liveness detection ios demo snap 2 face recognition, liveness detection ios demo snap 3 face recognition, liveness detection ios demo snap 4 face recognition, liveness detection ios demo snap 5 face recognition, liveness detection ios demo snap 6

face recognition, liveness detection iOS SDK API SDK Integration

To use the Recognito SDK in your iOS project, follow these steps:

1. Add facesdk.framework into the project

  • Copy and add the SDK framework to your iOS project. facesdkframework

    BridgingHeader

2. Application License (One-Time License)

  • For trial license, share your Bundle ID.

    BundleID
    www.recognito.vision     www.recognito.vision     www.recognito.vision     www.recognito.vision
  • Add your license to license.txt file:

    jwIUC3mm7P9uJDPxx/gRUttdS3bDg5n3QFnyySRB/E776MSPQAMubdyFTuzFb7BCdOx4EuoHmcsO
    rpeGfI+Z371p/7cInVsnxLZU7PcSJh45Dd7c6maTg0QPwNLDHqdyNzRLFwKXXOX/IVuQNh6Dsen1
    mwk6RGQZfReSUU6nLvWzC5sPgYhBVemExbbIa3UdDbBC+Bm4qNeXQ2i/08s9GFrhhbuvdYyI5TGl
    6aVFjSGoHQhm/ENI1916+ck7BiguXMA1KFRTlchSWKhyb9CllHOGTomkoBUD3ykLlMGkcuZE8wT6
    qpaHrtnmz1TgkP3tjK7L61BaEpWNib3uH29hWA==

  • Initialize SDK with license.

    if let filePath = Bundle.main.path(forResource: "license", ofType: "txt") {
    do {
    let license = try String(contentsOfFile: filePath, encoding: .utf8)
    ret = FaceSDK.setActivation(license)
    } catch {
    print("Error reading file: \(error)")
    }
    } else {
    print("File not found")
    }
    if(ret == SDK_SUCCESS.rawValue) {
    ret = FaceSDK.initSDK()
    }

    Initialization status codes:

    Code Status
    0 Activate SDK successfully
    -1 License Key Error
    -2 License AppID Error
    -3 License Expired
    -4 Activate Error
    -5 Init SDK Error

3. APIs of SDK

- Activate SDK
+(int)setActivation:(NSString*)license;

Parameters

  • license: A string representing the license key required for activation.
  • Return Value: An integer representing the SDK activation status code.

- Initiate SDK
+(int)initSDK;

Parameters

  • Return Value: An integer representing the initialization status code.

- Detect Face
+(NSMutableArray*)faceDetection:(UIImage*)image;

Parameters

  • image: The UIImage object representing the image in which faces will be detected.
  • Return Value: An NSMutableArray containing FaceBox about the detected faces.
@interface FaceBox : NSObject

@property (nonatomic) int x1;
@property (nonatomic) int y1;
@property (nonatomic) int x2;
@property (nonatomic) int y2;
@property (nonatomic) float liveness;
@property (nonatomic) float yaw;
@property (nonatomic) float roll;
@property (nonatomic) float pitch;
@end

- Extract face feature
+(NSData*)templateExtraction:(UIImage*)image faceBox:(FaceBox*)faceBox;

Parameters

  • image: The UIImage object representing the source image from which the face template will be extracted.
  • faceBox: The FaceBox object representing the bounding box around the detected face.
  • Return Value: An NSData object containing the extracted face template data.

- Calculate similarity between two face features
+(float)similarityCalculation:(NSData*)templates1 templates2:(NSData*)templates2;

Parameters

  • templates1: An NSData object representing the first face template.
  • templates2: An NSData object representing the second face template.
  • Return Value: A float value representing the similarity score between the two face templates.

contact Support

For any questions, issues, or feature requests, please contact our support team.

www.recognito.vision     www.recognito.vision     www.recognito.vision     www.recognito.vision