From 601379c51970400b5c90972854b3468beef683ea Mon Sep 17 00:00:00 2001
From: Hassan-Recognito <153883841+Hassan-Recognito@users.noreply.github.com>
Date: Mon, 8 Apr 2024 21:59:57 +0800
Subject: [PATCH] Update README.md
---
README.md | 141 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 137 insertions(+), 4 deletions(-)
diff --git a/README.md b/README.md
index 66fe3df..68f60fa 100644
--- a/README.md
+++ b/README.md
@@ -51,8 +51,141 @@ Recognito's face recognition algorithm has been ranked as the **Top 1 in the NIS
To use the Recognito SDK in your Android project, follow these steps:
#### 1. Add `libfacesdk` into the project
- Add the SDK folder to your Android project's directory.
-- Add the following dependencies to your `build.gradle` file:
-```groovy
-dependencies {
- implementation project(path: ':libfacesdk')
+- Add the following dependency to your `build.gradle` and `settings.gradle` files:
+
+ https://github.com/Recognito-Vision/Face-SDK-Android-Demo/blob/main/app/build.gradle#L50-L52
+
+ https://github.com/Recognito-Vision/Face-SDK-Android-Demo/blob/main/settings.gradle#L17-L19
+
+#### 2. Application License (One-Time License)
+- For trial license, share your application ID.
+ https://github.com/Recognito-Vision/Face-SDK-Android-Demo/blob/main/app/build.gradle#L6-L15
+
+
+- Add your license to `assets/license` file:
+ https://github.com/Recognito-Vision/Face-SDK-Android-Demo/blob/main/app/src/main/assets/license#L1-L5
+- Initialize SDK with license.
+ https://github.com/Recognito-Vision/Face-SDK-Android-Demo/blob/main/app/src/main/java/com/bio/facerecognition/MainActivity.kt#39-L47
+
+ 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
+```java
+public static native int setActivation(String var0);
+```
+Parameters
+- `var0`: The license string.
+- Return Value: An integer representing the SDK activation status code.
+
+
+##### - Initiate SDK
+```java
+public static native int init(AssetManager var0);
+```
+Parameters
+- `var0`: An instance of AssetManager used to access application assets.
+- Return Value: An integer representing the initialization status code.
+
+
+##### - Convert YUV camera frame to Bitmap image
+```java
+public static native Bitmap yuv2Bitmap(byte[] nv21, int width, int height, int orientation);
+```
+Parameters
+- `nv21`: Byte array representing the YUV image data in NV21 format.
+- `width`: Width of the image.
+- `height`: Height of the image.
+- `orientation`: Orientation of the image
+
+ | Value | Orientation |
+ |:----:|----|
+ |1|No processing|
+ |2|Flip horizontally|
+ |3|Flip horizontally first and then flip vertically|
+ |4|vertical flip|
+ |5|transpose|
+ |6|Rotate 90° clockwise|
+ |7|Horizontal and vertical flip --> transpose|
+ |8|Rotate 90° counterclockwise|
+- Return Value: A Bitmap object representing the converted image.
+
+
+##### - Detect Face
+```java
+public static native List faceDetection(Bitmap var0, FaceDetectionParam var1);
+```
+Parameters
+- `var0`: The Bitmap image.
+- `var1`: Parameters for face detection
+```java
+public class FaceDetectionParam {
+ public boolean check_liveness = false;
+ public int check_liveness_level = 0; // 0: more accurate model, 1: lighter model
}
+```
+- Return Value: A list of FaceBox objects representing the detected faces.
+```java
+public class FaceBox {
+ public int x1;
+ public int y1;
+ public int x2;
+ public int y2;
+ public float liveness;
+ public float yaw;
+ public float roll;
+ public float pitch;
+}
+```
+
+
+##### - Extract face feature
+```java
+public static native byte[] templateExtraction(Bitmap var0, FaceBox var1);
+```
+Parameters
+- `var0`: The Bitmap image
+- `var1`: The bounding box (`FaceBox`) of the detected face.
+- Return Value: A byte array representing the extracted template from the face.
+
+
+##### - Calculate similarity between two face features
+```java
+public static native float similarityCalculation(byte[] var0, byte[] var1);
+```
+Parameters
+- `var0`: The byte array representing the first face template.
+- `var1`: The byte array representing the second face template.
+- Return Value: A float value representing the similarity score between the two face templates.
+
+
+## Support
+For any questions, issues, or feature requests, please contact our support team.
+
+
+
+
+
+
+
+
+
+