本發(fā)明涉及輸入法技術(shù)領(lǐng)域,特別是涉及一種輸入法糾錯(cuò)方法和裝置。
背景技術(shù):
目前,較為常用的輸入法優(yōu)化糾錯(cuò)手段主要包括以下兩種:一種為基于屏幕位置的糾錯(cuò),另一種為基于臨近鍵位的位置糾錯(cuò)。
現(xiàn)有的基于屏幕位置的糾錯(cuò)方案,需事先制作一個(gè)按鍵位置與按鍵對(duì)應(yīng)關(guān)系的模型,這個(gè)模型的建立需要確定大量實(shí)際按鍵點(diǎn)擊位置和最終確認(rèn)的點(diǎn)選按鍵之間的關(guān)系,并通過訓(xùn)練分別得到各按鍵位置映射到其所在按鍵和周圍按鍵的概率。將制作的該模型引進(jìn)入糾錯(cuò)模型中,即可實(shí)現(xiàn)對(duì)輸入法進(jìn)行基于屏幕位置的糾錯(cuò)。
在常規(guī)輸入法鍵盤上,每一個(gè)按鍵位置對(duì)應(yīng)的按鍵是一定的,在引入屏幕位置糾錯(cuò)技術(shù)后,每一個(gè)按鍵位置則是以一定概率映射到其對(duì)應(yīng)的各按鍵上。例如一個(gè)位于按鍵S中心的位置會(huì)以絕對(duì)大的概率映射到S按鍵上;而S按鍵中比較偏于相鄰A按鍵的位置將以一定概率映射到S按鍵上,以另一定概率映射到A按鍵上??梢姮F(xiàn)有的基于臨近鍵位的位置糾錯(cuò)方案,首先需通過事先制作的模型確定實(shí)際按鍵位置對(duì)應(yīng)的按鍵,然后,將按鍵對(duì)應(yīng)的編碼字符確定為糾錯(cuò)編碼字符。重復(fù)上述過程對(duì)輸入的各編碼字符進(jìn)行糾錯(cuò)即可構(gòu)造一個(gè)或多個(gè)糾錯(cuò)后的編碼字符串,然后對(duì)糾錯(cuò)后的編碼字符串進(jìn)行處理得到候選詞條展示給用戶,從而實(shí)現(xiàn)對(duì)用戶輸入的編碼字符串的糾錯(cuò)。
而現(xiàn)有的基于屏幕位置或臨近鍵位的糾錯(cuò)方案通常僅能較好地適用于用戶在靜態(tài)場景下輸入的編碼字符串的糾錯(cuò)。若在輸入編碼字符串的過程中終端突然發(fā)生震動(dòng),且用戶恰巧在該震動(dòng)下發(fā)生按鍵行為時(shí),則用戶實(shí)際輸入的按鍵位置a往往會(huì)偏離目標(biāo)按鍵位置b,在發(fā)生上述偏離的情況下,基于屏幕位置或臨近鍵位的糾錯(cuò)方案,僅會(huì)采用按鍵位置a對(duì)應(yīng)的按鍵所指示的編碼字符對(duì)輸入的編碼字符串進(jìn)行糾正,顯然糾正后的編碼字符通常并不會(huì)是目標(biāo)按鍵位置b在常規(guī)輸入法鍵盤上對(duì)應(yīng)的編碼字符??梢?,這種由于 終端突然震動(dòng)導(dǎo)致的按壓的按鍵位置偏離的情況,現(xiàn)有的基于屏幕位置或臨近鍵位的糾錯(cuò)方案無法進(jìn)行有效的糾錯(cuò)。
綜上所述,現(xiàn)有的糾錯(cuò)方案無法對(duì)終端發(fā)生震動(dòng)時(shí)輸入的編碼字符進(jìn)行有效糾錯(cuò)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供了一種輸入法糾錯(cuò)方法和裝置以及一種用于輸入法糾錯(cuò)的裝置,以解決現(xiàn)有的輸入法無法對(duì)終端發(fā)生震動(dòng)時(shí)輸入的編碼字符進(jìn)行有效糾錯(cuò)的問題。
為了解決上述問題,本發(fā)明公開了一種輸入法糾錯(cuò)方法,包括:終端產(chǎn)生震動(dòng)時(shí),確定震動(dòng)發(fā)生時(shí)觸控的按鍵位置以及所述終端的震動(dòng)參數(shù);依據(jù)所述按鍵位置以及所述終端的震動(dòng)參數(shù)確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵;將所述糾錯(cuò)按鍵對(duì)應(yīng)的編碼字符與震動(dòng)發(fā)生前和/或震動(dòng)發(fā)生后輸入的編碼字符進(jìn)行組合,得到糾錯(cuò)編碼字符串;依據(jù)所述糾錯(cuò)編碼字符串得到候選詞條。
優(yōu)選地,所述確定震動(dòng)發(fā)生時(shí)觸控的按鍵位置以及所述終端的震動(dòng)參數(shù)的步驟包括:確定震動(dòng)發(fā)生時(shí)觸控的按鍵位置以及所述終端的加速度方向以及所述終端的加速度值;所述依據(jù)所述按鍵位置以及所述終端的震動(dòng)參數(shù)確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵的步驟包括:依據(jù)所述按鍵位置、所述加速度方向以及所述加速度值確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵。
優(yōu)選地,所述依據(jù)所述按鍵位置、所述加速度方向以及所述加速度值確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵的步驟包括:將所述按鍵位置、所述加速度方向以及所述加速度值作為輸入?yún)?shù),輸入第一模型,得到修正按鍵位置;其中,所述第一模型中建立有修正按鍵位置與按鍵位置、加速度方向和加速度值的對(duì)應(yīng)關(guān)系;依據(jù)按鍵位置與按鍵之間的對(duì)應(yīng)關(guān)系,確定所述修正按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵。
優(yōu)選地,所述依據(jù)所述按鍵位置、所述加速度方向以及所述加速度值確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵的步驟包括:將所述按鍵位置、所述加速度方向以及所述加速度值作為輸入?yún)?shù),輸入第二模型,得到糾錯(cuò)按鍵;其中, 所述第二模型中建立有糾錯(cuò)按鍵與按鍵位置、加速度方向和加速度值的對(duì)應(yīng)關(guān)系。
優(yōu)選地,所述按鍵位置對(duì)應(yīng)一個(gè)像素,或所述按鍵位置對(duì)應(yīng)一個(gè)包含多個(gè)像素的區(qū)域。
優(yōu)選地,所述終端的加速度方向?yàn)樗鼋K端的水平加速度方向,所述終端的加速度值為所述終端的水平加速度值。
優(yōu)選地,依據(jù)所述糾錯(cuò)編碼字符串得到候選詞條的步驟包括:采用語言模型分別對(duì)所述各編碼字符串進(jìn)行打分;篩選出所得分?jǐn)?shù)排名靠前的設(shè)定個(gè)數(shù)的編碼字符串;從詞庫中分別獲取篩選出的各編碼字符串對(duì)應(yīng)的詞條;確定各詞條的得分,篩選出所得分?jǐn)?shù)排名靠前的設(shè)定個(gè)數(shù)的詞條作為候選詞條。
為了解決上述問題,本發(fā)明還公開了一種輸入法糾錯(cuò)裝置,包括:獲取模塊,編碼字符串輸入過程中終端產(chǎn)生震動(dòng)時(shí),獲取震動(dòng)發(fā)生時(shí)觸控的按鍵位置以及所述終端的震動(dòng)參數(shù);糾錯(cuò)按鍵確定模塊,用于依據(jù)所述按鍵位置以及所述終端的震動(dòng)參數(shù)確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵;編碼字符串構(gòu)成模塊,用于將所述糾錯(cuò)按鍵對(duì)應(yīng)的編碼字符與已在震動(dòng)發(fā)生前和/或震動(dòng)發(fā)生后輸入的編碼字符進(jìn)行組合,得到糾錯(cuò)編碼字符串;候選詞條確定模塊,用于以及所述糾錯(cuò)編碼字符串得到候選詞條。
優(yōu)選地,所述獲取模塊具體用于確定震動(dòng)發(fā)生時(shí)觸控的按鍵位置以及所述終端的加速度方向以及所述終端的加速度值;所述糾錯(cuò)按鍵確定模塊具體用于依據(jù)所述按鍵位置、所述加速度方向以及所述加速度值確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵。
優(yōu)選地,所述糾錯(cuò)按鍵確定模塊包括:第一輸入模塊,用于將所述按鍵位置、所述加速度方向以及所述加速度值作為輸入?yún)?shù),輸入第一模型,得到修正按鍵位置;其中,所述第一模型中建立有修正按鍵位置與按鍵位置、加速度方向和加速度值的對(duì)應(yīng)關(guān)系;確定模塊,用于依據(jù)按鍵位置與按鍵之間的對(duì)應(yīng)關(guān)系,確定所述修正按鍵位置對(duì)應(yīng)的各糾錯(cuò)按鍵。
優(yōu)選地,所述依糾錯(cuò)按鍵確定模塊具體用于:將所述按鍵位置、所述加 速度方向以及所述加速度值作為輸入?yún)?shù),輸入第二模型,得到糾錯(cuò)按鍵;其中,所述第二模型中建立有糾錯(cuò)按鍵位置、加速度方向和加速度值的對(duì)應(yīng)關(guān)系。
優(yōu)選地,所述按鍵位置對(duì)應(yīng)一個(gè)像素,或所述按鍵位置對(duì)應(yīng)一個(gè)包含多個(gè)像素的區(qū)域。
優(yōu)選地,所述終端的加速度方向?yàn)樗鼋K端的水平加速度方向,所述終端的加速度值為所述終端的水平加速度值。
優(yōu)選地,所述候選詞條確定模塊包括:打分模塊,用于采用語言模型分別對(duì)所述各編碼字符串進(jìn)行打分;第一篩選模塊,用于篩選出所得分?jǐn)?shù)排名靠前的設(shè)定個(gè)數(shù)的編碼字符串;詞條獲取模塊,用于從詞庫中分別獲取篩選出的各編碼字符串對(duì)應(yīng)的詞條;第二篩選模塊,用于確定各詞條的得分,篩選出所得分?jǐn)?shù)排名靠前的設(shè)定個(gè)數(shù)的詞條作為候選詞條。
為了解決上述問題,本發(fā)明又公開了一種用于輸入法糾錯(cuò)的裝置,包括存儲(chǔ)器,以及一個(gè)或者一個(gè)以上的程序,其中所述一個(gè)或者一個(gè)以上程序存儲(chǔ)于所述存儲(chǔ)器中,且經(jīng)配置以由一個(gè)或者一個(gè)以上處理器執(zhí)行所述一個(gè)或者一個(gè)以上程序包含用于進(jìn)行以下操作的指令:編碼字符串輸入過程中終端產(chǎn)生震動(dòng)時(shí),確定震動(dòng)發(fā)生時(shí)觸控的按鍵位置以及所述終端的震動(dòng)參數(shù);依據(jù)所述按鍵位置以及所述終端的震動(dòng)參數(shù)確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵;將所述糾錯(cuò)按鍵對(duì)應(yīng)的編碼字符與已在震動(dòng)發(fā)生前和/或震動(dòng)發(fā)生后輸入的編碼字符進(jìn)行組合,得到糾錯(cuò)編碼字符串;依據(jù)所述糾錯(cuò)編碼字符串得到候選詞條。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn):
本發(fā)明實(shí)施例提供的輸入法糾錯(cuò)方案,在編碼字符串輸入過程中當(dāng)終端產(chǎn)生震動(dòng)時(shí),確定震動(dòng)發(fā)生時(shí)觸控的按鍵位置、終端的加速度方向以及終端的加速度值,依據(jù)上述按鍵位置、終端的震動(dòng)參數(shù)如:加速度方向以及終端的加速度值確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵,而并非如現(xiàn)有技術(shù)直接基于震動(dòng)發(fā)生觸控的按鍵位置確定對(duì)應(yīng)的糾錯(cuò)按鍵。本發(fā)明實(shí)施例提供的輸入法糾錯(cuò)方案,在確定糾錯(cuò)按鍵時(shí),結(jié)合終端的震動(dòng)參數(shù),能夠有效消除由于終 端震動(dòng)對(duì)觸控按鍵位置造成的位置偏移的影響,而若能消除由于終端震動(dòng)對(duì)按鍵位置造成的偏移,則可以對(duì)輸入的編碼字符進(jìn)行有效糾錯(cuò)??梢?,本發(fā)明實(shí)施例提供輸入法糾錯(cuò)方案,能夠有效地對(duì)終端發(fā)生震動(dòng)時(shí)輸入的編碼字符進(jìn)行糾錯(cuò)。
附圖說明
圖1是根據(jù)本發(fā)明實(shí)施例一的一種輸入法糾錯(cuò)方法的步驟流程圖;
圖2是根據(jù)本發(fā)明實(shí)施例二的一種輸入法糾錯(cuò)方法的步驟流程圖;
圖3是根據(jù)本發(fā)明實(shí)施例三的一種輸入法糾錯(cuò)方法的步驟流程圖;
圖4是根據(jù)本發(fā)明實(shí)施例四的一種輸入法糾錯(cuò)裝置的結(jié)構(gòu)框圖;
圖5是根據(jù)本發(fā)明實(shí)施例五的一種輸入法糾錯(cuò)裝置的結(jié)構(gòu)框圖;
圖6是根據(jù)本發(fā)明實(shí)施例六的一種用于輸入法糾錯(cuò)的裝置的結(jié)構(gòu)框圖;
圖7是本發(fā)明實(shí)施例六中的服務(wù)器的結(jié)構(gòu)框圖。
具體實(shí)施方式
為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說明。
實(shí)施例一
參照?qǐng)D1,示出了本發(fā)明實(shí)施例一的一種輸入法糾錯(cuò)方法的步驟流程圖。
本發(fā)明實(shí)施例的輸入法糾錯(cuò)方法包括以下步驟:
步驟S102:編碼字符串輸入過程中終端發(fā)生震動(dòng)時(shí),確定震動(dòng)發(fā)生時(shí)觸控的按鍵位置以及終端的震動(dòng)參數(shù)。
其中,終端的震動(dòng)參數(shù)可以包括:終端的加速度方向以及終端的加速度值,震動(dòng)參數(shù)可以通過終端的震動(dòng)感知裝置獲取,觸控的按鍵位置則可通過鍵盤感知裝置獲取。
步驟S104:依據(jù)按鍵位置以及終端的震動(dòng)參數(shù)確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵。
每個(gè)按鍵位置對(duì)應(yīng)有多個(gè)糾錯(cuò)按鍵,依據(jù)按鍵位置以及終端的震動(dòng)參數(shù) 確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵的具體確定方案,可以由本領(lǐng)域技術(shù)人員根據(jù)實(shí)際需求進(jìn)行設(shè)置。
例如:先依據(jù)終端的震動(dòng)參數(shù)包含的加速度方向以及終端的加速度值對(duì)按鍵位置進(jìn)行修正得到修正按鍵位置,然后,采用現(xiàn)有的輸入位置糾錯(cuò)模型確定所述修正按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵。例如:建立輸入位置糾錯(cuò)模型,該模型中建立有按鍵位置、加速度方向以及加速度值三個(gè)參數(shù)與各糾錯(cuò)按鍵的對(duì)應(yīng)關(guān)系,通過將按鍵位置、終端的加速度方向以及終端的加速度值這三個(gè)參數(shù)輸入模型中,即可得到相應(yīng)的糾錯(cuò)按鍵。再例如:先依據(jù)終端的加速度方向以及終端的加速度值對(duì)按鍵位置進(jìn)行修正以得到修正按鍵位置,從而確定所述修正按鍵位置所對(duì)應(yīng)的像素;最后,依據(jù)預(yù)先建立的映射關(guān)系得到與所述像素對(duì)應(yīng)的糾錯(cuò)按鍵。
步驟S106:分別將各糾錯(cuò)按鍵對(duì)應(yīng)的編碼字符與已在震動(dòng)發(fā)生前,和/或震動(dòng)發(fā)生后輸入的編碼字符進(jìn)行組合,得到糾錯(cuò)編碼字符串。
例如:震動(dòng)發(fā)生前已輸入編碼字符“yan”,終端發(fā)生震動(dòng)時(shí)輸入的按鍵位置為S按鍵中偏右的位置,終端的運(yùn)動(dòng)參數(shù)為加速度大小為10米/秒,加速度方向?yàn)橄蚝?,依?jù)終端的運(yùn)動(dòng)參數(shù)以及發(fā)生震動(dòng)時(shí)的按鍵位置確定的糾錯(cuò)按鍵對(duì)應(yīng)的編碼字符分別為“W”、“E”、“A”,則得到的糾錯(cuò)編碼字符串分別為“yanw”、“yane”、“yana”。
步驟S108:依據(jù)糾錯(cuò)編碼字符串得到候選詞條。
對(duì)糾錯(cuò)編碼字符串進(jìn)行處理得到候選詞條的具體實(shí)現(xiàn),參見相關(guān)技術(shù)即可,本發(fā)明實(shí)施例中對(duì)此不作具體限制。例如:從詞庫中獲取各糾錯(cuò)編碼字符串對(duì)應(yīng)的詞條,將全部詞條按照上屏頻率,或是詞條類型、時(shí)間、天氣、位置、應(yīng)用環(huán)境等相關(guān)信息進(jìn)行排序并相應(yīng)展示。
通過本發(fā)明實(shí)施例提供的輸入法糾錯(cuò)方法,在編碼字符串輸入過程中當(dāng)終端產(chǎn)生震動(dòng)時(shí),確定震動(dòng)發(fā)生時(shí)觸控的按鍵位置、終端的加速度方向以及終端的加速度值,依據(jù)按鍵位置、終端的加速度方向以及終端的加速度值確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵,而并非如現(xiàn)有技術(shù)直接確定震動(dòng)發(fā)生觸控的按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵。本發(fā)明實(shí)施例提供的輸入法糾錯(cuò)方法,在確定 糾錯(cuò)按鍵時(shí),結(jié)合終端的加速度方向以及加速度值,能夠有效消除由于終端震動(dòng)對(duì)觸控按鍵位置造成的位置偏移的影響,提高糾錯(cuò)的準(zhǔn)確率??梢姡景l(fā)明實(shí)施例提供的輸入法糾錯(cuò)方法,能夠有效提高震動(dòng)環(huán)境下的糾錯(cuò)效率。
實(shí)施例二
參照?qǐng)D2,示出了本發(fā)明實(shí)施例二的一種輸入法糾錯(cuò)方法的步驟流程圖。
本發(fā)明實(shí)施例的輸入法糾錯(cuò)方法具體包括以下步驟:
步驟S204:編碼字符串輸入過程中終端產(chǎn)生震動(dòng)時(shí),確定震動(dòng)發(fā)生時(shí)觸控的按鍵位置、終端的加速度方向以及終端的加速度值。
其中,終端可以是由于突然抖動(dòng)產(chǎn)生震動(dòng),也可以是由于終端所在的交通工具突然加速或者減速產(chǎn)生震動(dòng),還可以是手持終端的手臂突然受到外力而扭動(dòng)使得終端產(chǎn)生震動(dòng)。當(dāng)然,還有其他的使終端產(chǎn)生震動(dòng)的情境,在此不再一一列舉??傊?,本發(fā)明實(shí)施例中將使終端產(chǎn)生加速度的所有情況都統(tǒng)稱為終端產(chǎn)生了震動(dòng)。
本發(fā)明實(shí)施例中以終端的震動(dòng)參數(shù)為終端的加速度以及終端的加速度方向?yàn)槔?,?duì)后續(xù)步驟進(jìn)行說明。
優(yōu)選地,確定的終端的加速度值為終端水平加速度值,確定的終端的加速度方向?yàn)榻K端的水平加速度方向。由于終端的上下震動(dòng)對(duì)按鍵位置的偏移影響非常小,因此,本優(yōu)選方案中僅考慮終端水平方向的加速度信息。
步驟S206:將按鍵位置、終端的加速度方向以及終端的加速度值作為輸入?yún)?shù),輸入第一模型,得出修正按鍵位置。
其中,第一模型中建立有修正按鍵位置與按鍵位置、加速度方向和加速度值的對(duì)應(yīng)關(guān)系。第一模型是預(yù)先利用海量具有加速度記錄、實(shí)際輸入的按鍵位置記錄、修正按鍵位置記錄的數(shù)據(jù)進(jìn)行監(jiān)督訓(xùn)練得到的。
在具體實(shí)現(xiàn)過程中,按鍵位置可以以像素為粒度,即將按鍵位置對(duì)應(yīng)一個(gè)像素;按鍵位置還可以以包含多個(gè)像素的區(qū)域?yàn)榱6?,即將按鍵位置對(duì)應(yīng)一個(gè)包含多個(gè)像素的區(qū)域。
步驟S208:依據(jù)按鍵位置與按鍵之間的對(duì)應(yīng)關(guān)系,確定修正按鍵位置 對(duì)應(yīng)的一個(gè)或多個(gè)糾錯(cuò)按鍵。
本步驟中則可沿用現(xiàn)有的屏幕位置糾錯(cuò)模型,將修正按鍵位置作為輸入?yún)?shù),即可得到對(duì)應(yīng)的一個(gè)或多個(gè)糾錯(cuò)按鍵,在糾錯(cuò)模型中存儲(chǔ)有各按鍵位置與按鍵之間的對(duì)應(yīng)關(guān)系。優(yōu)選地,在確定糾錯(cuò)按鍵的同時(shí),還可以確定各糾錯(cuò)按鍵對(duì)應(yīng)的概率,其中,糾錯(cuò)按鍵對(duì)應(yīng)的概率為修正按鍵位置映射到該糾錯(cuò)按鍵上的概率。
需要說明的是,步驟S204至步驟S208僅是一種確定糾錯(cuò)按鍵的方式,在具體實(shí)現(xiàn)過程中還可以通過訓(xùn)練生成一個(gè)屏幕位置糾錯(cuò)模型即第二模型。將按鍵位置、終端的加速度方向以及終端的加速度值作為輸入?yún)?shù),輸入第二模型,即可得出糾錯(cuò)按鍵。
其中,第二模型中建立有按鍵位置、加速度方向以及加速度值三個(gè)參數(shù)與各糾錯(cuò)按鍵的對(duì)應(yīng)關(guān)系。也就是說,通過按鍵位置、加速度方向以及加速度值即可直接確定糾錯(cuò)按鍵。在具體實(shí)現(xiàn)過程中,本領(lǐng)域技術(shù)人員可以根據(jù)實(shí)際需求選擇確定糾錯(cuò)按鍵的方案,本發(fā)明實(shí)施例中對(duì)此不作具體限制。
步驟S210:分別將各糾錯(cuò)按鍵對(duì)應(yīng)的編碼字符與已在震動(dòng)發(fā)生前,和/或震動(dòng)發(fā)生后輸入的編碼字符進(jìn)行組合,得到糾錯(cuò)編碼字符串。
優(yōu)選地,也可以先將糾錯(cuò)按鍵按照對(duì)應(yīng)的概率進(jìn)行篩選,將概率高于設(shè)定值的糾錯(cuò)按鍵保留,而摒棄概率低于設(shè)定值的糾錯(cuò)按鍵。分別將篩選后保留的各糾錯(cuò)按鍵對(duì)應(yīng)的編碼字符與已在震動(dòng)發(fā)生前輸入的編碼字符進(jìn)行組合得到相應(yīng)的糾錯(cuò)編碼字符串。
步驟S212:采用語言模型分別對(duì)各編碼字符串進(jìn)行打分。
采用語言模型對(duì)編碼字符串進(jìn)行打分的具體實(shí)現(xiàn),參見相關(guān)技術(shù)即可,本發(fā)明實(shí)施例中對(duì)此不作具體限制。例如:針對(duì)一個(gè)編碼字符串可以將每三個(gè)編碼字符劃分成一組,分別判斷各組是否符合成詞規(guī)則,依據(jù)判斷結(jié)果對(duì)編碼字符串進(jìn)行打分。再例如:針對(duì)一個(gè)編碼字符串可以將每四個(gè)編碼字符劃分成一組,然后,分別判斷各組是否符合成詞規(guī)則,通過判斷結(jié)果來對(duì)編碼字符串進(jìn)行打分。
步驟S214:篩選出所得分?jǐn)?shù)排名靠前的設(shè)定個(gè)數(shù)的編碼字符串。
其中,設(shè)定個(gè)數(shù)對(duì)應(yīng)的具體值可以由本領(lǐng)域技術(shù)人員根據(jù)實(shí)際需求進(jìn)行設(shè)置,例如:設(shè)置成3、4、或5等,本發(fā)明實(shí)施例對(duì)此不作具體限制。
通過步驟S212已對(duì)各編碼字符串進(jìn)行了打分。而分?jǐn)?shù)越低的編碼字符串對(duì)應(yīng)有用戶預(yù)輸入的詞條的可能性越小,因此,為了減輕后續(xù)的處理負(fù)擔(dān)可以僅選擇設(shè)定個(gè)數(shù)的所得分?jǐn)?shù)排名靠前的編碼字符串。
需要說明的是,本發(fā)明實(shí)施例中僅是列舉了一種篩選編碼字符串的方式,在具體實(shí)現(xiàn)過程中還可以不對(duì)編碼字符串進(jìn)行篩選,還可以預(yù)設(shè)一設(shè)定分?jǐn)?shù)值,摒棄分?jǐn)?shù)值低于設(shè)定分?jǐn)?shù)值的編碼字符串,保留分?jǐn)?shù)值高于設(shè)定分?jǐn)?shù)值的編碼字符串。
步驟S216:從詞庫中分別獲取篩選出的各編碼字符串對(duì)應(yīng)的詞條。
其中,詞庫包括系統(tǒng)詞庫以及用戶詞庫。
在系統(tǒng)詞庫中存儲(chǔ)有輸入法系統(tǒng)中設(shè)置的各編碼字符串以及各編碼字符串對(duì)應(yīng)的詞條。用戶詞庫中存儲(chǔ)有用戶歷史輸入的各編碼字符串以及各編字符串對(duì)應(yīng)的上屏詞條。
步驟S218:確定各詞條的得分,篩選出所得分?jǐn)?shù)排名靠前的設(shè)定個(gè)數(shù)的詞條作為候選詞條。
其中,設(shè)定個(gè)數(shù)對(duì)應(yīng)的具體值可以由本領(lǐng)域技術(shù)人員根據(jù)實(shí)際需求進(jìn)行設(shè)置,例如:設(shè)置成10、15、或20等,本發(fā)明實(shí)施例對(duì)此不作具體限制。
篩選出候選詞條后即可在終端上進(jìn)行顯示,以供用戶上屏詞條。
通過本發(fā)明實(shí)施例提供的輸入法糾錯(cuò)方法除具有實(shí)施例一中所示的輸入法糾錯(cuò)方法所具有的有益效果外,還提供了兩種具體地確定糾錯(cuò)按鍵的方法,可供本領(lǐng)域技術(shù)人員依據(jù)實(shí)際需求進(jìn)行選擇,使得輸入法糾錯(cuò)方法更具靈活性。
實(shí)施例三
參照?qǐng)D3,示出了本發(fā)明實(shí)施例三的一種輸入法糾錯(cuò)方法的步驟流程圖。
本發(fā)明實(shí)施例中是以用戶在公交車上使用移動(dòng)終端預(yù)輸入詞條“顏色”,而在已經(jīng)輸入完成完編碼字符“yan”后,公交車突然急剎車(移動(dòng)終端相 應(yīng)也產(chǎn)生震動(dòng)),導(dǎo)致用戶將預(yù)輸入的編碼字符“s”誤輸入為“w”為例,對(duì)本發(fā)明的輸入法糾錯(cuò)方法進(jìn)行的說明。
本發(fā)明實(shí)施例的輸入法糾錯(cuò)方法具體包括以下步驟:
步驟S302:獲取原始按鍵位置、加速度方向、加速度大小以及已輸入的按鍵串。
本發(fā)明實(shí)施例中,由于公交車突然急剎車,慣性導(dǎo)致了移動(dòng)終端在前進(jìn)方向產(chǎn)生了加速度,其中,加速度包括加速度值以及加速度方向。
其中,原始按鍵位置即震動(dòng)發(fā)生時(shí)用戶觸控的按鍵位置用pos_ori表示,加速度方向用d表示,加速度大小即加速度值用a表示,已輸入的按鍵串即震動(dòng)發(fā)生前輸入的編碼字符用inputstr表示。
本具體實(shí)例中已輸入的按鍵串即“yan”,原始按鍵位置即“w”按鍵上的某一位置,獲取到的加速度方向向前。
其中,原始按鍵位置以及加速度方向由移動(dòng)終端中設(shè)置的震動(dòng)感知裝置獲取,原始按鍵位置則可以由移動(dòng)終端中設(shè)置的輸入鍵盤獲取。
需要說明的是,已輸入的按鍵串也可以不在本步驟中獲取,而在確定糾錯(cuò)按鍵之后再獲取。
步驟S304:對(duì)按鍵位置進(jìn)行修正,得到修正按鍵位置。
修正按鍵位置用pos_mod表示。
其中,本步驟為響應(yīng)位置修正過程,通過響應(yīng)位置修正可以將原始按鍵位置修正為修正按鍵位置。
輸入法糾錯(cuò)系統(tǒng)需事先利用海量收集數(shù)據(jù),建立加速度、方向、位置偏移之間的關(guān)系建立模型,最終得到一個(gè)像素(或者一個(gè)區(qū)域,即包含多個(gè)像素的區(qū)域)映射到所在按鍵和周圍按鍵的概率。將上述模型與基于位置糾錯(cuò)的模型結(jié)合使用,即可對(duì)震動(dòng)時(shí)輸入的編碼字符進(jìn)行有效糾錯(cuò)。具體實(shí)現(xiàn)為:將加速度大小和方向(a,d)和原始按鍵位置(x,y)上述模型的輸入?yún)?shù)即可得到修正按鍵位置(x`,y`),從而確定修正按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵,依據(jù)糾錯(cuò)按鍵對(duì)應(yīng)的編碼字符對(duì)震動(dòng)時(shí)輸入的編碼字符進(jìn)行有效糾錯(cuò)。
建立加速度、方向、位置偏移之間的關(guān)系建立模型時(shí),主要建立原始按鍵位置(x,y),加速度大小a,加速度方向d,修正按鍵位置(x`,y`)之間的關(guān)系。即這個(gè)模型的輸入為x、y、a、d,輸出為x`、y`;表示為(x`,y`)=model(x,y,a,d)。
本發(fā)明實(shí)施例中,加速度(a,d),原始按鍵位置(x,y)為“w”按鍵的中心位置坐標(biāo);根據(jù)模型(x`,y`)=model(x,y,a,d),計(jì)算得到(x`,y`)即“s”按鍵的中心位置坐標(biāo)。
步驟S306:查詢像素-按鍵映射關(guān)系,確定修正按鍵位置對(duì)應(yīng)的各可能按鍵,以及各可能按鍵對(duì)應(yīng)的概率。
本發(fā)明實(shí)施例中的按鍵位置是以像素為粒度進(jìn)行的劃分。因此,在確定修正按鍵位置后即可確定其所在的像素,那么,通過像素-按鍵映射關(guān)系即可查詢出可能按鍵,以及各可能按鍵對(duì)應(yīng)的概率。其中,可能按鍵即糾錯(cuò)按鍵。
該映射過程屬于現(xiàn)有的屏幕位置糾錯(cuò)固有過程,利用坐標(biāo)和按鍵之間的概率映射關(guān)系進(jìn)行建立,該過程可查詢到若干可能key1,key2,…,keyn。本發(fā)明實(shí)施中對(duì)映射過程的建立方式不作具體限定,在具體實(shí)現(xiàn)過程中,映射關(guān)系的具體建立方式參見現(xiàn)有技術(shù)即可,在此不再贅述。
本發(fā)明實(shí)施例中,通過步驟S304中確定的“s”按鍵的中心位置坐標(biāo),確定的可能按鍵對(duì)應(yīng)的編碼字符以及概率分別如下:
(“s”,0.85)、(“a”,0.07)、(“w”,0.008)以及(“d”,0.008)。
步驟S308:分別將可能按鍵對(duì)應(yīng)的編碼字符追加到已輸入按鍵串即inputstr構(gòu)成多個(gè)輸入串,利用語言模型對(duì)輸入串進(jìn)行打分、過濾。
其中,輸入串即編碼字符串。
采用語言模型對(duì)輸入串進(jìn)行打分過濾時(shí),參見相關(guān)技術(shù)即可,本發(fā)明實(shí)施例中對(duì)此不作具體限制。例如:在輸入法中會(huì)保存多個(gè)基于字母的三元組,每一個(gè)三元組對(duì)應(yīng)著一個(gè)打分s1,s2,…sk。在對(duì)輸入串進(jìn)行打分確定其對(duì)應(yīng)的概率時(shí),將輸入串每三個(gè)字母劃分成一組,然后,將每個(gè)三元組與保存的字母三元組進(jìn)行比對(duì),得到其對(duì)應(yīng)的分?jǐn)?shù),將各組對(duì)應(yīng)的打分按照設(shè)定算法進(jìn)行計(jì)算即可得到輸入串的概率v,即其對(duì)應(yīng)的分?jǐn)?shù)。
在對(duì)輸入串進(jìn)行過濾時(shí),則可通過將各輸入串對(duì)應(yīng)的概率數(shù)由高至低進(jìn)行排序,篩選出概率數(shù)排序在前N位的輸入串,進(jìn)行后續(xù)的查詞工作。其中,N為預(yù)設(shè)值。
本發(fā)明實(shí)施例中,將四種可能的按鍵追加到已輸入的輸入串“yan”后面,構(gòu)成多個(gè)輸入串“yans”、“yana”、“yanw”以及“yand”。然后,對(duì)“yans”、“yana”、“yanw”以及“yand”利用語言模型進(jìn)行打分,得到輸入串對(duì)應(yīng)的概率V。其中,追加所得到的輸入串以及各輸入串對(duì)應(yīng)的概率分別如下:
(“yans”,0.88)(“yanw”,0.07)(“yand”,0.04)(“yana”,0.004)。
設(shè)置N為3,那么,在對(duì)輸入串進(jìn)行篩選時(shí),選擇概率排序在前三位的輸入串進(jìn)行后續(xù)的查詞操作,即篩選出“yans”、“yanw”以及“yand”,對(duì)這三個(gè)輸入串進(jìn)行查詞。
步驟S310:從詞庫中查詢各輸入串對(duì)應(yīng)的詞條。
其中,詞庫包括用戶詞庫、系統(tǒng)詞庫等。
步驟S312:輸入法從查詢到的詞條中選擇候選詞條。
在選擇候選詞條時(shí),可以結(jié)合詞條在詞庫中的得分以及詞條對(duì)應(yīng)的輸入串的頻率來確定詞條的得分。
即獲取詞條在詞庫中的詞庫得分sd;利用步驟S308中計(jì)算到的該詞條對(duì)應(yīng)的輸入串的頻率v,來確定該詞條的最終得分,即通過函數(shù)score=g(v,sd)來確定詞條的最終得分。
將各詞條的得分進(jìn)行排序,選擇出得分排序在前X位的詞條作為候選詞條在移動(dòng)終端中進(jìn)行顯示,其中,X為預(yù)設(shè)值。
通過上述糾錯(cuò)流程本發(fā)明實(shí)施例中最終選擇出的候選詞條為:顏色、驗(yàn)收、眼神、延誤、煙霧、眼袋。顯然,候選詞條中排序在首位的即用戶預(yù)輸入詞條,可見,本發(fā)明實(shí)施例提供的輸入法糾錯(cuò)方法,能夠有效地對(duì)終端發(fā)生震動(dòng)時(shí)輸入的編碼字符進(jìn)行糾錯(cuò)。
下面以一具體實(shí)例再對(duì)本發(fā)明實(shí)施例提供的輸入法糾錯(cuò)方法進(jìn)行說明。
在火車啟動(dòng)的瞬時(shí),移動(dòng)終端感知到一個(gè)向鍵盤下方的加速度。此時(shí)用戶已經(jīng)輸入完成了“我準(zhǔn)備去di d”,或者啟動(dòng)瞬間用戶預(yù)期輸入的字母是“u”, 即用戶預(yù)輸入的內(nèi)容為“我準(zhǔn)備去帝都”;當(dāng)火車啟動(dòng)瞬間用戶預(yù)觸控“U”按鍵時(shí),由于向后加速度的存在,用戶誤觸了“J”按鍵,若不采用基于屏幕位置糾錯(cuò)方法,或者采用現(xiàn)有的屏幕位置糾錯(cuò)方法,那么最終給出的候選詞條則為“我準(zhǔn)備去低端機(jī)”。
而采用本發(fā)明實(shí)施例提供的輸入法糾錯(cuò)方法,對(duì)用戶實(shí)際觸控到的按鍵位置進(jìn)行修正得到修正按鍵位置,然后確定修正按鍵位置對(duì)應(yīng)的可能按鍵即“u”和“i”,通過將“u”和“i”追加到已輸入的輸入串“我準(zhǔn)備去di d”構(gòu)成輸入串“我準(zhǔn)備去di du”以及“我準(zhǔn)備去di di”,然后分別從詞庫中查詢這兩個(gè)輸入串對(duì)應(yīng)的詞條得到候選詞條“我準(zhǔn)備去帝都”“我準(zhǔn)備去滴滴”等。將得到的候選詞條進(jìn)行顯示后,用戶即可上屏預(yù)輸入的內(nèi)容。
通過本發(fā)明實(shí)施例提供的輸入法糾錯(cuò)方法,在編碼字符串輸入過程中當(dāng)終端產(chǎn)生震動(dòng)時(shí),輸入法獲得震動(dòng)發(fā)生時(shí)觸控的按鍵位置、終端的加速度方向以及終端的加速度值,依據(jù)按鍵位置、終端的加速度方向以及終端的加速度值確定按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵,而并非如現(xiàn)有技術(shù)直接確定震動(dòng)發(fā)生觸控的按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵。本發(fā)明實(shí)施例提供的輸入法糾錯(cuò)方法,在確定糾錯(cuò)按鍵時(shí),結(jié)合終端的加速度方向以及加速度值,能夠有效規(guī)避掉由于終端震動(dòng)對(duì)觸控按鍵位置造成的位置偏移的影響,而若能屏蔽掉由于終端震動(dòng)對(duì)按鍵位置造成的偏移,則可以對(duì)輸入的編碼字符進(jìn)行有效糾錯(cuò)??梢?,本發(fā)明實(shí)施例提供輸入法糾錯(cuò)方法,能夠有效地對(duì)終端發(fā)生震動(dòng)時(shí)輸入的編碼字符進(jìn)行糾錯(cuò)。
實(shí)施例四
參照?qǐng)D4,示出了本發(fā)明實(shí)施例四的一種輸入法糾錯(cuò)裝置的結(jié)構(gòu)框圖。
本發(fā)明實(shí)施例的輸入法糾錯(cuò)裝置包括:獲取模塊402,編碼字符串輸入過程中終端產(chǎn)生震動(dòng)時(shí),獲取震動(dòng)發(fā)生時(shí)觸控的按鍵位置以及所述終端的震動(dòng)參數(shù);糾錯(cuò)按鍵確定模塊404,用于依據(jù)所述按鍵位置以及所述終端的震動(dòng)參數(shù)確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵;編碼字符串構(gòu)成模塊406,用于將所述糾錯(cuò)按鍵對(duì)應(yīng)的編碼字符與已在震動(dòng)發(fā)生前,和/或震動(dòng)發(fā)生后輸入的 編碼字符進(jìn)行組合,得到糾錯(cuò)編碼字符串;候選詞條確定模塊408,用于依據(jù)糾錯(cuò)編碼字符串得到候選詞條。
通過本發(fā)明實(shí)施例提供的輸入法糾錯(cuò)裝置,在編碼字符串輸入過程中當(dāng)終端產(chǎn)生震動(dòng)時(shí),確定震動(dòng)發(fā)生時(shí)觸控的按鍵位置以及終端的震動(dòng)參數(shù)如:加速度方向和加速度值,依據(jù)按鍵位置、終端的加速度方向以及終端的加速度值確定所述按鍵位置確定對(duì)應(yīng)的糾錯(cuò)按鍵,而并非如現(xiàn)有技術(shù)直接確定震動(dòng)發(fā)生觸控的按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵。本發(fā)明實(shí)施例提供的輸入法糾錯(cuò)裝置,在確定糾錯(cuò)按鍵時(shí),結(jié)合終端的震動(dòng)參數(shù),能夠有效消除由于終端震動(dòng)對(duì)觸控按鍵位置造成的位置偏移的影響,而若能消除由于終端震動(dòng)對(duì)按鍵位置造成的偏移,則可以對(duì)輸入的編碼字符進(jìn)行有效糾錯(cuò)??梢?,本發(fā)明實(shí)施例提供輸入法糾錯(cuò)裝置,能夠有效地對(duì)終端發(fā)生震動(dòng)時(shí)輸入的編碼字符進(jìn)行糾錯(cuò)。
實(shí)施例五
參照?qǐng)D5,示出了本發(fā)明實(shí)施例五的一種輸入法糾錯(cuò)裝置的結(jié)構(gòu)框圖。
本發(fā)明實(shí)施例是對(duì)實(shí)施例四中的輸入法糾錯(cuò)裝置的進(jìn)一步優(yōu)化,優(yōu)化后的輸入法糾錯(cuò)裝置包括:本發(fā)明實(shí)施例的輸入法糾錯(cuò)裝置包括:獲取模塊502,編碼字符串輸入過程中終端產(chǎn)生震動(dòng)時(shí),獲取震動(dòng)發(fā)生時(shí)觸控的按鍵位置以及所述終端的震動(dòng)參數(shù);糾錯(cuò)按鍵確定模塊504,用于依據(jù)所述按鍵位置以及所述終端的震動(dòng)參數(shù)確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵;編碼字符串構(gòu)成模塊506,用于將所述糾錯(cuò)按鍵對(duì)應(yīng)的編碼字符與已在震動(dòng)發(fā)生前和/或震動(dòng)發(fā)生后輸入的編碼字符進(jìn)行組合,得到糾錯(cuò)編碼字符串;候選詞條確定模塊508,用于依據(jù)所述糾錯(cuò)編碼字符串得到候選詞條。
優(yōu)選地,所述獲取模塊502具體用于確定震動(dòng)發(fā)生時(shí)觸控的按鍵位置以及所述終端的加速度方向以及所述終端的加速度值;所述糾錯(cuò)按鍵確定模塊504具體用于依據(jù)所述按鍵位置、所述加速度方向以及所述加速度值確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵。
優(yōu)選地,所述糾錯(cuò)按鍵確定模塊504包括:第一輸入模塊5042,用于將 所述按鍵位置、所述加速度方向以及所述加速度值作為輸入?yún)?shù),輸入第一模型,得到修正按鍵位置;其中,所述第一模型中建立有修正按鍵位置與按鍵位置、加速度方向和加速度值的對(duì)應(yīng)關(guān)系;確定模塊5044,用于依據(jù)按鍵位置與按鍵之間的對(duì)應(yīng)關(guān)系,確定所述修正按鍵位置對(duì)應(yīng)的各糾錯(cuò)按鍵。
優(yōu)選地,所述依糾錯(cuò)按鍵確定模塊504具體用于:將所述按鍵位置、所述加速度方向以及所述加速度值作為輸入?yún)?shù),輸入第二模型,得到糾錯(cuò)按鍵;其中,所述第二模型中建立有糾錯(cuò)按鍵位置、加速度方向和加速度值的對(duì)應(yīng)關(guān)系。
優(yōu)選地,所述按鍵位置對(duì)應(yīng)一個(gè)像素,或所述按鍵位置對(duì)應(yīng)一個(gè)包含多個(gè)像素的區(qū)域。
優(yōu)選地,所述終端的加速度方向?yàn)樗鼋K端的水平加速度方向,所述終端的加速度值為所述終端的水平加速度值。
優(yōu)選地,所述候選詞條確定模塊508包括:打分模塊5082,用于采用語言模型分別對(duì)所述各編碼字符串進(jìn)行打分;第一篩選模塊5084,用于篩選出所得分?jǐn)?shù)排名靠前的設(shè)定個(gè)數(shù)的編碼字符串;詞條獲取模塊5086,用于從詞庫中分別獲取篩選出的各編碼字符串對(duì)應(yīng)的詞條;第二篩選模塊5088,用于確定各詞條的得分,篩選出所得分?jǐn)?shù)排名靠前的設(shè)定個(gè)數(shù)的詞條作為候選詞條。
本發(fā)明實(shí)施例的輸入法糾錯(cuò)裝置用于實(shí)現(xiàn)前述實(shí)施例一、實(shí)施例二以及實(shí)施例三中相應(yīng)的輸入法糾錯(cuò)方法,并且具有相應(yīng)的方法實(shí)施例的有益效果,在此不再贅述。
關(guān)于上述實(shí)施例中的裝置,其中各個(gè)模塊執(zhí)行操作的具體方式已經(jīng)在有關(guān)該方法的實(shí)施例中進(jìn)行了詳細(xì)描述,此處將不做詳細(xì)闡述說明。
實(shí)施例六
參照?qǐng)D6,示出了本發(fā)明實(shí)施例六五的一種用于輸入法糾錯(cuò)的裝置的結(jié)構(gòu)框圖。
圖6是根據(jù)一示例性實(shí)施例示出的一種用于輸入法糾錯(cuò)的裝置600的框 圖。例如,裝置600可以是移動(dòng)電話,計(jì)算機(jī),數(shù)字廣播終端,消息收發(fā)設(shè)備,游戲控制臺(tái),平板設(shè)備,醫(yī)療設(shè)備,健身設(shè)備,個(gè)人數(shù)字助理等。
參照?qǐng)D6,裝置600可以包括以下一個(gè)或多個(gè)組件:處理組件602,存儲(chǔ)器604,電源組件606,多媒體組件608,音頻組件610,輸入/輸出(I/O)的接口612,傳感器組件614,以及通信組件616。
處理組件602通??刂蒲b置600的整體操作,諸如與顯示,電話呼叫,數(shù)據(jù)通信,相機(jī)操作和記錄操作相關(guān)聯(lián)的操作。處理元件602可以包括一個(gè)或多個(gè)處理器620來執(zhí)行指令,以完成上述的方法的全部或部分步驟。此外,處理組件602可以包括一個(gè)或多個(gè)模塊,便于處理組件602和其他組件之間的交互。例如,處理部件602可以包括多媒體模塊,以方便多媒體組件608和處理組件602之間的交互。
存儲(chǔ)器604被配置為存儲(chǔ)各種類型的數(shù)據(jù)以支持在設(shè)備600的操作。這些數(shù)據(jù)的示例包括用于在裝置600上操作的任何應(yīng)用程序或方法的指令,聯(lián)系人數(shù)據(jù),電話簿數(shù)據(jù),消息,圖片,視頻等。存儲(chǔ)器604可以由任何類型的易失性或非易失性存儲(chǔ)設(shè)備或者它們的組合實(shí)現(xiàn),如靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM),電可擦除可編程只讀存儲(chǔ)器(EEPROM),可擦除可編程只讀存儲(chǔ)器(EPROM),可編程只讀存儲(chǔ)器(PROM),只讀存儲(chǔ)器(ROM),磁存儲(chǔ)器,快閃存儲(chǔ)器,磁盤或光盤。
電源組件606為裝置600的各種組件提供電力。電源組件606可以包括電源管理系統(tǒng),一個(gè)或多個(gè)電源,及其他與為裝置600生成、管理和分配電力相關(guān)聯(lián)的組件。
多媒體組件608包括在所述裝置600和用戶之間的提供一個(gè)輸出接口的屏幕。在一些實(shí)施例中,屏幕可以包括液晶顯示器(LCD)和觸摸面板(TP)。如果屏幕包括觸摸面板,屏幕可以被實(shí)現(xiàn)為觸摸屏,以接收來自用戶的輸入信號(hào)。觸摸面板包括一個(gè)或多個(gè)觸摸傳感器以感測觸摸、滑動(dòng)和觸摸面板上的手勢(shì)。所述觸摸傳感器可以不僅感測觸摸或滑動(dòng)動(dòng)作的邊界,而且還檢測與所述觸摸或滑動(dòng)操作相關(guān)的持續(xù)時(shí)間和壓力。在一些實(shí)施例中,多媒體組件608包括一個(gè)前置攝像頭和/或后置攝像頭。當(dāng)設(shè)備600處于操作模式,如拍攝模式或視頻模式時(shí),前置攝像頭和/或后置攝像頭可以接收外部的多媒體 數(shù)據(jù)。每個(gè)前置攝像頭和后置攝像頭可以是一個(gè)固定的光學(xué)透鏡系統(tǒng)或具有焦距和光學(xué)變焦能力。
音頻組件610被配置為輸出和/或輸入音頻信號(hào)。例如,音頻組件610包括一個(gè)麥克風(fēng)(MIC),當(dāng)裝置600處于操作模式,如呼叫模式、記錄模式和語音識(shí)別模式時(shí),麥克風(fēng)被配置為接收外部音頻信號(hào)。所接收的音頻信號(hào)可以被進(jìn)一步存儲(chǔ)在存儲(chǔ)器604或經(jīng)由通信組件616發(fā)送。在一些實(shí)施例中,音頻組件810還包括一個(gè)揚(yáng)聲器,用于輸出音頻信號(hào)。
I/O接口612為處理組件602和外圍接口模塊之間提供接口,上述外圍接口模塊可以是鍵盤,點(diǎn)擊輪,按鈕等。這些按鈕可包括但不限于:主頁按鈕、音量按鈕、啟動(dòng)按鈕和鎖定按鈕。
傳感器組件614包括一個(gè)或多個(gè)傳感器,用于為裝置600提供各個(gè)方面的狀態(tài)評(píng)估。例如,傳感器組件614可以檢測到設(shè)備600的打開/關(guān)閉狀態(tài),組件的相對(duì)定位,例如所述組件為裝置600的顯示器和小鍵盤,傳感器組件614還可以檢測裝置600或裝置600一個(gè)組件的位置改變,用戶與裝置600接觸的存在或不存在,裝置600方位或加速/減速和裝置600的溫度變化。傳感器組件614可以包括接近傳感器,被配置用來在沒有任何的物理接觸時(shí)檢測附近物體的存在。傳感器組件614還可以包括光傳感器,如CMOS或CCD圖像傳感器,用于在成像應(yīng)用中使用。在一些實(shí)施例中,該傳感器組件614還可以包括加速度傳感器,陀螺儀傳感器,磁傳感器,壓力傳感器或溫度傳感器。
通信組件616被配置為便于裝置600和其他設(shè)備之間有線或無線方式的通信。裝置600可以接入基于通信標(biāo)準(zhǔn)的無線網(wǎng)絡(luò),如WiFi,2G或3G,或它們的組合。在一個(gè)示例性實(shí)施例中,通信部件616經(jīng)由廣播信道接收來自外部廣播管理系統(tǒng)的廣播信號(hào)或廣播相關(guān)信息。在一個(gè)示例性實(shí)施例中,所述通信部件616還包括近場通信(NFC)模塊,以促進(jìn)短程通信。例如,在NFC模塊可基于射頻識(shí)別(RFID)技術(shù),紅外數(shù)據(jù)協(xié)會(huì)(IrDA)技術(shù),超寬帶(UWB)技術(shù),藍(lán)牙(BT)技術(shù)和其他技術(shù)來實(shí)現(xiàn)。
在示例性實(shí)施例中,裝置600可以被一個(gè)或多個(gè)應(yīng)用專用集成電路(ASIC)、數(shù)字信號(hào)處理器(DSP)、數(shù)字信號(hào)處理設(shè)備(DSPD)、可編程邏 輯器件(PLD)、現(xiàn)場可編程門陣列(FPGA)、控制器、微控制器、微處理器或其他電子元件實(shí)現(xiàn),用于執(zhí)行上述方法。
在示例性實(shí)施例中,還提供了一種包括指令的非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),例如包括指令的存儲(chǔ)器604,上述指令可由裝置600的處理器620執(zhí)行以完成上述方法。例如,所述非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是ROM、隨機(jī)存取存儲(chǔ)器(RAM)、CD-ROM、磁帶、軟盤和光數(shù)據(jù)存儲(chǔ)設(shè)備等。
一種非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),當(dāng)所述存儲(chǔ)介質(zhì)中的指令由移動(dòng)終端的處理器執(zhí)行時(shí),使得移動(dòng)終端能夠執(zhí)行一種輸入法糾錯(cuò)方法,所述方法包括:編碼字符串輸入過程中終端產(chǎn)生震動(dòng)時(shí),確定震動(dòng)發(fā)生時(shí)觸控的按鍵位置以及所述終端的震動(dòng)參數(shù);依據(jù)所述按鍵位置以及所述終端的震動(dòng)參數(shù)確定所述按鍵位置對(duì)應(yīng)的糾錯(cuò)按鍵;將所述糾錯(cuò)按鍵對(duì)應(yīng)的編碼字符與已在震動(dòng)發(fā)生前和/或后輸入的編碼字符進(jìn)行組合,得到糾錯(cuò)編碼字符串;依據(jù)糾錯(cuò)編碼字符串得到候選詞條。
圖7是本發(fā)明實(shí)施例中服務(wù)器的結(jié)構(gòu)示意圖。該服務(wù)器1900可因配置或性能不同而產(chǎn)生比較大的差異,可以包括一個(gè)或一個(gè)以上中央處理器(central processing units,CPU)1922(例如,一個(gè)或一個(gè)以上處理器)和存儲(chǔ)器1932,一個(gè)或一個(gè)以上存儲(chǔ)應(yīng)用程序1942或數(shù)據(jù)1944的存儲(chǔ)介質(zhì)1930(例如一個(gè)或一個(gè)以上海量存儲(chǔ)設(shè)備)。其中,存儲(chǔ)器1932和存儲(chǔ)介質(zhì)1930可以是短暫存儲(chǔ)或持久存儲(chǔ)。存儲(chǔ)在存儲(chǔ)介質(zhì)1930的程序可以包括一個(gè)或一個(gè)以上模塊(圖示沒標(biāo)出),每個(gè)模塊可以包括對(duì)服務(wù)器中的一系列指令操作。更進(jìn)一步地,中央處理器1922可以設(shè)置為與存儲(chǔ)介質(zhì)1930通信,在服務(wù)器1900上執(zhí)行存儲(chǔ)介質(zhì)1930中的一系列指令操作。
服務(wù)器1900還可以包括一個(gè)或一個(gè)以上電源1926,一個(gè)或一個(gè)以上有線或無線網(wǎng)絡(luò)接口1950,一個(gè)或一個(gè)以上輸入輸出接口1958,一個(gè)或一個(gè)以上鍵盤1956,和/或,一個(gè)或一個(gè)以上操作系統(tǒng)1941,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,F(xiàn)reeBSDTM等等。
本領(lǐng)域技術(shù)人員在考慮說明書及實(shí)踐這里公開的發(fā)明后,將容易想到本發(fā)明的其它實(shí)施方案。本發(fā)明旨在涵蓋本發(fā)明的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本發(fā)明的一般性原理并包括本公 開未公開的本技術(shù)領(lǐng)域中的公知常識(shí)或慣用技術(shù)手段。說明書和實(shí)施例僅被視為示例性的,本發(fā)明的真正范圍和精神由下面的權(quán)利要求指出。
應(yīng)當(dāng)理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來限制。
以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見即可。對(duì)于系統(tǒng)實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。
以上對(duì)本發(fā)明所提供的一種輸入法糾錯(cuò)方案進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。
在此提供的輸入法糾錯(cuò)方案不與任何特定計(jì)算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造具有本發(fā)明方案的系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對(duì)任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種編程語言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對(duì)特定語言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。
在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說明書的理解。
類似地,應(yīng)當(dāng)理解,為了精簡本公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí) 被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此,遵循具體實(shí)施方式的權(quán)利要求書由此明確地并入該具體實(shí)施方式,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。
本領(lǐng)域那些技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中??梢园褜?shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對(duì)本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來代替。
此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來使用。
本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP)來實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的是輸入法糾錯(cuò)方案中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。
應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中,不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過同一個(gè)硬件項(xiàng)來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。