国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

多點觸控手勢識別算法的研究

2014-11-15 20:08方成艷孔偉青鄧秀勤
軟件工程 2014年11期
關(guān)鍵詞:手勢識別算法

方成艷 孔偉青 鄧秀勤

摘 要:本文針對當下流行的多點觸控設(shè)備,對多點觸控手勢識別算法進行了研究,通過類比計算機中的快捷鍵設(shè)計出了一系列的觸控手勢,并結(jié)合曲線識別算法提出了一種多點觸控手勢識別算法。實驗在當下流行的Android設(shè)備上進行,手勢檢測成功表明了識別算法的有效性。

關(guān)鍵詞:多點觸控;算法;手勢識別

中圖分類號:TP391.4 文獻標識碼:A

1 引言(Introduction)

多點觸控技術(shù)是一種全新的人機交互技術(shù)[1],相對于傳統(tǒng)的單點觸控技術(shù)而言,它能同時檢測和識別多個觸點的位置和數(shù)量,從而提供了功能更加豐富的交互技術(shù)[2]。2007年,蘋果公司的iPhone手機和微軟公司的surface桌面式計算機兩款新產(chǎn)品的發(fā)布,將多點觸控技術(shù)引入主流消費品市場[2],讓普通用戶真正享受這一技術(shù)帶來的便利。2009年微軟發(fā)布的操作系統(tǒng)Windows 7提供了對多點觸控技術(shù)的支持,使多點觸控進入人機交互新時代[3]。2011年,搭載谷歌安卓系統(tǒng)的觸屏手機進入了主流消費市場,在全球的市場份額首次超過塞班系統(tǒng),多點觸控技術(shù)成為主流的觸控技術(shù)??梢灶A(yù)見,在未來多點觸控技術(shù)將逐步取代傳統(tǒng)的鍵盤、鼠標,成為人機交互的主流技術(shù)。但是,多點觸控技術(shù)在國內(nèi)發(fā)展的時間短,技術(shù)方案尚有欠缺,一些核心技術(shù)及專利屏障為多點觸控技的進一步發(fā)展形成一定的阻礙。觸摸精度低,錯誤率高,手易疲勞性以及由于手勢擴展麻煩等問題,這些都在一定程度上制約了基于多點觸控的雙手交互技術(shù)的發(fā)展[4]。同時,針對移動設(shè)備觸摸屏的多點觸控手勢識別算法十分匱乏,這嚴重的限制了多點操作的進一步應(yīng)用。本文針對多點觸控技術(shù)中手勢功能較少,借鑒計算機快捷鍵(Ctrl+A、Ctrl+V等),設(shè)計了一系列新的手勢,并利用基于相對高度的曲線特征提取算法進行手勢特征提取、識別,在移動設(shè)備觸摸屏上實現(xiàn)了傳統(tǒng)計算機中的相應(yīng)的快捷鍵功能,幫助用戶更好地從傳統(tǒng)計算機到觸控設(shè)備的過渡。

2 傳統(tǒng)觸控手勢(Traditional touch gestures)

目前的觸控手勢分為單點和多點兩種,單點觸摸手勢主要有:單擊(Tap)、雙擊(Double Tap)、拖拽(Drag)、輕彈(Fling)、按壓(Press)等,多點觸摸手勢主要有:旋轉(zhuǎn)(Rotate)、捏(Pinch)、展開(Spread)、按壓并單擊(Press and Tap)、按壓并拖拽(Press and Drag),下表列出了這些手勢的圖示名稱和動作描述[5]:

表1 傳統(tǒng)觸控手勢

Tab.1 Traditional touch gestures

從上表來看,相對于傳統(tǒng)的單點觸控技術(shù)而言,多點觸控實現(xiàn)的功能更加豐富,但就目前情況而言,手勢功能相對較少,并沒有完全發(fā)揮多點觸控的優(yōu)勢。下一節(jié)中,本文將對計算機中使用頻率較高的快捷鍵,設(shè)計新的觸控手勢,從而進一步豐富多點觸控交互技術(shù),幫助用戶逐步擺脫對傳統(tǒng)鍵盤、鼠標的依賴。

3 手勢設(shè)計(Gesture design)

3.1 計算機中快捷鍵

