TWI467438B - 手勢識別方法及觸控系統 - Google Patents

手勢識別方法及觸控系統 Download PDF

Info

Publication number
TWI467438B
TWI467438B TW101120834A TW101120834A TWI467438B TW I467438 B TWI467438 B TW I467438B TW 101120834 A TW101120834 A TW 101120834A TW 101120834 A TW101120834 A TW 101120834A TW I467438 B TWI467438 B TW I467438B
Authority
TW
Taiwan
Prior art keywords
gesture
touch
time
determining
application
Prior art date
Application number
TW101120834A
Other languages
English (en)
Other versions
TW201305878A (zh
Inventor
Ching Yang Chang
Hsiang Cheng Wu
Original Assignee
Tpk Touch Solutions Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tpk Touch Solutions Inc filed Critical Tpk Touch Solutions Inc
Publication of TW201305878A publication Critical patent/TW201305878A/zh
Application granted granted Critical
Publication of TWI467438B publication Critical patent/TWI467438B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04808Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)

Description

手勢識別方法及觸控系統
本發明係涉及一種觸控技術領域,特別係指一種應用於觸控設備的手勢識別方法及觸控系統。
現今存在著許多種類型的輸入裝置用於執行電腦系統中的操作。這些操作通常對應於在顯示幕幕上移動游標並作出選擇。這些操作也可包括翻頁、滾動、搖動、縮放等等。舉例來說,輸入裝置可以是按鈕、開關、鍵盤、滑鼠、跟蹤軌跡球、觸控板、控制杆、觸控式螢幕等等。
利用觸控板設備,例如筆記型電腦的觸控板,顯示器上的輸入指示器的移動通常對應於當用戶的手指沿觸控面板的表面移動時用戶的手指(或指示筆)的相對移動。另一方面,觸控式螢幕是一種在螢幕的透明面板上設有觸敏器件的顯示幕。當使用觸控式螢幕時,使用者通過螢幕上的圖形化使用者介面(Graphical User Interface,GUI)物件(通常使用指示筆或手指)直接在顯示幕幕上作選擇。
為了提供附加的功能,已經使用這些輸入裝置的某些實現了手勢(Gesture)識別。舉例來說,在觸控面板中,當在觸控面板的表面上檢測到一次或多次輕敲時可作出選擇。在某些情況下,可以輕敲觸控面板的任何部分,而在另一種情況下可以輕敲觸控面板的指定部分。除了用於選擇,還可通過利用觸控面板的邊界處的手指運動啟動滾動。
近期,已經實現了更加高級的手勢。例如,通過將四個手指放在觸控面板以便識別滾動手勢,並據此在觸控面 板上移動這些手指以執行滾動事件。隨著新的手勢輸入裝置不斷地湧現,各種作業系統之間,甚至於同一作業系統內部的多個應用程式之間的手勢命令很可能都逐漸發展成不近相同。而隨著這些手勢命令變得日益複雜,使用者常常會很困惑或不確定怎樣去正確地與某一個特定的手勢識別程式進行交互。舉例來說,當一個用戶用兩隻手指接觸一個觸控屏的視窗的兩端,然後使一個手指朝另一個手指移動。這個輸入手勢可以被程式X解釋為“關閉視窗”的命令,也可以被程式Y解釋為“畫直線”的命令。更進一步來說,當手勢日趨複雜化時(例如包含了移動、拖拽、壓力觸控等各種元素的組合),使用者們往往會變得很困惑怎樣去輸入正確的手勢,而且很不確定輸入的手勢會被軟體識別成何種命令。
有鑑於此,有必要提供一種用戶操作較為方便的手勢識別方法及系統。
一種手勢識別方法,包括:根據觸控面板上的輸入手勢判斷該輸入手勢是否符合預定義的通用手勢的規則;及當該輸入手勢符合該通用手勢的規則時,發送一事件信號,並根據該事件信號產生對應的手勢功能列。
在優選的實施例中,上述手勢識別方法還包括:判斷是否由應用程式來回應該事件信號。
在優選的實施例中,當判斷結果為由該應用程式來回應該事件信號時,進一步包括:將該事件信號放入該應用程式的事件序列表中;及該應用程式從該事件序列表中取 得該事件信號並顯示與該應用程式相對應的手勢功能列。
在優選的實施例中,當判斷結果為不由該應用程式來回應該事件信號時,進一步包括:顯示與作業系統相對應的手勢功能列。
在優選的實施例中,該通用手勢為三個或三個以上的手指所形成的抓的手勢。
在優選的實施例中,根據觸控面板上的觸控資訊判斷該輸入手勢是否符合該通用手勢的規則的步驟包括:判斷一初始時間該觸控面板上是否有三個或以上的觸控點;當判斷該初始時間的觸控點的結果為是時,進一步判斷在一第一預定時間內所有觸控點皆存在的條件下,所有觸控點所連接形成的一多邊形的面積是否與時間成反比;及當判斷該多邊形的面積與時間的結果為是時,檢測出該輸入手勢符合該通用手勢的規則。
在優選的實施例中,判斷所述多邊形的面積是否與時間成反比的步驟進一步包括:判斷在該第一預訂時間內所有觸控點是否保持存在;及當在該第一預定時間內有至少一該些觸控點消失時,或者判斷該多邊形的面積與時間成反比的結果為否時,確認該輸入手勢符合該通用手勢的規則為不成立。
在優選的實施例中,根據觸控面板上的觸控資訊判斷該輸入手勢是否符合該通用手勢的規則的步驟包括:判斷一初始時間該觸控面板上是否有三個或以上的觸控點;當判斷該初始時間的觸控點的結果為是時,進一步判斷在一第一預定時間內所有觸控點皆存在的條件下,相鄰各觸控 點之間的距離是否與時間成反比;及當判斷該相鄰各觸控點之間的距離與時間的結果為是時,檢測出該輸入手勢符合該通用手勢的規則。
在優選的實施例中,判斷相鄰各觸控點之間的距離是否與時間成反比的步驟進一步包括:判斷在該第一預訂時間內所有觸控點是否保持存在;及當在該第一預定時間內有至少一該些觸控點消失時,或者判斷相鄰各觸控點之間的距離與時間的結果為否時,確認該輸入手勢符合該通用手勢的規則為不成立。
在優選的實施例中,判斷是否由應用程式來回應該事件信號的步驟包括:確定該三個或以上觸控點的質心;判斷該質心是否位於該應用程式的視窗的區域內;及當判斷該質心位置的結果為是時,由該應用程式來回應該事件信號;當判斷該質心位置的結果為否時,由作業系統來回應該事件信號。
在優選的實施例中,確定該三個或以上觸控點的質心的步驟為:設每個觸控點Pi的座標為(xi,yi),其中i=1,2,3...n,n3;則質心點M的座標為()。
在優選的實施例中,根據觸控面板上的觸控資訊判斷該輸入手勢是否符合該通用手勢的規則的步驟還包括:在檢測出該輸入手勢符合該通用手勢的規則之後,判斷所有觸控點是否進一步在一第二預定時間內全部消失;若判斷所有觸控點是否全部消失的結果為是時,確認該輸入手勢符合該通用手勢的規則為成立;及若判斷所有觸控點是否 全部消失的結果為否時,確認該輸入手勢符合該公用手勢的規則為不成立。
在優選的實施例中,當判斷該輸入手勢是否符合該通用手勢的規則的結果為否時,作業系統依據該觸控資訊來執行對應的系統操控指令。
一種觸控系統,包括:觸控面板,用於獲取至少一個手指觸碰所產生的觸控資訊;觸控積體電路,當根據該觸控面板上的觸控資訊判斷輸入手勢符合該通用手勢的規則時,發送一事件信號;及處理器,根據該事件信號控制作業系統或應用程式來產生對應的手勢功能列。
在優選的實施例中,上述觸控系統還包括:記憶體,用於存儲作業系統及位於該作業系統上層的應用程式。
在優選的實施例中,當該處理器判斷由該應用程式來回應該事件信號時,該處理器將該事件信號放入該應用程式的事件序列表中,使得該應用程式從該事件序列表中取得該事件信號並顯示與該應用程式相對應的手勢功能列。
上述手勢識別方法及系統提供了一種通用手勢,該通用手勢經由觸控積體電路辨識之後組成一個特殊的事件信號傳送到處理器;處理器根據該事件信號控制作業系統或應用程式來產生對應的手勢功能列,最後作業系統或應用程式再搭配手勢功能列中的視覺化元件將可運用的操作顯示在螢幕上讓使用者直接操作他想要的動作。這一方式可免除使用者記憶一堆的操作手勢並讓操作更為直接方便、不易出錯。
以上之概述與接下來的詳細說明及附圖,皆是為了能 進一步說明本發明為達成預定目的所採取之方式、手段及功效。而有關本發明的其他目的及優點,將在後續的說明及圖式中加以闡述。
為使本發明的上述目的、特徵和優點能夠更加明顯易懂,下面結合附圖對本發明的具體實施方式做詳細的說明。在下面的描述中闡述了很多具體細節以便於充分理解本發明。但是本發明能夠以很多不同於在此描述的其它方式來實施,本領域技術人員可以在不違背本發明內涵的情況下做類似推廣,因此本發明不受下面公開的具體實施的限制。在未做特別說明的情況下,其中一個實施例的特徵也可以與其他實施例進行有益地組合。
本實施方式的基本思想是:定義並存儲一個通用的手勢於觸控裝置中。該通用手勢經由觸控積體電路內建的固件演算法辨識之後形成一個特殊的事件(Event)資訊傳送到處理器(CPU,Central Processing Unit)。CPU根據此手勢發生的幾何特性(例如位置(Position)、區域(Area)與型態(Type)等)來決定是要由作業系統來解譯此資訊或轉交給應用程式(AP,application program)來解譯資訊的實際意義。最後作業系統或應用程式再搭配視覺化的圖形化使用者介面(GUI,Graphical User Interface)組件,如突顯式視窗(Popup Window)等,將可運用的操作顯示在螢幕上讓使用者直接選擇他想要的做出的命令。這一方式可免除使用者記憶一堆的操作手勢並讓操作更直接、不易出錯、最重要的是操作的多樣性變的更豐富。根據後續細節描述,本申請的具體 實施方式可在特製的電腦系統或普通的電腦系統中得以實現。
請參閱第一圖,一實施方式的手勢識別方法包括如下步驟:
步驟S100,預先定義一通用手勢的規則。該通用手勢可為“抓”、“敲擊”、“拖放”、“旋轉”、“縮放”等,本實施方式中,以“抓”來說明。“抓”這一手勢的規則可定義為:以三個或三個以上的手指同時向內彎曲並相互靠近的過程。該通用手勢的定義可在產品出廠前就直接寫入硬體晶片內部,以便使用者在使用時直接讀取。
步驟S200,獲取至少一個手指(或手寫筆)在觸控面板上的輸入手勢。如第二圖所示,該觸控資訊可以包括一個觸控點P的x座標、y座標、觸控點出現的初始時刻Tn、壓力大小及運動軌跡等資訊。如第三圖所示,該觸控資訊還可以包括多個觸控點Pi的連線距離D、連線之間的夾角θ、由連線所組成的多邊形G的面積A及多個觸控點的質心M座標等資訊。
步驟S300,根據上述觸控資訊判斷輸入手勢是否符合該通用手勢的規則。可以根據觸控資訊來判斷出使用者是否確定要做出“抓”這一通用手勢。如果該輸入手勢不符合該通用手勢的規則,則進入步驟S350,將觸控資訊直接發送到一處理器,並且由作業系統依據該觸控資訊來執行對應的一系統操控指令,例如:點選、移動等指令。如果該輸入手勢符合該通過手勢的規則,則進入步驟S400,發送一個事件信號到處理器。
由於觸控資訊的內容比較豐富,因此步驟S300的判斷過程也可以有多種,以下僅列舉其中兩種進行說明。請參閱第四圖,第一種判斷方法包括如下步驟:
步驟S301,判斷初始時刻Tn觸控面板上是否有三個或以上的觸控點。即判斷觸控點Pi的數量i是否大於等於3,一般來說i5。
在一個實施例中,如果觸控點Pi的數量i小於3,這說明只有一個或兩個手指在接觸觸控板,則進行到步驟S330,再此確定該輸入手勢不符合該通用手勢的規則,接著進入步驟S350(見第一圖),將觸控資訊直接發送到一處理器,並且由作業系統依據該觸控資訊來執行對應的一系統操控指令,例如:點選、移動等指令。如果觸控點Pi的數量i大於等於3,則進入步驟S302,將所有的觸控點Pi連接成一多邊形Gn
步驟S303,判斷Tn+1時刻的所有的觸控點是否存在。Tn+1時刻與Tn時刻間隔1幀(frame)。單幀的時間長度可以由觸控面板的掃描頻率所確定。當判斷為否,即至少一個觸控點在Tn+1時刻消失時,進入步驟S330。
當判斷為是時,進入步驟S304,將所有的觸控點Pi連接成一多邊形Gn+1
步驟S305,判斷Tn+2時刻的所有的觸控點是否存在。同理,Tn+2時刻與Tn+1時刻間隔也為1幀。當判斷為否時,返回步驟S330。
當判斷為是時,進入步驟S306,將所有的觸控點連接成一多邊形Gn+2
步驟S307,判斷多邊形Gn的面積An是否大於多邊形Gn+1的面積An+1,且多邊形Gn+1的面積An+1是否大於多邊形Gn+2的面積An+2。換句話說,也就是判斷在一第一預定時間(以3幀為例)內所有觸控點Pi均存在的條件下,所有觸控點Pi所連接形成的多邊形G的面積A是否隨著時間的增加而減小(面積與時間成反比)。其中,多邊形Gn的面積An可以使用業內的習知方法,通過Pi的座標計算得到。
當步驟S307的判斷結果為是時,進入步驟S308,檢測出該輸入手勢符合該通用手勢的規則。請同時參閱第七圖至第九圖,當An>An+1>An+2時,即面積在逐漸收縮時,說明所有的觸控點都在相互靠攏,構成“抓”的手勢。反之若An>An+1>An+2不成立時,則表示至少有一個觸控點在做與其他觸控點相遠離的運動,沒有構成“抓”的手勢。當步驟S307的判斷結果為否時,返回步驟S330。
由上述步驟可知,只需採集3個幀(Tn、Tn+1、Tn+2)的資料即可判斷出使用者是否做出了該通用手勢。為了獲得更加精確的手勢判斷結果,也可以延長第一設定時間的長度,以增加幀的比對次數。
在更為優選的方案裡,在步驟S308檢測出該輸入手勢符合該通用手勢的規則之後,還包括步驟S309,判斷所有觸控點Pi是否進一步在一第二預定時間Tn+2+m(m為任意自然數)內全部消失。其中第二預定時間是依據實際設計所需來設定,在此並無加以限制。若步驟S309的判斷結果為是,則表示所有手指在第二預定時間內全部同時或依序離開觸控面板,於是進入步驟S310,以確認該輸入手勢符 合該通用手勢的規則為成立。反之,若步驟S309的判斷結果為否,則表示在檢測出該輸入手勢符合該通用手勢的規則之後的第二預定時間內有至少一手指離開觸控面板,但其餘手指並未接續著離開,而逾第二預定時間,於是進入步驟330,確認該輸入手勢符合該公用手勢的規則為不成立。
請參閱第五圖,第二種判斷方法包括如下步驟:
步驟S311,判斷初始時刻Tn觸控面板上是否有三個或以上的觸控點。即判斷觸控點Pi的數量i是否大於等於3,一般來說i5。
如果觸控點Pi的數量i小於3,這說明只有一個或兩個手指在接觸觸控板,則進行到步驟S330,再此確定該輸入手勢不符合該通用手勢的規則,接著進入步驟S350,將觸控資訊直接發送到一處理器,並且由作業系統依據該觸控資訊來執行對應的一系統操控指令,例如:點選、移動等指令。如果觸控點Pi的數量i大於等於3,則進入步驟S312,獲取相鄰兩觸控點之間的距離Dijn
步驟S313,判斷Tn+1時刻的所有的觸控點是否存在。Tn+1時刻與Tn時刻間隔1幀(frame)。單幀的時間長度可以由觸控面板的掃描頻率所確定。當判斷為否時,即至少一個觸控點在Tn+1時刻消失,進入步驟S330。
當判斷為是時,進入步驟S314,獲取相鄰各觸控點之間的距離Dij(n+1)
步驟S315,判斷Tn+2時刻的所有的觸控點是否存在。同理,Tn+2時刻與Tn+1時刻間隔也為1幀。當判斷為否時, 進入步驟S330。
當判斷為是時,進入步驟S316,獲取相鄰各觸控點之間的距離Dij(n+2)
步驟S317,判斷Dijn是否大於Dij(n+1),且Dij(n+1)是否大於Dij(n+2)。換句話說,也就是判斷在一第一預定時間(以3幀為例)內所有觸控點Pi均存在的條件下,相鄰各觸控點之間的距離Dij是否隨著時間的增加而減小(距離與時間成反比)。
當步驟S317的判斷結果為是時,進入步驟S318,檢測出該輸入手勢符合該通用手勢的規則。請同時參閱第七圖至第九圖,當Dijn>Dij(n+1)>Dij(n+2)時,即相鄰觸控點的距離逐漸減小時,說明所有的觸控點都在相互靠攏,構成“抓”的手勢。反之若Dijn>Dij(n+1)>Dij(n+2)不成立時,則表示至少有一個觸控點在做與其他觸控點相遠離的運動,沒有構成“抓”的手勢。當步驟S317的判斷結果為否時,進入步驟S330。
在優選的實施例中,在步驟S318檢測出該輸入手勢符合該通用手勢的規則之後,還包括步驟S319,判斷所有觸控點Pi是否進一步在一第二預定時間(Tn+2+m)內全部消失。其中第二預定時間是依據實際設計所需來設定,在此並無加以限制。若步驟S319的判斷結果為是,則表示所有手指在第二預定時間內全部同時或依序離開觸控面板,於是進入步驟S320,以確認該輸入手勢符合該通用手勢的規則為成立。反之,若步驟S319的判斷結果為否,則表示在檢測出該輸入手勢符合該通用手勢的規則之後的第二預定時間 內有至少一手指離開觸控面板,但其餘手指並未接續著離開,而逾時第二預定時間,於是進入步驟S330,確認該輸入手勢符合該公用手勢的規則為不成立。
附帶一提的是,上述第四圖及第五圖的實施例分別是以多邊形的面積及各邊長度(相鄰兩點的距離)來判斷是否構成“抓”的手勢。然而,在實際設計上,若為了更精確地判斷出“抓”的手勢的話,可在各幀時間中,進一步加以判斷某一觸控點與其相鄰兩個觸控點連線所形成的夾角在靠攏過程中是否維持相同的角度。換句話說,當各觸控點Pi在靠攏的過程中需為直線移動的狀態,讓所形成的夾角維持相同的角度時,才可被判定為“抓”的手勢。
如上所述,當執行第二圖中的步驟S310或第三圖中的步驟S320之後,即可確認該輸入手勢符合該通用手勢的規則為成立。於是,便可進一步進入第一圖中的步驟S400,發送一個事件(Event)信號到處理器。
該事件信號可由以下欄位所組成:型態:長度=2bits,01=3指,10=4指,11=5指;區域:長度=14bits,數值範圍=0-16384;位置:長度=16bits,數值範圍=0-65535。
步驟S500,判斷是否由應用程式來回應該事件信號。處理器根據上述事件信號的型態、區域、位置等資訊來判斷是由作業系統還是由應用程式來回應該事件信號。以下以一個實施例來說明上述判斷過程。請參閱第六圖,該判斷方法包括:
步驟S510、確定三個或以上觸控點Pi的質心位置。
多個觸控點Pi的質心位置可以由多種方法確定,最簡單的方法是直接獲取由Pi連接成一多邊形Gn的幾何中心。設每個觸控點Pi的座標為(xi,yi),其中i=1,2,3...n,n3;則質心點M的座標為()。
當然也可以採用內接圓或外接圓的圓心來作為質心,還可以根據每個點的壓力大小不同確定出一個中心來作為質心。
步驟S520,判斷該質心是否位於該應用程式的視窗的區域內。一般的應用程式的視窗只佔作業系統的桌面(desktop)的部分區域。當判斷的結果為質心點的座標是位於該部分區域所覆蓋的範圍內時,說明使用者正在對應用程式進行操作,則進入步驟S530。當判斷的結果為質心點的座標是位於該部分區域所覆蓋的範圍外時,則表示使用者正在對作業系統進行操作,進入步驟S540,由作業系統來回應該事件信號,於是,便進入如第一圖所示的步驟S800。
步驟S530,由應用程式來回應該事件信號。於是,便可進一步進入第一圖中的步驟S600。
步驟S600,當判斷由該應用程式來回應該事件信號的結果為是時,將該事件信號放入該應用程式的事件序列表(Event Queue)中。附帶一提的是,本領域技術人員可以瞭解,一般在系統及應用程式之間進行信號傳輸時,通常會進一步將該信號進行封裝等處理以使其符合收發格式之後再進行傳輸。
接著進入步驟S700,該應用程式從該事件序列表中取 得該事件信號並產生對應顯示于該應用程式的介面的可供使用者選擇的手勢功能列。該手勢功能列可以是一個連結多個動作指令的地圖,其包含多個圖形元素(GUI Elements),並可讓用戶得以選擇和操作手勢功能列中的各個圖形元素,以執行應用程式所支援的手勢操作功能。舉例來說,使用者可以通過上述圖形元素實現(包括但不限於)打開新視窗、關閉視窗、刪除、改名、全選、剪切、複製、粘貼、取消、確認、旋轉、拖拽、放大、縮小、組合、分離、斜體、加粗、加底線、前近、後退、播放、暫停、無聲等等。
當判斷由該應用程式來回應該事件信號的結果為否時,進入步驟S800,作業系統產生對應顯示於該作業系統的介面的手勢功能列。
請參閱第十圖,所示為一實施例的手勢識別系統的架構示意圖。手勢識別系統100可應用於個人電腦系統,諸如桌面型、筆記本型、平板型或手持電腦;還可應用於諸如手機、PDA(Personal Digital Assistant)、媒體播放機、消費類電子設備等具有計算功能的電子設備。
第十圖所示的示例性的手勢識別系統100包括配置用於執行指令並完成與手勢識別系統相關的操作的處理器10。例如,利用例如從記憶體獲取的指令,處理器10可以控制手勢識別系統100的各元件之間輸入和輸出資料的接收和操縱。處理器10可以在單晶片、多晶片或多個電子元件上實現。例如,多種體系結構可被用於處理器10,包括專用或嵌入式處理器、專用處理器、控制器、ASIC (Application Specific Integrated Circuit)等等。
手勢識別系統100還包括與處理器10相連的記憶體20,記憶體20用於存儲作業系統21(OS)。記憶體20通常是用來存儲或提供由手勢識別系統100使用的電腦代碼和資料的地方。舉例來說,記憶體20可包括唯讀記憶體(ROM)、隨機存取記憶體(RAM)、硬碟驅動器等等。如有必要,記憶體20還可包括移動存儲媒介。移動存儲媒介包括CD-ROM、PC-CARD、記憶卡、軟碟、磁帶或網路存儲元件。作業系統21是眾所周知的,將不再更加詳細地描述。舉例來說,作業系統21可為Windows、OS/2、DOS、Unix、Linux、PalmOS等等。作業系統21也可以是專用作業系統,如可能會用於有限用途的應用型計算設備。
記憶體20還用於存儲位於作業系統21上層的應用程式(AP,application program)22。應用程式22也是眾所周知的,是指為了完成某項或某幾項特定任務而被開發運行於作業系統21之上的電腦程式,例如可為文字、影像處理程式、音像處理常式、資料分析程式、及遊戲程式等。本領域技術人員可以瞭解,目前的作業系統21和應用程式22大多採用圖形使用者介面(GUI)的設計。一般來說,GUI即是以圖形圖像來表示程式、檔和操作選項,用以提供使用者一個易於使用的操作介面。
手勢識別系統100還包括可操作地連接到處理器10的顯示裝置30。顯示裝置30可以是液晶顯示器(LCD)、陰極射線管(CRT)顯示器等等。顯示裝置30還可以是等離子體顯示器或以電子墨水實現的顯示器。作業系統21和應用程 式22的操作介面均通過顯示裝置30得以顯示給使用者。
手勢識別系統100還包括與顯示裝置30相結合,且可操作地連接到處理器10的觸摸感應設備40。觸摸感應設備40可以基於各種感應技術,包括但不限於電容感應、電阻感應、表面聲波感應、壓力感應、光感應等等。觸摸感應設備40配置用於將所接收的外部資料從外部世界傳送到處理器10中。觸摸感應設備40可包括配置用於感應使用者的觸擊操作的觸控面板41和與該觸控面板41相連的觸控積體電路(IC)42。在多數情況下,觸控面板41用於識別使用者在其表面上的觸控資訊。觸控積體電路42內設有固件(firmware),包括用於儲存一通用手勢的規則的通用手勢儲存模組421,和用於判斷該輸入手勢是否符合該通用手勢的規則的判斷模組422。
如前所述,通用手勢儲存模組421可以儲存“抓”、“敲擊”、“拖放”、“旋轉”、“縮放”等通用手勢,本實施方式中,以“抓”來說明。
判斷模組422可以根據觸控資訊來判斷出使用者是否做出了“抓”這一通用手勢。具體判斷過程可以參考第四圖至第五圖及前述內容。
觸控積體電路42還能夠在當該輸入手勢符合該通用手勢的規則時,發送一事件(Event)信號給處理器10。
處理器10根據上述事件信號的型態、區域、位置等資訊來判斷是由作業系統21還是由應用程式22來回應該事件信號,例如可以採用前述確定觸控點質心位置的方法來判斷是由作業系統21還是由應用程式22來回應該事件信 號。
當判斷由應用程式22來回應該事件信號時,處理器10將該事件信號封裝後放入應用程式22的事件序列表(圖未示)中。應用程式22在處理器10的控制下,從該事件序列表中取得該事件信號並產生對應的可供使用者選擇的手勢功能列24,並將該手勢功能列24顯示在其操作介面上。本實施例中,應用程式22產生的手勢功能列24同樣是屬於圖形使用者介面,以供使用者選擇和操作。
值得一提的是,本實施例的手勢功能列24中的各個圖形元素(Element)是分別對應該應用程式22所支援的手勢操作功能。例如:在用於檢視圖片的應用程式22中,所對應產生的手勢功能列24即可具有分別代表諸如顯示幕的滾動、圖片的旋轉、放大及縮小等手勢操作功能的圖形元素,以供使用者點選來執行。當然,應用程式22除了本身預設的手勢操作功能之外,也可由使用者來自行新增定義所需的手勢操作功能,在此並未加以限制。如此,使用者在使用不同的應用程式22時,無需再針對各個應用程式22來記憶各種複雜手勢,只需做出一通用的手勢便可執行應用程式22所支援的手勢操作功能。
同理,當處理器10根據上述事件信號的型態、區域、位置等資訊判斷出由作業系統21來回應該事件信號時,作業系統21在處理器10的控制下,產生對應可供使用者選擇的手勢功能列24,並將該手勢功能列24顯示在其操作介面上。
最後,若觸控積體電路42判斷該輸入手勢不符合該通 用手勢的規則時,或確認該輸入手勢符合該公用手勢的規則為不成立時,則直接將該觸控資訊作為一般的輸入信號發送至處理器10,由作業系統21依據該觸控資訊來執行對應的一系統操控指令(如點選、移動等)。
惟,以上所述,僅為本發明的具體實施例之詳細說明及圖式而已,並非用以限制本發明,本發明之所有範圍應以下述之申請專利範圍為準,任何熟悉該項技藝者在本發明之領域內,可輕易思及之變化或修飾皆可涵蓋在以下本案所界定之專利範圍。
100‧‧‧手勢識別系統
10‧‧‧處理器
20‧‧‧記憶體
21‧‧‧作業系統
22‧‧‧應用程式
24‧‧‧手勢功能列
30‧‧‧顯示設備
40‧‧‧觸摸感應設備
41‧‧‧觸控面板
42‧‧‧觸控積體電路
421‧‧‧通用手勢儲存模組
422‧‧‧判斷模組
A‧‧‧面積
D、D13n,D13(n+1),D13(n+2)‧‧‧距離
G、Gn,Gn+1,Gn+2‧‧‧多邊形
M‧‧‧質心點
P1,P2,P3,P4,P5‧‧‧觸控點
Tn,Tn+1,Tn+2‧‧‧時刻
θ‧‧‧夾角
S100至S700‧‧‧流程圖步驟說明
第一圖為一實施方式的手勢識別方法的流程示意圖;第二圖舉例說明了一個觸控點的觸控資訊;第三圖舉例說明了多個觸控點的觸控資訊;第四圖為一實施方式的判斷觸控資訊是否符合該通用手勢的規則的流程示意圖;第五圖為另一實施方式的判斷觸控資訊是否符合該通用手勢的規則的流程示意圖;第六圖為一實施方式的是否由應用程式來回應事件信號的判斷過程的流程示意圖;第七圖表示觸控點為三個時的通用手勢演示圖;第八圖表示觸控點為四個時的通用手勢演示圖;第九圖表示觸控點為五個時的通用手勢演示圖;及第十圖為一實施方式的手勢識別系統的架構示意圖。
(本案之指定代表圖為流程圖,故無元件符號簡單說明)

