(57)【要約】【課題】誤認識、誤入力を削減する。【解決手段】１字ずつ文字の入力を入力文字として受け付ける受付手段１０１と、１字の文字を１以上含む第１文字セットから、入力文字に対応する１文字を選択文字として選択する選択手段１０４と、ある文字変換において文字列として意味を有する１字以上の文字を記録している記録手段１０２と、選択文字と一致する文字を記録手段から記録文字として選択し、この記録文字ごとに直後に続く１文字を記録手段から入力可能文字セットとしてすべて抽出する抽出手段１０３と、第１文字セットを入力可能文字セットに設定して新たな入力文字を受け付ける設定手段１０３と、を具備する。【選択図】図１
2010026718.tif 000002
【特許請求の範囲】
【請求項１】
１字ずつ文字の入力を入力文字として受け付ける受付手段と、
１字の文字を１以上含む第１文字セットから、前記入力文字に対応する１文字を選択文字として選択する選択手段と、
ある文字変換において文字列として意味を有する１字以上の文字を記録している記録手段と、
前記選択文字と一致する文字を前記記録手段から記録文字として選択し、該記録文字ごとに直後に続く１文字を前記記録手段から入力可能文字セットとしてすべて抽出する抽出手段と、
前記第１文字セットを前記入力可能文字セットに設定して新たな入力文字を受け付ける設定手段と、を具備することを特徴とする文字入力装置。
【請求項２】
前記抽出手段は、前記選択文字がない場合には、前記記録手段に記録されている文字のうちの先頭の文字として使用される１以上の文字を初期可能文字セットとしてすべて抽出し、
前記選択手段は、前記初期可能文字セットから、前記入力文字に対応する１文字を選択文字として選択することを特徴とする請求項１に記載の文字入力装置。
【請求項３】
前記受付手段は前記入力文字の筆跡情報を受け付け、
前記選択手段は前記筆跡情報を使用して文字認識処理を行い、前記選択文字を選択することを特徴とする請求項１または請求項２に記載の文字入力装置。
【請求項４】
前記受付手段は画面上に表示された仮想キーボードにタップしたときの座標情報を前記入力文字として受け付け、
前記選択手段は前記座標情報に対応する座標と前記仮想キーボードの各キーの位置座標とを参照して、前記選択文字を選択することを特徴とする請求項１または請求項２に記載の文字入力装置。
【請求項５】
前記受付手段はキーボードの押下されたキーに対応する文字を前記入力文字として受け付け、
前記選択手段は前記キーと前記キーボードに配置されている複数のキーの配列情報とを参照して、前記選択文字を選択することを特徴とする請求項１または請求項２に記載の文字入力装置。
【請求項６】
前記記録手段は、ローマ字入力で入力されるアルファベットを前記文字列として意味を有する１字以上の文字列として記録していることを特徴とする請求項１から請求項５のいずれか１項に記載の文字入力装置。
【請求項７】
前記記録手段は、中国語のピンイン入力で入力されるアルファベットを前記文字列として意味を有する１字以上の文字列として記録していることを特徴とする請求項１から請求項５のいずれか１項に記載の文字入力装置。
【請求項８】
前記第１文字セットを前記第１記録手段に記録されているすべての文字に設定するモードに切り替える切替手段をさらに具備することを特徴とする請求項１から請求項７のいずれか１項に記載の文字入力装置。
【請求項９】
前記切替手段は、前記選択文字が削除されるべきと判定された場合に一時的に前記モードに切り替えることを特徴とする請求項８に記載の文字入力装置。
【請求項１０】
１字ずつ文字の入力を入力文字として受け付ける受付手段と、
１字の文字を１以上含む第１文字セットから、前記入力文字に対応する１文字を第１選択文字として選択する第１選択手段と、
１字の文字を１以上含む第２文字セットから、前記入力文字に対応する１文字を第２選択文字として選択する第２選択手段と、
前記第１選択文字を蓄積する第１蓄積手段と、
前記第２選択文字を蓄積する第２蓄積手段と、
ある文字変換において文字列として意味を有する１字以上の文字を記録している第１記録手段と、
前記第２選択文字と一致する文字を前記第１記録手段から記録文字として選択し、該記録文字ごとに直後に続く１文字を前記第１記録手段から入力可能文字セットとしてすべて抽出する第１抽出手段と、
前記第２文字セットを前記入力可能文字セットに設定して新たな入力文字を受け付ける第１設定手段と、
１字以上の文字と、該文字を前記文字変換した１以上の変換文字とを関連付けて記録している第２記録手段と、
前記第２選択文字と一致する文字を一致文字として前記第２記録手段で検索し、該一致文字に関連付けられているすべての変換文字を抽出文字として抽出する第２抽出手段と、
前記第１選択文字と前記抽出文字とのうちから１文字を選択するか１文字も選択しないかを判定する判定手段と、
前記第１選択文字と前記抽出文字とのうちから１文字を選択すると判定された場合には前記第１蓄積手段と前記第２蓄積手段との内容を空に設定して新たな入力文字を受け付け、前記第１選択文字と前記抽出文字とのうちから１文字も選択しないと判定された場合には前記第１蓄積手段と前記第２蓄積手段との内容を維持して該内容に続く入力文字を受け付ける第２設定手段と、を具備することを特徴とする文字入力装置。
【請求項１１】
前記第１抽出手段は、前記第２選択文字がない場合には、前記第１記録手段に記録されている文字のうちの先頭の文字として使用される１以上の文字を初期可能文字セットとしてすべて抽出し、
前記第２選択手段は、前記初期可能文字セットから、前記入力文字に対応する１文字を第２選択文字として選択することを特徴とする請求項１０に記載の文字入力装置。
【請求項１２】
前記第１文字セットは、前記第１記録手段に記録されているすべての文字を含むことを特徴とする請求項１０に記載の文字入力装置。
【請求項１３】
前記第１文字セットは、前記第１記録手段に記録されているすべての文字から前記入力可能文字セットを除いた文字を含むことを特徴とする請求項１０に記載の文字入力装置。
【請求項１４】
前記受付手段は前記入力文字の筆跡情報を受け付け、
前記第１選択手段および前記第２選択手段は前記筆跡情報を使用して文字認識処理を行い、それぞれ前記第１選択文字および前記第２選択文字を選択することを特徴とする請求項１０から請求項１３のいずれか１項に記載の文字入力装置。
【請求項１５】
前記受付手段は画面上に表示された仮想キーボードにタップしたときの座標情報を前記入力文字として受け付け、
前記第１選択手段および前記第２選択手段は前記座標情報に対応する座標と前記仮想キーボードの各キーの位置座標とを参照して、それぞれ前記第１選択文字および前記第２選択文字を選択することを特徴とする請求項１０から請求項１３のいずれか１項に記載の文字入力装置。
【請求項１６】
前記受付手段はキーボードの押下されたキーに対応する文字を前記入力文字として受け付け、
前記第１選択手段および前記第２選択手段は前記キーと前記キーボードに配置されている複数のキーの配列情報とを参照して、それぞれ前記第１選択文字および前記第２選択文字を選択することを特徴とする請求項１０から請求項１３のいずれか１項に記載の文字入力装置。
【請求項１７】
前記第１記録手段は、ローマ字入力で入力されるアルファベットを前記文字列として意味を有する１字以上の文字列として記録していることを特徴とする請求項１０から請求項１６のいずれか１項に記載の文字入力装置。
【請求項１８】
前記第１記録手段は、中国語のピンイン入力で入力されるアルファベットを前記文字列として意味を有する１字以上の文字列として記録していることを特徴とする請求項１０から請求項１６のいずれか１項に記載の文字入力装置。
【請求項１９】
１字ずつ文字の入力を入力文字として受け付け、
１字の文字を１以上含む第１文字セットから、前記入力文字に対応する１文字を選択文字として選択し、
ある文字変換において文字列として意味を有する１字以上の文字を記録している記録手段を用意し、
前記選択文字と一致する文字を前記記録手段から記録文字として選択し、該記録文字ごとに直後に続く１文字を前記記録手段から入力可能文字セットとしてすべて抽出し、
前記第１文字セットを前記入力可能文字セットに設定して新たな入力文字を受け付けることを特徴とする文字入力方法。
【請求項２０】
１字ずつ文字の入力を入力文字として受け付け、
１字の文字を１以上含む第１文字セットから、前記入力文字に対応する１文字を第１選択文字として選択し、
１字の文字を１以上含む第２文字セットから、前記入力文字に対応する１文字を第２選択文字として選択し、
前記第１選択文字を蓄積する第１蓄積手段を用意し、
前記第２選択文字を蓄積する第２蓄積手段を用意し、
ある文字変換において文字列として意味を有する１字以上の文字を記録している第１記録手段を用意し、
前記第２選択文字と一致する文字を前記第１記録手段から記録文字として選択し、該記録文字ごとに直後に続く１文字を前記第１記録手段から入力可能文字セットとしてすべて抽出し、
前記第２文字セットを前記入力可能文字セットに設定して新たな入力文字を受け付け、
１字以上の文字と、該文字を前記文字変換した１以上の変換文字とを関連付けて記録している第２記録手段を用意し、
前記第２選択文字と一致する文字を一致文字として前記第２記録手段で検索し、該一致文字に関連付けられているすべての変換文字を抽出文字として抽出し、
前記第１選択文字と前記抽出文字とのうちから１文字を選択するか１文字も選択しないかを判定し、
前記第１選択文字と前記抽出文字とのうちから１文字を選択すると判定された場合には前記第１蓄積手段と前記第２蓄積手段との内容を空に設定して新たな入力文字を受け付け、前記第１選択文字と前記抽出文字とのうちから１文字も選択しないと判定された場合には前記第１蓄積手段と前記第２蓄積手段との内容を維持して該内容に続く入力文字を受け付けることを特徴とする文字入力方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、何らかの入力デバイスを介してユーザが入力した文字を判定する文字入力装置および方法に関する。
【背景技術】
【０００２】
日本語をアルファベット用のキーボードで入力する場合に、日本語の読みであるローマ字の文字列を、キーボードを通してアルファベット文字で入力し、仮名の文字列を経由して漢字交じりの文章に変換するために、「ローマ字仮名変換」、「仮名漢字変換」といった文字変換技術が知られている（例えば、特許文献１参照）。この場合、次のように文字列の変換が行われる。すなわち、「入力→アルファベット列→（ローマ字変換）→仮名→（仮名漢字変換）→漢字交じりの文章」の順序で文字列の変換が行われる。
【０００３】
また、中国語をアルファベット用のキーボードで入力する場合に、中国語の読みであるピンイン文字列を、キーボードを通してアルファベット文字で入力し、アルファベットの文字列を中国漢字の文字列に変換するために、「ピンイン変換」という文字変換技術が知られている（例えば、特許文献２参照）。この場合、次のように文字列の変換が行われる。すなわち、「入力→アルファベット列→（ピンイン変換）→漢字の文字列」の順序で文字列の変換が行われる。
【０００４】
キーボードの代わりに、座標入力装置を経由して入力された筆跡に対して文字を認識する手書き文字認識（例えば、特許文献３参照）を使う場合にも、上記の文字変換技術が使われることがある。
【特許文献１】特開平７−１０５２０２号公報
【特許文献２】特開平１１−２３８０５１号公報
【特許文献３】特開２００２−２０３２０８公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
手書き文字認識は、誤認識を発生する可能性がある。キーボード、特に、仮想キーボードにおいては、キーを押したときの触覚的なフィードバックが得られないため、どのキーを押したかがわかりづらく、キーの押し間違えが発生しやすい。つまり、手書き文字認識、仮想キーボード、どちらも、ユーザが意図した文字列とは異なる文字列を誤って出力する可能性がある。
【０００６】
ローマ字変換やピンイン変換を使って文字を入力する場合を考えると、入力されるアルファベットの組み合わせを限定できる。例えば、ローマ字変換の場合、  
あ：“ａ”、い：“ｉ”…  
か：“ｋａ”、き：“ｋｉ”…  
等と、日本語の仮名は少数のアルファベットの組み合わせで表記できるため、仮名にローマ字変換できるアルファベットの文字列は限定される。
【０００７】
ところが、文字認識や仮想キーボードで入力できる文字セットは通常固定であるため、誤認識や誤入力によって、文字認識や仮想キーボードが判定した結果が、ローマ字変換によって仮名へ変換できないアルファベットの組み合わせとなることが少なくない。例えば、「か」を入力するために、文字認識を経由して“ｋａ”という筆跡を入力する場合を考えてみる。“ａ”と“ｄ”の形状が類似しているため、文字認識では“ａ”を“ｄ”と誤認識しやすい。ユーザが書いた“ａ”を“ｄ”と誤認識して“ｋｄ”と判定されると、ローマ字入力では有り得ない組み合わせになることがある。
【０００８】
文字認識においては、１位の認識結果だけではなく、２位以下の認識結果が得られる。この場合、複数の認識結果を組み合わせて文字列の候補を作成して、誤認識に対応する方法が考えられる。仮に“ａ”を“ｄ”と誤認識したとしても、２位以下の認識結果の中に“ａ”が含まれていれば、“ｋａ”というユーザが意図した文字列を候補に含めることができるのである。しかし、文字を限定せずすべての文字を対象に認識処理を行うと、文字認識した結果の文字列が必ずローマ字として正しい組み合わせになる保証はない。なお、同様のことは、ピンイン変換を通して中国語を入力する場合にも発生する。このように、文字認識やソフトキーボードを使った文字入力装置の場合、誤入力する可能性があるため、ユーザが入力したい文章を正確に入力できないことがある。
【０００９】
この発明は、上述した事情を考慮してなされたものであり、文字を変換する装置を経由してユーザが文章を入力する場合における誤認識、誤入力を削減する文字入力装置および方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述の課題を解決するため、本発明の文字入力装置は、１字ずつ文字の入力を入力文字として受け付ける受付手段と、１字の文字を１以上含む第１文字セットから、前記入力文字に対応する１文字を選択文字として選択する選択手段と、ある文字変換において文字列として意味を有する１字以上の文字を記録している記録手段と、前記選択文字と一致する文字を前記記録手段から記録文字として選択し、該記録文字ごとに直後に続く１文字を前記記録手段から入力可能文字セットとしてすべて抽出する抽出手段と、前記第１文字セットを前記入力可能文字セットに設定して新たな入力文字を受け付ける設定手段と、を具備することを特徴とする。
【００１１】
また、本発明の文字入力装置は、１字ずつ文字の入力を入力文字として受け付ける受付手段と、１字の文字を１以上含む第１文字セットから、前記入力文字に対応する１文字を第１選択文字として選択する第１選択手段と、１字の文字を１以上含む第２文字セットから、前記入力文字に対応する１文字を第２選択文字として選択する第２選択手段と、前記第１選択文字を蓄積する第１蓄積手段と、前記第２選択文字を蓄積する第２蓄積手段と、ある文字変換において文字列として意味を有する１字以上の文字を記録している第１記録手段と、前記第２選択文字と一致する文字を前記第１記録手段から記録文字として選択し、該記録文字ごとに直後に続く１文字を前記第１記録手段から入力可能文字セットとしてすべて抽出する第１抽出手段と、前記第２文字セットを前記入力可能文字セットに設定して新たな入力文字を受け付ける第１設定手段と、１字以上の文字と、該文字を前記文字変換した１以上の変換文字とを関連付けて記録している第２記録手段と、前記第２選択文字と一致する文字を一致文字として前記第２記録手段で検索し、該一致文字に関連付けられているすべての変換文字を抽出文字として抽出する第２抽出手段と、前記第１選択文字と前記抽出文字とのうちから１文字を選択するか１文字も選択しないかを判定する判定手段と、前記第１選択文字と前記抽出文字とのうちから１文字を選択すると判定された場合には前記第１蓄積手段と前記第２蓄積手段との内容を空に設定して新たな入力文字を受け付け、前記第１選択文字と前記抽出文字とのうちから１文字も選択しないと判定された場合には前記第１蓄積手段と前記第２蓄積手段との内容を維持して該内容に続く入力文字を受け付ける第２設定手段と、を具備することを特徴とする。
【発明の効果】
【００１２】
本発明の文字入力装置および方法によれば、文字を変換する装置を経由してユーザが文章を入力する場合における誤認識、誤入力を削減することができる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照しながら本発明の実施形態に係る文字入力装置および方法について詳細に説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。  
（第１の実施形態）  
第１の実施形態の文字入力装置について図１を参照して説明する。  
本実施形態の文字入力装置は、入力取得部１０１、入力可能文字記録部１０２、入力可能文字抽出部１０３、文字判定部１０４、文字蓄積部１０５、文字列出力部１０６を含む。
【００１４】
入力取得部１０１は、ユーザが入力した文字入力情報を取得し、文字判定部１０４へ文字入力情報を渡す。  
入力取得部１０１は、例えば、ユーザからの入力が文字を表す筆跡である場合には、画面（図示せず）上にユーザが筆記した筆跡情報を表示し、その筆跡情報を取得する。この場合、筆跡情報は以下の複数画からなる座標の時系列で表現される。  
（Ｘ［１］［１］、Ｙ［１］［１］）、（Ｘ［１］［２］，Ｙ［１］［２］）、…、（Ｘ［１］［Ｋ［１］］，Ｙ［［１］Ｋ［１］］）  
（Ｘ［２］［１］、Ｙ［２］［１］）、（Ｘ［２］［２］，Ｙ［２］［２］）、…、（Ｘ［２］［Ｋ［２］］，Ｙ［［２］Ｋ［２］］）  
…
（Ｘ［Ｎ］［１］、Ｙ［Ｎ］［１］）、（Ｘ［Ｎ］［２］，Ｙ［Ｎ］［２］）、…、（Ｘ［Ｎ］［Ｋ［Ｎ］］，Ｙ［［Ｎ］Ｋ［Ｎ］］）  
ただし、Ｎは１文字の画数であり、Ｋ［ｉ］はｉ画目の筆跡の点数、（Ｘ［ｉ］［ｋ］、Ｙ［ｉ］［ｋ］）はｉ画目の筆跡のｋ番目の点の座標である。このｋ番目の点は、入力取得部１０１によって一定時間ごとにサンプリングされる。
【００１５】
また、入力取得部１０１は、例えば図２に示すような仮想キーボードであり、表示一体型のタッチパネル等の画面上に表示し、ユーザからの座標入力を受け付ける。入力の場合にはユーザがタップした画面上の座標（Ｘ，Ｙ）を文字判定部１０４へ渡す。また入力取得部１０１は、例えばキーボードであり、入力の場合にはユーザが押したキーボード中のキーの文字を文字判定部１０４へ渡す。入力取得部１０１は画面上に表示された仮想キーボードにタップしたときの座標情報を入力文字として受け付ける。
【００１６】
入力可能文字記録部１０２は、文字として意味を有する１字以上の文字を記録している。例えばローマ字変換の場合には図３のような表を保持する。すなわち、入力可能文字記録部１０２は仮名として意味を有する１字以上のローマ字がすべて記録されている。ピンイン変換の場合には図３のような表に加えて、四声に対応する変換文字（例えば、それぞれ数字の「１」、「２」、「３」、「４」）を割り当てる。
【００１７】
入力可能文字抽出部１０３は、文字蓄積部１０５の蓄積文字列を検索キーとして、入力可能文字記録部１０２について検索を行い、入力可能文字セットを文字判定部１０４へ渡す。入力可能文字抽出部１０３が行う検索処理としては、検索キーと先頭から部分的に一致する文字列を検索し、一致した文字列に続く文字を抜き出して入力可能文字セットとする。
【００１８】
入力可能文字抽出部１０３は、例えば“ｋ”を検索キーとした場合では（ｉ）（ｉｉ）のように検索処理を行う。
【００１９】
（ｉ）    “ｋａ”，“ｋｉ”，“ｋｕ”，“ｋｅ，“ｋｏ”，“ｋｙａ”，“ｋｙｕ”，“ｋｙｏ”が入力可能文字記録部から“ｋ”と先頭から部分的に一致する  
（ｉｉ）  （ｉ）の文字列から、“ｋ”に続く文字｛ａ，ｉ，ｕ，ｅ，ｏ，ｙ｝を抜き出し、入力可能文字セットとする  
検索キーが“  ”（ＮＵＬＬ）（すなわち、文字蓄積部１０５に文字列が蓄積されていない）の場合は、入力可能文字記録部１０２のすべての文字列の先頭文字の集合が入力可能文字セットとなる。また、入力可能文字抽出部１０３は、検索キーの先頭からの一部が入力可能文字記録部１０２の全文字と一致する場合、全一致する部分を削除して、残りの文字列を検索キーとして再検索を行う。例えば、検索キーが“ｓｙａｋ”の場合、“ｓｙａ”の部分が全一致するので、“ｓｙａ”を削除し、残りの“ｋ”を検索キーとして再検索する。入力可能文字記録部１０２が図３に示す表を記憶している場合、入力可能文字抽出部１０３は図４に示すように、文字蓄積部１０５に蓄積されている蓄積文字列に対応して入力可能文字セットを取得する。
【００２０】
文字判定部１０４は、入力可能文字抽出部１０３が出力する入力可能文字セット（文字セット１）の中から、入力取得部の入力情報に最も合致した文字を選択し、その文字を文字蓄積部１０５へ渡す。  
文字判定部１０４は、例えば入力取得部１０１が筆跡情報を取得する場合、上記の特開２００２−２０３２０８公報に開示されている文字認識処理を行えばよい。入力筆跡に対して入力可能文字セットに相当する標準パタンの中から最も類似した標準パタンを選び、その標準パタンに対応する文字を文字蓄積部１０５へ渡す。
【００２１】
他に、文字判定部１０４は、例えば入力取得部１０１が仮想キーボードである場合、入力取得部１０１からの座標情報（Ｘ，Ｙ）をもとに判定を行う。文字判定部１０４は、入力取得部１０１が取得した座標情報に対応する座標と仮想キーボードの各キーの位置座標とを参照して、キーを選択する。仮想キーボードが図２に示すようなキーボードの配置である場合には、図５のような各キーの位置情報を持ち、入力可能文字セットに対応するキーの中から（Ｘ，Ｙ）にもっともに近いキーを選択し、そのキーに対応する文字を文字蓄積部１０５へ渡す。図５は入力取得部で用いられる仮想キーボードの各キーの位置を記述するキー位置データベースである。文字判定部１０４はユーザから入力された座標に対応するキーをこのＤＢの位置情報を元に判定する。図５の座標は、図２の左上を原点とし、右に行くほどｘ座標が増加し、下に行くほどｙ座標が増加するように決められている。ノードがキーボード上の各キーを表し、アークがキー同士の位置関係を表している。ノードに距離を割り当ててキー同士の距離を記述してもよい。
【００２２】
さらに、文字判定部１０４は、例えば入力取得部１０１がキーボードである場合、入力取得部１０１が押下されたとしたキーとキーボードに配置されている複数のキーの配列情報とを参照して、文字を選択する。より具体的に文字判定部１０４は、例えば入力取得部１０１がキーボードである場合、入力取得部１０１からの出力キーが入力可能文字セットに含まれる場合には、出力キーに対応する文字をそのまま出力する。一方、入力取得部１０１からの出力キーが入力可能文字セットに含まれない場合には、文字判定部１０４は入力可能文字セットに含まれるキーの中で位置関係が最も近い出力キーに対応する文字を出力する。ここで、キー同士の近さは、例えば、図６のようなキー同士の位置関係を記述するグラフ構造から求めればよい。各ノードがキーを表し、各アークがキーとキーの間の位置関係を表し、各アークに距離を割りあてる。最も近いキーが最も選択されている可能性が高いと判定するために、例えば、あるキーからのノードにはこのキーに近いほど大きな重み係数を付与しておく。
【００２３】
さらに、文字判定部１０４は、入力可能文字記録部１０２に記録されているすべての文字に設定するモードを用意して、このモードに切り替えられるように設定されていてもよい。
【００２４】
文字蓄積部１０５は、文字判定部１０４が出力する文字を時間順に並べた文字列として蓄積する。
【００２５】
文字列出力部１０６は、文字蓄積部に蓄積された文字列を出力する。文字列出力部１０６が出力した文字列をユーザが削除した場合には、文字判定部１０４は、入力可能文字記録部１０２に記録されているすべての文字に設定するモードを用意して、このモードに切り替えられるように設定されていてもよい。
【００２６】
次に、第１の実施形態の文字入力装置の動作の一例について図７、図８、図９を参照して説明する。ここで示す例では、文字判定部１０４が筆跡情報を使用して文字認識処理を行い、入力可能文字記録部１０２が図３のようにローマ字変換表を記録している場合の処理の流れを説明する。具体例として「か」という文字を入力するために“ｋａ”と筆記する場合について説明する。
【００２７】
（ｉ）  まず、入力可能文字抽出部１０３が、図８に示すように、１文字目が入力される前に、あらかじめ１文字目に入力されうる入力可能文字セットを算出する（ステップＳ７０３）。この場合、文字蓄積部１０５には文字は蓄積されていないので、入力可能文字抽出部１０３は、図８に示すように、入力可能文字記録部１０２（図３）に含まれる全文字列の先頭文字の集合、
｛ａ，ｉ，ｕ，ｅ，ｏ，ｋ，ｓ，ｔ，ｎ，ｈ，ｍ，ｙ，ｒ，ｗ，ｇ，ｚ，ｄ，ｂ，ｐ，ｃ｝   （＊）  
を入力可能文字セットとして算出する（ステップＳ７０３）。
【００２８】
（ｉｉ）  次に、図８に示すように、入力取得部１０１が１文字目に“ｋ”を入力すると、文字判定部１０４は、入力可能文字セット（＊）を文字セット１とし、文字セット１の中から入力筆跡に類似した“ｋ”と判定する（ステップＳ７０１）。文字蓄積部１０５は“ｋ”を蓄積する（ステップＳ７０２）。また、文字列出力部１０６は“ｋ”を出力する（ステップＳ７０４）。入力可能文字抽出部１０３は、“ｋ”を検索キーとして入力可能文字記録部１０２（図３）について検索を行い、図８に示すように、
｛ａ，ｉ，ｕ，ｅ，ｏ，ｙ｝   （＊＊）
を、次に入力可能な入力可能文字セットとして算出する（ステップＳ７０３）。
【００２９】
（ｉｉｉ）  続いて、２文字目として“ａ”が入力されると、図９に示すように、文字判定部１０４は入力可能文字セット（＊＊）を文字セット１とし、文字セット１の中から入力筆跡に類似した“ａ”を選択する（ステップＳ７０１）。文字蓄積部１０５は“ｋａ”を蓄積する（ステップＳ７０２）。また、文字列出力部１０６は“ｋａ”を出力する（ステップＳ７０４）。入力可能文字抽出部１０３は、図９に示すように、“ｋａ”を検索キーとして入力可能文字記録部１０２（図３）について検索処理を行う。ここで、入力可能文字抽出部１０３は、“ｋａ”は図３中の文字列と完全に一致するので、文字蓄積部１０５に文字列が蓄積されていないときと同様に（＊）を入力可能文字セットとして算出する。
【００３０】
３文字目以降は、文字が入力されるごとに、同様の処理を繰り返せばよい。
【００３１】
ここに示した例で仮に、２文字目で文字セットを限定せずに文字判定を行うと、２文字目が“ａ”なのか“ｄ”なのかあいまいな筆跡を入力された場合に、“ｄ”と誤認識する可能性が高くなるが、文字セットを限定することにより、文字判定部１０４が、“ａ”を“ｄ”と誤認識しなくなる。
【００３２】
以上の第１の実施形態によれば、文字組み合わせ表とそれまでに入力された文字列から、次に入力される可能性がある文字セットに限定して、次の入力文字の文字判定を行うことにより、誤認識、誤入力の可能性を削減できる。
【００３３】
（第２の実施形態）  
第２の実施形態の文字入力装置について図１０を参照して説明する。  
本実施形態の文字入力装置は、第１の実施形態の文字入力装置に加えて、変換文字列記録部１００１、文字列変換部１００２、第１文字判定部１００３、第１文字蓄積部１００４、候補文字列出力部１００５、蓄積文字列制御部１００６を含む。なお、第２文字判定部１０４と第２文字蓄積部１０５は、それぞれ第１の実施形態の文字判定部１０４と文字蓄積部１０５と名称は異なるが同様である。
【００３４】
変換文字列記録部１００１は、検索のための検索文字列とこの文字列に対応する変換文字列とを記録している。変換文字列記録部１００１は、例えばローマ字仮名変換の場合では図１１に示すようなローマ字仮名変換表を記録している。図１１は、変換文字列記録部で記録されているデータベースの１例であり、ローマ字と変換仮名の対応関係を表にしたものである。
【００３５】
文字列変換部１００２は、文字列出力部１０６が出力した文字列を検索キーとして変換文字列記録部１００１について検索を行う。文字列変換部１００２は、変換文字列を検索するために変換文字列記録部１００１を参照する。図１１中のローマ字を検索し、検索されたローマ字に対応する仮名（変換文字列）を出力する。より詳しくは、文字列変換部１００２は、まず、検索キーと一致する検索文字列を検索し、一致した検索文字列に対応する変換文字列を抽出し出力する。また、文字列変換部１００２は、一致した検索文字列が複数ある場合には、対応するすべての変換文字列を出力する。
【００３６】
第１文字判定部１００３は、文字判定部１０４とは文字セットが異なる他は同様である。第１文字判定部で判定対象となる文字セット１は固定の文字セットである。文字セット１は、例えば全文字とする。なお、文字判定部１０４の文字セット２は、第１の実施形態と同様であり入力可能文字セットである。
【００３７】
第１文字蓄積部１００４は、第１文字判定部１００３が出力する文字を時間順に並べた文字列として蓄積する。
【００３８】
候補文字列出力部１００５は、第１文字蓄積部１００４からの文字列と、文字列変換部１００２からの変換文字列とを候補文字列として１つあるいは複数の候補文字列を出力する。候補文字列出力部１００５は、第１文字蓄積部１００４からの文字列と文字列変換部１００２からの変換文字列とが共通する文字列である場合には、これらの文字列を１つにまとめる。
【００３９】
蓄積文字列制御部１００６は、候補文字列出力部１００５から出力された候補文字列の中からユーザが１つを選択したときに、第１文字蓄積部１００４および第２文字蓄積部１０５の文字列バッファの中身を消去して、第１文字蓄積部１００４と第２文字蓄積部１０５の内容を空にする。すなわち、蓄積文字列制御部１００６は、候補文字列出力部１００５から出力された候補文字列の中から１文字を選択すると判定した場合には第１文字蓄積部１００４と第２文字蓄積部１０５との内容を空に設定して新たな入力文字を受け付け、候補文字列出力部１００５から出力された候補文字列の中から１文字も選択しないと判定した場合には前記第１蓄積手段と前記第２蓄積手段との内容を維持して該内容に続く入力文字を受け付けるように設定する。
【００４０】
次に、第２の実施形態の文字入力装置の動作の一例について図１２、図１３、図１４を参照して説明する。ここで示す例では、第１文字判定部１００３と第２文字判定部１０４とが筆跡情報を使用して文字認識処理を行い、入力可能文字記録部１０２が図３のようにローマ字変換表を記録している場合の処理の流れを説明する。具体例として「か」という文字を入力するため、“ｋａ”と入力する場合について説明する。
【００４１】
（ｉ）  まず、入力可能文字抽出部１０３が、図１３に示すように、１文字目が入力される前に、１文字目に入力されうる入力可能文字セットを算出する（ステップＳ７０３）。第２文字蓄積部１０５には文字列は蓄積されていないので、入力可能文字抽出部１０３は、図１３に示すように、入力可能文字記録部１０２（図３）に含まれる全文字列の先頭文字の集合
｛ａ，ｉ，ｕ，ｅ，ｏ，ｋ，ｓ，ｔ，ｎ，ｈ，ｍ，ｙ，ｒ，ｗ，ｇ，ｚ，ｄ，ｂ，ｐ，ｃ｝   （＊）
を入力可能文字セットとして算出する（ステップＳ７０３）。
【００４２】
（ｉｉ）  次に、図１３に示すように、入力取得部１０１が１文字目に“ｋ”を入力すると、第１文字判定部１００３は文字セット１（＝全文字）の中から、入力筆跡に類似した“ｋ”と判定し（ステップＳ１２０１）、第１文字蓄積部１００４は“ｋ”が蓄積する（ステップＳ１２０２）。一方、第２文字判定部１０４は、図１３に示すように、入力可能文字セット（＊）を文字セット２とし、文字セット２の中から、入力筆跡に類似した“ｋ”と判定し（ステップＳ７０１）、第２文字蓄積部１０５は“ｋ”を蓄積する（ステップＳ７０２）。入力可能文字抽出部１０３は、図１３に示すように、第２文字蓄積部１０５に蓄積された“ｋ”を検索キーとして入力可能文字記録部１０２（図３）について検索処理を行い、
｛ａ，ｉ，ｕ，ｅ，ｏ，ｙ｝   （＊＊）
を入力可能文字セットとして算出する（ステップＳ７０３）。そして、文字列変換部１００２は文字列出力部１０６からの出力である“ｋ”を検索キーとして変換文字列記録部１００１（図１１）から検索し、“ｋ”を変換文字列として出力する（ステップＳ１２０３）。次に、候補文字列出力部１００５は、第１文字蓄積部１００４に蓄積された文字列と文字列変換部１００２からの出力をあわせて、候補文字列として“ｋ”を出力とする（ステップＳ１２０４）。最後に蓄積文字列制御部１００６が、ユーザが１つを選択したときに、第１文字蓄積部１００４および第２文字蓄積部１０５の文字列バッファの中身を消去して、第１文字蓄積部１００４と第２文字蓄積部１０５の内容を空にする（ステップＳ１２０５）が、この時点でユーザは選択をしないので、何もしない。
【００４３】
（ｉｉｉ）続いて、図１４に示すように、２文字目として、“ｄ”と類似した形状で“ａ”が筆記されたものとする。このとき、第１文字判定部１００３は、図１４に示すように、文字セット１（＝全文字）の中から、入力筆跡に類似した“ｄ”と判定する（ステップＳ１２０１）。第１文字蓄積部１００４は“ｋｄ”を蓄積する（ステップＳ１２０２）。一方、第２文字判定部１０４は、図１４に示すように、入力可能文字セット（＊＊）を文字セット２とし、文字セット２の中から入力筆跡に類似した“ａ”と判定する（ステップＳ７０１）。第２文字蓄積部１０５は“ｋａ”を蓄積する（ステップＳ７０２）。入力可能文字抽出部１０３は、図１４に示すように、“ｋａ”を検索キーとして入力可能文字記録部１０２（図３）について検索処理を行う（ステップＳ７０３）。ここで、“ｋａ”は図３中の文字列と完全に一致するので、第２文字蓄積部に文字列が蓄積されていないときと同様に、（＊）を入力文字セットとして算出する。文字列変換部１００２は、文字列出力部１０６からの出力である“ｋａ”を検索キーとして変換文字列記録部１００１（図１１）について検索処理を行い、“か”を変換文字列として出力する（ステップＳ１２０３）。また、文字列変換部１００２は、図１４に示すように、検索文字列である“ｋａ”もそのまま候補文字列出力部１００５に渡してもよい。次に、候補文字列出力部１００５は、第１文字蓄積部１００４に蓄積された文字列と文字列変換部１００２からの出力をあわせて、“ｋｄ”、“か”を候補文字列として出力する（ステップＳ１２０４）。最後に蓄積文字列制御部１００６が、図１４に示すように、候補文字列である“ｋｄ”と“か”からユーザが１つを選択したときに、第１文字蓄積部１００４および第２文字蓄積部１０５の文字列バッファの中身を消去して、第１文字蓄積部１００４と第２文字蓄積部１０５の内容を空にする（ステップＳ１２０５）。
【００４４】
３文字目以降は、文字が入力されるごとに、同様の処理を繰り返せばよい。なお、ここに記載した例では、文字列変換部１００２は図１１に基づきローマ字仮名変換を行った結果と変換前の文字列（上の例では、“ｋａ”）のみ変換文字として出力しているが、以下のような文字列を変換文字列に加えてもよい。  
仮名漢字変換した文字列（例えば、“か”に対する“可”、“課”など）  
前方一致した予測文字列（例えば、“か”に対する“かなり”、“看板”など）
以上に示した第２の実施形態によれば、第１の実施形態の文字入力装置が、ローマ字変換を行って必ず文字を入力するという前提に立っているのに対して、第２の実施形態の文字入力装置では、ローマ字変換を行わずに直接文字を入力することも考慮に入れている。上の例で、ユーザがローマ字変換を使わず「ｋｄ」と筆記するつもりだったとしても、「ｋｄ」が候補文字列に残っているため、文字を入力しなおす必要がない。第２の実施形態の文字入力装置では、直接アルファベット文字列を入力する場合も、ローマ字変換などの文字列変換を使って別の文字列を入力したい場合も、どちらの場合でもモードを切り替えずに入力することができる。
【００４５】
（第３の実施形態）  
第３の実施形態の文字入力装置について図１５、図１６を参照して説明する。  
本実施形態の文字入力装置は、第２の実施形態の文字入力装置とほとんど同様であるが、第１文字判定部１５０１のみが異なる。  
第１文字判定部１５０１は、第２文字判定部１０４と同様に入力可能文字セットを入力可能文字抽出部１０３から受け取り、この入力可能文字セットに応じて文字セット１を決定して、文字セット１の中から、入力取得部１０１の入力情報に最も合致した文字を選択し、その文字を第１文字蓄積部１００４へ渡す。
【００４６】
第２の実施形態では、第１文字判定部１００３が固定の文字セット１（通常は全文字）で文字判定を行っているのに対して、第３の実施形態では、第１文字判定部１５０１が入力可能文字抽出部１０３で求められる入力可能文字セットを元に文字判定対象の文字セット１を決定する。通常、文字セット１としては、全文字から入力可能文字セットを除いた文字セットを用いる。
【００４７】
第３の実施形態の文字入力装置の動作の一例は図１６に示すようになり、第２の実施形態の文字入力装置とは図１２のステップＳ１２０１が図１６のステップＳ１６０１に変更になるだけである。変更された内容は、第１文字判定部１５０１の文字セット１が、入力可能文字セットに応じて決定されていることだけである。
【００４８】
以上の第３の実施形態によれば、第１文字判定部の文字セット１の内容と第２文字判定部の文字セット２の内容で重複する文字を少なくすることができ、候補文字列出力部が重複した文字を１つにまとめる処理量が減少させることができる。また、全文字により文字判定をするよりも効率的に文字判定をすることができる。
【００４９】
以上に示した実施形態によれば、ローマ字変換、あるいはピンイン変換等で変換可能なアルファベットの文字組み合わせ表をあらかじめ用意しておき、それまでに入力された文字列と文字組み合わせ表を照合することで、次に入力可能な文字セットを算出し、次に入力される文字について文字セットを限定して文字判定を行う。このように、文字組み合わせ表とそれまでに入力された文字列から、次に入力される可能性がある文字セットに限定して、次の入力文字の文字判定を行うことにより、誤認識、誤入力の可能性を削減できる。
【図面の簡単な説明】
【００５０】
【図１】第１の実施形態の文字入力装置のブロック図。
【図２】図１の入力取得部が仮想キーボードである一例を示す図。
【図３】図１の入力可能文字記録部が記録している表の一例を示す図。
【図４】図１の入力可能文字抽出部が抽出する、蓄積文字列に応じた入力可能文字セットの一例を示す図。
【図５】図２の仮想キーボードのキー位置を示すデータベースを示す図。
【図６】図２の仮想キーボードのキー同士の位置関係を示すグラフを示す図。
【図７】第１の実施形態の文字入力装置の動作の一例を示すフローチャート。
【図８】図７の具体的な一例を示す図。
【図９】図７の具体的な一例を示す図。
【図１０】第２の実施形態の文字入力装置のブロック図。
【図１１】図１０の変換文字列記録部が記憶している内容を示す図。
【図１２】第２の実施形態の文字入力装置の動作の一例を示すフローチャート。
【図１３】図１２の具体的な一例を示す図。
【図１４】図１２の具体的な一例を示す図。
【図１５】第３の実施形態の文字入力装置のブロック図。
【図１６】第３の実施形態の文字入力装置の動作の一例を示すフローチャート。
【符号の説明】
【００５１】
１０１・・・入力取得部、１０２・・・入力可能文字記録部、１０３・・・入力可能文字抽出部、１０４・・・文字判定部、第２文字判定部、１０５・・・文字蓄積部、１０６・・・文字列出力部、１００１・・・変換文字列記録部、１００２・・・文字列変換部、１００３、１５０１・・・第１文字判定部、１００４・・・第１文字蓄積部、１００５・・・候補文字列出力部、１００６・・・蓄積文字列制御部。
【図１】
2010026718.tif 000003
【図２】
2010026718.tif 000004
【図３】
2010026718.tif 000005
【図４】
2010026718.tif 000006
【図５】
2010026718.tif 000007
【図６】
2010026718.tif 000008
【図７】
2010026718.tif 000009
【図８】
2010026718.tif 000010
【図９】
2010026718.tif 000011
【図１０】
2010026718.tif 000012
【図１１】
2010026718.tif 000013
【図１２】
2010026718.tif 000014
【図１３】
2010026718.tif 000015
【図１４】
2010026718.tif 000016
【図１５】
2010026718.tif 000017
【図１６】
2010026718.tif 000018