(57)【要約】【課題】  複数箇所に設定した探索窓それぞれの認識結果を統合する際、候補として残すべき文字を適切に選択できるようにする。【解決手段】  本発明によれば、認識対象画像に対して探索領域を設定し、さらに、該探索領域内の複数箇所に探索窓を設定する。そして、当該複数箇所に設定された探索窓それぞれの画像と文字認識辞書との比較を行うことにより、各探索窓に対応する認識文字とその類似度とを取得し、各探索窓に対応する認識文字を、類似度の高い順に出力する。このとき、同じ類似度の認識文字が複数存在する場合は、出現頻度が多い順に出力する。【選択図】  図６
2017162151.tif 000002
【特許請求の範囲】
【請求項１】
認識対象画像に対して、探索領域を設定する第１の設定手段と、
前記探索領域内の複数箇所に、探索窓を設定する第２の設定手段と、
前記第２の設定手段によって複数箇所に設定された探索窓それぞれの画像と文字認識辞書との比較を行うことにより、各探索窓に対応する認識文字とその類似度とを取得する認識手段と、
前記各探索窓に対応する認識文字を、類似度の高い順に出力する候補順位決定手段と、を有し、
前記候補順位決定手段は、同じ類似度の認識文字が複数存在する場合は、出現頻度が多い順に出力することを特徴とする情報処理装置。
【請求項２】
前記候補順位決定手段は、前記各探索窓の第１位の認識文字を類似度の高い順に出力するものであって、さらに、同じ類似度の認識文字が複数存在する場合は、出現頻度が多い順に出力する請求項１に記載の情報処理装置。
【請求項３】
前記候補順位決定手段は、前記各探索窓に対応する認識文字のうち、同一文字は１つに纏めて出力することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記探索領域の１つは、１つの文字が存在すると推定される位置に設定されることを特徴とする請求項１または２に記載の情報処理装置。
【請求項５】
前記候補順位決定手段は、前記各探索窓の第１位の認識文字を候補リストに追加していくものであって、ある探索窓の第１位の認識文字が前記候補リスト内に既に存在する場合は、当該探索窓の第２位の認識文字を前記候補リストに追加することを特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記候補順位決定手段により第１位で出力された認識文字を、前記認識対象画像の認識結果として表示する認識結果表示手段と、
前記認識結果表示手段により表示された認識結果に対して、ユーザにより修正指示が為された場合、前記前記候補順位決定手段により第２位以下で出力された認識文字を修正候補として表示する修正手段と、
を有することを特徴とする請求項１に記載の情報処理装置。
【請求項７】
コンピュータを、請求項１乃至６のいずれか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【請求項８】
認識対象画像に対して、探索領域を設定する第１の設定ステップと、
前記探索領域内の複数箇所に、探索窓を設定する第２の設定ステップと、
前記第２の設定ステップで複数箇所に設定された探索窓それぞれの画像と文字認識辞書との比較を行うことにより、各探索窓に対応する認識文字とその類似度とを取得する認識ステップと、
前記各探索窓に対応する認識文字を、類似度の高い順に出力する候補順位決定ステップと、を有し、
前記候補順位決定ステップでは、同じ類似度の認識文字が複数存在する場合は、出現頻度が多い順に出力することを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字認識処理を実行する情報処理装置に関する。
【背景技術】
【０００２】
特許文献１には、文書画像から個々の文字画像を切り出し、当該切り出した１つの文字画像に対して拡張・収縮・回転等の複数種類の画像加工処理を行うことにより、１つの文字画像から複数個の文字パターンを作成する。そして、複数個の文字パターンそれぞれから抽出した特徴データと認識辞書に格納されている文字の特徴データとを比較して類似度を計算し、それらの類似度を統合して、類似度が高い文字を文字認識結果として出力することが記載されている。特許文献１の技術は、被写体の画像から個々の文字を正確に切り出せることが前提となっている。
【０００３】
一方、近年、スマートフォン等のカメラ機能を用いて、様々な文字情報を含む被写体を撮影し、当該撮影した画像から文字情報を取り込むことが考えられている。例えば、鉱山などの採石現場では、ダンプトラックに使用されているタイヤを管理するために、タイヤに刻印されたシリアルナンバーを用いるというユースケースがある。そこで、タイヤに刻印されたシリアルナンバーをスマートフォンで撮影し、撮影した画像に対して文字認識処理を行い、その文字認識結果のシリアルナンバーを用いて管理することが考えられる。しかしながら、タイヤに刻印されたシリアルナンバーなどの場合、撮影画像において、文字と背景のコントラストが小さかったり、表面に汚れが多くありノイズが多かったりする。このように、被写体によっては、文字の周りの色や汚れなどの影響で、個々の文字画像を正確に切り出すのが困難な場合も多く、特許文献１の技術では対応できない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１８２１６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
そこで、本出願人は以下のような手順で文字認識処理を実行することを検討している。すなわち、撮影画像に対して、文字が存在しそうな箇所に探索領域を設定し、その探索領域内において位置をずらしながら複数個所に切り出し領域（探索窓）を設定して、その複数箇所に設定した探索窓それぞれの画像を切り出す。そして、当該切り出した画像それぞれについて認識辞書と比較して候補文字とその類似度を求め、最も類似度の高い候補文字を認識結果とするというものである。
【０００６】
また、一般的な文字認識技術では、類似度が第２位以降の候補文字も記憶しておき、ユーザの指示に基づいて文字認識結果の修正を行う際、類似度が第２位以降の候補文字を修正候補として提示し、その中からユーザに選択させるものがある。しかしながら、上述した本出願人が検討している処理において、複数箇所から切り出した全ての切り出し画像について第２位以降の候補文字もすべて記憶するという構成にすると、記憶すべき候補文字数が多くなりすぎ、メモリ容量や処理速度などのパフォーマンスに悪影響を及ぼしてしまう。
【０００７】
本発明は、候補として残すべき文字を適切に選択できるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の情報処理装置は、認識対象画像に対して、探索領域を設定する第１の設定手段と、前記探索領域内の複数箇所に、探索窓を設定する第２の設定手段と、前記第２の設定手段によって複数箇所に設定された探索窓それぞれの画像と文字認識辞書との比較を行うことにより、各探索窓に対応する認識文字とその類似度とを取得する認識手段と、前記各探索窓に対応する認識文字を、類似度の高い順に出力する候補順位決定手段と、を有し、前記候補順位決定手段は、同じ類似度の認識文字が複数存在する場合は、出現頻度が多い順に出力することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、処理速度や必要メモリ量に対する影響を小さくするとともに、適切な候補文字を残すことができる。
【図面の簡単な説明】
【００１０】
【図１】タブレット１００の構成を示すブロック図
【図２】情報処理装置２００の構成を示すブロック図
【図３】モバイルカメラでプレートを撮影する例
【図４】画像と探索領域の例
【図５】探索領域と探索窓の例
【図６】探索領域と探索窓と認識結果の例
【図７】メインフロー
【図８】文字認識実行のフローと認識結果と候補リストの例
【図９】候補順位の決定のフローと候補リストの例
【図１０】探索領域と探索窓と認識結果の例
【図１１】文字認識実行のフローと認識結果と候補リストの例
【発明を実施するための形態】
【００１１】
（第１の実施形態）
＜タブレットの構成と情報処理装置の構成＞
図１に本実施形態におけるタブレット（モバイル端末）１００の構成を示す。タブレット１００は、画像を撮影するためのカメラ１０１と、外部との間でデータを送受信するための送受信部１０２とを有する。
【００１２】
図２に本実施形態における情報処理装置２００の構成を示す。情報処理装置２００は、データを送受信するための送受信部２０１と、保存部（ＲＯＭ、ＲＡＭ）２０２と、制御部（ＣＰＵ）２０３と、画面を表示するための表示部２０４と、ユーザからの操作を受け付けるための受付部０５とを有する。ＣＰＵは、ＲＯＭからプログラムをロードし、一次保存領域としてＲＡＭを利用してプログラムを実行する。すなわち、情報処理装置２００のＣＰＵ（コンピュータ）は、該プログラムを実行することにより、後述するフローチャートの各ステップを実行するように機能する。なお、受付部２０５は、キーボードとマウスを含む形態が一般的であるが、この形態に限らない。例えば、受付部２０５と表示部２０４とが一体となったタッチパネルディスプレイを用いてもよい。
【００１３】
なお、本実施形態では、タブレット１００で撮影した画像を情報処理装置２００において文字認識処理する例について説明するが、これに限るものではなく、一体型の装置で実行するようにしてもよい。例えば、タブレット１００の処理性能が十分高ければ、タブレットのカメラ部で撮影した画像を、当該タブレットのＣＰＵで文字認識処理し、その結果をタブレットのディスプレイに表示するようにしてもよい。
【００１４】
＜（１）概要説明＞
まず、本実施形態において実行される処理手順の概要について説明する。
【００１５】
図３のタブレット３０１は、カメラで撮影中の画像をリアルタイムに画面３０２に表示する。本実施形態では、文字列が記載されたプレート３０５を被写体として撮影するものとする。例えば、タイヤの側面のプレート領域内に刻印されたシリアルナンバーを撮影する場合などに後述の本発明を使用することができる。なお、プレートはタイヤのプレートに限るものではなく、その他の文字列が記載されたプレートであってもよい。
【００１６】
画面３０２内には、プレート３０５の撮影位置を示すためのガイド３０３、３０４が予め表示されているものとし、ユーザはこのガイド内にプレートが収まるように撮影位置を調整する。ユーザによりシャッター３０６がタッチされると、タブレットは、画像の取り込みを実行し、ガイド３０３と３０４の間の画像をプレート画像としてタブレット内のＲＡＭに記憶する。さらに、タブレットは、当該記憶されたプレート画像を図１の送受信部１０２を介して情報処理装置２００に送信する。すると、情報処理装置２００の送受信部２０１がこれを受信し、保存部２０２にそのプレート画像を保存する。
【００１７】
情報処理装置２００において、ユーザの操作により、保存部２０２に保存されている複数のプレート画像の中から１つのプレート画像が選択されると、制御部２０３は、そのプレート画像を表示部２０４に表示する。そして、当該表示されたプレート画像（認識対象画像）についての解析の指示がユーザにより為されると、制御部２０３は、後述する文字認識処理を実行し、その認識結果を表示部２０４に表示する。そして、当該表示された認識結果に対する修正の指示がユーザにより為された場合は、修正対象として指示された文字に対応する候補文字を表示して、修正処理を実行する。
【００１８】
＜（２）文字認識処理における探索領域の設定手順の概要＞
図４は、プレート画像（認識対象画像）４０１の例であり、探索領域４０２は、プレート画像４０１内の左から１文字目を探索する際に設定される領域である。図５は、探索領域５０１内に更に設定される探索窓５０２，５０４，５０５，５０６の例を示す例である。探索領域４０２や５０１は、プレート内の文字が存在すると推定される位置に設定される。
【００１９】
図４の被写体のプレート画像４０１には、６つの文字（所定数の文字）が記載されていることが予め分かっているものとする。この場合、プレート全体の横幅を１００％として表すと、１文字あたりの幅は、１００％÷６＝１７％である。さらに、プレートの左端は撮影時のズレがある可能性があるため、左右５％ずつのマージンを与え、１文字目に対する探索領域５０１は、「プレート画像の左端から０〜２７％（１７＋５＋５＝２７）の領域」として設定する。
【００２０】
同様に、２文字目に対する探索領域は、プレートの左端から１７〜３４％の位置にあると推定されるが、左右５％のマージンを加えて、１２〜３９％の位置として設定する。
【００２１】
３文字目以降も同様にマージンを加えて探索領域を設定すると、３文字目に対する探索領域は２８〜５５％の位置、４文字目に対する探索領域は４５〜７２％の位置、５文字目に対する探索領域は６２〜８９％の位置、６文字目に対する探索領域は７３〜１００％の位置とする。
【００２２】
なお、本実施形態における被写体のプレートは、１行の文字列を含むことが予め分かっているものとするので、各探索領域の高さは、プレート画像の高さと同じに設定する。
【００２３】
＜（３）文字認識処理における探索窓の設定手順の概要＞
探索窓５０２は、認識辞書の比較対象にする画像の切り出し位置を示すものであり、探索領域内で位置をずらしながら複数箇所で設定されるものである。なお、本実施形態において、探索窓５０２の大きさは、高さがプレート画像高さの５０％、幅は高さの８０％とするが、これに限るものではなく。複数種類のサイズの探索窓を用いるようにしてもよい。
【００２４】
探索領域の左上をスタート地点として、最初の探索窓は該スタート地点に設定し、次以降は、右方向に５ピクセルずらすごとに探索窓の位置を設定していく。探索窓５０２の右辺が探索領域５０１の右辺からはみ出したら、次に、探索領域の左端に戻り、下に５ピクセルずらした位置を次の探索窓とする。そこから同様に右方向に５ピクセルずらすごとに探索窓を設定していく。この処理を繰り返し実行し、探索窓が探索領域の下辺をはみだしたら探索窓の設定を終了する。このように、探索領域内にまんべんなく複数の探索窓を設定する。
【００２５】
探索窓５０４は、探索窓５０２の位置より下の位置にずらして設定したときの例であり、探索窓５０５は探索窓５０４より右側にずらして設定したときの例であり、探索窓５０６は探索窓５０５より右側にずらして設定したときの例である。
【００２６】
＜（４）各探索窓の画像と文字認識辞書とを比較して、類似度を算出した場合の例＞
制御部２０３は、各探索窓から切り出した画像に対して文字認識辞書との比較を行うことによって、各探索窓に対応する認識文字とその類似度とを得る。認識文字とその類似度は、対応する探索窓に関連付けて保存部２０２に保存する。
【００２７】
図６において、探索領域６０１内の探索窓６０２から切り出した画像に対して認識辞書と比較した結果が認識結果６０５であったとする。同様に、探索窓６０３に対する認識結果６０６、探索窓６０４の認識結果６０７であったとする。
【００２８】
例えば、認識結果６０５は、類似度の高い順に１位から３位までを並べている。類似度が最も高いのが「Ｂ」であり、その類似度が９０００である。次に類似度が高いのが「８」で類似度７０００である。さらにその次に類似度が高いのが「Ｅ」で類似度が４０００である。
【００２９】
＜（５）各探索窓の第１位の認識結果に基づいて、文字の認識結果を決定する手順の概要＞
各探索窓の認識結果６０５〜６０７の全ての候補文字を記憶してソート等を行うと、候補文字の数が多く処理速度が落ちてしまう。そこで、本実施形態では、各探索窓の認識結果６０５〜６０７の第１位の候補文字のみを用いて、当該探索領域（探索領域内の文字）に対する最終的な認識結果を決定する。
【００３０】
図６の例では、探索窓６０２〜６０４それぞれの認識結果６０５〜６０７における第１位の候補文字を集めると、候補リスト６０８となる。このとき、認識結果６０５〜６０７それぞれの第１位の候補文字は類似度が同じであったので第１位が３つ並んでいる。また、この例では、探索窓６０２と６０３から同じ候補文字「Ｂ」が第１位の認識結果として出力されている。本実施形態では、類似度が同じ場合、更に出現頻度の多い文字を上位にし、かつ、同一文字は一つを残して削除する。候補リスト６０８では、「Ｂ」が２回、「８」が１回出現しているので、「Ｂ」を第一位にし、「８」を第２位とするように補正し、当該補正の結果が認識結果リスト６０９となる。出現頻度の高い文字は正解である可能性が高いので、認識結果の精度が上がるとともに、候補リスト６０８上の重複する文字は１つに纏められる。
【００３１】
＜第１の実施形態の処理フローチャートの説明＞
図７は、第１の実施形態における処理内容を示すフローチャートである。
【００３２】
ステップＳ７０１で、制御部２０３は、前述の（１）で説明したように、タブレット１００のカメラで撮影されたプレート画像を送受信部１０２と情報処理装置２００の送受信部２０１とを介して保存部２０２に取得する。
【００３３】
ステップＳ７０２で、制御部２０３は、前述の（２）で説明したように、プレート画像に対して探索領域の設定を行う。
【００３４】
ステップＳ７０３で、制御部２０３は、前述の（３）で説明したように、探索領域内に探索窓（切り出し領域）のひとつを設定する。
【００３５】
ステップＳ７０４で、制御部２０３は、前述の（４）で説明したように、Ｓ７０３で設定された探索窓内の画像を文字認識辞書と比較して、候補文字とその類似度とを求める。Ｓ７０４の認識処理の詳細を、図８を用いて説明する。
【００３６】
図８のステップＳ８０１では、Ｓ７０３で設定された探索窓内の画像を文字認識辞書と比較して、候補文字とその類似度とを求める。例えば、６番目の探索窓内の画像に対する認識結果の例が８０３であったとする。該探索窓の認識結果８０３は、類似度の高い順に３つの認識結果を示したものである。第１位は文字コード０ｘ４２（文字「Ｂ」）で類似度９０００であり、第２位は文字コード０ｘ３８（文字「８」）で類似度７０００であり、第３位は文字コード０ｘ４５（文字「Ｅ」）で類似度４０００である。
【００３７】
ステップＳ８０２では、Ｓ７０３で設定された探索窓内の画像に対する認識結果のうち、類似度の最も高い文字とその類似度を、候補リストに追加する。認識結果８０３では、類似度の最も高い文字の文字コードが０ｘ４２で類似度が９０００である。それらを候補リストに加えた結果が候補リスト８０４であり、探索窓の番号６として、第一位文字コード０ｘ４２、類似度９０００が加えられた状態を示している。
【００３８】
ステップＳ７０５で、制御部２０３は、探索領域内の全ての探索窓の文字認識を終了したか判定する。終了していればステップＳ７０６に進む。終了していなければ、次の探索窓を設定して同様の処理を実行するため、ステップＳ７０３に戻る。
【００３９】
ステップＳ７０６で、制御部２０３は、前述の（５）で説明したように、候補順位の決定を行う。Ｓ７０６の処理の詳細を、図９を用いて説明する。
【００４０】
図９のステップＳ９０１で、制御部２０３は、候補文字を類似度の高い順に並べ替える。図８の候補リスト８０４の例で示した探索窓１〜６を類似度順で並べ替えた結果が、候補リスト９０７である。
【００４１】
ステップＳ９０２で、制御部２０３は、候補文字を一つ選択する。候補リスト９０７の例では、まず、リストの一番上の探索窓１の候補文字を選択する。
【００４２】
ステップＳ９０３で、制御部２０３は、Ｓ９０２で選択した候補文字と同じ類似度の文字があるか判定する。同じ類似度の文字がある場合はステップＳ９０４に進む。ない場合は、ステップＳ９０５に進む。探索リスト９０７の例では、探索窓１の類似度は９０００である。同じ類似度９０００の文字は、探索窓２、３，６に存在するのでステップＳ９０４に進む。
【００４３】
ステップＳ９０４で、制御部２０３は、同じ類似度の文字を出現頻度の多い順に並び替える。同じ類似度の探索窓１，２，３，６の例では、文字コード０ｘ４２（文字「Ｂ」）が３回、０ｘ３８（文字「８」）が１回出現するので、文字コード０ｘ４２を文字コード０ｘ３８より上位に移動する。すなわち探索窓６の結果は、探索窓３の結果より上位になる。
【００４４】
ステップＳ９０５で、制御部２０３は、全ての候補文字を処理したか判定する。処理していればステップＳ９０６に進む。処理していなければステップＳ９０２に戻り、候補リスト内でまだ処理していない候補文字に関して同様の処理を行う。全ての文字を処理した結果の例が候補リスト９０８である。
【００４５】
ステップＳ９０６で、制御部２０３は、同じ文字があれば類似度の最も高い文字を残して削除する。候補リスト９０８の例では、第一位文字コード０ｘ４２が４個存在する。探索窓１の結果を残して他の探索窓２，６，４の結果を削除する。その結果が候補リスト９０９である。以上のようにして候補順位の決定を行う。
【００４６】
ステップＳ７０７で、制御部２０３は、画像内の全ての探索領域の処理を終了したか判定する。終了した場合はステップＳ７０８に進む。終了していない場合は、ステップＳ７０２に進み、次の探索領域について同様の処理を行う。
【００４７】
ステップＳ７０８で、制御部２０３は、探索領域それぞれにおける候補リストの第１位の文字を、文字列の認識結果として表示部２０４に表示する。
【００４８】
その後、制御部２０３は、当該表示した認識結果のいずれかの文字に対してユーザからの修正指示を受け付けた場合は、当該指示された文字の候補リストから第２位以降の候補文字を表示するように制御する。
【００４９】
上述したように、第１の実施形態によれば、位置をずらしながら複数箇所に探索窓（切り出し領域）を設定して文字認識処理を行うので、ノイズが多く文字を正確に切り出すことが困難な画像に対しても文字認識処理を実行することができる。そして、各探索窓における認識結果を統合する際、類似度が同じものがあった場合、認識結果の出現頻度が高い文字をより上位にするように構成したので、認識結果の精度があがる。
【００５０】
＜第２の実施形態＞
図７のステップＳ７０４の別の実施形態を図１０、図１１を用いて説明する。
【００５１】
図１０において、探索領域１００１内の探索窓１００２から切り出した画像に対して認識辞書と比較した結果が認識結果１００５であったとする。同様に、探索窓１００３に対する認識結果が１００６、探索窓１００４の認識結果が１００７であったとする。この場合、認識結果１００５，１００６，１００７それぞれから類似度の最も高い認識結果を集めて同一文字を削除すると、候補リスト１００８となる。この場合、すべての探索窓で類似度の最も高い認識結果が「Ｂ」であったので、候補リスト１００８に第２候補以下が存在しなくなってしまう。
【００５２】
第２の実施形態では、候補リストへの追加時に、認識結果の第１位候補文字と同じ文字がすでに候補リストにある場合は、第２位の候補文字を候補リストへ追加するように制御する。図１０の例では、まず、探索窓１００２の認識結果１００５に基づいて、第１位の文字「Ｂ」が候補リストに追加される。次に、探索窓１００３の認識結果１００６の第１位の文字「Ｂ」はすでに候補リスト内に存在するので、認識結果１００６の第２位の文字「８」を候補リストに追加する。さらにその後、探索窓１００４についても同様に処理する。その結果、出来上がる候補リストは１００９のようになる。候補リスト１００９には、第２位、第３位の候補文字が存在することになるので、ユーザから修正指示を受け付けた場合に、当該第２位と第３位の候補文字を提示することが可能となり、修正処理が容易に行えるようになる。
【００５３】
第２の実施形態のＳ７０４の処理の詳細を、図１１を用いて説明する。
【００５４】
図１１のステップＳ８０１で制御部２０３は、Ｓ７０３で設定された探索窓内の画像を文字認識辞書と比較して、候補文字とその類似度とを求める。その認識結果の例が認識結果１１０７である。
【００５５】
ステップＳ１１０１で、制御部２０３は、類似度の最も高い文字を選択する。認識結果１１０７の例であれば、最も類似度の高い文字の文字コードは０ｘ４２、類似度は８５００である。
【００５６】
ステップＳ１１０２で、制御部２０３は、当該選択した文字と同じ文字が候補リストに格納済みであるか判定する。格納していればステップＳ１１０３に進む。格納していなければステップＳ１１０６に進む。認識結果１１０７の例では、類似度の最も高い文字は０ｘ４２であり、候補リスト１１０８を確認するとすでに０ｘ４２は存在しているのでステップＳ１１０３に進む。
【００５７】
ステップＳ１１０３で、制御部２０３は、選択した文字の類似度が候補リストの同じ文字の類似度より大きいか判定する。大きければステップＳ１１０４に進む。大きくなければステップＳ１１０５に進む。２番目の探索窓の認識結果１１０７の例では、選択した文字の類似度は８５００、候補リストに記憶されている同じ文字の類似度は８０００なのでステップＳ１１０４に進む。
【００５８】
ステップＳ１１０４で、制御部２０３は、候補リストの同じ文字の類似度と探索窓を選択した文字の類似度と探索窓に置き換える。２番目の探索窓の認識結果１１０７の例では、候補リスト１１０８の０ｘ４２の類似度より大きいので探索窓１から２へ、類似度８０００から８５００へ候補リスト１１０８内の数値を置き換える。
【００５９】
ステップＳ１１０５で、制御部２０３は、探索窓内の認識結果で次に類似度の高い文字を選択する。認識結果１１０７の例では、０ｘ５２となる。その後、ステップＳ１１０２に戻って処理を続ける。認識結果１１０７の例では、候補リスト１１０８に文字コード０ｘ５２はないのでステップＳ１１０６へ進む。
【００６０】
ステップＳ１１０６で、制御部２０３は、選択した文字の探索窓と文字コード、類似度を候補リストに追加して探索窓内の文字認識実行処理を終了しステップＳ７０５に進む。認識結果１１０７の例では、候補リスト１１０８に探索窓２、文字コード０ｘ５２、類似度５０００を追加する。このようにして、候補リスト１１０９ができる。
【００６１】
第２の実施形態では、第１の実施形態の効果に加え、各探索窓での認識結果の第１位の文字が全て同じであったとしても、第２位以下の候補文字を候補リストに加えることができる。したがって、ユーザから修正指示が為された場合、修正候補を提示することができるようになる。
【００６２】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2017162151.tif 000003
【図２】
2017162151.tif 000004
【図３】
2017162151.tif 000005
【図４】
2017162151.tif 000006
【図５】
2017162151.tif 000007
【図６】
2017162151.tif 000008
【図７】
2017162151.tif 000009
【図８】
2017162151.tif 000010
【図９】
2017162151.tif 000011
【図１０】
2017162151.tif 000012
【図１１】
2017162151.tif 000013