APP下载

基于单摄像头的手势识别身份认证方案设计*

2021-03-21赵文龙王圣超

通信技术 2021年2期
关键词:手势摄像头密码

胡 卫,赵文龙,王圣超

(海军工程大学,湖北 武汉 430033)

0 引言

在信息技术高速发展的今天,智能设备普及到了生活的方方面面,正深刻地影响着人们生活方式。智能设备中存储了大量的用户隐私数据,如照片、社交、交易账户等,一旦被破解,将对用户的隐私、财产安全带来巨大的威胁。身份认证是保护手机中隐私信息和敏感数据的基本安全机制。目前移动端除传统的口令密码外,使用的主流身份认证方式主要为人脸识别、指纹识别、语音识别等,在新冠疫情爆发的当下,现有认证方式在现实应用中受到了一定的掣肘。例如人脸识别在佩戴口罩后识别难度大大增加,指纹识别在佩戴手套后无法使用,而基于手势识别的身份认证鉴于其隔空控制的特性凸显了应用价值,同时基于手势识别的身份认证技术在虚拟现实、无人系统的认证操控中具有广阔的前景。本文提出的基于单摄像头的手势识别身份认证能够在复杂的背景环境下利用单摄像头对手势数据进行采集,同时运用机器学习中的卷积神经网络提高识别精度生成手势模型,通过对图形密码的选择完成认证功能。

1 相关技术

1.1 手势识别技术

手势识别技术是近几年发展起来的一种人机交互技术,是利用计算机技术使得机器对人类表达方式进行识别[1]的一种方法,根据设定的程序和算法,使得工作人员和计算机之间通过不同的手势进行交流,再用计算机上的程序和算法对相应的机器进行控制,使其根据工作人员的不同手势做出相应的动作。手势识别尽可能使用户摆脱对环境和输入设备的束缚,与环境进行自然而有效的手势交互,具有更广阔的交互空间、更高的灵活度、更好的交互体验,图1是手势识别的一些生活应用。

图1 手势识别的生活应用

一个基于视觉的手势识别系统应该包括:图像的采集、预处理、特征提取和选择、分类器的设计以及手势识别这几部分。流程图如图2所示。

图2 手势识别流程图

1.2 卷积神经网络

卷积神经网络(Convolutional Neural Network,CNN)是一种前馈神经网络,人工神经元可以响应一部分覆盖范围内的周围单元,在一些大型图像处理中卷积神经网络表现出色。卷积神经网络是一种由卷积层、池化层和全连接层[2]等部分组成的深度神经网络,输入数据通过卷积提取出其特征,然后进行池化减少冗余数据,最大限度保留特征,最后通过全连接层将特征送给分类层进行分类判决。

卷积层:卷积运算的目的是提取输入图像的不同特征,第 1层卷积层可能只能提取一些低级的特征,如边缘、线条和角等特征,第2层的卷积网络从低级特征中提取更复杂的高级特征。

池化层:实际上是一种形式的向下采样。有多种不同形式的非线性池化函数,而其中最大池化和平均采样最为常见,相当于把一张分辨率较高的图片转化为分辨率较低的图片,可进一步缩小最后全连接层中节点的个数,从而达到减少整个神经网络中参数的目的。

全连接层:一般在最后几层,负责根据卷积提取的特征来判别具体的手势。

最后1层Softmax层[3]负责最终判别手势的类别。

1.3 图形密码

图形密码是利用人们对图形记忆要优于对文本记忆[4]的特点设计的一种新型密码。用户不用记忆冗长的字符串,而是通过识别或记住图形来进行身份验证。并且,如果可能的图形数量足够大,图形密码的密钥空间可以远远超过文本密码,这样可以更好地抵抗暴力破解和字典攻击等。图形密码能够提供比文本密码更强的安全性。

图3 基于CNN的手势识别架构

鉴于人们对图形记忆要优于对文本记忆的特点,图形密码作为一种新型密码代替文本密码将是未来的一大趋势。

2 方案模块组成与功能设计

基于单摄像头的手势识别身份认证方案,由手势识别模块和身份认证模块组成,通过利用单摄像头采集的手势数据生成手势模型完成身份认证操作实现认证功能。其中,手势模型包括获取手势、图像预处理、建立特征库和卷积神经网络训练四个部分;身份认证则包括了登录与注册、认证应用、信息验证、hash变换以及后台数据库。模块组成如图4所示。

图4 基于单摄像头的手势识别身份认证方案模块组成

3 基于单摄像头的手势识别身份认证方案

结合手势识别技术、卷积神经网络和图形密码设计了基于单摄像头的手势识别身份认证方案,主要包括手势模型的训练以及身份认证两部分。

3.1 手势模型训练

使用OpenCV获取摄像头权限显示实时图像,然后根据图像特点采用高斯滤波对图像进行去噪处理,进行图像色彩空间转换,将RGB空间转化为灰度图减少环境对手势的影响,强化手势的特征,再截取处理后的实时图像做数据集。在Tensorflow上加入数据集对图像进行预处理,生成训练集、测试集,然后在卷积层和池化层对其进行特征提取、采样[5],再通过全连接层输出,再通过softmax分类器对手势进行分类生成训练模型,最后使用测试集对其进行效果测试,若其识别精度达到标准,则可以生成手势模型[6]。系统的整体流程图如图5所示。

3.1.1 RGB空间转化为灰度图

通过高清摄像头或网络摄像头捕获到的图像都是彩色的,含有的信息量比较大,若直接用于手势图像处理会占用大量内存资源,计算量大,会导致系统处理难度大,运行速度非常慢。而且RGB拥有3个通道,只符合光学原理,不符合人类视觉要求,对物体的颜色特征描述效果也不是很好。因此,为了简化计算、缩减占用的内存资源,更好地满足手势识别对图像的要求,在对输入图像进行预处理时,必须先将其灰度化[7]。灰度图像是用不同饱和度的黑色来表示每个图像点,RGB值和灰度的转换实际上是人眼对于彩色的感觉到亮度感觉的转换。RGB模式与灰度模式的对比,如图6所示。

图5 手势模型训练流程

图6 RGB模式与灰度模式的对比

3.1.2 通过样本训练完善手势模型

运行卷积神经网络对采取样本进行训练[8],对其识别的正确率进行测试,如果训练精度达不到要求,则可能是收集的图片存在问题,例如图片里包含的特征不够,或者图片模糊等因素,需要重新收集数据集进行训练,而在其正确率达到标准后,可以得到手势模型。如图7所示,经过一定次数的训练后,手势模型正确率稳定达到了99%以上。

3.1.3 手势模型

通过摄像头捕获手势图像,对图像进行去噪、转化为灰度图等操作强化手势图像的特征保存作为数据集,再运用卷积神经网络对手势样本进行训练达到稳定的识别精度生成如图8所示的手势模型。可以利用训练得到的手势模型进行翻页、选择、确认等操作,用以控制身份认证应用,达到手势控制的效果。

图7 手势模型训练正确率

3.2 身份认证方案

该方案针对用户身份认证的方法是采用的what you know,通过用户在应用上产生的信息与用户事先注册的信息比对来判定身份的真实性。首先,用户在程序上注册自己的ID及认证信息,用户利用手势模型识别手势操控认证应用选择认证图片与数字属性,然后与用户事先注册的认证信息进行匹配,两者一致则用户身份认证通过。认证流程如图9所示。

图8 部分手势模型图

3.2.1 用户注册模块

用户的注册页面中主要有用户名、密保问题、设定认证信息3个部分。首先需要创建一个用户并为其绑定一个头像用于登录操作;密保问题是从题库中可以选择3个问题并输入正确的答案用于后期找回密码、更改设置等操作;最后在对用户完成认证信息设定后即可注册成功,用户数据经Hash变换后被保存在后台数据库中。

3.2.2 图形密码设置

如图10所示,在图形密码的设置环节中,可以看到图片的选择界面上共有9页。每一页上存在9张图片,用户可以在这81张图片中选择一张心仪的图片作为认证图片,同样也可以将对自己有特殊意义的图片作为认证图片加入图片库中。随后用户对数字属性进行选择,在表盘上有1~12的刻度,顺时针转动数值为正,逆时针则为负,用户根据个人喜好选定数值,完成图形密码的设置。在图形密码设置环节可以在注册时后台输入认证信息,同样可以在确认用户身份合法性后通过手势操作直接来更改图形密码,实现更好的密码管理。

图9 认证流程

图10 图形密码设置页面

3.2.3 图形密码验证

用户进行登录操作,在认证应用中随机从后台数据库中产生包括认证图片在内的18张图片,以每个页面6张图片的形式随机分布在3个页面,可以通过手势模型对页面进行翻页操作,遍历图片库找到注册的认证图片并且进入数码盘通过手势控制指针旋转选择正确的数字。认证应用产生的认证信息经过Hash变换后同后台数据库中存储的Hash值做比对,如果两者一致则认证成功,否则认证失败。

3.2.4 口令散列存储

直接将图片及其属性存储是极不安全的。该方案采用了SHA-256哈希算法对口令进行了哈希变换,将口令的散列值存储于数据库中。口令验证时,重新计算一次散列值与数据库中存储的散列值进行比较。

哈希算法又叫散列算法,是一种只能加密,不能解密的密码学算法,具有单向不可逆性,可以将任意长度的信息转换成一段固定长度的字符串。因为其不以明文形式存储信息的特性,将用户信息经过哈希变换后保存到数据库中,即使数据库被破译,黑客也不可能通过hash值直接得出用户信息,对用户信息进行了有效的保护。

4 方案安全性分析

(1)方案结合手势识别技术操控认证应用完成身份认证功能,突出用户实体的操作,杜绝了机器的学习和攻击,增大了黑客破译的时间成本和攻击难度。

(2)方案采用了图形密码有效缓解了用户对密码记忆困难的现状,在图形数量足够大的情况下图形密码的密钥空间可以远远超过文本密码,能够更有效抵抗暴力破解和字典攻击,能够提供比文本密码更强的安全性。方案在数据传输存储的环节中使用了Hash算法,所有信息都是以Hash值进行存储,即使后台数据库被攻破,用户的真实信息也不会泄露。

(3)方案中采用了3×6的图形界面作为密码选择,同时增加了数码盘辅助认证,在现有条件下通过3次选择即可以实现的密钥空间为67 682 304(18×17×16×24×24×24),足够满足日常认证安全需求。同时可以视情况通过增加图片数量,数码盘取值范围或者增加选择操作次数进一步扩大密钥空间。

5 结语

本文提出的基于单摄像头的手势识别认证方案,采用了手势识别技术完成身份认证功能,实现了认证方式上的创新,也为手势识别技术应用于信息安全领域提供了一些参考案例。基于手势识别的身份认证是对当下认证方式的一种补充,可以有效满足新冠肺炎等传染性疾病情景下的非接触式安全认证需求。同时随着虚拟现实技术的发展,现实和虚拟世界之间必然需要一个良好的认证接口,基于手势识别的身份认证则可以很好地实现这一需求。

猜你喜欢

手势摄像头密码
浙江首试公路非现场执法新型摄像头
密码里的爱
摄像头连接器可提供360°视角图像
挑战!神秘手势
密码抗倭立奇功
胜利的手势
密码藏在何处
夺命密码
奔驰360°摄像头系统介绍
认手势说数字