Android集成百度人脸识别(一)基础版SDK

news/2024/11/20 7:16:39/

首先Android Studio版本:3.2.0

1、注册百度账号并企业认证
2、创建应用生成API Key和Secret Key
3、下载对应的SDK(下载SDK的时候需要新建授权
因为下载的时候需要选择授权文件(授权文件包含包名和签名文件的MD5)
在这里插入图片描述
如下即可下载SDK
在这里插入图片描述
我们以基础版和人脸通行示例工程为例

下载下来并解压然后导入工程:
在这里插入图片描述
刚导入会弹出一个提示:
在这里插入图片描述
我这边选择update,然后gradle-wrapper.properties文件就变成了4.6的版本:

distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip

并报错了:

Could not find com.android.tools.build:aapt2:3.2.0-4818971.
Searched in the following locations:file:/F:/Android/sdk/extras/m2repository/com/android/tools/build/aapt2/3.2.0-4818971/aapt2-3.2.0-4818971.pomfile:/F:/Android/sdk/extras/m2repository/com/android/tools/build/aapt2/3.2.0-4818971/aapt2-3.2.0-4818971-windows.jarfile:/F:/Android/sdk/extras/google/m2repository/com/android/tools/build/aapt2/3.2.0-4818971/aapt2-3.2.0-4818971.pomfile:/F:/Android/sdk/extras/google/m2repository/com/android/tools/build/aapt2/3.2.0-4818971/aapt2-3.2.0-4818971-windows.jarfile:/F:/Android/sdk/extras/android/m2repository/com/android/tools/build/aapt2/3.2.0-4818971/aapt2-3.2.0-4818971.pomfile:/F:/Android/sdk/extras/android/m2repository/com/android/tools/build/aapt2/3.2.0-4818971/aapt2-3.2.0-4818971-windows.jarhttps://jcenter.bintray.com/com/android/tools/build/aapt2/3.2.0-4818971/aapt2-3.2.0-4818971.pomhttps://jcenter.bintray.com/com/android/tools/build/aapt2/3.2.0-4818971/aapt2-3.2.0-4818971-windows.jar
Required by:project :facesdk

因为升级了版本,新版本需要在最上级的build.gralde增加谷歌库 解决问题
(最简单的方法,重新创建一个项目,copy过来最靠谱)

// Top-level build file where you can add configuration options common to all sub-projects/modules.buildscript {repositories {google()jcenter()}dependencies {classpath 'com.android.tools.build:gradle:3.2.0'// NOTE: Do not place your application dependencies here; they belong// in the individual module build.gradle files}
}allprojects {repositories {google()jcenter()}
}task clean(type: Delete) {delete rootProject.buildDir
}

再次build发现出现了这些错误:
在这里插入图片描述
这些错误可以忽略,不影响我们运行,下面我们开始运行项目,又报错了:
在这里插入图片描述
什么?R不存在?什么鬼
再认真看看我们的包名和build.gradle中的applicationId发现

applicationId  "com.xx.facedemo" //我的manifest
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.xx.facedemo">

再对比下工程文件中导入的包:
在这里插入图片描述

怎么回事?两边竟然不一样。
我们就找到问题了,R文件需要重新导入才可以。
那我们每个java文件依次重新导入一下R后是这样的:

import com.xx.facedemo.R;

所有的java类都重新导入后,没问题了,不报错了。

温馨提示(一)修改Config.java中key

这个类中需要填写百度申请的key:

