APP下载

身份认证服务云平台设计与开发

2022-06-11张欣怡龚迅炜方文卿

电脑知识与技术 2022年13期
关键词:人脸检测深度学习

张欣怡 龚迅炜 方文卿

摘要:本文旨在开发一款基于云平台下的身份认证系统。拟采用基于MTCNN人脸检测、人脸矫正、人脸动作活体检测、人脸特征提取、相似度计算以及用户习惯算法,综合一套身份认证服务器平台。本文通过提出活体人脸认证与用户行为习惯算法进行身份认证,防范非账户用户或是欺骗行为。

关键词:人脸检测;深度学习;MTCNN人脸检测;活体检测;用户习惯算法

中图分类号:TP18      文献标识码:A

文章编号:1009-3044(2022)13-0091-03

近年来,游戏、直播的行业不断发展,其涉及到充值、打赏、转账等操作更加快速便捷,在面对诱导消费时,心智不成熟的儿童极易冲动消费,导致未成年人网络娱乐性消费纠纷频发。为减少这一负面结果,本文旨在开发一款活体人脸认证云平台系统,利用在线平台刷脸识别,在支付前判断是否为本人操作。

许多场合中人脸识别认证身份的技术存在过多缺陷,比如光照问题、姿态问题等;用户变化姿态就可能存在识别不出的问题,或有采用图片或者3D建模可绕开人脸识别检测。早期人脸识别应用中,主要采用机器学习技术和人工设计局部特征的组合,将人工设计的纹理和特征描述量作为训练数据,通过寻找底层特征与算法分析,得到相应的判别结果。本文采用MTCNN[1]人脸检测加以矫正算法、动作活体检测算法[2]、进行相似度比对并融合用户习惯算法,形成了一套较为完整的身份认证服务系统。

1系统构架与设计

身份认证服务云平台是由建立在终端设备、云平台的服务端和供用户点击交互的App端组成。系统分为三层,包括数据采集层、云端处理层和数据持久化层。系统硬件部分实现人脸检测、活体检测和人脸特征提取的功能。服务器端包括云端数据控制、人脸认证服务以及用户习惯记录等内容。App端负责采集信息认证以及与用户之间的交互显示。核心技术分别为基于深度学习的人脸体征提取和识别模型、人脸动作活体检测算法、MTCNN人脸检测算法以及识别非法攻击方法。

1.1终端技术实现

终端设备基于深度学习的人脸活体检测和用户习惯算法,识别是否为本人操作,反馈是否允许继续当前用户操作的指令。

终端运行流程如下:

1)终端开启后,硬件完成初始化,从服务器获取设置;

2)通过摄像头采集数据,将视频传输给服务器端;

3)通过检测算法识别是否为本人操作,根据用户习惯判断风险;

4)若登录风险大,反馈非本人操作不允许继续操作的信息。

处理流程图如图2所示。从App端获取视频数据,关键帧提取后继续人脸检测判断是否有人,判断该时刻设备是否为习惯设备,判断是否为本人操作而非其他欺骗手段,最后反馈到App端,是否允许继续操作。

1.2 数据库设计

本身份认证云平台所管理的信息为:账号信息、身份信息、人脸特征信息、用户登录习惯信息。用户在App端注册账号时,填写真实身份信息,进行人脸录入,交互信息将传给服务器端。计入基本信息后,存储相应的账号信息,代表身份的人脸特征以及登录设备与地址等初始用户习惯到相应表中。

1.3 服务端实现

服务器端主要使用Web、Java和Mysql等技术共同开发完成,服务端和App端之间通过HTTP建立连接,进行通信。服务器端记录用户和设备信息,并将记录上传到服务器的终端设置、识别数据、特殊情况记录等,用户可以随时在App端查看这些数据信息。

2系统功能实现

2.1 系统功能流程

本系统功能算法流程图如图3所示,首先抽取目标视频的关键帧,通过MTCNN算法进行人脸检测实现动作活体检测并抓取最优人脸;判定为活体后再通过MTCNN算法进行人脸检测并进行矫正;通过face_recognition[3]提取人脸特征得到512维的特征向量;再对人脸特征进行相似度计算,与相似度阈值对比,最后得到结果输出是否为本人操作。

2.2 基于MTCNN人脸采集算法

本文采用将MTCNN集成的人脸检测算法,该算法将面部检测与对准集成,轻便快捷、精度更高。本文所用模型通过在较大规模的数据集上进行训练,对人脸信息进行重复学习,泛化能力強、鲁棒性好,减少了因复杂背景干扰的影响。

