(57)【特許請求の範囲】
【請求項１】
原稿に形成された画像の画像情報を取得する取得手段と、
前記取得手段により取得された前記画像情報から、前記原稿上にて指定された領域である指定領域を拡張した拡張領域内に存在する文字を認識し、認識した文字の少なくとも１つが当該指定領域内に含まれるように当該指定領域を拡張することなく移動させる移動手段と、
前記移動手段による移動後の前記指定領域内に含まれる文字の情報を出力する出力手段と
を備える情報処理装置。
【請求項２】
前記移動手段は、移動後の前記指定領域内に途切れた文字が含まれないように、当該指定領域を移動させること
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記移動手段は、移動後の前記指定領域内に途切れた文字が含まれないように当該指定領域を移動させる場合に、当該指定領域の移動量が最も小さくなるようにすること
を特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記指定領域は矩形であり、また、前記拡張領域にて認識された文字には、当該文字を囲む矩形である文字矩形が文字毎に設定され、
前記移動手段は、前記指定領域の四隅のうちのいずれか１つの第１の隅を、当該第１の隅に対応する各文字矩形の隅の中で当該第１の隅から最も近い第２の隅に合わせるように、当該指定領域を移動させること
を特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記移動手段は、前記指定領域の移動において、当該指定領域の四隅のそれぞれを、各文字矩形の隅に順番に移動させて、移動後の当該指定領域内に途切れた文字が含まれるか否かを判定すること
を特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記移動手段は、原稿内に前記指定領域が複数ある場合に、それぞれの当該指定領域を拡張した拡張領域内の文字を認識し、認識した文字の少なくとも１つが各指定領域内に含まれるとともに各指定領域の移動量の差が予め定められた範囲内になるように、複数の当該指定領域を移動させること
を特徴とする請求項１に記載の情報処理装置。
【請求項７】
原稿に形成された画像を読み取る画像読み取り手段と、
前記画像読み取り手段により得られた画像情報から、前記原稿上にて指定された領域である指定領域を拡張した拡張領域内に存在する文字を認識し、認識した文字の少なくとも１つが当該指定領域内に含まれるように当該指定領域を拡張することなく移動させる移動手段と、
前記移動手段による移動後の前記指定領域内に含まれる文字の情報を出力する出力手段と
を備える画像読み取り装置。
【請求項８】
コンピュータに、
原稿に形成された画像の画像情報を取得する機能と、
取得された前記画像情報から、前記原稿上にて指定された領域である指定領域を拡張した拡張領域内に存在する文字を認識し、認識した文字の少なくとも１つが当該指定領域内に含まれるように当該指定領域を拡張することなく移動させる機能と、
移動後の前記指定領域内に含まれる文字の情報を出力する機能と
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、画像読み取り装置及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、部分画像切り出しによる文字切れによる誤認識を補正し、妥当なＯＣＲ（Optical Character Recognition）出力をインデックスデータとして採用する処理を備える画像入力装置が開示されている。この画像入力装置は、スキャン入力した画像の部分領域を切り出し、その部分領域画像に対し、１回目のＯＣＲ処理と次に自動的に部分領域を拡張し２回目のＯＣＲ処理を実行し、「第１のＯＣＲ結果」と「第２のＯＣＲ結果」とを比較してインデックスデータを取得することが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−４０５９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
例えば光学文字認識の技術であるＯＣＲの処理により、原稿上で指定された領域内に含まれる文字を認識する場合がある。その際、例えば原稿を出力する際のプリントずれや原稿を読み取って（スキャンして）電子化する際のスキャンずれ等の位置ずれが発生したために、文字認識に失敗してしまう場合がある。このような場合に、文字認識を行う領域を単純に拡張するだけでは、不要な文字を抽出してしまう可能性がある。
本発明は、原稿上で指定された指定領域内の文字の情報を取得する場合に、指定領域を移動させずに、指定領域を拡張した拡張領域での文字認識の結果を採用する構成と比較して、不要な文字を抽出する可能性を低減させることを目的とする。
【課題を解決するための手段】
【０００５】
請求項１に記載の発明は、原稿に形成された画像の画像情報を取得する取得手段と、前記取得手段により取得された前記画像情報から、前記原稿上にて指定された領域である指定領域を拡張した拡張領域内に存在する文字を認識し、認識した文字の少なくとも１つが当該指定領域内に含まれるように当該指定領域を拡張することなく移動させる移動手段と、前記移動手段による移動後の前記指定領域内に含まれる文字の情報を出力する出力手段とを備える情報処理装置である。
請求項２に記載の発明は、前記移動手段は、移動後の前記指定領域内に途切れた文字が含まれないように、当該指定領域を移動させることを特徴とする請求項１に記載の情報処理装置である。
請求項３に記載の発明は、前記移動手段は、移動後の前記指定領域内に途切れた文字が含まれないように当該指定領域を移動させる場合に、当該指定領域の移動量が最も小さくなるようにすることを特徴とする請求項２に記載の情報処理装置である。
請求項４に記載の発明は、前記指定領域は矩形であり、また、前記拡張領域にて認識された文字には、当該文字を囲む矩形である文字矩形が文字毎に設定され、前記移動手段は、前記指定領域の四隅のうちのいずれか１つの第１の隅を、当該第１の隅に対応する各文字矩形の隅の中で当該第１の隅から最も近い第２の隅に合わせるように、当該指定領域を移動させることを特徴とする請求項１に記載の情報処理装置である。
請求項５に記載の発明は、前記移動手段は、前記指定領域の移動において、当該指定領域の四隅のそれぞれを、各文字矩形の隅に順番に移動させて、移動後の当該指定領域内に途切れた文字が含まれるか否かを判定することを特徴とする請求項４に記載の情報処理装置である。
請求項６に記載の発明は、前記移動手段は、原稿内に前記指定領域が複数ある場合に、それぞれの当該指定領域を拡張した拡張領域内の文字を認識し、認識した文字の少なくとも１つが各指定領域内に含まれるとともに各指定領域の移動量の差が予め定められた範囲内になるように、複数の当該指定領域を移動させることを特徴とする請求項１に記載の情報処理装置である。
請求項７に記載の発明は、原稿に形成された画像を読み取る画像読み取り手段と、前記画像読み取り手段により得られた画像情報から、前記原稿上にて指定された領域である指定領域を拡張した拡張領域内に存在する文字を認識し、認識した文字の少なくとも１つが当該指定領域内に含まれるように当該指定領域を拡張することなく移動させる移動手段と、前記移動手段による移動後の前記指定領域内に含まれる文字の情報を出力する出力手段とを備える画像読み取り装置である。
請求項８に記載の発明は、コンピュータに、原稿に形成された画像の画像情報を取得する機能と、取得された前記画像情報から、前記原稿上にて指定された領域である指定領域を拡張した拡張領域内に存在する文字を認識し、認識した文字の少なくとも１つが当該指定領域内に含まれるように当該指定領域を拡張することなく移動させる機能と、移動後の前記指定領域内に含まれる文字の情報を出力する機能とを実現させるためのプログラムである。
【発明の効果】
【０００６】
請求項１記載の発明によれば、原稿上で指定された指定領域内の文字の情報を取得する場合に、指定領域を移動せずに、指定領域を拡張した拡張領域での文字認識の結果を採用する構成と比較して、不要な文字を抽出する可能性を低減させることができる。
請求項２記載の発明によれば、指定領域内に途切れた文字が含まれないように、指定領域の位置を調整することができる。
請求項３記載の発明によれば、指定領域内に途切れた文字が含まれないようにするとともに、指定領域の移動量が最も小さくなるように指定領域の位置を調整することができる。
請求項４記載の発明によれば、指定領域の第１の隅に対応する文字矩形の隅の中で、第１の隅から最も近い第２の隅を有する文字が含まれるように、指定領域の位置を調整することができる。
請求項５記載の発明によれば、より確実に、指定領域内に途切れた文字が含まれないように、指定領域の位置を調整することができる。
請求項６記載の発明によれば、指定領域の移動に際して１つの指定領域の情報のみを用いる構成と比較して、指定領域内の文字の情報をより正確に取得することができる。
請求項７記載の発明によれば、原稿上で指定された指定領域内の文字の情報を取得する場合に、指定領域を移動させずに、指定領域を拡張した拡張領域での文字認識の結果を採用する構成と比較して、不要な文字を抽出する可能性を低減させることができる。
請求項８記載の発明によれば、原稿上で指定された指定領域内の文字の情報を取得する場合に、指定領域を移動させずに、指定領域を拡張した拡張領域での文字認識の結果を採用する構成と比較して、不要な文字を抽出する可能性を低減させる機能を、コンピュータにより実現できる。
【図面の簡単な説明】
【０００７】
【図１】本発明の実施の形態が適用される画像処理装置のハードウェア構成例を示した図である。
【図２】（ａ）、（ｂ）は、指定領域にて文字認識を行う際に失敗する場合の一例を説明するための図である。
【図３】本実施の形態に係る画像処理装置が有する制御部の機能構成例を示したブロック図である。
【図４】制御部にて指定領域内の文字を特定する処理の具体例を説明するための図である。
【図５】（ａ）〜（ｃ）は、制御部にて指定領域内の文字を特定する処理の具体例を説明するための図である。
【図６】（ａ）〜（ｃ）は、移動後の指定領域内に途切れた文字が含まれる場合の一例を説明するための図である。
【図７】実施の形態１において、移動後の指定領域内に存在する文字を特定する処理の手順の一例を示すフローチャートである。
【図８】実施の形態１において、移動後の指定領域内に存在する文字を特定する処理の手順の一例を示すフローチャートである。
【図９】（ａ）、（ｂ）は、１枚の原稿内に複数の指定領域が設けられている場合の一例を説明するための図である。
【図１０】（ａ）〜（ｃ）は、複数の指定領域が設けられている場合の処理の具体例を説明するための図である。
【図１１】実施の形態２において、移動後の指定領域内に存在する文字を特定する処理の手順の一例を示すフローチャートである。
【図１２】実施の形態２において、移動後の指定領域内に存在する文字を特定する処理の手順の一例を示すフローチャートである。
【図１３】実施の形態２において、移動後の指定領域内に存在する文字を特定する処理の手順の一例を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
[実施の形態１]
＜画像処理装置のハードウェア構成＞
まず、本発明の実施の形態が適用される画像処理装置１のハードウェア構成について説明する。図１は、本発明の実施の形態が適用される画像処理装置１のハードウェア構成例を示した図である。画像読み取り装置の一例としての画像処理装置１は、例えば、スキャン機能、プリント機能、コピー機能及びファクシミリ機能等の画像処理機能を備えた装置である。図１に示すように、画像処理装置１は、制御部１０、操作部１０４、表示機構１０５、画像読み取り部１０６、画像形成部１０７、画像処理部１０８、通信部１０９、記憶装置１１０を備える。なお、これらの各機能部は、バス１１１に接続されており、このバス１１１を介してデータの授受を行う。
【０００９】
制御部１０は、画像処理装置１の各部を制御する。制御部１０は、ＣＰＵ（Central Processing Unit）１０１、ＲＯＭ（Read Only Memory）１０２、ＲＡＭ（Random Access Memory）１０３により構成される。
ここで、ＣＰＵ１０１は、ＯＳ（Operating System）やアプリケーション等の各種プログラムを実行する。また、ＲＯＭ１０２は、ＣＰＵ１０１により実行される制御プログラムを記憶するメモリである。ＲＡＭ１０３は、ＣＰＵ１０１の作業用メモリ等として用いられるメモリである。そして、ＣＰＵ１０１は、ＲＯＭ１０２に記憶されている制御プログラムを読み出し、ＲＡＭ１０３を作業エリアにして制御プログラムを実行する。ＣＰＵ１０１により制御プログラムが実行されると、画像処理装置１における各機能が実現される。
【００１０】
操作部１０４は、ユーザの操作を受け付ける。操作部１０４は、例えば、ハードウェアキーにより構成される。また、操作部１０４は、例えば、接触された位置に応じた制御信号を出力するタッチパネルにより構成される。接触を検知する手段としては、接触による圧力をもとに検知する手段や、接触した物の静電気をもとに検知する手段等、どのようなものが用いられても良い。
【００１１】
表示機構１０５は、例えば液晶ディスプレイにより構成され、画像処理装置１に関するデータを表示する。表示機構１０５は、例えば、ユーザが画像処理装置１を操作する際にユーザが参照する画面を表示する。
【００１２】
画像読み取り手段の一例としての画像読み取り部１０６は、原稿上に形成されている画像を読み取り、読み取った画像を示す画像データ（画像情報）を生成する。ここで、画像読み取り部１０６は、例えばスキャナであり、光源から原稿に照射した光に対する反射光をレンズで縮小してＣＣＤ（Charge Coupled Devices）で受光するＣＣＤ方式や、ＬＥＤ光源から原稿に順に照射した光に対する反射光をＣＩＳ（Contact Image Sensor）で受光するＣＩＳ方式のものを用いると良い。
【００１３】
画像形成部１０７は、用紙等の記録媒体に画像を形成する印刷機構を備えている。ここで、画像形成部１０７は、例えばプリンタであり、感光体に付着させたトナーを記録媒体に転写して像を形成する電子写真方式や、インクを記録媒体上に吐出して像を形成するインクジェット方式のものを用いると良い。
【００１４】
画像処理部１０８は、画像データが表す画像に色補正や階調補正等の画像処理を施す。
【００１５】
通信部１０９は、不図示の通信回線に接続されており、通信回線に接続されている他の装置との間で各種データの送受信を行う通信インタフェースとして機能する。例えば、通信部１０９を介して、他の装置との間で画像データの送受信が行われる。
【００１６】
記憶装置１１０は、ハードディスク装置などの記憶領域を具備しており、例えば通信部１０９で受信したデータや画像処理装置１で生成されたデータ等を記憶する。
【００１７】
ここで、本実施の形態に係る画像処理装置１は、画像読み取り部１０６にて原稿上の画像を読み取って生成された画像データに対して、例えばＯＣＲの処理を行って文字認識を行う。ＯＣＲとは、画像データ上にある文字を解析し、コンピュータで扱われる文字データに変換する技術である。ここで、例えば、氏名や企業名、日付、原稿のタイトルなど、原稿に記載されている特定の文字を認識して、認識した文字の情報により原稿を管理する場合がある。その際には、原稿に記載されている特定の文字を認識するために、原稿の一部の領域が予め指定され、指定された領域内で文字認識が行われる。このような場合に、プリントずれやスキャンずれ等の位置ずれにより、同じ原稿であっても文字位置が変わってしまい、指定された領域内の文字を正確に認識できず文字認識に失敗してしまうことがある。
【００１８】
以下の説明では、原稿上の文字を認識するための領域として予め指定された、原稿内の一部の領域を、「指定領域」と称することとする。この指定領域は、原稿の種類や認識対象の文字などに応じて、ユーザ等により事前に設定されるものである。また、以下では、指定領域は矩形であるものとして説明を行う。
【００１９】
図２（ａ）、（ｂ）は、指定領域にて文字認識を行う際に失敗する場合の一例を説明するための図である。
まず、図２（ａ）に示す例は、プリントずれやスキャンずれ等の位置ずれが発生していない原稿の画像（画像読み取り部１０６にて生成された画像データ）を示している。また、原稿に対しては、指定領域２１が予め定められている。そして、指定領域２１にて文字認識が行われることにより、３つの文字（図示の例では、「○○○」と記載）が認識される。
一方、図２（ｂ）に示す例は、プリントずれやスキャンずれ等の位置ずれが発生した原稿の画像を示している、ここで、位置ずれにより、指定領域２１からは３つの文字が外れている。その結果、指定領域２１における文字認識は失敗し、正確に文字が認識されない。
【００２０】
そこで、以下では、文字認識の対象とする原稿にて位置ずれが発生していたとしても、指定領域内の文字をより正確に認識する手順について説明する。詳細は後述するが、本実施の形態に係る画像処理装置１は、まず、指定領域を少し拡張した領域（以下、拡張領域と称する）に対して文字認識を行う。そして、画像処理装置１は、拡張領域にて認識された文字の位置と指定領域の位置とに基づいて、位置ずれが生じていない場合に指定領域内で認識されるはずの文字を特定する。なお、文字認識では、例えば、文字、数字、記号、マーク等が認識されるが、以下では、単に「文字」と呼ぶこととする。
【００２１】
＜制御部の機能構成＞
次に、本実施の形態に係る画像処理装置１が有する制御部１０の機能構成について説明する。図３は、本実施の形態に係る画像処理装置１が有する制御部１０の機能構成例を示したブロック図である。
画像処理装置１の制御部１０は、画像読み取り部１０６にて原稿上の画像を読み取って生成された画像データを取得する画像データ取得部１１と、取得した画像データをもとに、指定領域を拡張した拡張領域に対して文字認識を行う文字認識部１２と、認識された文字の位置と指定領域の位置とに基づいて指定領域を移動させて、移動後の指定領域内に存在する文字を特定する文字特定部１３とを備える。
【００２２】
画像データ取得部１１は、画像読み取り部１０６にて原稿上の画像を読み取って生成された画像データを取得する。
【００２３】
文字認識部１２は、画像データ取得部１１が取得した画像データをもとに、指定領域を少し拡張した拡張領域に対して文字認識を行う。具体的には、文字認識部１２は、位置ずれにより指定領域内に収まっていない周囲の文字を認識するために、指定領域を例えば２倍に拡張した拡張領域にて文字認識を行う。ここで、指定領域をどれくらいの大きさに拡張するかを示す条件については、ユーザ等により予め設定されているものとする。
【００２４】
文字特定部１３は、文字認識部１２により拡張領域にて認識された文字の情報を取得し、認識された文字の位置と指定領域の位置とに基づいて、指定領域の位置を調整する。ここで、文字特定部１３は、拡張領域にて認識された文字の少なくとも１つが指定領域内に含まれるように、指定領域を移動させる。
【００２５】
さらに説明すると、文字特定部１３は、まず、拡張領域にて認識された文字のそれぞれについて、文字を囲む矩形（以下、文字矩形と称する）の位置情報を取得する。また、文字特定部１３は、矩形である指定領域の位置情報も取得する。次に、文字特定部１３は、各文字矩形の位置情報と指定領域の位置情報とを比較する。そして、文字特定部１３は、指定領域の矩形の四隅（４つの頂点）のうちのいずれか１つの隅を選択して、選択した隅をいずれかの文字矩形の隅に合わせるように指定領域を移動させて、指定領域内に文字が収まるようにする。
文字特定部１３は、指定領域を移動させると、移動後の指定領域内に含まれる文字を特定し、特定した文字の情報を文字認識の結果として出力する。
【００２６】
なお、図３に示す制御部１０を構成する各機能部は、ソフトウェアとハードウェア資源とが協働することにより実現される。具体的には、ＣＰＵ１０１が、画像データ取得部１１、文字認識部１２、文字特定部１３等を実現するプログラムを、例えばＲＯＭ１０２からＲＡＭ１０３に読み込んで実行することにより、これらの機能部が実現される。
【００２７】
また、本実施の形態において、画像データ取得部１１は、取得手段の一例としての機能を有している。文字認識部１２及び文字特定部１３は、移動手段の一例としての機能を有している。また、文字特定部１３は、出力手段の一例としての機能も有している。そして、制御部１０は、情報処理装置の一例として捉えることができる。
【００２８】
＜指定領域内の文字を特定する処理の具体例＞
次に、制御部１０にて指定領域内の文字を特定する処理について、具体例を示して説明する。図４及び図５（ａ）〜（ｃ）は、制御部１０にて指定領域内の文字を特定する処理の具体例を説明するための図である。
【００２９】
まず、図４に示す原稿２２は、画像読み取り部１０６が原稿上の画像を読み取って生成した画像データを示している。原稿２２では、矩形の指定領域２３が定められている。ここで、文字認識部１２は、指定領域２３を拡張した拡張領域２４において文字認識を行う。図示の例では、拡張領域２４は、指定領域２３を矢印の方向に拡張した領域である。
【００３０】
文字認識部１２は、文字認識を行うにあたり、文字認識の対象とする原稿の全体において、画素をもとにした直交座標系を考える。図示の例では、原稿２２の左上の隅を原点Ｏ（０，０）とし、原稿の横方向の座標をｘ座標、原稿の縦方向の座標をｙ座標としている。指定領域２３の位置を表す座標は予め定められているため、文字認識部１２は、原稿２２における指定領域２３の位置を特定し、特定した指定領域２３を拡張した拡張領域２４を設定する。そして、文字認識部１２は、拡張領域２４において文字認識を行う。
【００３１】
次に、図５（ａ）〜（ｃ）を参照しながら、文字特定部１３が指定領域を移動させて、移動後の指定領域内に存在する文字を特定する手順について説明する。まず、文字認識部１２により、図４に示す拡張領域２４において、「あ」、「い」、「う」、「え」の４つの文字が認識されたものとする。
【００３２】
ここで、文字特定部１３は、まず、認識された文字を囲む文字矩形の位置情報（座標情報）を取得する。図５（ａ）に示す例では、文字特定部１３は、「あ」、「い」、「う」、「え」のそれぞれの文字矩形の位置情報を取得する。また、文字特定部１３は、指定領域２３の位置情報（座標情報）も取得する。
【００３３】
図示の例では、「あ」の文字矩形の左上の隅の座標（ｘ，ｙ）を（０，０）として、他の位置の座標を示している。例えば、「あ」の文字矩形の右上の隅の座標は（１０，０）、左下の隅の座標は（０，１０）、右下の隅の座標は（１０，１０）である。また、「い」の文字矩形の左上の隅の座標は（１１，０）、右上の隅の座標は（２１，０）、左下の隅の座標は（１１，１０）、右下の隅の座標は（２１，１０）である。さらに、「う」の文字矩形の左上の隅の座標は（２２，０）、右上の隅の座標は（３２，０）、左下の隅の座標は（２２，１０）、右下の隅の座標は（３２，１０）である。
また、指定領域２３の左上の隅の座標は（１２，１）、右上の隅の座標は（３３，１）、左下の隅の座標は（１２，１１）、右下の隅の座標は（３３，１１）である。
【００３４】
次に、文字特定部１３は、指定領域２３内に文字が収まるように、指定領域２３の位置を調整する。ここで、文字特定部１３は各文字矩形の座標情報と指定領域２３の座標情報とを比較して、指定領域２３から最も近い文字が指定領域２３内に収まるように、指定領域２３を移動させる。
図示の例では、まず、文字特定部１３は、指定領域２３の矩形の四隅のうちの「左上の隅」を選択する。そして、文字特定部１３は、選択した指定領域２３の「左上の隅」を、各文字矩形の対応する隅（「左上の隅」）の中で最も近い隅に合わせるように、指定領域２３を移動させる。付言すると、指定領域２３と文字矩形とは両者とも矩形であるため、指定領域２３の「左上の隅」と、各文字矩形の「左上の隅」とは対応していると捉えることができる。
【００３５】
さらに説明すると、指定領域２３の左上の隅の座標は（１２，１）である。また、「あ」の文字矩形の左上の隅の座標は（０，０）、「い」の文字矩形の左上の隅の座標は（１１，０）、「う」の文字矩形の左上の隅の座標は（２２，０）である。ここで、指定領域２３の左上の隅（１２，１）を（０，０）へ移動する場合の移動量は、左に「１２」、上に「１」である。指定領域２３の左上の隅（１２，１）を（１１，０）へ移動する場合の移動量は、左に「１」、上に「１」である。指定領域２３の左上の隅（１２，１）を（２２，０）へ移動する場合の移動量は、右に「１０」、上に「１」である。
そのため、指定領域２３の左上の隅（１２，１）に最も近い文字矩形の左上座標は、（１１，０）である。そこで、文字特定部１３は、図５（ｂ）に示すように、指定領域２３を矢印の方向に移動させる。
【００３６】
その結果、図５（ｃ）に示すように、移動後の指定領域２３内には、「い」、「う」の文字が存在することになる。文字特定部１３は、「い」、「う」の文字情報を、文字認識の結果として出力する。
付言すると、ここでは、指定領域２３の左上の隅を、第１の隅の一例として用いている。また、「い」の文字矩形の左上の隅を、第２の隅の一例として用いている。
【００３７】
なお、図５に示す例では、指定領域２３の左上の隅を、「い」の文字矩形の左上の隅に合わせることとしたが、指定領域２３の左上の隅を、例えば「い」の文字矩形の左下の隅に合わせた場合、移動後の指定領域２３内に「い」の文字は含まれない。同様に、指定領域２３の左上の隅を、例えば「い」の文字矩形の右上の隅または右下の隅に合わせた場合、移動後の指定領域２３内に「い」の文字は含まれない。即ち、指定領域２３の左上の隅を移動させる場合、移動後の指定領域２３内に「い」の文字を収めるためには、「い」の文字矩形の左上の隅に合わせる必要がある。
【００３８】
また、図５に示す例では、指定領域２３の四隅のうちの「左上の隅」について言及したが、指定領域２３を移動させる処理としてはこのような構成に限られるものではない。例えば、指定領域２３の「右上の隅」を、各文字矩形の「右上の隅」の中で最も近い「右上の隅」に合わせても良い。また、例えば、指定領域２３の「左下の隅」を、各文字矩形の「左下の隅」の中で最も近い「左下の隅」に合わせても良い。
【００３９】
ここで、指定領域は、特定の文字を認識するためにユーザ等により事前に設定されるものである。設定に際しては、指定領域内に含まれる文字が途切れることのないように、指定領域の位置や大きさを事前に設定しておくことも可能である。具体的には、図５に示す例では、移動後の指定領域２３内に「い」、「う」の文字が途切れることなく文字全体が含まれている。言い換えると、移動後の指定領域２３内に途切れた文字が含まれないようにするとともに、指定領域２３の移動量が最も小さくなるように、指定領域２３の移動が行われている。
【００４０】
しかし、位置ずれの状況によっては、移動量が小さくなるように指定領域を移動させた結果、移動後の指定領域内に途切れた文字が含まれてしまう場合もあり得る。本実施の形態では、このような場合に、移動後の指定領域の位置に誤りがあると判定することとしても良い。言い換えると、文字特定部１３は、移動後の指定領域内に途切れた文字が含まれないように、指定領域を移動させることとしても良い。
【００４１】
図６（ａ）〜（ｃ）は、移動後の指定領域内に途切れた文字が含まれる場合の一例を説明するための図である。
まず、図６（ａ）に示すように、文字認識部１２により、「あ」、「い」、「う」の３つの文字が認識されたとする。ここで、「あ」の文字矩形の左上の隅の座標（ｘ，ｙ）は（０，０）、右上の隅の座標は（１０，０）、左下の隅の座標は（０，１０）、右下の隅の座標は（１０，１０）である。また、「い」の文字矩形の左上の隅の座標は（１０，０）、右上の隅の座標は（２０，０）、左下の隅の座標は（１０，１０）、右下の隅の座標は（２０，１０）である。さらに、「う」の文字矩形の左上の隅の座標は（２４，０）、右上の隅の座標は（３４，０）、左下の隅の座標は（２４，１０）、右下の隅の座標は（３４，１０）である。
また、指定領域２５の左上の隅の座標は（６，２）、右上の隅の座標は（２６，２）、左下の隅の座標は（６，１２）、右下の隅の座標は（２６，１２）である。
【００４２】
ここで、指定領域２５の「左上の隅」を、各文字矩形の「左上の隅」の中で最も近い「左上の隅」に合わせる場合、図６（ｂ）に示すように、指定領域２５の「左上の隅」は、「い」の文字矩形の「左上の隅」に移動する。その結果、移動後の指定領域２５内では、「う」の文字が途切れてしまうことになる。
一方で、指定領域２５の「左上の隅」を、２番目に近い「左上の隅」に合わせる場合、図６（ｃ）に示すように、指定領域２５の「左上の隅」は、「あ」の文字矩形の「左上の隅」に移動する。その結果、移動後の指定領域２５内には、「あ」、「い」の文字全体が含まれることになり、途切れた文字は存在しない。
【００４３】
このように、移動量が小さくなるように指定領域を移動させた結果、移動後の指定領域内に途切れた文字が含まれてしまう場合がある。付言すると、本実施の形態では、指定領域を移動させる場合の条件として、「指定領域の移動量が小さいこと」、「移動後の指定領域内に途切れた文字が含まれないこと」の２つが挙げられる。
【００４４】
本実施の形態では、これら２つの条件のどちらを優先させるかにより、移動後の指定領域の位置が変わることになる。「指定領域の移動量が小さいこと」を優先させる場合には、移動後の指定領域内に途切れた文字が含まれていたとしても、移動が誤りとは判定されない。例えば、図６（ｂ）の場合には、指定領域内に文字全体が含まれる「い」の情報が文字認識の結果として出力される。一方、「移動後の指定領域内に途切れた文字が含まれないこと」を優先させる場合には、図６（ｃ）に示すように、指定領域内に途切れた文字が含まれない移動先の中で、最も移動量の小さいものが選ばれることになる。
【００４５】
なお、図６に示す例では、指定領域２５の「左上の隅」を、各文字矩形の「左上の隅」の中で最も近い「左上の隅」に合わせる場合、「い」の文字矩形の左上の隅に移動する。一方、指定領域２５の「右上の隅」を、各文字矩形の「右上の隅」の中で最も近い「右上の隅」に合わせる場合、図６（ｃ）に示すように、指定領域２５の「右上の隅」は、「い」の文字矩形の「右上の隅」に移動する。即ち、指定領域２５の矩形の四隅のうちのどの隅を移動させるかにより、指定領域２５の移動先が変わることになる。
【００４６】
そこで、文字特定部１３は、指定領域２５の四隅のそれぞれを、各文字矩形の隅に順番に移動させて、移動後の指定領域２５内に途切れた文字が含まれるか否かを検査しても良い。このような検査の結果、指定領域２５の「左上の隅」を移動させた場合には、図６（ｂ）に示すように、途切れた文字が含まれることとなり、移動後の指定領域２５の位置に誤りがあると判定される。一方、指定領域２５の「右上の隅」を移動させた場合には、図６（ｃ）に示すように、各文字は全体が含まれることとなり、途切れた文字は存在しない。そのため、指定領域２５は正しく移動されたと判定される。
この検査において、文字特定部１３は、指定領域２５の移動量が小さくなる場合に限定するために、例えば、移動前の指定領域２５と重なっている文字矩形に絞って検査することとしても良い。
【００４７】
＜移動後の指定領域内の文字を特定する処理の手順＞
次に、制御部１０にて指定領域を移動させて、移動後の指定領域内に存在する文字を特定する処理の手順について説明する。図７及び図８は、実施の形態１において、移動後の指定領域内に存在する文字を特定する処理の手順の一例を示すフローチャートである。ここで、図７に示す処理手順は、「指定領域の移動量が小さいこと」を優先する場合を示している。また、図８に示す処理手順は、「移動後の指定領域内に途切れた文字が含まれないこと」を優先する場合を示している。
【００４８】
まず、図７を参照しながら、「指定領域の移動量が小さいこと」を優先する場合について説明する。画像データ取得部１１は、画像読み取り部１０６にて原稿上の画像を読み取って生成された画像データを取得する（ステップ１０１）。次に、文字認識部１２は、取得した画像データにおいて、予め定められた指定領域の位置を特定する（ステップ１０２）。次に、文字認識部１２は、指定領域を拡張した拡張領域で文字認識を実行する（ステップ１０３）。次に、文字特定部１３は、文字認識により認識された各文字の文字矩形の座標情報、及び指定領域の座標情報を取得する（ステップ１０４）。
【００４９】
次に、文字特定部１３は、各文字矩形の座標情報と指定領域の座標情報とを比較して、指定領域から最も近い文字が指定領域２３内に収まるように、指定領域２３を移動させる（ステップ１０５）。ここで、文字特定部１３は、指定領域の四隅のうちのいずれか１つの隅を選択する。次に、文字特定部１３は、選択した隅に対応する各文字矩形の隅の中で、選択した隅に最も近い隅を抽出する。そして、文字特定部１３は、選択した指定領域の隅を、抽出した文字矩形の隅に合わせるように、指定領域を移動させる。次に、文字特定部１３は、移動後の指定領域内にある文字を特定し、文字認識の結果として出力する（ステップ１０６）。そして、本処理フローは終了する。
【００５０】
また、ステップ１０５において、選択した指定領域の隅に最も近い隅が複数抽出される場合には、指定領域の移動先の候補が複数あることになる。この場合、例えば、ステップ１０６では、複数の候補毎に文字認識の結果が出力される。また、例えば、移動後の指定領域内に含まれる文字数が最も多い候補を選択する等、何らかの基準で１つの候補を選択し、選択した候補に対応する文字認識の結果を出力しても良い。
【００５１】
次に、図８を参照しながら、「移動後の指定領域内に途切れた文字が含まれないこと」を優先する場合について説明する。ステップ２０１〜ステップ２０４の処理は、図７のステップ１０１〜ステップ１０４の処理と同様であるため、ここでは説明を省略する。
【００５２】
ステップ２０４において、各文字の文字矩形の座標情報及び指定領域の座標情報が取得された後、文字特定部１３は、各文字矩形の座標情報と指定領域の座標情報とを比較して、指定領域から最も近い文字へ移動する場合の移動量を算出する（ステップ２０５）。ここで、文字特定部１３は、指定領域の四隅のうちのいずれか１つの隅を選択する。次に、文字特定部１３は、選択した隅に対応する各文字矩形の隅の中で、選択した隅に最も近い隅を抽出する。そして、文字特定部１３は、選択した指定領域の隅を、抽出した文字矩形の隅に移動させる場合の移動量を算出する。
【００５３】
次に、文字特定部１３は、算出した移動量に従って指定領域を移動させて、移動後の指定領域内に途切れた文字があるか否かを判定する（ステップ２０６）。移動後の指定領域内に途切れた文字がない場合（ステップ２０６でＮｏ）、後述するステップ２１１へ移行する。一方、移動後の指定領域内に途切れた文字がある場合（ステップ２０６でＹｅｓ）、文字特定部１３は、指定領域に次に近い文字があるか否かを判定する（ステップ２０７）。ここで、文字特定部１３は、拡張領域で認識された全ての文字のうち、ステップ２０５または後述するステップ２０８において選択されていない文字がまだ残っていれば、次に近い文字があると判定する。
【００５４】
ステップ２０７において、次に近い文字があると判定された場合（ステップ２０７でＹｅｓ）、文字特定部１３は、次に近い文字へ移動する場合の移動量を算出する（ステップ２０８）。ここで、文字特定部１３は、ステップ２０５で選択した指定領域の隅に対応する、各文字矩形の隅の中で、選択した隅に対して次に近い隅を抽出する。そして、文字特定部１３は、選択した指定領域の隅を、抽出した文字矩形の隅に移動させる場合の移動量を算出する。そして、ステップ２０６へ移行する。
【００５５】
一方、ステップ２０７において、次に近い文字がないと判定された場合（ステップ２０７でＮｏ）、文字特定部１３は、算出した移動量の中で最も小さい移動量を選択する（ステップ２０９）。ここでは、ステップ２０５で算出した移動量が選択される。次に、文字特定部１３は、選択した移動量に従って指定領域を移動させる（ステップ２１０）。ステップ２１０の後、またはステップ２０６で否定の判断（Ｎｏ）がされた場合、文字特定部１３は、移動後の指定領域内にある文字を特定し、文字認識の結果として出力する（ステップ２１１）。そして、本処理フローは終了する。
【００５６】
また、ステップ２０５において、選択した指定領域の隅に最も近い隅が複数抽出される場合には、指定領域の移動先の候補が複数あることになる。この場合、ステップ２０６では、全ての候補毎に判定が行われる。そして、全ての候補において途切れた文字が含まれる場合、ステップ２０６で肯定の判断（Ｙｅｓ）がされる。一方、途切れた文字が含まれない候補が１つでもあれば、ステップ２０６で否定の判断（Ｎｏ）がされ、途切れた文字が含まれないように指定領域の移動が行われる。ステップ２０８において、次に近い隅が複数抽出される場合も、同様の処理が行われる。
【００５７】
このように、本実施の形態に係る画像処理装置１は、指定領域を拡張した拡張領域にて認識された文字の位置と、指定領域の位置とを比較して、指定領域を移動させる。そして、画像処理装置１は、移動後の指定領域内に含まれる文字を文字認識の結果として出力する。本実施の形態に係る画像処理装置１を用いることにより、プリントずれやスキャンずれ等の位置ずれが発生したとしても、指定領域内で認識されるべき文字をより正確に特定する処理が行われる。
また、単純に指定領域を拡張した場合には、多くの文字を認識し易くなる一方で、不要な文字も認識してしまう可能性がある。本実施の形態では、指定領域を拡張して文字認識を行うが、認識された文字の位置と指定領域の位置とに基づいて指定領域の位置を調整するため、不要なオブジェクトを認識する可能性が低減される。
【００５８】
[実施の形態２]
次に、実施の形態２について説明する。実施の形態１では、１枚の原稿内に１つの指定領域が設けられている場合について説明した。しかし、１枚の原稿内に複数の指定領域が設けられている場合もある。
図９（ａ）、（ｂ）は、１枚の原稿内に複数の指定領域が設けられている場合の一例を説明するための図である。まず、図９（ａ）に示す例は、プリントずれやスキャンずれ等の位置ずれが発生していない原稿の画像を示している。また、原稿に対しては、指定領域２６ａ、指定領域２６ｂが予め定められている。一方、図９（ｂ）に示す例は、プリントずれやスキャンずれ等の位置ずれが発生した原稿の画像を示している。ここで、プリントずれやスキャンずれ等の位置ずれは、１枚の原稿の全体に対して生じるものであり、原稿内では位置ずれの方向や位置ずれの量は同等であるといえる。言い換えると、指定領域２６ａ及び指定領域２６ｂは、原稿の文字に対して同等にずれていると考えられる。
【００５９】
実施の形態２では、このように１枚の原稿内に複数の指定領域が設けられている場合に、文字認識の対象とする原稿にて位置ずれが発生していたとしても、指定領域内の文字をより正確に認識する手順について説明する。なお、画像処理装置１のハードウェア構成は、実施の形態１と同様である。また、本実施の形態において、実施の形態１と同様のものについては、同じ符号を付してその詳細な説明を省略する。
【００６０】
＜指定領域内の文字を特定する処理の具体例＞
図１０（ａ）〜（ｃ）は、複数の指定領域が設けられている場合の処理の具体例を説明するための図である。ここでは、図１０（ａ）〜（ｃ）を参照しながら、文字特定部１３が各指定領域を移動させて、移動後の各指定領域内に存在する文字を特定する手順について説明する。図１０に示す例では、図９（ｂ）に示すような位置ずれが生じている原稿に対して文字認識が行われたものとする。具体的には、文字認識部１２により、図９（ｂ）に示す指定領域２６ａを拡張した拡張領域において、「あ」、「い」、「う」、「え」、「か」、「き」、「く」、「け」の８つの文字が認識されている。また、文字認識部１２により、図９（ｂ）に示す指定領域２６ｂを拡張した拡張領域において、「さ」、「し」の２つの文字が認識されている。
【００６１】
ここで、文字特定部１３は、実施の形態１の図５に示す処理と同様に、認識された文字を囲む文字矩形の位置情報（座標情報）を取得する。また、文字特定部１３は、指定領域２６ａ、２６ｂの位置情報（座標情報）も取得する。
【００６２】
図示の例では、「あ」の文字矩形の左上の隅の座標（ｘ，ｙ）を（０，０）として、他の位置の座標を示している。例えば、「い」の文字矩形の左上の隅の座標は（１１，０）、「う」の文字矩形の左上の隅の座標は（２２，０）、「き」の文字矩形の左上の隅の座標は（１１，１２）、「く」の文字矩形の左上の隅の座標は（２２，１２）である。また、指定領域２６ａの左上の隅の座標は（１２，６）である。
また、「さ」の文字矩形の左上の隅の座標は（４０，１００）、「し」の文字矩形の左上の隅の座標は（５１，１００）である。また、指定領域２６ｂの左上の隅の座標は（４１，１０６）である。
【００６３】
ここで、指定領域２６ａの左上の隅（１２，６）を移動させる移動先の候補としては、例えば、「い」の文字矩形の左上の隅（１１，０）、「う」の文字矩形の左上の隅（２２，０）、「き」の文字矩形の左上の隅（１１，１２）、「く」の文字矩形の左上の隅（２２，１２）が考えられる。
さらに説明すると、指定領域２６ａの左上の隅（１２，６）を（１１，０）へ移動する場合の移動量は、左に「１」、上に「６」である。指定領域２６ａの左上の隅（１２，６）を（２２，０）へ移動する場合の移動量は、右に「１０」、上に「６」である。指定領域２６ａの左上の隅（１２，６）を（１１，１２）へ移動する場合の移動量は、左に「１」、下に「６」である。指定領域２６ａの左上の隅（１２，６）を（２２，１２）へ移動する場合の移動量は、右に「１０」、下に「６」である。
【００６４】
また、指定領域２６ｂの左上の隅（４１，１０６）を移動させる移動先の候補としては、例えば、「さ」の文字矩形の左上の隅（４０，１００）、「し」の文字矩形の左上の隅（５１，１００）が考えられる。指定領域２６ｂの左上の隅（４１，１０６）を（４０，１００）へ移動する場合の移動量は、左に「１」、上に「６」である。指定領域２６ｂの左上の隅（４１，１０６）を（５１，１００）へ移動する場合の移動量は、右に「１０」、上に「６」である。
【００６５】
ここで、指定領域２６ａは、指定領域２６ａを拡張した拡張領域にて認識された文字の少なくとも１つが含まれるように移動する。また、指定領域２６ｂは、指定領域２６ｂを拡張した拡張領域にて認識された文字の少なくとも１つが含まれるように移動する。さらに、原稿内では等しく位置ずれが発生しているため、位置ずれを補正するためには、指定領域２６ａ及び指定領域２６ｂを移動させる移動量が同等になれば良いといえる。
そこで、文字特定部１３は、複数の移動先の候補の中から、指定領域２６ａ及び指定領域２６ｂの移動量が一致するような候補を抽出する。付言すると、指定領域２６ａ及び指定領域２６ｂの移動量が一致するということは、指定領域２６ａの移動量と指定領域２６ｂの移動量との差が、例えば数画素以内などの予め定められた範囲内である、と捉えることもできる。
【００６６】
具体的には、指定領域２６ａの左上の隅から最も近い移動先の候補は、「い」の文字矩形の左上の隅（１１，０）、及び「き」の文字矩形の左上の隅（１１，１２）である。また、その場合の移動量はそれぞれ、左に「１」上に「６」、左に「１」下に「６」である。ここで、指定領域２６ｂの左上の隅（４１，１０６）を、「さ」の文字矩形の左上の隅（４０，１００）へ移動する場合の移動量は、左に「１」、上に「６」である。そこで、文字特定部１３は、指定領域２６ａの左上の隅の移動先の候補として、「い」の文字矩形の左上の隅を抽出する。また、文字特定部１３は、指定領域２６ｂの左上の隅の移動先の候補として、「さ」の文字矩形の左上の隅を抽出する。
【００６７】
そして、文字特定部１３は、図１０（ｂ）に示すように、指定領域２６ａ、２６ｂのそれぞれを矢印の方向に移動させる。次に、文字特定部１３は、移動後の指定領域２６ａ、２６ｂ内に存在する文字の情報を、文字認識の結果として出力する。図１０（ｃ）に示すように、移動後の指定領域２６ａ内には、「い」、「う」の文字が存在している。また、移動後の指定領域２６ｂ内には、「さ」、「し」の文字が存在している。そのため、文字認識の結果としては、「い」、「う」の文字情報、及び「さ」、「し」の文字情報が出力される。
【００６８】
ここで、図１０に示す例では、指定領域２６ａの左上の隅の移動先として、指定領域２６ａの左上の隅から最も近い候補を選択することとしたが、このような構成に限られるものではない。実施の形態１で説明したように、「移動後の指定領域内に途切れた文字が含まれないこと」を優先させても良い。この場合、文字特定部１３は、指定領域２６ａの移動先の候補、指定領域２６ｂの移動先の候補のうち、移動後の指定領域２６ａ及び移動後の指定領域２６ｂ内に途切れた文字が含まれない候補を優先して選択する。
【００６９】
＜移動後の指定領域内の文字を特定する処理の手順＞
次に、制御部１０にて指定領域を移動させて、移動後の指定領域内に存在する文字を特定する処理の手順について説明する。図１１〜図１３は、実施の形態２において、移動後の指定領域内に存在する文字を特定する処理の手順の一例を示すフローチャートである。ここで、図１１に示す処理手順は、「指定領域の移動量が小さいこと」を優先する場合を示している。また、図１２及び図１３に示す処理手順は、「移動後の指定領域内に途切れた文字が含まれないこと」を優先する場合を示している。
【００７０】
まず、図１１を参照しながら、「指定領域の移動量が小さいこと」を優先する場合について説明する。画像データ取得部１１は、画像読み取り部１０６にて原稿上の画像を読み取って生成された画像データを取得する（ステップ３０１）。次に、文字認識部１２は、取得した画像データにおいて、予め定められた指定領域の位置を特定する（ステップ３０２）。ここで、文字認識部１２は、複数の指定領域の位置を特定する。次に、文字認識部１２は、各指定領域を拡張した拡張領域のそれぞれで、文字認識を実行する（ステップ３０３）。次に、文字特定部１３は、文字認識により認識された各文字の文字矩形の座標情報、及び各指定領域の座標情報を取得する（ステップ３０４）。
【００７１】
次に、文字特定部１３は、複数の指定領域の中から１つの指定領域に着目する（ステップ３０５）。そして、文字特定部１３は、各文字矩形の座標情報と着目した指定領域の座標情報とを比較して、着目した指定領域から最も近い文字へ移動する場合の移動量を算出する（ステップ３０６）。ここで、文字特定部１３は、着目した指定領域の四隅のうちのいずれか１つの隅を選択する。次に、文字特定部１３は、選択した隅に対応する各文字矩形の隅の中で、選択した隅に最も近い隅を抽出する。そして、文字特定部１３は、選択した指定領域の隅を、抽出した文字矩形の隅に移動させる場合の移動量を算出する。次に、文字特定部１３は、算出した移動量を記憶する（ステップ３０７）。ここで、図１０に示す指定領域２６ａのように、最も近い隅が複数ある場合には、それぞれの場合の移動量が記憶される。
【００７２】
次に、文字特定部１３は、まだ着目していない他の指定領域があるか否かを判定する（ステップ３０８）。他の指定領域があると判定された場合（ステップ３０８でＹｅｓ）、ステップ３０５へ移行する。一方、他の指定領域がないと判定された場合（ステップ３０８でＮｏ）、文字特定部１３は、記憶した全ての移動量を比較する。そして、文字特定部１３は、比較した移動量のうち最も数の多い移動量を１つ選択し、選択した移動量に従って各指定領域を移動させる（ステップ３０９）。次に、文字特定部１３は、移動後の各指定領域内にある文字を特定し、文字認識の結果として出力する（ステップ３１０）。そして、本処理フローは終了する。
【００７３】
付言すると、上述したように、複数の指定領域は原稿の文字に対して同等にずれていると考えられる。そのため、ステップ３０９において、最も数の多い移動量を選択することにより、各指定領域における同等のずれ量が選択されることとなり、即ち、位置ずれを補正するための移動量が選択されるといえる。
【００７４】
次に、図１２及び図１３を参照しながら、「移動後の指定領域内に途切れた文字が含まれないこと」を優先する場合について説明する。ここで、図１２のステップ４０１〜ステップ４０５の処理は、図１１のステップ３０１〜ステップ３０５の処理と同様であるため、ここでは説明を省略する。
【００７５】
次に、ステップ４０６において、文字特定部１３は、図１１のステップ３０６と同様に、着目した指定領域から最も近い文字へ移動する場合の移動量を算出する。ここで、文字特定部１３は、着目した指定領域の四隅のうちのいずれか１つの隅を選択する。次に、文字特定部１３は、選択した隅に対応する各文字矩形の隅の中で、最も近い隅を抽出する。そして、文字特定部１３は、選択した指定領域の隅を、抽出した文字矩形の隅に移動させる場合の移動量を算出する。
【００７６】
次に、文字特定部１３は、算出した移動量に従って指定領域を移動させて、移動後の指定領域内に途切れた文字があるか否かを判定する（ステップ４０７）。移動後の指定領域内に途切れた文字がない場合（ステップ４０７でＮｏ）、文字特定部１３は、算出した移動量を記憶する（ステップ４０８）。そして、後述するステップ４１２へ移行する。
【００７７】
一方、移動後の指定領域内に途切れた文字がある場合（ステップ４０７でＹｅｓ）、文字特定部１３は、着目した指定領域に次に近い文字があるか否かを判定する（ステップ４０９）。ここで、文字特定部１３は、着目した指定領域に対応する拡張領域で認識された全ての文字のうち、ステップ４０６または後述するステップ４１０において選択されていない文字がまだ残っていれば、次に近い文字があると判定する。
【００７８】
ステップ４０９において、次に近い文字があると判定された場合（ステップ４０９でＹｅｓ）、文字特定部１３は、次に近い文字へ移動させる場合の移動量を算出する（ステップ４１０）。ここで、文字特定部１３は、ステップ４０６で選択した指定領域の隅に対応する、各文字矩形の隅の中で、選択した隅に対して次に近い隅を抽出する。そして、文字特定部１３は、選択した指定領域の隅を、抽出した文字矩形の隅に移動させる場合の移動量を算出する。そして、ステップ４０７へ移行する。
【００７９】
一方、ステップ４０９において、次に近い文字がないと判定された場合（ステップ４０９でＮｏ）、文字特定部１３は、着目した指定領域に関して算出した移動量の中で、最も小さい移動量を記憶する（ステップ４１１）。
ステップ４０８またはステップ４１１の後、文字特定部１３は、まだ着目していない他の指定領域があるか否かを判定する（ステップ４１２）。他の指定領域があると判定された場合（ステップ４１２でＹｅｓ）、ステップ４０５へ移行する。
【００８０】
一方、他の指定領域がないと判定された場合（ステップ４１２でＮｏ）、文字特定部１３は、記憶した全ての移動量を比較する。そして、文字特定部１３は、比較した移動量のうち最も数の多い移動量を選択し、選択した移動量に従って各指定領域を移動させる（ステップ４１３）。次に、文字特定部１３は、移動後の各指定領域内にある文字を特定し、文字認識の結果として出力する（ステップ４１４）。そして、本処理フローは終了する。
【００８１】
また、ステップ４０６において、選択した指定領域の隅に最も近い隅が複数抽出される場合には、指定領域の移動先の候補が複数あることになる。この場合、ステップ４０７では、全ての候補毎に判定が行われる。そして、全ての候補について途切れた文字が含まれる場合、ステップ４０７で肯定の判断（Ｙｅｓ）がされる。一方、途切れた文字が含まれない候補が１つでもあれば、ステップ４０７で否定の判断（Ｎｏ）がされ、ステップ４０８では、途切れた文字が含まれない候補についての移動量が記憶される。ステップ４１０において、次に近い隅が複数抽出される場合も、同様の処理が行われる。
【００８２】
このように、本実施の形態に係る画像処理装置１は、１枚の原稿内に複数の指定領域が設けられている場合に、複数の指定領域の移動量が一致するように各指定領域を移動させる。本実施の形態に係る画像処理装置１を用いることにより、例えば、指定領域の移動に際して１つの指定領域の情報のみを用いる構成と比較して、より正確に、位置ずれの補正が行われて指定領域内の文字が特定されることとなる。
【００８３】
また、実施の形態１及び実施の形態２では、矩形の指定領域を用いたが、指定領域としては矩形に限定されるものではない。指定領域は、文字矩形が収まるように、矩形を組み合わせた形状であれば良く、例えば、大きさの異なる２つの矩形を上下に組み合わせたような形状であっても良い。この場合、文字特定部１３は、例えば、指定領域の１つの隅を選択して、選択した隅に最も近い文字矩形の隅に合わせるように、指定領域を移動させる。また、文字特定部１３は、移動後の指定領域内に途切れた文字が含まれないように、指定領域を移動させても良い。
【００８４】
また、実施の形態１及び実施の形態２では、画像処理装置１にて指定領域内の文字を特定する処理を行うこととしたが、画像処理装置１から不図示の通信回線を介して例えばサーバ装置（不図示）へ画像データを送信し、サーバ装置にて、指定領域内の文字を特定するようにしても良い。この場合、サーバ装置は、情報処理装置の一例として捉えることができる。
【００８５】
また、本発明の実施の形態を実現するプログラムは、通信手段により提供することはもちろん、ＣＤ−ＲＯＭ等の記録媒体に格納して提供することも可能である。
【００８６】
なお、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態には限定されない。本発明の精神及び範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。
【符号の説明】
【００８７】
１…画像処理装置、１０…制御部、１１…画像データ取得部、１２…文字認識部、１３……文字特定部、１０６…画像読み取り部
【図１】
0006696155.tif 000002
【図２】
0006696155.tif 000003
【図３】
0006696155.tif 000004
【図４】
0006696155.tif 000005
【図５】
0006696155.tif 000006
【図６】
0006696155.tif 000007
【図７】
0006696155.tif 000008
【図８】
0006696155.tif 000009
【図９】
0006696155.tif 000010
【図１０】
0006696155.tif 000011
【図１１】
0006696155.tif 000012
【図１２】
0006696155.tif 000013
【図１３】
0006696155.tif 000014