用戶在使用計算機過程中,不可避免地使用到快捷鍵,快捷鍵的使用使工作更加高效、快速、準確地完成,因此快捷鍵在辦公、娛樂、文件管理等方面發(fā)揮著巨大作用。計算機中的快捷鍵很多,且很多快捷鍵功能并不常用,表2中列出了Windows系統(tǒng)下幾個使用頻率較高的快捷鍵。

表2 Windows系統(tǒng)快捷鍵

Tab.2 Shortcut keys in the windows system

快捷鍵 功能 使用說明

Ctrl+A 全選 文檔操作或文件管理中使用

Ctrl+C 復(fù)制 文檔操作或文件管理中使用

Ctrl+V 粘貼 文檔操作或文件管理中使用

Ctrl+X 剪切 文檔操作或文件管理中使用

Delete 刪除 文檔操作或文件管理中使用

Ctrl+Z 撤銷 文檔操作中使用

Ctrl+Y 恢復(fù) 文檔操作中使用

Alt+F4 關(guān)閉當前窗口 窗口界面中使用

Ctrl+S 保存 文檔操作中使用

Ctrl+N 新建 文檔操作中使用

3.2 手勢設(shè)計原則

為了能更好地幫助用戶進行人機交互,觸控手勢的設(shè)計應(yīng)便于用戶理解和使用,為此,設(shè)計時應(yīng)遵循以下原則[6]:

(1)直觀性原則:所設(shè)計的手勢應(yīng)符合用戶的直觀印象,如對圖片進行“展開(Spread)”操作表示對圖片進行放大,對圖片進行“捏(Pineh)”操作,表示對圖片進行縮小。

(2)實用性原則:所設(shè)計的手勢功能必須是用戶使用頻率最高、最常用的功能,以便用戶更好地進行人機交互。

(3)簡潔性原則:所設(shè)計的手勢應(yīng)盡量簡潔,做到簡單明了,設(shè)計的手勢不涉及復(fù)雜的軌跡,以便用戶快速地掌握并使用。

3.3 手勢方案設(shè)計

根據(jù)3.2中的原則,設(shè)計手勢如表3所示。

表3 本文設(shè)計的手勢

Tab.3 The gestures designed in the pape

考慮到快捷方式的使用頻率,本文暫只設(shè)計以上幾種手勢。

4 手勢識別算法設(shè)計(The design of the gesture

recognition algorithm)

在觸控設(shè)備中,所繪手勢以二維點集的形式進入設(shè)備中,而多點觸控手勢則表現(xiàn)為多個點集,其中

,i表示第i個觸點,本文中i=1,2。

本文中,所設(shè)計的多點手勢較為簡單,識別時可分別對Ai代表的二維曲線進行識別,因此多點觸控手勢識別可看作多個單點觸控手勢識別。endprint

特征提取算法

多點觸控手勢分割成多個單點觸控手勢后,對于每個單點手勢,本文采用基于相對高度的曲線特征提取算法[7]進行曲線特征提取,該算法描述如下:

a.完整手勢 b.手勢分割 c.手勢分割

圖1 手勢分割

Fig.1 Gesture segmentation

(1)對于開曲線AB:

第一步:求出離曲線的端點連線最遠的點P和曲線的相對高度,并存放相對高度在二叉樹的根節(jié)點。

第二步:不妨設(shè)曲線的起點為A、P分曲線為兩段。計算曲線AP的相對高度h1,并存放在相應(yīng)左子樹的根節(jié)點上。計算曲線BP 的相對高度h2,存放在右子樹根節(jié)點上。

第三步:if h1

第四步:if h2

(2)對于閉曲線,特征提取算法如下:

第一步:初始化二叉樹的根節(jié)點為0。

第二步:求出曲線的直徑AB、左曲線和右曲線。

第三步:計算左曲線的相對高度,右曲線的相對高度,分別存放在左、右子樹的節(jié)點。左、右曲線的最高點分左、右曲線成4段。

第四步:對于每一段曲線,如果帶有分割前曲線的起點,則相對高度放在其左子樹的節(jié)點。否則,存放在其右子樹的節(jié)點。如果相對高度小于某一常數(shù),則終止這段曲線的分割。否則,繼續(xù)分割曲線,轉(zhuǎn)第四步。

