專利名稱:一種觸摸手勢的識別方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種計算機識別技術(shù),特別涉及一種觸摸手勢的識別方法和 裝置。
背景技術(shù):
隨著計算機技術(shù)的不斷發(fā)展,觸摸屏作為 一種方便直觀的人機接口得到 越來越廣泛的應用,并且,對觸摸屏的觸摸方式從單點觸摸逐漸向多點觸摸 發(fā)展。多點觸摸主要是兩點觸摸,即兩根手指在觸摸屏上觸摸和滑動形成特
定的手勢來表示某種特定操作,兩點觸摸主要體現(xiàn)為兩種觸摸手勢 一種為 一根手指固定在觸摸屏上輸入一個固定點,另 一根手指相對該固定點進行直 線相離或相向的伸縮運動,這種手勢可以用來表示對圖像的放大或縮小操 作;另一種為一根手指固定在觸摸屏上輸入一個固定點,另一根手指相對該
固定點按順時針或逆時針做旋轉(zhuǎn)運動,這種手勢可以用來表示對圖像進行順 時針或逆時針旋轉(zhuǎn)操作。
觸摸屏主要分為兩種, 一種是電容式觸摸屏, 一種是電阻式觸摸屏。其 中,電容式觸摸屏由于具有多點檢測功能,可以分別提供兩點觸摸過程中各 點的位置信息,即第一根手指輸入的固定點的位置,以及另一根手指做出的 軌跡中各點的位置,因此,很容易判斷出另一根手指做出的軌跡中各點相對 于固定點的運動方式,因而很容易實現(xiàn)兩點觸摸的觸摸手勢識別。
然而,由于電阻時觸摸屏是由橫向和縱向兩組相互間隔的電阻絲構(gòu)成, 在對觸摸屏進行觸摸時,觸摸點上的兩組電阻絲接觸,從而改變了橫向和縱 向電阻層的電阻值,繼而改變了電壓,通過檢測橫向和縱向的電壓值來檢測 觸摸點的橫向和縱向的位置。對于兩點觸摸,電阻式觸摸屏檢測到的是兩點
7之間的中間點的位置,對于上述兩種觸摸手勢,電阻式觸摸屏檢測到的是第 二根手指做出的軌跡中各點分別與第一根手指的固定點之間的中間值軌跡, 因此,并不能得出另一手勢相對于固定點的位置值,這便給電阻式觸摸屏的 兩點觸摸手勢識別帶來了一定的困難。而現(xiàn)有技術(shù)中尚沒有一種方式能夠?qū)?電阻式觸摸屏的兩點觸摸手勢進行識別。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供了一種觸摸手勢的識別方法和裝置,以便于實現(xiàn) 對電阻式觸摸屏的兩點觸摸手勢進行識別。
本發(fā)明提供的技術(shù)方案為 一種觸摸手勢的識別方法,該方法包括
A、 從電阻式觸摸屏檢測到的手勢軌跡上按順序采集至少4個點的坐標數(shù)
據(jù);
B、 利用所述坐標數(shù)據(jù)確定采集到的各點相對于采集到的第一點旋轉(zhuǎn)的角 度,并比較各點相對于第一點旋轉(zhuǎn)的角度;
C、 根據(jù)所述步驟B得到的比較結(jié)果確定觸摸手勢為旋轉(zhuǎn)運動或伸縮運動。 本發(fā)明還提供了一種觸摸手勢的識別裝置,該裝置包括數(shù)據(jù)采集單元、
信息比較單元和手勢確定單元;
所述數(shù)據(jù)采集單元,用于從電阻式觸摸屏檢測到的手勢軌跡上按順序采集 至少4個點的坐標數(shù)據(jù),并將采集到的坐標數(shù)據(jù)提供給所述信息比較單元;
所述信息比較單元,用于根據(jù)所述坐標數(shù)據(jù)確定采集到的各點相對于采集 到的第一點旋轉(zhuǎn)的角度,比較各點相對于第一點旋轉(zhuǎn)的角度,并將比較結(jié)果提 供給所述手勢確定單元;
所述手勢確定單元,用于根據(jù)所述比較結(jié)果確定觸摸手勢為旋轉(zhuǎn)運動或伸 縮運動。
由以上技術(shù)方案可以看出,本發(fā)明提供的方法和裝置,從電阻式觸摸屏 檢測到的手勢軌跡按順序采集至少4個點的坐標數(shù)據(jù);利用所述坐標數(shù)據(jù)確 定采集到的各點相對于采集到的第一點旋轉(zhuǎn)的角度,并將各點相對于第一點旋轉(zhuǎn)的角度進行比較;根據(jù)得到的比較結(jié)果確定觸摸手勢為旋轉(zhuǎn)運動或伸縮 運動。本發(fā)明根據(jù)電阻式觸摸屏不能檢測到兩點觸摸時兩點各自的位置,僅 能夠檢測到兩點之間中間點所形成的軌跡的缺點,確定采集到的各點相對于 采集到的第一點旋轉(zhuǎn)的角度,根據(jù)各點相對于第一點的旋轉(zhuǎn)角度來確定運動 趨勢,從而巧妙地實現(xiàn)對電阻式觸摸屏的兩點觸摸手勢進行識別。
圖1為本發(fā)明實施例提供的方法流程圖; 圖2為本發(fā)明實施例提供的采集方法流程圖; 圖3為本發(fā)明實施例提供的坐標變換示意圖; 圖4為本發(fā)明實施例提供的裝置結(jié)構(gòu)圖。
具體實施例方式
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖和具體 實施例對本發(fā)明進行詳細描述。
本發(fā)明提供的方法主要包括從電阻式觸摸屏檢測到的手勢軌跡按順序 采集至少4個點的坐標數(shù)據(jù);利用所述坐標數(shù)據(jù)確定采集到的各點相對于采 集到的第一點旋轉(zhuǎn)的角度,并將各點相對于第一點旋轉(zhuǎn)的角度進行比較;根 據(jù)該比較結(jié)果確定觸摸手勢為旋轉(zhuǎn)運動或伸縮運動。
在確定旋轉(zhuǎn)的角度時,可以利用各點的坐標數(shù)據(jù),從第三點開始逐一確 定各點和第一點之間的連線與第二點和第一點之間的連線所成的夾角;判斷 從第三點開始逐一確定的上述夾角是否為遞增或遞減順序并且上述夾角之 間的差值都大于設定的夾角閾值,如果是,則確定該手勢為旋轉(zhuǎn)運動;否則, 確定該手勢為伸縮運動。
當確定逆時針方向所成的夾角為正時,如果上述夾角是遞增順序,則確 定該手勢是逆時針運動,如果上述夾角是遞減順序,則確定該手勢是順時針 運動。另外,該方法還可以進一步從第二點開始逐一確定各點與第一點之間的 距離,在確定該手勢為伸縮運動后,進一步判斷從第二點開始逐一確定的所 述距離是否為遞增或遞減順序,如果是遞增順序,則確定該手勢為相離的伸 縮運動,如果遞減順序,則確定該手勢為相向的伸縮運動。
為了使上述方法更加明確,下面舉一個具體的實施例對上述方法進行詳 細描述。圖1為本發(fā)明實施例提供的方法流程圖,由于電阻式觸摸屏無法同 時檢測多個點的位置信息,因此,當兩點觸摸時,檢測到的是兩點之間中間 點的坐標數(shù)據(jù),當一根手指固定,另一根手指運動時,檢測到的是運動的手 指所成軌跡中各點與固定點之間的中間點所成的軌跡,由于該軌跡往往是不 規(guī)則的,因此很難直接從該軌跡的坐標數(shù)據(jù)中獲取觸摸手勢的運動信息,因 此,本發(fā)明主要是提供了一種方法,對該電阻式觸摸屏檢測到的軌跡進行邏 輯判別。由于極坐標能夠很容易和清晰的體現(xiàn)距離和夾角兩因素,因此,該
中以采集5個點為例,如圖1所示,該方法可以包括以下步驟
步驟101:從電阻式觸摸屏檢測到的手勢軌跡,按順序采集并記錄5個 點的坐標數(shù)據(jù)。
本步驟中在對各點的坐標數(shù)據(jù)進行采集的步驟可以由諸如TSC2046的 觸摸控制芯片執(zhí)行,該觸摸控制芯片能夠?qū)⒂|摸屏檢測到的手勢軌跡形成的 模擬信號轉(zhuǎn)換為數(shù)字信號,從而形成各點的坐標數(shù)據(jù)。在進行采集時,可以 采用以固定的距離間隔采集5個點的坐標數(shù)據(jù),也可以采用以固定的時間間 隔采集5個點的坐標數(shù)據(jù)。為了保證每個采集到的坐標數(shù)據(jù)能夠較為清楚和 準確的反映各點的運動趨勢,在數(shù)據(jù)采集時,可以預先設定一個距離閾值。 首先采集第一個點,將與第一點之間的距離達到預設閾值的點作為采集到的 第二點,將與第二點之間的距離達到預設閾值的點作為采集到的第三個點, 依次類推。具體采集的過程可以如圖2所示,即
步驟201:采集并記錄第 一像素點的坐標數(shù)據(jù)作為第 一點的坐標數(shù)據(jù)。
步驟202:獲取下一像素點的坐標數(shù)據(jù)。
10步驟203:判斷該像素點與記錄的上一點之間的距離是否達到預設的距 離閾值,如果是,執(zhí)行步驟204,否則執(zhí)行步驟206。
由于在手勢軌跡中每一像素都會具有坐標數(shù)據(jù),需要對這些像素的坐標 數(shù)據(jù)進行篩選,只有滿足距離要求的像素才會被采集和記錄,對于不滿足距 離要求的坐標數(shù)據(jù)則直接丟棄。
步驟204:采集并記錄該像素點的坐標數(shù)據(jù)。
對坐標數(shù)據(jù)進行記錄時,可以采用數(shù)組的方式進行記錄,當然,也可以 采用其它形式,本發(fā)明并不對具體的記錄方法做具體限制。
步驟205:判斷已經(jīng)記錄的點的數(shù)量是否達到5個,如果是,結(jié)束流程; 否則,轉(zhuǎn)至執(zhí)行步驟202。
步驟206:丟棄該像素點的坐標數(shù)據(jù),并轉(zhuǎn)至執(zhí)行步驟202。
另外,控制芯片采集到的坐標數(shù)據(jù),可以通過串行外圍設備接口 (SPI, Serial Peripheral Interface)發(fā)送給上位機,由上位機執(zhí)行以下步驟。上述采 集到的坐標數(shù)據(jù)可以是8位數(shù)據(jù),也可以是12位數(shù)據(jù),可以根據(jù)觸摸屏的 具體像素點多少進行比例縮放處理。該采集到的坐標數(shù)據(jù)是以整個觸摸屏作 為原直角坐標系的坐標數(shù)據(jù)。
步驟102:以第一點作為零點,第一點和第二點的連線作為X軸建立新 的直角坐標系,并利用采集到的其它點的坐標數(shù)據(jù)確定各點在新的直角坐標 系中的坐標數(shù)據(jù)。
為了方便采用極坐標的方式,確定各點和第一點之間的連線與第二點和 第一點之間的連線所成的夾角,以及各點與第一點之間的距離,首先在本步 驟中進行從原直角坐標系到新的直角坐標系的轉(zhuǎn)換,即首先獲取各點相對于 第 一 點的新的直角坐標數(shù)據(jù)。
新的直角坐標系中的坐標數(shù)據(jù)(XN , YN )的確定方法可以采用如下公 式進行計算XN = AYNsin(0)+AXNcos(。 (l)式 YN =AYNcos(<9)-AXNsin(0) (2)式其中,下標N表示采集的第N點;AYN = YN-Y,,即在原直角坐標系中 第N點的縱坐標與第l點的縱坐標之間的差值;AXk-Xn-X,,即在原直角 坐標系中第N點的橫坐標與第l點的橫坐標之間的差值;P為新的直角坐標 中的X軸與原直角坐標的X軸之間的夾角,即第一點與第二點之間連線與 原直角坐標中的X軸之間的夾角。
為了方便理解上述(1)式和(2)式的得出,根據(jù)圖3給出的示意圖, 以第三點為例進行以下簡單推導。第三點在新的直角坐標系中的橫坐標為線 段OQ的長度,縱坐標等于線段PQ的長度。
X3' = OQ = OM + MQ = AX3/ cos(。 + PM sin((9) =AX3/ cos(。 + ( AY3 - MN ) sin(<9) =AX3/ cos(。 + ( AY3 - AX3tan((9) ) sin(6>) =AY3 sin(<9)+ AX3 cos(。 Y3' = PQ = PM cos(6>) = ( AY3 -薩)cos(。 =(AY3 - AX3tan(6>)) cos(<9) =AY3 cos(60- AX3 sin(。
其它各點的推導方式與第三點相同,不再一一贅述。
步驟103:將新的直角坐標系轉(zhuǎn)換為極坐標系,即轉(zhuǎn)換為以第一點為極 點、第一點和第二點的連線為極軸的極坐標系,確定各點在極坐標系中的坐 標數(shù)據(jù)。
各點在在極坐標中的坐標數(shù)據(jù)通常表示為(LN, angleN),其中,LN為 第N點到極點即第一點之間的距離,anglew為第N點與極軸即第一點與第 二點連線之間的夾角。
由數(shù)學常識可得出LN = VXN2+Y: , angleN -artan ( YN/XN )。其中 artan ()為求反正切處理。
由于求反正切處理后夾角的范圍是-2到+工,所以,對于落在新直角
2 2坐標系中第二象限或第三象限的點需要進行修正,具體可以為:
>0,YN =0,則angle N=0;
如果Xn>0,YN>0,則angle N =artan ( YN/XN' ) x(180/;r );
如果Xn=0,YN>0,則angle N-卯;
如果Xn<0,YN>0,則angle N =180 + artan ( YN/XN00 x
如果Xn<0,YN=0,則angle N =180;
如果Xn<0,YN<0,貝'J angle N =180 + artan ( YN/XN')x (麗");
如果x;=0,YN<0,則angle N :=270;
如果Xn>0,YN<0,貝'J angle N =360 + artan ( YN/XN')x (麗T )。
在以上描述中均是將夾角轉(zhuǎn)換為角度的形式表示,當然,也可以采用弧 度的形式表示。
由于在進行距離判斷時,針對"的判斷和針對IV的判斷是相同的,因 此,為了避免繁瑣的開方運算,可以僅計算各點在極坐標系中與極點距離的
平方,WLN2 = XN2+Y^,利用L^來進行以下步驟的判斷。
步驟104:利用步驟103確定的各點在極坐標系中的坐標數(shù)據(jù),判斷第 三點、第四點、第五點分別與極軸的夾角是否為依次遞增或遞減的順序,并 且該夾角之間的差值都大于設定的夾角閾值,如果是,繼續(xù)執(zhí)行步驟105; 否則,執(zhí)行步驟106。
該步驟中,計算出第三點、第四點和第五點分別與極軸的夾角angle3、 angle4和angle5后,判斷是否是以下兩種情況之一 第一種是angle5-angle4>10且angle4- angle3>10, 第二種是angle3-angle4>10且angle4-angle5>10。如果是第一種,則上述夾角是遞增順序且夾角之間的差值大于 設定的夾角閾值,如果第二種,則上述夾角是遞減順序且夾角之間的差值大 于設定夾角閾值,該實施例采用的夾角闊值以IO度為例,具體可以根據(jù)實 際需求進行設定,例如,觸摸屏大小狀況等。
13步驟105:如果上述夾角是遞增順序,則確定該觸摸手勢為逆時針旋轉(zhuǎn) 運動,如果上述夾角是遞減順序,則確定該觸摸手勢為順時針旋轉(zhuǎn)運動,結(jié) 束流程。
由于在極坐標系中,逆時針方向所成的夾角為正,因此,當夾角是遞增 順序時,體現(xiàn)出各點的運動趨勢為逆時針旋轉(zhuǎn)運動,反之為順時針旋轉(zhuǎn)運動。
步驟106:利用步驟103確定的各點在極坐標系中的坐標數(shù)據(jù),判斷第 二點與第一點之間的距離、第三點與第一點之間的距離、第四點與第一點之
間點的距離和第五點與第一點之間的距離是否為遞增順序或遞減順序;如果 是,則執(zhí)行步驟107,否則,執(zhí)行步驟108。
如果步驟104判斷夾角不是遞增或遞減順序,或者,夾角之間的差值沒 有大于夾角閾值,可以直接確定該觸摸手勢為伸縮運動,也可以按照步驟 106至步驟108的方法進一步進行區(qū)分。
本實施例中在進行距離比較時,是從第二個點開始比較各點與第 一 點之 間的距離,當然,從第三個點開始比較,或者,在釆集的點數(shù)量足夠多時從 第四個點、第五個點等開始比較也是可以實現(xiàn)的,但是,本發(fā)明實施例給出 的從第二各點開始進行距離比較是最優(yōu)的實現(xiàn)方式,可以使得伸縮運動是相 離或相向伸縮運動的判斷更加準確。
步驟107:如果是遞增順序,則確定該觸摸手勢為相離伸縮運動;如果 是遞減順序,則確定該觸摸手勢為相向伸縮運動,結(jié)束流程。
距離為遞增順序,說明各點逐漸遠離第一點,因此,可以確定該觸摸手 勢為相離伸縮運動;距離為遞減順序,說明各點逐漸靠近第一點,因此,可 以確定該觸摸手勢為相向伸縮運動。
步驟108:無法準確識別該觸4莫手勢,或者將該觸4莫手勢識別為無效運 動,結(jié)束流程。
在該實施例中是采用從原直角坐標系轉(zhuǎn)換為新直角坐標系,再轉(zhuǎn)換為極 坐標系的方法,進行兩次坐標變換來確定各點與第 一點之間的夾角和距離, 除此之外,也可以采用其它的方式,例如,直接在原直角坐標系中,例如各點的坐標數(shù)據(jù)求取各點與第 一 點之間的距離,以及第三點與第 一 點之間連線 和第二點與第一點之間連線所形成的夾角。仍以第三點為例,第三點與第一
點之間的距離L;可以采用<formula>formula see original document page 15</formula>的方式直接計算,第三 點與第一點之間的連線和第二點與第一點之間連線所形成的夾角angle;可
以采用<formula>formula see original document page 15</formula>的方式直4妻i十算
以上是對本發(fā)明提供的方法進行的描述,下面對本發(fā)明提供的觸摸手勢的 識別裝置進行詳細描述。圖4為本發(fā)明實施例提供的裝置結(jié)構(gòu)圖,如圖4所示, 該裝置可以包括數(shù)據(jù)采集單元400、信息比較單元410和手勢確定單元420。
數(shù)據(jù)采集單元400,用于從電阻式觸摸屏檢測到的手勢軌跡按順序采集至 少4個點的坐標數(shù)據(jù),并將采集到的坐標數(shù)據(jù)提供給信息比較單元410。
信息比較單元410,用于根據(jù)坐標數(shù)據(jù)確定采集到的各點相對于采集到的 第一點旋轉(zhuǎn)的角度,將各點相對于第一點旋轉(zhuǎn)的角度進行比較,并將比較結(jié)果 提供給手勢確定單元420。
手勢確定單元420,用于根據(jù)信息比較單元410的比較結(jié)果確定觸摸手勢 為旋轉(zhuǎn)運動或伸縮運動。
其中,數(shù)據(jù)采集單元400采集的各點,使得各點之間的距離大于預設的距 離閾值,該數(shù)據(jù)采集單元400可以具體包括數(shù)據(jù)獲取子單元401、采集子單 元402和判斷子單元403。
數(shù)據(jù)獲取子單元401 ,按順序獲取手勢軌跡中各像素點的坐標數(shù)據(jù)。
采集子單元402,用于采集并記錄獲取到的手勢軌跡中第一像素點的坐標 數(shù)據(jù),采集并記錄判斷子單元403發(fā)送的像素點的坐標數(shù)據(jù),并向判斷子單元 403發(fā)送判斷通知。
判斷子單元403,用于利用數(shù)據(jù)獲取子單元401獲取的像素點的坐標數(shù)據(jù), 判斷當前像素點與采集子單元402記錄的上一像素點之間的距離是否達到預設 的距離閾值,如果是,將當前像素點的坐標數(shù)據(jù)發(fā)送給采集子單元402;否則,丟棄該像素點的坐標數(shù)據(jù),并通知數(shù)據(jù)獲取子單元401獲取下一像素點的坐標 數(shù)據(jù);接收到判斷通知后,判斷采集子單元402記錄的像素點的數(shù)量是否達到 預設的采集點數(shù)量,如果是,則通知數(shù)據(jù)獲取子單元401停止獲取像素點的坐 標數(shù)據(jù),否則,通知數(shù)據(jù)獲取子單元401獲取下一像素點的坐標數(shù)據(jù)。
其中,上述信息比較單元410可以包括夾角確定子單元411和夾角比較 子單元412。
夾角確定子單元411,用于利用數(shù)據(jù)采集單元401采集的坐標數(shù)據(jù),從采 集到的第三點開始逐一確定各點和第一點之間的連線與第二點和第一點之間的 連線所成的夾角。
夾角比較子單元412,用于判斷從第三點開始逐一確定的夾角是否為遞增 或遞減順序并且夾角之間的差值是否都大于設定的夾角閾值,并將判斷結(jié)果作 為比較結(jié)果發(fā)送給手勢確定單元420。
手勢確定單元420在接收到夾角比較子單元412的判斷結(jié)果為是時,確定 觸摸手勢為旋轉(zhuǎn)運動;在接收到判斷結(jié)果為否時,確定該觸摸手勢為伸縮運動。
上述的手勢確定單元420可以包括結(jié)果接收子單元421、旋轉(zhuǎn)確定子單 元422和伸縮確定子單元423。
結(jié)果接收子單元421,用于接收夾角比較子單元412發(fā)送的判斷結(jié)果,在 判斷結(jié)果為是時,將該判斷結(jié)果發(fā)送給旋轉(zhuǎn)確定子單元422,在判斷結(jié)果為否 時,將該判斷結(jié)果發(fā)送給伸縮確定子單元423。
旋轉(zhuǎn)確定子單元422,用于當預先設定逆時針方向所成的夾角為正時,如 果判斷結(jié)果為從第三點開始逐一確定的夾角為遞增順序,則確定該觸摸手勢為 逆時針旋轉(zhuǎn)運動;如果判斷結(jié)果為從第三點開始逐一確定的夾角為遞減順序, 則確定該觸摸手勢為順時針旋轉(zhuǎn)運動。
伸縮確定子單元423,在接收到判斷結(jié)果后,確定觸摸手勢為伸縮運動。
另外,由于在確定為伸縮運動后,可以進一步確定該伸縮運動是相向伸縮 運動還是相離伸縮運動,因此,信息比較單元410還可以包括距離確定子單 元413和距離比較子單元414。
16距離確定子單元413,用于利用坐標數(shù)據(jù)確定采集到的各點相對于第一點 的距離。
距離比較子單元414,用于將各點相對于第一點的距離進行比較。
此時,伸縮確定子單元423,在接收到判斷結(jié)果后,還用于獲取距離比較 子單元414的比較結(jié)果,如果各點相對于第一點的距離按照采集順序遞增,則 確定觸摸手勢為相離的伸縮運動,如果各點相對于第一點的距離按照采集順序 遞減,則確定觸摸手勢為相向的伸縮運動。
另外,上述夾角確定子單元411可以具體包括第一坐標變換模塊4111、 第二坐標變換模塊4112和夾角確定模塊4113。
第一坐標變換模塊4111,用于利用坐標數(shù)據(jù),以第一點作為零點,第一點 和第二點的連線作為X軸建立直角坐標系,并利用采集到各點的坐標數(shù)據(jù)確定 各點在該建立的直角坐標系中的坐標數(shù)據(jù)。
第二坐標變換模塊4112,用于將第一坐標變換模塊4111建立的直角坐標系 轉(zhuǎn)換為以第一點為極點、第一點和第二點的連線為極軸的極坐標系,確定各點 在該極坐標系中的坐標數(shù)據(jù),并將確定的各點在極坐標系中的坐標數(shù)據(jù)發(fā)送給 夾角確定模塊。
夾角確定模塊4113,用于利用接收到的坐標數(shù)據(jù)的角坐標值,確定各點和 第一點之間的連線與第二點和第一點之間的連線所成的夾角。
距離確定子單元413可以具體包括第三坐標變換模塊4131、第四坐標變 換模塊4132和距離確定模塊4133。
第三坐標變換模塊4131,用于利用坐標數(shù)據(jù),以第一點作為零點,第一點 和第二點的連線作為X軸建立直角坐標系,并利用采集到各點的坐標數(shù)據(jù)確定 各點在該建立的直角坐標系中的坐標數(shù)據(jù)。
第四坐標變換模塊4132,用于將第三坐標變換模塊建立的直角坐標系轉(zhuǎn)換 為以第一點為極點、第一點和第二點的連線為極軸的極坐標系,確定各點在該 極坐標系中的坐標數(shù)據(jù),并將確定的各點在極坐標系中的坐標數(shù)據(jù)發(fā)送給距離 確定模塊4133距離確定模塊4133,用于利用接收到的坐標數(shù)據(jù)的距離坐標值,確定各點 相對于第一點的距離。
上述夾角確定子單元411和距離確定子單元413可以設置為一個單元來實 現(xiàn),其中的第一坐標變換模塊4111和第三坐標變換模塊4131可以設置為一個 模塊來實現(xiàn),第二坐標變換模塊4112和第四坐標變換模塊4132可以設置為一 個模塊來實現(xiàn),夾角確定模塊4113和距離確定模塊4133可以設置為一個模塊 來實現(xiàn)。
由以上描述可以看出,本發(fā)明提供的方法和裝置,從電阻式觸摸屏檢測 到的手勢軌跡按順序采集至少4個點的坐標數(shù)據(jù);利用所述坐標數(shù)據(jù)確定采 集到的各點相對于采集到的第一點旋轉(zhuǎn)的角度,并將各點相對于第一點旋轉(zhuǎn) 的角度進行比較;根據(jù)得到的比較結(jié)果確定觸摸手勢為旋轉(zhuǎn)運動或伸縮運 動。本發(fā)明根據(jù)電阻式觸摸屏不能檢測到兩點觸摸時兩點各自的位置,僅能 夠檢測到兩點之間中間點所形成的軌跡的缺點,確定采集到的各點相對于采 集到的笫一點旋轉(zhuǎn)的角度,根據(jù)各點相對于第一點的旋轉(zhuǎn)角度來確定運動趨 勢,從而巧妙地實現(xiàn)對電阻式觸摸屏的兩點觸摸手勢進行識別。
并且,本發(fā)明還進一步提供了確定觸摸手勢旋轉(zhuǎn)的方向,即逆時針旋轉(zhuǎn) 還是順時針旋轉(zhuǎn)的識別方法,以及確定觸摸手勢伸縮的方向,即相向伸縮還 是相離伸縮的識別方,使得對兩點觸摸手勢的識別更加具體和準確。
另外,本發(fā)明實施例中提供了采用坐標變換的方式,即從以觸摸屏所在 平面為原直角坐標系轉(zhuǎn)換為以第一點為零點、第一點和第二點的連線為X 軸的新的直角坐標系,再將該新的直角坐標系轉(zhuǎn)換為以第一點為極點,第一 點和第二點的連線為極軸的極坐標系,從而方便、準確的確定各點相對于第 一點旋轉(zhuǎn)的角度,以及各點相對于第一點的距離,以便于對觸摸手勢進行準 確的識別。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本 發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應包含在 本發(fā)明保護的范圍之內(nèi)。
18
權(quán)利要求
1、一種觸摸手勢的識別方法,其特征在于,該方法包括A、從電阻式觸摸屏檢測到的手勢軌跡上按順序采集至少4個點的坐標數(shù)據(jù);B、利用所述坐標數(shù)據(jù)確定采集到的各點相對于采集到的第一點旋轉(zhuǎn)的角度,并比較各點相對于第一點旋轉(zhuǎn)的角度;C、根據(jù)所述步驟B得到的比較結(jié)果確定觸摸手勢為旋轉(zhuǎn)運動或伸縮運動。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟A中采集到的所述至 少4個點相互之間的距離大于預設的距離閾值。
3、 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述采集的步驟具體包括 Al、采集并記錄獲取到的所述手勢軌跡中第一像素點的坐標數(shù)據(jù);A2、獲取下一像素點的坐標數(shù)據(jù);A3、利用步驟A2獲取的坐標數(shù)據(jù),判斷該像素點與記錄的上一像素點之 間的距離是否大于預設的距離閾值,如果是,執(zhí)行步驟A4,否則,執(zhí)行步驟 A6;A4、采集并記錄該像素點的坐標數(shù)據(jù);A5、判斷已經(jīng)記錄的點的數(shù)量是否達到預設的采集點數(shù)量,如果是,采集 流程結(jié)束,否則,轉(zhuǎn)至執(zhí)行步驟A2;A6、丟棄該像素點的坐標數(shù)據(jù),轉(zhuǎn)至執(zhí)行步驟A2。
4、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟B具體為利用所 述坐標數(shù)據(jù),從采集到的第三點開始逐一確定采集到的各點和第一點之間的連 線與第二點和第一點之間的連線所成的夾角;判斷從第三點開始逐一確定的所述夾角是否為遞增或遞減順序并且所述夾角之間的差值都大于設定的夾角閾 值;所述步驟C具體為如果所述步驟B的判斷結(jié)果為是,則確定該觸摸手勢 為旋轉(zhuǎn)運動;否則,確定該觸摸手勢為伸縮運動。
5、 根據(jù)權(quán)利要求4所述的方法,其特征在于,所述確定該觸摸手勢為旋轉(zhuǎn) 運動包括當預先設定逆時針方向所成的夾角為正時,如果從第三點開始逐一 確定 的所述夾角為遞增順序,則確定該觸^^莫手勢為逆時針旋轉(zhuǎn)運動,如果從第 三點開始逐一確定的所述夾角為遞減順序,則確定該觸摸手勢為順時針旋轉(zhuǎn)運 動。
6、 根據(jù)權(quán)利要求4所述的方法,其特征在于,所述步驟B進一步包括利 用所述坐標數(shù)據(jù)確定采集到的各點相對于第一點的距離,并比較各點相對于第 一點的距離;所述確定該觸摸手勢為伸縮運動包括如果各點相對于第一點的距離按照 采集順序遞增,則確定該觸摸手勢為相離的伸縮運動,如果各點相對于第一點 的距離按照采集順序遞減,則確定該觸摸手勢為相向的伸縮運動。
7、 根據(jù)權(quán)利要求4所述的方法,其特征在于,所述確定采集到的各點和第 一點之間的連線與第二點和第一點之間的連線所成的夾角具體包括以所述第一點作為零點,第一點和第二點的連線作為X軸建立直角坐標系, 并利用采集到各點的坐標數(shù)據(jù)確定各點在該建立的直角坐標系中的坐標數(shù)據(jù); 將所述建立的直角坐標系轉(zhuǎn)換為以第一點為極點、第一點和第二點的連線為極 軸的極坐標系,確定各點在該極坐標系中的坐標數(shù)據(jù);利用各點在極坐標系中 的坐標數(shù)據(jù)的角坐標值,確定各點和第一點之間的連線與第二點和第一點之間 的連線所成的夾角。
8、 根據(jù)權(quán)利要求6所述的方法,其特征在于,所述確定采集到的各點相對 于第一點的距離具體包括以所述第一點作為零點,第一點和第二點的連線作為X軸建立直角坐標系, 并利用采集到各點的坐標數(shù)據(jù)確定各點在該建立的直角坐標系中的坐標數(shù)據(jù); 將所述建立的直角坐標系轉(zhuǎn)換為以第 一點為極點、第 一點和第二點的連線為極 軸的極坐標系,確定各點在該極坐標系中的坐標數(shù)據(jù);利用各點在極坐標系中 的坐標數(shù)據(jù)的距離坐標值,確定各點相對于第一點的距離。
9、 一種觸摸手勢的識別裝置,其特征在于,該裝置包括數(shù)據(jù)采集單元、信息比較單元和手勢確定單元;所述數(shù)據(jù)采集單元,用于從電阻式觸摸屏檢測到的手勢軌跡上按順序采集 至少4個點的坐標數(shù)據(jù),并將采集到的坐標數(shù)據(jù)提供給所述信息比較單元;所述信息比較單元,用于根據(jù)所述坐標數(shù)據(jù)確定采集到的各點相對于采集 到的第一點旋轉(zhuǎn)的角度,比較各點相對于第一點旋轉(zhuǎn)的角度,并將比較結(jié)果提 供給所述手勢確定單元;所述手勢確定單元,用于根據(jù)所述比較結(jié)果確定觸摸手勢為旋轉(zhuǎn)運動或伸 縮運動。
10、 根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述數(shù)據(jù)采集單元包括 數(shù)據(jù)獲取子單元、采集子單元和判斷子單元;所述數(shù)據(jù)獲取子單元,用于按順序獲取所述手勢軌跡上各像素點的坐標數(shù)據(jù);所述采集子單元,用于采集并記錄獲取到的所述手勢軌跡中第一像素點的 坐標數(shù)據(jù),采集并記錄所述判斷子單元發(fā)送的像素點的坐標數(shù)據(jù),并向所述判 斷子單元發(fā)送判斷通知;所述判斷子單元,用于利用所述數(shù)據(jù)獲取子單元獲取的像素點的坐標數(shù)據(jù), 判斷當前像素點與采集子單元記錄的上一像素點之間的距離是否達到預設的距 離閾值,如果是,將當前像素點的坐標數(shù)據(jù)發(fā)送給采集子單元;否則,丟棄該 像素點的坐標數(shù)據(jù),并通知所述數(shù)據(jù)獲取子單元獲取下一像素點的坐標數(shù)據(jù); 接收到所述判斷通知后,判斷所述采集子單元記錄的像素點的數(shù)量是否達到預 設的采集點數(shù)量,如果是,則通知所述數(shù)據(jù)獲取子單元停止獲取像素點的坐標 數(shù)據(jù),否則,通知所述數(shù)據(jù)獲取子單元獲取下一像素點的坐標數(shù)據(jù)。
11、 根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述信息比較單元包括 夾角確定子單元和夾角比較子單元;所述夾角確定子單元,用于利用所述坐標數(shù)據(jù),從采集到的第三點開始逐 一確定各點和第一點之間的連線與第二點和第一點之間的連線所成的夾角; 所述夾角比較子單元,用于判斷從第三點開始逐一確定的所述夾角是否為遞增或遞減順序并且所述夾角之間的差值是否都大于設定的夾角閾值,并將判斷結(jié)果作為所述比較結(jié)果發(fā)送給所述手勢確定單元;所述手勢確定單元在接收到所述判斷結(jié)果為是時,確定觸摸手勢為旋轉(zhuǎn)運 動;在接收到所述判斷結(jié)果為否時,確定該觸摸手勢為伸縮運動。
12、 根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述夾角確定子單元具體 包括第一坐標變換模塊、第二坐標變換模塊和夾角確定模塊;所述第一坐標變換模塊,用于利用所述坐標數(shù)據(jù),以所述第一點作為零點, 第一點和第二點的連線作為X軸建立直角坐標系,并利用采集到各點的坐標數(shù) 據(jù)確定各點在該建立的直角坐標系中的坐標數(shù)據(jù);所述第二坐標變換模塊,用于將所述第一坐標變換模塊建立的直角坐標系 轉(zhuǎn)換為以第一點為極點、第一點和第二點的連線為極軸的極坐標系,確定各點 在該極坐標系中的坐標數(shù)據(jù),并將確定的各點在極坐標系中的坐標數(shù)據(jù)發(fā)送給 夾角確定模塊;所述夾角確定模塊,用于利用接收到的坐標數(shù)據(jù)的角坐標值,確定各點和 第一點之間的連線與第二點和第一點之間的連線所成的夾角。
13、 根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述手勢確定單元包括 結(jié)果接收子單元、旋轉(zhuǎn)確定子單元和伸縮確定子單元;所述結(jié)果接收子單元,用于接收所述夾角比較子單元發(fā)送的判斷結(jié)果,在 所述判斷結(jié)果為是時,將該判斷結(jié)果發(fā)送給所述旋轉(zhuǎn)確定子單元,在所述判斷 結(jié)果為否時,將該判斷結(jié)果發(fā)送給所述伸縮確定子單元;所述旋轉(zhuǎn)確定子單元,用于當預先設定逆時針方向所成的夾角為正時,如 果所述判斷結(jié)果為從第三點開始逐一確定的所述夾角為遞增順序,則確定該觸 摸手勢為逆時針旋轉(zhuǎn)運動;如果所述判斷結(jié)果為從第三點開始逐一確定的所述 夾角為遞減順序,則確定該觸摸手勢為順時針旋轉(zhuǎn)運動;伸縮確定子單元,在接收到所述判斷結(jié)果后,確定所述觸摸手勢為伸縮運動。
14、 根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述信息比較單元還包括:距離確定子單元和距離比較子單元;所述距離確定子單元,用于利用所述坐標數(shù)據(jù)確定采集到的各點相對于第 一點的距離;所述距離比較子單元,用于比較所述各點相對于第一點的距離;所述伸縮確定子單元,在接收到所述判斷結(jié)果后,還用于獲取所述距離比 較子單元的比較結(jié)果,如果各點相對于第一點的距離按照采集順序遞增,則確 定觸摸手勢為相離的伸縮運動,如果各點相對于第一點的距離按照采集順序遞 減,則確定觸摸手勢為相向的伸縮運動。
15、根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述距離確定子單元具體 包括第三坐標變換模塊、第四坐標變換模塊和距離確定模塊;所述第三坐標變換模塊,用于利用所述坐標數(shù)據(jù),以所述第一點作為零點, 第一點和第二點的連線作為X軸建立直角坐標系,并利用采集到各點的坐標數(shù) 據(jù)確定各點在該建立的直角坐標系中的坐標數(shù)據(jù);所述第四坐標變換模塊,用于將所述第三坐標變換模塊建立的直角坐標系 轉(zhuǎn)換為以第一點為極點、第一點和第二點的連線為極軸的極坐標系,確定各點 在該極坐標系中的坐標數(shù)據(jù),并將確定的各點在極坐標系中的坐標數(shù)據(jù)發(fā)送給 距離確定模塊;所述距離確定模塊,用于利用接收到的坐標數(shù)據(jù)的距離坐標值,確定各點 相對于第一點的距離。
全文摘要
本發(fā)明提供了一種觸摸手勢的識別方法和裝置,其中,方法包括從電阻式觸摸屏檢測到的手勢軌跡上按順序采集至少4個點的坐標數(shù)據(jù);利用所述坐標數(shù)據(jù)確定采集到的各點相對于采集到的第一點旋轉(zhuǎn)的角度,并比較各點相對于第一點旋轉(zhuǎn)的角度;根據(jù)得到的比較結(jié)果確定觸摸手勢為旋轉(zhuǎn)運動或伸縮運動。本發(fā)明根據(jù)電阻式觸摸屏不能檢測到兩點觸摸時兩點各自的位置,僅能夠檢測到兩點之間中間點所形成的軌跡的缺點,確定采集到的各點相對于采集到的第一點旋轉(zhuǎn)的角度,根據(jù)各點相對于第一點的旋轉(zhuǎn)角度來確定運動趨勢,從而巧妙地實現(xiàn)對電阻式觸摸屏的兩點觸摸手勢進行識別。
文檔編號G06F3/045GK101667089SQ20081014668
公開日2010年3月10日 申請日期2008年9月4日 優(yōu)先權(quán)日2008年9月4日
發(fā)明者祥 朱, 峰 林 申請人:比亞迪股份有限公司