、電感或光學(xué)檢測(cè)來接收用戶輸入。
[0022] 如圖1A、1B中所示,計(jì)算設(shè)備2可包括n模塊6。n模塊6可執(zhí)行一個(gè)或多個(gè)功 能以接收輸入,諸如用戶輸入,并向與計(jì)算設(shè)備2相關(guān)聯(lián)的其他組件,諸如手勢(shì)模塊8,發(fā)送 此類輸入的指示。n模塊6還可從與計(jì)算設(shè)備2相關(guān)聯(lián)的組件,諸如手勢(shì)模塊8或應(yīng)用模 塊12,接收數(shù)據(jù)。使用所接收到的數(shù)據(jù),UI模塊6可使與計(jì)算設(shè)備2相關(guān)聯(lián)的其他組件,諸 如n設(shè)備4,基于數(shù)據(jù)來提供輸出。例如,n模塊6可從應(yīng)用模塊12中的一個(gè)接收數(shù)據(jù)以 顯示⑶I14、16和18。
[0023] 如圖1A、1B中所示,計(jì)算設(shè)備2還可包括手勢(shì)模塊8。手勢(shì)模塊8可包括在計(jì)算 設(shè)備2上執(zhí)行多種操作的功能,諸如根據(jù)本文所述的技術(shù)從一個(gè)或多個(gè)手勢(shì)遞增地確定文 本。在某些示例中,手勢(shì)模塊8可以被配置成從UI模塊6接收手勢(shì)數(shù)據(jù)并根據(jù)該手勢(shì)數(shù)據(jù) 來確定文本。在某些示例中,手勢(shì)模塊8可確定與手勢(shì)相關(guān)聯(lián)的一個(gè)或多個(gè)特征,諸如手勢(shì) 路徑上的兩個(gè)點(diǎn)之間的歐幾里德距離、手勢(shì)路徑的長(zhǎng)度、手勢(shì)的方向、手勢(shì)路徑的曲率以及 手勢(shì)路徑上的點(diǎn)之間的手勢(shì)的最大曲率、手勢(shì)的速度等。手勢(shì)模塊8可將根據(jù)手勢(shì)數(shù)據(jù)確 定的文本發(fā)送到計(jì)算設(shè)備2的其他組件,諸如應(yīng)用模塊12、UI模塊6等。
[0024] 在某些示例中,計(jì)算設(shè)備2包括語言模型10。語言模型10可包括詞典。在某些示 例中,詞典可包括單詞列表,并且可包括關(guān)于所列單詞的附加信息,諸如單詞、語法上下文、 使用頻率等之間的關(guān)系。可用一系列數(shù)據(jù)結(jié)構(gòu),諸如陣列、列表和/或樹,來表示詞典。下 面相對(duì)于圖2來描述語言模型10的更多細(xì)節(jié)。
[0025] 如圖1中所示,計(jì)算設(shè)備2還可包括一個(gè)或多個(gè)應(yīng)用模塊12。應(yīng)用模塊12可包括 用以在計(jì)算設(shè)備2上執(zhí)行任何種類的操作的功能。例如,應(yīng)用模塊12可包括文字處理器、電 子表格應(yīng)用程序、web瀏覽器、多媒體播放器、服務(wù)器應(yīng)用、操作系統(tǒng)、分布式計(jì)算應(yīng)用、圖形 設(shè)計(jì)應(yīng)用、視頻編輯應(yīng)用、web開發(fā)應(yīng)用或任何其他應(yīng)用。應(yīng)用模塊12中的一個(gè)(例如,應(yīng) 用模塊12A)可能包括向n模塊6提供數(shù)據(jù)的記筆記應(yīng)用的功能,,使n設(shè)備4顯示⑶I。 如在圖1A、1B的示例中所述,應(yīng)用模塊12A可使n設(shè)備4顯示⑶I14、16和/或18。
[0026] 應(yīng)用模塊12A可進(jìn)一步包括用以使得用戶能夠通過在n設(shè)備4處(例如,在虛擬 或圖形鍵盤上)執(zhí)行手勢(shì)來輸入和修改文本內(nèi)容的功能。例如,應(yīng)用模塊12A可使n設(shè)備 4顯示如圖14中所示的圖形鍵盤24和文本顯示區(qū)20。響應(yīng)于接收到用戶輸入,應(yīng)用模塊 12A可創(chuàng)建或修改包括在GUI14、16和/或18中的文本內(nèi)容(例如,文本內(nèi)容28)。下面 相對(duì)于圖1A、1B來進(jìn)一步描述本公開的示例技術(shù)。
[0027] 如圖1A、1B中所示,⑶I14、16和18可以是由應(yīng)用模塊12A生成的用戶界面,其 允許用戶(例如,用戶3)與計(jì)算設(shè)備2交互。⑶I14、16和18可包括用于接收文本輸入的 圖形鍵盤(例如,圖形鍵盤24)。圖形鍵盤可以是可選擇鍵的有序集合。每個(gè)鍵可表示來自 字符集合(例如,英語字母表的字母)的單個(gè)字符、字符組合或一組字符,基于多個(gè)模式選 擇。圖形鍵盤的一個(gè)示例可包括傳統(tǒng)"QWERTY"機(jī)械鍵盤布局。其他示例可包含用于不同 語言、不同字符集合或不同字符布局的字符。如圖1A的示例中所示,GUI14包括圖形鍵盤 24,其被配置為用于英語的傳統(tǒng)"QWERTY"布局的版本。圖形鍵盤24可提供字符鍵以及提 供其他功能的各種鍵。例如,圖形鍵盤24可包括多個(gè)鍵,諸如"C"鍵25A、"0"鍵25B、"M" 鍵 25C、"P" 鍵 25D、"L" 鍵 25E、"E" 鍵 25F以及 "V" 鍵 25G。
[0028] 圖形鍵盤24可包括用于顯示自動(dòng)完成建議的建議區(qū)22A、22B和22C(統(tǒng)稱為"建 議區(qū)22")。自動(dòng)完成建議可包括字符串、單詞、短語或其他文本內(nèi)容。在某些示例中,自動(dòng) 完成建議可基于之前用戶輸入,并且可包括未來用戶輸入的預(yù)測(cè)。用戶可以在例如n設(shè)備 4處錄入用戶輸入,以選擇自動(dòng)完成建議。響應(yīng)于該選擇,手勢(shì)模塊8在某些示例中可向應(yīng) 用模塊輸出對(duì)應(yīng)于所選自動(dòng)完成建議的文本數(shù)據(jù)。
[0029]⑶I14、16和18可進(jìn)一步包括用于顯示所輸入的文本內(nèi)容(例如,文本內(nèi)容28) 的文本顯示區(qū)(例如,文本顯示區(qū)20)。文本內(nèi)容28的示例可包括單詞、字母、數(shù)字、標(biāo)點(diǎn)符 號(hào)、圖像、圖標(biāo)、一組活動(dòng)圖像等。此類示例可包括圖片、超鏈接、圖標(biāo)、字符集合的字符等。 在某些示例中,文本顯示區(qū)20可顯示單詞和/或多單詞短語。文本內(nèi)容可包括所輸入的文 本和預(yù)測(cè)性文本(即,軟提交單詞)。所輸入的文本和預(yù)測(cè)性文本可以是不同的色彩或不同 陰影以向用戶指示差異。例如,⑶I14包括在文本顯示區(qū)中顯示的文本內(nèi)容28"Company"。 第一選項(xiàng)(例如,"Comp")可表示所輸入的文本,而第二部分(例如,"any")可表示預(yù)測(cè)性 文本。根據(jù)在本文中進(jìn)一步描述的本公開的技術(shù),n模塊6可使n設(shè)備4顯示圖形鍵盤、 自動(dòng)完成建議以及文本內(nèi)容。
[0030] 如在本文中進(jìn)一步描述的,本公開的技術(shù)允許用戶錄入多手勢(shì)單詞輸入。也就是 說,用戶可錄入多個(gè)單獨(dú)手勢(shì)以編寫單個(gè)單詞或短語。本文所述的技術(shù)可通過采用用于部 分手勢(shì)單詞切分的概率模型來提供用于多手勢(shì)單詞的自動(dòng)空格插入。此預(yù)測(cè)靈活性可在畫 出部分手勢(shì)時(shí)為用戶提供更大的信心。例如,用戶可知道即使意圖的自動(dòng)完成并非立即可 用,他或她也可以利用幾個(gè)、附加按鍵來完成單詞??刹灰笥脩粼诨瑒?dòng)手勢(shì)的中間停頓以 引出可能完成列表。替代地,用戶可方便地且自然地將他或她的手指從存在敏感輸入設(shè)備 處的檢測(cè)移除,同時(shí)思考他或她意圖輸入的單詞。在執(zhí)行后續(xù)手勢(shì)以完成當(dāng)前單詞或開始 新單詞時(shí),計(jì)算設(shè)備可自動(dòng)地確定錄入的字符對(duì)應(yīng)于當(dāng)前單詞還是新單詞。
[0031] 在某些示例中,可不要求用戶在做手勢(shì)以錄入單詞的同時(shí)不斷地監(jiān)測(cè)連續(xù)更新的 建議。此外,本公開的技術(shù)提供了在部分手勢(shì)交互中引導(dǎo)用戶的手勢(shì)完成界面。例如,用戶 可執(zhí)行手勢(shì)的第一部分以輸入單詞并移除他或她的手指(例如,進(jìn)一步思考他或她意圖錄 入的單詞或選擇可能的自動(dòng)完成建議)。用戶可以繼續(xù)手勢(shì)的第二部分,并且使用本公開的 技術(shù),計(jì)算設(shè)備可以自動(dòng)地確定由手勢(shì)的第二部分選擇的字符是被包括為用戶先前錄入的 當(dāng)前單詞的一部分還是新的后續(xù)單詞的一部分。界面還可將手勢(shì)自動(dòng)完成提示直接地覆蓋 在圖形鍵盤上的相關(guān)鍵的頂部上。這些提示可為用戶提供他或她可以通過輸入附加字母來 細(xì)化部分手勢(shì)的清楚指示。
[0032] 轉(zhuǎn)到圖1A,應(yīng)用(例如,應(yīng)用模塊12A)可使n設(shè)備4顯示⑶114。⑶I14可包括 圖形鍵盤24、建議區(qū)22以及文本顯示區(qū)20。雖然在圖14中示為當(dāng)前包括文本內(nèi)容28,但 文本顯示區(qū)20最初可不包括任何文本內(nèi)容。
[0033] 用戶(例如,用戶3)可期望在n設(shè)備4處錄入用戶輸入以便向應(yīng)用模塊12A中 錄入文本內(nèi)容。根據(jù)本公開的技術(shù),n設(shè)備4可檢測(cè)用以選擇包括在圖形鍵盤24的所述多 個(gè)鍵中的一個(gè)或多個(gè)鍵的手勢(shì)。在一個(gè)示例中,手勢(shì)可以是輕敲手勢(shì),其中,輸入單元(例 如,用戶3的手指、筆、觸針等)移動(dòng)到與n設(shè)備4接近,使得輸入單元臨時(shí)地被n設(shè)備4 檢測(cè)到,并且然后從n設(shè)備4移開,使得輸入單元不再被檢測(cè)到。在另一示例中,手勢(shì)可以 是連續(xù)運(yùn)動(dòng)手勢(shì),其包括輸入單元從n設(shè)備4的第一位置到n設(shè)備4的第二位置的運(yùn)動(dòng), 使得從第一位置到第二位置執(zhí)行的手勢(shì)縱貫整個(gè)手勢(shì)執(zhí)行被ui設(shè)備4檢測(cè)到。例如,諸如 當(dāng)n設(shè)備4是觸摸敏感顯示器時(shí),手勢(shì)可包括輸入單元從第一位置到第二位置的運(yùn)動(dòng),在 輸入單元與n設(shè)備4之間具有基本上恒定的接觸。如圖ia的示例中所示,n設(shè)備4可檢 測(cè)由用戶3的手指錄入的沿著從顯示"C"鍵25A的n設(shè)備4的位置到顯示"P"鍵25D的 n設(shè)備4的位置的手勢(shì)路徑26的手勢(shì),使得n設(shè)備4縱貫整個(gè)手勢(shì)路徑26檢測(cè)到手指。
[0034] 如圖1A中所示,用戶3可執(zhí)行手勢(shì)以選擇所述多個(gè)鍵中的一組鍵。在圖1A的示 例中,n模塊6可隨著用戶3執(zhí)行手勢(shì)而遞增地確定存在敏感顯示器處的手勢(shì)路徑26。用 戶3可通過追蹤通過圖形鍵盤24的鍵或在其附近的手勢(shì)路徑26來執(zhí)行手勢(shì),所述鍵對(duì)應(yīng) 于期望串、單詞或短語的字符(例如,對(duì)應(yīng)于串"comp"的字符,由"C"鍵25A、"0"鍵25B、 "M"鍵25C和"P"鍵2?來表示)。n模塊6可向手勢(shì)模塊8發(fā)送指示手勢(shì)路徑26的數(shù) 據(jù)。在某些示例中,n模塊6隨著由n設(shè)備4檢測(cè)到手勢(shì)路徑26而遞增地向手勢(shì)模塊8 發(fā)送指示手勢(shì)路徑26的數(shù)據(jù)。例如,n模塊6可隨著由n設(shè)備4檢測(cè)到并被n模塊6接 收的手勢(shì)路徑26而向手勢(shì)模塊8發(fā)送指示沿著手勢(shì)路徑26的位置的坐標(biāo)對(duì)的流。如在圖 1A的示例中,手勢(shì)模塊8可從UI模塊6接收手勢(shì)路徑26的指示。
[0035] 基于從n模塊6接收到的數(shù)據(jù),手勢(shì)模塊8可確定候選串的集合。手勢(shì)模塊8可 在接收到手勢(shì)路徑26的第一指示時(shí)創(chuàng)建一個(gè)或多個(gè)候選串,每個(gè)在第一單詞級(jí)令牌內(nèi)。隨 著手勢(shì)模塊8接收到后續(xù)指示,手勢(shì)模塊8可基于接收到的數(shù)據(jù)而更新候選串的集合(例 如,添加候選串、修改候選串、移除候選串等)。候選串可表示基于執(zhí)行手勢(shì)26時(shí)的用戶3 的輸入的假設(shè)。候選串可包含一串字符、單個(gè)單詞或多個(gè)單詞作為短語的一部分。例如,隨 著手勢(shì)模塊8開始接收到與手勢(shì)路徑相關(guān)的數(shù)據(jù),手勢(shì)模塊8可創(chuàng)建字符串的集合,并且隨 著手勢(shì)路徑前進(jìn),手勢(shì)模塊8可在字符串中的一個(gè)或多個(gè)中添加、移除和/或更新字符。
[0036] 在圖1A的示例中,隨著手勢(shì)模塊8將字符添加到第一單詞級(jí)令牌的候選串,手勢(shì) 模塊8可通過將候選串中的字符的序列與語言模型10相比較來確定候選串中的字符的序 列是否表示詞典中的單詞。如果序列并不與詞典中的單詞匹配,則單詞級(jí)令牌可包含表示 不完整單詞的候選串。在這種情況下,手勢(shì)模塊8可繼續(xù)將隨后確定的字符添加到第一單 詞級(jí)令牌。
[0037] 然而,如果序列并不與詞典中的單詞匹配(S卩,候選串是完整單詞),則在某些示 例中,手勢(shì)模塊8可創(chuàng)建包括字符串組合的附加短語級(jí)令牌。例如,計(jì)算設(shè)備可生成短語級(jí) 令牌以包括第一單詞級(jí)令牌(即,完整單詞)的字符串與以對(duì)應(yīng)于隨后所選擇的鍵的字符 開始的第二單詞級(jí)令牌的字符串組合。
[0038] 在創(chuàng)建第二單詞級(jí)令牌并將其添加到新創(chuàng)建的短語級(jí)令牌之后,手勢(shì)模塊8可隨 著手勢(shì)模塊8接收到手勢(shì)路徑的指示而將隨后確定的字符添加到第一單詞級(jí)令牌、第二單 詞級(jí)令牌以及短語級(jí)令牌。在圖3A和3B中進(jìn)一步描述了將隨后確定的字符添加到單詞或 短語級(jí)令牌的過程??呻S著手勢(shì)模塊8確定第二單詞級(jí)令牌、第三單詞級(jí)令牌等每個(gè)表示 詞典中的單詞而重復(fù)此過程。也就是說,當(dāng)手勢(shì)模塊8確定單詞級(jí)令牌表示完整單詞時(shí),手 勢(shì)模塊8可將新單詞級(jí)令牌添加到短語級(jí)令牌。然后,除將隨后確定的字符添加到當(dāng)前單 詞級(jí)令牌和短語級(jí)令牌之外,手勢(shì)模塊8還可將隨后確定的字符添加到新(第二)單詞級(jí) 令牌。這樣,短語級(jí)令牌可包括候選串,其進(jìn)一步包括每個(gè)單詞級(jí)令牌的候選串。短語令牌 的候選串中的每個(gè)單詞可以空格隔開。在某些示例中,手勢(shì)模塊8可自動(dòng)地在作為詞典中 的單詞的每個(gè)候選串之后插入空格。每個(gè)單詞級(jí)令牌的候選串可包含在手勢(shì)模塊8確定單 詞級(jí)令牌的時(shí)間之后確定的那些字符。
[0039] 在圖1A的示例中,用戶3完成手勢(shì)路徑26,并且作為響應(yīng),手勢(shì)模塊8可確定候選 串的集合,包括"comp"、"cimp"、"cinp"、"como"、"vimp"、"vomp"等。針對(duì)六個(gè)示例候選串 中的每一個(gè),手勢(shì)模塊8可確定字符的序列在手勢(shì)的執(zhí)行期間的任何點(diǎn)處并未與詞典中的 單詞匹配。隨后,可在相應(yīng)的單詞級(jí)令牌中包括每個(gè)示例候選串。
[0040] 除確定候選串的集合之外,手勢(shì)模塊8可至少部分地基于候選串來確定一個(gè)或多 個(gè)候選單詞和/或候選短語。候選單詞可基于單詞級(jí)和短語級(jí)令牌的候選串。候選單詞可 至少部分地基于響應(yīng)于用戶3的輸入而確定的字符串。候選短語可基于短語級(jí)令牌的候選 串。候選短語可包括一個(gè)或多個(gè)候選單詞。在某些示例中,手勢(shì)模塊8可將包括在令牌中的 候選串與語言模型10相比較以便基于包含在候選串中的字符的序列來確定可能候選單詞 和/或短語。也就是說,手勢(shì)模塊8可使用語言模型10來從候選串預(yù)測(cè)單詞和/或短語。
[0041] 在一個(gè)示例中,手勢(shì)模塊8可確定短語級(jí)令牌包括候選串