(57)【要約】【課題】受け付けた文字情報と合致しない文字認識結果を選択してしまうことを防止するようにした画像処理装置を提供する。【解決手段】画像処理装置の受付手段は、画像内の文字領域内にある文字画像についての文字情報を受け付け、認識手段は、前記文字領域内の文字画像を文字認識し、選択手段は、前記認識手段による複数の文字認識結果の中から、前記受付手段によって受け付けられた文字情報と合致する文字認識結果を選択する。【選択図】図１
2013238999.tif 000002
【特許請求の範囲】
【請求項１】
画像内の文字領域内にある文字画像についての文字情報を受け付ける受付手段と、
前記文字領域内の文字画像を文字認識する認識手段と、
前記認識手段による複数の文字認識結果の中から、前記受付手段によって受け付けられた文字情報と合致する文字認識結果を選択する選択手段
を具備することを特徴とする画像処理装置。
【請求項２】
前記選択手段によって選択された文字情報と該文字情報を認識結果とした文字画像を対応させて、文字認識の学習用データとして出力する出力手段
をさらに具備することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記認識手段は、
文字画像に対して１文字に相当する単文字候補領域を切り出す文字切出し手段と、
前記文字切出し手段によって切り出された単文字候補領域に対して文字認識を行い、該単文字候補領域に対する複数の認識結果を出力する単文字認識手段
を有することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記文字切出し手段は、文字画像に対して、切り出し可能な複数の単文字候補領域を切り出す
ことを特徴とする請求項１から３のいずれか一項に記載の画像処理装置。
【請求項５】
前記選択手段は、単文字候補領域に対する複数の認識結果の中から、前記受付手段によって受け付けられた文字情報における単文字候補領域中の文字に相当するテキスト情報と照合して合致するものを選択する
ことを特徴とする請求項３又は４に記載の画像処理装置。
【請求項６】
前記画像に対して、文字画像が含まれる文字領域を設定する設定手段
をさらに具備し、
前記文字認識手段は、前記設定手段によって設定された文字領域を対象とする
ことを特徴とする請求項１〜５のいずれか一項に記載の画像処理装置。
【請求項７】
前記単文字候補領域を１つ以上の文字構成要素から生成する生成手段
をさらに具備し、
前記文字切出し手段は、前記生成手段によって生成された単文字候補領域を対象として切り出す
ことを特徴とする請求項３〜６のいずれか一項に記載の画像処理装置。
【請求項８】
前記生成手段は、前記選択手段による処理において、複数の文字認識結果の中に選択すべき文字認識結果がない場合に、新たに単文字候補領域を生成する
ことを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記生成手段は、予め定められた個数の文字構成要素を順次追加することで異なる単文字候補領域を生成する
ことを特徴とする請求項７又は８に記載の画像処理装置。
【請求項１０】
前記生成手段は、前記選択手段による処理において、複数の文字認識結果の中に選択すべき文字認識結果がなく、かつ、単文字候補領域内の文字構成要素が予め定められた個数以上又はより多い場合、合致する文字認識結果がない旨を通知する
ことを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
コンピュータを、
画像内の文字領域内にある文字画像についての文字情報を受け付ける受付手段と、
前記文字領域内の文字画像を文字認識する認識手段と、
前記認識手段による複数の文字認識結果の中から、前記受付手段によって受け付けられた文字情報と合致する文字認識結果を選択する選択手段
として機能させるための画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理プログラムに関する。
【背景技術】
【０００２】
特許文献１には、文字切り出し誤りによる誤認識部分を精度良く検出し、高速に訂正修正を行うことを目的とし、文字切り出し部が切り出した文字を文字認識部が文字認識を行い、文字認識の結果、誤認識部分が含まれていたならば、エディタによってユーザーが誤認識部分を手修正し、このとき、誤認識訂正部が誤認識部分の文字数と訂正後の文字数が違っていれば切り出し誤りと判断し、切り出し誤りならば、誤認識文字の文字種、訂正後の文字種、誤認識文字の直前・直後の文字をパターンとして誤切り出しパターン記憶部で記憶しておき、以後の文字認識時に、誤切り出しパターン照合部において誤切り出しパターン記憶部の記憶されたパターンと一致する認識結果が得られたならば、文字切り出し部において再切り出しを行い、文字認識部ではパターン登録されている訂正文字の文字種に限定して辞書との照合を行い、これによって訂正修正を高速で行うことが開示されている。
【０００３】
特許文献２には、認識候補文字のための多大なメモリを必要とせず、認識誤りをおこした文字を簡易な処理で訂正することができる文字認識装置を提供することを目的とし、入力画像内の認識対象領域を小領域に区切る小領域分割部と、文字情報を記憶している辞書と、小領域分割部で区切った小領域単位で認識文字を切り出し、辞書と照合することにより認識候補文字を抽出する認識部と、認識部で抽出した小領域単位の認識候補文字を正しい文字に訂正する認識訂正部を備えたことが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０４−３７２０８６号公報
【特許文献２】特開昭６３−２２９５８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、受け付けた文字情報と合致しない文字認識結果を選択してしまうことを防止するようにした画像処理装置及び画像処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、画像内の文字領域内にある文字画像についての文字情報を受け付ける受付手段と、前記文字領域内の文字画像を文字認識する認識手段と、前記認識手段による複数の文字認識結果の中から、前記受付手段によって受け付けられた文字情報と合致する文字認識結果を選択する選択手段を具備することを特徴とする画像処理装置である。
【０００７】
請求項２の発明は、前記選択手段によって選択された文字情報と該文字情報を認識結果とした文字画像を対応させて、文字認識の学習用データとして出力する出力手段をさらに具備することを特徴とする請求項１に記載の画像処理装置である。
【０００８】
請求項３の発明は、前記認識手段は、文字画像に対して１文字に相当する単文字候補領域を切り出す文字切出し手段と、前記文字切出し手段によって切り出された単文字候補領域に対して文字認識を行い、該単文字候補領域に対する複数の認識結果を出力する単文字認識手段を有することを特徴とする請求項１又は２に記載の画像処理装置である。
【０００９】
請求項４の発明は、前記文字切出し手段は、文字画像に対して、切り出し可能な複数の単文字候補領域を切り出すことを特徴とする請求項１から３のいずれか一項に記載の画像処理装置である。
【００１０】
請求項５の発明は、前記選択手段は、単文字候補領域に対する複数の認識結果の中から、前記受付手段によって受け付けられた文字情報における単文字候補領域中の文字に相当するテキスト情報と照合して合致するものを選択することを特徴とする請求項３又は４に記載の画像処理装置である。
【００１１】
請求項６の発明は、前記画像に対して、文字画像が含まれる文字領域を設定する設定手段をさらに具備し、前記文字認識手段は、前記設定手段によって設定された文字領域を対象とすることを特徴とする請求項１〜５のいずれか一項に記載の画像処理装置である。
【００１２】
請求項７の発明は、前記単文字候補領域を１つ以上の文字構成要素から生成する生成手段をさらに具備し、前記文字切出し手段は、前記生成手段によって生成された単文字候補領域を対象として切り出すことを特徴とする請求項３〜６のいずれか一項に記載の画像処理装置である。
【００１３】
請求項８の発明は、前記生成手段は、前記選択手段による処理において、複数の文字認識結果の中に選択すべき文字認識結果がない場合に、新たに単文字候補領域を生成することを特徴とする請求項７に記載の画像処理装置である。
【００１４】
請求項９の発明は、前記生成手段は、予め定められた個数の文字構成要素を順次追加することで異なる単文字候補領域を生成することを特徴とする請求項７又は８に記載の画像処理装置である。
【００１５】
請求項１０の発明は、前記生成手段は、前記選択手段による処理において、複数の文字認識結果の中に選択すべき文字認識結果がなく、かつ、単文字候補領域内の文字構成要素が予め定められた個数以上又はより多い場合、合致する文字認識結果がない旨を通知することを特徴とする請求項９に記載の画像処理装置である。
【００１６】
請求項１１の発明は、コンピュータを、画像内の文字領域内にある文字画像についての文字情報を受け付ける受付手段と、前記文字領域内の文字画像を文字認識する認識手段と、前記認識手段による複数の文字認識結果の中から、前記受付手段によって受け付けられた文字情報と合致する文字認識結果を選択する選択手段として機能させるための画像処理プログラムである。
【発明の効果】
【００１７】
請求項１の画像処理装置によれば、受け付けた文字情報と合致しない文字認識結果を選択してしまうことを防止することができる。
【００１８】
請求項２の画像処理装置によれば、受け付けた文字情報と文字認識結果が合致する場合は、文字情報と文字画像の対を文字認識の学習用データとして出力することができる。
【００１９】
請求項３の画像処理装置によれば、単文字候補領域毎に文字認識を行うことができる。
【００２０】
請求項４の画像処理装置によれば、複数の切り出し可能な単文字候補領域毎に文字認識結果を得ることができる。
【００２１】
請求項５の画像処理装置によれば、複数の認識結果の中から、受け付けられた文字情報における単文字候補領域中の文字に相当するテキスト情報と照合して合致するものを選択することができる。
【００２２】
請求項６の画像処理装置によれば、画像内の文字領域を対象として処理を行うことができる。
【００２３】
請求項７の画像処理装置によれば、単文字候補領域を文字認識の対象として切り出すことができる。
【００２４】
請求項８の画像処理装置によれば、選択すべき文字認識結果がない場合に、新たに単文字候補領域を生成することができる。
【００２５】
請求項９の画像処理装置によれば、文字構成要素を順次追加することで異なる単文字候補領域を生成することができる。
【００２６】
請求項１０の画像処理装置によれば、合致する文字認識結果がない旨を通知することができる。
【００２７】
請求項１１の画像処理プログラムによれば、受け付けた文字情報と合致しない文字認識結果を選択してしまうことを防止することができる。
【図面の簡単な説明】
【００２８】
【図１】第１の実施の形態の構成例についての概念的なモジュール構成図である。
【図２】第１の実施の形態による処理例を示すフローチャートである。
【図３】文字切出しモジュールにおける文字切出し処理例を示す説明図である。
【図４】文字切出しモジュールにおける文字切出し処理例を示す説明図である。
【図５】単文字認識モジュールによる文字認識処理による結果である複数の文字認識候補例を示す説明図である。
【図６】認識結果選択モジュールによる出力例を示す説明図である。
【図７】第２の実施の形態の構成例についての概念的なモジュール構成図である。
【図８】第２の実施の形態による処理例を示すフローチャートである。
【図９】第２の実施の形態による処理例を示すフローチャートである。
【図１０】準文字成分の例を示す説明図である。
【図１１】単文字候補領域の再生成処理例を示す説明図である。
【図１２】単文字候補領域の再生成処理例を示す説明図である。
【図１３】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００２９】
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
＜第１の実施の形態＞
図１は、第１の実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、２以上の値（もちろんのことながら、全ての値も含む）が同じであってもよい。また、「Ａである場合、Ｂをする」という意味を有する記載は、「Ａであるか否かを判断し、Ａであると判断した場合はＢをする」の意味で用いる。ただし、Ａであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００３０】
第１の実施の形態である画像処理装置は、受け付けた文字情報と文字認識結果を照合するものであって、図１の例に示すように、文字列設定モジュール１１０、テキスト受付モジュール１２０、文字認識モジュール１３０、認識結果選択モジュール１４０を有している。
文字認識の学習用データ（ここでは、文字認識用辞書を含む）を作成するためには、文字画像とその文字画像の文字コード（正解文字コード）を対応させた組み合わせが必要である。
印刷された文字画像は、文字コードから文字画像を生成し、印刷されることから、文字コードと文字画像の組み合わせを作成することが可能である場合が多い。
しかし、手書き文字画像の場合は、印刷された文字画像のように正解の文字コードが予め用意されているわけではない場合が多い。このことから、手書き文字画像の場合は、その手書き文字画像を見て、操作者のキーボード等に対する操作によって文字コード（正解文字コード）を打ち込むこと等が行われ、さらに、その文字コードと文字画像（手書き文字画像）を対応付ける処理が必要である。もちろんのことながら、印刷された文字画像であっても、対応する文字コードがない場合は、手書き文字画像の場合と同じことを行う必要がある。
なお、この画像処理装置が対象とする文字画像は、印刷された文字画像、手書き文字画像のいずれか又は混在するものであってもよいが、特に手書き文字画像に適している。
【００３１】
文字列設定モジュール１１０は、テキスト受付モジュール１２０、文字認識モジュール１３０と接続されている。文字列設定モジュール１１０は、画像に対して、文字画像が含まれる文字領域を設定する。例えば、対象とする画像（電子文書画像データ）を受け付け、その画像中の文字列に相当する領域（以下、文字領域、文字列画像データともいう）を設定する。ここでの設定処理は、操作者のマウス等の操作によって行うものであってもよいし、既存の技術（例えば、文字・画像分離技術、レイアウト解析技術等）によって設定するものであってもよい。文字列に相当する領域とは、１文字以上の文字画像が含まれている領域であって、横書き、縦書きのいずれであってもよいし、又は混在していてもよい。文字画像とは、文字を表す画像である。また、文字には、ひらがな、カタカナ、漢字、アルファベット、記号等を含み、また、特定の言語を対象としてもよいし、言語を問わず、どのような言語で用いられる文字を対象としてもよい。前述のように、印刷された文字（活字）、手書き文字であってもよい。画像を受け付けるとは、例えば、スキャナ、カメラ等で画像を読み込むこと、ファックス等で通信回線を介して外部機器から画像を受信すること、ハードディスク（コンピュータに内蔵されているものの他に、ネットワークを介して接続されているもの等を含む）等に記憶されている画像を読み出すこと等が含まれる。画像は、２値画像、多値画像（カラー画像を含む）であってもよい。受け付ける画像は、１枚であってもよいし、複数枚であってもよい。また、画像の内容として、ビジネスに用いられる文書、広告宣伝用のパンフレット等であってもよい。
【００３２】
テキスト受付モジュール１２０は、文字列設定モジュール１１０、認識結果選択モジュール１４０と接続されている。テキスト受付モジュール１２０は、画像内の文字領域内にある文字画像についての文字情報を受け付ける。例えば、文字列設定モジュール１１０で設定された文字領域内の文字画像に対応するテキスト情報を受け付ける。文字情報とは、その文字画像を表すテキストコードであり、そのコード体系としては、ＩＳＯ、ＥＵＣ、ＪＩＳ等があるが、いずれであってもよい。また、受け付ける文字情報は、操作者が文字画像を確認して、キーボード等を用いて打ち込んだものであってもよいし、予め用意されたものであってもよい。なお、文字情報には、誤ったものが含まれていてもよい。特に、操作者が打ち込んだものには、誤ったものが混在する可能性がある。
テキスト受付モジュール１２０が１文字分の文字情報を受け付ける都度に、認識結果選択モジュール１４０による処理を行うようにしてもよいし、複数文字分の文字情報を受け付けたならば、認識結果選択モジュール１４０による処理を行うようにしてもよい。
【００３３】
文字認識モジュール１３０は、文字列設定モジュール１１０、認識結果選択モジュール１４０と接続されており、文字切出しモジュール１３２、単文字認識モジュール１３４を有している。文字認識モジュール１３０は、文字領域内の文字画像を文字認識する。例えば、文字列設定モジュール１１０によって設定された文字領域内の文字画像を認識して複数の認識結果候補を出力する。
【００３４】
文字切出しモジュール１３２は、単文字認識モジュール１３４と接続されている。文字切出しモジュール１３２は、文字画像に対して１文字に相当する単文字候補領域を切り出す。例えば、文字列設定モジュール１１０で設定された文字領域内の文字画像から切り出し可能な単文字候補領域を順次切り出す。この切出し処理として、例えば、縦又は横方向に黒画素を射影し、空白地点で領域を切り出すこと、又は一定間隔で領域を切り出すこと等がある。
また、文字切出しモジュール１３２は、文字画像に対して、切り出し可能な複数の単文字候補領域を切り出すようにしてもよい。
【００３５】
単文字認識モジュール１３４は、文字切出しモジュール１３２と接続されている。単文字認識モジュール１３４は、文字切出しモジュール１３２によって切り出された単文字候補領域に対して文字認識を行い、その単文字候補領域に対する複数の認識結果を出力する。例えば、文字切出しモジュール１３２によって切り出された各単文字候補領域を認識して、複数の認識結果候補を出力する。複数の認識結果とは、文字認識処理によって、１つの文字画像に対応する文字情報が複数あることをいう。また、文字切出しモジュール１３２が、複数の単文字候補領域を切り出した場合は、それぞれの単文字候補領域を文字認識したことによって、文字認識結果が複数あることを含めてもよい。
【００３６】
認識結果選択モジュール１４０は、テキスト受付モジュール１２０、文字認識モジュール１３０と接続されている。認識結果選択モジュール１４０は、文字認識モジュール１３０による複数の文字認識結果の中から、テキスト受付モジュール１２０によって受け付けられた文字情報と合致する文字認識結果を選択する。例えば、文字認識モジュール１３０から出力された複数の認識結果候補から１つの認識結果を選択する。
そして、認識結果選択モジュール１４０は、選択した文字情報とその文字情報を認識結果とした文字画像を対応させて、文字認識の学習用データとして出力するようにしてもよい。
また、認識結果選択モジュール１４０は、単文字候補領域に対する複数の認識結果の中から、テキスト受付モジュール１２０によって受け付けられた文字情報における単文字候補領域中の文字に相当するテキスト情報と照合して合致するものを選択するようにしてもよい。
【００３７】
図２は、第１の実施の形態による処理例を示すフローチャートである。
図２の例に示すフローチャートを用いて、第１の実施の形態である画像処理装置における文字画像データと文字コードデータを対応させた出力処理の流れを説明する。なお、以下で説明する処理の流れは１つの文字列に関する処理の流れを説明するものであり、複数の文字列を処理する場合は、以下に説明するステップＳ２０２からステップＳ２１８までの処理を文字列数分だけ繰り返すようにする。
【００３８】
ステップＳ２０２において、文字列設定モジュール１１０は、電子文書画像データ中から文字列ライン（ここで言う文字列ラインとは、文書の１行又は１列の文字列を表す）を抽出して、処理すべき文字列ラインを順次設定する。ここで文字列設定モジュール１１０における文字列の設定方法は、画像処理的な方法で処理すべき文字列を順次設定する方法でもよいし、操作者が自ら指定できるようなユーザーインターフェースを用いた方法でもよい。なお、画像処理的な方法とは、前述の文字・画像分離技術、レイアウト解析技術等を用いて、文字列を抽出し、例えば、横書きの場合は、文字列を囲む矩形の左上座標が、電子文書画像データ内の座標において、左上から下方向に向かうように順序付けすればよい。縦書きの場合は、文字列を囲む矩形の右上座標が、電子文書画像データ内の座標において、右上から左方向に向かうように順序付けすればよい。
【００３９】
ステップＳ２０４において、テキスト受付モジュール１２０は、文字列設定モジュール１１０で設定された文字列に対するテキスト情報を受け付けて、正解文字コード列として出力する。ここでテキスト受付モジュール１２０が受け付けるテキスト情報の入力は、文字列が設定される毎に操作者がその都度テキスト情報を入力するようなユーザーインターフェースを用いた方法でもよいし、あるいは電子文書画像データから抽出した文字列ラインに対して、操作者が予め作成したテキスト情報を読み込むような方法でもよい。
【００４０】
ステップＳ２０６において、文字認識モジュール１３０は、内部カウンターｎを０にセットする。
ステップＳ２０８において、文字認識モジュール１３０の文字切出しモジュール１３２は、文字列設定モジュール１１０で設定された文字列に相当する文字列画像データに対して、ｎ番目の文字の文字切出し処理を行い、文字候補領域を出力する。
【００４１】
図３と図４に示す例は、文字切出しモジュール１３２における文字切り出しの具体的な一例を説明する図である。例えば図３に示すように、「プリプロセッサに」と手書きで記述された文字列画像データが文字切出しモジュール１３２に入力された場合、この文字列画像データに対する文字切出し位置は複数ある。例えば具体的には図４（ａ）、図４（ｂ）、図４（ｃ）に示すような文字切出し位置がある。ここで図４（ａ）、図４（ｂ）、図４（ｃ）中の縦線が文字切出し位置を表す。
文字切出しモジュール１３２では、これら複数の文字切出し位置のうちから１つを選択して文字切出し処理を行う。例えば図４（ａ）に示す文字切出し位置を選択して文字切出し処理を行う。そしてｎ（＝０）番目の文字候補領域として図４（ｄ）の例に示すような単文字候補画像データが出力される。
【００４２】
またステップＳ２０８においては、後述するステップＳ２１２において、ｎ番目の単文字候補画像データの認識結果候補の中にｎ番目の正解文字コードデータと一致するものがない場合に、文字認識モジュール１３０の文字切出しモジュール１３２は、ｎ番目の別の単文字候補画像データを切り出すために、別の文字切出し位置を選択して文字列画像データに対して文字切出し処理を行う。例えば図４（ｂ）に示すような文字切出し位置を選択して文字切出し処理を行う。
【００４３】
ステップＳ２１０において、文字認識モジュール１３０の単文字認識モジュール１３４は、文字切出しモジュール１３２から切り出されたｎ番目の単文字候補画像データに対して文字認識処理を行い、複数の認識結果候補を出力する。例えば、図４（ｄ）に示すような単文字候補画像データを単文字認識モジュール１３４で文字認識を行った場合は、複数の認識結果候補として図５の例に示すようなｕｎｉｃｏｄｅの候補結果を出力する。図５は、単文字認識モジュール１３４による文字認識処理による結果である複数の文字認識候補例を示す説明図である。図５の例は、右側にｕｎｉｃｏｄｅ、左側にそのｕｎｉｃｏｄｅに対応する文字を示している。
【００４４】
ステップＳ２１２において、認識結果選択モジュール１４０は、単文字認識モジュール１３４から出力された認識結果候補の中にｎ番目の正解文字コードデータと一致するものがあるかどうかを判定する。一致するものがある場合（ＹＥＳ）には処理をステップＳ２１４に移し、一致するものがない場合（ＮＯ）には別の文字候補領域を切り出すために処理をステップＳ２０８に移す。
ここで図４と図５に示す例を用いて具体的に説明する。図４（ｄ）の例に示すように文字切出しモジュール１３２で切り出された０番目の単文字候補画像データを単文字認識モジュール１３４で認識して図５の例に示す認識結果候補が得られたので、テキスト受付モジュール１２０で得られた「プリプロセッサに」の正解文字コード列の０番目である「プ」、文字コード０×３０ｄ７（ｕｎｉｃｏｄｅ）と一致する文字コードデータが認識結果候補にあるかどうかを検索することによって調べる。図５の例に示すように、認識結果候補の中に「“プ”  ０×３０ｄ７」の認識結果が存在するので、ここで説明している具体例の場合は、一致するものがあると判定されることになり、処理をステップＳ２１４に移す。
【００４５】
ステップＳ２１４において、認識結果選択モジュール１４０は、正解文字コードデータとそれに相当する単文字候補画像データを正解文字データとして出力する。図４と図５に示す具体例では、０番目の単文字候補画像データの認識結果候補の中に正解文字コード列の０番目である「プ」、文字コード０×３０ｄ７と一致する文字コードデータが存在するので、図６の例に示すような正解文字データを出力する。図６は、認識結果選択モジュール１４０による出力例を示す説明図である。文字画像６１０と文字コード６２０の組み合わせを出力する。そして、この文字画像６１０と文字コード６２０の組み合わせは、前述したように文字認識の学習用データとして用いられる。
【００４６】
ステップＳ２１６において、文字認識モジュール１３０は、内部カウンターｎをインクリメントする（内部カウンターｎに１を加算する）。
ステップＳ２１８において、文字認識モジュール１３０は、内部カウンターｎが正解文字コード数Ｎ以上かどうか判定する。正解文字コード数Ｎとは、ステップＳ２０４で、テキスト受付モジュール１２０が受け付けた文字数である。より正確にいうと、ステップＳ２０２で、文字列設定モジュール１１０によって設定された文字列ライン内の文字画像に対応付けられた文字の文字数である。内部カウンターｎがＮ未満の場合（ＮＯ）は、ステップＳ２０８に処理を移して、ステップＳ２０８からステップＳ２１８の処理を繰り返す。Ｎ以上の場合（ＹＥＳ）は、このフローチャートによる文字列の処理を終了する。
【００４７】
＜第２の実施の形態＞
図７は、第２の実施の形態の構成例についての概念的なモジュール構成図を示している。なお、第１の実施の形態と同種の部位には同一符号を付し重複した説明を省略する。
第２の実施の形態である画像処理装置は、受け付けた文字情報と文字認識結果を照合するものであって、図７の例に示すように、文字列設定モジュール１１０、テキスト受付モジュール１２０、文字認識モジュール１３０、認識結果選択モジュール１４０、単文字候補領域生成モジュール７１０を有している。
【００４８】
文字認識モジュール１３０は、文字列設定モジュール１１０、認識結果選択モジュール１４０、単文字候補領域生成モジュール７１０と接続されており、文字切出しモジュール１３２、単文字認識モジュール１３４を有している。
文字切出しモジュール１３２は、単文字候補領域生成モジュール７１０によって生成された単文字候補領域を対象として切り出す。
単文字認識モジュール１３４は、文字切出しモジュール１３２によって切り出された単文字候補領域に対して文字認識を行うようにしてもよいし、単文字候補領域生成モジュール７１０によって生成された単文字候補領域に対して文字認識を行うようにしてもよい。
【００４９】
単文字候補領域生成モジュール７１０は、文字認識モジュール１３０と接続されている。単文字候補領域生成モジュール７１０は、単文字候補領域を１つ以上の文字構成要素から生成する。例えば、文字切出しモジュール１３２から出力される単文字候補領域とは異なる単文字候補領域を生成する。文字構成要素（以下、準文字成分要素ともいう）とは、４連結又は８連結で連続する画素領域を少なくとも含み、これらの画素領域の集合をも含む。これらの画素領域の集合とは、４連結等で連続した画素領域が複数あり、その複数の画素領域は近傍にあるものをいう。ここで、近傍にあるものとは、例えば、互いの画素領域間の距離が予め定められた距離未満又は以下にある関係をいう。
また、単文字候補領域生成モジュール７１０は、認識結果選択モジュール１４０による処理において、複数の文字認識結果の中に選択すべき文字認識結果がない場合に、新たに単文字候補領域を生成するようにしてもよい。
また、単文字候補領域生成モジュール７１０は、予め定められた個数の文字構成要素を順次追加することで異なる単文字候補領域を生成するようにしてもよい。予め定められた個数は、１以上の整数であり、例えば１である。順次追加する文字構成要素は、既に生成された単文字候補領域に距離が近いものから選択する。
【００５０】
また、単文字候補領域生成モジュール７１０は、認識結果選択モジュール１４０による処理において、複数の文字認識結果の中に選択すべき文字認識結果がなく、かつ、単文字候補領域内の文字構成要素が予め定められた個数以上又はより多い場合、合致する文字認識結果がない旨を通知するようにしてもよい。
【００５１】
図８、図９は、第２の実施の形態による処理例を示すフローチャートである。
図８、図９の例に示すフローチャートを用いて、第２の実施の形態である画像処理装置における文字画像データと文字コードデータを対応させた出力処理の流れを説明する。なお、以下で説明する処理の流れは１つの文字列に関する処理の流れを説明するものであり、複数の文字列を処理する場合は、以下に説明するステップＳ８０２からステップＳ８１８ならびにステップＳ９０２からステップＳ９２０までの処理を文字列数分だけ繰り返すようにする。また図８に示したフローチャートのうち、ステップＳ８０２、ステップＳ８０４、ステップＳ８０６、ステップＳ８１０、ステップＳ８１４、ステップＳ８１６、ステップＳ８１８の各ステップの処理は図２に示したフローチャートの各ステップ（ステップＳ２０２、ステップＳ２０４、ステップＳ２０６、ステップＳ２１０、ステップＳ２１４、ステップＳ２１６、ステップＳ２１８）の処理と同様なので説明は省略する。
【００５２】
図８のステップＳ８０８において、文字切出しモジュール１３２における文字候補領域出力の処理方法は先述した図２におけるステップＳ２０８の処理と同様であり、文字列設定モジュール１１０で設定された文字列に相当する文字列画像データに対して、ｎ番目の文字の文字切出し処理を行い、文字候補領域を出力する。
またさらに、ステップＳ８０８においては、後述するステップＳ９０２からステップＳ９２０にいたる処理において、再設定された文字列に相当する文字列画像データに対して、ｎ番目の文字の文字切出し処理を行い、文字候補領域を出力する。
【００５３】
図８のステップＳ８１２において、認識結果選択モジュール１４０は、単文字認識モジュール１３４から出力された認識結果候補の中にｎ番目の正解文字コードデータと一致するものがあるかどうかを判定する。一致するものがある場合（ＹＥＳ）には処理をステップＳ８１４に移し、一致するものがない場合（ＮＯ）には、本単文字候補領域が後述する準文字成分の一要素だと判断して、別の準文字成分要素と合わせて単文字候補領域を生成するために、処理をステップＳ９０２に移す。なお、本ステップにおける判定処理の詳細は先述の図２のステップＳ２１２における判定処理と同様である。
【００５４】
次に、単文字候補領域生成モジュール７１０における単文字候補領域生成処理の詳細を図９の例で示すフローチャートを用いて詳細に説明する。
図９のステップＳ９０２において、単文字候補領域生成モジュール７１０は、内部カウンターである追加準文字成分数カウンターｍ（追加する準文字成分要素をカウントする変数）に１をセットする。なお、準文字成分要素とは、前述の文字構成要素であり、文字を構成する要素である。例えば図１０（ａ）に示すような単文字領域中のそれぞれの黒画素連結成分要素（ｑｕａｓｉ−ｃｈｒ１、ｑｕａｓｉ−ｃｈｒ２、ｑｕａｓｉ−ｃｈｒ３）や、又は文字切出しモジュール１３２で切り出される最小要素（ｑｕａｓｉ−ｃｈｒ４、ｑｕａｓｉ−ｃｈｒ５）のことを意味する。
【００５５】
ステップＳ９０４において、単文字候補領域生成モジュール７１０は、ｍ個の準文字成分要素を文字列画像データから抽出して、（ｍ＋１）個の準文字成分要素によって構成される単文字候補領域を文字列画像データから抽出して、単文字候補領域を生成する。なお、（ｍ＋１）個における「＋１」とは、ステップＳ８０８で切り出された文字（単文字候補画像データ）を意味する。例えば、図８のステップＳ８１２でｎ番目の正解文字コードデータと一致しなかったｎ番目の単文字候補画像データが図１０（ａ）に示す準文字成分要素ｑｕａｓｉ−ｃｈｒ１であった場合、つまり文字切出しモジュール１３２で準文字成分要素ｑｕａｓｉ−ｃｈｒ１がｎ番目の単文字候補領域として切り出された場合には、本ステップでは、図１１の例に示すような、ｎ番目の単文字候補領域である準文字成分要素ｑｕａｓｉ−ｃｈｒ１に準文字成分要素ｑｕａｓｉ−ｃｈｒ２を加えた、つまり準文字成分数２の単文字候補領域を生成し、単文字認識モジュール１３４に単文字候補画像データとして出力する。
【００５６】
ステップＳ９０６において、単文字認識モジュール１３４は、単文字候補領域生成モジュール７１０から出力された単文字候補画像データに対して文字認識処理を行い、複数の認識結果候補を出力する。図２のステップＳ２１０の場合と同様に、例えば複数の認識結果候補としてｕｎｉｃｏｄｅの候補結果を出力する。
ステップＳ９０８において、認識結果選択モジュール１４０は、再度、単文字認識モジュール１３４から出力された認識結果候補の中にｎ番目の正解文字コードデータと一致するものがあるかどうかを判定する。一致するものがある場合（ＹＥＳ）には処理をステップＳ９１４に移し、一致するものがない場合（ＮＯ）には別の文字候補領域を生成するために処理をステップＳ９１０に移す。例えば図１１に示すような単文字候補画像データの場合は正解文字「に」、正解文字コード０×３０６ｂと一致する文字コードデータが認識結果候補の中にないので、処理をステップＳ９１０に移して再度文字候補領域の生成処理を行う。
【００５７】
ステップＳ９１０において、単文字候補領域生成モジュール７１０は、追加準文字成分数カウンターｍが予め定められた最大準文字成分数Ｍ以上か否かを判定する。追加準文字成分数カウンターｍが最大準文字成分数Ｍ未満の場合（ＮＯ）は、ステップＳ９１２において、追加準文字成分数カウンターｍをインクリメントして、処理をステップＳ９０４に移し、新たに単文字候補領域を再生成する。追加準文字成分数カウンターｍが予め定められた最大準文字成分数Ｍ以上の場合（ＹＥＳ）は、処理をステップＳ９１８に移す。
【００５８】
ここで、図１１、図１２の例を用いて単文字候補領域の再生成処理を具体的に説明すると、図１１に示す例では準文字成分要素ｑｕａｓｉ−ｃｈｒ１とｑｕａｓｉ−ｃｈｒ２で生成された単文字候補領域であったので、さらに１つ準文字成分要素ｑｕａｓｉ−ｃｈｒ３を加えて図１２の例に示すような単文字候補領域を新たに生成する。
ステップＳ９１４において、認識結果選択モジュール１４０は、図２のステップＳ２１４と同様に、正解文字コードデータとそれに相当する単文字候補画像データを正解文字データとして出力する。
ステップＳ９１６において、文字列設定モジュール１１０は、（追加準文字成分数カウンターｍ＋１）個数分の準文字成分要素までを除いた文字列を再設定する。
【００５９】
ステップＳ９１８において、追加準文字成分数カウンターｍが予め定められた最大準文字成分数Ｍ以上の場合は、追加準文字成分数ｍ＝１から予め定められた最大準文字成分数Ｍ個の準文字成分要素を加えて、順次単文字候補領域生成を行っても、単文字認識モジュール１３４での認識結果候補の中にｎ番目の正解文字コードデータと一致する文字コードデータがなかったことを意味する。この場合は、以下のことが原因である。
（１）認識対象となる単文字候補領域中の文字画像が、単文字認識モジュール１３４で認識可能な最低文字品質以下（例えば、手書き文字画像データなどで非常に字が汚い、崩し字などの場合、文字要素以外のノイズが非常に多い場合など）。
（２）認識対象となる単文字候補領域中の文字画像に対して、テキスト受付モジュール１２０で操作者が打ち込んだテキスト情報が間違っている場合。
したがって、ステップＳ９１８において、単文字候補領域生成モジュール７１０は、追加準文字成分数カウンターｍを０にセットし、さらに第２の実施の形態である画像処理装置は、ｎ番目の正解文字コードデータと一致する単文字候補領域が生成できなかったことを操作者に通知し、処理を図９のステップＳ９１６に移す。
【００６０】
ここで操作者への通知は、例えば図８のステップＳ８０４で操作者が打ち込んだテキスト情報のｎ番目の文字（一致しない文字）を反転表示する、矩形枠で囲む、又はポップアップ機能を利用するなどのユーザーインターフェースを用いた方法や、一致する単文字候補領域を生成できなかったテキスト情報（打ち込まれた文字、その文字コードデータ）をディスプレイ等の出力装置上やログファイルなどに出力する方法などがある。また、正解文字コード情報の再入力や修正を促すようにしてもよい。
ステップＳ９２０において、文字認識モジュール１３０は、内部カウンターｎをインクリメントし、処理を図８のステップＳ８０８に返す。
【００６１】
図１３を参照して、本実施の形態の画像処理装置のハードウェア構成例について説明する。図１３に示す構成は、例えばパーソナルコンピュータ（ＰＣ）などによって構成されるものであり、スキャナ等のデータ読み取り部１３１７と、プリンタなどのデータ出力部１３１８を備えたハードウェア構成例を示している。
【００６２】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１３０１は、前述の実施の形態において説明した各種のモジュール、すなわち、テキスト受付モジュール１２０、文字認識モジュール１３０、文字切出しモジュール１３２、単文字認識モジュール１３４、認識結果選択モジュール１４０、単文字候補領域生成モジュール７１０等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
【００６３】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１３０２は、ＣＰＵ１３０１が使用するプログラムや演算パラメータ等を格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３０３は、ＣＰＵ１３０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはＣＰＵバスなどから構成されるホストバス１３０４により相互に接続されている。
【００６４】
ホストバス１３０４は、ブリッジ１３０５を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス１３０６に接続されている。
【００６５】
キーボード１３０８、マウス等のポインティングデバイス１３０９は、操作者により操作される入力デバイスである。ディスプレイ１３１０は、液晶表示装置又はＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）などがあり、各種情報をテキストやイメージ情報として表示する。
【００６６】
ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１３１１は、ハードディスクを内蔵し、ハードディスクを駆動し、ＣＰＵ１３０１によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、画像データ、文字認識結果、テキスト受付モジュール１２０が受け付けた文字コードなどが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
【００６７】
ドライブ１３１２は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体１３１３に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インターフェース１３０７、外部バス１３０６、ブリッジ１３０５、及びホストバス１３０４を介して接続されているＲＡＭ１３０３に供給する。リムーバブル記録媒体１３１３も、ハードディスクと同様のデータ記録領域として利用可能である。
【００６８】
接続ポート１３１４は、外部接続機器１３１５を接続するポートであり、ＵＳＢ、ＩＥＥＥ１３９４等の接続部を持つ。接続ポート１３１４は、インターフェース１３０７、及び外部バス１３０６、ブリッジ１３０５、ホストバス１３０４等を介してＣＰＵ１３０１等に接続されている。通信部１３１６は、通信回線に接続され、外部とのデータ通信処理を実行する。データ読み取り部１３１７は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部１３１８は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
【００６９】
なお、図１３に示す画像処理装置のハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１３に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えば特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：ＡＳＩＣ）等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１３に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００７０】
また、前述の実施の形態の説明において、予め定められた値との比較において、「以上」、「以下」、「より大きい」、「より小さい（未満）」としたものは、その組み合わせに矛盾が生じない限り、それぞれ「より大きい」、「より小さい（未満）」、「以上」、「以下」としてもよい。
【００７１】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標））、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００７２】
１１０…文字列設定モジュール
１２０…テキスト受付モジュール
１３０…文字認識モジュール
１３２…文字切出しモジュール
１３４…単文字認識モジュール
１４０…認識結果選択モジュール
７１０…単文字候補領域生成モジュール
【図１】
2013238999.tif 000003
【図２】
2013238999.tif 000004
【図３】
2013238999.tif 000005
【図４】
2013238999.tif 000006
【図５】
2013238999.tif 000007
【図６】
2013238999.tif 000008
【図７】
2013238999.tif 000009
【図８】
2013238999.tif 000010
【図９】
2013238999.tif 000011
【図１０】
2013238999.tif 000012
【図１１】
2013238999.tif 000013
【図１２】
2013238999.tif 000014
【図１３】
2013238999.tif 000015