动作活体检测能力支持自定义扫描动作,开发者接入更高效

news2024/9/9 6:08:56

随着人脸识别技术在金融、医疗等多个领域的加速落地,网络安全、信息泄露等问题愈为突出,用户对应用稳定性和安全性的要求也更为严格。

华为机器学习服务的动作活体检测能力,支持实时捕捉人脸,根据用户配合做动作可以判断是真实活体,还是非活体攻击(比如:翻拍图片、翻拍视频以及面具等)。

此前,动作活体检测能力通过采用指令动作配合的方式进行活体检测,在眨眼、张嘴、左摇头、右摇头、注视、点头六种动作中随机选择三种,让用户按指令完成动作。目前,动作活体检测能力新增了自定义扫描动作,开发者可以自己设定扫描动作进行人脸检测,以此判断机器前的人脸是否为真实人脸。

使用人脸关键点及人脸追踪技术,通过连续的图片,计算变化距离与不变距离的比值,进行上一帧图像与下一帧图像的对比,从而验证用户是否为真实活体本人操作,对照片、视频和面具的攻击具有很好的防御效果,是人脸识别能否有效应用的前提条件。以此实现更加友好的交互体验,打造安全可靠的活体检测能力。

自定义扫描动作

不设置自定义扫描动作时会默认从1-6个动作中按照默认规则随机生成三个动作进行检测,如果想自己设定检测动作,可以通过调用MLInteractiveLivenessConfig的setActionArray(int[] actionArray, int num, boolean isRandomable)来设置自定义扫描动作。

动作说明:

参数说明:

actionArray:

自定义动作数组,数组元素的取值在[1,6]之间,数组的长度大于等于num并且最大长度不超过6,当isRandom=false时sdk会取数组的前num个动作元素进行验证,当isRandom=true时数组的元素禁止重复并且需要满足以下规则:

1.当数组长度和num相等并且值为2时,[眨眼,注视] [左摇头,右摇头]同一组合中的动作元素不能同时存在;

2.当num = 4时,数组中的动作元素必须包含眨眼。

说明

a.当数组为null或者数组长度为0时,返回错误码11405;

b.当数组中的元素不在[1,6]之间时,返回错误码11405;

生成动作组合,当isRandom=true时,sdk会根据生成动作规则自动抛弃不合规的动作组合,生成动作规则如下:

1.当num=2时,[眨眼,注视] [左摇头,右摇头]同一组合中的动作元素不会同时存在并且相邻的动作不会相同;

2.当num=3时,[眨眼,注视]组合中的动作元素不会同时存在并且相邻的动作元素不会相同;

3.当num=4时,眨眼动作元素有且仅有1次,注视动作元素最多出现1次,[眨眼,注视]组合中的动作元素不会相邻,相邻的动作元素不会相同。

num:

用户需要生成检测动作的个数,num取值范围[1,4]并且小于等于actionArray的长度。

isRandom:

生成检测的动作是否随机,取值true表示在actionArray数组中随机取num个动作进行检测,值为false表示定序检测actionArray数组前num个动作。

MLInteractiveLivenessConfig interactiveLivenessConfig = new MLInteractiveLivenessConfig.Builder()
// actionArray 自定义动作int数组,actionArrayNum检测动作数目,isRandom动作是否随机
.setActionArray(actionArray, num, isRandom)
.build();

了解更多详情>>

访问机器学习服务联盟官网

获取机器学习服务开发指导文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1212938.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【开源】基于Vue和SpringBoot的快乐贩卖馆管理系统

项目编号: S 064 ,文末获取源码。 \color{red}{项目编号:S064,文末获取源码。} 项目编号:S064,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 搞笑视频模块2.3 视…

代码随想录 Day46 动态规划14 LeetCode T392 判断子序列 T115 不同的子序列

LeetCode T392 判断子序列 题目链接:392. 判断子序列 - 力扣(LeetCode) 题目思路: 本题有两种思路,第一个思路是使用双指针,第二个思路是使用动态规划,结尾笔者会附上两种方法的代码. 1.双指针 首先我们谈双指针的思路,就是让两个指针分别指向s和t字符…

Python交易-通过Financial Modeling Prep (FMP)选择行业

介绍 在您的交易旅程中,无论您是在寻找理想的股票、板块还是指标,做出明智的决策对于您的成功至关重要。然而,收集和分析所需的大量数据可能相当艰巨。财务建模准备 (FMP) API的

学c语言可以过CCT里的c++吗?

学习 C 语言可以为学习 C 奠定一些基础,但它们是不同的语言,有各自独特的特点和用途。最近很多小伙伴找我,说想要一些c语言的资料,然后我根据自己从业十年经验,熬夜搞了几个通宵,精心整理了一份「c语言资料…

如何在Windows 10中进行屏幕截图

