對額外設備觸摸事件的檢測和響應的制作方法
【專利說明】對額外設備觸摸事件的檢測和響應
[0001]背景
[0002]大多數當前的移動設備的交互空間的大小受到限制。對于當前的平板計算機和智能電話,交互空間通常受限于其觸摸屏和控制按鈕。
[0003]附圖簡述
[0004]圖1示出可檢測額外設備觸摸事件且可依據觸摸事件的位置執行不同動作的示例性移動設備。
[0005]圖2示出可檢測額外設備觸摸事件且可依據觸摸事件的位置和計時執行不同動作的示例性移動設備。
[0006]圖3是檢測額外設備觸摸事件且確定其位置的示例性方法的流程圖。
[0007]圖4是可確定額外設備觸摸事件的位置的示例性計算設備的框圖。
[0008]圖5是確定在移動設備處的額外設備觸摸事件的位置且執行動作的示例性方法的流程圖。
[0009]圖6是可實現本文中所描述的技術的示例性計算設備的框圖。
[0010]圖7是可執行作為實現本文中所描述的技術的一部分的計算機可執行指令的示例性處理器核的框圖。
[0011]詳細描述
[0012]本文中所公開的技術使移動計算設備的交互空間延伸超過該設備的物理邊界。響應于額外設備觸摸事件、可在該設備附近發生的觸摸事件,內置到該設備中的傳感器檢測該設備在該設備正停留的表面上的移動。所檢測的移動可用于至少粗略地確定觸摸事件的位置。例如,移動電話可利用內置加速計來檢測用戶的手指在圍繞電話的表面上輕叩,確定輕叩的位置,并且依據在哪里發生輕叩而執行動作。
[0013]設備的交互空間的延伸允許用戶使用其整只手或雙手、而不是僅僅使用一個或幾個手指(手指通常只與觸摸屏或者控制按鈕交互)與該設備交互。舉例而言,在移動電話上執行的音樂應用可響應于用戶在圍繞該設備的表面上擊打他的手而播放打擊樂器的聲音。該應用可依據用戶在哪里敲打他或她的手而播放不同的聲音。經延伸的交互空間還允許更多用戶同時與單個設備交互,或者至少允許多個用戶同時與單個設備更便利地交互。例如,考慮在平板計算機上執行的問答游戲,該平板計算機可基于哪一個用戶在平板鄰近的表面上輕叩他的手而檢測若干用戶中的哪一個被給予回答問題的機會。與如果用戶不得不圍攏在平板周圍通過與平板的觸摸屏交互來參與相比,用戶與這種游戲交互可能更加便利。
[0014]現在參考附圖,其中相似的附圖標記自始至終用于引用相似的元件。在以下描述中,出于解釋的目的,闡述了大量具體細節以提供對它的透徹理解,然而,可在不具有這些具體細節的情況下實踐新穎的實施例可以是顯而易見的。在其他實例中,以框圖的形式示出眾所周知的結構和設備以便于對它們的描述。意圖是覆蓋權利要求范圍內的所有修改、等同、以及替換。
[0015]如本文中所使用的,術語“觸摸事件”和“額外空間觸摸事件”指的是物體與移動設備附近的該設備所在的表面的交互。物體可以是例如用戶的手指或整只手、鉛筆、鼓槌或指示筆,并且表面可以是例如臺面、桌子或地板。由此,觸摸事件可以是各種各樣的交互,諸如手指或鉛筆在桌子上輕叩或者張開的手掌在臺面上敲擊。如果移動設備的傳感器可檢測觸摸事件,則該觸摸事件在該設備附近發生。即,如果觸摸事件引起移動設備的可檢測移動,則該觸摸事件在該設備附近。相應地,移動設備附近可依據各種因素(諸如該設備正停留的平臺的材料、用于創建觸摸事件的物體、物體敲擊表面的強度、以及移動傳感器的靈敏度)而變化。
[0016]圖1示出可檢測額外設備觸摸事件且可依據觸摸事件的位置執行不同動作的示例性移動設備100。移動計算設備(移動設備)100可以是本文中所描述的任何類型的移動設備,諸如移動電話(如圖所示)、平板或膝上計算機。移動設備100正停留在平臺的表面110上并且正在執行電子鼓應用,該電子鼓應用響應于用戶敲打該設備附近的表面而播放各種打擊樂器的聲音。當用戶的手120或130敲打表面110時,創建可引起設備100移動的振動140和150,該移動由該設備的內置傳感器檢測。
[0017]傳感器生成指示移動設備的移動的輸出。典型地,傳感器包括加速計,該加速計生成反映該設備在一個或多個平面(例如,X、Y和Z平面)上的加速的輸出。在一些實施例中,移動設備可包括檢測觸摸事件的一個以上的加速計。在尚有的其他實施例中,陀螺儀可與一個或多個加速計結合使用以檢測觸摸事件,在一些實施例,陀螺儀提供指示設備圍繞一個或多個軸(例如,X、Y和Z軸)的角定向的輸出,從而實現對設備的搖動、傾跌和滾動的測量。
[0018]移動設備100可依據所檢測的觸摸事件的位置執行不同的動作。例如,移動設備100可依據用戶在哪里敲擊附近的周圍表面而播放不同的聲音。舉例而言,如果手在表面110上敲擊引起要播放的手鼓聲,則移動設備100可將周圍區域分割成多個區域,并且依據手已經在哪里敲擊而播放不同的手鼓聲。在另一實施例中,可依據觸摸事件位置播放不同的打擊樂器的聲音。例如,可對設備100進行編程,從而響應于用戶的左手敲打該設備左邊的表面,可播放軍鼓聲,并且如果用戶的右手敲打該設備右邊的表面,則可播放地嗵嗵噪聲。移動設備100周圍的區域可被分割成任意數量的分區,并且各個分區可采用任何形狀,只要用戶設備能夠在單獨的分區內發生的觸摸事件之間進行區分。舉例而言,具有兩個以上分區的分割方案可允許用戶假裝他或她打整套架子鼓,其中依據用戶在表面110上哪里敲打他或她的手而播放踩镲、炸镲、軍鼓、各種嗵鼓和底鼓的聲音。
[0019]所確定的觸摸事件的位置可包括例如相對于移動設備的方向和/或距移動設備的距離。例如,該方向可指示觸摸事件已經在離移動設備的特定邊緣(例如,上邊、下邊、左邊、右邊)最近處發生,或者在特定角坐標處發生。舉例而言,參考圖1,手120的方向可被確定為在周圍區域的左半或左下象限中,在7點位置處或者在角坐標系統內的200度處。手130的方向可被確定為在右半、右下象限中,在4點位置處或者在315度處。由此,在一些實施例中,該方向可至少部分地基于該設備如何分區其周圍區域。
[0020]圖2示出可檢測額外設備觸摸事件且可依據觸摸事件的位置和計時執行不同動作的示例性移動設備200。計算設備200可以是平板計算機或者本文中所描述的任何其他移動設備,正在執行問答游戲應用,其中給予用手(例如,手220、221、222或223)敲打表面210的第一用戶回答問題的機會。通過使交互表面延伸超過移動設備200的觸摸屏230,有可能增加可在移動設備上玩多玩家游戲的玩家的數量或者至少使多個用戶玩游戲更便利。通過簡單地敲擊該設備附近的表面210能夠與設備200交互,多個用戶不需要圍攏在觸摸屏230周圍來玩游戲。
[0021]圖3是檢測額外設備觸摸事件且確定其位置的示例性方法300的流程圖。方法300可在移動設備的任何級別上(諸如在軟件應用級或者操作系統級上)操作。典型地,方法300在操作系統級上操作,并且與軟件應用和/或操作系統組件進行通信。
[0022]在處理動作310,將傳感器值讀入該設備的緩沖器(或者其他存儲器結構或組件)。雖然方法300示出如繼續讀取的傳感器值,但是如最終返回300的流程圖中的路徑所指示的,只要傳感器值的讀取由應用或操作系統組件實現,傳感器值就可同步地、異步地或連續地讀取。一個或多個最近的傳感器值可被存儲在緩沖器中,并且傳感器值可包括指示該設備在一個或多個平面上的加速度或者該設備圍繞一個或多個軸的加速度的值。
[0023]在處理動作320,確定傳感器值是否指示觸摸事件的發生。各種方法可用于確定傳感器值是否指示觸摸事件。例如,在一些實施例中,可將傳感器值與觸摸事件閾值進行比較,其中觸摸事件由超過該閾值的一個或多個加速計讀數指示。在傳感器值包括多個加速平面或多個傳感器的值的實施例中,來自不到所有的平面和/或不到所有的傳感器的傳感器讀數可用于確定觸摸事件的存在。
[0024]如果傳感器值指示觸摸事件,則在處理動作330,確定觸摸事件是不是額外設備觸摸事件。如果為否,則該方法返回310并且讀取新的傳感器值。確定觸摸事件是不是額外設備觸摸事件可包括確定用戶是否已經經由與該設備的直接物理接觸(諸如經由與觸摸屏的交互或者按壓控制按鈕)將輸入供應給該設備。如果觸摸事件被確定為額外設備觸摸事件,則在處理動作340,方法300計算觸摸事件的特征向量并將該特征向量傳遞給分類器。如果觸摸事件被確定為不是額外設備觸摸事件,則方法300返回310并且讀取新的傳感器值。在方法300的一些實施例中,如果傳感器值指示觸摸事件的存在,則省掉處理動作300并且方法300從320前進到340。處理動作330可在例如不期望用戶輸入直接供應給移動設備的情形中省掉。
[0025]在處理動作340,根據傳感器值確定包括一個或多個觸摸事件特征的向量。觸摸事件特征向量可包括例如通過對傳感器值進行傅立葉變換(諸如快速傅立葉變換)而獲得的頻域信息、最小值和最大值等。觸摸事件特征向量可包括時域、頻域、其他類型的信息、或者其任何組合。
[0026]—旦被確定,觸摸事件特征向量就被傳遞給分類器。在一些實施例中,使用機器學習原理來訓練分類器,其中一組訓練示例(或向量)被供應給分類器以訓練分類器能夠確定觸摸事件的位置。在一些實施例中,分類器可以是k-最鄰近(kNN)分類器。在kNN分類器中,給定表示查詢點的輸入觸摸事件特征向量,在訓練數據中找到在距離上最接近于查詢點的k個示例。然后,基于k個示例中的多數投票向輸入特征向量分配類。該類是所確定的觸摸事件位置,在一些實施例中,如果適當的訓練集已經被提供給分類器,則對觸摸事件特征向量的分類可確定多個用戶所提供的多個同時輕叩的位置。
[0027]可使用各種方法來創建分類器。通過向移動設備提供已知觸摸事件的一組訓練示例來創建分類器,這被稱為訓練該分類器。可以各種方式創建訓練集。在一個實施例中,將移動設備放置在表面上并且啟動訓練應用。該應用將指令提供給用戶,在該應用上,用戶在圍繞電話的表面上創建觸摸事件。訓練示例可包括在圍繞移動設備的不同位置處發生的觸摸事件、具有強度的觸摸事件、使用不同物體(例如,鉛筆、指示筆)或者用戶的手的一部分(例如,單個、多個手指、拳頭、張開的手)創建的觸摸事件、直接供應給移動設備(例如,觸摸屏或控制按鈕)的觸摸事件、供應給不同平臺(例如,木頭、花崗石)的觸摸事件、以及同時發生的多個觸摸事件。
當前第1頁
1 
2 
3 
4 
5