任何一條曲線,經(jīng)過上述的曲線提取算法后都會轉(zhuǎn)化為一棵二叉樹。二叉樹的層數(shù)由事前設(shè)定的相對高度閾值const決定。理論上,如果const取無窮小,那么曲線可以轉(zhuǎn)化為一棵無窮大的二叉樹。為了進行比較的方便,按照完全二叉樹的次序遍歷節(jié)點。對于空的節(jié)點,添補0。

5 實驗及結(jié)果分析(Experiments and results

analysis)

5.1 實驗平臺

本實驗基于Android平臺,在Windows 7(64位)操作系統(tǒng)中,利用JDK+Eclipse+Android SDK搭建安卓開發(fā)環(huán)境。

(1)JDK:java程序的編譯環(huán)境,包括java ME(移動版)、java SE(標準版)、javaEE(企業(yè)版)三個版本,沒有jdk,java程序?qū)o法進行編譯。本實驗應(yīng)用的是java SE,版本為1.7.0_52。

(2)Eclipse:著名的跨平臺開源集成開發(fā)環(huán)境(IDE),最初主要用來進行Java語言開發(fā)(需要先裝jdk),也可通過加入插件使其作為C++、Python、PHP等其他語言的開發(fā)工具(本實驗中Android使用java語言開發(fā))。從2006年起,Eclipse基金會每年都會發(fā)布新版本的Eclipse,本文使用的是Eclipse 4.2。

(3)Android SDK:Android軟件開發(fā)包,主要用于Android開發(fā)包的管理、Android虛擬設(shè)備的管理。要運行Android SDK,需先安裝JDK。

5.2 實驗步驟

實驗平臺搭建好后,接下來就開始進行實驗。一般情況下,Android軟件可以在電腦上的模擬器中運行,也可以在實體機中運行。但本實驗中,由于涉及多點觸控,而電腦鼠標只能輸入單點,故本實驗只能用支持多點觸控的Android設(shè)備運行。本實驗中用到的是支持多點觸控的Android 2.3.3設(shè)備。

本實驗程序基于Android繪圖功能,設(shè)計手勢繪制界面,利用Android多點觸控事件的支持,對觸摸坐標進行記錄,程序流程如圖2所示。

圖2 程序流程

Fig.2 Experimental procedure

程序界面:程序界面主要分為手勢添加和手勢識別。

添加手勢:繪制需加入到手勢庫中的手勢,經(jīng)特征提取后,加入手勢庫。

手勢識別:繪制需檢測的手勢。

算法處理:利用第4部分設(shè)計的算法對所繪手勢進行處理。

進行識別:對所要識別的手勢進行算法處理后,搜索手勢庫進行匹配。

5.3 識別流程

本實驗中,識別分為三步:觸點采集、特征提取、手勢識別。

(1)觸點采集:此過程主要是得到觸點集。本實驗中,利用Androi系統(tǒng)中提供的多點觸摸事件處理函數(shù)onTouchEvent對觸摸事件進行監(jiān)測,利用getX()和getY()方法得到觸摸點坐標。

(2)特征提取:此過程主要是利用第4部分提出的基于相對高度的曲線特征提取算法對手勢進行特征提取,提取后的將相應(yīng)的手勢特征存儲到手勢庫中。

(3)手勢識別:此過程主要是對所繪手勢進行特征提到后,與手勢庫中的手勢進行匹配,若匹配成功,則輸出相應(yīng)的手勢名稱,否則匹配失敗,程序結(jié)束。

圖3 手勢識別算法流程

Fig.3 The process of gesture recognition algorithm

5.4 結(jié)果分析

程序總界面如圖4所示,此時手勢庫中無任何手勢。點擊“添加手勢”按鈕則進入手勢添加界面(圖5),圖6中手勢已經(jīng)加入了手勢庫中,從理論上講,加入到手勢庫中的手勢并無數(shù)量限制。點擊“識別”按鈕,程序則進入手勢識別界面(圖7)。

圖4 程序開始界面圖

Fig.4 Beginning gestures

圖5 手勢添加界面圖

Fig.5 Adding gestures

圖6 手勢添加完成圖

Fig.6 Added gestures

圖7 識別手勢繪制

