操作識別方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及移動終端領(lǐng)域,特別涉及一種操作識別方法及裝置。
【背景技術(shù)】
[0002]搖動操作是移動終端上使用的常見觸發(fā)操作,也稱“搖一搖”操作。移動終端可以是智能手機、平板電腦以及電子書等。
[0003]搖動操作可以通過移動終端內(nèi)置的三軸加速度傳感器來識別。具體地,三軸加速度傳感器采集X軸、y軸和Z軸三個坐標(biāo)軸上的加速度,在某一方向上的加速度在預(yù)定間隔內(nèi)由正向加速度改變?yōu)樨撓蚣铀俣?,或者,由負向加速度改變?yōu)檎蚣铀俣葧r,移動終端將該次加速度的正負改變識別為一次搖一搖操作。
[0004]在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:由于用戶在使用移動終端時,存在重力加速度、乘坐汽車時產(chǎn)生的恒定加速度等因素的干擾,導(dǎo)致?lián)u動操作的誤識別率較高。
【發(fā)明內(nèi)容】
[0005]為了解決存在重力加速度、乘坐汽車時產(chǎn)生的恒定加速度等因素的干擾,導(dǎo)致?lián)u動操作的誤識別率較高的問題,本發(fā)明實施例提供了一種操作識別方法及裝置。所述技術(shù)方案如下:
[0006]第一方面,提供了一種操作識別方法,所述方法包括:
[0007]獲取移動終端中的傳感器所采集的數(shù)據(jù)序列,所述數(shù)據(jù)序列包括按照預(yù)定時間間隔采集的η個數(shù)據(jù);
[0008]對所述數(shù)據(jù)序列進行高通濾波處理,得到η個濾波后的數(shù)據(jù);
[0009]對于每個所述濾波后的數(shù)據(jù),檢測所述濾波后的數(shù)據(jù)是否超過預(yù)設(shè)閾值;
[0010]在所述濾波后的數(shù)據(jù)超過所述預(yù)設(shè)閾值時,生成用于表示所述移動終端發(fā)生搖動操作的識別結(jié)果。
[0011]第二方面,提供了一種操作識別裝置,所述裝置包括:
[0012]序列獲取模塊,用于獲取移動終端中的傳感器所采集的數(shù)據(jù)序列,所述數(shù)據(jù)序列包括按照預(yù)定時間間隔采集的η個數(shù)據(jù);
[0013]數(shù)據(jù)濾波模塊,用于對所述數(shù)據(jù)序列進行高通濾波處理,得到η個濾波后的數(shù)據(jù);
[0014]數(shù)據(jù)檢測模塊,用于對于每個所述濾波后的數(shù)據(jù),檢測所述濾波后的數(shù)據(jù)是否超過預(yù)設(shè)閾值;
[0015]結(jié)果生成模塊,用于在所述濾波后的數(shù)據(jù)超過所述預(yù)設(shè)閾值時,生成用于表示所述移動終端發(fā)生搖動操作的識別結(jié)果。
[0016]本發(fā)明實施例提供的技術(shù)方案帶來的有益效果是:
[0017]通過先對數(shù)據(jù)序列進行高通濾波處理,得到η個濾波后的數(shù)據(jù);再對每個濾波后的數(shù)據(jù),檢測濾波后的數(shù)據(jù)是否超過預(yù)設(shè)閾值;在濾波后的數(shù)據(jù)超過預(yù)設(shè)閾值時,生成用于表示移動終端發(fā)生搖動操作的識別結(jié)果;解決了重力加速度、乘坐汽車時產(chǎn)生的恒定加速度等因素的干擾,導(dǎo)致?lián)u動操作的誤識別率較高的問題;達到了使用高通濾波處理去除恒定加速度類干擾,增強搖動操作的識別準(zhǔn)確性的效果。
【附圖說明】
[0018]為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0019]圖1是本發(fā)明一個實施例提供的移動終端的結(jié)構(gòu)示意圖;
[0020]圖2是本發(fā)明一個實施例提供的操作識別方法的方法流程圖;
[0021]圖3是本發(fā)明一個實施例提供的兩種搖動方式的示意圖;
[0022]圖4是本發(fā)明另一個實施例提供的操作識別方法的方法流程圖;
[0023]圖5是本發(fā)明另一個實施例提供的操作識別方法的方法流程圖;
[0024]圖6是本發(fā)明另一個實施例提供的操作識別方法的方法流程圖;
[0025]圖7是圖6所示實施例提供的操作識別方法在實施時的實施示意圖;
[0026]圖8是本發(fā)明一個實施例提供的操作識別裝置的結(jié)構(gòu)方框圖;
[0027]圖9是本發(fā)明另一個實施例提供的操作識別裝置的結(jié)構(gòu)方框圖;
[0028]圖10是本發(fā)明一個實施例提供的移動終端的結(jié)構(gòu)方框圖。
【具體實施方式】
[0029]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方式作進一步地詳細描述。
[0030]請參考圖1,其示出了本發(fā)明一個實施例提供的移動終端的結(jié)構(gòu)示意圖。該移動終端可以是手機、平板電腦、電子書閱讀器、MP3 (Moving Picture Experts Group Aud1Layer III,動態(tài)影像專家壓縮標(biāo)準(zhǔn)音頻層面3)播放器、MP4 (Moving Picture ExpertsGroup Aud1 Layer IV,動態(tài)影像專家壓縮標(biāo)準(zhǔn)音頻層面4)播放器、膝上型便攜計算機等等。
[0031]該移動終端中設(shè)置有用于采集動作數(shù)據(jù)的傳感器(圖中未示出),比如:三軸加速度傳感器和/或陀螺儀傳感器。
[0032]傳感器在移動終端中建立的坐標(biāo)軸包括:x軸、y軸和z軸。X軸、y軸和z軸所對應(yīng)的原點為移動終端的中心。X軸與移動終端正面的水平方向平行,在正視移動終端正面時,水平方向的左側(cè)是X軸的正半軸方向,水平方向的右側(cè)是X軸的右半軸方向。I軸與移動終端正面的垂直方向平行,在正視移動終端正面時,垂直方向的上側(cè)是y軸的正半軸方向,垂直方向的下側(cè)是I軸的負半軸方向。z軸垂直于移動終端正面,移動終端正面朝外的方向是z軸的正半軸方向,移動終端負面朝外的方向是z軸的負半軸方向。
[0033]請參考圖2,其示出了本發(fā)明一個實施例提供的操作識別方法的方法流程圖。本實施例以該操作識別方法應(yīng)用于設(shè)置有傳感器的移動終端中來舉例說明。該操作識別方法包括:
[0034]步驟202,獲取移動終端中的傳感器所采集的數(shù)據(jù)序列,數(shù)據(jù)序列包括按照預(yù)定時間間隔采集的η個數(shù)據(jù);
[0035]移動終端中的傳感器按照預(yù)定時間間隔采集數(shù)據(jù),得到數(shù)據(jù)序列。該數(shù)據(jù)序列包括η個數(shù)據(jù)。
[0036]用戶搖動移動終端時,通常有兩種方式:
[0037]第一,在移動終端正面所在平面內(nèi),沿弧線來回搖動移動終端。如圖3左側(cè)所示,這種搖動方式主要靠用戶的肘部動作來完成。這種搖動方式會觸發(fā)三軸加速度傳感器上有關(guān)X軸和I軸的加速度數(shù)據(jù)發(fā)生明顯改變。
[0038]第二,以旋轉(zhuǎn)方式搖動移動終端。如圖3右側(cè)所示,這種搖動方式主要靠用戶的腕部動作來完成。這種搖動方式會觸發(fā)陀螺儀傳感器的y軸角速度數(shù)據(jù)發(fā)生明顯改變。
[0039]在傳感器包括三軸加速度傳感器時,移動終端獲取三軸加速度傳感器采集的對應(yīng)于X軸的加速度數(shù)據(jù)序列和對應(yīng)于I軸的加速度數(shù)據(jù)序列。其中,對應(yīng)于X軸的加速度數(shù)據(jù)序列包括η個X軸加速度數(shù)據(jù),對應(yīng)于I軸的加速度數(shù)據(jù)序列包括η個y軸加速度數(shù)據(jù)。
[0040]在傳感器包括陀螺儀傳感器時,移動終端獲取陀螺儀傳感器采集的對應(yīng)于y軸的角速度數(shù)據(jù)。也即,數(shù)據(jù)序列包括以y軸為旋轉(zhuǎn)軸所采集的角速度數(shù)據(jù)序列。
[0041]步驟204,對數(shù)據(jù)序列進行高通濾波處理,得到η個濾波后的數(shù)據(jù);
[0042]高通濾波處理能夠去除恒定加速度或恒定角速度對傳感器數(shù)據(jù)的影響。比如,地球引力即為恒定加速度,乘坐定時巡航的汽車也會產(chǎn)生恒定加速度等。
[0043]移動終端對數(shù)據(jù)序列中的各個數(shù)據(jù)進行高通濾波處理,得到η個濾波后的數(shù)據(jù)。
[0044]步驟206,對于每個濾波后的數(shù)據(jù),檢測濾波后的數(shù)據(jù)是否超過預(yù)設(shè)閾值;
[0045]由于用戶在正常使用移動終端過程中,還可能會行走、上下樓、放置手機和拿起手機等操作。
[0046]為了區(qū)分用戶的常規(guī)動作和搖動操作,移動終端還檢測濾波后的數(shù)據(jù)是否超過預(yù)設(shè)閾值。
[0047]步驟208,在濾波后的數(shù)據(jù)超過預(yù)設(shè)閾值時,生成用于表示移動終端發(fā)生搖動操作的識別結(jié)果。
[0048]綜上所述,本實施例提供的操作識別方法,通過先對數(shù)據(jù)序列進行高通濾波處理,得到η個濾波后的數(shù)據(jù);再對每個濾波后的數(shù)據(jù),檢測濾波后的數(shù)據(jù)是否超過預(yù)設(shè)閾值;在濾波后的數(shù)據(jù)超過預(yù)設(shè)閾值時,生成用于表示移動終端發(fā)生搖動操作的識別結(jié)果;解決了重力加速度、乘坐汽車時產(chǎn)生的恒定加速度等因素的干擾,導(dǎo)致?lián)u動操作的誤識別率較高的問題;達到了使用高通濾波處理去除恒定加速度類干擾,增強搖動操作的識別準(zhǔn)確性的效果。
[0049]在一個可能的實施例中,上述步驟204可替代實現(xiàn)為步驟204a,如圖4所示。
[0050]步驟204a,按照如下公式計算得到η個濾波后的數(shù)據(jù);
[0051]y[i] = a *y[1-l] + a *(x[i]-x[i_l])
[0052]其中,設(shè)x[i]是數(shù)據(jù)序列中的第i個數(shù)據(jù),y[i]是第i個濾波后的數(shù)據(jù);a是根據(jù)預(yù)定時間間隔設(shè)置的常數(shù),X[O] = y[0],l彡i ( η。
[0053]通常,a = RC/(RC+dt),其中,RC是根據(jù)經(jīng)驗值設(shè)定的常數(shù),dt是傳感器采集數(shù)據(jù)時的時間間隔,比如:dt = 0.05s。
[0054]當(dāng)數(shù)據(jù)序列包括對應(yīng)于X軸的加速度數(shù)據(jù)序列時,x[i]是每隔dt時長采集到的X軸的加速度數(shù)據(jù);
[0055]當(dāng)數(shù)據(jù)序列包括對應(yīng)于y軸的加速度數(shù)據(jù)序列時,x[i]是每隔dt時長采集到的y軸的加速度數(shù)據(jù);
[0056]當(dāng)數(shù)據(jù)序列包括對應(yīng)于y軸的角速度數(shù)據(jù)序列時,x[i]是每隔dt時長采集到的y軸的角速度數(shù)據(jù)。
[0057]上述步驟204a的偽代碼為:
[0058]funct1n highpass (real[0...n]x