Claims (12)

  1. 一種手勢識別方法,包括:根據觸控面板上的觸控資訊判斷輸入手勢是否符合預先定義的通用手勢的規則;及當該輸入手勢符合該通用手勢的規則時,發送一事件信號,並根據該事件信號產生對應的手勢功能列,其中該通用手勢為三個或三個以上的手指所形成的抓的手勢;其中根據觸控面板上的觸控資訊判斷該輸入手勢是否符合該通用手勢的規則的步驟包括:判斷一初始時間該觸控面板上是否有三個或以上的觸控點;當判斷該初始時間的觸控點的結果為是時,進一步判斷在一第一預定時間內所有觸控點皆存在的條件下,所有觸控點所連接形成的一多邊形的面積是否與時間成反比或是相鄰各觸控點之間的距離是否與時間成反比;當判斷該多邊形的面積與時間的結果為是時,檢測出該輸入手勢符合該通用手勢的規則;以及當判斷該相鄰各觸控點之間的距離與時間的結果為是時,檢測出該輸入手勢符合該通用手勢的規則。
  2. 如申請專利範圍第1項所述的手勢識別方法,還包括:判斷是否由應用程式來回應該事件信號。
  3. 如申請專利範圍第2項所述的手勢識別方法,其中當判斷結果為由該應用程式來回應該事件信號時,進一步包括: 將該事件信號放入該應用程式的事件序列表中;及該應用程式從該事件序列表中取得該事件信號並顯示與該應用程式相對應的手勢功能列。
  4. 如申請專利範圍第2項所述的手勢識別方法,其中當判斷結果為不由該應用程式來回應該事件信號時,進一步包括:顯示與作業系統相對應的手勢功能列。
  5. 如申請專利範圍第1項所述的手勢識別方法,其中判斷所述多邊形的面積是否與時間成反比的步驟進一步包括:判斷在該第一預訂時間內所有觸控點是否保持存在;及當在該第一預定時間內有至少一該些觸控點消失時,或者判斷該多邊形的面積與時間成反比的結果為否時,確認該輸入手勢符合該通用手勢的規則為不成立。
  6. 如申請專利範圍第1項所述的手勢識別方法,其中判斷相鄰各觸控點之間的距離是否與時間成反比的步驟進一步包括:判斷在該第一預訂時間內所有觸控點是否保持存在;及當在該第一預定時間內有至少一該些觸控點消失時,或者判斷相鄰各觸控點之間的距離與時間的結果為否時,確認該輸入手勢符合該通用手勢的規則為不成立。
  7. 如申請專利範圍第2項所述的手勢識別方法,其中判斷是否由應用程式來回應該事件信號的步驟包括:確定該三個或以上觸控點的質心;判斷該質心是否位於該應用程式的視窗的區域內;當判斷該質心位置的結果為是時,由該應用程式來回應該事件信號;及 當判斷該質心位置的結果為否時,由作業系統來回應該事件信號。
  8. 如申請專利範圍第7項所述的手勢識別方法,其中確定該三個或以上觸控點的質心的步驟為:設每個觸控點Pi的座標為(xi,yi),其中i=1,2,3...n,n3;則質心點M的座標為()。
  9. 如申請專利範圍第1項所述的手勢識別方法,其中根據觸控面板上的觸控資訊判斷該輸入手勢是否符合該通用手勢的規則的步驟還包括:在檢測出該輸入手勢符合該通用手勢的規則之後,判斷所有觸控點是否進一步在一第二預定時間內全部消失;若判斷所有觸控點是否全部消失的結果為是時,確認該輸入手勢符合該通用手勢的規則為成立;及若判斷所有觸控點是否全部消失的結果為否時,確認該輸入手勢符合該公用手勢的規則為不成立。
  10. 如申請專利範圍第1項所述的手勢識別方法,其中當判斷該輸入手勢是否符合該通用手勢的規則的結果為否時,作業系統依據該觸控資訊來執行對應的系統操控指令。
  11. 一種觸控系統,其特徵在於,包括:觸控面板,用於獲取至少一個手指觸碰所產生的觸控資訊;觸控積體電路,當根據該觸控面板上的觸控資訊判斷輸入手勢符合該通用手勢的規則時,發送一事件信號,其中該通用手勢為三個或三個以上的手指所形成的抓 的手勢;及處理器,根據該事件信號控制作業系統或應用程式來產生對應的手勢功能列;其中該觸控積體電路判斷一初始時間該觸控面板上是否有三個或以上的觸控點;當判斷該初始時間的觸控點的結果為是時,進一步判斷在一第一預定時間內所有觸控點皆存在的條件下,所有觸控點所連接形成的一多邊形的面積是否與時間成反比或是相鄰各觸控點之間的距離是否與時間成反比;當判斷該多邊形的面積與時間的結果為是時,該觸控積體電路檢測出該輸入手勢符合該通用手勢的規則;以及當判斷該相鄰各觸控點之間的距離與時間的結果為是時,該觸控積體電路檢測出該輸入手勢符合該通用手勢的規則。
  12. 如申請專利範圍第11項所述的觸控系統,其中當該處理器判斷由該應用程式來回應該事件信號時,該處理器將該事件信號放入該應用程式的事件序列表中,使得該應用程式從該事件序列表中取得該事件信號並顯示與該應用程式相對應的手勢功能列。