/** Copyright (C) 2017 Baidu, Inc. All Rights Reserved.*/
package com.baidu.aip.fl;public class Config {// 为了apiKey,secretKey为您调用百度人脸在线接口的,如注册,识别等。// 为了的安全,建议放在您的服务端,端把人脸传给服务器,在服务端端进行人脸注册、识别放在示例里面是为了您快速看到效果public static String apiKey = 替换为你的apiKey(ak);public static String secretKey = 替换为你的secretKey(sk);public static String licenseID = "facedemos-face-android";public static String licenseFileName = "替换为你的licenseFileName";/*** groupId,标识一组用户(由数字、字母、下划线组成),长度限制128B,可以自行定义,只要注册和识别都是同一个组。* 详情见 http://ai.baidu.com/docs#/Face-API/top* <p>* 人脸识别 接口 https://aip.baidubce.com/rest/2.0/face/v2/identify* 人脸注册 接口 https://aip.baidubce.com/rest/2.0/face/v2/faceset/user/add*/public static String groupID = 替换为groupID;}

温馨提示(二)修改build.gradle中的签名参数

/** Copyright (C) 2017 Baidu, Inc. All Rights Reserved.*/
apply plugin: 'com.android.application'android {compileSdkVersion 25buildToolsVersion "25.0.3"defaultConfig {applicationId  "com.zhiao.facedemo"minSdkVersion 19targetSdkVersion 25versionCode 1versionName "1.0"}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'}}signingConfigs {def alias = "您的keyAlias"def password = "您的keyPassword"def filePath = "您的storeFile"  //签名文件路径 如:../faceprint.jksdebug {keyAlias aliaskeyPassword passwordstoreFile file(filePath)storePassword(password)}release {keyAlias aliaskeyPassword passwordstoreFile file(filePath)storePassword(password)}}
}repositories {flatDir {dirs 'libs', project(':facesdk').file('libs')}
}dependencies {compile fileTree(dir: 'libs', include: ['*.jar'])compile project(":facesdk")compile 'com.android.support:appcompat-v7:25.1.0'compile 'com.squareup.okhttp3:okhttp:3.6.0'compile 'com.android.support:recyclerview-v7:25.1.0'compile 'cat.ereza:customactivityoncrash:1.5.0'compile 'com.android.support.constraint:constraint-layout:1.0.2'compile 'com.android.support:design:25.3.1'}

都配置好了以后就会看到这个提示了,哈哈。
在这里插入图片描述


http://www.ppmy.cn/news/836840.html

相关文章

Android人脸与指纹识别

基础人脸识别模块 添加依赖 请添加基本依赖&#xff0c;不要添加 ktx 版本的依赖&#xff0c;因为他需要 API33 及以上才可以使用&#xff01; implementation androidx.biometric:biometric:1.1.0 人脸识别工具类 package com.zhiyiyi.bio.bioimport android.content.Conte…

Android人脸识别(已开源)

Android人脸识别&#xff08;已开源&#xff09; 见链接

Android自带人脸识别

前言 碰到项目需求要判断上传的图片里只能有一个人&#xff0c;就像到了人脸识别功能&#xff0c;网上查资料说需要用opencv等各种图像库&#xff0c;项目肯定不能接受&#xff0c;没想到Android很早就已经集成了人脸识别的功能&#xff0c;这里记录一下。 实现效果 实现接口…

Android人脸识别技术

Android人脸识别技术用到的底层库&#xff1a;android/external/neven/&#xff0c;framework 层&#xff1a;frameworks/base/media/java/android/media/FaceDetector.java。 java层接口的限制: 1、只能接受bitmap的数据。 2、只能识别出双眼睛距离不大于20像素的人脸。 3、只…

安卓人脸识别笔记

人脸识别的SDK来自虹软的人脸识别SDK&#xff0c;开源免费 虹软的官网 http://www.arcsoft.com.cn/ai/arcface.html faceDemo实现效果&#xff1a; 在项目实现过程中遇到的一些问题&#xff0c;记一下。 一、调用系统相机方法 这里使用FileProvider.getUriForFile();获取…

Android人脸识别

文章目录 Android自带的人脸识别API第三方提供大牛们的封装 Android自带的人脸识别API Android实现人脸识别可以通过google原生自带API实现&#xff0c;只能识别静态图片&#xff0c;缺点是精度不高&#xff0c;识别信息很少&#xff0c;只有眼睛的识别 栗子 在页面上放一个…

Android 人脸识别了解一下 (上)

转载请注明作者及出处&#xff1a;https://www.jianshu.com/p/ca3a12bc4911 引言 人脸识别这件事想来早已经不新鲜&#xff0c;在 Android 中的应用也并不广泛&#xff0c;所以网上相关资料乏善可陈。但是在面对特殊的应用场景时&#xff0c;人脸识别的功能还是有一定的用处的…

Android在线人脸识别登录系统

Android在线人脸识别登录系统 前言 最近需要做一个Android的在线人脸识别项目&#xff0c;需求是能够在线人脸识别登录&#xff0c;找了很多资料都是价格很高或者是离线保存样本的&#xff0c;最后选择免费的虹软人脸识别&#xff0c;经过查询很多资料&#xff0c;最终完结了…