1. 程式人生 > 程式設計 >Android開發人臉識別登入功能

Android開發人臉識別登入功能

近來,很多公司的APP都實現了人臉識別登入的功能。今天呢,銀鵬帶大家從頭到尾做一下這個人臉識別登入。

首先呢,我們需要採用一個擁有人臉識別演算法的平臺,這邊我建議使用虹軟的人臉識別,因為我個人用的就是這個,關鍵有一點好處,就是免費。註冊連結:點選進入註冊。

註冊完畢以後,話不多說,我們進入流程。

第一步:在虹軟平臺建立應用

ÔÚÕâÀï²åÈëͼƬÃèÊö

ÔÚÕâÀï²åÈëͼƬÃèÊö

直接安裝SDK檢視啟用碼

ÔÚÕâÀï²åÈëͼƬÃèÊö

下載虹軟識別庫地址:點選下載識別庫

下載好之後進行依賴新增:

implementation 'com.github.tyhjh:PermissionUtil:v1.0.5' 
implementation 'com.github.tyhjh:picturePickUtil:v1.0.6' 
implementation project(':arclibrary')

接下來進入步驟詳解:

第一步:初始化,在Application裡進行:

private void initArcFace() {
  new AcrFaceManagerBuilder().setContext(this)
    .setFreeSdkAppId(Constants.FREESDKAPPID)
    .setFdSdkKey(Constants.FDSDKKEY)
    .setFtSdkKey(Constants.FTSDKKEY)
    .setFrSdkKey(Constants.FRSDKKEY)
    .setLivenessAppId(Constants.LIVENESSAPPID)
    .setLivenessSdkKey(Constants.LIVENESSSDKKEY)
    .create();
 }

溫馨提示:Constants為儲存虹軟資訊的常量類,主要存放APPID等資訊,這些資訊在檢視啟用碼裡面有。

public class Constants {
 public static String FREESDKAPPID = "ELVF52xrBj21FKQxXygS6HvkdoMzeUVaAcBDtLa1vu4F";
 public static String FDSDKKEY = "59nZG5b13BNroFAyvMW74PEMD5Ke5ieWiZK1n6YVTEoe";
 public static String FTSDKKEY = "59nZG5b13BNroFAyvMW74PEE3g4RPbX4UPAn1XV7Hcra";
 public static String FRSDKKEY = "59nZG5b13BNroFAyvMW74PEqrgNHG1iZPTi78m1mctQt";
 public static String IDCARDAPPID = "ELVF52xrBj21FKQxXygS6HvkdoMzeUVaAcBDtLa1vu4F";
 public static String IDCARDSDKKEY = "";
 public static String LIVENESSAPPID = "ELVF52xrBj21FKQxXygS6HvkdoMzeUVaAcBDtLa1vu4F";
 public static String LIVENESSSDKKEY = "59nZG5b13BNroFAyvMW74PEMD5Ke5ieWiZK1n6YVTEoe";
}

有些需要下載arc檔案裡的程式碼,這是下載地址:點選下載arc程式碼【主要業務邏輯我這邊都放在LivenessActivity裡】

人臉識別註冊

 LivenessActivity.flag = 1;
 startActivity(new Intent(MainActivity.this,LivenessActivity.class));

人臉識別登入

LivenessActivity.flag = 2;
startActivity(new Intent(MainActivity.this,LivenessActivity.class));

以上只是本地註冊和登入,咱們需要和服務端進行互動,那麼註冊時,就要 繫結faceId,對faceId進行儲存,當用戶對人臉識別開啟後,進行本地人臉識別登入校驗,成功後,請求刷臉登入介面。

人臉識別,有的朋友so庫找不到,應該是與其依賴的第三方中的架構產生衝突,解決辦法如下,指定架構方式,在app下,android,defaultConfig下:

ndk {
   //選擇要新增的對應cpu型別的.so庫。 // 還可以新增 'x86','x86_64','mips','mips64'
   abiFilters 'armeabi-v7a' //'armeabi-v7a','arm64-v8a'
   moduleName "app"
  }
  sourceSets {
   main {
    jniLibs.srcDirs = ['src/main
bs']//指定你的libs路徑
   }
  }

人臉識別demo下載體驗:

連結:

https://pan.baidu.com/s/1EP6qnF-KN1gZo0r0RAGhQA

提取碼: fya2

總結

以上所述是小編給大家介紹的Android開發人臉識別登入功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對我們網站的支援!
如果你覺得本文對你有幫助,歡迎轉載,煩請註明出處,謝謝!