(57)【要約】【課題】背景が有色である画像を対象として、背景である画素を前景として判定すること、又は前景である画素を背景として判定することを防止するようにした画像処理装置を提供する。【解決手段】画像処理装置の画像受付手段は、背景が有色である画像を受け付け、領域抽出手段は、前記画像受付手段によって受け付けられた画像を対象として、色数が２色の領域を抽出し、計数手段は、前記領域抽出手段によって抽出された領域の画像に対して、予め定められた色空間における各画素値を有する画素数を計数し、判定手段は、前記計数手段による計数結果に基づいて、前記領域の画像の画素を前景又は背景のいずれかに判定する。【選択図】図１
2012142872.tif 000002
【特許請求の範囲】
【請求項１】
背景が有色である画像を受け付ける画像受付手段と、
前記画像受付手段によって受け付けられた画像を対象として、色数が２色の領域を抽出する領域抽出手段と、
前記領域抽出手段によって抽出された領域の画像に対して、予め定められた色空間における各画素値を有する画素数を計数する計数手段と、
前記計数手段による計数結果に基づいて、前記領域の画像の画素を前景又は背景のいずれかに判定する判定手段
を具備することを特徴とする画像処理装置。
【請求項２】
前記領域抽出手段は、３色目の色の画素を含まないように領域を抽出する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記判定手段は、前記計数手段による第１色の計数結果と第２色の計数結果の差に基づいて、前記予め定められた色空間の色平面を選択し、該選択した色平面における第１色と第２色との間にある値を閾値として、前記領域の画像の画素を前景又は背景のいずれかに判定する
ことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記画像受付手段によって受け付けられた画像を対象として平坦化処理を行う平坦化手段
をさらに具備し、
前記領域抽出手段は、前記平坦化手段によって平坦化処理された画像を対象として、色数が２色の領域を抽出する
ことを特徴とする請求項１から３のいずれか一項に記載の画像処理装置。
【請求項５】
前記領域抽出手段は、前記画像を対象として、予め定められた大きさの矩形を該大きさ毎に走査して、色数が２色の領域を抽出する
ことを特徴とする請求項１から４のいずれか一項に記載の画像処理装置。
【請求項６】
コンピュータを、
背景が有色である画像を受け付ける画像受付手段と、
前記画像受付手段によって受け付けられた画像を対象として、色数が２色の領域を抽出する領域抽出手段と、
前記領域抽出手段によって抽出された領域の画像に対して、予め定められた色空間における各画素値を有する画素数を計数する計数手段と、
前記計数手段による計数結果に基づいて、前記領域の画像の画素を前景又は背景のいずれかに判定する判定手段
として機能させるための画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理プログラムに関する。
【背景技術】
【０００２】
画像内の背景と前景を判定する技術がある。
これに関連する技術として、例えば、特許文献１には、カラー画像のＲＧＢ値を明度、色相、彩度等の情報に変換せずに、粋なし文字、反転文字図形等を識別し、特別な処理なしにエッジ強調文字図形等を識別できる高速な文字図形と背景領域の識別方法及び装置を提供することを課題とし、カラー画像中のＲＧＢ値を直接比較することで、類似した色領域を色領域検出部で検出し、その色領域が規定の大きさ、形状の場合はその画素を画素分類部がＲＧＢ値の差を用いて分類し、分類した画素の数を計数し、文字抽出部は、分類した画素で２番目に多い画素の数が規定値の範囲の場合、１番多い画素の領域を背景領域、２番目に多い画素の領域を文字図形として識別して粋なし文字図形、反転文字図形等を識別し、色領域の文字を２値化し、さらに１番多い画素と２番目の画素のＲＧＢ値を比較し、明度の高い方を基準に抽出して色領域の文字を２値化することで、エッジ強調文字等の影響を除くことが開示されている。
【０００３】
また、例えば、特許文献２には、新聞の見出しや雑誌の表紙のように、テクスチャや網点又は濃淡からなる背景画像をもつ文字列を含む画像から、背景部分と、文字列画像の部分の濃度とを分離し、画像の濃淡を利用して文字列画像のみを抽出することを目的とし、入力された多値画像の各領域における濃度分布を求め、文字部分が均一な濃度であることを利用して、濃度分布の違いから画像上の領域の濃度差をつける手段により、ある濃度の領域を文字部として黒くし、その他の領域を白くした文字列画像の候補を１つ又は複数生成し、その中から与えられた値を用いて候補同士を比較し、信頼度の高い順に画像を選択できるようにすることが開示されている。
【０００４】
また、例えば、特許文献３には、ヒストグラムによる背景抽出を行うことなく、カラー画像の下地飛ばし処理を行うことを課題とし、入力されたカラー信号を明度成分と色差成分に分解し、明度成分の閾値以上及び閾値以下の判定を行い、判定された画素数をカウントすることにより、その閾値を追従変動させ、色差成分の閾値以上及び閾値以下の判定を行い、判定された画素数をカウントすることにより、その閾値を追従変動させることが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−２１３０９０号公報
【特許文献２】特開平０６−２６６８９７号公報
【特許文献３】特開２００８−０６０８３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、背景が有色である画像を対象として、背景である画素を前景として判定すること、又は前景である画素を背景として判定することを防止するようにした画像処理装置及び画像処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００７】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、背景が有色である画像を受け付ける画像受付手段と、前記画像受付手段によって受け付けられた画像を対象として、色数が２色の領域を抽出する領域抽出手段と、前記領域抽出手段によって抽出された領域の画像に対して、予め定められた色空間における各画素値を有する画素数を計数する計数手段と、前記計数手段による計数結果に基づいて、前記領域の画像の画素を前景又は背景のいずれかに判定する判定手段を具備することを特徴とする画像処理装置である。
【０００８】
請求項２の発明は、前記領域抽出手段は、３色目の色の画素を含まないように領域を抽出することを特徴とする請求項１に記載の画像処理装置である。
【０００９】
請求項３の発明は、前記判定手段は、前記計数手段による第１色の計数結果と第２色の計数結果の差に基づいて、前記予め定められた色空間の色平面を選択し、該選択した色平面における第１色と第２色との間にある値を閾値として、前記領域の画像の画素を前景又は背景のいずれかに判定することを特徴とする請求項１又は２に記載の画像処理装置である。
【００１０】
請求項４の発明は、前記画像受付手段によって受け付けられた画像を対象として平坦化処理を行う平坦化手段をさらに具備し、前記領域抽出手段は、前記平坦化手段によって平坦化処理された画像を対象として、色数が２色の領域を抽出することを特徴とする請求項１から３のいずれか一項に記載の画像処理装置である。
【００１１】
請求項５の発明は、前記領域抽出手段は、前記画像を対象として、予め定められた大きさの矩形を該大きさ毎に走査して、色数が２色の領域を抽出することを特徴とする請求項１から４のいずれか一項に記載の画像処理装置である。
【００１２】
請求項６の発明は、コンピュータを、背景が有色である画像を受け付ける画像受付手段と、前記画像受付手段によって受け付けられた画像を対象として、色数が２色の領域を抽出する領域抽出手段と、前記領域抽出手段によって抽出された領域の画像に対して、予め定められた色空間における各画素値を有する画素数を計数する計数手段と、前記計数手段による計数結果に基づいて、前記領域の画像の画素を前景又は背景のいずれかに判定する判定手段として機能させるための画像処理プログラムである。
【発明の効果】
【００１３】
請求項１の画像処理装置によれば、背景が有色である画像を対象として、背景である画素を前景として判定すること、又は前景である画素を背景として判定することを防止することができる。
【００１４】
請求項２の画像処理装置によれば、３色目の色の画素が含まれないように領域を抽出することができる。
【００１５】
請求項３の画像処理装置によれば、本構成を有していない場合に比較して、前景であるか背景であるかの判定精度を高めることができる。
【００１６】
請求項４の画像処理装置によれば、画像にノイズが発生していたとしても、背景である画素を前景として判定すること、又は前景である画素を背景として判定することを防止することができる。
【００１７】
請求項５の画像処理装置によれば、本構成を有していない場合に比較して、色数が２色の領域を抽出するのにかかる時間を削減できる。
【００１８】
請求項６の画像処理プログラムによれば、背景が有色である画像を対象として、背景である画素を前景として判定すること、又は前景である画素を背景として判定することを防止することができる。
【図面の簡単な説明】
【００１９】
【図１】第１の実施の形態の構成例についての概念的なモジュール構成図である。
【図２】背景が有色である画像から前景と背景を区別する処理例を示す説明図である。
【図３】第１の実施の形態による処理例を示すフローチャートである。
【図４】領域抽出の例を示す説明図である。
【図５】領域内のヒストグラムの例を示す説明図である。
【図６】領域内のヒストグラムの例を示す説明図である。
【図７】領域内のヒストグラムの例を示す説明図である。
【図８】領域抽出の処理過程の例を示す説明図である。
【図９】２色領域の抽出の例を示す説明図である。
【図１０】Ｒ平面における画像とヒストグラムの例を示す説明図である。
【図１１】Ｇ平面における画像とヒストグラムの例を示す説明図である。
【図１２】Ｂ平面における画像とヒストグラムの例を示す説明図である。
【図１３】２色領域の抽出の例を示す説明図である。
【図１４】Ｇ平面、Ｒ平面における２色領域の例を示す説明図である。
【図１５】各領域のヒストグラムの例を示す説明図である。
【図１６】前景を抽出した例を示す説明図である。
【図１７】第２の実施の形態の構成例についての概念的なモジュール構成図である。
【図１８】第２の実施の形態による処理例を示すフローチャートである。
【図１９】平坦化処理を行う前と後のヒストグラムの例を示す説明図である。
【図２０】フィルタの走査処理の例を示す説明図である。
【図２１】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００２０】
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
図１は、第１の実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００２１】
第１の実施の形態である画像処理装置は、画像の画素を前景又は背景のいずれかに判定するものであって、図１の例に示すように、画像受付モジュール１１０、領域抽出モジュール１２０、計数モジュール１３０、前景／背景判定モジュール１４０、前景抽出モジュール１５０を有している。
なお、前景とは、背景の対概念であり、例えば画素塊である文字、図形、グラフ等が該当する。以下、例示として文字を使用して説明する。背景は、文字、図形、グラフ等以外の下地の領域である。一般的に、背景の面積は、前景の面積よりも大きい。
また、画素塊とは、４連結又は８連結で連続する画素領域を少なくとも含み、これらの画素領域の集合をも含むようにしてもよい。これらの画素領域の集合とは、４連結等で連続した画素領域が複数あり、その複数の画素領域は近傍にあるものをいう。ここで、近傍にあるものとは、例えば、互いの画素領域が距離的に近いもの、文章としての１行から１文字ずつ切り出すように縦又は横方向に射影し、空白地点で切り出した画像領域、又は一定間隔で切り出した画像領域等がある。
なお、１つの画素塊として、１文字の画像となる場合が多い。ただし、実際に人間が文字として認識できる画素領域である必要はない。文字の一部分、文字を形成しない画素領域等もあり、何らかの画素の塊であればよい。
【００２２】
画像受付モジュール１１０は、領域抽出モジュール１２０と接続されており、背景が有色である画像を受け付ける。画像を受け付けるとは、例えば、スキャナ、カメラ等で画像を読み込むこと、ファックス等で通信回線を介して外部機器から画像を受信すること、ハードディスク（コンピュータに内蔵されているものの他に、ネットワークを介して接続されているもの等を含む）等に記憶されている画像を読み出すこと等が含まれる。画像は、有色画像（いわゆるカラー画像）であり、その内容として前景と背景に分かれるものであり、特に背景が有色である。受け付ける画像は、１枚であってもよいし、複数枚であってもよい。また、画像の内容として、ビジネスに用いられる文書、広告宣伝用のパンフレット等であってもよい。
ここで、受け付ける画像として、前景である１つの画素塊は単色であり、かつその前景の背景も単色である。つまり、前景と背景の組み合わせの領域内の画像は２色で構成されている。ただし、他の前景と背景の組み合わせと同じ色である必要はない。例えば、全体が単色である背景に文字毎の色が異なっている（ただし、各文字は単色）ような画像であってもよいし、同じ色である複数の文字があるが、その各文字は異なる色の背景（ただし、各文字の背景は単色）であるような画像であってもよい。また、文字と背景の組み合わせの領域内の画像が２色で構成されていれば、各文字は異なる色であり、各文字の背景も異なる色であるような画像も対象となる。
【００２３】
領域抽出モジュール１２０は、画像受付モジュール１１０、計数モジュール１３０と接続されており、画像受付モジュール１１０によって受け付けられた画像を対象として、色数が２色の領域を抽出する。また、領域抽出モジュール１２０は、３色目の色の画素を含まないように領域を抽出するようにしてもよい。例えば、具体的には、図８等を用いて後述するように、予め定められた大きさの矩形であるフィルタ（ここでのフィルタは注目画素の近傍にある画素（例えば、ｎ×ｎの矩形内にある画素）を対象として処理を行う機能を有する）を用いて、画像受付モジュール１１０が受け付けた画像を走査する。そして、フィルタ内の注目画素の画素値と同じ画素値を有する画素とそれ以外の画素値を有する画素に分け、それ以外の画素値が無い又は１種類であるならば、その領域（２色領域）を拡大する。したがって、フィルタの走査によって移動した分だけ領域が大きくなる。そして、それ以外の画素値が２種類以上であったならば、いままでの領域にあった画素の画素値以外の画素（つまり、３色目の画素）を含まないように領域を決定する。なお、ここでの領域は矩形（正方形を含む長方形）であるとする。
【００２４】
計数モジュール１３０は、領域抽出モジュール１２０、前景／背景判定モジュール１４０と接続されており、領域抽出モジュール１２０によって抽出された領域の画像に対して、予め定められた色空間における各画素値を有する画素数を計数する。例えば、具体的には、色空間としてＲＧＢ色空間を用いた場合は、その色空間における平面（この場合は、Ｒ平面、Ｇ平面、Ｂ平面）毎に、各画素値の画素数を計数する。一般的には、ヒストグラム（例えば、横軸に画素値、縦軸にその画素値を有する画素の数をプロットしたグラフ）を作成するといわれている。ＲＧＢ色空間のデータ表現として、例えば、２４ｂｉｔ／画素であり、Ｒとして８ｂｉｔ、Ｇとして８ｂｉｔ、Ｂとして８ｂｉｔに分かれている。Ｒの値である０〜２５５の各画素値の画素数、Ｇの値である０〜２５５の各画素値の画素数、Ｂの値である０〜２５５の各画素値の画素数、をそれぞれ計数すればよい。この計数の結果、領域は２色であるので、ヒストグラムとしては２つの山が発生することになる（ある２つの画素値を有する画素数が大きくなる）。
【００２５】
前景／背景判定モジュール１４０は、計数モジュール１３０、前景抽出モジュール１５０と接続されており、計数モジュール１３０による計数結果に基づいて、領域抽出モジュール１２０によって抽出された領域の画像の画素を前景又は背景のいずれかに判定する。また、前景／背景判定モジュール１４０は、計数モジュール１３０による第１色の計数結果と第２色の計数結果の差に基づいて、予め定められた色空間の色平面を選択し、その選択した色平面における第１色と第２色との間にある値を閾値として、領域の画像の画素を前景又は背景のいずれかに判定するようにしてもよい。例えば、具体的には、前述のＲＧＢ色空間では、３つの色平面（Ｒ平面、Ｇ平面、Ｂ平面）内でヒストグラム上の２つの山が最も離れている色平面を選択する。２つの山が最も離れているとは、第１色の計数結果と第２色の計数結果の差が、他の色平面での差よりも大きいことをいう。そして、その選択した色平面における第１色と第２色との間にある値を閾値として、領域の画像の画素を前景又は背景のいずれかに判定する。より具体的には、背景の面積は前景の面積よりも一般的には大きいことを利用して、画素数が多い画素値の画素を背景として、他方を前景とするようにしてもよい。これによって、Ｒ平面、Ｇ平面、Ｂ平面のいずれかの平面において、前景と背景に分けられた画像を得ることになる。
【００２６】
前景抽出モジュール１５０は、前景／背景判定モジュール１４０と接続されており、前景／背景判定モジュール１４０による判定結果に基づいて、前景画像を抽出する。例えば、前述のＲＧＢ色空間で、Ｒ平面、Ｇ平面、Ｂ平面のいずれかの平面において、前景と背景に分けられた画像を得て、その画像をフィルタ（ここでのフィルタは画像から前景又は背景の画像を抜き出す機能を有する）として用いて、画像受付モジュール１１０が受け付けた画像から前景の画像を抽出する。
その後は、例えば、前景だけとなっている画像を文字認識処理装置によって文字認識してもよいし、その他の文字処理、画像処理を施すようにしてもよい。
【００２７】
図２は、背景が有色である画像から前景と背景を区別する処理例を示す説明図である。
図２（ａ）に例示する対象画像２００は、例えば有色背景領域２１０、有色背景領域２２０を有しており、その間に空白領域がある。有色背景領域２１０は、濃いピンク色を背景として前景の文字が赤色であり、有色背景領域２２０は、薄いピンク色を背景として前景の文字が青色である。
ここで、本実施の形態を用いずに、単純な閾値によって２値化処理を行って前景である文字を抽出しようとした場合、その閾値の定め方によっては、図２（ｂ）に例示する前景画像抽出失敗画像２３０のように有色領域を全て抽出してしまう（図では全て黒くなってしまう）場合、又は前景画像抽出失敗画像２４０のように有色背景領域２２０内の文字だけを抽出してしまい、有色背景領域２１０からは文字が抽出できない（図では白くなってしまう）場合のように、文字を背景として抽出してしまう間違い、背景を文字として抽出してしまう間違いが発生する。これらの現象は、背景と文字の明度差が小さくなるほど発生しやすくなる。
本実施の形態では、画像受付モジュール１１０が図２（ａ）に例示の対象画像２００を受け付けた場合、前景抽出モジュール１５０が図２（ｃ）に例示の前景画像抽出画像２５０のような画像を出力することになる。
【００２８】
図３は、第１の実施の形態による処理例を示すフローチャートである。
ステップＳ３０２では、画像受付モジュール１１０が、背景が有色である画像を受け付ける。
ステップＳ３０４では、領域抽出モジュール１２０が、色によるラベリング処理を行う。同じ色の画素には、同じラベルを付する処理を行う。
ステップＳ３０６では、領域抽出モジュール１２０が、２色の領域を抽出する。文字列方向（予め定められた方向（例えば横方向）であってもよい）の長さが長くなるように領域を抽出する。なお、図８の例では、左上端画素をＡ０画素とし、右方向に順にＡ１画素、Ａ２画素・・・とし、右上端画素をＡ５画素とし、次の２行目の左端画素をＡ６画素とし、同様に順に番号をふり、右下端画素をＡ３５画素とする（図２０の例についても同様である）。
【００２９】
ステップＳ３０４、ステップＳ３０６の処理について、図４、図８、図９の例を用いて説明する。図４は、領域抽出の例を示す説明図である。図８は、領域抽出の処理過程の例を示す説明図である。
図４（ａ）の例に示すように、対象画像２００の左上からフィルタ（ｎ画素×ｎ画素、例えばｎは３）内でのラベリング処理を行う。ここで、詳細に説明すると、図８（ａ）の例に示すように、対象画像２００内の一部である対象画像８００に対して、注目画素８１０を中心にしたフィルタ８２０内の処理を行う。フィルタ８２０内の画素の画素値は、注目画素８１０（Ａ０画素（図８（ａ）の例では星印の画素））と同じ画素値であるか否かを判断する。Ａ１画素、Ａ６画素、Ａ７画素（図８（ａ）の例では白丸が付されている画素）は、それぞれ注目画素８１０と同じ画素値である。このような場合は、フィルタ８２０内が単色であるので、領域抽出モジュール１２０が領域としてフィルタ８２０の領域を抽出する。具体的には、Ａ０画素、Ａ１画素、Ａ６画素、Ａ７画素の領域を抽出する。なお、ここで同じ画素値とは、少なくとも全く同じ画素値の場合を含み、予め定められた範囲内にある場合も同じ画素値としてもよい。次に、図８（ｂ）の例のようにフィルタ８２０を１画素右に移動（いわゆる走査）させる。ここでも同じ処理を行い、注目画素８１０（Ａ１画素（図８（ｂ）の例では星印の画素））と同じ画素値であるか否かを判断する。Ａ０画素、Ａ２画素、Ａ６画素、Ａ７画素（図８（ｂ）の例では白丸が付されている画素）は、それぞれ注目画素８１０と同じ画素値である。そして、Ａ８画素（図８（ｂ）の例では黒丸が付されている画素）は、注目画素８１０とは異なる画素値である。このような場合は、フィルタ８２０内は２色であるので、領域抽出モジュール１２０が領域としてフィルタ８２０の領域を抽出する。具体的には、Ａ０画素、Ａ１画素、Ａ２画素、Ａ６画素、Ａ７画素、Ａ８画素の領域を抽出する。このように、フィルタ８２０内が単色又は２色であるならば、領域を拡大する。そして、図８（ｃ）の例のように、対象画像８００の右下までフィルタ８２０を移動させた場合、注目画素８１０（Ａ２８画素（図８（ｃ）の例では星印の画素））と同じ画素値であるか否かを判断する。Ａ２１画素、Ａ２７画素（図８（ｃ）の例では黒丸が付されている画素）は、それぞれ注目画素８１０と同じ画素値である。そして、Ａ２２画素、Ａ２３画素、Ａ２９画素、Ａ３３画素、Ａ３４画素（図８（ｃ）の例では白丸が付されている画素）は、注目画素８１０とは異なる画素値であるが、いままでの領域内にある画素値である。そして、Ａ３５画素は、注目画素８１０の画素値とも異なり、Ａ２２画素等の画素値とも異なり、この領域において３色目である。このような場合は、領域抽出モジュール１２０が領域としてＡ３５画素を含まないように、２色の領域と３色目の画素との境界を抽出して、図８（ｄ）の例に示す２色領域８３０（Ａ０画素からＡ２９画素までを含む領域）を抽出する。これは、文字列方向である横方向を長くするように領域を抽出している。なお、文字方向は、既に知られている技術を用いて画像受付モジュール１１０が受け付けた画像から文字列方向を抽出すればよい。また、横方向を予め定められた文字列方向としてもよい。
【００３０】
このようにして、図４（ｂ）の例のように、対象画像２００から領域４１０Ａを領域４１０Ｂまで拡大する。そして、次の走査ラインでは、空白領域であるので、３色目の画素が存在することになる。ここで、図８の例では、３色目の画素が１つでも発見されたならば、その画素を含まないように領域を抽出したが、３色目の画素が予め定められた数となるまで、領域を拡大して、３色目の画素が予め定められた数に達した場合は、その拡大した領域から３色目の画素を含まないように領域を抽出するようにしてもよい。例えば、図４（ｃ）の例に示すように、領域４１０Ｃのように領域を拡大した後に、３色目の画素（図は空白領域）を含まないように、図４（ｂ）の例に示す領域４１０Ｂとするようにしてもよい。
【００３１】
このような領域抽出処理による結果を図９の例に示す。図９は、２色領域の抽出の例を示す説明図である。図９（ａ）の例は、画像受付モジュール１１０が受け付けた対象画像２００を示している。図９（ｂ）の例は、領域抽出処理の結果の１つである２色領域９１０（対象画像２００の上の領域）を示している。図９（ｃ）の例は、領域抽出処理の結果の他の１つである２色領域９２０（対象画像２００の下の領域）を示している。
【００３２】
なお、ここで図４（ａ）、（ｂ）、（ｃ）の例に示す領域４１０Ａ、領域４１０Ｂ、領域４１０Ｃ内の画素値のヒストグラムを示す。図５は、領域４１０Ａ内のヒストグラムの例を示す説明図である。領域４１０Ａは単色であるので、Ｒ平面、Ｇ平面、Ｂ平面のそれぞれで１つの山だけである。なお、単色の画素値は、それぞれの平面における画素値の合成値である。図６は、領域４１０Ｂ内のヒストグラムの例を示す説明図である。領域４１０Ｂは、２色であるので、Ｒ平面、Ｇ平面、Ｂ平面のそれぞれで２つの山となる。図７は、領域４１０Ｃ内のヒストグラムの例を示す説明図である。領域４１０Ｃは、３色であるので、Ｒ平面、Ｇ平面、Ｂ平面のそれぞれで３つの山となる。なお、図５〜７のヒストグラムにおける画素数（山の高さ、縦軸で示す数値）は、山の数、山の高低の関係を説明上示すものであり、必ずしも図４の例における画素数を示すものではない。
【００３３】
ステップＳ３０８では、計数モジュール１３０が、Ｒ平面、Ｇ平面、Ｂ平面におけるヒストグラムを作成する。
ステップＳ３１０では、前景／背景判定モジュール１４０が、画素値の差が最大となる平面を選択する。
ステップＳ３０８、ステップＳ３１０の処理について、図１０、図１１、図１２の例を用いて説明する。
図１０は、Ｒ平面における画像とヒストグラムの例を示す説明図である。図１０（ａ）の例に示す対象画像（Ｒ平面）１０００は、図９（ａ）の例に示した対象画像２００のＲ平面の画像である。図１０（ｂ）の例に示すヒストグラムは、対象画像（Ｒ平面）１０００の上の２色領域（図９（ｂ）の例に示した２色領域９１０）のＲ平面におけるヒストグラムである。図１０（ｃ）の例に示すヒストグラムは、対象画像（Ｒ平面）１０００の下の２色領域（図９（ｃ）の例に示した２色領域９２０）のＲ平面におけるヒストグラムである。
図１１は、Ｇ平面における画像とヒストグラムの例を示す説明図である。図１１（ａ）の例に示す対象画像（Ｇ平面）１１００は、図９（ａ）の例に示した対象画像２００のＧ平面の画像である。図１１（ｂ）の例に示すヒストグラムは、対象画像（Ｇ平面）１１００の上の２色領域（図９（ｂ）の例に示した２色領域９１０）のＧ平面におけるヒストグラムである。図１１（ｃ）の例に示すヒストグラムは、対象画像（Ｇ平面）１１００の下の２色領域（図９（ｃ）の例に示した２色領域９２０）のＧ平面におけるヒストグラムである。
図１２は、Ｂ平面における画像とヒストグラムの例を示す説明図である。図１２（ａ）の例に示す対象画像（Ｂ平面）１２００は、図９（ａ）の例に示した対象画像２００のＢ平面の画像である。図１２（ｂ）の例に示すヒストグラムは、対象画像（Ｂ平面）１２００の上の２色領域（図９（ｂ）の例に示した２色領域９１０）のＢ平面におけるヒストグラムである。図１２（ｃ）の例に示すヒストグラムは、対象画像（Ｂ平面）１２００の下の２色領域（図９（ｃ）の例に示した２色領域９２０）のＢ平面におけるヒストグラムである。
そして、各領域（２色領域９１０と２色領域９２０）において、第１色の計数結果である画素値と第２色の計数結果である画素値の差（図１０、図１１、図１２の各ヒストグラム例で矢印で示されている山の間の距離）が、Ｒ平面、Ｇ平面、Ｂ平面の中で最大となる平面を選択する。２色領域９１０では、Ｇ平面が選択される。図１１（ｂ）の例のように矩形で囲まれたヒストグラムの差が、図１０（ｂ）、図１２（ｂ）の例での差よりも大きいからである。２色領域９２０では、Ｒ平面が選択される。図１０（ｃ）の例のように矩形で囲まれたヒストグラムの差が、図１１（ｃ）、図１２（ｃ）の例での差よりも大きいからである。
【００３４】
ステップＳ３１２では、前景／背景判定モジュール１４０が、選択された平面において、計数値が少ない山の画素値の画素を前景の画素とする２値化を行う。
ステップＳ３１２の処理について、図１３、図１４、図１５、図１６の例を用いて説明する。
図１３は、２色領域の抽出の例を示す説明図である。いままでの処理によって、画像受付モジュール１１０が受け付けた対象画像２００から２色領域９１０と２色領域９２０を抽出する。
図１４の例では、２色領域（Ｇ平面）１４１０はＧ平面における２色領域９１０、２色領域（Ｒ平面）１４２０はＲ平面における２色領域９２０の例を示す説明図である。
図１５は、各領域のヒストグラムの例を示す説明図である。図１５（ａ）に示す例は、２色領域（Ｇ平面）１４１０のＧ平面におけるヒストグラムである。図１５（ｂ）に示す例は、２色領域（Ｒ平面）１４２０のＲ平面におけるヒストグラムである。そして、この画素値の間に閾値を定める。例えば、両方の画素値の中間値を閾値とする。
図１６は、前景を抽出した例を示す説明図である。２値化画像（前景抽出画像）１６００は、元有色背景領域１６１０、元有色背景領域１６２０を有している。つまり、２色領域（Ｇ平面）１４１０に対して、図１５（ａ）に示す例の閾値を用いて２値化処理を施して元有色背景領域１６１０を得て、２色領域（Ｒ平面）１４２０に対して、図１５（ｂ）に示す例の閾値を用いて２値化処理を施して元有色背景領域１６２０を得た例である。
なお、この２値化処理では、画素数の多い方を背景（画素数の少ない方を前景）とする閾値を用いた２値化処理である。
【００３５】
ステップＳ３１４では、前景抽出モジュール１５０が、２値化した画像をフィルタとして、対象としている元の画像から前景の画像を抽出する。図１６の例に示した２値化画像（前景抽出画像）１６００をフィルタとして、対象画像２００から前景である文字の画像を抽出する。この処理によって、対象画像２００から赤い文字と青い文字の画像を抽出することとなる。
【００３６】
図１７は、第２の実施の形態の構成例についての概念的なモジュール構成図である。
なお、第１の実施の形態と同種の部位には同一符号を付し重複した説明を省略する。
第２の実施の形態である画像処理装置は、画像の画素を前景又は背景のいずれかに判定するものであって、図１７の例に示すように、画像受付モジュール１１０、前処理モジュール１７１５、領域抽出モジュール１２０、計数モジュール１３０、前景／背景判定モジュール１４０、前景抽出モジュール１５０を有している。
画像受付モジュール１１０は、前処理モジュール１７１５と接続されており、第１の実施の形態の画像受付モジュール１１０と同等の処理を行い、前処理モジュール１７１５に画像を渡す。
前処理モジュール１７１５は、画像受付モジュール１１０、領域抽出モジュール１２０と接続されており、画像受付モジュール１１０によって受け付けられた画像を対象として平坦化処理を行う。平坦化処理として、ノイズ除去処理を含んでいてもよい。この他に、画像の歪みを補正する歪み補正処理、回転処理等を行うようにしてもよい。
領域抽出モジュール１２０は、前処理モジュール１７１５、計数モジュール１３０と接続されており、前処理モジュール１７１５によって平坦化処理された画像を対象として、第１の実施の形態の領域抽出モジュール１２０と同等の処理を行い、色数が２色の領域を抽出する。
【００３７】
図１８は、第２の実施の形態による処理例を示すフローチャートである。
ステップＳ１８０２の処理は、第１の実施の形態による処理である図３の例に示したフローチャートのステップＳ３０２の処理と同等である。
ステップＳ１８０４では、前処理モジュール１７１５が、平坦化処理を行う。
【００３８】
図１９を用いて、ステップＳ１８０４の処理を説明する。図１９は、平坦化処理を行う前と後のヒストグラムの例を示す説明図である。図１９（ａ）の例に示す対象画像１９００は、画像受付モジュール１１０が受け付けた画像であり、特に、スキャナ等によって読み込まれた画像である。対象画像１９００は２色の画像であるが、対象画像１９００の各色平面におけるヒストグラムは、図１９（ｂ）、（ｃ）、（ｄ）の例のようになる。つまり、図１０、図１１、図１２の例に示すようなヒストグラムとは異なり、２色領域とはいっても、その２色の画素値を中心としてばらつきがあるのが、スキャナ等によって読み込まれた画像の実際である。
そこで、前処理モジュール１７１５が画像に対して平坦化処理を行う。ここでの平坦化処理としては、例えば、各画素値の画素数を計数し、画素数が０ではない画素値の連続する範囲内で画素数が最も多い画素値に、その範囲内にある画素の画素値を変更する。図１９（ｂ）、（ｃ）、（ｄ）の例に示すヒストグラムでは、各山の最頻値の画素値にその山の画素を変更することに該当する。また、ｎ画素×ｎ画素（例えば、ｎは５）のフィルタを用いて、そのフィルタ内に含まれている画素の画素値の最頻値に、画素値がその最頻値の予め定められた範囲内にある画素を変更する処理を、フィルタを走査させながら行うようにする。そして、この走査を画像に対して複数回繰り返すようにしてもよい。また、予め定められた画素値の予め定められた範囲内にある画素値の画素を、その予め定められた画素値に変更するようにしてもよい。また、単なるノイズ処理であってもよい。
この平坦化処理によって、図１９（ｂ）、（ｃ）、（ｄ）の例に示す各ヒストグラムは、図１９（ｅ）、（ｆ）、（ｇ）の例に示す各ヒストグラムとなる。
【００３９】
ステップＳ１８０６から以降の処理は、第１の実施の形態による処理である図３の例に示したフローチャートのステップＳ３０４以降の処理と同等である。
【００４０】
図２０は、フィルタの走査処理の例を示す説明図である。
前述の実施の形態の領域抽出モジュール１２０では、予め定められた大きさの矩形としてのフィルタを走査させる場合、１画素ずつ走査させていた。
前述の実施の形態において、領域抽出モジュール１２０は、画像を対象として、予め定められた大きさの矩形を該大きさ毎に走査して、色数が２色の領域を抽出するようにしてもよい。図２０の例を用いて説明すると、対象画像８００を対象として、まず最初に注目画素２０１０を中心にしたフィルタ２０２０を対象画像８００の左上端に合わせる。図２０の例では、注目画素２０１０をＡ７画素の位置に合わせる。そして、フィルタ２０２０内の処理を前述の実施の形態と同等に行う。これによって、Ａ０画素、Ａ１画素、Ａ２画素、Ａ６画素、Ａ７画素、Ａ１２画素、Ａ１３画素、Ａ１４画素は同じ色の画素であり、Ａ８画素が異なる画素であることが判明する。したがって、フィルタ２０２０内は２色領域である。次の走査として、右方向に１画素ではなく、右方向にフィルタの幅分のｎ画素（図２０の例では、３画素）移動する。図２０の例では、注目画素２０３０をＡ１０画素の位置に合わせる。そして、フィルタ２０４０内の処理を前述の実施の形態と同等に行う。これによって、Ａ３画素、Ａ４画素、Ａ５画素、Ａ１０画素、Ａ１１画素、Ａ１６画素、Ａ１７画素は同じ色の画素であり、Ａ９画素、Ａ１５画素が異なる画素であることが判明する。したがって、フィルタ２０４０内は２色領域である。さらに、Ａ３画素と既に処理を行ったＡ２画素は同じであり、Ａ９画素と既に処理を行ったＡ８画素は同じであることから、フィルタ２０２０とフィルタ２０４０を合成した領域内は２色領域である。次の走査として、右端まで到着したので、下方向に１画素ではなく、下方向にフィルタの高さ分のｎ画素（図２０の例では、３画素）、そして、左端に合わせるように移動する。図２０の例では、注目画素２０５０をＡ２５画素の位置に合わせる。そして、フィルタ２０６０内の処理を前述の実施の形態と同等に行う。これによって、Ａ１８画素、Ａ１９画素、Ａ２０画素、Ａ２４画素、Ａ２５画素、Ａ３０画素、Ａ３１画素、Ａ３２画素は同じ色の画素であり、Ａ２６画素が異なる画素であることが判明する。したがって、フィルタ２０６０内は２色領域である。さらに、Ａ１８画素と既に処理を行ったＡ５画素は同じであり、Ａ２６画素と既に処理を行ったＡ９画素は同じであることから、フィルタ２０２０とフィルタ２０４０とフィルタ２０６０を合成した領域内は２色領域である。次の走査として、右方向に１画素ではなく、右方向にフィルタの幅分のｎ画素（図２０の例では、３画素）移動する。図２０の例では、注目画素２０７０をＡ２８画素の位置に合わせる。そして、フィルタ２０８０内の処理を前述の実施の形態と同等に行う。これによって、Ａ２２画素、Ａ２３画素、Ａ２９画素、Ａ３３画素、Ａ３４画素は同じ色の画素であり、Ａ２１画素、Ａ２７画素、Ａ２８画素は別の同じ色の画素であり、Ａ３５画素がＡ２１画素、Ａ２２画素等とは異なる画素であるがことが判明する。したがって、フィルタ２０８０内は３色領域である。ここで、Ａ３５画素を含まないように、２色領域（Ａ０画素からＡ２９画素までを含む領域）の抽出を前述の実施の形態と同等に行う。
【００４１】
図２１を参照して、本実施の形態の画像処理装置のハードウェア構成例について説明する。図２１に示す構成は、例えばパーソナルコンピュータ（ＰＣ）などによって構成されるものであり、スキャナ等のデータ読み取り部２１１７と、プリンタなどのデータ出力部２１１８を備えたハードウェア構成例を示している。
【００４２】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２１０１は、前述の実施の形態において説明した各種のモジュール、すなわち、画像受付モジュール１１０、領域抽出モジュール１２０、計数モジュール１３０、前景／背景判定モジュール１４０、前景抽出モジュール１５０、前処理モジュール１７１５等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
【００４３】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２１０２は、ＣＰＵ２１０１が使用するプログラムや演算パラメータ等を格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２１０３は、ＣＰＵ２１０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはＣＰＵバスなどから構成されるホストバス２１０４により相互に接続されている。
【００４４】
ホストバス２１０４は、ブリッジ２１０５を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス２１０６に接続されている。
【００４５】
キーボード２１０８、マウス等のポインティングデバイス２１０９は、操作者により操作される入力デバイスである。ディスプレイ２１１０は、液晶表示装置又はＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）などがあり、各種情報をテキストやイメージ情報として表示する。
【００４６】
ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）２１１１は、ハードディスクを内蔵し、ハードディスクを駆動し、ＣＰＵ２１０１によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、受け付けた画像、領域抽出の結果、計数結果、前景又は背景の抽出結果などが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
【００４７】
ドライブ２１１２は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体２１１３に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース２１０７、外部バス２１０６、ブリッジ２１０５、及びホストバス２１０４を介して接続されているＲＡＭ２１０３に供給する。リムーバブル記録媒体２１１３も、ハードディスクと同様のデータ記録領域として利用可能である。
【００４８】
接続ポート２１１４は、外部接続機器２１１５を接続するポートであり、ＵＳＢ、ＩＥＥＥ１３９４等の接続部を持つ。接続ポート２１１４は、インタフェース２１０７、及び外部バス２１０６、ブリッジ２１０５、ホストバス２１０４等を介してＣＰＵ２１０１等に接続されている。通信部２１１６は、ネットワークに接続され、外部とのデータ通信処理を実行する。データ読み取り部２１１７は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部２１１８は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
【００４９】
なお、図２１に示す画像処理装置のハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図２１に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えば特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：ＡＳＩＣ）等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図２１に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００５０】
前述の実施の形態においては、色空間の例としてＲＧＢ色空間を示したが、その他の色空間（例えば、Ｌａｂ色空間等）であってもよい。また、前述の例では、Ｒ平面、Ｇ平面、Ｂ平面のそれぞれで画素数を計数したが、これらを統合したものであってもよい。例えば、ＲＧＢを統合して前述の例では２４ｂｉｔの画素値での画素数を計数してもよい。また、これらのうちの１つの平面だけで画素数を計数してもよい。この場合における、色平面の選択は、その色平面を選択することになる。
また、前述の実施の形態では、フィルタの走査方向として横方向を例示したが縦横行への走査であってもよい。また、走査方向を文字方向と合わせるようにしてもよい。
【００５１】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標））、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００５２】
１１０…画像受付モジュール
１２０…領域抽出モジュール
１３０…計数モジュール
１４０…前景／背景判定モジュール
１５０…前景抽出モジュール
１７１５…前処理モジュール
【図１】
2012142872.tif 000003
【図２】
2012142872.tif 000004
【図３】
2012142872.tif 000005
【図４】
2012142872.tif 000006
【図５】
2012142872.tif 000007
【図６】
2012142872.tif 000008
【図７】
2012142872.tif 000009
【図８】
2012142872.tif 000010
【図９】
2012142872.tif 000011
【図１０】
2012142872.tif 000012
【図１１】
2012142872.tif 000013
【図１２】
2012142872.tif 000014
【図１３】
2012142872.tif 000015
【図１４】
2012142872.tif 000016
【図１５】
2012142872.tif 000017
【図１６】
2012142872.tif 000018
【図１７】
2012142872.tif 000019
【図１８】
2012142872.tif 000020
【図１９】
2012142872.tif 000021
【図２０】
2012142872.tif 000022
【図２１】
2012142872.tif 000023