MTCNN总体为三层网络结构,其算法原理为:先在轻量级的CNN框架下快速生成候选窗口,再优化候选对象,最后生成最终的边界框确认人脸。对其所确定的5个脸部特征关键点进行仿射变化,通过两眼距离计算角度做矫正,得到一个人脸姿势正确的图像。

2.3 基于动作活体人脸检测

普通的静默人脸识别系统容易被具有欺骗性的情况所伪造通过检测,易受外部欺骗[4]。本文所用的基于动作活体人脸检测技术,基于启发式的算法模型,如通过眨眼、摇头的组合动作的检测,可以在用户无感的情况下进行,有着更好的用户体验。既兼顾了本系统轻便快捷的优点,防止了部分用户欺骗性手段,提高了不同环境下识别准确率,增强用户体验感。

本系统采用的动作活体检测算法描述如下,通过人脸特点检测算法检出如图4所示的68个关键点,人脸在进行眨眼、张嘴、摇头等动作时,相应关键点的比例距离会产生变化。如进行张嘴检测时,判断关键点63和67之间的距离大于一定阈值时,则视为张嘴动作。

2.4 人脸特征的提取与对比

根据人脸检测模型和5个特征区域裁剪出人脸区域,通过人脸特征提取算法,提取出特征长度为512的特征向量。将提取到的特征向量与存于系统数据库中的本人数据特征对比,计算相似度。若超过阈值,则认为当前检测的人脸符合,如图5所示。

在计算相似度时,根据两个向量:当前样本提取的向量[X(x1,x2, ... ,xn)],和原样本向量[Y(y1,y2, ... ,yn)],对其计算欧氏距离:[dist(X,Y)=i=1n(xi-yi)2]得到结果,将此结果与训练到的阈值对比,即可判断出是否为本人操作。

2.5用户行为习惯算法

笔者采用KDE算法[5]监控用户使用习惯的风险性程度。其核心设计过程是通过统计和预测某个时间段登录的概率值,若某用户通常登录时间是上班的时间,因此凌晨时间登录就会被标记为风险行为。在其进入系统后进行操作,对其进行特征分析,User-Profile聚合一个用户在一段时间内产生的所有行为数据的数量,通过KDE重新组织统计数据,并检测对比此模式是否发生明显变化。如经过此双重确定后,则认定为风险账户,将采取一定的积极措施保护账户信息。

3实验结果与分析

通过在互联网上采集非用户本人的图像与视频等训练数据集,进行测试是否符合活体信息。图像可通过图6所示人脸获取过程,但无法通过图7所示活体检测过程。因无法通过规定的活体眨眼和张嘴等随机静默动作,会被识别为非活体而认为非法入侵。

本系统能快速高效识别并反馈,通过人脸特征检测点比对,反馈得到非本人操作而视为非法入侵。只有在活体且为本人操作的情况下,才会检测成功通过本系统的验证,如图8所示。

4结束语

针对目前盗刷、误刷、诱导性消费等问题,本文设计了基于云平台的身份认证系统,有效保障用户使用的安全性,防止其他技术手段的欺骗行为。随着各大保护用户隐私政策的推出,以及手机应用的普遍化和广大用户的安全意识提高,本系统会有越来越广泛的应用市场,能实现很高的商业价值与社会价值。

参考文献:

[1] Zhang K P,Zhang Z P,Li Z F,et al.Joint face detection and alignment using multitask cascaded convolutional networks[J].IEEE Signal Processing Letters,2016,23(10):1499-1503.

[2] 皮家甜,杨杰之,杨琳希,等.基于多模态特征融合的轻量级人脸活体检测方法[J].计算机应用,2020,40(12):3658-3665.

[3] 田曦初,苏寒松,刘高华,等.基于InsightFace的改进教室人脸识别算法及其应用[J].激光与光电子学进展,2020,57(22):304-314.

[4] 陈祥闖,付晓峰.人脸识别和年龄估计在网游防沉迷中的应用[J].技术与市场,2021,28(1):41-42.

[5] 房玉琢,许志勇,赵兆.基于近似核密度估计的近场多声源定位算法[J].通信学报,2017,38(1):106-116.

【通联编辑:唐一东】

猜你喜欢

人脸检测深度学习
基于人脸特征定位的SNS网站应用组件研究与设计
有体验的学习才是有意义的学习
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望