TW101120834A 2011-07-25 2012-06-11 手勢識別方法及觸控系統 TWI467438B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110209024.4A CN102902469B (zh) 2011-07-25 2011-07-25 手势识别方法及触控***

Publications (2)

Publication Number Publication Date
TW201305878A TW201305878A (zh) 2013-02-01
TWI467438B true TWI467438B (zh) 2015-01-01

Family

ID=46545615

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101120834A TWI467438B (zh) 2011-07-25 2012-06-11 手勢識別方法及觸控系統

Country Status (6)

Country Link
US (1) US8847904B2 (zh)
EP (1) EP2551759A3 (zh)
JP (1) JP5784551B2 (zh)
KR (1) KR101502659B1 (zh)
CN (1) CN102902469B (zh)
TW (1) TWI467438B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI698775B (zh) * 2018-11-27 2020-07-11 英華達股份有限公司 手勢控制裝置及其方法

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201432490A (zh) * 2013-02-04 2014-08-16 Hon Hai Prec Ind Co Ltd 電子裝置和用於電子裝置中的解鎖方法
US11209975B2 (en) 2013-03-03 2021-12-28 Microsoft Technology Licensing, Llc Enhanced canvas environments
JP5862587B2 (ja) * 2013-03-25 2016-02-16 コニカミノルタ株式会社 ジェスチャ判別装置、ジェスチャ判別方法、およびコンピュータプログラム
CN103345360B (zh) * 2013-06-21 2016-02-10 广东欧珀移动通信有限公司 一种智能终端触摸屏手势识别方法
TWI496069B (zh) * 2013-06-28 2015-08-11 Insyde Software Corp Method of Judging Electronic Device and Multi - window Touch Command
KR101488193B1 (ko) * 2013-09-04 2015-01-30 에스케이 텔레콤주식회사 상황 인지 기반의 명령 수행 방법 및 장치
TWI502413B (zh) * 2013-10-07 2015-10-01 Wistron Corp 光學觸控裝置及其手勢偵測方法
TWI528271B (zh) 2013-12-16 2016-04-01 緯創資通股份有限公司 多邊形手勢偵測及互動方法、裝置及電腦程式產品
CN105446635A (zh) * 2014-08-25 2016-03-30 纬创资通股份有限公司 触控显示装置及窗口共享方法
CN105700784A (zh) * 2014-11-28 2016-06-22 神讯电脑(昆山)有限公司 触控输入方法及其电子装置
TWI578213B (zh) * 2014-12-11 2017-04-11 義隆電子股份有限公司 觸控信號的處理方法及電腦系統
US20170090606A1 (en) * 2015-09-30 2017-03-30 Polycom, Inc. Multi-finger touch
CN105607832B (zh) * 2015-12-21 2021-02-19 联想(北京)有限公司 一种信息处理方法及电子设备
CN106325704A (zh) * 2016-08-06 2017-01-11 广东欧珀移动通信有限公司 一种统一视频播放应用中的滑动功能的方法及装置
CN109739422B (zh) * 2018-05-14 2020-02-18 北京字节跳动网络技术有限公司 一种窗口控制方法、装置及设备
CN112181265B (zh) * 2019-07-04 2022-04-15 北京小米移动软件有限公司 一种触控信号处理方法、装置及介质
CN112527180B (zh) * 2019-09-17 2022-03-08 北京小米移动软件有限公司 触摸事件识别方法、装置、设备及存储介质
TWI779310B (zh) * 2019-09-26 2022-10-01 華碩電腦股份有限公司 電子裝置之控制方法
TWI769502B (zh) * 2020-08-21 2022-07-01 大陸商北京集創北方科技股份有限公司 觸控識別方法及利用其之觸控模組與資訊處理裝置
CN113535057B (zh) * 2021-06-28 2022-12-16 荣耀终端有限公司 一种手势交互方法及终端设备
TWI828559B (zh) * 2023-03-17 2024-01-01 達運精密工業股份有限公司 觸控系統及觸控方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101052939A (zh) * 2004-07-30 2007-10-10 苹果电脑有限公司 用于触敏输入设备的基于模式的图形用户接口
TW201122890A (en) * 2009-12-18 2011-07-01 Best Solution Technology Inc Touch-control lock operated according to gesture or figure.
TWM407442U (en) * 2011-02-11 2011-07-11 Top Victory Invest Ltd Gesture-based power management of touch display

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9292111B2 (en) 1998-01-26 2016-03-22 Apple Inc. Gesturing with a multipoint sensing device
JP4684745B2 (ja) * 2005-05-27 2011-05-18 三菱電機株式会社 ユーザインタフェース装置及びユーザインタフェース方法
US8681104B2 (en) * 2007-06-13 2014-03-25 Apple Inc. Pinch-throw and translation gestures
TW200925952A (en) 2007-12-05 2009-06-16 Elan Microelectronics Corp Method for manipulating objects on a touch screen by means of several fingers
CN101571773A (zh) * 2008-05-04 2009-11-04 升达科技股份有限公司 多手指手势编码方法与编码***
JP2010015238A (ja) * 2008-07-01 2010-01-21 Sony Corp 情報処理装置、及び補助情報の表示方法
US8169414B2 (en) * 2008-07-12 2012-05-01 Lim Seung E Control of electronic games via finger angle using a high dimensional touchpad (HDTP) touch user interface
JP5136292B2 (ja) * 2008-08-26 2013-02-06 日本電気株式会社 情報処理端末のアプリケーション起動方法、情報処理端末及びプログラム
US8217909B2 (en) * 2008-12-19 2012-07-10 Cypress Semiconductor Corporation Multi-finger sub-gesture reporting for a user interface device
CN101770332A (zh) * 2009-01-05 2010-07-07 联想(北京)有限公司 一种用户界面方法、用户界面装置及终端
CN102326136A (zh) * 2009-02-23 2012-01-18 捷讯研究有限公司 触摸敏感显示器及其控制方法
US8566044B2 (en) * 2009-03-16 2013-10-22 Apple Inc. Event recognition
CN101866253B (zh) * 2009-04-20 2013-03-20 禾瑞亚科技股份有限公司 电阻式多点触控装置及方法
JP2011003074A (ja) * 2009-06-19 2011-01-06 Sharp Corp 入力方法、入力装置及び電気機器
EP3855297A3 (en) * 2009-09-22 2021-10-27 Apple Inc. Device method and graphical user interface for manipulating user interface objects
JP5501715B2 (ja) * 2009-09-28 2014-05-28 Necパーソナルコンピュータ株式会社 ユーザインターフェース装置、ユーザインターフェース装置の制御方法、及びプログラム
JP5061176B2 (ja) * 2009-12-22 2012-10-31 ヤフー株式会社 情報表示装置、情報表示方法、およびそのプログラム
US8232990B2 (en) * 2010-01-05 2012-07-31 Apple Inc. Working with 3D objects
US20110296333A1 (en) * 2010-05-25 2011-12-01 Bateman Steven S User interaction gestures with virtual keyboard
JPWO2012043360A1 (ja) * 2010-09-29 2014-02-06 Necカシオモバイルコミュニケーションズ株式会社 情報処理装置、その制御方法及びプログラム
US8572508B2 (en) * 2010-11-22 2013-10-29 Acer Incorporated Application displaying method for touch-controlled device and touch-controlled device thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101052939A (zh) * 2004-07-30 2007-10-10 苹果电脑有限公司 用于触敏输入设备的基于模式的图形用户接口
TW201122890A (en) * 2009-12-18 2011-07-01 Best Solution Technology Inc Touch-control lock operated according to gesture or figure.
TWM407442U (en) * 2011-02-11 2011-07-11 Top Victory Invest Ltd Gesture-based power management of touch display

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI698775B (zh) * 2018-11-27 2020-07-11 英華達股份有限公司 手勢控制裝置及其方法

