(57)【要約】【課題】ボケやブレが発生している画像において文字を認識するのを容易にする。【解決手段】画像処理装置１は、外部から入力された入力画像データを受け付ける画像受け付け部１１と、入力画像データから、入力画像データに基づく画像の文字部分を検出する第１画像処理部１２と、検出された文字部分の文字の太さを算出する太さ算出部１３と、文字の太さと文字の重なりを分離するための予め定められた検出パラメータとを対応付けた対応テーブルを格納するパラメータ格納部１４と、算出された太さに対応する検出パラメータを取得するパラメータ決定部１５と、検出パラメータを用いて、入力画像データから文字の重なりのない文字部分を検出する第２画像処理部１６とを備える。【選択図】図１
2015028735.tif 000002
【特許請求の範囲】
【請求項１】
画像データの文字部分の太さの値である太さ値と、文字の重なりを分離するための予め定められた変数との対応関係を記憶する記憶手段と、
入力された画像データである入力画像データから複数の文字が重なった箇所を含む文字部分を検出する第１検出手段と、
前記第１検出手段により検出された前記文字部分の太さ値を算出する算出手段と、
前記算出手段により算出された前記太さ値に対応する変数を前記記憶手段から取得する取得手段と、
前記取得手段により取得された前記変数を用いて、前記入力画像データから文字の重なりのない文字部分を検出する第２検出手段と
を備えた画像処理装置。
【請求項２】
前記第１検出手段により検出された文字部分を構成する単位を複数抽出する単位抽出手段をさらに備え、
前記算出手段は、前記単位抽出手段により抽出された前記単位の太さ値を算出し、
前記取得手段は、前記単位抽出手段により抽出された前記単位ごとに前記変数を取得することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記算出手段は、前記第１検出手段により検出された文字部分の太さ値を当該文字部分の画素ごとに算出し、
前記取得手段は、前記画素ごとに前記変数を取得することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記変数は、前記第２検出手段が文字部分の検出において実行する二値化処理の対象となる画素である対象画素と当該対象画素の周辺にある周辺画素とを含む領域の大きさを示す画素数であり、
前記第２検出手段は、前記画素数の画素で構成される前記領域において、前記対象画素および前記周辺画素の画素値に基づいて当該対象画素の二値化処理を行うことを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
コンピュータに、
入力された画像データである入力画像データから複数の文字が重なった箇所を含む文字部分を検出する機能と、
検出された前記文字部分の太さの値である太さ値を算出する機能と、
太さ値と、文字の重なりを分離するための予め定められた変数との対応関係に基づいて、算出された太さ値に対応する変数を決定する機能と、
決定された前記変数を用いて、前記入力画像データから文字の重なりのない文字部分を検出する機能と
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置およびプログラムに関する。
【背景技術】
【０００２】
公報記載の従来技術として、帳票上の文字を読み取って得られた多値データを二値化して二値データを生成し、二値データに基づいて文字認識を行う文字読取装置が存在する。この文字読取装置は、二値データから文字パターンの平均線幅を算出するとともに、文字パターンの複雑度を計算し、複雑度に応じて平均線幅が適正かどうかを判定して、適正の場合に文字認識を行う。（特許文献１参照）
【０００３】
また、他の公報記載の従来技術として、濃淡画像から光学的文字認識に適した二値画像を生成する画像処理装置が存在する。この画像処理装置は、文字認識の対象となる画像上の領域を特定し、領域毎に二値化閾値を算出するとともに、領域内の文字の有無を判定して、文字の有無情報を参照して二値画像を生成する。（特許文献２参照）
【０００４】
さらに、他の従来技術として、画像内の図形中の画素の画素値を、その画素から背景画素までの最短距離に置き換える距離変換を行い、距離変換を行った画像をもとに画素ごとに文字の幅であるストローク幅を算出する方法が存在する。（非特許文献１参照）
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１０−１４３６０８号公報
【特許文献２】特開２０００−３３１１１８号公報
【非特許文献】
【０００６】
【非特許文献１】Huizhong Chen，Sam S Tsai，George Schroth，David M．Chen，Radek Grzeszczuk，Bernd Girod, 「ROBUST TEXT DETECTION IN NATURAL IMAGES WITH EDGE−ENHANCED MAXIMALLY STABLE EXTREMAL REGIONS」, Image Processing (ICIP), 2011 18th IEEE International Conference on, P.2609-2612
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、ボケやブレが発生している画像において文字を認識するのを容易にすることを目的とする。
【課題を解決するための手段】
【０００８】
請求項１記載の発明は、画像データの文字部分の太さの値である太さ値と、文字の重なりを分離するための予め定められた変数との対応関係を記憶する記憶手段と、入力された画像データである入力画像データから複数の文字が重なった箇所を含む文字部分を検出する第１検出手段と、前記第１検出手段により検出された前記文字部分の太さ値を算出する算出手段と、前記算出手段により算出された前記太さ値に対応する変数を前記記憶手段から取得する取得手段と、前記取得手段により取得された前記変数を用いて、前記入力画像データから文字の重なりのない文字部分を検出する第２検出手段とを備えた画像処理装置である。
請求項２記載の発明は、前記第１検出手段により検出された文字部分を構成する単位を複数抽出する単位抽出手段をさらに備え、前記算出手段は、前記単位抽出手段により抽出された前記単位の太さ値を算出し、前記取得手段は、前記単位抽出手段により抽出された前記単位ごとに前記変数を取得することを特徴とする請求項１に記載の画像処理装置である。
請求項３記載の発明は、前記算出手段は、前記第１検出手段により検出された文字部分の太さ値を当該文字部分の画素ごとに算出し、前記取得手段は、前記画素ごとに前記変数を取得することを特徴とする請求項１に記載の画像処理装置である。
請求項４記載の発明は、前記変数は、前記第２検出手段が文字部分の検出において実行する二値化処理の対象となる画素である対象画素と当該対象画素の周辺にある周辺画素とを含む領域の大きさを示す画素数であり、前記第２検出手段は、前記画素数の画素で構成される前記領域において、前記対象画素および前記周辺画素の画素値に基づいて当該対象画素の二値化処理を行うことを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置である。
請求項５記載の発明は、コンピュータに、入力された画像データである入力画像データから複数の文字が重なった箇所を含む文字部分を検出する機能と、検出された前記文字部分の太さの値である太さ値を算出する機能と、太さ値と、文字の重なりを分離するための予め定められた変数との対応関係に基づいて、算出された太さ値に対応する変数を決定する機能と、決定された前記変数を用いて、前記入力画像データから文字の重なりのない文字部分を検出する機能とを実現させるためのプログラムである。
【発明の効果】
【０００９】
請求項１記載の発明によれば、本構成を有していない場合と比較して、ボケやブレが発生している画像において文字を認識することが容易になる。
請求項２記載の発明によれば、本構成を有していない場合と比較して、画像内で文字の太さが異なる際にも文字を認識することが容易になる。
請求項３記載の発明によれば、本構成を有していない場合と比較して、より一層文字を認識することが容易になる。
請求項４記載の発明によれば、本構成を有していない場合と比較して、各画素の濃淡レベルが画像内で変動している際に変動の影響を軽減することができる。
請求項５記載の発明によれば、本構成を有していない場合と比較して、ボケやブレが発生している画像において文字を認識することを容易にする機能をコンピュータにより実現できる。
【図面の簡単な説明】
【００１０】
【図１】本実施の形態１に係る画像処理装置の機能構成例を示したブロック図である。
【図２】本実施の形態に係る対応テーブルの一例を説明するための図である。
【図３】（ａ）、（ｂ）、（ｃ）は、移動平均法による二値化処理の一例を説明するための図である。
【図４】本実施の形態１に係る画像処理装置が入力画像データから出力画像データを生成する手順の一例を示したフローチャートである。
【図５】本実施の形態２に係る画像処理装置の機能構成例を示したブロック図である。
【図６】本実施の形態２に係る画像処理装置が入力画像データから出力画像データを生成する手順の一例を示したフローチャートである。
【図７】本実施の形態を適用可能なコンピュータのハードウェア構成の一例を示した図である。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。まず、本実施の形態の概要について説明する。
【００１２】
近年、デジタルカメラや、例えばスマートフォン等の携帯情報端末により、文書を撮影する機会が増えている。このような機器で撮影する際、照明の不均一さや撮影時の手振れ等により、撮影した画像にボケやブレが発生する場合がある。また、スキャナで画像を読み取る際にも、スキャンする原稿の内容、スキャナの性能や設定によっては出力された画像にボケやブレが発生する場合がある。
【００１３】
一般に、画像内の文字を検索する場合、ＯＣＲ処理と呼ばれる文字を認識する処理が実行される。しかし、デジタルカメラ等で撮影された画像やスキャナから出力された画像にボケやブレが発生しているために、例えば、文字と文字とが接触して線幅が大きく変わっていたり、画数の多い文字が潰れていたりして、ＯＣＲ処理による文字の認識誤りが生じる場合があった。本実施の形態では、以下に述べる方法によりこの問題の抑制を図っている。
【００１４】
［実施の形態１］
＜画像処理装置の構成の説明＞
図１は、本実施の形態１に係る画像処理装置１の機能構成例を示したブロック図である。本実施の形態に係る画像処理装置１は、外部から入力された画像データ（以下、入力画像データと称することがある）を受け付ける画像受け付け部１１と、入力画像データから、入力画像データに基づく画像（以下、入力画像と称することがある）の文字部分を検出する第１画像処理部１２と、検出された文字部分の文字の太さの値（以下、文字部分の文字の太さの値を太さ値と称することがある）を算出する太さ算出部１３とを備える。
【００１５】
また、本実施の形態に係る画像処理装置１は、太さ値と文字の重なりを分離するための予め定められたパラメータ（以下、検出パラメータと称することがある）とを対応付けた対応テーブルを格納するパラメータ格納部１４と、算出された太さ値に対応する検出パラメータを取得するパラメータ決定部１５と、検出パラメータを用いて、入力画像データから文字の重なりのない文字部分を検出する第２画像処理部１６とを備える。
【００１６】
画像受け付け部１１は、外部から入力画像データを受け付ける。この入力画像データは、例えば、デジタルカメラやスマートフォン等の機器で撮影された画像やスキャナから出力された画像のデータであり、多値画像のデータである。多値画像とは、二値画像以外の画像であり、３階調以上で表現可能な画像である。また、二値画像とは、画素の濃淡レベルを表す画素値が０(白画素)か１（黒画素）の２階調で表現される画像である。そして、画像受け付け部１１は、受け付けた入力画像データを第１画像処理部１２および第２画像処理部１６に送信する。
【００１７】
第１検出手段の一例としての第１画像処理部１２は、画像受け付け部１１から送信された入力画像データから、入力画像の文字部分を検出して、その文字部分の入力画像内における位置を表す画像データを生成する（以下、ここで生成される画像データを文字画像データと称することがある）。ここで検出される文字部分は、入力画像にボケやブレが発生したために、複数の文字が重なった箇所や文字が潰れて文字の輪郭が不明瞭になっている箇所等を含んでも良い。また、文字画像データの生成には、文字検出の従来の手法が用いられるものとする。
【００１８】
例えば、第１画像処理部１２は、入力画像の各画素の画素値と予め定められた閾値とを比較して、予め定められた閾値を境にして各画素の画素値を０か１に変換する二値化処理の手法により文字画像データを生成する。また、例えば、第１画像処理部１２は、入力画像全体に１つの予め定められた閾値を適用するのではなく、移動平均法等を用いて画素ごとに閾値を変えて、白画素か黒画素かを画素ごとに選択する二値化処理の手法により文字画像データを生成する。さらに、例えば、第１画像処理部１２は、色空間でクラスタリングを行い、得られた代表色を用いて入力画像から文字部分を検出して、文字画像データを生成する。そして、第１画像処理部１２は、生成した文字画像データを太さ算出部１３に送信する。
【００１９】
ここで、移動平均法とは、各画素の濃淡レベルが画像内で変動している場合に変動の影響を軽減するために用いられる手法である。そして、移動平均法による二値化処理では、画像内で二値化の対象となる対象画素において、対象画素の画素値と対象画素の周辺にある画素（以下、周辺画素と称することがある）の画素値の平均値とが比較され、対象画素を白画素か黒画素のどちらにするかが選択される。例えば、対象画素の画素値の方が周辺画素の画素値の平均値よりも黒に近い値を示し、その画素値の差が予め定められた閾値以上であれば、対象画素を黒画素とする処理が行われる。また、例えば、対象画素の画素値の方が黒に近い値を示すがその画素値の差が予め定められた閾値より小さい場合や、対象画素の画素値の方が白に近い値を示す場合には、対象画素を白画素とする処理が行われる。また、以下では、この移動平均法において、対象画素と周辺画素とを含む領域の大きさを表す画素数を、移動平均サイズと称することとする。
【００２０】
算出手段の一例としての太さ算出部１３は、第１画像処理部１２から送信された文字画像データをもとに、第１画像処理部１２に検出された文字部分の太さ値を算出する。ここで、太さ算出部１３は、まず、文字画像データにおいて、文字部分の画素（以下、文字画素と称することがある）が連結している領域（以下、連結領域と称することがある）を抽出する。連結領域の抽出では、太さ算出部１３は、ある文字画素の上下左右４方向のいずれかで隣り合う文字画素を連結しているものとして連結領域を抽出しても良いし、ある文字画素の上下左右の４方向に斜め方向も加えた８方向のいずれかで隣り合う文字画素を連結しているものとして連結領域を抽出しても良い。
【００２１】
なお、連結領域としては、ボケやブレの発生により、例えば、異なる複数の文字が重なって１つの連結領域として抽出される場合もあれば、１つの文字から複数の連結領域が抽出される場合もあるとする。太さ算出部１３は、連結領域を抽出すると、従来の手法を用いて、抽出した各連結領域における太さ値を算出する。例えば、太さ算出部１３は、各連結領域に対して距離変換を行った後にストローク幅を算出する手法等により、太さ値を算出することが考えられる。そして、太さ算出部１３は、算出した全ての連結領域の太さ値から文字画像データにおける太さ値を決定し、決定した太さ値をパラメータ決定部１５に送信する。
【００２２】
記憶手段の一例としてのパラメータ格納部１４は、太さ値と予め定められた検出パラメータとを対応付けた、対応関係の一例としての対応テーブルを格納する。検出パラメータは、後述する第２画像処理部１６が入力画像データから文字部分を検出する処理を行う際に用いられるものであり、処理の手法により様々な値が定められる。例えば、検出パラメータとしては、画像内の全画素と閾値とを比較して二値化を行う際の閾値や、画素ごとに閾値を変えて二値化を行う際の移動平均法による移動平均サイズの値等が考えられる。
【００２３】
取得手段の一例としてのパラメータ決定部１５は、パラメータ格納部１４から対応テーブルを取得し、取得した対応テーブルと太さ算出部１３から送信された太さ値とに基づいて、送信された太さ値に対応する検出パラメータを決定する。そして、パラメータ決定部１５は、決定した検出パラメータを第２画像処理部１６に送信する。
【００２４】
第２検出手段の一例としての第２画像処理部１６は、パラメータ決定部１５から送信された検出パラメータを用いて、画像受け付け部１１から送信された入力画像データから文字の重なりのない文字部分を検出する。ここで、第２画像処理部１６は、入力画像データから入力画像の文字部分を検出して、その文字部分の入力画像内における位置を表す画像データを生成する（以下、ここで生成される画像データを出力画像データと称することがある）。また、第２画像処理部１６は、送信された検出パラメータに対応する従来の手法、例えば、上述した移動平均法による二値化処理等を実行して出力画像データを生成する。そして、第２画像処理部１６は出力画像データを外部に出力し、その後、文字を認識するＯＣＲ処理等が実行される。
【００２５】
＜対応テーブルの説明＞
次に、パラメータ格納部１４が格納する対応テーブルについて説明する。図２は、本実施の形態に係る対応テーブルの一例を説明するための図である。図２に示す対応テーブルでは、検出パラメータの一例として、移動平均法による二値化処理で用いられる移動平均サイズを定めている。そして、７画素、１１画素、１６画素の各太さ値に対して、９〜４１画素、１５〜７０画素、３１〜１１１画素の移動平均サイズが対応付けられている。この移動平均サイズの値は実験データをもとに定められた値であり、各太さ値に対して、ボケやブレが発生している画像から文字部分を検出するのに良好な結果を得られる移動平均サイズが対応付けられている。
【００２６】
また、移動平均サイズを太さ値で割った値は、概ね同程度の範囲内に収まっていることがわかる。そのため、パラメータ決定部１５は、図２に示す対応テーブルに基づいて、移動平均サイズを文字太さの一定倍、例えば、文字太さの３〜５倍程度の値に決定することが望ましい。
【００２７】
さらに、移動平均サイズを太さ値で割った値は、７画素では１．２９〜５．８６、１１画素では１．３６〜６．３６、１６画素では１．９３〜６．９３であり、太さ値に伴い大きくなる傾向にある。そのため、パラメータ決定部１５は、太さ値を一定倍したものに、さらに太さ値に比例する定数を加算して、移動平均サイズを決定することとしても良い。なお、図２に示す移動平均サイズは実験結果の一例であり、対応テーブルにおける移動平均サイズの値は実験環境等の条件により変化するものとする。
【００２８】
また、図２に示す対応テーブルでは、各太さ値に対して移動平均サイズが対応付けられているが、これに限られるものではない。例えば、対応テーブルに移動平均サイズの最小値が設けられ、パラメータ決定部１５は、ある値以下の太さ値に対しては、最小値の移動平均サイズを使用することを決定するような構成にしても良い。このような構成にすることで、太さ値が小さくなるのに伴い移動平均サイズも小さくなったために二値化処理後の文字部分が途切れてしまうことを抑制する。
【００２９】
＜出力画像データを生成する処理の説明＞
次に、第２画像処理部１６が出力画像データを生成する処理について説明する。図３（ａ）、（ｂ）、（ｃ）は、移動平均法による二値化処理の一例を説明するための図である。図３（ａ）〜（ｃ）のそれぞれにおいて、左図は二値化処理前の画像データ、右図は二値化処理後の画像データを表し、左図に示す画像データでは、二つの隣り合った文字「０」においてボケやブレが発生しているものとする。文字「０」の周囲のハッチング部分がボケ・ブレの発生箇所である。
【００３０】
図３（ａ）は、移動平均サイズが文字より大きい場合の一例を説明するための図である。この場合、移動平均サイズ内では、文字の背景部分、即ち画素値が小さい部分の割合が大きくなるため、周辺画素の画素値の平均値は小さくなる。つまり、二つの文字の境目等のブレが発生している部分の画素を対象画素とすると、対象画素の画素値の方が周辺画素の画素値の平均値よりも大きくなり、黒画素として処理されることとなる。この場合、右図の二値化処理後の画像データのように、文字と文字とが接触して処理されてしまう。
【００３１】
図３（ｂ）は、移動平均サイズが文字の幅より小さい場合の一例を説明するための図である。この場合、文字部分の中心付近を対象画素とすると、移動平均サイズ内の画素は全て文字部分の画素となるため、対象画素の画素値と周辺画素の画素値の平均値とは近い値になる。その結果、文字の中心付近の対象画素は白画素として処理され、右図の二値化処理後の画像データのように、文字の中抜けが生じることとなる。
【００３２】
図３（ｃ）は、本実施の形態に係る画像処理装置１により移動平均サイズが決定された場合の一例を説明するための図である。この場合、二つの文字の境目の画素を対象画素とすると、対象画素の画素値の方が周辺画素の画素値の平均値よりも小さい、または、対象画素の画素値の方が大きくても画素値の差が予め定められた閾値よりも小さくなるように、移動平均サイズが決定されている。その結果、右図に示すように、二つの文字の境目の対象画素は二値化処理により白画素として処理される。即ち、パラメータ決定部１５により、文字部分の太さ値に基づいて、文字部分を検出するのに良好な結果を得られる移動平均サイズが決定される。そして、第２画像処理部１６は、左図に示す入力画像データから、決定された移動平均サイズを用いて右図に示す出力画像データを生成することで、二つの文字は重ならずに文字部分が良好に認識され易くなる。
【００３３】
＜入力画像データから出力画像データを生成する手順の説明＞
次に、本実施の形態に係る画像処理装置１において、入力画像データから出力画像データを生成する手順について説明する。図４は、本実施の形態に係る画像処理装置１が入力画像データから出力画像データを生成する手順の一例を示したフローチャートである。
【００３４】
まず、画像受け付け部１１は、外部から入力された入力画像データを受け付ける（ステップ１０１）。そして、画像受け付け部１１は、受け付けた入力画像データを第１画像処理部１２および第２画像処理部１６に送信する。次に、第１画像処理部１２は、入力画像データから入力画像の文字部分を検出して、文字画像データを生成する（ステップ１０２）。そして、第１画像処理部１２は、生成した文字画像データを太さ算出部１３に送信する。ここで、第１画像処理部１２は、例えば、移動平均法による二値化処理等により文字画像データを生成する。
【００３５】
移動平均法による二値化処理の場合、第１画像処理部１２は、例えば、標準の文字サイズとして予め定められた文字サイズや撮影に用いられたデジタルカメラの最大画素数等から、入力画像データの文字サイズを想定する。そして、第１画像処理部１２は、想定した文字サイズの文字を検出可能な移動平均サイズを用いて、文字画像データを生成する。ここで、移動平均サイズが小さければ、図３（ｂ）の右図に示す画像データのように、文字の中抜けが生じる場合がある。第１画像処理部１２による二値化処理後の文字部分は、図３（ａ）の右図に示す画像データのように、文字と文字とが接触している状態であっても良い。ただし、文字の中抜けが生じると、文字部分の太さ値が正しく算出されないこととなる。そのため、第１画像処理部１２は、図３（ａ）に示す移動平均サイズのように、文字よりも大きくなるような移動平均サイズを決定することが望ましい。
【００３６】
次に、太さ算出部１３は、第１画像処理部１２から送信された文字画像データから連結領域を抽出する（ステップ１０３）。そして、太さ算出部１３は、抽出した連結領域から１つの連結領域を選択し、選択した連結領域の太さ値を算出して記憶しておく（ステップ１０４）。次に、太さ算出部１３は、抽出した全ての連結領域について太さ値を算出したか否かを判断する（ステップ１０５）。全ての連結領域について太さ値が算出された場合（ステップ１０５でＹｅｓ）、太さ算出部１３は全ての連結領域の太さ値から、文字画像データにおける太さ値を決定する（ステップ１０６）。ここで、太さ算出部１３は、例えば、各連結領域の太さ値の平均値や中央値等を算出し、算出した値を文字画像データにおける太さ値とする。そして、太さ算出部１３は、決定した太さ値をパラメータ決定部１５に送信する。一方、まだ太さ値が算出されていない連結領域がある場合（ステップ１０５でＮｏ）、ステップ１０４へ移行する。
【００３７】
次に、パラメータ決定部１５は、パラメータ格納部１４から対応テーブルを取得し、取得した対応テーブルと太さ算出部１３から送信された太さ値とに基づいて、検出パラメータを決定する（ステップ１０７）。そして、パラメータ決定部１５は、決定した検出パラメータを第２画像処理部１６に送信する。第２画像処理部１６は、パラメータ決定部１５から送信された検出パラメータを用いて、画像受け付け部１１から送信された入力画像データから入力画像の文字部分を検出して出力画像データを生成し（ステップ１０８）、本処理フローは終了する。
【００３８】
以上のように、本実施の形態に係る画像処理装置１は、ボケやブレが発生している画像において、複数の文字が重なった個所等を含む状態で文字部分を検出し、文字部分の太さを算出する。そして、画像処理装置１は、文字部分の太さに基づいて、入力画像から文字部分を検出するのに良好な結果を得られる検出パラメータを決定する。このように決定した検出パラメータを用いることにより、画像処理装置１は、ボケやブレが発生している画像においても文字を認識するのを容易にする。
【００３９】
また、図４のステップ１０６において、太さ算出部１３は、全ての連結領域の太さ値から文字画像データにおける太さ値を算出したが、これに限られるものではない。例えば、太さ算出部１３は、全連結領域から、文字画像データにおける太さ値を算出するための連結領域を選出して、選出した連結領域の太さ値に基づいて文字画像データの太さ値を算出することとしても良い。
また、例えば、太さ算出部１３は、各連結領域の太さ値の全てをパラメータ決定部１５へ送信し、パラメータ決定部１５は連結領域ごとに検出パラメータを決定することとしても良い。このような構成にすることで、各連結領域に対応した検出パラメータを用いて出力画像データの生成が行われるため、より一層文字部分の認識が容易になる。
【００４０】
さらに、図４のステップ１０４において、太さ算出部１３は、連結領域ごとに太さ値を算出したが、これに限られるものではない。例えば、太さ算出部１３は、入力画像の文字部分の画素ごとに太さ値を算出し、パラメータ決定部１５は画素ごとに検出パラメータを決定することとしても良い。このような構成にすることで、各画素に対応した検出パラメータを用いて出力画像データの生成が行われるため、より一層文字部分の認識が容易になる。
【００４１】
［実施の形態２］
＜画像処理装置の構成の説明＞
実施の形態２に係る画像処理装置１は、単位検出部１７および単位領域抽出部１８を新たに備え、文字部分を構成する単位ごとに検出パラメータを決定する点で、実施の形態１に係る画像処理装置１と異なる。
【００４２】
図５は、本実施の形態２に係る画像処理装置１の機能構成例を示したブロック図である。実施の形態２の構成要素で実施の形態１の構成要素と同じものについては、同じ符号を使用する。
【００４３】
単位抽出手段の一例としての単位検出部１７は、第１画像処理部１２から文字画像データを取得して、取得した文字画像データに基づく画像内の文字部分を構成する行や列等の単位を検出する。そして、単位検出部１７は、検出した行や列に関する情報（以下、行列情報と称する）を単位領域抽出部１８に送信する。この行列情報は、例えば、検出された行や列の画像内での位置や、行や列の幅等の情報である。また、単位検出部１７は、行や列等の単位を検出することとしたが、これに限られるものではなく、文書を分ける単位であれば、文字や単語、段落等どのような単位ごとに検出することとしても良い。
【００４４】
単位抽出手段の一例としての単位領域抽出部１８は、単位検出部１７から送信された行列情報と第１画像処理部１２から取得した文字画像データとに基づいて、文字画像データにおいて、単位検出部１７により検出された行や列等の単位に相当する箇所（以下、第１単位箇所と称する）を単位ごとに抽出する。また、単位領域抽出部１８は、単位検出部１７から送信された行列情報と画像受け付け部１１から取得した入力画像データとに基づいて、入力画像データにおいて、単位検出部１７により検出された行や列等の単位に相当する箇所（以下、第２単位箇所と称する）を単位ごとに抽出する。ここで、第１単位箇所および第２単位箇所は、行や列等の同一の単位ごとに抽出されるため、第１単位箇所と第２単位箇所とはそれぞれ対応している。そして、単位領域抽出部１８は、抽出した第１単位箇所を太さ算出部１３に送信し、抽出した第２単位箇所を第２画像処理部１６に送信する。
【００４５】
＜入力画像データから出力画像データを生成する手順の説明＞
次に、本実施の形態に係る画像処理装置１において、入力画像データから出力画像データを生成する手順について説明する。図６は、本実施の形態に係る画像処理装置１が入力画像データから出力画像データを生成する手順の一例を示したフローチャートである。
【００４６】
まず、画像受け付け部１１は、外部から入力された入力画像データを受け付ける（ステップ２０１）。そして、画像受け付け部１１は、受け付けた入力画像データを第１画像処理部１２および単位領域抽出部１８に送信する。次に、第１画像処理部１２は、入力画像データから入力画像の文字部分を検出して、文字画像データを生成する（ステップ２０２）。そして、第１画像処理部１２は、生成した文字画像データを単位検出部１７および単位領域抽出部１８に送信する。
【００４７】
次に、単位検出部１７は、文字画像データを単位ごとに分けて検出し、検出により取得した行列情報を単位領域抽出部１８に送信する（ステップ２０３）。単位領域抽出部１８は、単位検出部１７から送信された行列情報と第１画像処理部１２から送信された文字画像データとに基づいて、文字画像データから第１単位箇所を単位ごとに抽出する（ステップ２０４）。そして、単位領域抽出部１８は、抽出した第１単位箇所を太さ算出部１３に送信する。また、単位領域抽出部１８は、単位検出部１７から送信された行列情報と画像受け付け部１１から送信された入力画像データとに基づいて、入力画像データから第２単位箇所を単位ごとに抽出する（ステップ２０５）。そして、単位領域抽出部１８は、抽出した第２単位箇所を第２画像処理部１６に送信する。
【００４８】
次に、太さ算出部１３は、単位領域抽出部１８から送信された第１単位箇所から１つの第１単位箇所を選択し、選択した第１単位箇所の太さ値を算出する（ステップ２０６）。このステップ２０６の太さ値を算出する処理は、図４に示すステップ１０３〜１０６において、太さ算出部１３が文字画像データにおける太さ値を決定する処理と同様である。そして、太さ算出部１３は、算出した第１単位箇所の太さ値をパラメータ決定部１５に送信する。次に、パラメータ決定部１５は、パラメータ格納部１４から対応テーブルを取得し、取得した対応テーブルと太さ算出部１３から送信された太さ値とに基づいて、検出パラメータを決定する（ステップ２０７）。そして、パラメータ決定部１５は、決定した検出パラメータを第２画像処理部１６に送信する。
【００４９】
第２画像処理部１６は、パラメータ決定部１５から送信された検出パラメータを用いて、単位領域抽出部１８から送信された第２単位箇所から文字部分を検出して出力画像データを生成する（ステップ２０８）。ここで、各第２単位箇所と各第１単位箇所とは対応しているため、第２単位箇所は、第１単位箇所をもとに決定された検出パラメータとも対応している。そのため、第２画像処理部１６は、送信された検出パラメータに対応する第２単位箇所について、文字部分を検出して出力画像データを生成する。
【００５０】
次に、第２画像処理部１６は、全ての第２単位箇所について出力画像データの生成が行われたか否かを判断する（ステップ２０９）。全ての第２単位箇所について出力画像データの生成が行われた場合（ステップ２０９でＹｅｓ）、本処理フローは終了する。一方、出力画像データの生成が行われていない第２単位箇所がある場合（ステップ２０９でＮｏ）、ステップ２０６へ移行する。
【００５１】
以上のように、本実施の形態に係る画像処理装置１は、入力画像データから行や列、文字等の単位を検出し、単位ごとに検出パラメータを決定する。このような構成にすることで、画像処理装置１は、ボケやブレが発生している画像において、画像内で文字の太さが異なる場合にも、それぞれの箇所に応じた検出パラメータを決定して文字を認識するのを容易にする。
【００５２】
＜ハードウェア構成の説明＞
ところで、本発明の実施の形態における画像処理装置１の処理は、汎用のコンピュータにおいて実現してもよい。そこで、この処理をコンピュータで実現するものとして、そのハードウェア構成について説明する。
図７は、本実施の形態を適用可能なコンピュータのハードウェア構成の一例を示した図である。
図示するように、画像処理装置１は、演算手段であるＣＰＵ（Central Processing Unit）２１と、記憶手段であるメインメモリ２２及び磁気ディスク装置（ＨＤＤ：Hard Disk Drive）２３とを備える。ここで、ＣＰＵ２１は、ＯＳ（Operating System）やアプリケーション等の各種ソフトウェアを実行し、画像処理装置１の各機能を実現する。また、メインメモリ２２は、各種ソフトウェアやその実行に用いるデータ等を記憶する記憶領域であり、磁気ディスク装置２３は、実施の形態１および実施の形態２に係る画像処理装置１の各機能を実現するためのプログラムを格納している。そして、このプログラムがメインメモリ２２にロードされ、このプログラムに基づく処理がＣＰＵ２１により実行されることで、各機能が実現される。更に、画像処理装置１は、外部との通信を行うための通信Ｉ／Ｆ２４とを備える。
【００５３】
具体的には、第１画像処理部１２による文字画像データの生成、太さ算出部１３による太さ値の算出、パラメータ決定部１５による検出パラメータの決定、第２画像処理部１６による出力画像データの生成、単位検出部１７による単位の検出等の機能は、例えば、ＣＰＵ２１により実現される。また、画像受け付け部１１による入力画像データの受け付けや、第２画像処理部１６による出力画像データの出力等の機能は、通信Ｉ／Ｆ２４により実現される。また、パラメータ格納部１４は、例えば、磁気ディスク装置２３等の記憶部により実現される。
【００５４】
＜プログラムの説明＞
以上説明を行った本実施の形態における画像処理装置１が行う処理は、例えば、アプリケーションソフトウェア等のプログラムとして用意される。
【００５５】
よって、画像処理装置１が行う処理は、コンピュータに、入力された画像データである入力画像データから複数の文字が重なった箇所を含む文字部分を検出する機能と、検出された文字部分の太さの値である太さ値を算出する機能と、太さ値と、文字の重なりを分離するための予め定められた変数との対応関係に基づいて、算出された太さ値に対応する変数を決定する機能と、決定された変数を用いて、入力画像データから文字の重なりのない文字部分を検出する機能とを実現させるためのプログラムとして捉えることもできる。
【００５６】
なお、本発明の実施の形態を実現するプログラムは、通信手段により提供することはもちろん、ＣＤ−ＲＯＭ等の記録媒体に格納して提供することも可能である。
【００５７】
また、本発明の実施の形態では、画像処理装置１が１台で各処理を実行する構成としたが、これに限られるものではなく、画像処理装置１の処理を複数の装置で実行するような構成にしても良い。例えば、画像処理装置１の外部に接続された装置として第２画像処理部１６の処理を実行するものを設け、画像処理装置１と併せて機能する画像処理システム等が考えられる。
【符号の説明】
【００５８】
１…画像処理装置、１１…画像受け付け部、１２…第１画像処理部、１３…太さ算出部、１４…パラメータ格納部、１５…パラメータ決定部、１６…第２画像処理部、１７…単位検出部、１８…単位領域抽出部
【図１】
2015028735.tif 000003
【図２】
2015028735.tif 000004
【図３】
2015028735.tif 000005
【図４】
2015028735.tif 000006
【図５】
2015028735.tif 000007
【図６】
2015028735.tif 000008
【図７】
2015028735.tif 000009