Fig.7 The drawing of recognizing gesture

識別時,將所要進行識別的手勢繪制在手勢識別區(qū)域即可,手勢識別結(jié)果如圖8所示。

圖8 手勢識別效果圖

Fig.8 The effect drawing of gesture recognizing

由以上檢測可知,成功檢測了在手勢庫中所增加的五種手勢。

6 結(jié)論(Conclusion)

當今社會技術(shù)日新月異,多點觸控技術(shù)越來越受到關(guān)注,傳統(tǒng)的計算機設(shè)備正在逐步被新技術(shù)所取代,因此應(yīng)充分發(fā)揮多點觸控技術(shù)以便更好地服務(wù)人類,是當前多點觸控發(fā)展趨勢。本文從當今觸控技術(shù)最為火暴的平臺之一——android平臺上實現(xiàn)多點觸控技術(shù)的檢測,為后續(xù)發(fā)展多點觸控技術(shù)的功能提供了一個新的思路。

參考文獻(References)

[1] 遲健男,等.多點觸摸人機交互技術(shù)綜述[J].智能系統(tǒng)學(xué)報,

2011,01:28-37.

[2] 張鋒,陳碩.多點觸控交互方式的回顧與展望[J].人類工效學(xué),

2010,04:76-78.

[3] 鄒大斌.多點觸控:進入人機交互新時代[N].計算機世界,2010-

01-11049.

[4] 王岫晨.多點觸控技術(shù)引領(lǐng)人機互動新時代[J].集成電路應(yīng)

用,2011,09:32-34.

[5] 趙杰陽.多點觸控手勢識別算法的研究與設(shè)計[D].北京工業(yè)

大學(xué),2012.

[6] 李春富,李鵬飛.多點觸控移動設(shè)備中的交互設(shè)計探究[J].藝

術(shù)與設(shè)計(理論),2011,08:139-141.

[7] 黃國華.基于相對高度的曲線特征提取算法[J].邵陽學(xué)院學(xué)報

(自然科學(xué)版),2011,01:29-33.

作者簡介:

方成艷(1991-),男,學(xué)士,學(xué)生.研究領(lǐng)域:計算機視覺.

孔偉青(1992-),男,學(xué)士,學(xué)生.研究領(lǐng)域:計算機視覺.

鄧秀勤(1966-),女,學(xué)士,副教授.研究領(lǐng)域:計算機智能,

數(shù)據(jù)挖掘.endprint

圖7 識別手勢繪制

Fig.7 The drawing of recognizing gesture

識別時,將所要進行識別的手勢繪制在手勢識別區(qū)域即可,手勢識別結(jié)果如圖8所示。

圖8 手勢識別效果圖

Fig.8 The effect drawing of gesture recognizing

由以上檢測可知,成功檢測了在手勢庫中所增加的五種手勢。

6 結(jié)論(Conclusion)

當今社會技術(shù)日新月異,多點觸控技術(shù)越來越受到關(guān)注,傳統(tǒng)的計算機設(shè)備正在逐步被新技術(shù)所取代,因此應(yīng)充分發(fā)揮多點觸控技術(shù)以便更好地服務(wù)人類,是當前多點觸控發(fā)展趨勢。本文從當今觸控技術(shù)最為火暴的平臺之一——android平臺上實現(xiàn)多點觸控技術(shù)的檢測,為后續(xù)發(fā)展多點觸控技術(shù)的功能提供了一個新的思路。

參考文獻(References)

[1] 遲健男,等.多點觸摸人機交互技術(shù)綜述[J].智能系統(tǒng)學(xué)報,

2011,01:28-37.

[2] 張鋒,陳碩.多點觸控交互方式的回顧與展望[J].人類工效學(xué),

2010,04:76-78.

[3] 鄒大斌.多點觸控:進入人機交互新時代[N].計算機世界,2010-

01-11049.

[4] 王岫晨.多點觸控技術(shù)引領(lǐng)人機互動新時代[J].集成電路應(yīng)

用,2011,09:32-34.

[5] 趙杰陽.多點觸控手勢識別算法的研究與設(shè)計[D].北京工業(yè)

大學(xué),2012.

[6] 李春富,李鵬飛.多點觸控移動設(shè)備中的交互設(shè)計探究[J].藝