Also Published As

Publication number Publication date
CN102902469A (zh) 2013-01-30
US20130027327A1 (en) 2013-01-31
US8847904B2 (en) 2014-09-30
KR20130012543A (ko) 2013-02-04
CN102902469B (zh) 2015-08-19
JP5784551B2 (ja) 2015-09-24
KR101502659B1 (ko) 2015-03-13
EP2551759A3 (en) 2014-12-10
EP2551759A2 (en) 2013-01-30
JP2013025797A (ja) 2013-02-04
TW201305878A (zh) 2013-02-01

Similar Documents

Publication Publication Date Title
TWI467438B (zh) 手勢識別方法及觸控系統
US10949082B2 (en) Processing capacitive touch gestures implemented on an electronic device
EP2715491B1 (en) Edge gesture
KR101270847B1 (ko) 터치 감지 입력 장치용 제스처
US9348458B2 (en) Gestures for touch sensitive input devices
KR101424294B1 (ko) 터치스크린 장치의 사용자로부터 수신된 입력 및 제스쳐에 응답하여 동작을 수행하는 컴퓨터로 구현된 방법 및 컴퓨터판독가능 매체
US20080134078A1 (en) Scrolling method and apparatus
TWI451309B (zh) Touch device and its control method
TWI463355B (zh) 多點觸控介面之訊號處理裝置、訊號處理方法及使用者介面圖像選取方法
TW201602893A (zh) 附加資訊提供方法及使用其的觸控顯示裝置
WO2012166177A1 (en) Edge gesture
EP2715504A1 (en) Edge gesture
US9256360B2 (en) Single touch process to achieve dual touch user interface
TWI768407B (zh) 預測控制方法、輸入系統及電腦可讀取記錄媒體
TWI270819B (en) Drag-touch control method and control module for same
US10915240B2 (en) Method of selection and manipulation of graphical objects

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees