高焕芝,刘志丹,郭云镝,2,邹北骥,2,陈再良,2
(1. 中南大学 信息科学与工程学院,湖南 长沙,410083;2.“移动医疗”教育部-中国移动联合实验室,湖南 长沙,410083)
身份认证是保障信息安全和合理分配资源的关键。随着社会信息化的不断发展及智能手机的普遍使用,手机端的网络购物支付、电子商务及网上银行等业务越来越多,很多信息资源的存储访问及保护都通过手机端进行,因此,利用手机端的传感器[1]认证身份日趋重要。传统的身份认证主要分为2 种类型:一种是用已知的信息对用户进行身份验证,常用的有用户名和密码、PIN 等;另外一种是用所拥有的实物对用户进行身份验证[2],常用的有钥匙、身份证、护照、银行信用卡等。但这2 种认证类型中,用来认证的信息容易被窃取、伪造或遗忘,而拥有的实物也容易丢失、盗用或损坏,因此,它们往往达不到很好的安全性能。生物特征认证技术的出现对传统的身份认证起到了很好的补充和完善作用。每个人都拥有人脸[3]、指纹[4]、虹膜[5]和人体内的DNA 等先天独特的身体特征,以及笔迹签名、语音和行为姿势等后天形成的行为特征。这些生物特征是区分不同人的有效手段,将这些生物特征用作身份认证可以有效地克服记忆麻烦和密码丢失等缺点;另一方面,生物体的特征都是自身携带且这种生物特征模板难以模仿,因此,保证了信息的隐私和安全,不易被窃取和仿用。笔迹鉴定[6]在身份认证中具有重要的实用价值。常用的笔迹特征主要有字体的大小、形状、笔迹压力、熟练程度、各个字符的搭配比例和笔迹轨迹的平均曲率等。目前,进行笔迹鉴定认证比较流行的算法有K 最近邻算法[7]、隐马尔可夫模型[8]、神经网络[9]、模版匹配[10]和支持向量机(support vector machines,SVM)等算法。Weiss 等[11]提出记录设备横向移动和纵向移动的笔画构成密码的认证方法。Chong 等[12]提出设计10 种手机运动轨迹,刚好对应数字0~9,进行密码输入的认证方法。Farella 等[13]受到步态识别的启发,从生物特征的角度进行了可行性分析,利用加速度传感器采集手势数据,并采用监督和非监督降维进行分类,通过数据分析,提出手势运动可作为人体行为特征并可应用于小群体的身份认证的结论。文献[14]结合[15]中基于手势识别的认证方法取得了良好实验效果,认为基于加速度传感器采集手势特征的身份认证方法前景广阔。在一般情况下,不同的人在挥动手机书写特定的轨迹时,其轨迹的大小、形状和力度会不同,而同一个人在书写同一个手势轨迹时,其轨迹的大小、形状和力度在一段时间内是相对稳定的,这一点跟每个人的签名类似,因此,手势轨迹可以看作是笔迹在手机上的另外一种体现形式。手机加速传感器是目前市场上智能手机普遍配备的能够测量加速力的电子元件,加速力就是物体在加速过程中作用在物体上的力。手机加速度传感器采集的数据为x,y 和z 3 条轴方向上承受加速度/重力加速度的浮点数时间序列,通常为-3~3。本文作者对基于手机加速度传感器的身份认证方法进行研究,针对手机端设备本身的特点,利用手机自带加速度传感器采集用户书写的手势轨迹数据[16],视为笔迹签名在手机中的另外一种体现形式,对该原始数据进行预处理和特征提取,以此作为生物的行为特征;并结合支持向量机,进而达到实现用户身份认证的目的。
图1 身份认证流程图Fig.1 Flowchart of identity authentication
图1 所示为本文所提算法的流程图:1) 用户使用手机根据自己的习惯多次书写得到相应的轨迹数据;2) 手机加速度传感器采集手势轨迹的加速度;3)对采集到的原始加速度进行预处理;4) 基于小波分解进行特征提取;5) 使用特征向量集训练SVM 模型;6) 在认证阶段,同样用户使用手机书写轨迹,进行上面步骤2)~4)的处理之后得到该轨迹的特征向量;7) 将特征向量放入到步骤5)得到的SVM 模型中进行鉴定认证,从而得到身份认证结果。
用户手势轨迹的大小、形状和力度可以通过手机的加速度来体现。用户在利用手机书写手势轨迹时,手机在空间中的加速度也会发生相应变化,利用手机自带的加速度传感器来采集手机在空间中每个时刻上x,y 和z 3 个方向的加速度作为最原始的手势轨迹数据。
每一次采集数据时,用户使用手机根据自己的习惯书写手势轨迹,此时,通过手机的加速度传感器采集到该手势轨迹从开始到结束过程中每个时刻(即每一帧)手机在三维空间中x,y 和z 3 个方向的加速度,将这些数据保存为1 个n 行3 列的矩阵形式。其中时间为t1,t2, …,tn;n 表示该时段内采集到的手势轨迹帧数;每一列均表示1 个方向上的加速度随时间的变化,因此,每个矩阵可以表示1 个手势轨迹。该加速度的矩阵形式A 为
式(1)中3 列分别表示x,y 和z 3 个方向的加速度。
为便于特征提取和SVM 模型训练,需对采集到的原始加速度曲线进行预处理,包括平滑去噪、边界检测和长度归一化,以消除采集时手抖动和传感器本身带来的噪声,提取出有用的手势轨迹并将每个手势轨迹长度变为一致。
首先使用简单移动平均线(simple moving average,SMA)方法进行处理,从而使得曲线更加光滑,其表达式为
其中:m 表示数据段的窗口大小,本文中设置的m 为7。使用当前帧i 及它之前m-1 帧的加速度之和的平均值aSMAnow来替代表示当前帧的加速度ai。同时,为了处理方便,将曲线进行平移变换,通过取第1 帧和最后1 帧位置的和求均值作为平移量,把曲线的开始点平移到坐标轴原点附近,从而得到新的矩阵ASMA。
当手机处于平稳状态时,采集到的加速度在一段时间内变化也是比较平稳的,故可采用改进的加窗口的门限值方法对手势轨迹的边界进行判定。设置窗口大小为7,门限值为0.5 m/s2。从加速度矩阵ASMA的第1 帧开始逐帧向后检测,在窗口段内的平均加速度变化不超过门限值,则对下一个窗口段内的数据进行检测。若某一个窗口段内的平均加速度变化超过门限值,则判定该窗口段对应时刻为手势轨迹的开始时刻,此窗口段的第1 帧作为手势轨迹开始的首帧,记为t1。同时,从加速度矩阵ASMA的最后1 帧开始逐帧向前检测,在窗口段内的平均加速度变化不超过门限值,则对前1 个窗口段内的数据进行检测。若某一个窗口段内的平均加速度变化超过门限值,则判定此时手势轨迹结束,此窗口段的最后1 帧作为手势轨迹结束的尾帧,记为ts。最后,将t1帧和ts帧及它们之间的帧提取出来,即获得一个完整的手势轨迹加速度AS,长度记为S(S≤n)。该加速度数据矩阵形式记为AS。
每一次采集手势轨迹时所用的时间不同,导致加速度曲线长度也不相等。为便于特征提取,需对AS长度归一化。设置长度归一化阈值为L=200 帧,得到归一化之后的加速度矩阵为AL。具体处理如下:
1) 当其长度S 等于阈值L 时,AS不需要进行处理,即AL=AS;
2) 当其长度S 小于阈值L 时,需要对数据AS进行插值处理。按如下方法处理:首先计算j=[(L ×i)/ S ],i=1,2, …,S(其中,[ ]表示对结果取整运算)。把对应i 下的xi依次赋值给对应j 的yj,将所有的 yj按下标 j 递增规则依次排列为yj1,yj2, …,yjh,显然有jh=L;然后,令j=1,依次递增至L,若j 满足j<j1,则yj=yj1;若j 满足jk<j<jk+1(k=1,2, …,h-1),则采用线性插值法来计算AL中的第j 个分量yj,计算式为
3) 当长度S 大于阈值L 时,需对数据AS降采样,若满足计算式j=[(L ×i)/ S](i=1,2, … ,S)的i 只有1个,则令yj=xi;若满足式子j=[(L ×i)/ S]的i 有多个,则计算这些i 对应的分量均值作为第j 帧的结果。
本文针对手机端采集到的数据,结合小波多分辨率理论和Mallat 算法,提出基于小波变换的手势轨迹特征提取算法对AL特征提取,最后得到1 次手势轨迹的特征向量FFFF。
输入:预处理后的手势轨迹加速度矩阵AL,包括x,y 和z 3 个方向数据。
第3 步:求取所选择的各层信号的能量。小波变换中信号的能量求解公式为
图2 小波多层分解结构图Fig.2 Structure diagram of multiwavelet decomposition
第4 步:提取特征向量。根据式(4)可知从x,y和z 这3 个方向的加速度信号都可以提取到1 个低频逼近信号和N 个高频细节信号的能量,进行组合并分别记为Ex,Ey和Ez。
将式(5)中Ex,Ey和Ez再进行组合,构成手势轨迹的特征向量FFFF:
根据上述基于小波变换多层分解的特征提取,1次手势轨迹最终可以使用特征向量FFFF 表示。
2 类问题中,1 个训练集Dk表示成
式中:yi为样本xi的标签;d 为样本维数;N 为样本个数。xi若为正样本,则yi标记为+1;若特征向量xi为负样本,则yi标记为-1。因此,支持向量机分类器fk定义为
其中: wTx +b 为边界函数,它可以通过式(9)求得。
K(xi,x)为核函数;DSV为支持向量集合,即 αi为非零所对应的训练样本。
本文中采集数据所用的手机为2011-05 上市的三星I9001,CPU 为比较常见的高通骁龙Snapdragon MSM8255,最低频率为122 MHz,最高频率可达1.4 GHz;RAM 容量为512 M,实际运行内存为357 M;ROM 为8 G。手机的操作系统为Android OS 2.3.6,电池容量为1 650 mA·h,自带有方向传感器、加速度传感器和距离传感器等。采集的数据规格为60 帧/s,即采样频率为60 Hz,这与人的一般手势运动频率高6倍左右[17]。在实验过程中,采集了18 个人的手势轨迹,其中13 名男性,5 名女性。预设2 个特定的手势,分别为小写字母“a”和汉字“中”,这2 个类型的手势轨迹不是很复杂,且人们普遍比较熟悉,易于执行。
每天分别对每个人2 个类型的手势轨迹采集15次以上数据,共采集10 d。最后,手势轨迹的数据均有3 000 多个样本,组成2 个实验数据集,记为“数据集一”和“数据集二”。采用拒真率和识假率这2个鉴定认证的性能指标来进行评价。拒真率(false rejection rate,用符号FFRR表示)指的是将原本正确合法的用户错误识别为非法用户而拒绝接受的情况所占的百分比,识假率(false acceptance rate,用符号FFAR表示)即把原本非法的用户错误识别为合法用户而接受的情况所占的百分比。在认证中,应该尽量降低识假率以达到较好的安全性能。在实验分析中,为了定性分析几个方面的因素对最终结果的影响,在采用不同的小波基函数、训练样本数量、数据曲线的单调性和支持向量机中的参数这4 个方面分析其对识假率FFAR和拒真率FFRR的影响。
1) 对“数据集一”进行比较分析结果如表1 所示。比较分析时,分别选择正、负样本数10 个来构建训练样本集,剩下的样本随机选择一部分作为测试集,选择不同小波基函数在不同层数分解下对身份认证性能的影响,其中得到的结果FFAR和FFRR是依次使用18个采集者用作合法用户进行18 次实验求得结果的平均值。同样,对“数据集二”进行实验分析得到的实验结果如表2 所示。
表1 由“数据集一”在不同小波基函数和不同分解层数时得到的FFRR 和FFARTable 1 FFRR and FFAR from Dataset 1 with different wavelet functions and different levels of decomposition
表2 由“数据集二”在不同小波基函数和不同分解层数时得到的FFRR 和FFARTable 2 FFRR and FFAR from Dataset 2 with different wavelet functions and different levels of decomposition
由表1 和表2 可知:使用dmey 小波基函数进行小波5 层分解提取特征时,得到的FFAR和FFRR要比其他小波基函数的效果好,尤其是其中FFAR相对较低,这在身份认证中是比较重要的1 个因素。可知分解层数对认证的影响是:分解层数较低可能包含冗余点而影响认证;分解层数太高,就会丢失一些关键点。
2) 针对手机端数据采集的有限性,应用中若采集过多的训练数据,则会加重数据计算处理负担,为此进行了训练样本集规模对身份认证结果影响的研究。分析“数据集一”的结果如表3 所示。分析时,对预处理后的数据使用dmey 小波基函数在小波5 层分解下提取特征向量组成不同规模的训练样本集,然后用于支持向量机模型训练;进行身份认证得到的FFAR和FFRR也是依次使用18 个采集者作为合法用户时求得结果的平均值。表3 中训练样本个数中正、负样本数量各占训练集总数的1/2。同样,对“数据集二”进行实验分析,最后得到的实验结果如表4 所示。
表3 由“数据集一”在不同规模训练样本集下得到的FFRR和FFARTable 3 FFRR and FFAR from Dataset 1 with different sizes of training samples
表4 由“数据集二”在不同规模训练样本集下得到的FFRR和FFARTable 4 FFRR and FFAR from Dataset 2 with different sizes of training samples
从表3 和表4 可知:训练样本集规模对身份认证的性能有一定影响,本文选择正负训练样本的模板数分别为12 个时得到的FFAR和FFRR要比其他规模的训练样本集效果好,其中FFAR也相对较低。
3) 支持向量机中参数C 和γ对核函数有一定影响,从而影响身份认证的结果。在支持向量机模型训练前,选用的是4 折交叉验证,通过实验对其得到的C 和γ是否为最优的参数进行论证分析。当C 和γ均在区间(2-10,210)范围内变化时,每对C 和γ均可以求得1个准确率。当采集者为合法用户时,训练样本集为24个(其中正、负样本各12 个),采用dmey 小波基函数进行5 层分解提取特征向量,使用并行格点搜索的4折交叉验证得到不同C 和γ下的准确率,如图3 所示。
图3 不同C 和γ下交叉验证得到的准确率Fig.3 Accuracy of cross-validation with different C and γ
根据图3 中最高的准确率可以得到最优的C 和γ,分别为1.0 和0.5。然后,将这2 个参数用在整个训练集上,训练支持向量机模型使用测试集进行验证,得到的认证率为97.55%。进一步选择其他C 和γ进行实验,在测试集上求认证率,结果如图4 所示。图4 中横坐标为C,纵坐标为测试集的认证率,不同的曲线表示不同的γ对应的认证率。
从图4 可以看出:当C=1,γ=0.5 时,测试样本集能得到的认证率最高。因此,本文根据交叉验证得到的C 和γ对使用整个训练样本集训练的支持向量机模型具有较好效果,得到的分类器模型具有很高的认证率。
图4 不同C 和γ下训练的SVM 对测试样本求得的认证率Fig.4 Authentication rate of SVM to test samples with different C and γ
预处理后的数据曲线在波峰、波谷和曲线的单调性上表现出一定的原始特征,对其性能进行分析,并与基于小波多层分解提取的特征进行的认证结果进行比较。其中,小波多层分解采用dmey 小波基函数进行5 层分解,训练样本集中正、负样本分别为12 个,依次使用18 个采集者用作合法用户求得FFAR和FFRR,统计两者的均值作为最终结果,对“数据集一”进行实验,得到的FFAR和FFRR对比结果如表5 所示。同样,对“数据集二”进行实验分析,得到的实验结果如表6 所示。
从表5 和表6 可知:基于小波多层分解提取到的手势轨迹特征向量能更好地表现同类手势轨迹之间的相似性,也能很好地表现不同类手势轨迹之间的差异性。同时,该特征向量的维数比原始数据的维数要低,从而能有效地提高支持向量机的训练和测试样本的匹配效率。
表5 “数据集一”下2 种不同特征的FFRR 和FFARTable 5 FFRR and FFAR of two different characteristics from Dataset 1
表6 “数据集二”下2 种不同特征的FFRR 和FFARTable 6 FFRR and FFAR of two different characteristics from Dataset 2
1) 提出了基于小波变换的特征提取,利用SVM思想,对用户手势轨迹的加速度数据进行鉴定认证,判定该用户是否为合法用户,进而控制用户能否访问手机上的资源,从而达到一个更自由方便、安全性高和体验性好的手机用户身份认证的目的。
2) 所提出的基于手机加速度传感器的身份认证方法准确率达96%以上,这表明基于小波变换提取的特征结合支持向量机分类器实现的手机端的身份认证算法具有很好的效果和推广价值。
[1] Khan W, Xiang Y, Aalsalem M, et al. Mobile phone sensing systems: A survey[J]. IEEE Communications Surveys &Tutorials,2013,15(1):402-427.
[2] Selimis G, Fournaris A, Kostopoulos G, et al. Software and hardware issues in smart card technology[J]. Communications Surveys and Tutorials,2009,11(3):143-152.
[3] Chakraborty G, Chakraborty B, Patra J, et al. An MLP-based face authentication technique robust to orientation[C]// IEEE International Conference on Neural Networks. Atlanta: IEEE Computer Society,2009:481-488.
[4] Zhang J, Liu X, Chen B. The design and implementation of ID authentication system based on fingerprint identification[C]//IEEE International Conference on Intelligent Computation Technology and Automation.Shenzhen: IEEE Computer Society,2011:1217-1220.
[5] Kang B, Park K. A new multi-unit iris authentication based on quality assessment and score level fusion for mobile phones[J].Machine Vision and Applications,2010,21(4):541-553.
[6] Chapran J. Biometric writer identification: feature analysis and classification[J]. International Journal of Pattern Recognition and Artificial Intelligence,2006,20(4):483-503.
[7] Tan S. Neighbor-weighted k-nearest neighbor for unbalanced text corpus[J]. Expert Systems with Applications, 2005, 28(4):667-671.
[8] Sim K. Training HMM structure and parameters with genetic algorithm and harmony search algorithm[J]. Journal of Electrical Engineering and Technology,2012,7(1):109-114.
[9] Neaupane K, Achet S. Some applications of a backpropagation neural network in geo-engineering[J]. Environmental Geology,2004,45(4):567-575.
[10] Stefano L, Mattoccia S, Tombari F. ZNCC-based template matching using bounded partial correlation[J]. Pattern Recognition Letters,2005,26(14):2129-2134.
[11] Weiss R, De Luca A. PassShapes: Utilizing stroke based authentication to increase password memorability[C]//Proceedings of the 5th Nordic Conference on Human-computer Interaction: Building Bridges. New York: ACM Press, 2008:383-392.
[12] Chong M K, Marsden G. Exploring the use of discrete gestures for authentication[C]// Human-Computer Interaction-INTERACT 2009.Heidelberg,Berlin:Springer,2009:205-213.
[13] Farella E, O’Modhrain S, Benini L, et al. Gesture signature for ambient intelligence applications: A feasibility study[C]//Pervasive Computing. Heidelberg, Berlin: Springer, 2006:288-304.
[14] Liu J, Zhong L, Wickramasuriya J, et al. User evaluation of lightweight user authentication with a single tri-axis accelerometer[C]// Proceedings of the 11th International Conference on Human-computer Interaction with Mobile Devices and Services.New York:ACM,2009:15.
[15] Liu J,Zhong L,Wickramasuriya J, et al. uWave:Accelerometerbased personalized gesture recognition and its applications[J].Pervasive and Mobile Computing,2009,5(6):657-675.
[16] Ruiz J, Li Y, Lank E. User-defined motion gestures for mobile interaction[C]// CHI'11 of the SIGCHI Conference on Human Factors in Computing Systems. New York: ACM, 2011:197-206.
[17] 陈文. 基于加速度传感器的智能终端手势识别关键技术研究[D]. 长沙: 国防科技大学计算机科学与技术系,2011:1-30.CHEN Wen. Gesture recognition based on the accelerometer of the intelligent terminals[D]. Changsha: School of National University of Defence Technology. Department of Computer Science and Technology,2011:1-30.