術(shù)與設(shè)計(理論),2011,08:139-141.

[7] 黃國華.基于相對高度的曲線特征提取算法[J].邵陽學(xué)院學(xué)報

(自然科學(xué)版),2011,01:29-33.

作者簡介:

方成艷(1991-),男,學(xué)士,學(xué)生.研究領(lǐng)域:計算機視覺.

孔偉青(1992-),男,學(xué)士,學(xué)生.研究領(lǐng)域:計算機視覺.

鄧秀勤(1966-),女,學(xué)士,副教授.研究領(lǐng)域:計算機智能,

數(shù)據(jù)挖掘.endprint

圖7 識別手勢繪制

Fig.7 The drawing of recognizing gesture

識別時,將所要進行識別的手勢繪制在手勢識別區(qū)域即可,手勢識別結(jié)果如圖8所示。

圖8 手勢識別效果圖

Fig.8 The effect drawing of gesture recognizing

由以上檢測可知,成功檢測了在手勢庫中所增加的五種手勢。

6 結(jié)論(Conclusion)

當今社會技術(shù)日新月異,多點觸控技術(shù)越來越受到關(guān)注,傳統(tǒng)的計算機設(shè)備正在逐步被新技術(shù)所取代,因此應(yīng)充分發(fā)揮多點觸控技術(shù)以便更好地服務(wù)人類,是當前多點觸控發(fā)展趨勢。本文從當今觸控技術(shù)最為火暴的平臺之一——android平臺上實現(xiàn)多點觸控技術(shù)的檢測,為后續(xù)發(fā)展多點觸控技術(shù)的功能提供了一個新的思路。

參考文獻(References)

[1] 遲健男,等.多點觸摸人機交互技術(shù)綜述[J].智能系統(tǒng)學(xué)報,

2011,01:28-37.

[2] 張鋒,陳碩.多點觸控交互方式的回顧與展望[J].人類工效學(xué),

2010,04:76-78.

[3] 鄒大斌.多點觸控:進入人機交互新時代[N].計算機世界,2010-

01-11049.

[4] 王岫晨.多點觸控技術(shù)引領(lǐng)人機互動新時代[J].集成電路應(yīng)

用,2011,09:32-34.

[5] 趙杰陽.多點觸控手勢識別算法的研究與設(shè)計[D].北京工業(yè)

大學(xué),2012.

[6] 李春富,李鵬飛.多點觸控移動設(shè)備中的交互設(shè)計探究[J].藝

術(shù)與設(shè)計(理論),2011,08:139-141.

[7] 黃國華.基于相對高度的曲線特征提取算法[J].邵陽學(xué)院學(xué)報

(自然科學(xué)版),2011,01:29-33.

作者簡介:

方成艷(1991-),男,學(xué)士,學(xué)生.研究領(lǐng)域:計算機視覺.

孔偉青(1992-),男,學(xué)士,學(xué)生.研究領(lǐng)域:計算機視覺.

鄧秀勤(1966-),女,學(xué)士,副教授.研究領(lǐng)域:計算機智能,

數(shù)據(jù)挖掘.endprint

猜你喜歡
手勢識別算法
基于MapReduce的改進Eclat算法
Travellng thg World Full—time for Rree
進位加法的兩種算法
基于增強隨機搜索的OECI-ELM算法
基于手勢識別的工業(yè)機器人操作控制方法
基于紅外的非接觸式手勢識別系統(tǒng)設(shè)計
基于嵌入式的智能手表設(shè)計
復(fù)雜背景下的手勢識別方法
一種改進的整周模糊度去相關(guān)算法
卢湾区| 新疆| 海淀区| 奈曼旗| 清河县| 福泉市| 卫辉市| 岐山县| 虹口区| 昂仁县| 清流县| 永川市| 威宁| 新竹市| 屏边| 塘沽区| 保定市| 星座| 喀喇| 名山县| 东方市| 福建省| 巢湖市| 星座| 广饶县| 峡江县| 阿巴嘎旗| 泾阳县| 永定县| 秦皇岛市| 太谷县| 江油市| 额尔古纳市| 龙陵县| 翁牛特旗| 景谷| 宁蒗| 东乡族自治县| 舟山市| 哈尔滨市| 大名县|