檢測在用戶設備的屏幕上描繪的圖案的制作方法
【專利摘要】一種用戶終端,包括:網絡接口;觸摸屏,其被配置為接收由用戶所描繪的圖案;第一相機,其被配置為捕獲圖像,其中,用戶終端被配置為將所捕獲的圖像作為視頻通話的一部分而從第一相機傳輸至至少一個另外的用戶終端;第二相機;存儲器,其被配置為存儲有關至少一種圖案的信息;檢測模塊,其被配置為使用所存儲的信息來檢測在用戶終端的觸摸屏的區域上所描繪的至少一種圖案一種;以及控制模塊,其被配置為響應于所述檢測而從第一相機切換至第二相機,以便使用第二相機來捕獲圖像,控制模塊使得從第二相機所捕獲的圖像經由網絡接口而傳輸至至少一個另外的用戶設備。
【專利說明】
檢測在用戶設備的屏幕上描繪的圖案
【背景技術】
[0001]越來越多的設備都裝備有觸摸屏技術,通過該技術,用戶設備的用戶通過直接操縱顯示在屏幕上的圖形用戶界面(GUI)上的圖形符號來與設備進行交互。
[0002]在一些實例中,為了指示用戶設備執行期望的功能或者瀏覽GUI的菜單,用戶必須對GUI執行數次操縱。通常,這些操縱涉及用戶按壓GUI上的專用圖標以便實行期望的動作。
【發明內容】
[0003]該主題關于包括網絡接口以及被配置為對圖像進行捕獲的第一相機的用戶終端。該用戶終端被配置為將從第一相機所捕獲的圖像作為視頻通話(例如,通過互聯網的VoIP通話)的一部分經由網絡接口而發送至至少一個另外的用戶終端。該用戶終端還包括第二相機以及被配置為存儲與至少一種圖案有關的信息的存儲器。例如,第一相機和第二相機可以是智能電話或平板計算機等的前置和后置相機,或者任何其它相機配對。用戶終端還包括檢測模塊,其被配置為使用所存儲的信息來檢測在該用戶終端的顯示器屏幕的區域上所描繪的圖案。例如,該圖案可以是Z字形或者任何其它合適的圖案。用戶終端還包括控制模塊,其被配置為響應于所述檢測而從第一相機切換至第二相機以便使用第二相機來對圖像進行捕獲,控制模塊使得從第二相機所捕獲的圖像作為視頻通話的一部分經由網絡接口而發送至至少一個另外的用戶設備。
[0004]該主題還關于對應的計算機可讀介質,所述計算機可讀介質具有存儲于其上的實現在本文中所描述的方法的指令。
[0005]該主題還關于一種檢測在用戶設備的顯示器上所描繪的圖案的方法。該方法包括接收與由用戶在用戶設備的顯示器上所描繪的圖案有關的信息。該方法還包括根據所接收到的信息來確定由用戶所描繪的圖案是否包括一系列的三個手勢。可以在描繪實現不離開顯示器的情況下以連續的方式來描繪所述一系列的手勢。可替代地,可以在已經描繪了該系列中的手勢之后從設備中移除描繪實現。該方法還包括根據所接收到的信息來確定該系列中的每個手勢是否具有不同的運動向量以及該運動向量的相對運動。該方法還包括:如果所描繪的圖案包括一系列的三個手勢,并且這三個手勢的相對運動向量處于在存儲器中所存儲的表征Z字形的規則內,則確定已經在用戶設備的顯示器上描繪了預先確定的圖案,而無論所描繪的圖案的位置、大小和朝向如何。
[0006]提供了該
【發明內容】
以用簡化的形式介紹在下文的【具體實施方式】中所進一步描述的概念的選擇。該
【發明內容】
不旨在標識所要求保護的主題的關鍵特征,也不旨在用于限制所要求保護的主題的范圍。
【附圖說明】
[0007]為了更好地理解本公開并示出可以如何實施本公開,現在將作為示例對以下附圖進行參考,其中:
[0008]圖1示出了通信系統的示意圖;
[0009]圖2示出了用戶終端的詳細視圖;
[0010]圖3示出了在視頻通話期間用戶終端的顯示器屏幕的示意圖;
[0011 ]圖4示出了用戶終端的顯示器屏幕的進一步的示意圖。
【具體實施方式】
[0012]在本公開中,描述了實施例,在所述實施例中,用戶可以通過在用戶終端的顯示器上所描繪(trace)的圖案來與裝備有觸摸屏的用戶終端進行交互。
[0013]在一個實施例中,用戶終端(UT)裝備有至少兩個相機,并且該用戶終端被配置為使用其中一個相機來捕獲視頻數據,并且將該視頻數據作為通信事件(例如,視頻通話)的一部分發送至遠程設備。在該實施例中,終端可以檢測用戶是否在UT的顯示器屏幕上描繪圖案。如果UT確定用戶已經在屏幕上描繪了圖案,則該UT切換相機以便使用另一個相機來捕獲視頻通話的圖像數據。
[0014]可選地,用戶可以在顯示器屏幕的任何位置處描繪圖案。可替代地,UT可以只有當用戶在顯示器屏幕的某個區域內追蹤圖案的情況下才切換用于捕獲視頻數據的相機。
[0015]在另一個實施例中,用戶終端可以檢測在所述終端的顯示器屏幕上所描繪的圖案。該用戶終端可以檢測到,如果所描繪的圖案滿足表征該圖案的某些規則,那么可以已經描繪了預先確定的圖案。這可以允許圖案被檢測到,而無論所描繪圖案的位置、大小和方位如何。
[0016]現在將僅作為示例來描述本公開的實施例。
[0017]圖1示出了通信系統100,其包括與第一用戶終端102相關聯的第一用戶104(用戶A)、以及與第二用戶終端108相關聯的第二用戶110(用戶B)。盡管為了簡單起見僅在圖1中示出了兩個用戶,但通信系統100可以包括任何數量的用戶和相關聯的用戶設備。用戶終端102和用戶終端108可以通過通信系統100中的通信網絡106進行通信,從而允許用戶104和用戶110通過網絡106彼此進行通信。網絡106可以是能夠在第一用戶終端102與第二用戶終端108之間提供通信信道的任何合適的網絡。例如,網絡106可以是互聯網或者諸如高數據速率移動網絡之類的另一種類型的網絡,例如第三代(3G)移動網絡。用戶終端102可以是例如,移動電話、個人數字助理(PDA)、個人計算機(PC)(包括例如,WindowsTM、Mac OS?和Linux?的PC)、游戲設備、或者能夠連接至網絡106的其它嵌入式設備。用戶終端102被設置為從用戶終端102的用戶104處接收信息并向用戶終端102的用戶104輸出信息。在一個實施例中,用戶終端102包括諸如屏幕之類的顯示器、以及諸如小鍵盤、觸摸屏、和/或麥克風之類的輸入設備。用戶終端102連接至網絡106。
[0018]隨著移動帶寬的增加,也存在增加的對經由在移動設備(例如,支持互聯網的移動電話)上運行的客戶端應用來提供基于分組的視頻通話的興趣。這些移動設備包括收發機,例如在一個或多個未經許可的頻帶上進行操作以用于經由無線接入點(例如,WLAN網絡的WiFi接入點)來訪問互聯網的短距離RF收發機,和/或在一個或多個經許可的頻帶上進行操作以經由基于分組的蜂窩網絡服務(例如GPRS(通用分組無線服務)或HSPA(高速分組訪問))來訪問互聯網的蜂窩收發機。
[0019]用戶終端102執行由與通信系統100相關聯的軟件供應商所提供的通信客戶端112。通信客戶端是在用戶終端102中的本地處理器上執行的軟件程序(S卩,通信模塊)。該客戶端執行在用戶終端102處所要求的處理,以便使得用戶終端102通過通信系統100來發送數據并接收數據。
[0020]用戶終端108可以對應于用戶終端102。用戶終端108在本地處理器上執行通信客戶端114,其對應于在用戶終端102處執行的通信客戶端。用戶終端108處的通信客戶端執行允許用戶110通過網絡106進行通信所要求的處理,這與以在用戶終端102處的客戶端執行所要求的處理以允許用戶104通過網絡106進行通信的方式相同。用戶終端102和108是通信系統中的端點。圖1為了簡單起見僅示出了兩個用戶(104和110)和兩個用戶終端(102和108),但是如在本領域中公知的,在通信系統100中可以包括更多用戶和用戶設備,并且可以使用在相應的用戶設備上執行的相應的通信客戶端來通過通信系統100進行通信。
[0021]圖2圖示了在其上執行通信客戶端112以用于通過通信系統100進行通信的用戶終端102的詳細視圖。用戶終端102包括其上耦合了觸摸屏204的中央處理單元(CPU)202<XPU連接至第一相機206和第二相機208。輸出音頻設備210(例如,揚聲器)和輸入音頻設備212(例如,麥克風)連接至CPU 202。觸摸屏204、相機206和相機208、輸出音頻設備210、以及輸入音頻設備212可以如在圖2中所示出的那樣被集成到用戶終端102中。在可替代的用戶終端中,觸摸屏204、相機206和相機208、輸出音頻設備210、以及輸入音頻設備212中的一個或多個可以不集成到用戶終端102中,而是可以經由相應接口連接至CPU 202。這樣的接口的一個示例是USB接口。CPU 202連接至網絡接口 214(例如,調制解調器)以用于利用網絡106進行通信。網絡接口214可以如在圖2中所示出的那樣被集成到用戶終端102中。在可替代的用戶終端中,網絡接口 214不被集成到用戶終端102中。用戶終端102還包括如在本領域中公知的用于存儲數據的存儲器216。存儲器216可以是永久性存儲器,例如ROM。存儲器216可替代地可以是暫時存儲器,例如RAM。觸摸屏可以被配置為對用戶的觸摸(例如,來自用戶的手的觸摸)做出反應。可替代地或另外地,可以通過使用觸摸筆來操作觸摸屏。
[0022]圖2還示出了在CPU202上執行的操作系統(0S)218。在OS 218上運行的是通信客戶端應用220的軟件棧。該軟件棧示出了 I/O層222、客戶端引擎層224、以及客戶端用戶界面層(UI)226。每一層負責具體的功能。由于每一層通常與其它兩層進行通信,因此它們被認為是如圖2所示出的那樣設置在棧中。操作系統218管理計算機的硬件資源,并且對經由網絡接口 214而傳輸至網絡106或從網絡106中所傳輸的數據進行處理。I/O層222包括音頻和/或視頻編解碼器,根據需要,所述編碼解碼器接收輸入的經編碼的流并且對它們進行解碼以輸出至揚聲器210和/或觸摸屏204,并且所述編碼解碼器從麥克風212和/或相機206和相機208中接收未經編碼的音頻數據和/或視頻數據,并且對它們進行編碼以作為流傳輸至通信系統100的其它末端用戶終端。客戶端引擎層224處理如在上文中所討論的VoIP系統的連接管理功能,例如,通過基于服務器的或P2P的地址查找和認證來建立通話或其它連接。客戶端引擎還可以負責未在本文中討論的其它次要功能。客戶端引擎層224還與客戶端用戶界面層226進行通信。客戶端引擎層224可以被設置為控制客戶端用戶界面層226,以經由顯示在觸摸屏204上的該客戶端的用戶界面向用戶終端200的用戶呈現信息,并且經由該用戶界面從用戶終端200的用戶處接收信息。客戶端引擎包括將在下文中更加詳細地描述的控制模塊234。
[0023]通信客戶端應用220還包括手勢檢測模塊230和手勢庫,它們的功能將在下文中更為詳細地進行描述。
[0024]OS包括一個或多個應用程序接口(APD228JPI是由硬件組件或者軟件組件的程序來實現的接口,其允許不同的硬件組件或軟件組件的程序訪問由實現該API的組件所提供的服務。盡管為了清楚起見在圖2中出僅僅示出了一個API,但是本領域技術人員應當理解的是,OS可以包含多個API AS的API允許在OS上運行的應用訪問由該OS所提供的服務。
[0025]如在上文中已經描述的,觸摸屏204允許UT200的用戶通過直接操縱來與在觸摸屏上所顯示的GUI進行交互,例如,用戶可以觸摸在觸摸屏上顯示的圖形圖標。對手勢或觸摸進行檢測可以寬泛地由兩個階段組成:(i)對關于觸摸和/或手勢的數據進行采集;以及
(ii)對該數據進行解譯以確定其是否滿足任何所支持的觸摸或手勢的標準。關于第一階段,當用戶將一個或多個手指置于觸摸屏的區域上時,OS生成包含有關交互的信息(例如,觸摸的坐標,所施加的壓力,大小、時間等)的觸摸事件。如果用戶描繪手勢,則將生成觸摸事件的序列以提供每個交互的細節。
[0026]OS接著通過經由API 228向通信客戶端提供一組觸摸事件而向通信客戶端通知所檢測到的手勢。通信客戶端接著可以使用由事件所提供的數據來確定是否已經描繪了感興趣的手勢。通信客戶端可以能夠識別出每個都與具體的操作相關聯的一組感興趣手勢。可以由通信客戶端的開發者來確定與每個手勢相關聯的操作。就所述的一組手勢及其相關聯的操作可以由開發者來定義的意義而言,所述手勢可以是“自定義”手勢。可以將這樣的一組手勢存儲在客戶端應用的手勢庫232中。每當在應用處接收到事件或一組事件,客戶端應用都可以使用手勢庫來嘗試識別該手勢。應用可以通過使用手勢檢測模塊230來這樣做。
[0027]在一個實施例中,當接收到事件時,客戶端應用通過向檢測模塊230發送事件信息而嘗試識別該手勢。接著,檢測模塊230可以訪問手勢庫232以將所檢測到的手勢與存儲在庫中的一組手勢進行比較。例如,檢測模塊可以針對每個所存儲的手勢來計算得分或量度。具有最高得分的所檢測到的手勢可以被識別為所存儲的手勢。
[0028]如果所檢測到手勢被識別為來自手勢庫中的手勢,則檢測模塊230通知控制模塊234已經識別了手勢。接著,控制模塊234使得與該手勢相關聯的操作被執行。
[0029]在上文中所描述的實施例中,客戶端應用220通過使用手勢庫來識別在觸摸屏上所描繪的手勢。在可替代的實施例中,應用不包含手勢庫。在該可替代的實施例中,客戶端應用通過處理事件信息來嘗試識別所檢測到的手勢。
[0030]以與在上文中所描述的用戶終端102相同的方式來實現用戶終端108,其中,用戶終端108可以具有與在本文中關于用戶終端102所描述的那些元件相對應的元件。
[0031]在一些實施例中,通信客戶端112執行所要求的處理,以便使用戶終端102參與到通過通信系統發送并接收視頻數據的通信事件(例如,視頻通話或會議通話)中。在該實施例中,I/O層22從相機206和相機208中的至少一個中接收未經編碼的視頻數據,并且對所述數據進行編碼以用于傳輸至通信系統100中的其它用戶終端。I/O還可以從麥克風212中接收與視頻數據相關聯的未經編碼的音頻數據,例如來自用戶終端的用戶的語音數據。
[0032]在這樣的通信事件期間,客戶端用戶界面層226可以向用戶終端的用戶呈現有關該通信事件的信息。例如,可以將通過通信網絡而從參與該通信事件的其它用戶設備中所接收的視頻數據顯示在觸摸屏204上。可替代地或另外地,可以將信息呈現給用戶以控制用戶對通信事件的參與。例如,可以顯示允許用戶結束通話、控制從用戶終端所輸出的音頻數據的音量等的圖形圖標。
[0033]圖3僅僅作為示例示出了根據本公開實施例的在視頻通話的期間在用戶終端的觸摸屏204上所顯示的圖形用戶界面。
[0034]在觸摸屏204上顯示了主要窗口302,其顯示了在用戶終端200處所接收到的來自參與視頻通話的遠程用戶終端的視頻數據。通知欄306沿著觸摸屏的上邊緣顯示。通知欄可以用于在該通信事件期間將關于用戶設備的某些信息始終保持對用戶可見。例如,該通知欄可以顯示包含有關例如日期、時間、用戶終端的電池水平、以及用戶終端當前所經受的信號強度的信息的圖標。
[0035]由用戶終端的OS來控制為通知欄所保留的顯示器屏幕中的區域。通過該方式,通知欄可以獨立于通信客戶端112或者獨立于在用戶終端上運行的任何應用而在顯示器屏幕上顯示。
[0036]應當理解的是,通知欄沿著顯示器上邊緣的位置僅僅是出于說明的目的,并且通知欄可以位于觸摸屏的任何區域。可替代地,觸摸屏可以根本不顯示通知欄。
[0037]觸摸屏上還顯示了次要窗口 304,其向終端200的用戶顯示被發送至與所述用戶進行通信的遠程用戶的視頻數據。即,該次要窗口顯示通過用戶終端200的相機206或相機208中的一個所捕獲的當前正被傳輸至遠程終端的視頻數據。次要窗口可以用于增強視頻通話的質量。例如,通過觀看正在被傳輸的視頻數據,用戶可以進行調節以確保遠程用戶正在接收合適的圖像數據,例如,通過調節用戶終端的位置或者通過使他自身位于關于用戶終端更加合適的位置。
[0038]應當理解的是,對于“主要”窗口和“次要”窗口的提及與這些窗口關于彼此的相對大小無關,而是僅僅用來指示在每個窗口中顯示什么樣的視頻數據。
[0039]在可替代實施例中,觸摸屏204上不顯示有次要窗口304,而僅僅在觸摸屏204上顯示通過通信網絡從遠程設備中所接收到的視頻數據。
[0040]如在上文中已經解釋的,用戶終端可以裝備有位于用戶終端上的不同位置處的兩個相機206和208。例如,一個相機(例如,相機206)可以位于具有觸摸屏的用戶終端的前側,而另一個相機(例如,相機208)可以位于相反的用戶終端的后側。用戶終端200將在視頻通話期間在某時刻通過這些相機中的一個相機來捕獲圖像數據,以用于傳輸至遠程設備。
[0041]用戶可以希望在視頻通話進行的同時對用于捕獲視頻數據的相機進行切換。例如,終端200的用戶可以希望從正在用于傳輸用戶的視頻數據的前方相機切換至后方相機,該后方相機例如可以用于捕獲用戶周邊的視頻數據。
[0042]根據本公開的實施例,終端200的用戶可以通過在觸摸屏204的一個區域上描繪圖案而改變用來捕獲所傳輸的視頻數據的相機。
[0043]例如,考慮將來自相機206的圖像數據作為視頻通話的一部分而傳輸至遠程用戶的情況。如果用戶在觸摸屏上描繪圖案,則OS生成包含有關所描繪的圖案的信息的一組觸摸事件。接著,將所述一組觸摸事件提供至通信客戶端。通信客戶端可以被配置為將一個或多個手勢與在用來捕獲所傳輸的視頻數據的相機之間進行切換(toggling)的操作相關聯。為了清楚起見,可以將這樣的手勢稱為“切換相機”手勢。“切換相機”手勢可以是由開發者所定義的自定義手勢。
[0044]通信客戶端的手勢檢測模塊230可以將來自觸摸事件的、定義所描繪的手勢的信息與存儲在定義可識別手勢的手勢庫中的信息進行比較。如果來自手勢庫中的手勢被識另IJ,則通知控制模塊234。如果控制模塊確定所識別的手勢是“切換相機”手勢,則其使得用于將向客戶端應用的未經編碼的視頻數據的提供從相機206切換至相機208的操作被執行。接著,將從相機208所捕獲的視頻數據作為視頻通話的一部分而傳輸至遠程用戶。
[0045]因此,根據本實施例,用戶終端的用戶可以通過在用戶終端的觸摸屏上描繪手勢而切換用來捕獲圖像數據作為視頻通話的一部分的相機。這可以允許用戶在視頻通話期間快速并容易地切換相機,而不必例如瀏覽GUI的多個菜單或者查找特定的圖形圖標,這兩種方式都要求專注并且使得用戶的注意力遠離他/她正在參與的視頻通話。
[0046]在一些實施例中,用戶可以通過在觸摸屏204上的任何位置處描繪圖案來實行相機的改變。在其它實施例中,可以必須在觸摸屏204的某個子區域內描繪圖案以實行相機的改變。觸摸屏的其它區域可以被定義為排除區域,其中用戶的描繪并不會引起用來捕獲視頻數據的相機的切換。例如,如果GUI包括通知欄306,則這可以是排除區域。
[0047]如果通知欄是排除區域,則OS可以被配置為防止在該區域中所描繪的任何“切換相機”手勢使得通信客戶端切換用來捕獲視頻數據的相機。例如,OS可以根據觸摸事件來確定已經在通知欄的區域中描繪了手勢。OS可以確定這是排除區域,并且丟棄該觸摸事件而并不將它們發送至通信客戶端。
[0048]通信客戶端自身也可以針對其自身的顯示空間而遵循類似的方式,以便將在GUI上所顯示的應用的某些區域從手勢檢測中排除。例如,如果在視頻通話期間在觸摸屏上顯示的GUI包括如在圖3中所示的主要窗口 302和次要窗口 304,則子區域可以是由主要窗口所覆蓋的區域,而由次要窗口所覆蓋的區域可以是排除區域。通信客戶端(而不是OS)具有對其自身的顯示空間的排除區域的邊界的控制。即,針對在這些區域中所描繪的手勢,OS將向通信客戶端發送觸摸事件。接著,客戶端將對這些事件進行處理并確定手勢是在該顯示空間的排除區域內描繪的,并且因此不執行相關聯的操作。
[0049]盡管已經利用作為排除區域的次要窗口302對以上的實施例進行了描述,但是應當理解的是,這僅僅是出于說明的目的的。可以由開發者來自由選擇客戶端顯示空間的排除區域(如果有的話)。
[0050]如果在觸摸屏204上所顯示的GUI包括顯示當前被傳輸至遠程客戶端的視頻數據的次要窗口,則用來捕獲視頻數據的相機的改變可以引起在次要窗口中所顯示的視頻數據的對應的改變。例如,通信客戶端的I/O層222可以被配置為從相機206或208中的一個中接收視頻數據以用于傳輸至遠程設備,并且客戶端UI層226可以被配置為使得視頻數據將被顯示在次要窗口 304中。接著,用來捕獲視頻數據的相機的改變(例如,如以上所描述的由OS和通信客戶端所引起)會使得來自新的相機的視頻數據被提供至I/O層并且因此在次要窗口 304中被顯示。
[0051]盡管在上述實施中,相機206和相機208分別位于用戶終端的前方表面和后方表面上,但是應當理解的是,相機可以位于用戶終端上的任何合適的位置,例如相機可以位于用戶終端的相同的表面上。
[0052]在另一個實施例中,用戶終端可以具有多于一個的麥克風,例如可以有與用戶終端的每個相機相關聯的麥克風。在該實施例中,在檢測到已經在觸摸屏的區域上描繪了有關所存儲的信息的圖案之后,通信客戶端可以被配置為對麥克風進行控制,以便從與新切換的相機相關聯的麥克風向客戶端應用提供音頻數據。
[0053]在另一個實施例中,使得終端相機被切換的一種或多種圖案中的每一種都要求多于一個的運動向量以便進行描繪。即,一種或多種可識別的圖案中的每一種都跨觸摸屏204的平面中的二維空間。
[0054]例如,一種或多種圖案可以包括以下中的至少一種:圓形、弧形、三角形、字母“S”、
正方形、交叉等。
[0055]在另一個實施例中,一種或多種圖案中的每一種都包括一系列的至少兩個手勢,其中該系列中的每個手勢都具有不同于該系列中的之前的手勢的運動向量。這樣的手勢的示例可以是例如三角形、正方形、或者表示字母“Z”的Z字形手勢。可替代地或另外地,由用戶所描繪的連續曲線可以被解譯為單個手勢。應當注意的是,雖然圖案可以包括一系列的手勢,但是其可以在用戶的描繪實現(例如,手指或觸摸筆)不離開屏幕表面的情況下被描繪。即,一系列的手勢可以由用戶以連續的方式來描繪。
[0056]相比于例如可以通過觸摸圖形圖標來切換相機的情況,通過要求所描繪的圖案跨二位空間和/或是具有不同的運動向量的一系列的手勢,終端200的用戶不太可能通過意外地觸摸到觸摸屏而切換相機。這是因為跨二維的和/或作為具有不同運動向量的一系列的手勢的圖案要求用戶做出更為刻意的動作而不太可能意外地執行。
[0057]另外,要求圖案包括一系列的至少兩個手勢(其中該系列中的每個手勢具有不同于該系列中的之前手勢的運動向量)在用戶所描繪的圖案的形式方面允許更大的容差(tolerance)。在該實施例中,手勢庫不存儲圖案的幾何形式,而是存儲有關圖案的信息。例如,所述信息可以包括由用戶所描繪的圖案所必須滿足的一組條件。在該示例中,所述條件可以是(i)包括一系列的至少兩個手勢的圖案,并且(ii)該系列中的每個手勢都具有不同于該系列中的之前手勢的運動向量。在可替代實施例中,可以有額外的要求:該系列中的第一手勢和第三手勢相互平行。該可替代的實施例將預先確定圖案限制為Z字形圖案。
[0058]通過在手勢庫中存儲包括表征手勢的一組條件的信息,可以增加所描繪的手勢的容差。例如,已知所描繪的圖案滿足表征可識別的手勢的條件的情況下,手勢在屏幕上的什么地方被描繪,手勢的大小、或者手勢的相對幾何比例都不重要。增加可描繪的手勢的容差允許用戶利用最少的精力或思考來描繪可識別的手勢,這降低了用戶從手頭的任務(例如,進行視頻通話)的分心。
[0059]在可替代實施例中,所存儲的信息可以描述至少一種圖案的模板。從觸摸屏控制器中所接收的信息可以用來將由用戶所描繪的圖案與模板圖案進行比較。如果所描繪的圖案與模板在某一容差內相匹配,則可以將所描繪圖案識別為模板圖案中的一種。
[0060]如果所存儲的信息包括一組條件,則所提供的來自觸摸屏控制器的信息可以與所存儲的信息一起使用以確定用戶已經描繪了可識別的圖案。即,由用戶所描繪圖案的確切形式不重要,只要所描繪圖案滿足所存儲的信息中的一組條件即可。這可以意味著對由用戶所描繪的預先確定的圖案的大小或相對形狀沒有要求,這意味著用戶可以快速并且利用關于所描繪的確切圖案的最少精力和思考來描繪預先確定圖案。這還可以意味著所描繪圖案可以被識別,而無論其在屏幕上的朝向如何。這可以允許用戶無論在顯示器屏幕的朝向的情況下都對圖案進行描繪,例如如果用戶終端是智能電話,則無論該智能電話是豎直朝向還是水平朝向,都可以在其顯示器屏幕上描繪圖案。
[0061]圖4示出了在用戶終端的觸摸屏404上所顯示的示例性GUI。出于說明的目的,該GUI僅包含主要窗口404,盡管在其它實施例中,該GUI可以如在上文中所描述的那樣包含次要窗口和/或控制欄。
[0062]在⑶I上描繪了兩個“Z字形”圖案402和406,它們表示由用戶終端的用戶所描繪的圖案的兩個可能的示例。盡管每種圖案的大小和相對比例都不同,但是這兩種圖案都可以由手勢檢測模塊所識別,并且因此可以由終端的用戶所描繪以切換用來捕獲作為視頻通話的一部分的視頻數據的相機。
[0063]在實施例中,在手勢庫中所存儲的信息可以包含與可識別的圖案中的至少兩個手勢的相對運動向量有關的一組規則。在圖案是Z字形的實施例中,所述規則可以與組成該Z字形圖案的三個手勢的相對運動向量有關。
[0064]例如,圖案402包括一系列的手勢402A、402B和402C,其中手勢402B具有不同于手勢402A的運動向量,并且手勢402C具有不同于手勢402B的運動向量。該系列中的手勢是以什么順序被描繪的不重要,例如該手勢能夠以402A、402B接著是402C的順序被描繪。可替代地,該手勢可以以402C、402B接著是402A的順序被描繪。類似地,圖案406包括一系列的手勢406A-C。如果用戶描繪了圖案402,則用戶終端可以確定手勢402A與手勢402B之間的相對運動、以及手勢402B與手勢402C之間的相對運動是否滿足手勢庫中所存儲的關于手勢之間的相對運動的規則。同樣,如果用戶描繪了圖案406,則用戶終端能夠確定手勢406A和手勢406B之間以及手勢406B和手勢406C之間的相對運動是否滿足所存儲的規則。例如,手勢庫可以存儲指定了手勢之間的最大和/或最小方向改變的規則。如果所描繪的圖案包括落入由這些規則所設定的界限之內的手勢,則檢測模塊將所描繪的圖案識別為有關Z字形的圖案。可替代地,所存儲的信息可以有關模板圖案并且指定容差,其中所描繪的圖案必須落入該容差內以被識別為模板圖案。例如,模板圖案可以是Z字形手勢,并且所存儲的信息可以指定大小或相對運動的容差。
[0065]使得可識別的圖案是Z字形圖案可以降低終端的用戶意外地描繪該圖案的可能性。其還可以允許用戶描繪僅僅使用I只手或I個手指的圖案,其允許用戶相對容易地并且利用最少的精力來描繪圖案。另外,Z字形對于用戶而言是在觸摸屏上描繪的自然的圖案,并且因此可以允許用戶以最少的不適或者對他們可以正在執行的其它任務(例如,參與視頻通話)的最少的中斷來描繪該圖案。
[0066]盡管在上文的實施例已經描述了用戶終端的用戶描繪預先確定的圖案以實現用來捕獲作為視頻通話的一部分的視頻數據的相機的改變,但應當理解的是,在其它實施例中,用戶可以描繪預先確定的圖案來實現另一個動作,例如,結束通信事件或者瀏覽GUI。
[0067]例如,在可替代實施例中,預先確定的圖案可以是一系列的手勢,其中該系列中的每個手勢具有不同于該系列中的之前的手勢的運動向量,例如,上文中所描述的Z字形圖案。在檢測到預先確定的圖案在觸摸屏的一個區域上被描繪之后,用戶終端可以被配置為執行任何合適的動作。例如,用戶可以描繪Z字形手勢來結束通信事件(例如,視頻通話)。可替代地,用戶可以描繪Z字形模型以禁用觸摸屏,使得在屏幕上所描繪的進一步的圖案不產生效果。接著,用戶可以在屏幕上描繪進一步的Z字形圖案以啟用觸摸屏。在這些實施例中,可以以如在上文中所描述的方式來檢測Z字形圖案。即,預先確定的圖案是通過滿足某些條件來檢測的,而不是用戶必須在屏幕中的某些區域上描繪該圖案。
[0068]通常,可以使用軟件、固件、硬件(例如,固定邏輯電路)或這些實現的組合來實現在本文中所描述的功能中的任何一個功能。如在本文中所使用的術語“模塊”、“功能”、“組件”和“邏輯”通常表示軟件、固件、硬件、或其組合。在軟件實現的情況下,模塊、功能、或邏輯表示在處理器(例如,微處理器、一個或多個CPU)上被執行時執行指定的任務的程序代碼。可以將該程序代碼存儲在一個或多個計算機可讀存儲器設備中。在下文中所描述的技術的特征是不依賴平臺的,這意味著該技術可以在具有多種處理器的多種商業計算平臺上實現。
[0069]例如,用戶設備還可以包括使得用戶設備的硬件執行操作(例如,處理器功能塊等)的實體(例如,軟件)。例如,用戶設備可以包括計算機可讀介質,其可以被配置為保存使得用戶設備執行操作的指令。因此,所述指令用于配置操作系統和相關聯的硬件以執行操作,并且以這樣的方式使得操作系統的變換和相關聯的硬件來執行功能。可以由計算機可讀介質通過多種不同的配置將指令提供至用戶設備。
[0070]計算機可讀介質的一種這樣的配置是信號承載介質,并且因此被配置為將指令(例如,作為載波)傳輸至計算設備,例如,經由網絡。計算機可讀介質還可以被配置為計算機可讀存儲介質,并且因此不是信號承載介質。計算機可讀存儲介質的示例包括隨機存取存儲器(RAM)、只讀存儲器(ROM)、光盤、閃速存儲器、硬盤存儲器、以及可以使用磁、光、和其它技術來存儲指令和其它數據的其它存儲器設備。
[0071]盡管已經用特定于結構特征和/或方法行為的語言描述了本主題,但應當理解的是,在所附權利要求中所定義的主題非必須限于在上文中所描述的具體的特征或行為。相反,在上文中所描述的具體的特征或行為是作為實現所述權利要求的示例形式而公開的。
【主權項】
1.一種用戶終端,包括: 網絡接口; 觸摸屏,其被配置為接收由用戶所描繪的圖案; 第一相機,其被配置為捕獲圖像,其中所述用戶終端被配置為將所捕獲的圖像作為視頻通話的一部分從所述第一相機經由所述網絡接口傳輸至至少一個另外的用戶終端; 第二相機; 存儲器,其被配置為存儲有關至少一種圖案的信息; 檢測模塊,其被配置為使用所存儲的信息來檢測在所述用戶終端的所述觸摸屏的區域上所描繪的所述至少一種圖案中的一種;以及 控制模塊,其被配置為響應于由所述檢測模塊的檢測,而從所述第一相機切換至所述第二相機以便使用所述第二相機來捕獲圖像,所述控制模塊使得從所述第二相機所捕獲圖像經由所述網絡接口而傳輸至所述至少一個另外的用戶設備。2.根據權利要求1所述的用戶終端,其中,所述至少一種圖案中的所述一種包括一系列的至少兩個手勢,其中該系列中的每個手勢都具有不同的運動向量。3.根據權利要求1所述的用戶終端,其中,所述至少一種圖案中的所述一種是獨立于以下信息而被檢測的:所述手勢被描繪的所述觸摸屏上的位置、所描繪的手勢的大小、以及所描繪的手勢的朝向。4.根據權利要求1所述的用戶終端,其中,有關至少一種圖案的所述信息包括表征Z字形圖案的條件。5.根據權利要求4所述的用戶終端,其中: 表征所述Z字形圖案的所述條件包括由用戶所描繪的、包含一系列的三個手勢的圖案,其中,該系列的三個手勢中的每個手勢都具有不同的運動向量;并且 所述檢測模塊被配置為在由用戶所描繪的圖案滿足所述條件的情況下檢測所述至少一種圖案中的一種。6.根據權利要求1所述的用戶終端,其中,所述用戶終端被配置為: 經由所述網絡接口而從所述至少一個另外的用戶設備中接收作為所述視頻通話的一部分的視頻數據; 在所述觸摸屏的第一區域上顯示從所述第一相機或所述第二相機所捕獲的圖像;并且 在所述觸摸屏的第二區域上顯示所接收到的視頻數據; 其中,所述檢測模塊被配置為檢測在所述觸摸屏的所述第二區域中所描繪的圖案,并且其中,在所述觸摸屏的所述第一區域中所描繪的圖案不被檢測。7.根據權利要求2所述的用戶終端,其中,所述所存儲的信息包括有關所述至少兩個手勢的相對運動向量的規則,并且其中,所述檢測模塊被配置為檢測所述至少一種圖案中的一種以確定由用戶所描繪的圖案是否在有關所述至少兩個手勢的相對運動向量的所述規則內。8.根據權利要求7所述的用戶終端,其中,所述至少一種圖案可以被檢測而無論在觸摸屏上所描繪的圖案的相對比例。9.一種用于存儲代碼的計算機可讀存儲介質,所述代碼用于在用戶設備與至少一個另外的設備之間的視頻通話期間切換所述用戶設備的第一相機和第二相機,當所述代碼在用戶設備的處理器上被執行時,被配置為: 使用所述用戶設備的所述第一相機來捕獲圖像,并且將所捕獲的圖像從所述第一相機傳輸至所述至少一個另外的用戶設備; 將有關至少一種圖案的信息存儲在所述用戶設備的存儲器中; 使用所存儲的信息來檢測在所述用戶設備的觸摸屏的區域上描繪的所述至少一種圖案中的一種;并且 響應于所述檢測,從所述用戶設備的所述第一相機切換至所述用戶設備的所述第二相機以便使用所述第二相機捕獲圖像,并且將從所述第二相機所捕獲圖像傳輸至所述至少一個另外的用戶設備。10.—種檢測在用戶設備的顯示器上所描繪的圖案的方法,所述方法包括: 接收與由用戶在所述用戶設備的所述顯示器上所描繪的圖案有關的信息; 根據所接收到的信息來確定由用戶所描繪的圖案是否包括一系列的三個手勢; 根據所接收到的信息來確定該系列中的每個手勢是否具有不同的運動向量以及所述運動向量的相對運動;并且 在所述所描繪的圖案包括一系列的三個手勢并且所述三個手勢的相對運動向量在存儲器中所存儲的表征Z字形的規則內的情況下,確定已經在所述用戶設備的所述顯示器上描繪了預先確定的圖案,而無論所述所描繪的圖案的位置、大小和朝向。
【文檔編號】H04N7/14GK105940672SQ201580006462
【公開日】2016年9月14日
【申請日】2015年1月23日
【發明人】N·帕夫洛夫, O·奇納爾
【申請人】微軟技術許可有限責任公司