虛擬鍵盤處的手勢輸入的制作方法
【專利摘要】計算設(shè)備被操作地耦合到與虛擬鍵盤相關(guān)聯(lián)的存在敏感表面。計算設(shè)備在與虛擬鍵盤相關(guān)聯(lián)的存在敏感表面的一部分上接收手勢輸入的指示。作為響應(yīng),計算設(shè)備定義一系列輸入點,其表示跨虛擬鍵盤的手勢輸入的路徑。另外,計算設(shè)備定義用于虛擬鍵盤的虛擬鍵的錨定點。計算設(shè)備然后基于輸入點與錨定點之間的存在敏感表面上的距離來確定用于錨定點詞的距離分值。計算設(shè)備基于用于錨定點的距離分值來識別對應(yīng)于手勢輸入的詞。
【專利說明】虛擬鍵盤處的手勢輸入
【背景技術(shù)】
[0001] 傳統(tǒng)上,用戶經(jīng)由物理鍵盤向計算設(shè)備提供文本輸入。物理鍵盤包括對應(yīng)于不同 字符和功能的物理、可按按鈕。
[0002] 然而,許多類型的現(xiàn)代計算設(shè)備不具有物理鍵盤。例如,諸如智能電話和平板計算 機的許多移動計算設(shè)備不具有物理鍵盤。替代地,計算設(shè)備可包括顯示"虛擬"鍵盤的存在 敏感顯示器(例如,觸摸屏)。虛擬鍵盤可包括對應(yīng)于不同字符和功能的虛擬鍵。每個虛擬 鍵可對應(yīng)于存在敏感顯不器的不冋區(qū)域。
[0003] 在某些情況下,用戶可通過在計算設(shè)備所顯示的虛擬鍵盤的虛擬鍵上輕敲用戶的 手指或觸針來向計算設(shè)備提供文本輸入。因此,為了輸入詞語"text",用戶可在對應(yīng)于字母 "t"的虛擬鍵上輕敲,然后在對應(yīng)于字母"e"的虛擬鍵上輕敲,然后在對應(yīng)于字母"X"的虛 擬鍵上輕敲,并且然后在對應(yīng)于字母"t"的虛擬鍵上輕敲。
[0004] 通過輕敲虛擬鍵來向計算設(shè)備提供文本輸入對于某些用戶可能是有問題的。例 如,用戶可能發(fā)現(xiàn)難以準(zhǔn)確地敲擊正確的虛擬鍵,尤其是小的虛擬鍵盤。此外,由于用戶不 能感覺到虛擬鍵盤的虛擬鍵,所以用戶的手指可能滑移到虛擬鍵盤之外,導(dǎo)致鍵入準(zhǔn)確度 的下降。
【發(fā)明內(nèi)容】
[0005] -般地,本公開描述了用于在計算設(shè)備處接收輸入的技術(shù)。如本文所述,計算設(shè)備 可在與虛擬鍵盤相關(guān)聯(lián)的存在敏感表面的一部分處接收手勢輸入的指示。手勢輸入可對應(yīng) 于特定詞。為了確定哪個詞對應(yīng)于手勢輸入,計算設(shè)備可定義一系列輸入點,其表示跨虛擬 鍵盤的手勢輸入的路徑。另外,計算設(shè)備可定義用于不同詞的錨定點的集合。用于詞的錨 定點可對應(yīng)于與詞相關(guān)聯(lián)的不同虛擬鍵的位置。計算設(shè)備可確定用于每個錨定點的距離分 值。該計算設(shè)備可基于錨定點與最接近于錨定點的輸入點之間的在存在敏感表面上的距離 來確定用于錨定點的距離分值。該計算設(shè)備可基于用于錨定點的距離分值來識別對應(yīng)于手 勢輸入的詞。以這種方式來確定哪個詞對應(yīng)于手勢輸入可以增加用戶可向計算設(shè)備輸入文 本的速度和準(zhǔn)確度。
[0006] 在一方面,本公開描述了一種包括在設(shè)備處接收與虛擬鍵盤相關(guān)聯(lián)的存在敏感表 面的一部分處的手勢輸入的指示的方法。虛擬鍵盤包括虛擬鍵集合。來自虛擬鍵集合的每 個虛擬鍵與存在敏感表面的區(qū)域相關(guān)聯(lián)。該方法還包括在設(shè)備處定義一系列輸入點,其表 示跨虛擬鍵盤的手勢輸入的路徑。另外,該方法包括在設(shè)備處定義對應(yīng)于候選詞集合中的 不同詞的錨定點集合。每個錨定點對應(yīng)于與來自虛擬鍵集合的虛擬鍵相關(guān)聯(lián)的存在敏感表 面的位置。該方法還包括在設(shè)備處針對每個錨定點集合中的每個相應(yīng)錨定點識別所述一系 列輸入點中的相關(guān)輸入點。此外,該方法包括在設(shè)備處確定用于錨定點集合中的每個相應(yīng) 錨定點的距離分值。針對錨定點集合中的每個錨定點,用于相應(yīng)錨定點的距離分值是基于 相應(yīng)錨定點與用于相應(yīng)錨定點的相關(guān)輸入點之間的在存在敏感表面上的距離。另外,該方 法包括在設(shè)備處基于用于錨定點的距離分值來識別對應(yīng)于手勢的候選詞集合中的詞。
[0007] 在另一方面,本公開描述了一種計算設(shè)備,其包括存在敏感顯示器、處理器以及存 儲指令的存儲器,該指令在被處理器執(zhí)行時將計算設(shè)備配置成在存在敏感顯示器處輸出虛 擬鍵盤以顯示。該指令還將計算設(shè)備配置成接收與虛擬鍵盤相關(guān)聯(lián)的存在敏感顯示器的一 部分處的手勢輸入的指示。另外,該指令將計算設(shè)備配置成定義一系列輸入點,其表示跨虛 擬鍵盤的手勢輸入的路徑。該指令還將計算設(shè)備配置成定義錨定點集合,其對應(yīng)于候選詞 集合中的不同詞。每個錨定點對應(yīng)于與來自虛擬鍵集合的虛擬鍵相關(guān)聯(lián)的存在敏感顯示器 的位置。此外,該指令將計算設(shè)備配置成針對每個錨定點集合中的每個相應(yīng)錨定點而識別 所述一系列輸入點中的相關(guān)輸入點。另外,該指令將計算設(shè)備配置成確定用于錨定點集合 中的每個相應(yīng)錨定點的距離分值。針對錨定點集合中的每個錨定點,用于各錨定點的距離 分值是基于錨定點與用于錨定點的相關(guān)輸入點之間的在存在敏感表面上的距離。該指令還 將計算設(shè)備配置成基于用于對應(yīng)于詞的錨定點的距離分值來確定用于詞的分值。另外,該 指令將計算設(shè)備配置成基于用于詞的分值來識別對應(yīng)于手勢輸入的候選詞集合中的給定 。
[0008] 在另一方面,本公開描述了一種計算機可讀的存儲介質(zhì),其包括用于促使計算設(shè) 備的一個或多個處理器執(zhí)行操作的指令,該操作包括在操作地耦合到計算設(shè)備的存在敏感 顯示器處輸出虛擬鍵盤以顯示,該虛擬鍵盤包括與字符相關(guān)聯(lián)的虛擬鍵。該操作還包括:如 果存在敏感顯示器在與虛擬鍵盤相關(guān)聯(lián)的位置處檢測到輸入對象的存在,、則接收手勢輸 入開始的指示。另外,該操作包括響應(yīng)于接收到輸入對象移動至與輸入手勢完成相關(guān)聯(lián)的 位置的指示而接收手勢輸入完成的指示。此外,該操作包括定義表示跨虛擬鍵盤的手勢輸 入的路徑的一系列輸入點。該操作還包括對所述一系列輸入點進行下采樣并定義錨定點集 合,其對應(yīng)于候選詞集合中的不同詞。每個錨定點對應(yīng)于與虛擬鍵中的一個相關(guān)聯(lián)的存在 敏感顯示器的位置。另外,所述操作包括針對每個錨定點集合中的每個相應(yīng)錨定點而識別 錨定點集合中的相關(guān)輸入點。所述操作還包括確定用于錨定點集合中的每個相應(yīng)錨定點的 距離分值。針對錨定點集合中的每個錨定點,用于相應(yīng)錨定點的距離分值是基于相應(yīng)錨定 點與用于相應(yīng)錨定點的相關(guān)輸入點之間的在存在敏感表面上的距離。所述操作還包括基于 距離分值而確定用于詞的分值。此外,所述操作包括基于用于詞的分值而識別對應(yīng)于手勢 輸入的詞。所述操作還包括在存在敏感顯示器上輸出詞。
[0009] 在附圖和下面的描述中闡述了一個或多個示例的細(xì)節(jié)。根據(jù)描述和附圖以及根據(jù) 權(quán)利要求,其他特征、目的以及優(yōu)點將變得顯而易見。
【專利附圖】
【附圖說明】
[0010] 圖1是圖示出可實現(xiàn)本公開的一個或多個技術(shù)的示例性計算設(shè)備的概念圖。
[0011] 圖2是圖示出手勢輸入的路徑被疊加在虛擬鍵盤上的情況下的圖1的示例性計算 設(shè)備的概念圖。
[0012] 圖3是圖示出圖1的示例性計算設(shè)備的概念圖,示出了處理對應(yīng)于圖2的手勢輸 入的詞的示例性結(jié)果。
[0013] 圖4是圖示出對應(yīng)于圖2的手勢輸入的示例性輸入點系列的概念圖。
[0014] 圖5A是圖示出第一詞的示例性錨定點與圖4的輸入點之間的距離的概念圖。
[0015] 圖5B是圖示出用于第二詞的示例性錨定點與圖4的輸入點之間的距離的概念圖。
[0016] 圖6是圖示出根據(jù)本公開的技術(shù)的用以接收文本輸入的計算設(shè)備的示例性操作 的流程圖。
[0017] 圖7是圖示出由計算設(shè)備執(zhí)行以使用輸入點來識別對應(yīng)于手勢輸入的詞的示例 性操作的流程圖。
[0018] 圖8是圖示出由計算設(shè)備執(zhí)行以計算用于錨定點的距離分值的示例性操作的第 一部分的流程圖。
[0019] 圖9是圖示出用以計算用于詞的錨定點的距離分值的圖8的示例性操作的第二部 分的流程圖。
[0020] 圖10是圖示出用以基于用于詞的錨定分值和用于詞的形狀分值來識別對應(yīng)于手 勢輸入的詞的計算設(shè)備的示例性操作的流程圖。
[0021] 圖IlA是圖示出示例性輸入點與用于第一詞的示例性形狀模板之間的示例性距 離的概念圖。
[0022] 圖IlB是圖示出示例性輸入點與用于第二詞的示例性形狀模板之間的示例性距 離的概念圖。
[0023] 圖12是圖示出計算設(shè)備的示例性配置的框圖。
[0024] 圖13是圖示出根據(jù)本公開的一個或多個技術(shù)的示例性操作的流程圖。
【具體實施方式】
[0025] 附圖圖示了示例。在附圖中用附圖標(biāo)記指示的元素對應(yīng)于在以下描述中用相同的 附圖標(biāo)記指示的元素。在附圖中,附圖中的堆疊元素指示一個或多個類似元素的存在。在 本公開中,具有以序數(shù)詞(例如,"第一"、"第二"、"第三"等)開始的名稱的元素不一定意 指該元素具有特定順序。相反,此類序數(shù)詞可僅僅用來參考相同或類似類型的不同元素。
[0026] 如下面詳細(xì)地描述的,可將計算設(shè)備操作地耦合到與虛擬鍵盤相關(guān)聯(lián)的存在敏感 表面。該虛擬鍵盤可包括虛擬鍵集合。在某些示例中,虛擬鍵盤可包括對應(yīng)于字母或字符 的虛擬鍵。例如,第一虛擬鍵可對應(yīng)于字母"q",第二虛擬鍵可對應(yīng)于字母"《",第三虛擬鍵 可對應(yīng)于字母"e"等。來自虛擬鍵集合的每個虛擬鍵可對應(yīng)于存在敏感表面的不同區(qū)或區(qū) 域。
[0027] 當(dāng)用戶向計算設(shè)備輸入詞時,計算設(shè)備可在與虛擬鍵盤相關(guān)聯(lián)的存在敏感表面的 一部分處接收手勢輸入的指示。當(dāng)計算設(shè)備接收到手勢輸入的指示時,計算設(shè)備可確定諸 如手指或觸針之類的輸入對象已移動至與輸入詞所需的虛擬鍵相對應(yīng)的存在敏感表面區(qū) 域。計算設(shè)備可在整個移動期間檢測輸入對象的存在。例如,當(dāng)用戶輸入詞"hat"時,計算 設(shè)備可檢測在對應(yīng)于與字母"h"相對應(yīng)的虛擬鍵的區(qū)域處的輸入對象。在繼續(xù)檢測輸入對 象的存在的同時,計算設(shè)備可檢測輸入對象到對應(yīng)于字母"a"的區(qū)域的滑動。在本示例中, 在繼續(xù)檢測輸入對象的存在的同時,計算設(shè)備然后可檢測輸入對象到對應(yīng)于字母"t"的區(qū) 域的進一步滑動。在本示例中,當(dāng)計算設(shè)備確定輸入對象已移動至與手勢輸入的完成相關(guān) 聯(lián)的位置時,計算設(shè)備可確定手勢輸入完成。例如,當(dāng)計算設(shè)備停止能夠檢測到存在敏感表 面處的輸入對象的存在時,諸如當(dāng)用戶將輸入對象從存在敏感表面提升時,計算設(shè)備可確 定手勢輸入完成。
[0028] 根據(jù)本公開的技術(shù),計算設(shè)備可在與虛擬鍵盤相關(guān)聯(lián)的存在敏感表面的一部分處 接收手勢輸入的指示。作為響應(yīng),計算設(shè)備可定義一系列"輸入"點。該輸入點可表示跨虛 擬鍵盤的手勢輸入的路徑。為了便于說明,本公開可將跨虛擬鍵盤的手勢輸入路徑稱為"所 檢測的路徑"。計算設(shè)備可定義用于候選詞集合中的不同詞的錨定點集合。換言之,計算設(shè) 備可定義對應(yīng)于候選詞集合中的不同詞的錨定點集合。
[0029] 每個錨定點可對應(yīng)于與來自虛擬鍵集合的虛擬鍵相關(guān)聯(lián)的存在敏感表面上的位 置。例如,第一錨定點可對應(yīng)于與用于字母"q"的虛擬鍵相關(guān)聯(lián)的存在敏感表面上的位置, 第二錨定點可對應(yīng)于與用于字母的虛擬鍵相關(guān)聯(lián)的存在敏感表面上的位置等等。
[0030] 用于詞的錨定點可對應(yīng)于用來輸入詞的虛擬鍵。例如,用于詞"hat"的錨定點可 包括對應(yīng)于用于字母"h"的虛擬鍵的錨定點、對應(yīng)于用于字母"a"的虛擬鍵的錨定點以及 對應(yīng)于用于字母"t"的虛擬鍵的錨定點。
[0031] 計算設(shè)備然后可識別用于每個錨定點集合中的每個相應(yīng)錨定點的相關(guān)輸入點。在 某些情況下,用于錨定點的相關(guān)輸入點可以是最接近于錨定點的輸入點。計算設(shè)備然后可 確定用于錨定點集合中的每個相應(yīng)錨定點的距離分值。用于錨定點的距離分值可基于錨定 點與用于相應(yīng)錨定點的相關(guān)輸入點之間的在存在敏感表面上的距離。接下來,計算設(shè)備可 基于用于錨定點的距離分值而識別來自對應(yīng)于手勢輸入的候選詞集合的詞。
[0032] 本公開的技術(shù)可使得用戶能夠比其中用戶在對應(yīng)于分立虛擬鍵的存在敏感表面 的區(qū)域上執(zhí)行離散輕敲手勢輸入的系統(tǒng)更快且更準(zhǔn)確地輸入詞。此外,本公開的技術(shù)可使 得計算設(shè)備能夠比其中用戶通過跨與虛擬鍵相關(guān)聯(lián)的存在敏感表面的區(qū)域滑動輸入對象 (例如,手指或觸針)而不將輸入對象移動至其中存在敏感表面不能檢測輸入對象的位置 的其他系統(tǒng)更快且更準(zhǔn)確地識別詞。
[0033] 圖1是圖示出可實現(xiàn)本公開的一個或多個技術(shù)的示例性計算設(shè)備10的概念圖。在 圖1的示例中,計算設(shè)備10被示為移動電話或平板計算機。然而,其他類型的計算設(shè)備可 實現(xiàn)本公開的技術(shù)。例如,本公開的技術(shù)可由臺式計算機、膝上型計算機、車載計算機、家用 電器、商用或工業(yè)機器、零售店設(shè)備、個人媒體播放器、便攜式視頻游戲設(shè)備、視頻游戲控制 臺、游戲設(shè)備及其他類型的計算設(shè)備實現(xiàn)。
[0034] 可將計算設(shè)備10操作地耦合到顯示器12。顯示器12可以是存在敏感顯示器(例 如,觸摸屏)。計算設(shè)備10可在顯示器12處輸出虛擬鍵盤14以顯示。虛擬鍵盤14可包括 虛擬鍵16集合。每個虛擬鍵16可對應(yīng)于顯示器12的不同區(qū)域。
[0035] 可以各種方式將顯示器12操作地耦合到計算設(shè)備10。在圖1的示例中,顯示器 12被集成到計算設(shè)備10的外殼中。在其他示例中,顯示器12可在物理上與計算設(shè)備10分 離,但是可經(jīng)由一個或多個有線和/或無線通信信道將其操作地耦合到計算設(shè)備10。
[0036] 在其他示例中,實現(xiàn)本公開的技術(shù)的計算設(shè)備不一定在存在敏感顯示器上輸出虛 擬鍵盤以顯示。相反地,計算設(shè)備可在可以是也可以不是存在敏感顯示器的存在敏感表面 處接收手勢輸入的指示。例如,可將計算設(shè)備操作地耦合到能夠檢測一個或多個輸入對象 的存在的存在敏感表面。在本示例中,可將指示對應(yīng)于虛擬鍵的區(qū)域的物理標(biāo)記在物理上 施加于存在敏感表面。例如,計算設(shè)備10可以是裝配有封蓋的平板計算機,該封蓋在平板 計算機不使用時覆蓋平板計算機的顯示屏。在本示例中,當(dāng)平板計算機在使用中時,封蓋可 水平地??吭谄桨逵嬎銠C前面。此外,在本示例中,封蓋可包括存在敏感表面,并且可將指 示對應(yīng)于虛擬鍵的區(qū)域的物理標(biāo)記施加于擴該的內(nèi)表面。在本示例中,平板計算機的用戶 可以能夠使用封蓋的內(nèi)表面作為鍵盤。
[0037] 除在顯示器12處輸出虛擬鍵盤14以顯示之外,計算設(shè)備10可在顯示器12處輸 出文本輸入?yún)^(qū)18。文本輸入?yún)^(qū)18可包括顯示器12的區(qū)域,在該處計算設(shè)備10可檢測來自 用戶的文本輸入。在圖1的示例中,文本輸入?yún)^(qū)18包含計算設(shè)備10的用戶與名為"Jill" 的另一用戶之間的會話的文本。該會話可以是經(jīng)由即時消息應(yīng)用、經(jīng)由文本消息發(fā)送應(yīng)用 (例如,短消息服務(wù)(SMS))或者經(jīng)由另一通信應(yīng)用。在圖1的示例中,計算設(shè)備10的用戶 正在輸入文本以答復(fù)來自另一用戶的消息。
[0038] 在其他示例中,計算設(shè)備的用戶可由于除執(zhí)行與另一用戶的會話之外的原因輸入 文本。例如,計算設(shè)備的用戶可輸入文本以進行記錄、輸入命令、制作列表、撰寫文檔、準(zhǔn)備 編程語言代碼、準(zhǔn)備web內(nèi)容、向社交聯(lián)網(wǎng)服務(wù)發(fā)帖以及執(zhí)行涉及文本輸入的其他任務(wù)。
[0039] 當(dāng)用戶向計算設(shè)備10輸入詞時,計算設(shè)備10可在對應(yīng)于虛擬鍵盤14的顯示器12 的一部分處接收手勢輸入的指示。當(dāng)計算設(shè)備10接收到手勢輸入的指示時,計算設(shè)備10 可在對應(yīng)于與詞相對應(yīng)的虛擬鍵16中的一些的顯示器12的區(qū)域處檢測輸入對象的存在。 在某些示例中,輸入對象可以是手指或拇指。在其他示例中,輸入對象可以是觸針。計算設(shè) 備10可隨著計算設(shè)備10接收到手勢輸入的指示而繼續(xù)檢測輸入對象的存在。例如,在某 些示例中,用戶將輸入對象移動至與手勢輸入的完成相關(guān)聯(lián)的位置直至用戶已將手指或觸 針移動至對應(yīng)于用于詞的最后字母的虛擬鍵的顯示器12的區(qū)域為止。
[0040] 在其中針對用字母文字所寫的諸如英語和俄語之類的語言設(shè)計虛擬鍵盤14的示 例中,計算設(shè)備10可在對應(yīng)于與詞中的字母相關(guān)聯(lián)的虛擬鍵16中的一些的顯示器12的區(qū) 域處檢測輸入對象的存在。在其中針對用語標(biāo)和/或拼音文字所寫的諸如中文之類的語 言設(shè)計虛擬鍵盤14的示例中,計算設(shè)備10可在對應(yīng)于與詞或音節(jié)的語音或組成部分相關(guān) 聯(lián)的虛擬鍵16中的一些的顯示器12的區(qū)域處檢測輸入對象的存在。當(dāng)使用虛擬鍵來輸入 詞時,虛擬鍵可與詞相關(guān)聯(lián)。
[0041] 圖2是圖示出手勢輸入的所檢測的路徑30被疊加在虛擬鍵盤14的情況下的計算 設(shè)備10的概念圖。所檢測的路徑30可對應(yīng)于顯示器12的區(qū)域,在該處計算設(shè)備10在用 戶執(zhí)行手勢輸入時檢測到輸入對象的存在。在圖2的示例中,用戶正在嘗試輸入詞"first"。 相應(yīng)地,用戶首先將諸如手指或指針之類的輸入對象定位于對應(yīng)于用于字母"f"的虛擬鍵 的顯示器12的區(qū)域處,然后將輸入對象滑動到對應(yīng)于用于字母"1"、"1""、",和1"的虛擬 鍵的顯示器12的區(qū)域,同時將輸入對象保持在其中顯示器12能夠檢測輸入對象的存在的 空間內(nèi)。在用戶將輸入對象移動至對應(yīng)于用于字母"t"的虛擬鍵的顯示器12的區(qū)域之后, 用戶可將輸入對象移動至與手勢輸入完成相關(guān)聯(lián)的位置。例如,用戶可將輸入對象移動至 其中顯示器12不再能夠檢測到輸入對象的存在的位置。在另一示例中,用戶可將輸入對象 移動至在虛擬鍵盤14外面的顯示器12上的位置。在典型示例中,計算設(shè)備10不輸出所檢 測的路徑30以在顯示器12上顯示。
[0042] 當(dāng)用戶執(zhí)行手勢輸入時,計算設(shè)備10可在對應(yīng)于虛擬鍵盤14的顯示器12的一部 分處接收手勢輸入的指示。響應(yīng)于接收到手勢輸入的指示,計算設(shè)備10可識別對應(yīng)于手勢 輸入的詞。例如,在圖2的示例中,當(dāng)計算設(shè)備10接收到與所檢測的路徑30相關(guān)聯(lián)的手勢 輸入的指示時,計算設(shè)備10可將詞"first"識別為對應(yīng)于手勢輸入的詞。
[0043] 在某些情況下,用戶可執(zhí)行其中用戶并不精確地將輸入對象移動至與期望詞相關(guān) 聯(lián)的每個虛擬鍵的手勢輸入。在這種情況下,計算設(shè)備10可以仍能夠確定手勢輸入對應(yīng) 于期望詞。例如,如果用戶執(zhí)行其中用戶將輸入對象移動至相對接近與期望詞相關(guān)聯(lián)的虛 擬鍵的顯示器12的區(qū)域的手勢輸入,則計算設(shè)備10可以仍能夠確定手勢輸入對應(yīng)于期望 詞。在本示例中,如果用戶想要輸入詞"first",則計算設(shè)備10可仍能夠確定手勢輸入對應(yīng) 于詞"first",即使用戶實際上沒有將輸入對象移動至用于字母 虛擬鍵。
[0044] 在識別對應(yīng)于手勢輸入的詞之后,計算設(shè)備10可以各種方式來處理詞。例如,計 算設(shè)備10可將表示詞的數(shù)據(jù)存儲到數(shù)據(jù)存儲介質(zhì)、輸出詞的發(fā)聲、將表示詞的數(shù)據(jù)發(fā)送到 另一計算設(shè)備或者以另外方式處理詞。在某些示例中,計算設(shè)備10可以輸出詞以便在顯示 器12上顯示。如上面關(guān)于圖2所述,用戶可執(zhí)行對應(yīng)于詞"first"的手勢輸入。圖3是圖 示出計算設(shè)備10的概念圖,示出了處理詞"first"的示例性結(jié)果。在圖3的示例中,計算設(shè) 備10可在顯示器12的文本輸入?yún)^(qū)18中輸出詞"first",從而完成短語"Are we getting dinner first,'。
[0045] 為了識別對應(yīng)于手勢輸入的詞,計算設(shè)備10可定義表示跨虛擬鍵盤14的手勢輸 入的路徑的一系列輸入點。每個輸入點可表示顯示器12上的離散點,在該處計算設(shè)備10 檢測到輸入對象的存在。例如,每個輸入點可表示用戶在執(zhí)行手勢輸入時觸摸的顯示器12 上的離散點。每個輸入點可具有不同的(x,y)坐標(biāo)。這樣,計算設(shè)備10可將手勢輸入的連 續(xù)滑動表示為一系列離散點。
[0046] 圖4是圖不出對應(yīng)于圖2的手勢輸入的不例性輸入點50系列的概念圖。為了明 了起見,圖4不包括用于每個輸入點50的附圖標(biāo)記。輸入點50在沿著所檢測的路徑30的 位置處發(fā)生。如上面所討論的,所檢測的路徑30可對應(yīng)于顯示器12的區(qū)域,在該處計算設(shè) 備10檢測到輸入對象的存在。在典型示例中,計算設(shè)備10不輸出輸入點50以在顯示器12 上顯示。
[0047] 另外,計算設(shè)備10可定義用于候選詞集合中的不同詞的錨定點集合。每個錨定點 可對應(yīng)于與虛擬鍵16中的一個相關(guān)聯(lián)的顯示器12上的位置。例如,一個錨定點可對應(yīng)于 用于字母"q"的虛擬鍵,另一錨定點可對應(yīng)于用于字母的虛擬鍵等等。為了便于說明, 本公開可將對應(yīng)于用于給定字母的虛擬鍵的錨定點稱為用于給定字母的錨定點。
[0048] 用于詞的錨定點集合中的每個錨定點可對應(yīng)于與詞相關(guān)聯(lián)的虛擬鍵。例如,用于 詞"first"的錨定點集合可包括用于字母竹"、"1"、"1'"、",和"丨"的錨定點。在另一示例 中,用于詞"ghost"的錨定點集合可包括用于字母"g"、"h"、"〇"、"s"和"t "的錨定點。
[0049] 計算設(shè)備10可針對每個錨定點集合中的每個相應(yīng)錨定點識別所述一系列輸入點 中的相關(guān)輸入點。例如,用于詞"first"的錨定點集合可包括用于字母 "t"的錨定點。在本示例中,計算設(shè)備10可將輸入點50(圖4)中的一個識別為用于字母 "f"的錨定點的相關(guān)輸入點,將輸入點50中的一個識別為用于字母"i"的錨定點的相關(guān)輸 入點,將輸入點50中的一個識別為用于字母"r"的錨定點的相關(guān)輸入點等等。如下所述, 計算設(shè)備10可以各種方式來識別用于錨定點的相關(guān)輸入點。例如,計算設(shè)備10可將最接 近錨定點的輸入點識別為用于錨定點的相關(guān)輸入點。
[0050] 在識別用于詞的錨定點的相關(guān)輸入點之后,計算設(shè)備10可確定用于詞的每個錨 定點的距離分值。用于錨定點的距離分值可基于錨定點與用于錨定點的相關(guān)輸入點之間的 在顯示器12上的距離。例如,第一錨定點可對應(yīng)于字母"f",第二錨定點可對應(yīng)于字母"i" 等等。在本示例中,用于第一錨定點的距離分值可基于第一錨定點與用于第一錨定點的相 關(guān)輸入點之間的距離,用于第二錨定點的距離分值可基于第二錨定點與用于第二錨定點的 相關(guān)輸入點之間的距尚等等。
[0051] 圖5A是圖示出用于詞"first"的示例性錨定點與輸入點50之間的距離的概念圖。 圖5B是圖示出用于詞"ghost"的示例性錨定點與輸入點50之間的在存在敏感表面上的距 離的概念圖。在圖5A和5B的示例中,用虛擬鍵16內(nèi)的灰點來指示錨定點。在圖5A和5B 的示例中,細(xì)黑線指示錨定點與用于錨定點的相關(guān)輸入點之間的距離。為了明了起見,圖5A 和5B省略了用于某些輸入點50的附圖標(biāo)記。
[0052] 計算設(shè)備10可基于用于詞的錨定點的距離分值來生成用于詞的錨定分值。例如, 計算設(shè)備10可基于用于第一詞的錨定點的距離分值來生成用于第一詞的錨定分值,可基 于用于第二詞的錨定點的距離分值來生成用于第二詞的錨定分值等等。
[0053] 計算設(shè)備10可以各種方式生成用于詞的錨定分值。例如,計算設(shè)備10可基于用 于詞的錨定點的距離分值的和來生成用于詞的錨定分值。在本示例中,用于錨定點的距離 分值可基于錨定點與用于錨定點的相關(guān)輸入點之間的在顯示器12上的距離。通過比較圖 5A和5B,讀者可看到圖5A中的用于詞"first"的錨定點的距離分值的總和小于圖5B中的 用于的詞"ghost"的錨定點的距離分值的總和。在這里,在本示例中,用于詞"first"的錨 定分值可小于用于詞"ghost"的錨定分值。
[0054] 計算設(shè)備10可至少部分地基于錨定分值(和因此的用于錨定點的距離分值)來 確定特定詞對應(yīng)于手勢輸入。計算設(shè)備10可以各種方式來確定該特定詞對應(yīng)于手勢輸入。 例如,當(dāng)特定詞具有最低或最高錨定分值時,計算設(shè)備10可確定該特定詞對應(yīng)于手勢輸 入。
[0055] 這樣,計算設(shè)備10可在與虛擬鍵盤14相關(guān)聯(lián)的存在敏感表面(例如顯示器12) 的一部分處接收手勢輸入的指示。另外,計算設(shè)備10可定義一系列輸入點,其表示跨虛擬 鍵盤14的手勢輸入的路徑。計算設(shè)備10還可定義用于候選詞集合中的不同詞的錨定點集 合。每個錨定點可對應(yīng)于與來自該虛擬鍵集合的虛擬鍵相關(guān)聯(lián)的存在敏感表面的位置。計 算設(shè)備10還可針對每個錨定點集合中的每個相應(yīng)錨定點識別所述一系列輸入點中的相 關(guān)輸入點。計算設(shè)備還可確定用于錨定點集合中的每個相應(yīng)錨定點的距離分值。針對錨定 點集合中的每個錨定點,用于相應(yīng)錨定點的距離分值可基于相應(yīng)錨定點與用于相應(yīng)錨定點 的相關(guān)輸入點之間的在存在敏感表面上的距離。計算設(shè)備10可基于用于錨定點的距離分 值而識別對應(yīng)于手勢輸入的候選詞集合中的詞。
[0056] 圖6是圖示出根據(jù)本公開的技術(shù)的用以接收文本輸入的計算設(shè)備的示例性操作 100的流程圖。在某些示例中,計算設(shè)備1〇(圖1)可執(zhí)行操作100。
[0057] 在其他示例中,計算設(shè)備可執(zhí)行不同的操作以接收文本輸入。例如,計算設(shè)備可執(zhí) 行包括比操作100的那些更多、更少或不同的步驟的操作以識別對應(yīng)于手勢輸入的詞。此 夕卜,在某些情況下,操作100或用以識別對應(yīng)于手勢輸入的詞的其他操作的步驟中的一個 或多個可串行地或并行地執(zhí)行。
[0058] 在計算設(shè)備開始操作100之后,計算設(shè)備可定義對應(yīng)于候選詞集合中的不同詞的 錨定點集合(102)。每個錨定點可對應(yīng)于與來自虛擬鍵集合的虛擬鍵相關(guān)聯(lián)的位置。在某 些示例中,計算設(shè)備可定義錨定點,使得該錨定點對應(yīng)于虛擬鍵盤中的虛擬鍵的中心。在其 他示例中,錨定點不一定對應(yīng)于虛擬鍵的中心。相反,計算設(shè)備可將錨定點定義成對應(yīng)于虛 擬鍵內(nèi)的其他位置。在某些情況下,可將錨定點定義成在不同虛擬鍵內(nèi)的不同位置處。
[0059] 此外,計算設(shè)備可在與虛擬鍵盤相關(guān)聯(lián)的存在敏感表面的一部分處接收手勢輸入 的指示(104)。在某些示例中,如果存在敏感表面在與虛擬鍵盤相關(guān)聯(lián)的位置處檢測到輸入 對象的存在,則計算設(shè)備可接收手勢輸入的開始的指示。在此類示例中,如果存在敏感表面 檢測到輸入對象到與手勢輸入的完成相關(guān)聯(lián)的位置的移動,則計算設(shè)備可接收手勢輸入完 成的指示。例如,如果存在敏感表面檢測到輸入對象已移動至其中存在敏感表面不再能夠 檢測輸入對象的存在的位置,則計算設(shè)備可接收手勢輸入完成的指示。
[0060] 響應(yīng)于接收到手勢輸入的指示,計算設(shè)備可定義一系列輸入點,其表示跨虛擬鍵 盤的手勢輸入的路徑(106)。在某些示例中,計算設(shè)備可周期性地確定輸入對象的在存在敏 感表面上的當(dāng)前位置。每個時間段一次,計算設(shè)備可定義指示輸入對象的在存在敏感表面 上的位置的輸入點。例如,計算設(shè)備可每秒五十次定義新的輸入點。因此,輸入點可在時間 上沿著所檢測的路徑均勻地分布。
[0061] 計算設(shè)備然后可使用輸入點來識別對應(yīng)于手勢輸入的候選詞集合中的詞(108)。 計算設(shè)備可以各種方式使用輸入點來識別對應(yīng)于手勢輸入的詞。例如,計算設(shè)備可執(zhí)行圖7 的示例性操作以識別對應(yīng)于手勢輸入的詞。在其他示例中,計算設(shè)備執(zhí)行不同于圖7的示 例性操作的操作。
[0062] 在識別對應(yīng)于手勢輸入的詞之后,計算設(shè)備可處理所識別的詞(110)。例如,計算 設(shè)備可在識別詞之后在諸如顯示器12(圖1)的顯示器處輸出詞以顯示。在另一示例中,計 算設(shè)備可存儲或發(fā)送表示詞的數(shù)據(jù)。
[0063] 圖7是圖示出由計算設(shè)備執(zhí)行以使用輸入點來識別對應(yīng)于手勢輸入的詞的示例 性操作150的流程圖。在某些示例中,計算設(shè)備10(圖1)執(zhí)行操作150。
[0064] 在其他示例中,計算設(shè)備可執(zhí)行不同操作以識別對應(yīng)于手勢輸入的詞。例如,計算 設(shè)備可執(zhí)行包括比操作150的那些更多、更少或不同的步驟的操作以識別對應(yīng)于手勢輸入 的詞。此外,在某些情況下,操作150或用以識別對應(yīng)于手勢輸入的詞的其他操作的步驟中 的一個或多個可串行地或并行地執(zhí)行。
[0065] 在計算設(shè)備開始操作150之后,計算設(shè)備可對輸入點進行下采樣(152)。當(dāng)計算設(shè) 備接收到手勢輸入的指示時,計算設(shè)備可定義輸入點的初始系列,其表示跨虛擬鍵盤的手 勢輸入的路徑。在定義輸入點的初始系列之后,計算設(shè)備可確定輸入點的初始系列中的輸 入點的數(shù)目超過閾值。計算設(shè)備可響應(yīng)于確定輸入點的初始系列中的輸入點的數(shù)目超過閾 值而對輸入點的初始系列進行下采樣以定義輸入點的下采樣系列。對輸入點進行下采樣可 去除冗余信息并加速對應(yīng)于手勢輸入的詞的識別。
[0066] 例如,計算設(shè)備可確定輸入點的初始系列中的輸入點的數(shù)目是否超過一百個。 響應(yīng)于輸入點的初始系列中的輸入點數(shù)目超過一百個,計算設(shè)備可從輸入點的初始系列 消除一個或多個輸入點直至存在僅一百個剩余輸入點。例如,計算設(shè)備可根據(jù)比int(/ num/100)+l: 1來消除點,其中,num是輸入點的初始系列中的輸入點的數(shù)目。被消除的輸入 點可沿著所檢測的路徑近似均勻地分布。在本示例中,如果輸入點的初始系列中的輸入點 的數(shù)目沒有超過一百個,則計算設(shè)備可不消除任何輸入點。
[0067]由于人運動的本質(zhì),用戶的手指或觸針的移動隨著用戶的手指或觸針接近于其中 用戶意圖改變移動方向的點而趨向于緩慢。該移動隨著用戶的手指或觸針移動遠(yuǎn)離其中用 戶意圖改變移動方向的點趨向于加速。在許多情況下,用戶在跟與期望詞相關(guān)聯(lián)的虛擬鍵 相關(guān)聯(lián)的位置處改變移動方向。例如,在圖5A和5B的示例中,用戶意圖輸入詞"first"。因 此,用戶的移動在用于字母1"、"1"、、"和1"的虛擬鍵附近是相對緩慢的,并在中間有時 加速。用戶可以不需要在用于字母"r"的虛擬鍵處進行急轉(zhuǎn)彎。因此,用戶的移動在用于 字母"r"的虛擬鍵附近可仍保持相對快的。
[0068] 由于輸入點在時間上沿著所檢測的路徑均勻地分布,并且由于移動在與期望詞 相關(guān)聯(lián)的虛擬鍵附近可緩慢,所以輸入點可在與期望詞相關(guān)聯(lián)的虛擬鍵附近集群。此類集 群可在對輸入點進行下采樣之前和之后發(fā)生。
[0069] 在對輸入點進行下采樣之后,計算設(shè)備可對候選詞集合進行削剪(prune) (154)。 可用候選詞的大型詞匯來配置計算設(shè)備。例如,可用90, 000或更多候選詞的詞匯來配置計 算設(shè)備。計算用于此大型詞匯中的每個詞的錨定分值可能是不切實際的。相應(yīng)地,計算設(shè) 備可削剪(即,消除)不太可能是正確詞的詞。
[0070] 計算設(shè)備可基于用于候選詞的一個或多個度量而對候選詞集合進行削剪。計算用 于候選詞的這些度量所需要的計算強度與計算用于候選詞的錨定分值相比可以是相對小 的。
[0071] 例如,計算設(shè)備可將第一虛擬鍵識別為與手勢輸入的開始相關(guān)聯(lián),并且可將第二 虛擬鍵識別為與手勢輸入的結(jié)束相關(guān)聯(lián)。在本示例中,計算設(shè)備可削剪不是以與第一虛擬 鍵相關(guān)聯(lián)的字母開始以及不是以與第二虛擬鍵相關(guān)聯(lián)的字母結(jié)束的所有詞。例如,計算設(shè) 備可確定手勢輸入在與用于字母"f"的虛擬鍵相關(guān)聯(lián)的點處開始并在與用于字母"t"的 虛擬鍵相關(guān)聯(lián)的點處結(jié)束。在這種情況下,計算設(shè)備可削剪不是以字母"f"開始以及以 字母"t"結(jié)束的所有候選詞。因此,如果候選詞集合最初包括詞"Tokyo",則計算設(shè)備可 將詞"Tokyo"從考慮中消除,因為"Tokyo"不是以字母"f"開始或以字母"t"結(jié)束。然 而,詞 " first "、" fat "、" fi st "、" fest "、" fort "、" fight "、" fast "、" fervent "、" ferret,,、 "foretopgallant"等可仍在候選詞集合中。這樣,計算設(shè)備可基于手勢輸入的初始輸入點 和手勢輸入的終止輸入點來選擇候選詞集合。手勢輸入的初始輸入點可以是沿著手勢輸入 的所檢測的路徑的時間上最早輸入點。手勢輸入的終止輸入點可以是沿著手勢輸入的所檢 測的路徑的時間上最后輸入點。
[0072] 某些用戶可能對手勢輸入的開始和結(jié)束位置不準(zhǔn)確。相應(yīng)地,在某些示例中,計算 設(shè)備可保持(即,不削剪)不是以對應(yīng)于計算設(shè)備檢測到輸入對象的第一虛擬鍵的字母開 始以及以對應(yīng)于計算設(shè)備檢測到輸入對象的最后虛擬鍵的字母結(jié)束的某些詞。相反,當(dāng)用 于詞的初始和終止鍵在初始和終止輸入點的特定距離內(nèi)時,計算設(shè)備可保持詞。用于詞的 初始鍵可以是當(dāng)用戶正在輸入詞時計算設(shè)備檢測到輸入對象的存在的第一虛擬鍵。用于詞 的終止鍵可以是當(dāng)用戶正在輸入詞時計算設(shè)備檢測到輸入對象的存在的最后虛擬鍵。
[0073] 例如,計算設(shè)備可保持以與在初始輸入點的1. 5鍵寬度內(nèi)的虛擬鍵相關(guān)聯(lián)的字母 開始以及以與在終止輸入點的1. 5鍵寬度內(nèi)的虛擬鍵相關(guān)聯(lián)的字母結(jié)束的候選詞。因此, 在圖5A和5B的示例中,用戶可意圖輸入詞"first"且初始輸入點在用于字母"f"的虛擬鍵 內(nèi),但計算設(shè)備可保持詞"ghost",因為用于字母"g"的虛擬鍵在初始輸入點的1. 5鍵寬度 內(nèi)。然而,計算設(shè)備可削剪詞"belt",因為用于字母"b"的虛擬鍵與初始輸入點相距大于 1.5鍵寬度。鍵寬度可以是虛擬鍵的寬度。
[0074] 與和期望詞相關(guān)聯(lián)的第一虛擬鍵相比,某些用戶更有可能關(guān)于與期望詞相關(guān)聯(lián)的 最后虛擬鍵是不準(zhǔn)確的。相應(yīng)地,在某些示例中,計算設(shè)備可保持以與在終止輸入點的2. 5 鍵寬度內(nèi)的鍵相關(guān)聯(lián)的字母結(jié)束的候選詞。因此,在圖5A和5B的示例中,計算設(shè)備可保持 詞"fish",因為用于字母"h"的虛擬鍵在終止輸入點的2. 5鍵寬度內(nèi)。
[0075] 在另一示例中,計算設(shè)備可響應(yīng)于確定對應(yīng)于一個詞的任何一個錨定點與最接近 該錨定點的輸入點相距大于給定距離而從候選詞集合削剪該詞。例如,計算設(shè)備可響應(yīng)于 確定對應(yīng)于一個詞的錨定點與最接近該錨定點的輸入點相距超過1. 5鍵寬度而從候選詞 集合削剪該詞。
[0076] 在某些示例中,計算設(shè)備可將虛擬鍵盤劃分成單元網(wǎng)格。該單元網(wǎng)格可以是 三十二單元寬乘十六單元高的。對于每個單元,計算設(shè)備可計算單元的中心與每個虛擬鍵 的邊界之間的距離。如果該距離在特定閾值以下,則計算設(shè)備可包括用于該單元的近鄰陣 列中的虛擬鍵??苫阪I寬度和可配置的搜索距離來計算該閾值。為了從候選詞集合削剪 詞,計算設(shè)備可確定哪個單元包含所檢測的路徑的初始輸入點。計算設(shè)備然后可從候選詞 集合削剪其初始鍵不在用于單元的近鄰陣列中的所有詞。類似地,計算設(shè)備可確定哪個單 元包含所檢測的路徑的終止輸入點。計算設(shè)備然后可從候選詞集合削剪其終止鍵不在用于 單元的近鄰陣列中的所有詞。
[0077] 在另一示例中,可將計算設(shè)備配置成確定與候選詞集合中的詞相關(guān)聯(lián)的理想路徑 的長度。用于詞的理想路徑可以是按照輸入詞所需的順序通過與詞相關(guān)聯(lián)的每個虛擬鍵的 中心的路徑。在本示例中,計算設(shè)備可基于所檢測的路徑的長度和與候選詞相關(guān)聯(lián)的理想 路徑的長度的比較來對候選詞集合進行削剪。如果所檢測的路徑的長度和與候選詞相關(guān)聯(lián) 的理想路徑的長度之間的差相差超過特定量(例如,長度的比超過給定閾值),則計算設(shè)備 可消除該候選詞。例如,如果與候選詞相關(guān)聯(lián)的理想路徑的長度超過所檢測的路徑的長度 的1. 5倍或小于其0. 6倍,則計算設(shè)備可從候選詞集合削剪該候選詞。
[0078] 例如,與詞"fat"相關(guān)聯(lián)的理想路徑的長度比用于詞"foretopgallant"的理想路 徑的長度短得多。因此,如果所檢測的路徑的長度與到與詞"fat"相關(guān)聯(lián)的理想路徑的長 度相比更接近于與詞"foretopgallant"相關(guān)聯(lián)的理想路徑的長度,則計算設(shè)備可從候選詞 集合削剪詞"fat"。
[0079] 在某些示例中,計算設(shè)備可將候選詞存儲在二維陣列中。假設(shè)虛擬鍵盤具有 二十六個虛擬鍵,則陣列可在第一維度上具有676 (26*26)個條目。676是兩個字母的所有 可能組合的數(shù)目。第一字母可對應(yīng)于詞的首字母且第二字母可對應(yīng)于詞的終止字母。陣列 的第二維度中的條目可對應(yīng)于具有各種尺寸的詞。因此,陣列可具有以下結(jié)構(gòu),其中,*指 示二十六個可能字母中的任何一個:
[0080] [[a*a,a**a,a***a,···], [a*b,a**b,a***b,···],···,[z*z,z**z,z***z,···]]
[0081] 在某些示例中,計算設(shè)備可允許每個詞的第一字母與終止字母之間的多達(dá)四十八 個字母。計算設(shè)備可基于用于詞的理想路徑的長度而將每個第一維條目內(nèi)的詞分類。通過 將詞存儲在此類已分類陣列中,計算設(shè)備可以能夠基于詞的起始和終止鍵以及基于其理想 路徑的長度而快速地削剪詞。在某些情況下,計算設(shè)備可以能夠在〇(n)時間的最壞情況下 基于詞的起始和終止鍵以及其理想路徑的長度來削剪詞。
[0082] 在對候選詞集合進行削剪之后,計算設(shè)備可以確定在候選詞集合中是否存在對于 其尚未確定錨定分值的至少一個詞(156)。用于詞的錨定分值是基于用于對應(yīng)于詞的錨定 點的距尚分值的分值。
[0083] 響應(yīng)于確定在候選詞集合中存在對于其尚未確定錨定分值的至少一個詞(156的 "是"),計算設(shè)備可選擇候選詞集合中的對于其尚未確定錨定分值的詞中的一個(158)。計 算設(shè)備然后可確定用于對應(yīng)于所選詞的每個錨定點的距離分值(160)。計算設(shè)備可以各種 方式來確定用于錨定點的距離分值。例如,計算設(shè)備可執(zhí)行圖8和9中所示的示例性操作 以確定用于錨定點的距離分值。
[0084] 計算設(shè)備可根據(jù)用戶將使用相應(yīng)虛擬鍵來輸入所選詞的順序來確定用于所選詞 的錨定點的距離分值。例如,如果所選詞是"first",則計算設(shè)備可確定用于虛擬鍵"f"的錨 定點的距離分值,然后確定用于虛擬鍵" i "的錨定點的距離分值,然后確定用于虛擬鍵"r" 的錨定點的距離分值等等。
[0085] 在確定用于對應(yīng)于所選詞的錨定點的距離分值之后,計算設(shè)備可基于用于對應(yīng)于 所選詞的錨定點的距離分值來確定用于所選詞的錨定分值(162)。計算設(shè)備可以各種方式 來確定用于所選詞的錨定分值。例如,計算設(shè)備可通過將用于所選詞的錨定點的距離分值 相加或相乘來確定用于所選詞的錨定分值。
[0086] 在確定用于所選詞的錨定分值之后,計算設(shè)備可再次確定在候選詞集合中是否 存在對于其尚未確定錨定分值的至少一個詞(156)。如果是這樣,則計算設(shè)備可重復(fù)步驟 158、160和162以確定用于候選詞集合中的另一詞的錨定分值。在計算設(shè)備已確定用于候 選詞集合中的詞中的至少某些的錨定分值之后,計算設(shè)備可至少部分地基于用于詞的錨定 分值來識別對應(yīng)于手勢輸入的候選詞集合中的特定詞(164)。計算設(shè)備可以各種方式來識 別特定詞。例如,計算設(shè)備可執(zhí)行圖10中所示的示例性操作以識別特定詞。
[0087] 圖8是圖示出由計算設(shè)備執(zhí)行以計算用于詞的錨定點的距離分值的示例性操作 200的第一部分的流程圖。在某些示例中,計算設(shè)備10(圖1)可執(zhí)行操作200。為了便于 說明,圖8和9的以下描述將計算設(shè)備正在為其計算距離分值的錨定點稱為"當(dāng)前錨定點" 并將詞稱為"當(dāng)前詞"。
[0088] 在其他示例中,計算設(shè)備可執(zhí)行不同操作以確定用于錨定點的距離分值。例如,計 算設(shè)備可執(zhí)行包括與操作200的那些相比更多、更少或不同的步驟的操作以確定用于錨定 點的距離分值。此外,在某些情況下,用以確定用于錨定點的距離分值的操作200或其他操 作的步驟中的一個或多個可串行地或并行地執(zhí)行。
[0089] 在計算設(shè)備開始操作200之后,計算設(shè)備可確定當(dāng)前錨定點是否是當(dāng)前詞的初始 鍵的錨定點(202)。響應(yīng)于確定當(dāng)前錨定點是當(dāng)前詞的初始鍵的錨定點(202的"是"),計算 設(shè)備可將輸入點系列中的初始輸入點識別為用于當(dāng)前錨定點的相關(guān)輸入點(204)。在其他 示例中,計算設(shè)備可將最接近當(dāng)前輸入點的輸入點識別為用于當(dāng)前輸入點的相關(guān)輸入點。
[0090] 計算設(shè)備然后可確定用于當(dāng)前錨定點的距離分值等于當(dāng)前錨定點與相關(guān)輸入點 之間的距離(206)。計算設(shè)備可以各種方式來確定錨定點與輸入點之間的距離。例如,計算 設(shè)備可使用算法來計算錨定點與輸入點之間的歐幾里德距離。在本示例中,計算設(shè)備可在 不計算平方根的情況下使用用于確定歐幾里德的多個已知方法中的任何一個。在另一示例 中,在計算設(shè)備確定錨定點與輸入點之間的距離之后,計算設(shè)備可將該距離存儲在緩存中。 在本示例中,如果計算設(shè)備需要在確定用于不同詞的錨定分值時確定錨定點與輸入點之間 的距離,則計算設(shè)備可通過查找緩存中的距離來確定錨定點與輸入點之間的距離。這樣,計 算設(shè)備可基于緩存所指示的距離中的一個或多個來確定用于錨定點的距離分值。
[0091] 在某些示例中,可將緩存實現(xiàn)為二維陣列。該二維陣列可具有用于虛擬鍵盤的每 個虛擬鍵的一行和用于每個輸入點的一列。在本示例中,如果計算設(shè)備確定給定錨定點與 給定輸入點之間的距離,則計算設(shè)備可將該距離輸入到陣列中的在用于該給定錨定點的行 和用于該給定輸入點的列處的位置中。因此,如果計算設(shè)備需要確定給定錨定點與給定輸 入點之間的距離,則計算設(shè)備可從陣列中檢索距離。
[0092] 另一方面,響應(yīng)于確定當(dāng)前錨定點不是當(dāng)前詞的初始鍵的錨定點(202的"否"), 計算設(shè)備可確定當(dāng)前錨定點是否是當(dāng)前詞的終止鍵的錨定點(208)。響應(yīng)于確定當(dāng)前錨定 點不是當(dāng)前詞的終止鍵的錨定點(208的"否"),計算設(shè)備可執(zhí)行圖9中所示的操作200的 一部分。
[0093] 然而,響應(yīng)于確定當(dāng)前錨定點是當(dāng)前詞的終止鍵的錨定點(202的"是"),計算設(shè) 備可將輸入點系列中的終止輸入點識別為用于當(dāng)前錨定點的相關(guān)輸入點(210)。在其他示 例中,計算設(shè)備可將最接近當(dāng)前錨定點的輸入點識別為用于當(dāng)前錨定點的相關(guān)輸入點。計 算設(shè)備然后可確定用于當(dāng)前錨定點的距離分值等于當(dāng)前錨定點與相關(guān)輸入點之間的距離 (212)。
[0094] 圖9是圖示出操作200的第二部分的流程圖。響應(yīng)于確定當(dāng)前錨定點不是當(dāng)前詞 的初始鍵的錨定點以及當(dāng)前錨定點不是當(dāng)前詞的終止鍵的錨定點,計算設(shè)備可確定是否存 在與任何其他錨定點相比更接近當(dāng)前錨定點的一個或多個可用輸入點的集合(250)。如果 該輸入點在用于當(dāng)前詞的先前鍵的錨定點的相關(guān)輸入點之后發(fā)生,則該輸入點可以是可用 輸入點。同樣地,如果輸入點是用于當(dāng)前詞的先前鍵的錨定點的相關(guān)輸入點,則輸入點可以 不可用。如果所檢測的路徑上的輸入點的位置在用于當(dāng)前詞的先前鍵的錨定點的相關(guān)輸入 點的所檢測路徑上的位置之前,則輸入點也可以是不可用的。
[0095] 響應(yīng)于確定存在與任何其他錨定點相比更接近當(dāng)前錨定點的一個或多個可用輸 入點的集合(250的"是"),計算設(shè)備可從與任何其他錨定點相比更接近當(dāng)前錨定點的可用 輸入點之中識別最接近當(dāng)前錨定點的輸入點(252)。這樣,計算設(shè)備可識別用于當(dāng)前錨定點 的相關(guān)輸入點,使得相關(guān)輸入點與任何其他可用輸入點相比更接近當(dāng)前錨定點,并且當(dāng)前 錨定點與任何其他錨定點相比更接近相關(guān)輸入點。
[0096] 在識別用于當(dāng)前錨定點的相關(guān)輸入點之后,計算設(shè)備可確定當(dāng)前錨定點與用于當(dāng) 前錨定點的相關(guān)輸入點之間的距離(254)。計算設(shè)備可基于當(dāng)前錨定點與相關(guān)輸入點之間 的距離來確定用于當(dāng)前錨定點的距離分值(256)。計算設(shè)備可以各種方式基于該距離來確 定用于當(dāng)前錨定點的距離分值。例如,計算設(shè)備可將用于當(dāng)前錨定點的距離分值確定為等 于該距離。在另一示例中,計算設(shè)備可通過使用該距離來在查找表中超找距離分值來確定 用于當(dāng)前錨定點的距離分值。在另一示例中,計算設(shè)備可通過對距離執(zhí)行一個或多個數(shù)學(xué) 運算來確定用于當(dāng)前錨定點的距離分值。
[0097] 另外,計算設(shè)備可將較早的輸入點標(biāo)記為不可用(258)。較早輸入點可包括相關(guān)輸 入點和在所檢測的路徑上具有在相關(guān)輸入點的所檢測的路徑上的位置之前的位置的輸入 點。在計算設(shè)備將輸入點標(biāo)記為不可用之后,輸入點可在計算設(shè)備確定用于當(dāng)前詞的下一 鍵的錨定點的距離分值時保持不可用。這樣,計算設(shè)備可確保同一輸入點不被識別為用于 當(dāng)前詞的多個錨定點的相關(guān)輸入點。
[0098] 計算設(shè)備可以各種方式將輸入點標(biāo)記為不可用。例如,計算設(shè)備可保持指示輸入 點的可用性的一個或多個數(shù)據(jù)結(jié)構(gòu)。在本示例中,計算設(shè)備可修改所述一個或多個數(shù)據(jù)結(jié) 構(gòu)中的一個或多個值以指示特定輸入點不可用。在另一示例中,計算設(shè)備可保持識別沿著 所檢測的路徑的第一可用輸入點的數(shù)據(jù)。在本示例中,計算設(shè)備可通過修改數(shù)據(jù)以識別在 給定輸入點之后在所檢測的路徑上發(fā)生的輸入點來將給定輸入點標(biāo)記為不可用。
[0099] 另一方面,響應(yīng)于確定不存在與任何其他錨定點相比更接近當(dāng)前錨定點的可用輸 入點(250的"否"),計算設(shè)備可將所有輸入點標(biāo)記為可用(260)。在某些情況下,當(dāng)給定輸 入點潛在地應(yīng)是用于當(dāng)前錨定點的相關(guān)輸入點時,計算設(shè)備可能先前已將給定輸入點識別 為用于當(dāng)前詞的較早鍵的錨定點的相關(guān)輸入點。這種情況可在所檢測的路徑接近當(dāng)前錨定 點通過多次時出現(xiàn)。例如,當(dāng)用戶正在嘗試輸入詞"before"時,所檢測的路徑可接近于字 母"e"通過多次。在本示例中,當(dāng)前錨定點可以是第二字母"e"且計算設(shè)備可將在所檢測 的路徑的末端處的輸入點識別為用于第一字母"e"的錨定點的相關(guān)輸入點。因此,早于針 對用于第一字母"e"的錨定點所識別的輸入點的所有輸入點可能是不可用的。通過在步驟 260中將所有輸入點標(biāo)記為可用,計算設(shè)備可以能夠正確地識別用于當(dāng)前錨定點的相關(guān)輸 入點。相應(yīng)地,如果對應(yīng)于當(dāng)前詞的錨定點接近于所檢測的路徑,則計算設(shè)備可以不一定濾 出當(dāng)前詞,如果計算設(shè)備錯誤識別用于對應(yīng)于當(dāng)前詞的錨定點中的一個的輸入點的話。 [0100] 在將所有輸入點標(biāo)記為可用之后,計算設(shè)備然后可確定是否存在與任何其他錨定 點相比更接近于當(dāng)前錨定點的一個或多個可用輸入點的集合(262)。響應(yīng)于確定存在比任 何其他錨定點更接近于當(dāng)前錨定點的一個或多個可用輸入點(262的"是"),計算設(shè)備可從 比任何其他錨定點更接近于當(dāng)前錨定點的可用輸入點之中識別最接近于當(dāng)前錨定點的輸 入點(264)。這樣,計算設(shè)備可識別用于當(dāng)前錨定點的相關(guān)輸入點,使得相關(guān)輸入點比任何 其他錨定點更接近于當(dāng)前錨定點,并且當(dāng)前錨定點比任何其他可用輸入點更接近于相關(guān)輸 入點。
[0101] 在識別用于當(dāng)前錨定點的相關(guān)輸入點之后,計算設(shè)備可確定當(dāng)前錨定點與相關(guān)輸 入點之間的距離(266)。計算設(shè)備然后可基于該距離來確定用于當(dāng)前錨定點的距離分值 (268)。此外,計算設(shè)備可將相關(guān)輸入點和較早輸入點標(biāo)記為不可用(270)。計算設(shè)備可以 任何上述方式或以其他方式來確定距離,確定距離分值,并將輸入點標(biāo)記為不可用。
[0102] 然而,響應(yīng)于確定仍不存在與任何其他錨定點相比更接近于當(dāng)前錨定點的可用輸 入點(262的"否"),計算設(shè)備可識別最接近于當(dāng)前錨定點的可用輸入點(272)。計算設(shè)備 然后可將所識別的輸入點和較早輸入點標(biāo)記為不可用(274)。此外,計算設(shè)備可確定當(dāng)前錨 定點與所識別的輸入點之間的距離(276)。
[0103] 在確定該距離之后,計算設(shè)備可基于該距離和懲罰值來確定用于當(dāng)前錨定點的距 離分值(278)。在其中用于錨定點的高距離分值與對應(yīng)于當(dāng)前詞的錨定點的虛擬鍵的低可 能性相關(guān)聯(lián)的示例中,懲罰值可增加用于錨定點的距離分值。在其中用于錨定點的低距離 分值與錨定點的虛擬鍵對應(yīng)于當(dāng)前詞的低可能性相關(guān)聯(lián)的示例中,懲罰值可減小用于錨定 點的距離分值。
[0104] 通過基于該距離和懲罰值來確定用于當(dāng)前錨定點的距離分值,計算設(shè)備可響應(yīng)于 確定當(dāng)前錨定點不是錨定點中的最接近于用于當(dāng)前錨定點的相關(guān)輸入點的一個而調(diào)整用 于錨定點的距離分值。在各種示例中,計算設(shè)備可以各種量來調(diào)整距離分值。例如,計算設(shè) 備可以1. 3鍵寬度來調(diào)整距離分值。
[0105] 圖10是圖示出用以基于用于詞的錨定分值和用于詞的形狀分值來識別對應(yīng)于手 勢輸入的詞的計算設(shè)備的示例性操作300的流程圖。在某些示例中,計算設(shè)備10(圖1)可 執(zhí)行操作300。在其他示例中,計算設(shè)備可基于錨定分值和形狀分值來執(zhí)行用于識別詞的不 同操作。例如,計算設(shè)備可執(zhí)行包括比操作300的那些更多、更少或不同的步驟的操作以基 于錨定分值和形狀分值來識別詞。此外,在某些情況下,操作300或用以基于錨定分值和形 狀分值來識別詞的其他操作的步驟中的一個或多個可串行地或并行地執(zhí)行。
[0106] 計算設(shè)備可在計算設(shè)備確定用于組候選集合中的詞的錨定分值之后開始操作 300。如上所述,用于詞的錨定分值可基于用于對應(yīng)于與詞相關(guān)聯(lián)的虛擬鍵的錨定點的距離 分值。在計算設(shè)備開始操作300之后,計算設(shè)備可基于用于候選詞的錨定分值而從候選詞 集合削剪候選詞(302)。
[0107] 計算設(shè)備可以各種方式基于其錨定分值而削剪候選詞。例如,計算設(shè)備可根據(jù)其 錨定分值而將候選詞排名。在本示例中,候選設(shè)備可削剪不在η個最高排名候選詞之中的 所有候選詞。例如,在本示例中,計算設(shè)備可在候選詞不在排名在前兩百個的候選詞之中時 削剪候選詞。在另一示例中,如果用于候選詞的錨定分值在特定閾值以上或以下,則計算設(shè) 備可削剪候選詞。
[0108] 此外,計算設(shè)備可對針對所檢測的路徑定義的輸入點的初始或下采樣集合進行重 新采樣,使得輸入點沿著所檢測的路徑在空間上均勻分布(304)。換言之,計算設(shè)備可對輸 入點進行重新采樣,使得在每個輸入點之間存在沿著所檢測的路徑的相等距離。對輸入點 進行重新采樣可涉及消除某些輸入點并內(nèi)插其他輸入點。在某些示例中,計算設(shè)備可以只 需每個手勢輸入對輸入點重新采樣一次。換言之,計算設(shè)備可能沒必要對用于候選詞集合 中的每個詞的輸入點進行重新采樣。
[0109] 另外,計算設(shè)備可存儲或確定形狀模板。每個形狀模板可對應(yīng)于不同詞。用于詞 的形狀模板可表示用以輸入詞的虛擬鍵盤上的理想路徑。例如,用于詞"bat"的形狀模板 可包括從用于字母"b"的虛擬鍵的中心到用于字母"a"的虛擬鍵的中心的直線和從用于字 母"a"的虛擬鍵的中心到用于字母"t"的虛擬鍵的中心的另一直線。
[0110] 由于不同虛擬鍵盤可具有不同尺寸,所以計算設(shè)備可對候選詞的形狀模板進行縮 放,使得形狀模板的寬度和/或高度等于所檢測的路徑的寬度和/或高度(306)。這樣,計 算設(shè)備可將用于給定詞的形狀模板縮放成具有等于手勢輸入的寬度和/或高度的寬度和/ 或高度的邊界框中。計算設(shè)備可根據(jù)縮放比對形狀模板進行縮放,其中s = L/max (W,H),其 中W和H是形狀模板的原始寬度和高度且L是手勢輸入的寬度。
[0111]另外,計算設(shè)備可使形狀模板的位置平移,使得形狀模板在對應(yīng)于輸入點的位置 上(308)。在某些示例中,計算設(shè)備可將形狀模板的質(zhì)心平移至輸入點系列的質(zhì)心。例如, 如果輸入點的質(zhì)心在具有坐標(biāo)(25, 76)的位置處,則計算設(shè)備可平移形狀模板的位置,使 得形狀模板的質(zhì)心在具有坐標(biāo)(25, 76)的位置處。在其他示例中,計算設(shè)備可對輸入點進 行縮放和/或平移而不是對形狀模板進行縮放和平移。
[0112] 因此,計算設(shè)備可確定是否存在任何剩余候選詞(310)。如果計算設(shè)備尚未確定用 于候選詞的形狀分值,則計算設(shè)備可將候選詞視為剩余候選詞。響應(yīng)于確定存在一個或多 個剩余候選詞(310的"是"),計算設(shè)備可選擇剩余候選詞中的一個(312)。計算設(shè)備然后 可確定用于所選候選詞的形狀分值(314)。為了確定用于所選候選詞的形狀分值,計算設(shè) 備可針對每個重新采樣的輸入點確定輸入點與形狀模板上的最接近輸入點的點之間的距 離。計算設(shè)備然后可通過將所確定的距離加在一起來計算用于候選詞的形狀分值。這樣, 計算設(shè)備可在對用于候選詞的形狀模板進行縮放之后以及在對用于候選詞的形狀模板的 位置進行平移之后計算用于候選詞的第二分值(即,形狀分值)。
[0113] 在某些示例中,計算設(shè)備可使用以下公式來確定用于詞s的形狀分值Xs :
【權(quán)利要求】
1. 一種方法,包括: 在設(shè)備處接收在與虛擬鍵盤相關(guān)聯(lián)的存在敏感表面的一部分處的手勢輸入的指示,所 述虛擬鍵盤包括虛擬鍵集合,來自所述虛擬鍵集合的每個虛擬鍵與所述存在敏感表面的一 個區(qū)域相關(guān)聯(lián); 在所述設(shè)備處定義表示跨所述虛擬鍵盤的所述手勢輸入的路徑的一系列輸入點; 在所述設(shè)備處定義對應(yīng)于候選詞集合中的不同詞的錨定點集合,每個錨定點對應(yīng)于與 來自所述虛擬鍵集合的一個虛擬鍵相關(guān)聯(lián)的所述存在敏感表面的一個位置; 在所述設(shè)備處針對每個錨定點集合中的每個相應(yīng)錨定點識別所述一系列輸入點中的 相關(guān)輸入點; 在所述設(shè)備處確定用于所述錨定點集合中的每個相應(yīng)錨定點的距離分值,其中,針對 所述錨定點集合中的每個錨定點,用于相應(yīng)錨定點的距離分值是基于在所述存在敏感表面 上的所述相應(yīng)錨定點與用于所述相應(yīng)錨定點的相關(guān)輸入點之間的距離;以及 在所述設(shè)備處基于用于這些錨定點的距離分值來識別對應(yīng)于所述手勢輸入的候選詞 集合中的詞。
2. 根據(jù)權(quán)利要求1所述的方法,其中,所述錨定點對應(yīng)于所述虛擬鍵盤中的虛擬鍵的 中心。
3. 根據(jù)權(quán)利要求1所述的方法,還包括在識別所述詞之后在顯示器處輸出所述詞。
4. 根據(jù)權(quán)利要求1所述的方法, 其中,所述方法還包括在所述設(shè)備處基于用于對應(yīng)于所述詞的錨定點的距離分值來確 定用于所述詞的分值;以及 其中,識別對應(yīng)于所述手勢輸入的所述詞包括基于用于所述詞的分值來識別所述詞。
5. 根據(jù)權(quán)利要求4所述的方法, 其中,用于所述詞的分值是用于所述詞的第一分值且所述方法還包括在所述設(shè)備處基 于所述手勢輸入的形狀來確定用于所述詞的第二分值;以及 其中,識別所述詞包括在所述設(shè)備處基于用于所述詞的所述第一分值和用于所述詞的 所述第二分值來識別所述詞。
6. 根據(jù)權(quán)利要求5所述的方法,其中,確定用于所述詞的第二分值包括基于所述輸入 點與用于所述詞的形狀模板上的最近點之間的距離來確定用于所述詞的所述第二分值。
7. 根據(jù)權(quán)利要求6所述的方法,還包括: 在所述設(shè)備處對所述一系列輸入點進行重新采樣,其中,在重新采樣之后,所述輸入點 沿著所述手勢輸入的路徑在空間上均勻地分布; 在所述設(shè)備處使所述形狀模板縮放到邊界框中,所述邊界框具有等于所述手勢輸入的 覽度的覽度; 在所述設(shè)備處平移所述形狀模板的位置,使得所述形狀模板的質(zhì)心位于所述一系列輸 入點的質(zhì)心處;以及 在所述設(shè)備處在對所述形狀模板進行縮放并對所述形狀模板的位置進行平移之后確 定用于所述詞的所述第二分值。
8. 根據(jù)權(quán)利要求1所述的方法,其中,所述詞是第一詞且所述方法包括: 在所述設(shè)備處確定用于所述候選詞集合中的多個詞的錨定分值,用于所述多個詞的錨 定分值基于用于對應(yīng)于這些詞的錨定點的距離分值; 在所述設(shè)備處基于用于所述多個詞的錨定分值從所述候選詞集合削剪一個或多個 詞; 在基于用于所述多個詞的錨定分值而從所述候選詞集合削剪所述一個或多個詞之后, 在所述設(shè)備處確定用于剩余在所述候選詞集合中的詞的形狀分值,用于這些詞的形狀分值 基于所述輸入點與用于這些詞的形狀模板上的最近點之間的距離;以及 在所述設(shè)備處基于所述錨定分值和所述形狀分值來識別所述第一單詞對應(yīng)于所述手 勢輸入。
9. 根據(jù)權(quán)利要求1所述的方法, 其中,用于所述詞的分值是用于所述詞的第一分值,并且識別所述詞包括: 在所述設(shè)備處確定用于所述詞的錨定分值,用于所述詞的錨定分值基于用于對應(yīng)于所 述詞的錨定點的距離分值;以及 在所述設(shè)備處確定用于所述詞的第二分值,所述第二分值基于所述詞在給定一個或多 個先前詞時的條件概率;以及 其中,識別所述詞包括在所述設(shè)備處基于用于所述詞的錨定分值和用于所述詞的所述 第二分值從所述詞集合中識別所述詞。
10. 根據(jù)權(quán)利要求1所述的方法,還包括在所述設(shè)備處基于所述手勢輸入的初始輸入 點和所述手勢輸入的終止輸入點來選擇所述候選詞集合。
11. 根據(jù)權(quán)利要求1所述的方法,其中,定義所述一系列輸入點包括: 在所述設(shè)備處確定所述一系列輸入點中的輸入點的數(shù)目超過閾值;以及 在識別所述相關(guān)輸入點之前,在所述設(shè)備處響應(yīng)于確定所述一系列輸入點中的輸入點 的數(shù)目超過所述閾值而對所述一系列輸入點進行下采樣。
12. 根據(jù)權(quán)利要求1所述的方法, 其中,所述方法還包括在所述設(shè)備處存儲指示所述錨定點與所述輸入點之間的距離的 緩存;以及 其中,確定用于所述錨定點集合中的每個相應(yīng)錨定點的距離分值包括:基于所述緩存 所指示的距離中的一個或多個來確定用于錨定點的距離分值。
13. 根據(jù)權(quán)利要求1所述的方法,其中,確定用于所述錨定點集合中的每個相應(yīng)錨定點 的距離分值包括在所述設(shè)備處響應(yīng)于確定所述相應(yīng)錨定點不是這些錨定點中最接近用于 所述相應(yīng)錨定點的相關(guān)輸入點的一個錨定點而調(diào)整用于所述相應(yīng)錨定點的距離分值。
14. 根據(jù)權(quán)利要求1所述的方法,其中,接收所述手勢輸入的指示包括: 如果所述存在敏感表面在與所述虛擬鍵盤相關(guān)聯(lián)的位置處檢測到輸入對象的存在,則 檢測所述手勢輸入的開始;以及 如果所述存在敏感表面檢測到所述輸入對象到與所述手勢輸入的完成相關(guān)聯(lián)的位置 的移動,則檢測所述手勢輸入的完成。
15. 根據(jù)權(quán)利要求1所述的方法,其中,識別用于每個錨定點集合中的每個相應(yīng)錨定點 的相關(guān)輸入點包括: 響應(yīng)于確定所述相應(yīng)錨定點是用于所述詞的初始鍵的錨定點,在所述設(shè)備處將所述一 系列輸入點中的初始輸入點識別為用于所述相應(yīng)錨定點的相關(guān)輸入點; 響應(yīng)于確定所述相應(yīng)錨定點是用于所述詞的終止鍵的錨定點,在所述設(shè)備處將所述一 系列輸入點中的終止輸入點識別為用于相應(yīng)錨定點的相關(guān)輸入點;以及 響應(yīng)于確定給定輸入點與這些輸入點中的任何其他一個輸入點相比更接近于所述相 應(yīng)錨定點且所述相應(yīng)錨定點不對應(yīng)于所述詞的所述初始鍵或所述終止鍵,在所述設(shè)備處將 所述給定輸入點確定為用于所述相應(yīng)錨定點的相關(guān)輸入點。
16. -種計算設(shè)備,包括: 存在敏感顯示器; 一個或多個處理器;以及 存儲器,所述存儲器存儲指令,在所述指令被所述一個或多個處理器執(zhí)行時將計算設(shè) 備配置成: 在所述存在敏感顯示器處輸出虛擬鍵盤以顯示; 接收在與所述虛擬鍵盤相關(guān)聯(lián)的所述存在敏感顯示器的一部分處的手勢輸入的指 示; 定義表示跨所述虛擬鍵盤的所述手勢輸入的路徑的一系列輸入點; 定義對應(yīng)于候選詞集合中的不同詞的錨定點集合,每個錨定點對應(yīng)于所述存在敏感顯 示器的與來自所述虛擬鍵集合的一個虛擬鍵相關(guān)聯(lián)的一個位置; 針對每個錨定點集合中的每個相應(yīng)錨定點識別所述一系列輸入點中的相關(guān)輸入點; 確定用于所述錨定點集合中的每個相應(yīng)錨定點的距離分值,其中,對于所述錨定點集 合中的每個錨定點,用于所述錨定點的距離分值是基于在所述存在敏感表面上的所述錨定 點與用于所述錨定點的相關(guān)輸入點之間的距離; 基于用于對應(yīng)于這些詞的錨定點的距離分值,確定用于這些詞的分值;以及 基于用于這些詞的分值,識別所述候選詞集合中的一個給定詞對應(yīng)于所述手勢輸入。
17. 根據(jù)權(quán)利要求16所述的計算設(shè)備,其中,所述指令在被所述一個或多個處理器執(zhí) 行時將所述計算設(shè)備配置成: 如果所述存在敏感顯示器在與所述虛擬鍵盤相關(guān)聯(lián)的位置處檢測到輸入對象的存在, 則接收所述手勢輸入的開始的指示;以及 如果所述存在敏感顯示器檢測到所述輸入對象到與所述手勢輸入的完成相關(guān)聯(lián)的位 置處的移動,則接收所述手勢輸入的完成的指示。
18. 根據(jù)權(quán)利要求16所述的計算設(shè)備,其中,所述指令在被所述一個或多個處理器執(zhí) 行時將所述計算設(shè)備配置成:響應(yīng)于確定所述給定詞對應(yīng)于所述手勢輸入而在所述存在敏 感顯示器上輸出所述給定詞。
19. 根據(jù)權(quán)利要求16所述的計算設(shè)備,其中,用于這些詞的分值是用于這些詞的第一 分值,并且所述指令在被所述一個或多個處理器執(zhí)行時將所述計算設(shè)備配置成: 基于所述手勢輸入的形狀來確定用于這些詞的第二分值;以及 基于用于這些詞的第一分值和用于這些詞的第二分值來確定所述給定詞對應(yīng)于所述 手勢輸入。
20. -種計算機可讀存儲介質(zhì),包括用于促使計算設(shè)備的一個或多個處理器執(zhí)行操作 的指令,所述操作包括: 在操作地耦合到所述計算設(shè)備的存在敏感顯示器處輸出虛擬鍵盤以顯示,所述虛擬鍵 盤包括與字符相關(guān)聯(lián)的虛擬鍵; 如果所述存在敏感顯示器在與所述虛擬鍵盤相關(guān)聯(lián)的位置處檢測到輸入對象的存在, 則接收手勢輸入的開始的指示; 如果所述存在敏感顯示器檢測到所述輸入對象到與所述手勢輸入的完成相關(guān)聯(lián)的位 置處的移動,則接收所述手勢輸入的完成的指示; 定義表示跨所述虛擬鍵盤的所述手勢輸入的路徑的一系列輸入點; 對所述一系列輸入點進行下采樣; 定義對應(yīng)于候選詞集合中的不同詞的錨定點集合,每個錨定點對應(yīng)于與所述虛擬鍵中 的一個相關(guān)聯(lián)的所述存在敏感顯示器的一個位置; 針對每個錨定點集合中的每個相應(yīng)錨定點識別所述錨定點集合中的相關(guān)輸入點; 確定用于所述錨定點集合中的每個相應(yīng)錨定點的距離分值,其中,對于所述錨定點集 合中的每個錨定點,用于相應(yīng)錨定點的距離分值是基于所述錨定點與用于所述相應(yīng)錨定點 的相關(guān)輸入點之間的所述存在敏感表面上的距離; 基于所述距離分值來確定用于多個詞的分值; 基于所述用于所述多個詞的分值來識別對應(yīng)于所述手勢輸入的一個詞;以及 在所述存在敏感顯示器上輸出所述一個詞。
【文檔編號】G06F3/0488GK104246679SQ201380015777
【公開日】2014年12月24日 申請日期:2013年3月20日 優(yōu)先權(quán)日:2012年3月23日
【發(fā)明者】翟樹民, 李錕 申請人:谷歌公司