你有没有过这样的顾虑,刷脸解锁真的安全吗?如果有人用我的照片或者视频冒充我,那么手机可不可以发现镜头前不是我本人呢?当然可以啦。华为HMS ML Kit活体检测技术可以准确地分辨真实人脸和“假脸”。不管是人脸翻拍照片、人脸视频重放,还是人脸面具,活体检测技术都可以马上揭穿这些“假脸”,让“假脸”无所遁形!
活体检测技术通常用在人脸比对技术前,先确认镜头前是真实的人而不是有人拿照片或面具作假,然后再比对当前人脸和已录入的人脸是否是同一个人。活体检测技术在生活中有广泛的应用场景。比如在手机解锁时,活体检测技术可以防止有人假冒自己解锁手机,造成个人信息泄露。
或者是在办理金融业务时,活体检测技术可以用于实名认证过程中,先判断当前是真实人脸,再比对当前人脸和身份证上照片信息,确认办理业务的是身份证上的本人,有效防止他人冒充自己造成财产损失。
并且,HMS ML Kit活体检测技术支持静默式活体检测,不需要用户配合做动作就可以判断是不是真实人脸,怎么样,是不是很方便呢。下面小编给大家介绍如何快速集成活体检测技术。
详细的准备步骤可以参考华为开发者联盟:
https://developer.huawei.com/consumer/cn/doc/development/HMS-Guides/ml-process-4
这里列举关键的开发步骤。
buildscript {
repositories {
...
maven {url ‘https://developer.huawei.com/repo/‘}
}
}
dependencies {
...
classpath ‘com.huawei.agconnect:agcp:1.3.1.300‘
}
allprojects {
repositories {
...
maven {url ‘https://developer.huawei.com/repo/‘}
}
}
dependencies{
// 引入活体检测集合包。
implementation ‘com.huawei.hms:ml-computer-vision-livenessdetection:2.0.2.300‘
}
apply plugin: ‘com.android.application‘
apply plugin: ‘com.huawei.agconnect‘
<meta-data
android:name="com.huawei.hms.ml.DEPENDENCY"
android:value= "livenessdetection"/>
相机权限申请的具体操作步骤可参考:https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/add-permissions-0000001050040051
private MLLivenessCapture.Callback callback = new MLLivenessCapture.Callback() {
@Override
public void onSuccess(MLLivenessCaptureResult result) {
//检测成功的处理逻辑,检测结果可能是活体或者非活体。
}
@Override
public void onFailure(int errorCode) {
//检测未完成,如相机异常CAMERA_ERROR,添加失败的处理逻辑。
}
};
MLLivenessCapture capture = MLLivenessCapture.getInstance();
capture.startDetect(activity, callback);
下面这个demo展示了镜头前分别是真实人脸和人脸面具时活体检测技术的检测结果,效果是不是很棒?
https://github.com/HMS-Core/hms-ml-demo/blob/master/MLKit-Sample/module-body/src/main/java/com/mlkit/sample/activity/HumanLivenessDetectionActivity.java
https://developer.huawei.com/consumer/cn/hms/huawei-mlkit
原文链接:https://developer.huawei.com/consumer/cn/forum/topicview?tid=0203345286567820416&fid=18
作者:留下落叶
原文:https://blog.51cto.com/14772288/2536917