本文介绍如何在Windows 10中捕获屏幕截图,包括使用键盘组合、使用Snipping Tool、Snipp&Sketch Tool或Windows游戏栏。 使用打印屏幕在Windows 10中捕获屏幕截图 在Windows 10中捕获屏幕截图的最简单方法是按下键盘上的PrtScWindows键盘组合。你将看到屏幕短暂…

Spring6(一):入门案例

文章目录 1. 概述1.1 Spring简介1.2 Spring 的狭义和广义1.3 Spring Framework特点1.4 Spring模块组成 2 入门2.1 构建模块2.2 程序开发2.2.1 引入依赖2.2.2 创建java类2.2.3 创建配置文件2.2.4 创建测试类测试 2.3 程序分析2.4 启用Log4j2日志框架2.4.1 引入Log4j2依赖2.4.2 加…

Python自动化测试之request库详解(二)

http协议是无状态的,也就是每个请求都是独立的。那么登录后的一系列动作,都需要用cookie来验证身份是否是登录状态,为了高效的管理会话,保持会话,于是就有了session。 session简介 session是一种管理用户状态和信息的…

MySQL(17):触发器

概述 MySQL从 5.0.2 版本开始支持触发器。MySQL的触发器和存储过程一样,都是嵌入到MySQL服务器的一段程序。 触发器是由 事件来触发 某个操作,这些事件包括 INSERT 、 UPDATE 、 DELETE 事件。 所谓事件就是指用户的动作或者触发某项行为。 如果定义了触…

栈和队列:队列

目录 队列概念: 队列: 先进先出: 与栈的区别: 队列的实现: 关于节点指针的封装: 初始化: 入队: 出队: 获取队头元素和获取队尾元素: 判断队列是…

在Linux中nacos集群模式部署

一、安装 配置nacos 在Linux中建立一个nacos文件夹 mkdir nacos 把下载的压缩包拉入刚才创建好的nacos文件中 解压 tar -zxvf nacos-server-1.4.1\.tar.gz 修改配置文件 进入nacos文件中的conf文件的cluster.conf.example 修改cluster.conf.example文件 vim cluster.conf.exa…

Linux下SPI环回测试

文章目录 前言一、回环测试代码1.1 头文件 spidev.h2.2 c代码 spidev_test.c 二、 编译验证2.1 交叉编译2.2 测试 前言 linux下做spi回环测试 一、回环测试代码 1.1 头文件 spidev.h /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /** include/linux/spi…

湖科大计网:数据链路层

一、数据链路层概述 一、基本概念 实际上的数据传输需要在每个结点中通过特定的各层,但是在单独考虑数据链路层的内容时,我们只需要将数据链路层想象成水平传输的即可,数据链路层完成它自己部分的功能。数据链路层将从网络层下来的数据协议单…

ROS 学习应用篇(五)服务Server学习之自定义服务与调用

在之前我学着如何建立一个话题Topic的消息类型,那时候建立了一个msg文件,包括,消息名称和消息数据类型(int还是什么之类的。),将其链接到CMakeList,.xml文件补录需要的依赖,CMakeLis…

kubernetes集群编排(12)

目录 istio 部署 部署示例应用 部署遥测组件 流量管理 熔断 istio 官网:https://istio.io/latest/zh/about/service-mesh/ 部署 demo专为测试准备的功能集合 [rootk8s2 ~]# tar zxf istio-1.19.3-linux-amd64.tar.gz [rootk8s2 ~]# cd istio-1.19.3/ [rootk8s2 isti…

Playwright UI 自动化测试实战

📢专注于分享软件测试干货内容,欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!📢交流讨论:欢迎加入我们一起学习!📢资源分享:耗时200小时精选的「软件测试」资…

中国人民大学与加拿大女王大学金融硕士帮你打开选择学校的正确方式

随着社会对人才需求量的加大,对人才教育水平要求的攀升,越来越多的人意识到学历的重要性,于是每年攻读硕士和博士的人开始居高不下。例如大家对中国人民大学与加拿大女王大学金融硕士的选择。面对众多高校,如何选择合适的学校成为…

云原生下GIS服务规划与设计

作者:lisong 目录 背景云原生环境下GIS服务的相关概念GIS服务在云原生环境下的规划调度策略GIS服务在云原生环境下的调度手段GIS服务在云原生环境下的服务规划调度实践 背景 作为云原生GIS系统管理人员,在面对新建的云GIS系统时,通常需要应对…

2023/11/15JAVA学习

如何多开一个程序

python自动化第一篇—— 带图文的execl的自动化合并

简述 最近接到一个需求,需要为公司里的一个部门提供一个文件上传自动化合并的系统,以供用户稽核,谈到自动化,肯定是选择python,毕竟python的轮子多。比较了市面上几个用得多的python库,我最终选择了xlwings…

python 基础语法 (常常容易漏掉)

同一行显示多条语句 python语法中要求缩进,但是同一行可以显示多条语句 在 Python 中,可以使用分号 (;) 将多个语句放在同一行上。这样可以在一行代码中执行多个语句,但需要注意代码的可读性和维护性。 x 5; y 10; z x y; print(z) 在…