(57)【要約】【課題】誤入力を減少させる。【解決手段】代表文字に対応する複数の代表文字ボタンのうち、選択された第１代表文字ボタンを認識する第１認識部１１ａと、第１代表文字ボタンの位置と選択の確定入力がされた位置とによって特定される第１方向を決定する第１方向決定部１２と、第１方向に基づき、第１代表文字ボタンに対応する代表文字及び第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、入力文字を決定する決定部１３と、入力文字が決定された後に、複数の代表文字ボタンのうち、選択された第２代表文字ボタンを認識する第２認識部１１ｂと、第１代表文字ボタンの位置と第２代表文字ボタンの位置とによって特定される第２方向を決定する第２方向決定部１４と、第１方向と第２方向とに基づき、入力補助処理を行なう補助部１５と、を備える。【選択図】図１
2015207143.tif 000002
【特許請求の範囲】
【請求項１】
代表文字に対応する複数の代表文字ボタンのうち、選択された第１代表文字ボタンを認識する第１認識部と、
前記第１代表文字ボタンの位置と前記選択の確定入力がされた位置とによって特定される第１方向を決定する第１方向決定部と、
前記第１方向に基づき、前記第１代表文字ボタンに対応する代表文字及び前記第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、入力文字を決定する決定部と、
前記入力文字が決定された後に、前記複数の代表文字ボタンのうち、選択された第２代表文字ボタンを認識する第２認識部と、
前記第１代表文字ボタンの位置と前記第２代表文字ボタンの位置とによって特定される第２方向を決定する第２方向決定部と、
前記第１方向と前記第２方向とに基づき、入力補助処理を行なう補助部と、
を備えることを特徴とする、情報処理装置。
【請求項２】
前記補助部は、前記第１方向と前記第２方向とのなす角の大きさが閾値未満の場合に、前記入力補助処理を行なう、
ことを特徴とする、請求項１に記載の情報処理装置。
【請求項３】
前記補助部は、前記第１方向に対向する方向に基づき、前記第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、前記入力文字の修正候補を提示する提示部
を備えることを特徴とする、請求項１又は２に記載の情報処理装置。
【請求項４】
前記提示部は、前記第１代表文字ボタンに対応する代表文字を、前記修正候補として提示する、
ことを特徴とする、請求項３に記載の情報処理装置。
【請求項５】
前記入力文字と前記第２代表文字ボタンに対応する代表文字とユーザによる修正操作の記録とを対応付けて、修正履歴情報として記憶装置に格納する格納処理部を備え、
前記提示部は、前記修正履歴情報に基づき、前記修正候補を提示するか否かを決定する、
ことを特徴とする、請求項３又は４に記載の情報処理装置。
【請求項６】
前記提示部は、前記修正履歴情報に基づき、複数の前記修正候補を提示する順位を入れ替える、
ことを特徴とする、請求項５に記載の情報処理装置。
【請求項７】
前記補助部は、前記入力文字を修正する修正部
を備えることを特徴とする、請求項１〜４のいずれか１項に記載の情報処理装置。
【請求項８】
前記入力文字と前記第２代表文字ボタンに対応する代表文字とユーザによる修正操作の記録とを対応付けて、修正履歴情報として記憶装置に格納する格納処理部を備え、
前記修正部は、前記修正履歴情報に基づき、前記修正を行なうか否かを決定する、
ことを特徴とする、請求項７に記載の情報処理装置。
【請求項９】
前記格納処理部は、当該情報処理装置を使用するユーザ毎に前記修正履歴情報を前記記憶装置に格納する、
ことを特徴とする、請求項５，６又は８に記載の情報処理装置。
【請求項１０】
情報処理装置が備えるコンピュータに、
代表文字に対応する複数の代表文字ボタンのうち、選択された第１代表文字ボタンを認識し、
前記第１代表文字ボタンの位置と前記選択の確定入力がされた位置とによって特定される第１方向を決定し、
前記第１方向に基づき、前記第１代表文字ボタンに対応する代表文字及び前記第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、入力文字を決定し、
前記入力文字が決定された後に、前記複数の代表文字ボタンのうち、選択された第２代表文字ボタンを認識し、
前記第１代表文字ボタンの位置と前記第２代表文字ボタンの位置とによって特定される第２方向を決定し、
前記第１方向と前記第２方向とに基づき、入力補助処理を行なう、
処理を実行させることを特徴とする、文字入力プログラム。
【請求項１１】
情報処理装置において、
代表文字に対応する複数の代表文字ボタンのうち、選択された第１代表文字ボタンを認識し、
前記第１代表文字ボタンの位置と前記選択の確定入力がされた位置とによって特定される第１方向を決定し、
前記第１方向に基づき、前記第１代表文字ボタンに対応する代表文字及び前記第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、入力文字を決定し、
前記入力文字が決定された後に、前記複数の代表文字ボタンのうち、選択された第２代表文字ボタンを認識し、
前記第１代表文字ボタンの位置と前記第２代表文字ボタンの位置とによって決定される第２方向を算出し、
前記第１方向と前記第２方向とに基づき、入力補助処理を行なう、
ことを特徴とする、文字入力方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置，文字入力プログラム及び文字入力方法に関する。
【背景技術】
【０００２】
近年、多機能携帯電話（スマートフォン）等のタッチパネルを備える装置における文字入力方式として、「フリック入力方式」が普及している。
図１８は、従来例としての情報処理装置における文字入力画面を例示する図である。
情報処理装置７は、スマートフォンやタブレットPersonal Computer（ＰＣ）であり、入力装置と組み合わされてタッチパネルとして機能するディスプレイ８０を備える。
【０００３】
図１８に示す例において、ディスプレイ８０には文字入力画面８１，入力ガイド画面８２及び入力文字表示画面８３が表示される。
入力文字表示画面８３は、ユーザによって入力された文字が表示される。
文字入力画面８１は、フリック入力方式のソフトウェアキーボードが表示され、「あ」段の文字に対応する１０個の文字入力キー（主キー）を含む。具体的には、文字入力画面８１は、「あ」段の文字である「あ」，「か」，「さ」，「た」，「な」，「は」，「ま」，「や」，「ら」及び「わ」に対応する主キーを含む。
【０００４】
入力ガイド画面８２は、ユーザの指によって主キーがタッチされると表示され、タッチされた主キーに対応する文字の行に属する５文字が表示される。図１８においては、「あ」に対応する主キーがタッチされている状態を示しており、入力ガイド画面８２には「あ」行に属する「あ」，「い」，「う」，「え」及び「お」が表示されている。
フリック入力においては、ユーザの指がタッチした主キーと、タッチした状態で指がスライド（フリック）した方向との組み合わせにより、入力が認識される。
【０００５】
具体的には、主キーをタッチしてから指をフリックさせずに離すと、タッチされた主キーに対応する「あ」段の文字が入力として認識される。また、主キーをタッチした状態で左，上，右又は下にフリックしてから指を離すと、タッチされた主キーに対応する文字の行に属する「い」，「う」，「え」又は「お」段の文字がそれぞれ入力として認識される。
【０００６】
図１８は「あ」に対応する主キーがタッチされている例を示しているため、主キーをタッチしてから指を動かさずに離すと、「あ」が入力として認識される。また、主キーをタッチした状態で左，上，右又は下にフリックしてから指を離すと、「い」，「う」，「え」又は「お」がそれぞれ入力として認識される。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１１−３９９８９号公報
【特許文献２】特開２００４−３５５４２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来の情報処理装置７におけるフリック入力方式においては、ユーザが文字入力画面８１上でフリックした指を離す位置を誤ることにより、ユーザが意図しない文字が入力として認識されるという課題がある。
また、近年ではユーザが指をディスプレイに触れずに近づけただけでも反応するチューニング（ホバー入力）機能を有するフリック入力方式も知られている。チューニング機能を有するフリック入力方式においては、ユーザが意図しない文字が入力として認識される可能性が増加する。
【０００９】
１つの側面では、本発明は、誤入力を減少させることを目的とする。
なお、前記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本発明の他の目的の１つとして位置付けることができる。
【課題を解決するための手段】
【００１０】
このため、この情報処理装置は、代表文字に対応する複数の代表文字ボタンのうち、選択された第１代表文字ボタンを認識する第１認識部と、前記第１代表文字ボタンの位置と前記選択の確定入力がされた位置とによって特定される第１方向を決定する第１方向決定部と、前記第１方向に基づき、前記第１代表文字ボタンに対応する代表文字及び前記第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、入力文字を決定する決定部と、前記入力文字が決定された後に、前記複数の代表文字ボタンのうち、選択された第２代表文字ボタンを認識する第２認識部と、前記第１代表文字ボタンの位置と前記第２代表文字ボタンの位置とによって特定される第２方向を決定する第２方向決定部と、前記第１方向と前記第２方向とに基づき、入力補助処理を行なう補助部と、を備える。
【発明の効果】
【００１１】
開示の情報処理装置によれば、誤入力を減少させることできる。
【図面の簡単な説明】
【００１２】
【図１】実施形態の一例としての情報処理装置の機能構成を模式的に示す図である。
【図２】実施形態の一例としての情報処理装置における画面表示を例示する図である。
【図３】（ａ）〜（ｅ）は実施形態の一例としての情報処理装置における文字入力例を説明する図である。
【図４】実施形態の一例としての情報処理装置における誤入力例を説明する図である。
【図５】（ａ）〜（ｆ）は実施形態の一例としての情報処理装置における誤入力例を詳細に説明する図である。
【図６】実施形態の一例としての情報処理装置における誤入力判断処理を説明する図である。
【図７】実施形態の一例としての情報処理装置における入力文字の修正候補の提示画面の第１の例を示す図である。
【図８】実施形態の一例としての情報処理装置における入力文字の修正候補の提示画面の第２の例を示す図である。
【図９】（ａ）は実施形態の一例としての情報処理装置における入力文字の自動修正処理における表示画面の第１の例を示す図であり、（ｂ）はその第２の例を示す図である。
【図１０】実施形態の一例としての情報処理装置における文字入力画面の座標系の第１の例を示す図である。
【図１１】（ａ）は実施形態の一例としての情報処理装置におけるｘ軸方向の主キーインデックスと座標との関係を例示するテーブルであり、（ｂ）はそのｙ軸方向の主キーインデックスと座標との関係を例示するテーブルである。
【図１２】実施形態の一例としての情報処理装置における主キーインデックスと座標との関係を例示するテーブルである。
【図１３】実施形態の一例としての情報処理装置におけるフリックインデックスとフリックベクトルとの関係を例示する図である。
【図１４】実施形態の一例としての情報処理装置における文字入力プログラムの構成を例示する図である。
【図１５】実施形態の一例としての情報処理装置における文字入力処理を示すフローチャートである。
【図１６】実施形態の一例としての情報処理装置における文字入力処理を示すフローチャートである。
【図１７】実施形態の一例としての情報処理装置における文字入力画面の座標系の第２の例を示す図である。
【図１８】従来例としての情報処理装置における画面表示を例示する図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して情報処理装置，文字入力プログラム及び文字入力方法に係る一実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。
また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
【００１４】
以下、図中において、同一の各符号は同様の部分を示しているので、その説明は省略する。
〔Ａ〕実施形態の一例
〔Ａ−１〕システム構成
図１は実施形態の一例としての情報処理装置の機能構成を模式的に示す図であり、図２は実施形態の一例としての情報処理装置における画面表示を例示する図である。
【００１５】
本実施形態の一例における情報処理装置１は、スマートフォンやタブレットＰＣであり、図１を用いて後述するように入力装置６０と組み合わされてタッチパネルとして機能するディスプレイ５０を備える。
図２に示す例において、ディスプレイ５０には文字入力画面５１及び入力文字表示画面５３が表示される。
【００１６】
入力文字表示画面５３は、ユーザによって入力された文字が表示される。
文字入力画面５１は、フリック入力方式のソフトウェアキーボードが表示され、「あ」段の文字（代表文字）に対応する１０個の文字入力キー（主キー，代表文字ボタン）を含む。具体的には、文字入力画面５１は、「あ」段の文字である「あ」，「か」，「さ」，「た」，「な」，「は」，「ま」，「や」，「ら」及び「わ」に対応する主キーを含む。
【００１７】
図３（ａ）〜（ｅ）は、実施形態の一例としての情報処理装置における文字入力例を説明する図である。
以下、各図において、ディスプレイ５０上に示す「○（太丸）」はユーザの指がディスプレイ５０をタッチ（選択）していることを示し、「×」はタッチされているユーザの指がディスプレイ５０から離されて確定入力されたことを示す。また、以下、各図において、ディスプレイ５０上に示す「太実線矢印」はユーザの指がディスプレイ５０にタッチされている状態で矢印の示す方向にフリック（スライド，移動）されていることを示し、「太破線矢印」はユーザの指がディスプレイ５０から離れている状態で矢印の示す方向に移動されていることを示す。
【００１８】
図３（ａ）〜（ｅ）においては、本実施形態の一例における情報処理装置１を用いてユーザが「うま（馬）」という単語を入力する例を示す。
ユーザの指が「あ」に対応する文字に対応する主キーをタッチすると（図３（ａ）の符号Ａ１参照）、ディスプレイ５０に入力ガイド画面５２が表示される。
入力ガイド画面５２は、ユーザの指によって主キーがタッチされると表示され、タッチされた主キーに対応する文字の行に属する５文字（１文字の代表文字及び４文字の関連文字）が表示される。図３（ａ）においては、「あ」に対応する主キーがタッチされているため、入力ガイド画面５２には「あ」行に属する「あ」，「い」，「う」，「え」及び「お」が表示されている。なお、図３（ａ）においては説明のため入力ガイド画面５２を入力文字表示画面５２上に表示しているが、これに限定されるものではない。例えば、入力ガイド画面５２を文字入力画面５１上に表示しても良く、この場合には入力ガイド画面５２の中心に表示される文字と文字入力画面５１の対応する主キーとを重ねることが望ましい。また、入力ガイド画面５２を表示しなくても良い。
【００１９】
以下、各図において、入力ガイド画面５２において「斜線」で示されている文字は、確定入力されようとしている文字を示している。図３（ａ）に示す例では、ユーザの指が「あ」に対応する主キーをタッチしている状態であるため、入力ガイド画面５２において「あ」が確定入力されようとしている文字として示されている。
ユーザの指がディスプレイ５０にタッチされた状態で図面上方向にフリックされると（図３（ｂ）の符号Ａ２，Ａ３参照）、入力ガイド画面５２において確定入力されようとしている文字として「う」が示される。
【００２０】
図３（ｂ）の符号Ａ３で示した位置でユーザの指がディスプレイ５０から離されると（図３（ｃ）の符号Ａ４参照）、入力文字表示画面５３に「う」が表示され、「う」が確定入力される。
次に、ユーザの指がディスプレイ５０から離れた状態で図３（ｃ）の符号Ａ４で示した位置から移動される（図３（ｄ）の符号Ａ５参照）。そして、ユーザの指が「ま」に対応する主キーをタッチすると（図３（ｄ）の符号Ａ６参照）、入力ガイド画面５２が表示される。
【００２１】
図３（ｄ）の符号Ａ６で示した位置でユーザの指がディスプレイ５０から離されると（図３（ｅ）の符号Ａ７参照）、入力ガイド画面５２に「ま」が表示され、「ま」が確定入力される。
このように、フリック入力においては、ユーザの指がタッチした主キーと、タッチした状態で指がフリックした方向との組み合わせにより、入力が認識される。
【００２２】
具体的には、主キーをタッチしてから指をフリックさせずに離すと、タッチされた主キーに対応する「あ」段の文字が入力として認識される。また、主キーをタッチした状態で左，上，右又は下にフリックしてから指を離すと、タッチされた主キーに対応する文字の行に属する「い」，「う」，「え」又は「お」段の文字がそれぞれ入力として認識される。
【００２３】
図３（ａ）は「あ」に対応する主キーがタッチされている例を示しているため、主キーをタッチしてから指をフリックさせずに離すと、「あ」が入力として認識される。また、主キーをタッチした状態で左，上，右又は下にフリックしてから指を離すと、「い」，「う」，「え」又は「お」がそれぞれ入力として認識される。
図４は実施形態の一例としての情報処理装置における誤入力例を説明する図であり、図５（ａ）〜（ｆ）はその誤入力例を詳細に説明する図である。
【００２４】
図４及び図５（ａ）〜（ｆ）においては、本実施形態の一例における情報処理装置１を用いてユーザが「うま」という単語を入力しようとして、誤って「おま」と入力してしまう例を示す。
ユーザの指がディスプレイ５０の「あ」に対応する主キーをタッチすると（図４及び図５（ａ）の符号Ｂ１参照）、図５（ａ）に示すように「あ」が確定入力されようとしている状態で入力ガイド画面５２が表示される。
【００２５】
図４及び図５（ａ）の符号Ｂ１で示した位置から図面上方向にユーザの指がディスプレイ５０にタッチされている状態でフリックされると（図４及び図５（ｂ）の符号Ｂ２参照）、図５（ｂ）に示すように入力ガイド画面５２において確定入力されようとしている文字が「う」に変化する。
ここで、「う」を入力するためには、ユーザは図４及び図５（ｂ）の符号Ｂ２で示す位置で指を離さなければならない。
【００２６】
しかしながら、図４及び図５（ｃ）に示す例において、ユーザは図４及び図５（ｂ）の符号Ｂ２で示した位置からディスプレイ５０をタッチしている状態で指を図面下方向にフリックさせてしまう（図４及び図５（ｃ）の符号Ｂ３参照）。
そして、ユーザは「た」に対応する主キー上で指を離すと（図４及び図５（ｄ）の符号Ｂ４参照）、図５（ｄ）に示すように入力文字表示画面５３に「お」が表示され、「お」が確定入力される。
【００２７】
次に、図４及び図５（ｄ）の符号Ｂ４で示した位置からユーザが指をディスプレイ５０から離した状態で「ま」に対応する主キーの方向へ移動し（図４及び図５（ｅ）の符号Ｂ５参照）、ユーザの指が「ま」に対応する主キーをタッチする（図４及び図５（ｅ）の符号Ｂ６参照）。
そして、図４及び図５（ｅ）の符号Ｂ６で示した位置でユーザの指がディスプレイ５０から離されると（図４及び図５（ｆ）の符号Ｂ７参照）、図４及び図５（ｆ）に示すように入力文字表示画面５３に「ま」が表示され、「ま」が確定入力される。
【００２８】
図４及び図５（ａ）〜（ｆ）に示す例においては、ユーザが１番目の文字を入力するために指をフリックする方向（図面上方向）と、１番目に入力する文字に対応する主キーから２番目に入力する文字に対応する主キーへ向かう方向（図面下方向）とが異なる。これにより、ユーザが指をディスプレイ５０から離す位置を誤ると、情報処理装置１は、１番目の主キーから２番目の主キーへ向かう方向を、ユーザが１番目の文字を入力するために指をフリックする方向（フリック方向）として誤認識する可能性がある。
【００２９】
具体的には、上述した例では、ユーザは「う」を入力したつもりであっても、図４及び図５（ｂ）の符号Ｂ２で示した位置で指をディスプレイ５０からしっかり離していない。また、ユーザは指をディスプレイ５０から離したにもかかわらず、ホバー入力機能で指が触れていると判断されたままユーザが次のキー入力を行なおうと指を移動させる可能性もある。このような場合に、情報処理装置１は、ユーザの指が「あ」に対応する主キーから上方向にフリックされた位置で離されたと認識できない。そして、情報処理装置１は、ユーザの指が「あ」に対応する主キー上を通過して「あ」に対応する主キーから下方向にフリックされ、「お」が入力されたものと認識してしまう。また、情報処理装置１は、ユーザの指が「あ」に対応する主キーの位置に戻った時点で離されたと認識し、「あ」が入力されたものと認識する可能性もある。
【００３０】
このような誤入力を防止するため、ユーザが文字入力の度にディスプレイ５０から指を離していることを確認しながら情報処理装置１の操作を行なうと、文字入力効率が低下してしまう。
そこで、図１に示すように、本実施形態の一例における情報処理装置１は、Central Processing Unit（ＣＰＵ）１０，メモリ２０，記憶装置３０，媒体読み書き装置４０，ディスプレイ５０及び入力装置６０を備える。
【００３１】
記憶装置３０は、データを読み書き可能に格納する既知の装置であり、例えば不揮発性メモリである。なお、記憶装置３０は、Hard Disk Drive（ＨＤＤ）やSolid State Drive（ＳＳＤ）であっても良い。
媒体読み書き装置４０は、記録媒体ＲＭが装着可能に構成される。媒体読み書き装置４０は、記録媒体ＲＭが装着された状態において、記録媒体ＲＭに記録されている情報を読み取り可能に構成される。本例では、記録媒体ＲＭは可搬性を有する。記録媒体ＲＭは、コンピュータ読取可能な記録媒体であって、例えば半導体メモリである。なお、記録媒体ＲＭは、フレキシブルディスク，ＣＤ（ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−ＲＷ等），ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−ＲＡＭ，ＤＶＤ−Ｒ，ＤＶＤ＋Ｒ，ＤＶＤ−ＲＷ，ＤＶＤ＋ＲＷ，ＨＤ  ＤＶＤ等），ブルーレイディスク，磁気ディスク，光ディスク又は光磁気ディスク等であっても良い。
【００３２】
ディスプレイ５０は、液晶ディスプレイやCathode Ray Tube（ＣＲＴ），電子ペーパーディスプレイ等であり、ユーザ等に対する各種情報を表示する。
入力装置６０は、ユーザが各種の入力操作を行なうためのインタフェースであり、例えば抵抗膜方式や静電容量方式の接触センサである。
本実施形態の一例においては、ディスプレイ５０及び入力装置６０が協働することにより、タッチパネルとして機能する。
【００３３】
メモリ２０は、Read Only Memory（ＲＯＭ）及びRandom Access Memory（ＲＡＭ）を含む記憶装置である。メモリ２０のＲＯＭには、Basic Input/Output System（ＢＩＯＳ）等のプログラムが書き込まれている。メモリ２０上のソフトウェアプログラムは、ＣＰＵ１０に適宜読み込まれて実行される。また、メモリ２０のＲＡＭは、一次記録メモリあるいはワーキングメモリとして利用される。
【００３４】
ＣＰＵ１０は、種々の制御や演算を行なう処理装置であり、メモリ２０に格納されたOperating System（ＯＳ）やプログラムを実行することにより、種々の機能を実現する。すなわち、ＣＰＵ１０は、図１に示すように、認識部１１，第１方向決定部１２，決定部１３，第２方向決定部１４，補助部１５及び格納処理部１６として機能する。
なお、これらの認識部１１，第１方向決定部１２，決定部１３，第２方向決定部１４，補助部１５及び格納処理部１６としての機能を実現するためのプログラム（文字入力プログラム）は、例えば前述した記録媒体ＲＭに記録された形態で提供される。そして、コンピュータは媒体読み書き装置４０を介してその記録媒体ＲＭからプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク，光ディスク，光磁気ディスク等の記憶装置（記録媒体）に記録しておき、その記憶装置から通信経路を介してコンピュータに提供してもよい。
【００３５】
認識部１１，第１方向決定部１２，決定部１３，第２方向決定部１４，補助部１５及び格納処理部１６としての機能を実現する際には、内部記憶装置（本実施形態ではメモリ２０）に格納されたプログラムがコンピュータのマイクロプロセッサ（本実施形態ではＣＰＵ１０）によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行してもよい。
【００３６】
認識部１１は、ユーザによってタッチされた主キーを認識し、第１認識部１１ａ及び第２認識部１１ｂとして機能する。
第１認識部１１ａは、連続する２つのタッチ入力操作のうち、ユーザによって１番目にタッチされた主キーを認識する。言い換えれば、第１認識部１１ａは、代表文字に対応する複数の代表文字ボタンのうち、選択された第１代表文字ボタンを認識する。
【００３７】
例えば、図４及び図５（ａ）の符号Ｂ１に示したように、第１認識部１１ａは、１番目にタッチされた主キーとして、「あ」に対応する主キーを認識する。
第２認識部１１ｂは、連続する２つのタッチ入力操作のうち、ユーザによって２番目にタッチされた主キーを認識する。言い換えれば、第２認識部１１ｂは、後述するように決定部１３によって入力文字が決定された後に、複数の代表文字ボタンのうち、選択された第２代表文字ボタンを認識する。
【００３８】
例えば、図４及び図５（ｅ）の符号Ｂ６に示したように、第２認識部１１ｂは、２番目にタッチされた主キーとして、「ま」に対応する主キーを認識する。
第１方向決定部１２は、１番目にタッチされた主キーについて、ユーザの指がフリックされた方向（フリック方向）を決定する。言い換えれば、第１方向決定部１２は、第１代表文字ボタンの位置と選択の確定入力がされた（ユーザの指がディスプレイ５０から離された）位置とによって特定される第１方向を決定する。
【００３９】
図６は、実施形態の一例としての情報処理装置における誤入力判断処理を説明する図である。
図６においては、図４及び図５（ａ）〜（ｆ）を用いて説明した誤入力例に基づいて、誤入力判断処理を説明する。図６に示す符号Ｃ１は図４及び図５（ｃ）に示した符号Ｂ３に対応し、図６に示す符号Ｃ２は図４及び図５（ｅ）に示した符号Ｂ５に対応する。
【００４０】
図６に示す例において、第１方向決定部１２は、１番目に入力された文字「お」のフリック方向（図面下方向）を決定する（符号Ｃ１参照）。
決定部１３は、入力されたフリック方向に基づき、タッチされた主キーに対応する文字の行に属する複数の文字の中から、入力文字を決定する。言い換えれば、決定部１３は、第１方向に基づき、第１代表文字ボタンに対応する代表文字及び第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、入力文字を決定する。
【００４１】
例えば、図４及び図５（ｄ）の符号Ｂ４に示したように、決定部１３は、入力文字として、文字「お」を決定する。
第２方向決定部１４は、１番目にタッチされた主キーの位置と２番目にタッチされた主キーの位置とによって特定される移動方向を算出（決定）する。言い換えれば、第２方向決定部１４は、第１代表文字ボタンの位置と第２代表文字ボタンの位置とによって特定される第２方向を決定する。
【００４２】
具体的には、例えば、第２方向決定部１４は、連続して入力された２つのキーそれぞれの中心（図心）におけるディスプレイ５０（文字入力画面５１）上の座標値を用いて、移動方向（第２方向）を算出する。
図６に示す例において、第２方向決定部１４は、「あ」に対応する主キーの位置から「ま」に対応する主キーの位置までの移動方向（図面下方向）を算出する（符号Ｃ２参照）。
【００４３】
補助部１５は、算出されたフリック方向（第１方向）と移動方向（第２方向）とに基づき、入力補助処理を行なう。
具体的には、補助部１５は、フリック方向と移動方向とのなす角の大きさが閾値（例えば５０度）未満の場合に、入力補助処理を行なう。つまり、補助部１５は、なす角が閾値未満の場合に、ユーザが意図しない位置で指をディスプレイ５０から離したことにより、誤った文字が入力された可能性があると判定する。
【００４４】
図６に示す例において、フリック方向（符号Ｃ１参照）と移動方向（符号Ｃ２参照）とのなす角の大きさは０度であるため、補助部１５は、なす角が閾値（例えば５０度）未満であると判定し、入力補助処理を行なう。
図１に示すように、補助部１５は、入力補助処理を実現するために、提示部１５ａ及び修正部１５ｂとして機能する。
【００４５】
提示部１５ａは、決定部１３によって決定された入力文字の修正候補を提示する。
具体的には、提示部１５ａは、認識された主キーに対して第１方向決定部１２により決定されたフリック方向に対向する方向（反対方向）にフリックすることによって入力される文字を、入力文字の修正候補として提示する。言い換えれば、提示部１５ａは、第１方向に対向する方向に基づき、第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、入力文字の修正候補を選択して提示する。
【００４６】
また、提示部１５ａは、１番目に入力された文字の主キーに対応する文字を、修正候補として提示する。言い換えれば、提示部１５ａは、第１代表文字ボタンに対応する代表文字を、修正候補として提示する。
なお、提示部１５ａは、後述する格納処理部１６が記録する修正履歴情報に基づき、算出されたフリック方向に対向する方向にフリックすることによって入力される文字又は１番目に入力された文字の主キーに対応する文字以外の文字を、修正候補として提示しても良い。
【００４７】
図７は実施形態の一例としての情報処理装置における入力文字の修正候補の提示画面の第１の例を示す図であり、図８はその第２の例を示す図である。
図７においては、図４及び図５（ａ）〜（ｆ）を用いて説明した誤入力例に基づいて、誤入力判断処理を説明する。
図７に示すように、提示部１５ａは、決定部１３によって入力文字として決定された「おま」という単語に加えて、「うま」及び「あま」という単語を修正候補として、入力文字表示画面５３に表示する。具体的には、提示部１５ａは、入力文字として決定された「おま」の１文字目の「お」のフリック方向（図５（ｃ）の図面下方向）に対向する方向にフリックすることによって入力される文字「う」を含む単語を、修正候補として提示する。また、提示部１５ａは、入力文字として決定された「おま」の１文字目の「お」が属する主キーに対応する文字「あ」を含む単語を、修正候補として提示する。
【００４８】
図７に示す例においては、提示部１５ａは、「うま」及び「あま」という単語のみを修正候補として提示し、「おま」，「うま」及び「あま」と同様に１文字目に「あ」行の文字を含む「いま」及び「えま」は表示していない。これは、「い」及び「え」のフリック方向が第１方向又は第２方向と直交しており、「おま」という単語が入力された場合にユーザが本来入力しようとした単語が「いま」又は「えま」である可能性が低いためである。ただし、提示部１５ａが修正履歴情報に基づいて修正候補を提示し、修正履歴情報において「おま」を「いま」又は「えま」と修正操作された頻度が高い場合には、提示部１５ａは修正候補として「いま」又は「えま」を提示しても良い。
【００４９】
図８においては、ユーザが「ほうわ（飽和）」と入力しようとしたが、誤って「ほおわ」と入力してしまった例について説明する。
提示部１５ａは、決定部１３によって入力文字として決定された「ほおわ」という単語に加えて、「ほうわ」及び「ほあわ」という単語を修正候補として、入力文字表示画面５３に表示する。
【００５０】
図８に示す例においては、入力された文字が３文字であるため、補助部１５は、例えば、２文字目に入力された「お」のフリック方向と、２文字目の主キー「あ」から３文字目の主キー「わ」までの移動方向とに基づき、入力補助処理を行なう。
提示部１５ａは、入力文字として決定された「ほおわ」の２文字目の「お」のフリック方向に対向する方向にフリックすることによって入力される文字「う」を含む単語を、修正候補として提示する。また、提示部１５ａは、入力文字として決定された「ほおわ」の２文字目の「お」が属する主キーに対応する文字「あ」を含む単語を、修正候補として提示する。
【００５１】
図８に示す例においては、提示部１５ａは、「ほうわ」及び「ほあわ」という単語のみを修正候補として提示し、「ほおわ」，「ほうわ」及び「ほあわ」と同様に２文字目に「あ」行の文字を含む「ほいわ」及び「ほえわ」は表示していない。これは、「い」及び「え」のフリック方向が第１方向又は第２方向と直交しており、「ほおわ」という単語が入力された場合にユーザが本来入力しようとした単語が「ほいわ」又は「ほえわ」である可能性が低いためである。ただし、提示部１５ａが修正履歴情報に基づいて修正候補を提示し、修正履歴情報において「ほおわ」を「ほいわ」又は「ほえわ」と修正操作された頻度が高い場合には、提示部１５ａは修正候補として「ほいわ」又は「ほえわ」を提示しても良い。
【００５２】
つまり、補助部１５は、ｎ番目の入力ａ（ｎ）とそれに続く入力ａ（ｎ＋１）との間に所定の関係がある場合に、入力補助処理を行なう（ｎは自然数）。ここで、所定の関係とは、ａ（ｎ）において認識したフリック方向（フリックベクトル）と、ａ（ｎ）の主キーからａ（ｎ＋１）の主キーへ向かう移動方向（主キー間ベクトル）とのなす角の大きさが閾値（例えば５０度）未満であることである。
【００５３】
なお、図８に示すように、提示部１５ａは、修正候補を提示する場合に、決定部１３によって入力文字として決定された単語を強調表示（図８の下線部参照）してもよい。これにより、ユーザは入力文字として決定された単語を認識しやすくなる。
修正部１５ｂは、決定部が決定した入力文字を自動的に修正する。
具体的には、修正部１５ｂは、算出されたフリック方向に対向する方向にフリックすることによって入力される文字によって、入力文字を修正する。また、修正部１５ｂは、１番目に入力された文字の主キーに対応する文字によって、入力文字を修正する。なお、修正部１５ｂは、後述する格納処理部１６が記録する修正履歴情報に基づき、算出されたフリック方向に対向する方向にフリックすることによって入力される文字又は１番目に入力された文字の主キーに対応する文字以外の文字によって、入力文字を修正しても良い。
【００５４】
図９（ａ）は実施形態の一例としての情報処理装置における入力文字の自動修正処理における表示画面の第１の例を示す図であり、図９（ｂ）はその第２の例を示す図である。
図９（ａ），（ｂ）においても、上述した図８と同様に、ユーザが「ほうわ（飽和）」と入力しようとしたが、誤って「ほおわ」と入力されてしまった例について説明する。
図９（ａ），（ｂ）に示すように、修正部１５ｂは、決定部１３によって入力文字として決定された「ほおわ」という単語を自動的に修正して、入力文字表示画面５３に表示する。
【００５５】
具体的には、修正部１５ｂは、入力文字として決定された「ほおわ」の２文字目の「お」のフリック方向に対向する方向にフリックすることによって入力される文字「う」を含む単語に入力文字を修正する。なお、修正部１５ｂは、入力文字として決定された「ほおわ」の２文字目の「お」が属する主キーに対応する文字「あ」を含む単語に入力文字を修正しても良い（図示省略）。
【００５６】
修正部１５ｂは、ユーザによる設定や誤認識率に基づき、入力文字の自動修正を行なうか否かを決定する。誤認識率は、提示部１５ａによって提示された修正候補又は修正部１５ｂによって修正された入力文字をユーザが選択した回数（修正操作回数）を補助部１５によって誤認識の可能性があると判定された回数（誤認識判定回数）で割った値である。
例えば、誤認識率が閾値以上である場合には修正部１５ｂは入力文字の自動修正を行ない、誤認識率が閾値未満の場合には修正部１５ｂは入力文字の自動修正を行なわずに提示部１５ａによる修正候補の提示のみを行なう。また、ユーザの設定は、例えば「強」又は「弱」を設定することができる。ユーザの設定が「強」の場合には修正部１５ｂは入力文字の自動修正を行ない、ユーザの設定が「弱」の場合には修正部１５ｂは入力文字の自動修正を行なわずに提示部１５ａによる修正候補の提示のみを行なう。
【００５７】
図９（ａ），（ｂ）に示す例においては、提示部１５ａは、修正部１５ｂによって自動的に修正された「ほうわ」という単語に加えて、「ほおわ」及び「ほあわ」という単語を、修正候補として入力文字表示画面５３に表示する。つまり、提示部１５ａは、修正部１５ｂが入力文字を修正する場合に、決定部１３によって決定された入力文字を修正候補として提示する。
【００５８】
提示部１５ａは、後述する格納処理部１６によって記録される修正履歴情報に基づき、提示する修正候補の順序を入れ替えても良い。図９（ａ）に示す例においては、提示部１５ａは、修正履歴情報において「ほおわ」という単語が「ほあわ」という単語よりも多くユーザの修正操作によって選択されている場合に、「ほおわ」という単語を「ほあわ」という単語よりも上に表示する。一方、図９（ｂ）に示す例においては、提示部１５ａは、修正履歴情報において「ほあわ」という単語が「ほおわ」という単語よりも多くユーザの修正操作によって選択されている場合に、「ほあわ」という単語を「ほおわ」という単語よりも上に表示する。
【００５９】
また、提示部１５ａは、修正部１５ｂが入力文字を修正する場合に、決定部１３によって決定された入力文字について、色やフォントを他の修正候補とは異なるものにして表示しても良い。図９（ａ），（ｂ）に示す例においては、提示部１５ａは、「ほおわ」という単語を斜体で表示している。
格納処理部１６は、連続した２つの文字入力操作に基づき、修正履歴情報を作成して、記憶装置３０又は記録媒体ＲＭに格納する。具体的には、格納処理部１６は、一連の文字入力操作の後にユーザによる修正操作があった場合には、誤入力が発生したと認識する。そして、格納処理部１６は、１番目の入力文字と２番目に選択された主キーに対応する文字とユーザによる修正操作の内容とを対応付けて、修正履歴情報として記憶装置３０又は記録媒体ＲＭに格納する。
【００６０】
格納処理部１６は、決定部１３によって決定された入力文字に関する情報及び修正履歴情報を記憶装置３０又は記録媒体ＲＭに逐次格納する。
ここで、格納処理部１６による修正履歴情報の格納処理に用いる格納変数について説明する。
格納処理部１６は、以下の格納変数を含む修正履歴情報Ｒ（ｋｅｙ（ｉ），ｋｅｙ（ｊ））を記憶装置３０又は記録媒体ＲＭに格納する。
【００６１】
Ｒ（ｋｅｙ（ｉ），ｋｅｙ（ｊ））＝（ｃ，ｓ，ｔ（ｆ），ｗ）
ｃは誤認識判定回数であり、補助部１５によって誤認識の可能性があると判定された場合に格納処理部１６はｃを＋１インクリメントする。
ｓは修正操作回数であり、ユーザによって入力文字の修正操作が行なわれた場合に格納処理部１６はｓを＋１インクリメントする。ここで、修正操作とは、例えば、ユーザが提示部１５ａによって提示された修正候補の中から意図する入力文字を選択することや、ユーザが修正部１５ｂによって自動修正された入力文字を容認すること、ユーザが入力文字を削除して再入力することである。
【００６２】
ｔ（ｆ）は修正後文字の記録である。ユーザによって入力文字の修正操作が行なわれた場合に、格納処理部１６は、ｔ（ｆ）の修正後のフリック方向に対応するフリックインデックスＦｉ＝１〜５（図１３を用いて後述）についてのポイントを＋１インクリメントする。また、第１認識部１１ａによって認識された主キーが誤ったものであった場合には、格納処理部１６は、ｔ（ｆ）のインデックス６についてのポイントを＋１インクリメントする。
【００６３】
ｗは誤認識率であり、ｗ＝ｓ／ｃで表わされる。
つまり、格納処理部１６は、誤認識判定回数ｃと修正操作回数ｓとを記憶装置３０又は記録媒体ＲＭに逐次格納する。そして、格納処理部１６は、誤認識判定回数ｃと修正操作回数ｓとに基づき、誤認識率ｗを算出し、記憶装置３０又は記録媒体ＲＭに逐次格納する。
【００６４】
なお、格納処理部１６は、情報処理装置１を使用するユーザ毎に修正履歴情報を記憶装置３０又は記録媒体ＲＭに格納しても良い。これにより、同一の情報処理装置１を複数のユーザで共有する場合に、あるユーザの文字入力操作の癖によって記録された修正履歴情報に基づき、他のユーザが影響を受けることを防ぐことができる。
本実施形態の一例における情報処理装置１は、図示しないネットワークインタフェースを介して、作成した修正履歴情報を同一又は類似の入力インタフェースを備える他の情報処理装置１と共有しても良い。これにより、同一のユーザが複数の情報処理装置１を使用する場合に、複数の情報処理装置１で同様の入力補助処理を実現することができる。なお、修正履歴情報を他の情報処理装置１と共有する場合には、情報処理装置１毎に補正量を修正することができる。
【００６５】
図１０は、実施形態の一例としての情報処理装置における文字入力画面の座標系の第１の例を示す図である。
図１０に示す例においては、ディスプレイ５０の短手方向（図面右方向）にｘ軸を定義し、ディスプレイ５０の長手方向（図面上方向）にｙ軸を定義する。
図１１（ａ）は実施形態の一例としての情報処理装置におけるｘ軸方向の主キーインデックスと座標との関係を例示するテーブルであり、図１１（ｂ）はそのｙ軸方向の主キーインデックスと座標との関係を例示するテーブルである。
【００６６】
ｉ番目に入力されたキーを、文字入力画面５１においてｘ軸及びｙ軸方向にマトリックス状に配置された主キーの位置を表わす番号（主キーインデックス）をそれぞれ示すＸｉ，Ｙｉとフリック方向を示す番号（フリックインデックス）Ｆｉとを用いて、入力インデックスとして、
ｋｅｙ（ｉ）＝（Ｘｉ，Ｙｉ，Ｆｉ）
で表わす。
【００６７】
また、ｉ番目に入力された主キーの代表座標位置（例えば図心）の座標を、主キーのｘ座標ｍｘｉ及びｙ座標ｍｙｉを用いて、
Ｋｅｙ＿ｍ（ｉ）＝（ｍｘｉ，ｍｙｉ）
で表わす。
図１１（ａ）に示すように、主キーのｘ軸方向のインデックスとしてＸｉ＝１，２，３を定義する。そして、Ｘｉ＝１，２，３に対して、ｘ軸方向の座標ｍｘｉ＝２４０，３６０，４８０（単位は例えばピクセル）をそれぞれ対応づける。
【００６８】
図１０に示した座標平面上において、主キー「あ」，「た」及び「ま」はＸｉ＝１，ｍｘｉ＝２４０であり、主キー「か」，「な」，「や」及び「わ」はＸｉ＝２，ｍｘｉ＝３６０であり、主キー「さ」，「は」及び「ら」はＸｉ＝３，ｍｘｉ＝４８０である。
図１１（ｂ）に示すように、主キーのｙ軸方向のインデックスとしてＹｉ＝１，２，３，４を定義する。そして、Ｙｉ＝１，２，３，４に対して、ｙ軸方向の座標ｍｙｉ＝５０，１５０，２５０，３５０（単位は例えばピクセル）をそれぞれ対応づける。
【００６９】
図１０に示した座標平面上において、主キー「わ」はＹｉ＝１，ｍｙｉ＝５０であり、主キー「ま」，「や」及び「ら」はＹｉ＝２，ｍｙｉ＝１５０であり、主キー「た」，「な」及び「は」はＹｉ＝３，ｍｙｉ＝２５０であり、主キー「あ」，「か」及び「さ」はＹｉ＝４，ｍｙｉ＝３５０である。
図１２は、実施形態の一例としての情報処理装置における主キーインデックスと座標との関係を例示するテーブルである。
【００７０】
図１２に示すように、図１１（ａ），（ｂ）に示した２つのテーブルを組み合わせることにより、各主キーを示す座標Ｋｅｙ＿ｍ（ｉ）が定義される。
認識部１１は、ユーザによるタッチ入力があった座標Ｋｅｙ＿ｍ（ｉ）を認識し、図１２に示すテーブルを参照することによって、主キーインデックス（Ｘｉ，Ｙｉ）を認識する。
【００７１】
図１０に示した座標平面上において、例えば、ｉ番目に主キー「あ」がタッチされた場合には、Ｋｅｙ＿ｍ（ｉ）＝（２４０，３５０）となる。そして、認識部１１は、タッチされた主キーの座標Ｋｅｙ＿ｍ（ｉ）を認識して図１２に示すテーブルを参照することによって、主キーインデックス（Ｘｉ，Ｙｉ）＝（１，４）を認識する。
図１３は、実施形態の一例としての情報処理装置におけるフリックインデックスとフリックベクトルとの関係を例示する図である。
【００７２】
以下、ｉ番目に入力されたキーのフリック方向（フリックベクトル）を、フリック方向のｘ座標ｆｘｉ及びｙ座標ｆｙｉを用いて、
Ｋｅｙ＿ｆ（ｉ）＝（ｆｘｉ，ｆｙｉ）
で表わす。
図１３に示すように、フリックインデックスＦｉ＝１，２，３，４，５を定義する。そして、Ｆｉ＝１に対して、主キーをタッチしてフリックされずにディスプレイ５０からユーザの指が離れたことを示すフリックベクトルＫｅｙ＿ｆ（ｉ）＝（０，０）を対応付ける。また、Ｆｉ＝２，３，４，５に対して、主キーをタッチしてから左，上，右及び下方向にユーザの指がフリックされたことを示すフリックベクトルＫｅｙ＿ｆ（ｉ）＝（−１，０），（０，１），（１，０），（０，−１）をそれぞれ対応付ける。
【００７３】
第１方向決定部１２は、ユーザのフリック入力に基づき、フリックベクトルＫｅｙ＿ｆ（ｉ）を算出する。
図１０に示した座標平面上においては、主キー「あ」がタッチされている状態の入力ガイド画面５２が表示されている。そのため、文字「あ」はＦｉ＝１，Ｋｅｙ＿ｆ（ｉ）＝（０，０）であり、文字「い」はＦｉ＝２，Ｋｅｙ＿ｆ（ｉ）＝（−１，０）であり、文字「う」はＦｉ＝３，Ｋｅｙ＿ｆ（ｉ）＝（０，１）であり、文字「え」はＦｉ＝４，Ｋｅｙ＿ｆ（ｉ）＝（１，０）であり、文字「お」はＦｉ＝５，Ｋｅｙ＿ｆ（ｉ）＝（０，−１）である。
【００７４】
主キーの座標Ｋｅｙ＿ｍ（ｉ）とフリックベクトルＫｅｙ＿ｆ（ｉ）とを組み合わせることにより、入力ベクトル
ｋｅｙ＿ｖ（ｉ）＝（ｍｘｉ，ｍｙｉ，ｆｘｉ，ｆｙｉ）
を定義することができる。
決定部１３は、入力ベクトルｋｅｙ＿ｖ（ｉ）に基づき、図１１〜図１３に示したテーブルを用いて、入力インデックスｋｅｙ（ｉ）を認識する。そして、格納処理部１６は、決定部１３によって認識された入力インデックスｋｅｙ（ｉ）を記憶装置３０又は記録媒体ＲＭに逐次格納する。
【００７５】
図１０〜図１３に示した例において、例えば、ｋｅｙ＿ｖ（ｉ）＝（２４０，３５０，０，０）の入力があった場合に、決定部１３は、入力インデックスｋｅｙ（ｉ）＝（１，４，１）を認識し、入力文字として「あ」を決定する。また、例えば、ｋｅｙ＿ｖ（ｉ）＝（４８０，１５０，０，−１）の入力があった場合に、決定部１３は、入力インデックス  ｋｅｙ（ｉ）＝（３，２，５）を認識し、入力文字として「ろ」を決定する。更に、例えば、ｋｅｙ＿ｖ（ｉ）＝（３６０，３５０，０，１）の入力があった場合に、決定部１３は、入力インデックスｋｅｙ（ｉ）＝（２，４，３）を認識し、入力文字として「く」を決定する。また、例えば、ｋｅｙ＿ｖ（ｉ）＝（２４０，１５０，−１，０）の入力があった場合に、決定部１３は、入力インデックスｋｅｙ（ｉ）＝（１，２，２）を認識し、入力文字として「み」を決定する。
【００７６】
前述の如く、補助部１５は、第１方向と第２方向とのなす角が閾値未満の場合に、入力補助処理を行なう。
このような、補助部１５による入力補助処理を行なうか否かの判定処理の詳細を説明する。
補助部１５は、最新の入力（ｉ）と１つ前の入力（ｊ）とを比較する（ｊ＝ｉ−１）。具体的には、補助部１５は、入力（ｊ）のフリックベクトルと入力（ｊ）に対応する主キーから入力（ｉ）に対応する主キーまでの主キー間ベクトルとのなす角の大きさが閾値未満である場合に、誤認識の可能性があると判定し、入力補助処理を行なう。
【００７７】
例えば、補助部１５は、閾値をＴとして、以下の不等式が成り立つ場合に、入力補助処理を行なう。
【００７８】
【数１】
2015207143.tif 000003
【００７９】
例えば、なす角の大きさの閾値を４５度にする場合には、Ｔ＝ｃｏｓ４５°≒０．７１を代入する。
図１４は、実施形態の一例としての情報処理装置における文字入力プログラムの構成を例示する図である。
本実施形態の一例における文字入力プログラム１００は、例えば、ユーザアプリケーション１１０，文字入力モジュール１２０，入出力モジュール１３０及びＯＳ１４０を含む。
【００８０】
ユーザアプリケーション１１０は、種々の機能を有するソフトウェアである。
ＯＳ１４０は、情報処理装置１のハードウェアの管理などの基本機能を実現するシステムソフトウェアである。
入出力モジュール１３０は、画面表示モジュール１３１及びタッチパネル入力格納モジュール１３２として機能する。
【００８１】
ＣＰＵ１０は、画面表示モジュール１３１及びタッチパネル入力格納モジュール１３２を実行することにより、ディスプレイ５０及び入力装置６０をそれぞれ制御する。
文字入力モジュール１２０は、テキスト編集モジュール１２１，文字変換モジュール１２２，フリック入力誤認識制御モジュール１２３及びフリック入力認識モジュール１２４として機能する。
【００８２】
テキスト編集モジュール１２１は、文字入力処理において、入力する文字の種別（かな／英字／数字／記号等）の変更や文字のコピー／切り取り／貼り付け等を行なうためのモジュールである。
文字変換モジュール１２２は、入力された文字を変換するモジュールであり、例えば入力されたひらがな文字を漢字やカタカナ文字に変換する。
【００８３】
フリック入力誤認識制御モジュール１２３は、フリック入力によって誤認識された文字を修正するためのモジュールである。ＣＰＵ１０は、フリック入力誤認識制御モジュール１２３を実行することにより、認識部１１，第１方向決定部１２，決定部１３，第２方向決定部１４，補助部１５及び格納処理部１６として機能する。
フリック入力認識モジュール１２４は、フリック入力された文字を認識するためのモジュールである。ＣＰＵ１０は、フリック入力認識モジュールを実行することにより、認識部１１，第１方向決定部１２及び決定部１３として機能する。
【００８４】
〔Ａ−２〕動作
上述の如く構成された実施形態の一例としての情報処理装置における文字入力処理を、図１５及び図１６に示すフローチャート（ステップＳ１〜Ｓ１２）に従って説明する。具体的には、図１５にステップＳ１〜Ｓ８の処理を示し、図１６にステップＳ９〜Ｓ１２の処理を示す。
【００８５】
決定部１３は、ユーザによって入力されたキーを認識することにより、入力文字を決定する（図１５のステップＳ１）。そして、格納処理部１６は、決定部１３によって認識された入力を、入力インデックス
ｋｅｙ（ｉ）＝（Ｘｉ，Ｙｉ，Ｆｉ）
として、記憶装置３０又は記録媒体ＲＭに格納する。
【００８６】
補助部１５は、格納処理部１６によって記憶装置３０又は記録媒体ＲＭに格納された、入力ｋｅｙ（ｉ）の１つ前の入力である入力インデックス
ｋｅｙ（ｊ）＝（Ｘｊ，Ｙｊ，Ｆｊ），
ｊ＝ｉ−１
を調べる（図１５のステップＳ２）。
【００８７】
補助部１５は、現在の入力インデックスｋｅｙ（ｉ）と１つ前の入力インデックスｋｅｙ（ｊ）とを比較することにより、ｋｅｙ（ｊ）が誤認識された入力である可能性があるかを判定する（図１５のステップＳ３）。
ｋｅｙ（ｊ）が誤認識された入力である可能性がない場合には（図１５のステップＳ３のＮｏルート参照）、図１６のステップＳ１１へ移行する。
【００８８】
一方、ｋｅｙ（ｊ）が誤認識された入力である可能性がある場合には（図１５のステップＳ３のＹｅｓルート参照）、格納処理部１６は、誤認識判定回数ｃをインクリメントする（図１５のステップＳ４）。
補助部１５は、誤認識率ｗが所定値以上であるかを判定する（図１５のステップＳ５）。
【００８９】
誤認識率ｗが所定値以上でない場合には（図１５のステップＳ５のＮｏルート参照）、図１６のステップＳ９へ移行する。
一方、誤認識率ｗが所定値以上である場合には（図１５のステップＳ５のＹｅｓルート参照）、修正部１５ｂは、入力文字の自動修正を行なうかを判定する（図１５のステップＳ６）。
【００９０】
自動修正を行なわない場合には（図１５のステップＳ６のＮｏルート参照）、修正部１５ｂは入力文字の自動修正を行なわず（図１５のステップＳ７）、提示部１５ａは入力文字の修正候補の提示を行なう。そして、図１６のステップＳ９へ移行する。
一方、自動修正を行なう場合には（図１５のステップＳ６のＹｅｓルート参照）、修正部１５ｂは、入力文字の自動修正を行ない（図１５のステップＳ８）、修正した入力文字を表示する。そして、図１６のステップＳ９へ移行する。なお、提示部１５ａは、修正部１５ｂによって自動修正された入力文字とともに、入力文字の修正候補の提示を行なっても良い。
【００９１】
格納処理部１６は、ユーザによる入力文字の修正操作があったかを判定する（図１６のステップＳ９）。
修正操作がなかった場合には（図１６のステップＳ９のＮｏルート参照）、図１６のステップＳ１１へ移行する。
一方、修正操作があった場合には（図１６のステップＳ９のＹｅｓルート参照）、格納処理部１６は、修正履歴情報Ｒ（ｋｅｙ（ｉ），ｋｅｙ（ｊ））をアップデートする（図１６のステップＳ１０）。
【００９２】
具体的には、格納処理部１６は、修正操作回数ｓをインクリメントし、誤認識率を更新する。また、格納処理部１６は、ｔ（ｆ）の修正後のフリック方向に対応するフリックインデックスＦｉ＝１〜５についてのポイントを＋１インクリメントする。更に、第１認識部１１ａによって認識された主キーが誤ったものであった場合には、格納処理部１６は、ｔ（ｆ）のインデックス６についてのポイントを＋１インクリメントする。
【００９３】
その後、認識部１１は、ユーザによる次の文字の入力操作があったかを判定する（図１６のステップＳ１１）。
入力操作があった場合には（図１６のステップＳ１１のＹｅｓルート参照）、図１５のステップＳ１に戻る。
一方、入力操作がない場合には（図１６のステップＳ１１のＮｏルート参照）、ＣＰＵ１０は、必要に応じて入力文字の変換を行ない、入力文字の確定を行なう（図１６のステップＳ１２）。そして、文字入力処理が終了する。
【００９４】
〔Ａ−３〕効果
このように、上述した実施形態の一例における情報処理装置１によれば、誤入力を減少させることできる。
具体的には、第１方向決定部１２は、第１代表文字ボタンの位置と選択の確定入力がされた位置とによって特定される第１方向を決定する。また、第２方向決定部１４は、第１代表文字ボタンの位置と第２代表文字ボタンの位置とによって特定される第２方向を算出する。そして、補助部１５は、第１方向と第２方向とに基づき、入力補助処理を行なう。
【００９５】
これにより、フリック入力方式における誤認識が抑制されるため、文字入力の効率を向上させることができる。また、連続した２キーの入力間の関係性を利用して入力補助処理を行なうため、タッチの軌跡等を利用した処理と比較して利用するデータ量を削減することができ、高速に処理を行なうことができる。
提示部１５ａは、第１方向に対向する方向に基づき、第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、入力文字の修正候補を提示する。また、提示部１５ａは、第１代表文字ボタンに対応する代表文字を、修正候補として提示する。これにより、ユーザが提示された修正候補の中から意図する文字を選択することによって、誤入力した文字の修正作業を効率的に行なうことができる。
【００９６】
修正部１５ｂは、入力文字を修正する。これにより、ユーザは誤入力を意識せずに文字入力操作を継続することができる。
格納処理部１６は、入力文字と第２代表文字ボタンに対応する代表文字とユーザによる修正操作の記録とを対応付けて、修正履歴情報として記憶装置に格納する。これにより、誤入力補助処理の精度を向上させることができる。
【００９７】
〔Ｂ〕その他
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成及び各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
上述した実施形態の一例においては、ひらがな入力における文字入力処理について説明したが、これに限定されるものではない。
【００９８】
例えば、上述した実施形態の一例における情報処理装置１を、カタカナや数字、英字等の文字入力処理に適用しても良いし、同一のカテゴリに集合される記号やマーク、キャラクタ等の文字入力処理に適用しても良い。
図１７は、実施形態の一例としての情報処理装置における文字入力画面の座標系の第２の例を示す図である。
【００９９】
文字入力画面５１の座標系は、図１０に示した例に限定されるものではない。
図１７に示す例においては、ディスプレイ５０の座標軸Ｘ，Ｙと文字入力画面の座標軸ｘ，ｙとは一致しておらず、互いに直交している。このように、文字入力画面５１の座標系やディスプレイ５０上における表示位置は、種々変更することができる。
〔Ｃ〕付記
（付記１）
代表文字に対応する複数の代表文字ボタンのうち、選択された第１代表文字ボタンを認識する第１認識部と、
前記第１代表文字ボタンの位置と前記選択の確定入力がされた位置とによって特定される第１方向を決定する第１方向決定部と、
前記第１方向に基づき、前記第１代表文字ボタンに対応する代表文字及び前記第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、入力文字を決定する決定部と、
前記入力文字が決定された後に、前記複数の代表文字ボタンのうち、選択された第２代表文字ボタンを認識する第２認識部と、
前記第１代表文字ボタンの位置と前記第２代表文字ボタンの位置とによって特定される第２方向を決定する第２方向決定部と、
前記第１方向と前記第２方向とに基づき、入力補助処理を行なう補助部と、
を備えることを特徴とする、情報処理装置。
【０１００】
（付記２）
前記補助部は、前記第１方向と前記第２方向とのなす角の大きさが閾値未満の場合に、前記入力補助処理を行なう、
ことを特徴とする、付記１に記載の情報処理装置。
（付記３）
前記補助部は、前記第１方向に対向する方向に基づき、前記第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、前記入力文字の修正候補を提示する提示部
を備えることを特徴とする、付記１又は２に記載の情報処理装置。
【０１０１】
（付記４）
前記提示部は、前記第１代表文字ボタンに対応する代表文字を、前記修正候補として提示する、
ことを特徴とする、付記３に記載の情報処理装置。
（付記５）
前記入力文字と前記第２代表文字ボタンに対応する代表文字とユーザによる修正操作の記録とを対応付けて、修正履歴情報として記憶装置に格納する格納処理部を備え、
前記提示部は、前記修正履歴情報に基づき、前記修正候補を提示するか否かを決定する、
ことを特徴とする、付記３又は４に記載の情報処理装置。
【０１０２】
（付記６）
前記提示部は、前記修正履歴情報に基づき、複数の前記修正候補を提示する順位を入れ替える、
ことを特徴とする、付記５に記載の情報処理装置。
（付記７）
前記補助部は、前記入力文字を修正する修正部
を備えることを特徴とする、付記１〜４のいずれか１項に記載の情報処理装置。
【０１０３】
（付記８）
前記入力文字と前記第２代表文字ボタンに対応する代表文字とユーザによる修正操作の記録とを対応付けて、修正履歴情報として記憶装置に格納する格納処理部を備え、
前記修正部は、前記修正履歴情報に基づき、前記修正を行なうか否かを決定する、
ことを特徴とする、付記７に記載の情報処理装置。
【０１０４】
（付記９）
前記格納処理部は、当該情報処理装置を使用するユーザ毎に前記修正履歴情報を前記記憶装置に格納する、
ことを特徴とする、付記５，６又は８に記載の情報処理装置。
（付記１０）
情報処理装置が備えるコンピュータに、
代表文字に対応する複数の代表文字ボタンのうち、選択された第１代表文字ボタンを認識し、
前記第１代表文字ボタンの位置と前記選択の確定入力がされた位置とによって特定される第１方向を決定し、
前記第１方向に基づき、前記第１代表文字ボタンに対応する代表文字及び前記第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、入力文字を決定し、
前記入力文字が決定された後に、前記複数の代表文字ボタンのうち、選択された第２代表文字ボタンを認識し、
前記第１代表文字ボタンの位置と前記第２代表文字ボタンの位置とによって特定される第２方向を決定し、
前記第１方向と前記第２方向とに基づき、入力補助処理を行なう、
処理を実行させることを特徴とする、文字入力プログラム。
【０１０５】
（付記１１）
前記第１方向と前記第２方向とのなす角の大きさが閾値未満の場合に、前記入力補助処理を行なう、
処理を前記コンピュータに実行させることを特徴とする、付記１０に記載の文字入力プログラム。
【０１０６】
（付記１２）
前記第１方向に対向する方向に基づき、前記第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、前記入力文字の修正候補を提示する、
処理を前記コンピュータに実行させることを特徴とする、付記１０又は１１に記載の文字入力プログラム。
【０１０７】
（付記１３）
前記第１代表文字ボタンに対応する代表文字を、前記修正候補として提示する、
処理を前記コンピュータに実行させることを特徴とする、付記１２に記載の文字入力プログラム。
（付記１４）
前記入力文字を修正する、
処理を前記コンピュータに実行させることを特徴とする、付記１０〜１３のいずれか１項に記載の文字入力プログラム。
【０１０８】
（付記１５）
前記入力文字を修正する場合に、前記入力文字を修正候補として提示する、
処理を前記コンピュータに実行させることを特徴とする、付記１４に記載の文字入力プログラム。
（付記１６）
情報処理装置において、
代表文字に対応する複数の代表文字ボタンのうち、選択された第１代表文字ボタンを認識し、
前記第１代表文字ボタンの位置と前記選択の確定入力がされた位置とによって特定される第１方向を決定し、
前記第１方向に基づき、前記第１代表文字ボタンに対応する代表文字及び前記第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、入力文字を決定し、
前記入力文字が決定された後に、前記複数の代表文字ボタンのうち、選択された第２代表文字ボタンを認識し、
前記第１代表文字ボタンの位置と前記第２代表文字ボタンの位置とによって特定される第２方向を決定し、
前記第１方向と前記第２方向とに基づき、入力補助処理を行なう、
ことを特徴とする、文字入力方法。
【０１０９】
（付記１７）
前記第１方向と前記第２方向とのなす角の大きさが閾値未満の場合に、前記入力補助処理を行なう、
ことを特徴とする、付記１６に記載の文字入力方法。
（付記１８）
前記第１方向に対向する方向に基づき、前記第１代表文字ボタンに対応する代表文字に関連する複数の関連文字の中から、前記入力文字の修正候補を提示する、
ことを特徴とする、付記１６又は１７に記載の文字入力方法。
【０１１０】
（付記１９）
前記第１代表文字ボタンに対応する代表文字を、前記修正候補として提示する、
ことを特徴とする、付記１８に記載の文字入力方法。
【符号の説明】
【０１１１】
１      情報処理装置
１０    ＣＰＵ（コンピュータ）
１１    認識部
１１ａ  第１認識部
１１ｂ  第２認識部
１２    第１方向決定部
１３    決定部
１４    第２方向決定部
１５    補助部
１５ａ  提示部
１５ｂ  修正部
１６    格納処理部
１００  文字入力プログラム
１１０  ユーザアプリケーション
１２０  文字入力モジュール
１２１  テキスト編集モジュール
１２２  文字変換モジュール
１２３  フリック入力誤認識制御モジュール
１２４  フリック入力認識モジュール
１３０  入出力モジュール
１３１  画面表示モジュール
１３２  タッチパネル入力格納モジュール
１４０  ＯＳ
２０    メモリ
３０    記憶装置
４０    媒体読み書き装置
５０    ディスプレイ
５１    文字入力画面
５２    入力ガイド画面
５３    入力文字表示画面
６０    入力装置
７      情報処理装置
８０    ディスプレイ
８１    文字入力画面
８２    入力ガイド画面
８３    入力文字表示画面
ＲＭ    記録媒体
【図１】
2015207143.tif 000004
【図２】
2015207143.tif 000005
【図３】
2015207143.tif 000006
【図４】
2015207143.tif 000007
【図５】
2015207143.tif 000008
【図６】
2015207143.tif 000009
【図７】
2015207143.tif 000010
【図８】
2015207143.tif 000011
【図９】
2015207143.tif 000012
【図１０】
2015207143.tif 000013
【図１１】
2015207143.tif 000014
【図１２】
2015207143.tif 000015
【図１３】
2015207143.tif 000016
【図１４】
2015207143.tif 000017
【図１５】
2015207143.tif 000018
【図１６】
2015207143.tif 000019
【図１７】
2015207143.tif 000020
【図１８】
2015207143.tif 000021