(57)【要約】【課題】オペレータの利便性を向上させる。【解決手段】取得部１１は、画像１から認識された文字列２と、文字列２に含まれる各文字についての認識の正確さを示す確度と、入力操作に応じて入力された文字列３とを取得する。判定部１２は、文字列２に含まれる各文字と文字列３に含まれる各文字とを先頭から一対一で比較して、比較した文字同士が異なり、かつ対応する確度が第１の閾値以上である第１の文字“２”を文字列２から抽出する。さらに、判定部１２は、第１の文字“２”に隣接し、かつ対応する確度が第２の閾値未満である第２の文字“３”を文字列２から抽出する。そして、判定部１２は、第１の文字“２”および第２の文字“３”に対応する文字列３の文字ペア“３２”を誤入力と判定する。【選択図】図１
2014194694.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
画像から認識された第１の文字列と、前記第１の文字列に含まれる各文字についての認識の正確さを示す確度と、入力操作に応じて入力された第２の文字列とを取得し、
前記第１の文字列に含まれる各文字と前記第２の文字列に含まれる各文字とを先頭から一対一で比較して、比較した文字同士が異なり、かつ対応する前記確度が第１の閾値以上である第１の文字を前記第１の文字列から抽出し、
前記第１の文字に隣接し、かつ対応する前記確度が第２の閾値未満である第２の文字を前記第１の文字列から抽出し、
前記第１の文字および前記第２の文字に対応する前記第２の文字列の文字ペアを誤入力と判定する、
処理を実行させることを特徴とする文字入力支援プログラム。
【請求項２】
前記コンピュータに、
前記第２の文字列についての修正入力を受け付けるための入力画面を表示させ、前記入力画面において、前記第２の文字列のうち、修正可能な領域を前記文字ペアの領域に制限する、
処理をさらに実行させることを特徴とする請求項１記載の文字入力支援プログラム。
【請求項３】
前記入力画面を表示させる処理では、
前記文字ペアに含まれる文字の順序を入れ替え、入れ替え後の前記文字ペアを修正候補として前記入力画面に表示させ、
修正確定の入力操作に応じて、前記文字ペアに含まれる文字の順序が入れ替えられた前記第２の文字列の入力を確定する、
ことを特徴とする請求項２記載の文字入力支援プログラム。
【請求項４】
前記第２の文字の抽出において、前記第１の文字に隣接し、かつ対応する前記確度が第２の閾値未満である文字が前記第１の文字の両側から抽出された場合、前記入力画面を表示させる処理では、
前記第２の文字列に含まれる文字のうち、抽出された一方の文字および前記第１の文字に対応する第１の文字ペアと、抽出された他方の文字および前記第１の文字に対応する第２の文字ペアとを、それぞれ文字の順序の入れ替えを行った状態で修正候補として前記入力画面に表示させ、
表示された前記各修正候補のいずれかを選択する入力操作に応じて、前記第１の文字ペアまたは第２の文字ペアに含まれる文字の順序が入れ替えられた前記第２の文字列の入力を確定する、
ことを特徴とする請求項２記載の文字入力支援プログラム。
【請求項５】
前記第１の文字の抽出において、比較した文字同士が異なり、かつ対応する前記確度が第１の閾値以上である文字が前記第１の文字列から複数抽出された場合、前記入力画面を表示させる処理では、前記入力画面において、前記第２の文字列全体を修正可能な領域とすることを特徴とする請求項２乃至４のいずれか１項に記載の文字入力支援プログラム。
【請求項６】
前記コンピュータに、
前記第２の文字列に含まれる文字の順序を入れ替え、入れ替え後の前記文字ペアを修正候補として画面に表示させる、
処理をさらに実行させることを特徴とする請求項１記載の文字入力支援プログラム。
【請求項７】
画像から認識された第１の文字列と、前記第１の文字列に含まれる各文字についての認識の正確さを示す確度と、入力操作に応じて入力された第２の文字列とを取得する取得部と、
前記第１の文字列に含まれる各文字と前記第２の文字列に含まれる各文字とを先頭から一対一で比較して、比較した文字同士が異なり、かつ対応する前記確度が第１の閾値以上である第１の文字を前記第１の文字列から抽出し、前記第１の文字に隣接し、かつ対応する前記確度が第２の閾値未満である第２の文字を前記第１の文字列から抽出し、前記第１の文字および前記第２の文字に対応する前記第２の文字列の文字ペアを誤入力と判定する判定部と、
を有することを特徴とする文字入力支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字入力支援プログラムおよび文字入力支援装置に関する。
【背景技術】
【０００２】
近年、画像に含まれる文字を自動認識する技術が発展している。このような文字認識処理は、例えば、伝票など文字を含む書面をスキャナなどで光学的に読み取り、読み取られた書面の画像を記憶されたパターンと照合することで文字を認識する。
【０００３】
また、文字認識に関連する技術としては、例えば、自動文字認識による第一修正文字データに含まれる修正有無と、自動文字認識による第二修正文字データに含まれる修正有無との組み合わせにより、文字毎の信頼性レベルを判定する技術が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−９９２１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、書面から認識された文字列と、オペレータによって書面を見ながら入力された文字列とを比較し、一致しない文字がある場合に誤入力の発生を警告することで、オペレータの入力操作を支援することが可能となる。しかしながら、このような入力支援では、単に文字同士が一致しない位置をオペレータに通知できるのみであった。
【０００６】
１つの側面では、本発明は、オペレータの利便性が向上した文字入力支援プログラムおよび文字入力支援装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
１つの案では、文字入力支援プログラムが提供される。コンピュータは、この文字入力支援プログラムに従って次のような処理を実行する。コンピュータは、画像から認識された第１の文字列と、第１の文字列に含まれる各文字についての認識の正確さを示す確度と、入力操作に応じて入力された第２の文字列とを取得する。また、第１の文字列に含まれる各文字と第２の文字列に含まれる各文字とを先頭から一対一で比較して、比較した文字同士が異なり、かつ対応する確度が第１の閾値以上である第１の文字を第１の文字列から抽出する。さらに、第１の文字に隣接し、かつ対応する確度が第２の閾値未満である第２の文字を第１の文字列から抽出する。そして、第１の文字および第２の文字に対応する第２の文字列の文字ペアを誤入力と判定する。
【０００８】
また、１つの案では、上記文字入力支援プログラムによって実現される処理と同様の処理を実行する文字入力支援装置が提供される。
【発明の効果】
【０００９】
１態様によれば、オペレータの利便性が向上する。
【図面の簡単な説明】
【００１０】
【図１】第１の実施の形態の文字入力支援装置の構成例および処理例を示す図である。
【図２】第２の実施の形態の伝票入力システムの構成例を示す図である。
【図３】伝票入力装置のハードウェア構成例を示す図である。
【図４】入力画面の例を示す図である。
【図５】修正候補表示の例を示す図である。
【図６】伝票入力システムの機能例を示すブロック図である。
【図７】認識率テーブルの例を示す図である。
【図８】認証文字データおよび入力文字データの例を示す図である。
【図９】認識率算出テーブルの例を示す図である。
【図１０】１つの修正候補が判定される例を示す図である。
【図１１】２つの修正候補が判定される例を示す図である。
【図１２】修正候補が判定されない例を示す図である。
【図１３】文字入力を支援する処理の例を示すフローチャートである。
【図１４】文字入力を支援する処理の例を示すフローチャート（続き）である。
【図１５】修正候補を判定する処理の例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本実施の形態を図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態の文字入力支援装置の構成例および処理例を示す図である。
【００１２】
文字入力支援装置１０は、ユーザによる文字の入力操作を支援する装置である。文字入力支援装置１０は、取得部１１および判定部１２を有する。
取得部１１は、画像１から認識された文字列２（第１の文字列）と、この文字列２に含まれる各文字についての認識の正確さを示す確度と、入力操作に応じて入力された文字列３（第２の文字列）とを取得する。画像１は、例えば、スキャナ等の機器によって書類を読み取ることで得られたものである。また、文字列３は、例えば、この書面を見ながらオペレータの操作によって入力されたものである。
【００１３】
判定部１２は、文字列２に含まれる各文字と文字列３に含まれる各文字とを先頭から一対一で比較する。そして、判定部１２は、比較した文字同士が異なり、かつ対応する確度が第１の閾値以上である第１の文字を、文字列２から抽出する。
【００１４】
さらに、判定部１２は、抽出された第１の文字に隣接し、かつ対応する確度が第２の閾値未満である第２の文字を、文字列２から抽出する。なお、第１の閾値と第２の閾値は、同じ値であってもよい。
【００１５】
そして、判定部１２は、第１の文字および第２の文字にそれぞれ対応する文字列３の文字ペアを、誤入力と判定する。
ここで、例として、画像１には文字列“１２３”が含まれており、文字認識により文字列２として“１２３”が認識され、入力操作に応じて文字列３として“１３２”が入力されたとする。また、第１の閾値および第２の閾値を“８０”とする。
【００１６】
この場合、まず、取得部１１により、文字列２として“１２３”が取得され、文字列３として“１３２”が取得される。また、確度として文字列２の先頭から“８５”，“９０”，“５０”が取得される。
【００１７】
判定部１２は、文字列２および文字列３の各文字を比較する。すると、文字列３と一致しない文字として“２”および“３”が文字列２から抽出される。抽出された文字“２”に対応する確度は“９０”であり、抽出された文字“３”に対応する確度は“５０”である。そのため、判定部１２は、文字列２から、対応する確度が閾値以上である“２”を第１の文字として抽出する。
【００１８】
次に、判定部１２は、第１の文字“２”に隣接し、かつ対応する確度が閾値未満である第２の文字を、文字列２から抽出する。第１の文字“２”に隣接する文字は、“１”および“３”である。また、文字列２において、文字“１”に対応する確度は“８５”であり、文字“３”に対応する確度は“５０”である。そのため、文字列２から、対応する確度が閾値未満である“３”が第２の文字として抽出される。
【００１９】
判定部１２は、文字列２から抽出された第１の文字“２”および第２の文字“３”にそれぞれ対応する文字列３の文字ペアを特定する。文字列３の文字のうち、第１の文字“２”と同じ位置の文字は“３”であり、第２の文字“３”と同じ位置の文字は“２”である。このため、文字ペアとして“３２”が特定される。判定部１２は、文字列３における文字ペア“３２”を、誤入力が発生していると判定する。具体的には、文字ペア“３２”は、本来“２３”であったものが順序が入れ替わって入力されたものと判定される。
【００２０】
ここで、店舗の窓口のオペレータのようにキー入力操作に慣れているオペレータの誤入力としては、入力順が入れ替わってしまう誤入力の発生確率が高い。入力順が間違っている場合、入力された文字列のうち隣接する２つの文字のペアについて、入力が間違っていることになる。
【００２１】
上記処理により抽出された第２の文字“３”の位置については、認識の確度が所定の閾値未満であることから、誤入力されたのか、あるいは文字認識において誤認識されたのか、あるいは正しく入力されたのかを判定することが難しい。しかしながら、隣接する第１の文字“２”の位置については、認識の確度が所定の閾値以上で、かつ文字列２，３の間で文字が不一致であることから、誤入力された可能性が高い。前述のように、入力順が入れ替わるという誤入力の発生確率が高いことを鑑みると、文字列３においては、誤入力の確率が高い第１の文字“２”に対応する文字“３”と、第１の文字“２”に隣接し、かつ正確な判定が不可能な状態にある第２の文字“３”に対応する文字“２”とが、入れ替わって入力された可能性が高いと考えることができる。
【００２２】
これに対して、文字列２において、第１の文字“２”に隣接する文字“１”については、認識の確度が所定の閾値以上であり、かつ文字の比較結果が一致している。このことから、文字列２の文字“１”に対応する文字列３の文字“１”については、正しく入力された可能性が高いと考えられる。
【００２３】
以上の理由から、判定部１２は、文字列３の文字のうち、第１の文字“２”および第２の文字“３”に対応する文字ペア“３２”を、誤入力と判定する。これにより、文字入力支援装置１０は、単に文字列２，３の各文字の一致判定に基づくのではなく、統計的な誤入力の発生状況を考慮して、誤入力を判定することが可能になる。従って、オペレータの利便性を高めることができる。
【００２４】
例えば、オペレータは、上記の第２の文字が文字列３における対応する文字と一致していたとしても、第１の文字に対応する文字列３の文字だけでなく、第２の文字に対応する文字列３の文字についても誤入力であると判断できる。従って、オペレータは、文字列２，３の各文字の一致判定だけでは認識できない誤入力を、即座に認識できるようになる。
【００２５】
また、前述のように、上記の第２の文字“３”については、認識の確度が所定の閾値未満であることから、誤入力等の正確な判定が困難である。しかしながら、このような文字についても、上記処理により、隣接する文字についての一致判定結果および認識の確度を用いた新たな判定基準によって、誤入力が発生しているかを判定することが可能となる。
【００２６】
そして、判定部１２は、文字列３において、第２の文字“２”に対応する“３”および、第３の文字“３”に対応する“２”のペアが誤入力の候補と判定する。
ここで、書面から認識された文字列と、オペレータによって書面を見ながら入力された文字列とを比較し、一致しない文字がある場合に誤入力の発生を警告する入力支援では、単に文字同士が一致しない位置をオペレータに通知できるのみであった。
【００２７】
上記の処理によれば、第２の文字および第３の文字に対応する第２の文字列のペアを誤入力の候補と判定できる。よって、入力操作するオペレータの利便性が向上する。
［第２の実施の形態］
次に、第１の実施の形態の文字入力支援装置を、顧客が記入した伝票を見ながらオペレータが文字を入力する伝票入力システムに適用した例について説明する。伝票入力システムは、第１の実施の形態の文字入力支援装置と同様に、誤入力の候補を判定し、誤入力の候補と判定されたペアについて、修正候補をオペレータに提示する。
【００２８】
図２は、第２の実施の形態の伝票入力システムの構成例を示す図である。伝票入力システム５は、複数のスキャナ２０、複数の伝票入力装置１００および認識率ＤＢサーバ２００を有する。スキャナ２０は、各伝票入力装置１００に１台ずつ接続されている。また、認識率ＤＢサーバ２００は、ネットワーク３０を介して各伝票入力装置１００と接続されている。
【００２９】
スキャナ２０は、顧客が手書きで記入した伝票を光学的に読み取り画像データを生成する。スキャナ２０は、ＯＣＲ（Optical Character Reader）機能を有する。すなわち、スキャナ２０は、読み取った画像をあらかじめ記憶されたパターンと照合することで、画像に含まれる文字を認識する。以下、このような文字認識を「ＯＣＲ認識」と記載し、ＯＣＲ認識された文字による文字列を認識文字列と記載する。スキャナ２０は、生成した画像データを、ＯＣＲ認識された文字のデータを含む文書データに変換する。文書データには、例えば、入力項目毎に、認識文字列の文字コードが含まれる。また、スキャナ２０は、変換された文書データを伝票入力装置１００に送信する。
【００３０】
認識率ＤＢサーバ２００は、ＯＣＲ認識が可能な文字の種別毎の認識率に関する情報を格納するＤＢサーバである。認識率とは、ＯＣＲ認識による文字認識の精度を示す数値である。本実施の形態において、認識率は、ＯＣＲ認識された文字それぞれについての認識の確かさを示す確度を判定するためのパラメータとして用いられる。
【００３１】
認識率ＤＢサーバ２００は、文字の種別毎の認識率を算出するための情報（例えば、ＯＣＲ認識した回数、ＯＣＲ認識の正解数など）を、各伝票入力装置１００から定期的に（例えば、営業終了時）集計する。認識率ＤＢサーバ２００は、認識率を算出するための情報の集計結果に基づいて、文字の種別毎に認識率を算出する。認識率ＤＢサーバ２００は、算出された認識率を示す情報を伝票入力装置１００へ定期的（例えば、毎営業開始時）に送信する。
【００３２】
なお、認識率ＤＢサーバ２００は、バックアップのためのＤＢサーバを含め、複数備えられてもよい。この場合、各文字の種別の認識率に関する情報が一致するように制御する。
【００３３】
伝票入力装置１００は、オペレータが伝票に記入された文字を入力するためのコンピュータである。また、伝票入力装置１００は、オペレータによる文字の入力作業を支援する機能を備える。
【００３４】
伝票入力装置１００は、スキャナ２０から受信した文書データに基づいて、オペレータが伝票に記入された文字を入力するための入力画面を生成し、生成した入力画面をディスプレイに表示する。伝票入力装置１００は、オペレータにより入力画面に入力された文字列を入力文字データとして取得する。
【００３５】
また、伝票入力装置１００は、ＯＣＲ認識が可能な文字の種別毎に、認識率を示す情報を認識率ＤＢサーバ２００から受信する。また、伝票入力装置１００は、ＯＣＲ認識による認識文字列の各文字に、受信した認識率を対応付けることで認識文字データを生成する。
【００３６】
さらに、伝票入力装置１００は、取得された入力文字データと、生成された認識文字データとを入力項目毎に比較して、オペレータが誤入力した可能性のある入力項目を特定する。伝票入力装置１００は、特定された入力項目について、例えば、色を変更して表示させる。この場合、伝票入力装置１００は、特定された入力項目に入力されている文字列を、フォントの種別や大きさを変更することにより強調してもよい。
【００３７】
伝票入力装置１００は、誤入力された可能性のある入力項目について、取得された入力文字データと、生成された認識文字データとに基づいて、修正候補を判定する。伝票入力装置１００は、判定された修正候補をディスプレイに提示する。その後、オペレータが修正候補を選択することで、誤入力された可能性のある入力項目に対応する入力文字データが修正される。
【００３８】
伝票入力装置１００は、認識率を算出するための情報を文字の種別毎に集計する。また、伝票入力装置１００は、集計した情報を定期的（例えば、毎営業終了時）に認識率ＤＢサーバ２００に送信する。
【００３９】
なお、ＯＣＲ認識機能は、スキャナ２０ではなく、伝票入力装置１００が有してもよい。この場合、スキャナ２０は、顧客が記入した伝票の画像データを伝票入力装置１００に送信する。そして、伝票入力装置１００は、受信した画像データに基づいて、認識文字データを生成する。
【００４０】
図３は、伝票入力装置のハードウェア構成例を示す図である。伝票入力装置１００は、プロセッサ１０１、ＲＡＭ（Random Access Memory）１０２、ＨＤＤ（Hard Disk Drive）１０３、画像信号処理部１０４、入力信号処理部１０５、ディスクドライブ１０６、通信インタフェース１０７および機器接続部１０８を有する。上記ユニットは、伝票入力装置１００内でバス１０９に接続されている。認識率ＤＢサーバ２００も、伝票入力装置１００と同様のハードウェアを用いて実現できる。
【００４１】
プロセッサ１０１は、プログラムの命令を実行する演算器を含むプロセッサである。プロセッサ１０１は、ＨＤＤ１０３に記憶されているプログラムやデータの少なくとも一部をＲＡＭ１０２にロードしてプログラムを実行する。なお、プロセッサ１０１は複数のプロセッサコアを備えてもよい。また、伝票入力装置１００は、複数のプロセッサを備えてもよい。また、伝票入力装置１００は、複数のプロセッサまたは複数のプロセッサコアを用いて並列処理を行ってもよい。また、２以上のプロセッサの集合、ＦＰＧＡ（Field-Programmable Gate Array）やＡＳＩＣ（Application Specific Integrated Circuit）などの専用回路、２以上の専用回路の集合、プロセッサと専用回路の組み合わせなどを「プロセッサ」と呼んでもよい。
【００４２】
ＲＡＭ１０２は、プロセッサ１０１が実行するプログラムやプログラムから参照されるデータを一時的に記憶する揮発性メモリである。なお、伝票入力装置１００は、ＲＡＭ以外の種類のメモリを備えてもよく、複数個の揮発性メモリを備えてもよい。
【００４３】
ＨＤＤ１０３は、ＯＳ（Operating System）やファームウェアやアプリケーションソフトウェア等のソフトウェアのプログラムおよびデータを記憶する不揮発性の記憶装置である。なお、伝票入力装置１００は、フラッシュメモリ等の他の種類の記憶装置を備えてもよく、複数個の不揮発性の記憶装置を備えてもよい。
【００４４】
画像信号処理部１０４は、プロセッサ１０１からの命令に従って、伝票入力装置１００に接続されたディスプレイ２１に画像を出力する。ディスプレイ２１としては、ＣＲＴ（Cathode Ray Tube）ディスプレイや液晶ディスプレイ等を用いることができる。
【００４５】
入力信号処理部１０５は、伝票入力装置１００に接続された入力デバイス２２から入力信号を取得し、プロセッサ１０１に通知する。入力デバイス２２としては、マウスやタッチパネル等のポインティングデバイス、キーボードやテンキー等を用いることができる。
【００４６】
ディスクドライブ１０６は、記録媒体２３に記録されたプログラムやデータを読み取る駆動装置である。記録媒体２３として、例えば、フレキシブルディスク（ＦＤ：Flexible Disk）やＨＤＤ等の磁気ディスク、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）等の光ディスク、光磁気ディスク（ＭＯ：Magneto-Optical disk）を使用できる。ディスクドライブ１０６は、プロセッサ１０１からの命令に従って、記録媒体２３から読み取ったプログラムやデータをＲＡＭ１０２またはＨＤＤ１０３に格納する。
【００４７】
通信インタフェース１０７は、ネットワーク３０等のネットワークを介して他の情報処理装置（例えば、認識率ＤＢサーバ２００等）と通信を行う。
機器接続部１０８は、伝票入力装置１００に周辺機器（例えば、スキャナ２０）を接続するための通信インタフェースである。
【００４８】
なお、伝票入力装置１００はディスクドライブ１０６を備えていなくてもよく、専ら他の情報処理装置からアクセスされる場合には、画像信号処理部１０４や入力信号処理部１０５を備えていなくてもよい。また、ディスプレイ２１や入力デバイス２２は、伝票入力装置１００の筐体と一体に形成されていてもよい。
【００４９】
なお、認識率ＤＢサーバ２００も、伝票入力装置１００と同様のハードウェアを用いて実現できる。
図４は、入力画面の例を示す図である。入力画面２１ａは、伝票入力装置１００の処理によってディスプレイ２１に表示される入力画面である。入力画面２１ａは、複数の入力項目およびキー割当表示２１ｂを有する。入力項目は、オペレータが入力すべき項目である。例えば、入力画面２１ａには、銀行名、支店名、科目（口座番号）、金額、受取人および依頼人の入力項目がある。各入力項目は入力欄および入力イメージを有する。
【００５０】
入力画面２１ａには、入力項目毎に入力欄が設けられている。入力欄は、オペレータによって入力された文字が表示される領域である。例えば、オペレータが入力項目を選択すると、選択された入力項目の入力欄にカーソルが表示される。この状態でオペレータが文字を入力すると、入力された文字が入力欄に表示される。図４の入力画面２１ａにおいては、金額の入力欄にカーソルが表示されており、この入力欄にユーザが文字を入力可能になっている。
【００５１】
各入力欄の上側には、スキャナ２０によってＯＣＲ認識された文字列が表示される。この文字列の表示は、例えば、ＯＣＲ認識された文字列と入力した文字列とをオペレータが対比できるようにするためのものである。
【００５２】
キー割当表示２１ｂは、テンキーに割当てられる入力文字が表示される。テンキーに割当てられる文字は、例えば、カーソルが表示されている入力欄により変わる。
図５は、修正候補表示の例を示す図である。修正画面２１ｃは、誤入力された可能性のある入力項目について、修正候補を表示する画面である。修正画面２１ｃは、例えば、図４の入力画面２１ａの上に重ねて表示される。後述するように、修正画面２１ｃには、順番が入れ替わって入力された可能性のある文字のペアが表示される。修正画面２１ｃは、誤入力項目２１ｃ−１および操作項目２１ｃ−２を有する。
【００５３】
誤入力項目２１ｃ−１には、誤入力された可能性のある入力項目が表示される。誤入力項目２１ｃ−１は、入力欄を有する。入力欄には、誤入力された可能性のある文字列が表示される。入力欄は、操作項目２１ｃ−２から再入力が選択されるまでは、入力不可能な状態である。また、入力欄の上側には、スキャナ２０によってＯＣＲ認識された文字列が表示される。
【００５４】
操作項目２１ｃ−２は、「候補＃１」、「候補＃２」、「再入力」および「次へ」の項目を有する。「候補＃１」および「候補＃２」の項目には、誤入力項目２１ｃ−１の入力欄における、修正候補が表示される。修正候補は、１つの入力項目について、１つまたは２つである。修正候補が１つの場合は「候補＃１」のみが表示され、修正候補が２つの場合は「候補＃１」および「候補＃２」が表示される。
【００５５】
図５の例では、「候補＃１」には修正候補として文字列“１０”が表示されている。これは、入力された文字列の上から６桁目および７桁目の文字列“０１”を、前後を入れ替えて文字列“１０”に修正するための候補を示す。また、「候補＃２」には修正候補として文字列“５１”が表示されている。これは、入力された文字列の上から７桁目および８桁目の文字列“１５”を、前後を入れ替えて文字列“５１”に修正するための候補を示す。
【００５６】
「再入力」の項目は、誤入力項目２１ｃ−１の文字列を先頭の文字から再入力することを示す。「再入力」が選択されることで、誤入力項目２１ｃ−１の入力欄が入力可能な状態になる。
【００５７】
「次へ」の項目は、誤入力項目２１ｃ−１における文字の修正を確定させ、次の誤入力項目を表示させることを示す。
各選択項目の左端に、対応するキーが表示される。例えば、修正画面２１ｃでは、オペレータがキー“１”を押下すると、「候補＃１」が修正候補として選択され、オペレータがキー“２”を押下すると、「候補＃２」が修正候補として選択される。同様に、オペレータがキー“０”を押下すると、誤入力項目２１ｃ−１の入力欄において文字列の先頭から再入力することが選択される。さらに、オペレータがキー“＋”を押下すると、次の誤入力項目が表示される。
【００５８】
「候補＃１」または「候補＃２」のいずれかがオペレータにより選択されると、伝票入力装置１００は、選択された修正候補に対応する誤入力項目２１ｃ−１の入力欄の文字を、選択された修正候補に修正する。例えば、図５において、キー“１”の入力により「候補＃１」が選択されると、誤入力項目２１ｃ−１の入力欄の文字列“１２３５００１５２０”は、上から６桁目と７桁目とが入れ替えられて、“１２３５０１０５２０”に修正される。
【００５９】
修正画面２１ｃへの修正は、誤入力項目２１ｃ−１の入力欄に対応する入力画面２１ａの入力項目の入力欄にも反映される。これにより、オペレータは、誤入力項目２１ｃ−１の入力欄の文字列について、修正候補を選択することで、誤入力項目２１ｃ−１の入力欄の文字列全てを再入力せずに修正できる。
【００６０】
また、修正箇所が修正候補の範囲に制限されるので、文字列全てを再入力する場合と比較して修正入力の誤りが発生しにくくなる。また、文字列全ての再入力が可能な状態から、入力の入れ替わりが発生した箇所のみを選択して修正する場合と比較して、修正操作の回数が減り、修正に要する時間が短縮される。
【００６１】
また、表示された修正候補がいずれも不適切と判断した場合、オペレータは、「再入力」を選択することで、誤入力項目２１ｃ−１の入力欄において文字列の先頭から再入力できる。また、オペレータは、誤入力項目２１ｃ−１の入力欄の文字列が誤入力でないと判断した場合、「次へ」を選択することで、誤入力項目２１ｃ−１の入力欄の文字列を修正しないようにする。入力欄の文字列が誤入力でない場合には、例えば、ＯＣＲ認識に誤りがあった場合が挙げられる。
【００６２】
なお、図５では、入力画面２１ａとは別ウィンドウとして修正画面２１ｃが表示される例を示した。ただし、これに限らず、例えば、入力画面２１ａにおいて、カーソルが表示されている入力欄の下に、修正画面２１ｃにおける操作項目２１ｃ−２が表示されてもよい。
【００６３】
また、伝票入力装置１００は、操作項目２１ｃ−２の各項目をキー入力により選択できるようにした。これにより、例えば、オペレータは、入力項目の入力および修正を、伝票の文字を入力する際と同様にキー入力により行えるため、修正の作業効率が上がる。
【００６４】
図６は、伝票入力システムの機能例を示すブロック図である。認識率ＤＢサーバ２００は、認識率情報記憶部２１０および認識率判定部２２０を有する。
認識率情報記憶部２１０は、ＯＣＲ認識可能な文字の種別毎に、認識率に関連する情報を対応付けた認識率テーブルを記憶する。認識率に関連する情報には、文字の種別毎の認識率や、その認識率を算出するための情報が含まれる。
【００６５】
認識率判定部２２０は、ＯＣＲ認識可能な文字の種別毎に、認識率に関連する情報を各伝票入力装置１００から受信し、認識率判定部２２０は、受信した認識率に関連する情報を、ＯＣＲ認識可能な文字の種別毎に集計する。認識率判定部２２０は、集計した認識率に関連する情報に基づいて、ＯＣＲ認識可能な文字の種別毎に認識率を算出する。そして、認識率判定部２２０は、集計された認識率に関連する情報および算出された認識率によって認識率テーブルを更新する。認識率判定部２２０は、更新された認識率テーブルの内容を各伝票入力装置１００に配信する。
【００６６】
伝票入力装置１００は、認識文字データ記憶部１１０、入力文字データ記憶部１２０、認識率情報入出力部１３０、認識文字データ取得部１４０、入力文字データ取得部１５０および修正候補判定部１６０を有する。
【００６７】
認識文字データ記憶部１１０は、ＯＣＲ認識が可能な文字の種別毎に認識率を対応付けた認識率テーブルを記憶する。また、認識文字データ記憶部１１０は、認識文字列の文字毎に認識率を対応付けた認識文字データを記憶する。
【００６８】
入力文字データ記憶部１２０は、入力画面２１ａの各入力欄からオペレータにより入力された入力文字データを記憶する。
認識率情報入出力部１３０は、ＯＣＲ認識が可能な文字の種別毎の認識率を示す情報を、定期的（例えば、毎営業開始時）に認識率ＤＢサーバ２００から受信し、認識率テーブルを更新する。また、認識率情報入出力部１３０は、ＯＣＲ認識が可能な文字毎に、認識率を算出するための情報を集計し、集計した情報を定期的（例えば、毎営業終了時）に認識率ＤＢサーバ２００へ送信する。
【００６９】
認識文字データ取得部１４０は、スキャナ２０から文書データを受信する。文書データには、ＯＣＲ認識された文字列（認識文字列）の文字コードが含まれる。文書データに含まれる文字列の文字コードには、入力画面２１ａにおける、いずれかの入力項目を示す情報が対応付けられている。認識文字データ取得部１４０は、受信した文書データに基づいて入力画面２１ａを生成する。認識文字データ取得部１４０は、生成した入力画面２１ａをディスプレイ２１に表示する。
【００７０】
また、認識文字データ取得部１４０は、更新された認識率テーブルに格納された認識率を、認識文字列に含まれる各文字に対応付けることで、認識文字データを生成する。認識文字データ取得部１４０は、生成した認識文字データを認識文字データ記憶部１１０に記憶する。
【００７１】
入力文字データ取得部１５０は、入力画面２１ａにおける各入力欄にオペレータにより入力された文字列の文字コードを、入力文字データとして取得する。入力文字データ取得部１５０は、取得した入力文字データを入力文字データ記憶部１２０に記憶する。また、入力文字データ取得部１５０は、オペレータが選択した修正候補に基づいて、入力画面２１ａの入力欄の表示を更新する。そして、入力文字データ取得部１５０は、更新された入力欄に対応する入力文字データを更新する。
【００７２】
修正候補判定部１６０は、入力画面２１ａの入力項目毎に、対応する入力文字データおよび認識文字データを比較して、オペレータが誤入力した可能性がある入力項目を特定する。なお、修正候補判定部１６０は、入力画面２１ａについて、誤入力された可能性があると特定された入力項目を強調して表示してもよい。強調して表示させる方法は、例えば、入力欄の色を変更するなどがある。
【００７３】
修正候補判定部１６０は、誤入力された可能性のある入力項目について、対応する入力文字データおよび認識文字データに基づいて、修正候補の有無を判定する。
修正候補判定部１６０は、誤入力された可能性があると特定された入力項目を修正画面２１ｃに表示する。また、修正候補判定部１６０は、修正候補がある場合、修正候補を修正画面２１ｃに表示する。さらに、修正候補判定部１６０は、誤入力された可能性のある入力項目について、修正画面２１ｃを通じてオペレータの修正を受け付ける。
【００７４】
次に、図７〜９を用いて、伝票入力システム５が用いるテーブルについて説明する。
図７は、認識率テーブルの例を示す図である。認識率テーブル１１１は、ＯＣＲ認識が可能な文字毎に認識率を対応付けた情報が格納されたテーブルである。認識率テーブル１１１は、認識文字データ記憶部１１０に記憶される。認識率テーブル１１１は、認識率ＤＢサーバ２００から受信した認識率に基づいて、毎営業開始時に更新される。
【００７５】
認識率テーブル１１１は、文字および認識率の項目を有する。文字の項目には、ＯＣＲ認識が可能な文字の種別を示す情報が設定される。認識率の項目には、文字の種別の認識率を示す情報が設定される。
【００７６】
図８は、認証文字データおよび入力文字データの例を示す図である。認識文字データ１１２は、認識文字列に含まれる文字毎に認識率を対応付けたデータである。認識文字データ１１２は、認識文字データ記憶部１１０に記憶される。
【００７７】
認識文字データ１１２は、入力項目、認識率および文字の項目を有する。入力項目の項目には、入力画面２１ａにおいて、オペレータに入力される入力項目を識別するための情報が設定される。認識率の項目には、ＯＣＲ認識された文字に対応する認識率を示す情報が設定される。認識率は、修正候補判定部１６０が修正候補を判定する際に用いられる。文字の項目には、スキャナ２０によりＯＣＲ認識された文字が設定される。以下、左端に位置する文字から右端に位置する文字までを順に並べたものを文字列と記載する。例えば、認識文字データ１１２の文字列は、“１２３”となる。
【００７８】
入力文字データ１２１は、入力画面２１ａの各入力欄からオペレータにより入力された文字列である。入力文字データ１２１は、入力画面２１ａの入力欄毎に入力文字データ記憶部１２０に記憶される。入力文字データ１２１は、文字の項目を有する。文字の項目には、オペレータにより入力された文字が設定される。以下、右端に位置する文字から左端に位置する文字までを順に並べたものを文字列と記載する。例えば、入力文字データ１２１の文字列は、“１３３”となる。
【００７９】
入力項目の項目が一致する認識文字データ１１２および入力文字データ１２１の文字列が、修正候補判定部１６０により比較される。不一致である文字が１以上存在する場合、入力文字データ１２１に対応する入力項目は、誤入力された可能性があると修正候補判定部１６０に判定される。
【００８０】
例えば、図８において、認識文字データ１１２と入力文字データ１２１は、認識文字データ１１２の左から２つめの文字が“２”であるのに対して、入力文字データ１２１の左から２つめの文字が“３”であるため異なる。そのため、入力文字データ１２１に対応する入力項目“金額”は、誤入力された可能性があると修正候補判定部１６０に判定される。
【００８１】
図９は、認識率算出テーブルの例を示す図である。認識率算出テーブル２１１は、ＯＣＲ認識が可能な文字の種別毎に、認識率に関連する情報を対応付けた情報を格納するテーブルである。認識率算出テーブル２１１は、認識率ＤＢサーバ２００の認識率情報記憶部２１０に記憶されている。認識率算出テーブル２１１は、毎営業終了時に認識率ＤＢサーバ２００により更新される。
【００８２】
認識率算出テーブル２１１は、文字、認識回数、正解数および認識率の項目を有する。
文字の項目には、ＯＣＲ認識が可能な文字の種別が設定される。
認識回数の項目には、対応する種別の文字について各スキャナ２０によりＯＣＲ認識された回数が設定される。
【００８３】
正解数の項目には、認識回数のうち正解だったＯＣＲ認識の回数が設定される。具体的には、認識率ＤＢサーバ２００は、ＯＣＲ認識した回数に対する、ＯＣＲ認識の正解数の割合により認識率を算出する。正解か否かは、例えば、オペレータが入力を確定させたときに、入力項目が一致する認識文字データおよび確定された入力文字データの文字列を比較し、一致した文字が、ＯＣＲ認識が正解であると判定される。
【００８４】
次に、図１０〜１２を用いて、伝票入力装置１００が修正候補を判定する処理について説明する。図１０〜１２に用いられる。認識文字データ１１２ａ〜１１２ｃおよび入力文字データ１２１ａ〜１２１ｃにおいて、入力項目の記載を省略する。
【００８５】
図１０は、１つの修正候補が判定される例を示す図である。
店舗の窓口のオペレータのようにキー入力操作に慣れているオペレータの誤入力として、入力順が入れ替わってしまう間違いが多いことが統計的に明らかになっている。これは、キー入力の速度が速すぎるために生じる誤入力と考えられている。
【００８６】
入力順が間違っている場合、入力された文字列のうち隣接する２つの文字のペアについて、入力が間違っていることになる。そこで、修正候補判定部１６０は、このような文字ペアを入力文字列から探索する。
【００８７】
図１０において、認識文字データ１１２ａの文字列は“１２３５１４６”とし、入力文字データ１２１ａの文字列は“１２３５１６４”とする。すなわち、ＯＣＲ認識により文字列“１２３５１４６”が認識され、オペレータにより文字列“１２３５１６４”が入力されたものとする。また、認識文字データ１１２ａの文字列の各文字に対応する認識率は、上位から“９５”、“９０”、“８５”、“８５”、“９５”、“９０”、“６０”とする。
【００８８】
この場合、まず、修正候補判定部１６０は、認識文字データ１１２ａおよび入力文字データ１２１ａの文字列を比較する。この場合、認識文字データ１１２ａにおいて、下位から２桁目の“４”および最下位の“６”が、入力文字データ１２１ａと不一致である。そのため、修正候補判定部１６０は、入力文字データ１２１ａに対応する入力項目に誤入力された可能性があると判定する。
【００８９】
次に、修正候補判定部１６０は、認識文字データ１１２ａについて、不一致と判定された文字から、対応する認識率が閾値以上である文字を選択する。図１０において、下位から２桁目の“４”に対応する認識率が“９０”であり、最下位の“６”に対応する認識率が“６０”である。このため、閾値が“９０”とすると、修正候補判定部１６０は、対応する認識率が“９０”以上である“４”を選択する。選択された“４”については認識の確かさが一定レベル以上であることから、下位から２桁目については誤入力された可能性が高いと考えられる。
【００９０】
次に、修正候補判定部１６０は、認識文字データ１１２ａについて、選択された文字に隣接する文字に対応する認識率が閾値未満である文字を選択する。図１０において、下位から２桁目の“４”に隣接する文字は、下位から３桁目の“１”および最下位の“６”である。また、“１”に対応する認識率が“９５”であり、“６”に対応する認識率が“６０”である。このため、修正候補判定部１６０は、対応する認識率が“９０”未満である“６”のみを選択する。
【００９１】
選択された“６”の位置については、認識の確かさが一定レベルに達していないことから、オペレータによって誤入力されたのか、あるいはＯＣＲ認識において誤認識されたのか、あるいは正しく入力されたのかを判定することが難しい。しかしながら、隣接する位置、すなわち下位から２桁目については誤入力された可能性が高い。前述のように、入力順が入れ替わるという誤入力の発生確率が高いことを鑑みると、誤入力の確率が高い下位から２桁目と、これに隣接し、かつ正確な判定が不可能な状態にある最下位とが、入れ替わって入力された可能性が高いと考えることができる。
【００９２】
これに対して、下位から３桁目については、認識の確かさが一定レベル以上であり、かつ文字の比較結果が一致していることから、正しく入力された可能性が高いと考えられる。
【００９３】
以上の理由から、修正候補判定部１６０は、認識文字データ１１２ａの文字列から特定された下位から２桁目および最下位の文字のペアに対応する入力文字データ１２１ａの文字“６”および“４”を、入力順が入れ替わっている文字のペアと特定する。修正候補判定部１６０は、特定された文字のペアの位置を入れ替えた“４６”を修正候補と判定する。修正候補と判定された“４６”は、修正画面２１ｃに「候補＃１」として表示される。
【００９４】
これにより、オペレータは、認識文字データ１１２ａに対応する文字列“１２３５１４６”を先頭から再入力せずに、１つのキーの打鍵により修正候補を選択することで誤入力を修正できるため、誤入力の修正を効率化できる。
【００９５】
なお、上記手順によって入力順が入れ替わっている文字のペアを判定する処理では、認識の確かさが一定レベルに達していない文字の位置について、誤入力が生じていることを新たに判断できるという効果も得られる。
【００９６】
なお、伝票入力装置１００において、認識率が高い文字を判定するための閾値と、認識率が低い文字を判定するための閾値とを同じ値（９０％）を用いるが、これらの閾値には別の値が用いられてもよい。
【００９７】
図１１は、２つの修正候補が判定される例を示す図である。図１１において、認識文字データ１１２ｂの文字列は“１２３５０４６”とし、入力文字データ１２１ｂの文字列は“１２３５０６４”とする。また、認識文字データ１１２ｂの文字列に対応する認識率は、上位から“９５”、“９０”、“８５”、“８５”、“８０”、“９０”、“６０”とする。
【００９８】
この場合、まず、修正候補判定部１６０は、認識文字データ１１２ｂおよび入力文字データ１２１ｂの各文字を比較し、認識文字データ１１２ｂについて、不一致と判定された文字から、対応する認識率が閾値以上である文字を選択する。この場合、図１０の説明と同様に、閾値が“９０”とすると、修正候補判定部１６０は、対応する認識率が“９０”以上である“４”を選択する。
【００９９】
次に、修正候補判定部１６０は、認識文字データ１１２ｂについて、選択された文字に隣接する文字に対応する認識率が閾値未満である文字を選択する。図１１において、“４”に隣接する文字は、“０”および“６”である。また、“０”に対応する認識率が“８０”であり、“６”に対応する認識率が“６０”である。このため、修正候補判定部１６０は、対応する認識率が“９０”未満である“０”および“６”を選択する。すなわち、この場合には、下位から２桁目と３桁目、および下位から１桁目と２桁目のそれぞれについて、入力順の入れ替わりが発生している可能性があると判定される。
【０１００】
次に、修正候補判定部１６０は、選択された認識率が閾値以上である文字“４”、および、選択された認識率が閾値未満である文字“０”の文字のペアとして特定する。同様に、修正候補判定部１６０は、選択された認識率が閾値以上である文字“４”および、選択された認識率が閾値未満である文字“６”の文字のペアとして特定する。そして、修正候補判定部１６０は、特定されたペアに対応する入力文字データ１２１ｂの文字“０”および“６”のペアと“６”および“４”のペアとを、誤入力のあった文字のペアと特定する。
【０１０１】
そして、修正候補判定部１６０は、特定されたペアの位置を入れ替えた“６０”および“４６”を修正候補と判定する。修正候補と判定された“６０”は、修正画面２１ｃに候補＃１として表示され、修正候補と判定された“４６”は、修正画面２１ｃに候補＃２として表示される。
【０１０２】
このように、認識率が高い文字に隣接する文字の認識率がいずれも閾値未満の場合、修正候補が２つになる。この場合、オペレータは、候補＃１または候補＃２のいずれかを選択することができる。図１１の説明においては、オペレータは、候補＃２を選択することで、誤入力を修正することができる。また、このように修正候補が２つの場合でも、オペレータは１つのキーの打鍵により修正候補を選択することで誤入力を修正することができる。
【０１０３】
図１２は、修正候補が判定されない例を示す図である。図１２において、認識文字データ１１２ｃの文字列は“１２３５１４６”とし、入力文字データ１２１ｃの文字列は“１０３５１６４”とする。また、認識文字データ１１２ｃの文字列に対応する認識率は、左から“９５”、“９０”、“８５”、“８５”、“９５”、“９０”、“６０”とする。
【０１０４】
この場合、まず、修正候補判定部１６０は、認識文字データ１１２ｃおよび入力文字データ１２１ｃの各文字を比較し、認識文字データ１１２ｃについて、不一致と判定された文字から、対応する認識率が閾値以上である文字を選択する。この場合、閾値が“９０”とすると、修正候補判定部１６０は、対応する認識率が“９０”以上である“０”および“４”を選択する。
【０１０５】
ここで、上記手順により、認識率が閾値以上で、かつ比較結果により不一致と判定された文字が複数検知され、検知されたそれぞれの文字について入力順が入れ替わっていると考えられる文字ペアが見つかった場合には、検知されたそれぞれの文字について修正画面２１ｃを用いた修正を行う方法が考えられる。しかしながら、前述のようにオペレータのキー入力は速いため、この方法により修正を行うより、誤入力された可能性のある文字列全体を先頭から再入力する方が早くなる可能性が高い。
【０１０６】
そこで、修正候補判定部１６０は、誤入力された可能性があると判定された文字において、対応する認識率が閾値以上である文字が２つ以上である場合、修正候補を提示しない。この場合、オペレータは、認識文字データ１１２ｃの文字列を先頭から再入力する。これにより、誤入力と判定された入力項目の修正に要する時間を短縮し、修正作業を効率化できる。
【０１０７】
次に、図１３〜１５を用いて、伝票に記載の文字がオペレータにより入力される際の処理をフローチャートを用いて説明する。
図１３は、文字入力を支援する処理の例を示すフローチャートである。以下、図１３に示す処理をステップ番号に沿って説明する。
【０１０８】
（ステップＳ１１）オペレータが伝票をスキャナ２０にセットすると、スキャナ２０は、伝票をＯＣＲ認識し、文書データを生成する。スキャナ２０は、生成した文書データを伝票入力装置１００に送信する。
【０１０９】
（ステップＳ１２）認識文字データ取得部１４０は、スキャナ２０から文書データを受信する。認識文字データ取得部１４０は、受信した文書データに基づいて入力画面２１ａを生成する。例えば、認識文字データ取得部１４０は、文書データから、入力画面２１ａのひな形に各入力項目に対応する文字コードを選択し、対応する文字を表示させることで、入力画面２１ａを生成する。入力画面２１ａのひな形は、例えば、あらかじめ認識文字データ記憶部１１０などの記憶領域に記憶されている。そして、認識文字データ取得部１４０は、生成した入力画面２１ａをディスプレイ２１に表示する。
【０１１０】
（ステップＳ１３）認識文字データ取得部１４０は、認識率テーブル１１１に格納された認識率を、受信した文書データに含まれる認識文字列に含まれる各文字に対応付けることで、認識文字データ１１２を生成する。具体的には、認識文字データ取得部１４０は、受信した文書データに含まれる認識文字列に含まれる文字毎に、その文字の種別に対応する認識率を認識率テーブル１１１から検索し、検索された認識率をその文字に対応付ける。
【０１１１】
（ステップＳ１４）オペレータは、伝票に記載された文字を、入力画面２１ａ上の対応する入力欄に入力する。入力文字データ取得部１５０は、入力画面２１ａにおける入力欄毎に、オペレータにより入力された文字列を入力文字データ１２１として取得する。そして、処理をステップＳ２１へ進める。
【０１１２】
図１４は、文字入力を支援する処理の例を示すフローチャート（続き）である。以下、図１４に示す処理をステップ番号に沿って説明する。
（ステップＳ２１）修正候補判定部１６０は、入力項目を１つ選択する。
【０１１３】
（ステップＳ２２）修正候補判定部１６０は、選択された入力項目に対応する入力文字データ１２１を入力文字データ記憶部１２０から取得する。修正候補判定部１６０は、選択された入力項に対応する認識文字データ１１２を認識文字データ記憶部１１０から取得する。修正候補判定部１６０は、取得した入力文字データ１２１および認識文字データ１１２の文字列を比較する。
【０１１４】
（ステップＳ２３）修正候補判定部１６０は、入力文字データ１２１および認識文字データ１１２の文字列の比較結果が不一致か判定する。比較結果が不一致の場合、処理をステップＳ２４へ進める。比較結果が一致の場合、処理をステップＳ２９へ進める。
【０１１５】
（ステップＳ２４）修正候補判定部１６０は、入力画面２１ａについて、選択された入力項目を強調して表示する。
（ステップＳ２５）修正候補判定部１６０は、入力文字データ１２１の対応する文字と不一致であった認識文字データ１１２の各文字から、認識率が閾値以上である文字を取得する。
【０１１６】
（ステップＳ２６）修正候補判定部１６０は、ステップＳ２５で取得された文字数が１であるか判定する。取得された文字数が１である場合、処理をステップＳ２７へ進める。取得された文字数が１以外である場合、処理をステップＳ２８へ進める。
【０１１７】
（ステップＳ２７）修正候補判定部１６０は、ステップＳ２５で取得された、認識率が閾値以上の文字について、修正候補の有無を判定する。詳細は、図１５で説明する。
（ステップＳ２８）修正候補判定部１６０は、修正画面２１ｃを表示する。このとき、修正画面２１ｃの操作項目２１ｃ−２には、「候補＃１」、「候補＃２」および「再入力」が表示されない。また、表示された修正画面２１ｃにおいては、誤入力項目２１ｃ−１の入力欄の先頭位置にカーソルが表示された状態になっている。この状態から、オペレータは、キー操作を行うことで、誤入力項目２１ｃ−１の入力欄に先頭から文字列を再入力する。そして、オペレータは、修正画面２１ｃの操作項目２１ｃ−２から「次へ」の項目を選択（キー“＋”を押下）し、次の誤入力項目を表示させる。
【０１１８】
（ステップＳ２９）修正候補判定部１６０は、入力画面２１ａにおける全入力項目を選択済みか判定する。全入力項目を選択済みの場合、処理を終了する。未選択の入力項目が存在する場合、処理をステップＳ２１へ進める。
【０１１９】
なお、図１４の処理は、入力画面２１ａの全入力項目に入力された後に行われるが、他の例として、オペレータにより１つの入力欄に入力されるたびに（例えば、他の入力欄にカーソルが移動したときに）、ステップＳ２２〜Ｓ２８の処理を実行してもよい。
【０１２０】
図１５は、修正候補を判定する処理の例を示すフローチャートである。以下、図１５に示す処理をステップ番号に沿って説明する。
（ステップＳ３１）修正候補判定部１６０は、図１４のステップＳ２５で取得した文字と隣接する文字から、認識率が閾値（９０％）未満の文字を取得する。
【０１２１】
（ステップＳ３２）修正候補判定部１６０は、ステップＳ３１で取得された文字数が１か判定する。ステップＳ３１で取得された文字数が１である場合、処理をステップＳ３３へ進める。ステップＳ３１で取得された文字数が１以外である場合、処理をステップＳ３４へ進める。
【０１２２】
（ステップＳ３３）修正候補判定部１６０は、図１０に示した手順により、１つの修正候補を取得する。
（ステップＳ３４）修正候補判定部１６０は、ステップＳ３１で取得された文字数が２か判定する。ステップＳ３１で取得された文字数が２である場合、処理をステップＳ３５へ進める。ステップＳ３１で取得された文字数が２以外（すなわち０）である場合、処理をステップＳ３８へ進める。
【０１２３】
（ステップＳ３５）修正候補判定部１６０は、図１１に示した手順により、２つの修正候補を取得する。
（ステップＳ３６）修正候補判定部１６０は、修正画面２１ｃに修正候補を表示する。このとき、修正候補判定部１６０は、ステップＳ３３を実行した場合、修正画面２１ｃの操作項目２１ｃ−２には、「候補＃１」を表示させるが「候補＃２」を表示させない。また、修正候補判定部１６０は、ステップＳ３５を実行した場合、修正画面２１ｃの操作項目２１ｃ−２には、「候補＃１」および「候補＃２」を表示させる。
【０１２４】
そして、修正候補判定部１６０は、オペレータにより操作項目２１ｃ−２についての選択入力が行われるのを待つ。「候補＃１」または「候補＃２」が選択された（キー“１”またはキー“２”が押下された）場合、処理をステップＳ３７へ進める。「再入力」が選択された（キー“０”が押下された）場合、処理をステップＳ３８へ進める。
【０１２５】
（ステップＳ３７）修正候補判定部１６０は、オペレータが選択した修正候補に基づいて、誤入力候補の入力欄を修正する。そして、修正候補判定部１６０は、誤入力項目２１ｃ−１の入力欄への修正を、入力画面２１ａにおいて、対応する入力項目の入力欄にも反映させる。そして、オペレータは、修正画面２１ｃの操作項目２１ｃ−２から「次へ」の項目を選択（キー“＋”を押下）し、次の誤入力項目を表示させる。これにより、入力欄に反映された修正が確定される。
【０１２６】
（ステップＳ３８）オペレータは、誤入力項目２１ｃ−１の入力欄に先頭から文字列を再入力する。そして、オペレータは、修正画面２１ｃの操作項目２１ｃ−２から「次へ」の項目を選択（キー“＋”を押下）し、次の誤入力項目を表示させる。これにより、入力欄に反映された修正が確定される。
【０１２７】
第２の実施の形態の伝票入力装置１００によれば、修正候補判定部１６０は、認識文字データ１１２および入力文字データ１２１の文字列を比較する。次に、認識文字データ１１２において、不一致である文字列から認識率が閾値以上である文字を取得し、取得した文字に隣接する文字から認識率が閾値未満である文字を取得する。そして、修正候補判定部１６０は、取得された閾値以上である文字と、その文字に隣接し認識率が閾値未満である文字とのペアに対応する入力文字データ１２１の文字のペアを取得する。
【０１２８】
このように取得された文字列のペアは、オペレータにより入れ替えて入力された可能性が高いことから、取得されたペアに含まれる文字の位置を入れ替えたペアを誤入力における修正候補と判定できる。そして、修正候補判定部１６０は、修正候補と判定された文字列を修正画面２１ｃにより提示する。
【０１２９】
これにより、オペレータは、誤入力の可能性がある入力項目について、修正候補を考慮して、誤入力か否か判断できるため、誤入力か否かの判断がより迅速にできる。
また、修正候補判定部１６０は、提示された修正候補からオペレータにより選択されると、誤入力された入力項目を選択された修正候補の内容に修正する。ここで、誤入力を含む文字列全体の中から、誤入力された文字のみを選択して修正すると、再度桁間違えなどの誤入力がされる可能性が生じる。そのため、一般的にオペレータは、入力文字データ１２１の文字列に誤入力があった場合、入力文字データ１２１に対応する入力欄に文字列を先頭から再入力することになる。すなわち、入力文字データ１２１の文字列のうち１文字だけ誤入力したときでも、７文字分、再入力することになる。これに対して、上記の処理により、提示された修正候補からオペレータが選択することで修正可能となるため、全て再入力するよりも入力する文字数が少なくて済み、誤入力の修正作業が効率化される。また、再入力時の誤入力の確率も抑制できるため、誤入力の修正の精度が上がる。
【０１３０】
なお、伝票入力システム５においては、修正候補を提示する代わりに、入力欄に表示された文字列のうち誤入力の候補と判定された文字のみ修正可能にするように、入力画面２１ａまたは修正画面２１ｃが制御されてもよい。これにより、オペレータは、誤入力の候補となる文字以外の文字について、桁違いなどの誤入力を抑制できる。よって、誤入力の修正の精度が上がる。
【０１３１】
また、上記のように修正候補のペアを提示する処理は、基本的に、１つのキーの操作により１つの文字が入力されるような文字列に適用される。例えば、修正候補を提示する処理は、数字が入力される入力項目に適用されることが望ましい。また、例えば、アルファベットが入力される入力項目に適用することも可能である。逆に、例えば、漢字を含む文字列が入力される入力項目については、図１４の処理において、ステップＳ２１〜Ｓ２３の処理が実行された後、ステップＳ２３で「ＹＥＳ」と判定された場合には無条件にステップＳ２８の処理が実行されればよい。
【０１３２】
また、上記の伝票入力システム５では、ＯＣＲ認識の正確さを表す確度の例として認識率を用いた。しかしながら、例えば、ＯＣＲ認識の正確さを表す確度として、ＯＣＲ認識の処理中に使用されたパラメータを用いることもできる。例えば、スキャナ２０によって読み取られた画像を文字のパターンと照合することで文字認識が行われる場合には、認識された文字についてのパターンとの一致度を、ＯＣＲ認識の確度として用いてもよい。
【０１３３】
ＯＣＲ認識の確度としてＯＣＲ認識の処理中に使用されたパラメータが用いられる場合、伝票入力装置１００は、このパラメータをスキャナ２０から取得する。また、スキャナ２０ではなく伝票入力装置１００がＯＣＲ認識を行う場合には、上記パラメータを伝票入力装置１００自身が出力することができる。
【０１３４】
また、例えば、ＯＣＲ認識の処理中に使用されたパラメータを前述の認識率によって補正した値を、ＯＣＲ認識の確度として用いることもできる。
なお、前述のように、第１の実施の形態の文字入力支援装置１０の処理は、文字入力支援装置１０にプログラムを実行させることで実現できる。また、第２の実施の形態の伝票入力装置１００および認識率ＤＢサーバ２００の処理は、各装置にプログラムを実行させることで実現できる。このようなプログラムは、コンピュータ読み取り可能な記録媒体（例えば、記録媒体２３）に記録しておくことができる。記録媒体としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、半導体メモリなどを使用できる。磁気ディスクには、ＦＤおよびＨＤＤが含まれる。光ディスクには、ＣＤ、ＣＤ−Ｒ（Recordable）／ＲＷ（Rewritable）、ＤＶＤおよびＤＶＤ−Ｒ／ＲＷが含まれる。
【０１３５】
プログラムを流通させる場合、例えば、当該プログラムを記録した可搬記録媒体が提供される。また、プログラムを他のコンピュータの記憶装置に格納しておき、ネットワーク３０経由でプログラムを配布することもできる。コンピュータは、例えば、可搬記録媒体に記録されたプログラムまたは他のコンピュータから受信したプログラムを、記憶装置（例えば、ＨＤＤ１０３）に格納し、当該記憶装置からプログラムを読み込んで実行する。ただし、可搬記録媒体から読み込んだプログラムを直接実行してもよく、他のコンピュータからネットワーク３０を介して受信したプログラムを直接実行してもよい。また、上記の情報処理の少なくとも一部を、ＤＳＰ（Digital Signal Processing）、ＡＳＩＣ、ＰＬＤ（Programmable Logic Device）等の電子回路で実現することも可能である。
【符号の説明】
【０１３６】
１  画像
２，３  文字列
１０  文字入力支援装置
１１  取得部
１２  判定部
【図１】
2014194694.tif 000003
【図２】
2014194694.tif 000004
【図３】
2014194694.tif 000005
【図４】
2014194694.tif 000006
【図５】
2014194694.tif 000007
【図６】
2014194694.tif 000008
【図７】
2014194694.tif 000009
【図８】
2014194694.tif 000010
【図９】
2014194694.tif 000011
【図１０】
2014194694.tif 000012
【図１１】
2014194694.tif 000013
【図１２】
2014194694.tif 000014
【図１３】
2014194694.tif 000015
【図１４】
2014194694.tif 000016
【図１５】
2014194694.tif 000017