Skip to content

MiniAiLive/FaceRecognition-Android

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Face Recognition with Face Liveness Detection Android SDK

MiniAiLive Logo

Welcome to the MiniAiLive!

"We provide system integrators with fast, flexible and extremely precise facial recognition with 3D passive face liveness detection (face anti-spoofing) that can be deployed across a number of scenarios, including security, access control, public safety, fintech, smart retail and home protection. Feel free to use our MiniAI Face Recognition Android SDK."

Note

SDK is fully on-premise, processing all happens on hosting server and no data leaves server.

Latest SDK Download Here

FaceRecognition APK


Face.Recognition.Android.mp4

Request license

Feel free to Contact US to get a trial License. We are 24/7 online on WhatsApp.

Face & IDSDK Online Demo, Resources

SDK License

Please replace the our license key with your license key on the MainActivity.kt.

        var ret = FaceSDK.setActivation(
            "dYSREvlnlNxuMwFlDCngsmkG5rFIck95ymNvkPDeTUXt3Cj7y0sFIoYIuv3rXaeCb6Imf7lbr7r09S" + 
                "sAPPPhL6oD1uCsdRqddQcMjzHThgjLBXjphSMnclb8SM8mzs/brmMZ+Ofu2p7nqKIy7zJASB3iRo2L5gy7e" + 
                "hNvKUy4bSyt7n7xCz8PrGWmBnphupYbQJLGU24RdVN1suybukqjZX5ctUUu2sDSd2CawEDH7ftLyoLuFrG1v" + 
                "YqExNq/FOhgBjzHgSmZ1tiZa+35rrU6kyzUG6O9Nl8A+Wr/lsV2QDjqn7iGgPmzimGL2pr7OLXJRUkOOWldW" + 
                "detUeqohaI9eA=="
        )

About SDK

1. Set up

  1. Copy the SDK (libfacesdk folder) to the root folder in your project.

  2. Add SDK to the project in settings.gradle.

include ':libfacesdk'
  1. Add dependency to your build.gradle.
implementation project(path: ':libfacesdk')

2. Initializing an SDK

  • 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.init(getAssets());

If initialization is successful, the return value will be SDK_SUCCESS. Otherwise, an error value will be returned.

3. SDK Classes

  • FaceDetectionParam

    This class serves as the input parameter for face detection, allowing the inclusion of face liveness detection and specifying the desired liveness detection level.

    Feature Type Name
    Check liveness boolean check_liveness
    Check liveness level int check_liveness_level

    When check_liveness_level is set to 0, the liveness detection achieves high accuracy. When check_liveness_level is set to 1, the liveness detection operates with light weight.

4. APIs

- Face Detection and Liveness Detection

The FaceSDK offers a single function for detecting faces, allowing the inclusion of face liveness detection and specifying the desired liveness detection level.

FaceSDK.faceDetection(bitmap, param)

This function requires two parameters: a Bitmap object and a FaceDetectionParam object that enables various processing functionalities.

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.

- Create Templates

The FaceSDK provides a function that can generate a template from a Bitmap image. This template can then be used to verify the identity of the individual image captured.

byte[] templates = FaceSDK.templateExtraction(bitmap, faceBox);

The SDK's template extraction function takes two parameters: a Bitmap object and an object of FaceBox.

The function returns a byte array, which contains the template that can be used for person verification.

- Calculation similarity

The similarityCalculation function takes a byte array of two templates as a parameter.

float similarity = FaceSDK.similarityCalculation(templates1, templates1);

It returns the similarity value between the two templates, which can be used to determine the level of likeness between the two individuals.

- Yuv to Bitmap

The SDK provides a function called yuv2Bitmap, which converts a yuv frame to a Bitmap. Since camera frames are typically in yuv format, this function is necessary to convert them to Bitmap. The usage of this function is as follows:

Bitmap bitmap = FaceSDK.yuv2Bitmap(nv21, image.getWidth(), image.getHeight(), 7);

The first parameter is an nv21 byte array containing the yuv data.

The second parameter is the width of the yuv frame, and the third parameter is its height.

The fourth parameter is the conversion mode, which is determined by the camera orientation.

To determine the appropriate conversion mode, the following method can be used:

 1        2       3      4         5            6           7          8

 888888  888888      88  88      8888888888  88                  88  8888888888
 88          88      88  88      88  88      88  88          88  88      88  88
 8888      8888    8888  8888    88          8888888888  8888888888          88
 88          88      88  88
 88          88  888888  888888

Our Products

Face Recognition SDK

No Project Features
1 FaceRecognition-SDK-Docker 1:1 & 1:N Face Matching SDK
2 FaceRecognition-SDK-Windows 1:1 & 1:N Face Matching SDK
3 FaceRecognition-SDK-Linux 1:1 & 1:N Face Matching SDK
4 FaceRecognition-LivenessDetection-SDK-Android 1:1 & 1:N Face Matching, 2D & 3D Face Passive Liveness Detection SDK
5 FaceRecognition-LivenessDetection-SDK-iOS 1:1 & 1:N Face Matching, 2D & 3D Face Passive Liveness Detection SDK
6 FaceRecognition-LivenessDetection-SDK-CPP 1:1 & 1:N Face Matching, 2D & 3D Face Passive Liveness Detection SDK
7 FaceMatching-SDK-Android 1:1 Face Matching SDK
8 FaceAttributes-SDK-Android Face Attributes, Age & Gender Estimation SDK

Face Liveness Detection SDK

No Project Features
1 FaceLivenessDetection-SDK-Docker 2D & 3D Face Passive Liveness Detection SDK
2 FaceLivenessDetection-SDK-Windows 2D & 3D Face Passive Liveness Detection SDK
3 FaceLivenessDetection-SDK-Linux 2D & 3D Face Passive Liveness Detection SDK
4 FaceLivenessDetection-SDK-Android 2D & 3D Face Passive Liveness Detection SDK
5 FaceLivenessDetection-SDK-iOS 2D & 3D Face Passive Liveness Detection SDK

ID Document Recognition SDK

No Project Features
1 ID-DocumentRecognition-SDK-Docker ID Document, Passport, Driver License, Credit Card, MRZ Recognition SDK
2 ID-DocumentRecognition-SDK-Windows ID Document, Passport, Driver License, Credit Card, MRZ Recognition SDK
3 ID-DocumentRecognition-SDK-Linux ID Document, Passport, Driver License, Credit Card, MRZ Recognition SDK
4 ID-DocumentRecognition-SDK-Android ID Document, Passport, Driver License, Credit Card, MRZ Recognition SDK

ID Document Liveness Detection SDK

No Project Features
1 ID-DocumentLivenessDetection-SDK-Docker ID Document Liveness Detection SDK
2 ID-DocumentLivenessDetection-SDK-Windows ID Document Liveness Detection SDK
3 ID-DocumentLivenessDetection-SDK-Linux ID Document Liveness Detection SDK

Web & Desktop Demo

No Project Features
1 FaceRecognition-IDRecognition-Playground-Next.JS FaceSDK & IDSDK Playground
2 FaceCapture-LivenessDetection-Next.JS Face Capture, Face LivenessDetection, Face Attributes
3 FaceMatching-Windows-App 1:1 Face Matching Windows Demo Application

About MiniAiLive

MiniAiLive is a leading AI solutions company specializing in computer vision and machine learning technologies. We provide cutting-edge solutions for various industries, leveraging the power of AI to drive innovation and efficiency.

Contact US

For any inquiries or questions, please contact us on WhatsApp.

About

Face Recognition on NIST FRVT Top Ranked, Face Liveness Detection Engine on iBeta 2 Certified, 3D Face Anti Spoofing, Face Detection, Face Matching, Face Analysis, Face Sentiment, Face Alignment, Face Identification && Face Verification && Face Representation; Face Reconstruction; Face Tracking; Face Super-Resolution on Android

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors