本發(fā)明涉及模式識別與人機交互的技術領域,具體涉及一種基于傳感器的手機開鎖識別技術的實現(xiàn)方法。
背景技術:
隨著移動互聯(lián)網(wǎng)的飛速發(fā)展,智能移動設備,尤其是手機,得到了飛速的發(fā)展。如今的智能手機,搭載了越來越多、越來越精確的傳感器,利用這些傳感器的數(shù)據(jù),結合機器學習和深度學習的能力,可以識別出用戶的行為,而用戶的行為數(shù)據(jù)可以被用于像ubi(usagebasedinsurance)、反作弊解決方案、隱私保護、身份鑒別等很多領域,也可以作為實時客戶關系(realtimecustomerengagement)的重要參考數(shù)據(jù)。用戶手機解鎖識別就是通過分析用戶對手機進行開鎖時的行為(搖動手機),來對用戶的身份進行識別,達到對手機解鎖進行驗證的功能,以保護用戶手機隱私。
基于傳感器的識別主要通過加速度、陀螺儀、磁場、方向等傳感器采集的運動(搖動手機)數(shù)據(jù),建立匹配模板,構建深度學習神經(jīng)網(wǎng)絡算法,創(chuàng)建模型完成對用戶的識別。對于行為識別來說,以下特征能夠較好地區(qū)別不同的行為:1)采集數(shù)據(jù)的統(tǒng)計學特征:均值、峰值、標準差等;2)每個坐標軸數(shù)據(jù)的頻域特征,可通過快速傅里葉變換將數(shù)據(jù)特征從時域轉(zhuǎn)換到頻域。在收集多個不同傳感器數(shù)據(jù)的基礎上,對這些數(shù)據(jù)的研究主要是通過目前使用廣泛的google的全新一代深度學習框架tensorflow,對采集到的數(shù)據(jù)進行深度學習。
技術實現(xiàn)要素:
本發(fā)明的目的是提供一種基于傳感器的智能手機開鎖識別的實現(xiàn)方法。使用本發(fā)明提供的實施例,可以通過分析用戶android手機傳感器數(shù)據(jù),對用戶的手機開鎖進行驗證。
本發(fā)明通過采集用戶解鎖手機時的傳感器數(shù)據(jù),進行深度學習,實現(xiàn)手機解鎖認證。根據(jù)android系統(tǒng)提供的接口api(applicationprogramminginterface),通過加速度傳感器,陀螺儀傳感器,磁場傳感器獲取到解鎖手機時的數(shù)據(jù),將采樣頻率設為50hz。在android平臺中,傳感器框架通常是使用一個標準的三維坐標系去表示一個值,這個坐標系是相對于設備來定義的(如圖2)。當設備被保持在默認方向時,x軸是水平向右、y軸是垂直向上、z軸是指向屏幕面板的外部。加速度、陀螺儀、磁場等傳感器基于此坐標系工作。在用戶搖動手機嘗試開鎖的狀態(tài)下,手機傳感器返回數(shù)據(jù)。
由于不同用戶在同一行為狀態(tài)下(搖動手機開鎖)具有不同的數(shù)據(jù)特征,故本發(fā)明以此為依據(jù)來識別用戶驗證開鎖。
采集有效的手勢加速度數(shù)據(jù)后,利用失真補償、統(tǒng)一坐標系、平滑濾波、重采樣和歸一化的方法,對所采集的原始數(shù)據(jù)進行預處理,使處理后的數(shù)據(jù)波形平滑、規(guī)整和統(tǒng)一,以提高用戶開鎖識別的準確度。
具體計算過程如下:根據(jù)用戶在這一段時間里的傳感器數(shù)據(jù),進行統(tǒng)計分析,計算并提取特征值。以加速度傳感器為例,特征值包括三個方向x,y,z加速度的平均值、標準差,合成加速度值
正弦波是對頻域的描述,因為時域中的任何波形都可以用正弦波合成。根據(jù)傅里葉變換理論,任何時域信號,都可以表示為不同頻率的正弦波信號的疊加。對樣本數(shù)據(jù)進行快速傅里葉變換,將樣本數(shù)據(jù)從時域轉(zhuǎn)換到頻域。
采用google的第二代人工智能學習框架tensorflow,對時域和頻域上的數(shù)據(jù)特征進行深度學習。
采用動態(tài)時間規(guī)整dtw(dynamictimewraping)法計算所有樣本間的相似度,得到匹配模板。
將輸入的待識別數(shù)據(jù)與之前得到的模板(即正確的開鎖方式)進行匹配,匹配的標準是二者間的相似度。使用dtw算法對待識別樣本與模板進行匹配計算。
該方法的步驟包括:
1、用戶解鎖手機時搖動手機,通過android系統(tǒng)提供的接口,實時獲取傳感器數(shù)據(jù)。
2、預處理:根據(jù)用戶解鎖手機的加速度、磁場傳感器等數(shù)據(jù),從不同角度出發(fā)對采集到的原始傳感器數(shù)據(jù)進行預處理,使處理后的數(shù)據(jù)波形平滑、規(guī)整統(tǒng)一,便于進行統(tǒng)計分析。
3、計算并提取數(shù)據(jù)的統(tǒng)計學特征,同時使用快速傅里葉變換,將在時域上采集的經(jīng)處理過的傳感器數(shù)據(jù)轉(zhuǎn)換到頻域;
4、使用tensorflow框架,對時域和頻域上的數(shù)據(jù)特征進行深度學習,創(chuàng)建手勢識別模型;
5、使用dtw算法計算各樣本數(shù)據(jù)的相似度,得到匹配模板,并對各樣本數(shù)據(jù)與模板進行匹配計算;
6、輸出識別結果即能否解鎖手機。
最后,實施本發(fā)明具有以下有益效果:
本發(fā)明實施例的有益效果是,通過分析用戶解鎖智能手機的傳感器數(shù)據(jù)可以實現(xiàn)手機的開鎖認證。
附圖說明
圖1是本發(fā)明提出的一種基于傳感器的用戶開鎖識別方法的算法流程。
圖2是本發(fā)明涉及到的傳感器的坐標系示意圖。
具體實施方式
下面結合附圖對本發(fā)明的具體實施方式進行描述,以便本領域的技術人員更好地理解本發(fā)明。
在本實施例中,如圖所示,提供本發(fā)明提出的方法的算法流程:
步驟101、用戶使用手勢解鎖手機,使用android操作系統(tǒng)提供的傳感器api,實時記錄并獲取用戶開鎖手機時的傳感器數(shù)據(jù)。
步驟102、數(shù)據(jù)預處理,使處理后的數(shù)據(jù)波形平滑、規(guī)整和統(tǒng)一。
步驟103、根據(jù)用戶解鎖手機時的各項傳感器數(shù)據(jù),進行統(tǒng)計分析,選取并計算特征,主要是統(tǒng)計學特征:均值,峰值,標準差等,同時使用快速傅里葉變換,將時域上的數(shù)據(jù)特征轉(zhuǎn)換到頻域上。
對用戶在搖動手機開鎖時的傳感器數(shù)據(jù)進行統(tǒng)計分析,以加速度傳感器為例,包括三個方向x,y,z加速度值的平均值、標準差,合成加速度值
步驟104、使用tensorflow框架,對樣本數(shù)據(jù)特征進行深度學習,創(chuàng)建模型。
步驟105、使用dtw算法計算各樣本數(shù)據(jù)的相似度,得到匹配模板,將待識別的樣本與匹配模板進行相似度匹配判斷能否解鎖手機。
步驟106、輸出對測試樣本的識別結果。
輸出識別結果即用戶通過搖動手機能否解鎖手機。
盡管上面對本發(fā)明說明性的具體實施方式進行了描述,以便于本技術領域的技術人員理解本發(fā)明,但應該清楚,本發(fā)明不限于具體實施方式的范圍,對本技術領域的普通技術人員來講,只要各種變化在所附的權利求限定和確定的本發(fā)明精神和范圍內(nèi),這些變化是顯而易見的,一切利用本發(fā)明構思的發(fā)明創(chuàng)造均在保護之列。