專利名稱:基于有限狀態(tài)機(jī)和分類器的智能手機(jī)鼠標(biāo)移動方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種智能手機(jī)鼠標(biāo)移動方法,具體涉及一種基于有限狀態(tài)機(jī)和分類器的智能手機(jī)鼠標(biāo)移動方法。
背景技術(shù):
帶有加速度傳感器的智能手機(jī)能夠利用里面的加速度傳感器進(jìn)行手機(jī)位置的判斷,進(jìn)而實(shí)現(xiàn)類似于鼠標(biāo)的功能。但是,目前利用智能手機(jī)內(nèi)部的加速度傳感器進(jìn)行手機(jī)位置判斷的方法主要局限在積分法。這種方法產(chǎn)生的誤差在繼續(xù)判斷的過程中會被累積,從而造成更大的誤差。因此,該方法對加速度傳感器的硬件要求非常高
發(fā)明內(nèi)容
發(fā)明目的針對上述現(xiàn)有技術(shù)存在的問題和不足,本發(fā)明的目的是提供一種基于有限狀態(tài)機(jī)和分類器的智能手機(jī)鼠標(biāo)移動方法,解決積分法對加速度傳感器設(shè)備精度要求太高的問題。技術(shù)方案為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明采用的技術(shù)方案包括如下步驟(I)在智能手機(jī)(簡稱“手機(jī)”)移動時,智能手機(jī)中多組加速度傳感器獲取加速度數(shù)據(jù)(簡稱“數(shù)據(jù)”),并根據(jù)所述智能手機(jī)的移動方向?qū)铀俣葦?shù)據(jù)進(jìn)行標(biāo)記;(2)利用打好標(biāo)記的加速度數(shù)據(jù)對分類器進(jìn)行訓(xùn)練,得到一個訓(xùn)練好的分類器;(3)在智能手機(jī)中初始化一個有限狀態(tài)機(jī);(4)在智能手機(jī)移動的時候,將智能手機(jī)中的加速度傳感器不斷獲取的加速度數(shù)據(jù),放入一個定長的隊(duì)列中;(5)從隊(duì)列中取出所述定長的加速度數(shù)據(jù),使用分類器對加速度數(shù)據(jù)進(jìn)行分類,得到分類結(jié)果;(6)有限狀態(tài)機(jī)根據(jù)分類器的分類結(jié)果進(jìn)行狀態(tài)的跳轉(zhuǎn);(7)當(dāng)有限狀態(tài)機(jī)跳轉(zhuǎn)到代表智能手機(jī)移動的狀態(tài)時,執(zhí)行鼠標(biāo)移動動作。進(jìn)一步的,還包括步驟⑶重復(fù)步驟⑷、步驟(5)、步驟(6)和步驟(7)。進(jìn)一步的,所述定長為分類器訓(xùn)練時加速度數(shù)據(jù)的長度。進(jìn)一步的,所述步驟(4)中,如果當(dāng)前隊(duì)列里加速度數(shù)據(jù)的長度小于所述定長,將新獲取的所述加速度數(shù)據(jù)插入到隊(duì)尾,如果當(dāng)前隊(duì)列里加速度數(shù)據(jù)的長度為所述定長,則從隊(duì)頭刪除一個加速度數(shù)據(jù),再將新獲取的所述加速度數(shù)據(jù)插入到隊(duì)尾。進(jìn)一步的,所述分類器為支持向量機(jī)。有益效果本發(fā)明不是通過積分實(shí)現(xiàn)手機(jī)位移記錄而實(shí)現(xiàn)鼠標(biāo)移動功能的,而是使用對誤差容忍度比較高的支持向量機(jī)來對加速度傳感器數(shù)據(jù)進(jìn)行分類,配合有限狀態(tài)機(jī)的狀態(tài)轉(zhuǎn)換實(shí)現(xiàn)手機(jī)移動識別的功能,因而對加速度傳感器精度的要求比較低,適合在硬件條件比較差的手機(jī)上實(shí)現(xiàn)。
圖I為加速度傳感器獲取的加速度數(shù)據(jù)波形圖(第一幅);圖2為加速度傳感器獲取的加速度數(shù)據(jù)波形圖(第二幅);圖3為有限狀態(tài)機(jī)的狀態(tài)跳轉(zhuǎn)圖(第一幅);圖4為有限狀態(tài)機(jī)的狀態(tài)跳轉(zhuǎn)圖(第二幅)。
具體實(shí)施例方式下面結(jié)合附圖和具體實(shí)施例,進(jìn)一步闡明本發(fā)明,應(yīng)理解這些實(shí)施例僅用于說明本發(fā)明而不用于限制本發(fā)明的范圍,在閱讀了本發(fā)明之后,本領(lǐng)域技術(shù)人員對本發(fā)明的各種等價形式的修改均落于本申請所附權(quán)利要求所限定的范圍。
本發(fā)明具體包括如下階段階段I :獲取并標(biāo)記數(shù)據(jù)在智能手機(jī)移動時,智能手機(jī)中的多組加速度傳感器獲取加速度數(shù)據(jù),如圖I和圖2所示,加速度值為正的數(shù)據(jù)表示手機(jī)移動的加速度方向向右,加速度值為負(fù)的數(shù)據(jù)表示手機(jī)移動的加速度方向向左,并對獲取到的如圖I和圖2的數(shù)據(jù)進(jìn)行分割,分割為上半波形(加速度值為正)和下半波形(加速度值為負(fù))。將上半波形打上標(biāo)記1,下半波形打上標(biāo)記2。階段2:訓(xùn)練分類器使用上述打好標(biāo)記的數(shù)據(jù)訓(xùn)練分類器。本方法中的分類器選擇支持向量機(jī)。訓(xùn)練好的支持向量機(jī)可以實(shí)現(xiàn)輸入一段代表某中波形的數(shù)據(jù),輸出分類的結(jié)果,即之前打上的標(biāo)記I或者標(biāo)記2。階段3:有限狀態(tài)機(jī)在手機(jī)上實(shí)現(xiàn)一個有限狀態(tài)機(jī)(簡稱“狀態(tài)機(jī)”),該狀態(tài)機(jī)的狀態(tài)跳轉(zhuǎn)按照圖3和圖4進(jìn)行狀態(tài)機(jī)初始狀態(tài)為狀態(tài)O。如圖3所示,如果遇到一次輸出為上半波形的分類結(jié)果,就跳轉(zhuǎn)到狀態(tài)1,然后再在檢測下半波形的時候回到狀態(tài)O。如圖4所示,如果狀態(tài)機(jī)先遇到的是輸出為下半波形的分類結(jié)果,那么就跳轉(zhuǎn)到狀態(tài)2,然后再在檢測到上半波形的時候回到狀態(tài)O。階段4 :獲取手機(jī)移動過程中的傳感器數(shù)據(jù)在訓(xùn)練分類器的時候,設(shè)定輸入的數(shù)據(jù)長度為n,那么在分類器進(jìn)行分類的時候,也需要輸入長度為η的數(shù)據(jù)進(jìn)行分類過程。為了維持?jǐn)?shù)據(jù)長度為η,且保證獲得的都是最新的數(shù)據(jù),在手機(jī)上維護(hù)一個長度為η的隊(duì)列。每次加速度傳感器得到了新的數(shù)據(jù),都將其加入到這個隊(duì)列中。如果隊(duì)列里數(shù)據(jù)的長度小于η,那么直接插入到隊(duì)尾。如果隊(duì)列里數(shù)據(jù)長度已經(jīng)為η,那么要從隊(duì)頭刪除一個數(shù)據(jù),再在隊(duì)尾插入新的數(shù)據(jù)。階段5 :用分類器對傳感器的數(shù)據(jù)進(jìn)行分類判斷手機(jī)中維持的隊(duì)列中數(shù)據(jù)的長度。如果長度為η,那么此時隊(duì)列中的數(shù)據(jù)就滿足分類器的輸入條件,將這個隊(duì)列里的所有數(shù)據(jù)傳給分類器進(jìn)行分類。這樣可以保證每次給分類的數(shù)據(jù)都是最新的η個數(shù)據(jù)。階段6 :狀態(tài)機(jī)的狀態(tài)跳轉(zhuǎn)
將階段5中獲得的分類器的結(jié)果傳遞給狀態(tài)機(jī),然后狀態(tài)機(jī)就可以按照在階段3中設(shè)置的狀態(tài)跳轉(zhuǎn)方式進(jìn)行跳轉(zhuǎn)。階段7 :根據(jù)狀態(tài)機(jī)的狀態(tài)執(zhí)行動作每次狀態(tài)機(jī)的狀態(tài)發(fā)生改變的時候,都判斷當(dāng)前處于哪個狀態(tài)。在狀態(tài)機(jī)的所有狀態(tài)中,狀態(tài)I和狀態(tài)2都代表發(fā)生了手機(jī)的移動(兩個狀態(tài)代表的移動的方向相反)。如果狀態(tài)機(jī)跳轉(zhuǎn)的目的狀態(tài)是I或2的話,就執(zhí)行手機(jī)移動的相應(yīng)動作,也即執(zhí)行鼠標(biāo)的功倉泛?!?br>
權(quán)利要求
1.一種基于有限狀態(tài)機(jī)和分類器的智能手機(jī)鼠標(biāo)移動方法,包括如下步驟 (1)在智能手機(jī)移動時,智能手機(jī)中多組加速度傳感器獲取加速度數(shù)據(jù),并根據(jù)所述智能手機(jī)的移動方向?qū)铀俣葦?shù)據(jù)進(jìn)行標(biāo)記; (2)利用打好標(biāo)記的加速度數(shù)據(jù)對分類器進(jìn)行訓(xùn)練,得到一個訓(xùn)練好的分類器; (3)在智能手機(jī)中初始化一個有限狀態(tài)機(jī); (4)在智能手機(jī)移動的時候,將智能手機(jī)中的加速度傳感器不斷獲取的加速度數(shù)據(jù),放入一個定長的隊(duì)列中; (5)從隊(duì)列中取出所述定長的加速度數(shù)據(jù),使用分類器對加速度數(shù)據(jù)進(jìn)行分類,得到分類結(jié)果; (6)有限狀態(tài)機(jī)根據(jù)分類器的分類結(jié)果進(jìn)行狀態(tài)的跳轉(zhuǎn); (7)當(dāng)有限狀態(tài)機(jī)跳轉(zhuǎn)到代表智能手機(jī)移動的狀態(tài)時,執(zhí)行鼠標(biāo)移動動作。
2.根據(jù)權(quán)利要求I所述基于有限狀態(tài)機(jī)和分類器的智能手機(jī)鼠標(biāo)移動方法,其特征在于還包括步驟⑶重復(fù)步驟⑷、步驟(5)、步驟(6)和步驟(7)。
3.根據(jù)權(quán)利要求I所述基于有限狀態(tài)機(jī)和分類器的智能手機(jī)鼠標(biāo)移動方法,其特征在于所述定長為分類器訓(xùn)練時加速度數(shù)據(jù)的長度。
4.根據(jù)權(quán)利要求I所述基于有限狀態(tài)機(jī)和分類器的智能手機(jī)鼠標(biāo)移動方法,其特征在于所述步驟(4)中,如果當(dāng)前隊(duì)列里加速度數(shù)據(jù)的長度小于所述定長,將新獲取的所述加速度數(shù)據(jù)插入到隊(duì)尾,如果當(dāng)前隊(duì)列里加速度數(shù)據(jù)的長度為所述定長,則從隊(duì)頭刪除一個加速度數(shù)據(jù),再將新獲取的所述加速度數(shù)據(jù)插入到隊(duì)尾。
5.根據(jù)權(quán)利要求I所述基于有限狀態(tài)機(jī)和分類器的智能手機(jī)鼠標(biāo)移動方法,其特征在于所述分類器為支持向量機(jī)。
全文摘要
本發(fā)明公開了一種基于有限狀態(tài)機(jī)和支持向量機(jī)的智能手機(jī)鼠標(biāo)移動方法,包括如下步驟在手機(jī)移動時,多組加速度傳感器獲取加速度數(shù)據(jù),并根據(jù)所述手機(jī)的移動方向?qū)铀俣葦?shù)據(jù)進(jìn)行標(biāo)記;利用打好標(biāo)記的加速度數(shù)據(jù)對支持向量機(jī)進(jìn)行訓(xùn)練,得到一個訓(xùn)練好的分類器;在手機(jī)中初始化一個有限狀態(tài)機(jī);在手機(jī)移動的時候,將手機(jī)中的加速度傳感器不斷獲取的加速度數(shù)據(jù),放入一個定長的隊(duì)列中;從隊(duì)列中取出所述定長的加速度數(shù)據(jù),使用分類器對加速度數(shù)據(jù)進(jìn)行分類,得到分類結(jié)果;有限狀態(tài)機(jī)根據(jù)分類器的分類結(jié)果進(jìn)行狀態(tài)的跳轉(zhuǎn);當(dāng)有限狀態(tài)機(jī)跳轉(zhuǎn)到代表手機(jī)移動的狀態(tài)時,執(zhí)行鼠標(biāo)移動動作。本發(fā)明解決積分法對加速度傳感器設(shè)備精度要求太高的問題。
文檔編號H04M1/725GK102945089SQ20121052563
公開日2013年2月27日 申請日期2012年12月7日 優(yōu)先權(quán)日2012年12月7日
發(fā)明者吳小兵, 陳貴海, 李夢涵, 彭洋 申請人:南京大學(xué)