本発明の実施の一形態について図1ないし図19に基づいて説明すれば、以下の通りである。また、本発明は、入力画像を文字領域と絵柄領域(網点領域および連続階調領域)と背景領域とに分離し、各領域に応じた画像処理を行う画像処理装置に関するものである。ここでは、一実施形態としてデジタル複写機(画像形成装置)1を取り上げ、図2に基づいて説明する。
デジタル複写機1は、画像入力装置100と、カラー画像処理装置(画像処理装置)111と、画像出力装置(画像出力部)109と、操作パネル110とを備えている。
画像入力装置100は、例えばCCDを備えたスキャナ部より構成されている。画像入力装置100は、例えばラインCCDを所定の方向に移動させるようになっている。そして、画像入力装置100は、原稿からの反射光像をCCDによって読み込んで、RGB(R:赤・G:緑・B:青)のアナログ信号の状態にあるコピー用の入力画像信号(反射率信号)としてカラー画像処理装置111に入力する。
カラー画像処理装置111は、画像入力装置100から入力された入力画像信号に所定の画像処理を行って、画像出力装置109に入力される画像出力用データとして出力する。このカラー画像処理装置111は、後述する、所定の領域分離処理を含む画像処理をコンピュータ(CPU(central processing unit)およびメモリ)に実行させるプログラムの指示によってコンピュータ(CPUおよびメモリ)が上記画像処理を実行するようになっている。カラー画像処理装置111から出力された画像出力用データは、図示しない記憶手段に一旦記憶され、その記憶手段から所定のタイミングで読み出されて画像出力装置109に入力される。
画像出力装置109は、図示しない記憶手段から所定のタイミングで読み出された画像出力用データが入力されると、上記画像出力用データを記録材(例えば紙など)上に出力する。画像出力装置109としては、例えば、電子写真方式やインクジェット方式を用いたカラー画像出力装置などを挙げることができるが、特に限定されるものではない。
操作パネル110は、例えば、図示しない液晶ディスプレイからなる表示画面と、設定ボタン、テンキーなどの入力手段とを備えている。そして、ユーザの指示を受けると共に、設定されているコピーモードなどをユーザに対して表示する機能を有している。ユーザは、この操作パネル110を通してコピー枚数などの設定指示を入力する。
上記カラー画像処理装置111は、A/D変換部101、シェーディング補正部102、入力階調補正部103、領域分離処理部104、色補正部105、黒生成下色除去部106、空間フィルタ処理部107、及び、中間調出力階調処理部108を備えている。本発明に係る入力画像データに対して画像処理を行う画像処理装置は、カラー画像処理装置111におけるA/D変換部101以外の各部に対応している。
上記画像入力装置100から上記カラー画像処理装置111に入力されたアナログ信号は、A/D変換部101、シェーディング補正部102、入力階調補正部103、領域分離処理部104、色補正部105、黒生成下色除去部106、空間フィルタ処理部107、及び、中間調出力階調処理部108の順で送られ、画像出力装置109へ出力される。
上記A/D変換部101は、画像入力装置100から与えられるRGBの反射率信号を、デジタル信号に変換する。
上記シェーディング補正部102は、A/D変換部101にてA/D変換された反射率信号に対して、シェーディング補正処理を実施する。
上記入力階調補正部103は、シェーディング補正部102にてシェーディング補正処理が施された反射率信号に、入力階調補正処理を実施する。この入力階調補正処理は、上記反射率信号を、濃度信号などの、カラー画像処理装置111が扱いやすい信号に変換する処理である。入力階調補正部103は、上記反射率信号に、カラーバランス処理を、さらに実施してもよい。
上記領域分離処理部104は、入力階調補正部103より出力されたRGBの濃度信号を、画素毎に、あるいは、複数の画素からなるブロック毎に、文字領域、絵柄領域(網点領域および連続階調領域)、および背景領域に分離する領域分離処理を実施する。また、領域分離処理部104における分離結果である領域識別信号は、後続の黒生成下色除去部106、空間フィルタ処理部107、及び、中間調出力階調処理部108へ入力される。この領域分離処理部104の構成及び機能に関しては後述する。領域分離処理部104は、さらににじみ領域など他の領域に分離する機能を備えていても構わない。
上記色補正部105は、RGBの濃度信号をCMY(C:シアン・M:マゼンタ・Y:イエロー)の濃度信号に変換する。そして、画像出力装置109における色再現の忠実化実現のために、CMYの濃度信号に色補正処理を実施する。色補正処理は、具体的には、不要吸収成分をそれぞれ含む、CMYのトナーやインクの分光特性に基づいた色濁りを、CMYの濃度信号から取り除く処理である。
上記黒生成下色除去部106は、色補正部105から出力されたCMYの色信号に基づいて、黒(K)の色信号を生成する黒生成処理を行なう。また、黒生成下色除去部106は、CMYの色信号に対して、下色除去処理を実施する。この下色除去処理は、CMYの色信号から黒生成処理で生成された黒の色信号を差し引いて、新たなCMYの色信号を得る処理である。これらの処理の結果、上記CMYの濃度信号は、CMYKの色信号からなる画像データに変換される。
上記空間フィルタ処理部107は、黒生成下色除去部106で得られたCMYK画像データに対して、デジタルフィルタを用いた空間フィルタ処理を実施する。この処理により、画像の空間周波数特性が補正される。したがって、画像出力装置109が出力する画像に、ぼやけ、または、粒状性劣化を生じることを防止することができる。
そして、最終的に、中間調出力階調処理部108で、画像を画素に分離してそれぞれの階調を再現できるように処理する中間調生成処理がなされる。この中間調生成処理としては、例えば、2値や多値のディザ法・誤差拡散法等を用いることができる。また、上記中間調出力階調処理部108は、画像データの濃度値を、画像出力装置109の特性値である網点面積率に変換する出力階調補正処理を行なってもよい。中間調出力階調処理部108により処理された濃度信号は、画像出力装置109に入力される。
本発明の画像処理装置における領域分離処理部104は、入力画像データに対して背景検知処理を行い、ブロック単位で、局所的でない背景ブロック(非背景ブロックに隣接しない背景ブロック)、局所的な背景ブロック(非背景ブロックに隣接する背景ブロック)、および非背景ブロックを検知する。そして、領域分離処理部104は、この処理にて得られた背景ブロック以外の領域、すなわち非背景ブロックを、局所的な非背景ブロック、及び、局所的でない非背景ブロックに分類する。また、局所的でない非背景ブロックの領域であって、かつ、絵柄領域である場合、非背景ブロックが、全入力画像に対して、ある程度大きな領域に分布していると考えられる。そのため、領域分離処理部104は、連続する局所的でない非背景ブロックの領域の数をカウントする。領域分離処理部104は、このカウント数に基づいて、局所的でない非背景ブロックの領域が、絵柄領域であるのか、文字領域であるのかを判定する。
次に、領域分離処理部104について、詳細に説明する。
図1は、領域分離処理部104の概略構成を示すブロック図である。同図に示すように、領域分離処理部104は、背景画素検知処理部(背景画素検知処理手段)201と、背景画素カウント処理部(背景画素カウント処理手段)202と、背景分類処理部(背景分類処理手段)203と、分類変更処理部(非背景分類処理手段)204と、絵柄領域判定処理部(絵柄領域判定処理手段)205と、動的閾値設定部(動的閾値設定手段)206とを備えている。
この領域分離処理部104は、入力画像データに対して、背景画素検知処理部201にて、背景画像を検知する。そして、背景画素カウント処理部202にて、背景画素検知処理部201より得られた背景画素から、複数の画素からなるブロック単位で背景画素数を算出する。そして、背景分類処理部203にて、背景画素カウント処理部202により得られた背景画素数に基づいて、画像内の全ブロックが、局所的でない背景ブロック、局所的な背景ブロック、及び、非背景ブロックに分類される。そして、分類変更処理部204にて、背景分類処理部203より得られた分類結果が変更される。具体的には、分類変更処理部204にて、非背景ブロックが、局所的な非背景ブロックと、局所的でない非背景ブロックとに分類される。そして、最終的に、絵柄領域判定処理部205にて、局所的でない非背景ブロックが、文字領域のブロック、及び、絵柄領域のブロックの何れであるかが識別される。
背景画素検知処理部201は、入力画像の背景画素(下地)を検知するものである。背景画素検知処理部201としては、画像全体の濃度ヒストグラムを用いて、背景色(下地色)を推定し、背景画素を検知するものであってもよい。また、画像の局所的な情報から背景色(下地色)を推定し、背景画素を検知するものであってもよい。
背景画素カウント処理部202は、背景画素検知処理部201で得られた背景画素の情報を用いて、M×N画素(Mは2以上の整数、Nは自然数)のブロック単位で、背景画素数を算出するものである。
背景分類処理部203は、背景画素カウント処理部202で得られた背景画素数の分布状態に基づいて、局所的でない背景ブロック、局所的な背景ブロック、及び、非背景ブロックにブロック単位で分類し、局所的でない背景ブロックを背景領域として、局所的な背景ブロックを文字領域としてそれぞれ分類するものである。
分類変更処理部204は、背景分類処理部203で得られた分類結果の分布状態に基づいて、分類結果を変更するものである。具体的には、背景分類変更処理部204は、背景分類処理部203で得られた近傍ブロックの分類結果に基づいて、非背景ブロックを、局所的な非背景ブロックと、局所的でない非背景ブロックとに分類し、局所的な非背景ブロックを文字領域として、局所的でない非背景ブロックを絵柄領域としてそれぞれ分類するものである。
絵柄領域判定処理部205は、背景分類変更処理部204で得られた局所的でない非背景ブロック(分類変更処理部204で絵柄領域に分類された非背景ブロック)が、絵柄領域として分類することが妥当であるかどうかを局所的でない非背景ブロックの連続する数に基づいて判定するものである。絵柄領域判定処理部205において、局所的でない非背景ブロックが、絵柄領域として分類することが妥当でないと判定された場合には、その非背景ブロックが、局所的な非背景ブロックと同様に文字領域として扱われる。すなわち、その非背景ブロックの分類が、絵柄領域から文字領域に変更される。一方、絵柄領域判定処理部205において、局所的でない非背景ブロックが、絵柄領域として分類することが妥当であると判定された場合には、その局所的でない非背景ブロックが絵柄領域として扱われる。
最終的に、絵柄領域判定処理部205は、局所的な背景ブロック、局所的な非背景ブロック、および絵柄領域判定処理部205で絵柄領域として妥当でないと判定された非背景ブロックを文字領域、絵柄領域判定処理部205で絵柄領域として妥当であると判定された非背景ブロックを絵柄領域、局所的でない背景ブロックを背景領域として扱うことにより、入力画像データを、文字領域、絵柄領域、および背景領域に分類する。そして、絵柄領域判定処理部205は、この分類結果を領域識別信号として出力する。
次に、領域分離処理部104における各処理について、更に詳細に説明する。なお、本実施の形態では、入力画像データの赤色濃度値R、緑色濃度値G、および青色濃度値Bから下記の式(1)により算出された輝度値Yに対して、以下の処理を行なうこととする。
背景画素検知処理部201は、入力画像データから背景色(下地色)を推定して、背景画素を検知するものである。
背景画素を検知する手段の1つとして、画像全体の濃度ヒストグラムを用いるものがある。すなわち、背景画素検知処理部201は、入力画像データに対して濃度ヒストグラムを生成し、この濃度ヒストグラムの分布状態に基づいて背景色を推定する。上記濃度ヒストグラムとしては、例えば、図3に示す濃度ヒストグラムが挙げられる。
図3は、256階調(8ビット)に多値化された入力画像データの画素値(輝度値Y)を16の濃度レベルに分類し、各濃度レベルにおける度数と、それに対応する濃度レベルとの関係を示す濃度ヒストグラム図である。以下、上記16の濃度レベルをBINと称する。表1に、BINと、それと対応する画素値範囲との対応を示す。なお、表1において、画素値が「0」:黒、画素値が「255」:白を表わす。
背景画素検知処理部201において、入力画像データの画像全体の濃度ヒストグラムから背景色を推定する、最も一般的な方法は、濃度ヒストグラムの度数が最大になるBIN(以下、BINmaxとする)を探索し、当該BINmaxを背景色として扱うことである。そして、背景色であると判定されたBINmaxに属する画素値を有する画素を背景として判定することにより、背景画素を得る。例えば、図3に示す濃度ヒストグラムの場合、濃度ヒストグラムの度数が最大となるBINmaxは、16である。したがって、BIN16が背景色であり、BIN16に属する画素値範囲、すなわち、240〜255の値域を有する画素を背景画素として扱う。
また、背景画素を検知する別の手段としては、局所的な画像の濃度ヒストグラムを用いるものがある。すなわち、背景色が入力原稿の紙の色であるとして、必ず入力原稿の周縁領域に余白が存在すると仮定した場合、入力原稿の余白に相当する周縁領域の画素値の濃度ヒストグラムに基づいて、背景色を検知することができる。例えば、画像入力装置100がラインCCDを所定の方向に移動させるものである場合、ラインCCDの移動方向に対して、上側(ラインCCDの出発位置の側)の端の数ラインの濃度ヒストグラムを作成する。その後は、画像全体の濃度ヒストグラムを用いる場合と同様に、この濃度ヒストグラムの度数が最大となるBINmaxを探索して、当該BINmaxを背景色として扱う。そして、背景色であると判定されたBINmaxに属する画素値を有する画素を背景として判定することにより、背景画素を得る。図4は、入力原稿に対して、上側の端の数ライン画素(余白部)における濃度ヒストグラム図を示す。例えば、図4に示すヒストグラム図の場合、濃度ヒストグラムの度数が最大となるBINmaxは、16である。したがって、BIN16が下地色であり、BIN16に属する画素値範囲、すなわち、240〜255の値域を有する画素を背景画素として扱う。
以上のように、背景画素検知処理部201は、入力画像データから、背景画素を検知することができる。
背景画素カウント処理部202は、背景画素検知処理部201により得られた背景画素を用いて、所定ブロック単位で背景ブロックを検知する。この背景ブロックの検知は、所定ブロック内の背景画素数に基づいている。例えば、図5に示すような、4×4画素のブロック単位で背景ブロックを検知する場合、4×4画素のブロック内の背景画素数をカウントする。
背景分類処理部203は、背景画素カウント処理部202により得られた所定ブロック単位の背景画素数を用いて、入力画像データを、局所的でない背景ブロック、局所的な背景ブロック、及び、非背景ブロックに分類する。この分類は、注目ブロック及びその近傍ブロック内の背景画素数と、動的閾値TH_BGCNTとを比較することにより実施される。この動的閾値TH_BGCNTについては、後述する。
本実施の形態では、注目ブロック、及び、当該注目ブロックと水平方向に隣り合う2つの近傍ブロック内の背景画素数と、動的閾値TH_BGCNTとを比較している。注目ブロック、及び、水平方向に隣り合う2つの近傍ブロックの全てのブロックにおける背景画素数が、動的閾値TH_BGCNTよりも大きい場合、注目ブロックおよび2つの近傍ブロックの全てが背景であるので、ある程度広範囲に背景が存在すると考えられる。このため、注目ブロックを局所的でない背景ブロック(背景領域のブロック)として分類する。また、注目ブロック、及び、近傍ブロックのうち、注目ブロックの背景画素数が動的閾値TH_BGCNTよりも大きく、近傍ブロックの少なくとも1つの背景画素数が動的閾値TH_BGCNT以下である場合、注目ブロックは背景である一方、近傍ブロックは背景でない。このため、注目ブロックを局所的な背景ブロック(文字領域のブロック)として分類する。上記の場合以外では、注目ブロックは、背景でない。したがって、注目ブロックを非背景ブロック(非白地)として分類する。
以下、背景分類処理部203による背景分類処理ステップについて、図6及び7を用いて、詳細に説明する。
図6は、注目ブロックと、当該注目ブロックと水平方向に隣り合う近傍ブロックを示す。各ブロックにおける背景画素数をbg_cntとして表わしている。そして、図6において、注目ブロックにおける背景画素数をbg_cnt(x)として表わし、当該注目ブロックと、左方向に隣り合う近傍ブロック(以下、「左隣近傍ブロック」と称する)の背景画素数をbg_cnt(x-1)、右方向に隣り合う近傍ブロック(以下、「右隣近傍ブロック」と称する)の背景画素数をbg_cnt(x+1)として表わしている。
また、図7は、背景分類処理部203による背景分類過程の流れを示すフローチャート図である。図7に示すように、まず、注目ブロックにおける背景画素数bg_cnt(x)と動的閾値TH_BGCNTとを比較する(S71)。S71において、bg_cnt(x)>TH_BGCNTを満たさない場合、この注目ブロックを非背景ブロックとして判定する(S71→S76)。一方、bg_cnt(x)>TH_BGCNTを満たす場合、左隣近傍ブロックにおける背景画素数bg_cnt(x-1)と動的閾値TH_BGCNTとを比較する(S72)。S72において、bg_cnt(x-1)>TH_BGCNTを満たさない場合、この注目ブロックを局所的な背景ブロックとして判定する(S72→S75)。bg_cnt(x-1)>TH_BGCNTを満たす場合、右隣近傍ブロックにおける背景画素数bg_cnt(x+1)と動的閾値TH_BGCNTとを比較する(S73)。S73において、bg_cnt(x+1)>TH_BGCNTを満たさない場合、この注目ブロックを局所的な背景ブロックとして判定する(S73→S75)。bg_cnt(x-1)>TH_BGCNTを満たす場合、この注目ブロックを局所的でない背景ブロックとして判定する(S73→S74)。
次に、動的閾値設定部206による動的閾値TH_BGCNTの設定について、詳細に説明する。動的閾値TH_BGCNTは、動的閾値設定部206にて、注目ブロック及びその近傍ブロック内の背景画素数に基づいて設定される。これにより、動的閾値TH_BGCNTが文字間スペース(文字間隔)の大きさに応じて設定される。このため、各文字が比較的正方形に近い形状であり、行間が一定である日本語文字領域だけでなく、文字が比較的正方形から遠い形状であり、行間が一定でないアルファベット文字領域に対しても、良好な結果を得ることができる。近傍ブロックとの間で背景画素数bg_cntが変化するようなブロックは、文字間スペースである可能性が高い。そのため、動的閾値設定部206は、そのようなブロックが背景ブロック、または、局所的な背景ブロックとして検知されやすくなるように、動的閾値TH_BGCNTを設定する。動的閾値TH_BGCNTは、下記判定式に基づいて設定される。
ただし、BGi-1(x)は、注目ブロックの直上ブロックにおける最終判定結果(後段の分類変更処理部204にて分類された結果)を示す。すなわち、この動的閾値TH_BGCNTの設定処理は、分類変更処理部204にて所定ライン数(例えば1ライン)の処理が終了した後に行なわれる。
注目ブロックの直上ブロックが、非背景ブロックではなく、注目ブロックにおける背景画素数(bg_cent(x))と左隣近傍ブロックにおける背景画素数(bg_cent(x-1))との差分が所定の閾値TH_CNTDIFF(例えば5)よりも大きく、かつ、注目ブロックにおける背景画素数(bg_cent(x))と右隣近傍ブロックにおける背景画素数(bg_cent(x+1))との差分が所定の閾値TH_CNTDIFF(例えば5)よりも大きい場合、動的閾値TH_BGCNTは、所定閾値TH_BGCNT1に設定される。上記の場合以外では、動的閾値TH_BGCNTは、所定閾値TH_BGCNT2に設定される。また、前者の場合、注目ブロックは、文字である可能性が高い。このため、注目ブロックが、局所的な背景ブロックとして検知されやすいように、所定閾値TH_BGCNT1は、所定閾値TH_BGCNT2よりも低く設定されている。
文字間スペースの領域は、文字部の領域に比べて、背景画素数が多いと考えられる。このため、上記の設定により、注目ブロックにおける背景画素数が水平方向に隣り合うブロックにおける背景画素数よりも多いかどうかも判定できる。
所定閾値TH_BGCNT2は、注目ブロックが背景ブロックであるかどうか判定するための閾値である。このため、注目ブロック中で、少なくとも3/4以上の画素が背景画素でなければ、背景ブロックでないと考えられる。従って、例えば、注目ブロックが4×4ブロックである場合、所定閾値TH_BGCNT2は、12〜16が好ましい。
これに対して、所定閾値TH_BGCNT1は、文字間スペースを背景ブロックとして検地するための閾値であり、所定閾値TH_BGCNT2より小さい値を設定する。したがって、所定閾値TH_BGCNT1は、所定閾値TH_BGCNT2−3以上、すなわち、以下の式
TH_BGCNT1≧TH_BGCNT2−3
を満たすことが好ましい。
例えば、所定閾値TH_BGCNT1、及び、所定閾値TH_BGCNT2は、それぞれ13、及び15に設定される。
また、閾値TH_CNTDIFFは、注目ブロックが文字間スペースであるかどうかを判定するための閾値であり、注目ブロックにおける背景画素数と水平方向に隣り合うブロックの背景画素数との差分値と該閾値TH_CNTDIFFを比較する。このような閾値の設定は、英字など、文字間スペースが非常に狭い原稿に対して非常に有効であり、閾値TH_CNTDIFFは、その文字間スペースの広さに依存する。この閾値TH_CNTDIFFは、経験的に4〜8が妥当である。
これらの閾値は、種々の画像に対して処理を行い、最も好ましい結果が得られる値が設定される。
次に、動的閾値設定部206による動的閾値TH_BGCNTの設定方法の一例について、図18に基づいて説明する。
まず、注目ブロックの直上ブロックの分類が非背景ブロック(局所的な非背景ブロック、または局所的でない非背景ブロック)でないかを判定する(S21)。注目ブロックの直上ブロックが非背景ブロックであれば、動的閾値TH_BGCNTをより高い閾値TH_BGCNT2に設定する(S25)。注目ブロックの直上ブロックが非背景ブロックでなければ、次式
(bg_cnt(x)-bg_cnt(x-1))>TH_CNTDIFF
を満たすか否かを判定する(S22)。上記式を満たさない場合には、動的閾値TH_BGCNTをより高い閾値TH_BGCNT2に設定する(S25)。上記式を満たす場合には、次式
(bg_cnt(x)-bg_cnt(x+1))>TH_CNTDIFF
を満たすか否かを判定する(S23)。上記式を満たさない場合には、動的閾値TH_BGCNTをより高い閾値TH_BGCNT2に設定し(S25)、動的閾値TH_BGCNTをより低い閾値TH_BGCNT1に設定する(S24)。
以上のように、背景分類処理部203は、入力画像データを、ブロック単位で、局所的でない背景ブロック、局所的な背景ブロック、及び、非背景ブロックに分類する。
入力画像データに文字領域が存在する場合、必ず文字間スペースが存在するため、広い文字間スペースであっても、狭い文字間スペースであっても、局所的な背景ブロックが存在する。さらに、注目ブロックの左右両方向に、文字間スペースであると予想される局所的な背景ブロックが存在する場合、この注目ブロックは、文字である可能性が高い。
分類変更処理部204は、背景分類処理部203にて得られた分類結果を、近傍ブロックの分布状態に基づいて変更するものである。例えば、図6に示す、注目ブロックを中心とした31×1ブロックのマスクを用いて、注目ブロックの左方向、及び、右方向について、局所的でない背景ブロックの有無を確認する。その結果、注目ブロックの左右両方向に、局所的でない背景ブロックが存在し、かつ、注目ブロックが非背景ブロックである場合、この注目ブロックを局所的な非背景ブロック(文字領域のブロック)に変更する。
次に、分類変更処理部204による分類結果の変更方法の一例について、図16に基づいて説明する。
まず、注目ブロックが非背景ブロックであるかを判定する(S1)。注目ブロックが非背景ブロックでなければ、その注目ブロックの分類を変更しない。すなわち、背景分類結果の変更処理は、非背景ブロックのみに対して行われ、局所的でない背景ブロック、及び局所的な背景ブロックに対しては行われない。注目ブロックが非背景ブロックであれば、注目ブロックを中心とした31×1ブロックのマスク内に、局所的でない背景ブロックがあるかを判定する(S2)。上記マスク内に局所的でない背景ブロックがあれば、注目ブロックの分類を「非背景ブロック」から「局所的な非背景ブロック(文字領域のブロック)」に変更する(S3)。上記マスク内に局所的でない背景ブロックがなければ、注目ブロックの分類を「非背景ブロック」から「局所的でない非背景ブロック(絵柄領域のブロック)」に変更する(S4)。
以上の処理により、分類変更処理部204は、入力画像データを、局所的でない背景ブロック(背景領域のブロック)と、局所的な背景ブロック(文字領域のブロック)および局所的な非背景ブロック(文字領域のブロック)と、局所的でない非背景ブロック(絵柄領域のブロック)とに分類する。
絵柄領域判定処理部205は、上記背景分類処理部203にて得られた局所的でない非背景ブロックが、絵柄領域として妥当かどうかを、当該非背景ブロックの領域の大きさに基づいて判定する。
絵柄領域は、比較的大きな領域で形成されているため、上記局所的な非背景ブロックは、文字である可能性が高い。また、逆に、上記局所的でない非背景ブロックは、絵柄領域(網点領域または連続階調領域)であると考えられる。しかしながら、上記背景分類処理部203、及び、上記分類変更処理部204は、文字間スペースに依存して、入力画像データを分類しているので、必ずしも文字領域のブロックが局所的な非背景ブロックとして判別されるわけではない。そこで、絵柄領域判定処理部205は、局所的でない非背景ブロックとして誤り検出されたブロックの分類を、局所的な非背景ブロック(文字領域のブロック)に変更するために、局所的でない非背景ブロックが絵柄領域として妥当かどうかを、注目ブロックを含む、局所的でない非背景ブロックの領域の大きさ(注目ブロックを含む絵柄領域のブロック数)、すなわち非背景ブロックの連結数(連続している数)に基づいて判定する。この判定には、以下のラベリング処理を用いる。
このラベリング処理においては、局所的でない非背景ブロックの値を1、それ以外のブロック(背景ブロック)の値を0として扱う。また、このラベリング処理は、一般的なラベリング処理において各画素に対して行われている処理を各ブロックに対して行う。また、ラベリング処理に伴い、各ラベル情報、すなわち、各ラベルのブロック数を抽出する。
ラベリング処理とは、前景画素(ラベルが1の画素)に対し、連結する前景画素に対して同じラベルを割り当て、互いに連結していない前景画素(異なる連結成分)に対して、異なるラベルを割り当てる処理である(例えば、画像処理標準テキストブック CG−ARTS協会 p.262〜268を参照)。ラベリング処理としては、種々のものが提案されているが、本実施の形態では、2回の走査を行う方式について説明する。本実施の形態のラベリング処理について、図9及び10を用いて説明する。図9は、上記ラベリング処理の順序を示す説明図である。また。図10は、ラベリング処理の流れを示すフローチャート図である。
上記ラベリング処理では、まず、1回目の走査で、入力画像データの左上のブロックから、ラスタスキャンの順序で分類を調べ、非背景ブロックには「1」の値をつけ、それ以外のブロック(背景ブロック)には「0」の値をつける。そして、2回目の走査で、注目ブロックXの値が1である場合、図9に示す以下のラベリング処理を行う。
(I)注目ブロックXの上隣のブロックYの値が1で、かつ、上隣のブロックYには、既にラベルAがつけられている場合、注目ブロックXにも、上隣のブロックYと同じラベルAをつける(図9(a)参照)。
(II)注目ブロックXの左隣のブロックZの値が1であるが、左隣のブロックZに、注目ブロックXの上隣のブロックYのラベルAとは異なる、ラベルBがつけられている場合、注目ブロックXには、上隣のブロックYと同じラベルAをつけると共に、上隣のブロックYのラベルAと左隣のブロックZのラベルBとの間に相関があることを保持(記憶)する(図9(b)参照)。
(III)注目ブロックXの上隣のブロックYの値が0であり、かつ、注目ブロックXの左隣のブロックZの値が1である場合、注目ブロックXには、左隣のブロックZと同じラベルAをつける(図9(c)参照)。
(IV)注目ブロックXの上隣のブロックY及び左隣のブロックZの値が、ともに0である場合、注目ブロックXには、新しく、注目ブロックXの上隣のブロックY及び左隣のブロックZのラベルと異なるラベルCをつける(図9(d)参照)。
(V)全ブロックに対して、ラベル付けを行なう。
(VI)複数のラベルが記録されている場合、上記(I)〜(IV)の規則に基づいて、ラベルを統一する。
最後に、上記(II)で保持しておいた、上隣のブロックYのラベルAと左隣のブロックZのラベルBとの間の相関関係に基づいて、例えば最も小さいラベルに、統一するラベルを変更する。
上記ラベリング処理により、入力画像データに対して、ラベル数分のラベルを割り当てる。このとき、上記(I)〜(IV)のステップでは、ラベルが離散的になります(例えば、1、6、10、・・・)。従って、最後に扱い易いように、離散的なラベルを1から始まる連続的なラベル(1、2、3、・・・)に修正する。
以上の順序で、入力画像データ中のブロックすべてに対して、ラベリング処理を行なう。以下、ラベリング処理を、図10のフローチャート図を用いて、説明する。
まず、注目ブロックの値が1かどうかを判定する(S91)。注目ブロックの値が1である場合、上隣のブロックの値が1、かつ、左隣のブロックの値が0であるかを判定する(S92)。S92の判定条件を満たしている場合、注目ブロックに、上隣のブロックと同じラベルをつける(S93)。S92の判定条件を満たしていない場合、上隣のブロックの値が0、かつ、左隣のブロックの値が1であるかを判定する(S94)。S94の判定条件を満たしている場合、注目ブロックに、左隣のブロックと同じラベルをつける(S95)。S94の判定条件を満たしていない場合、上隣及び左隣のブロックの値が1であり、かつ、左隣のブロックのラベルが、上隣のブロックのラベルと異なるかどうかを判定する(S96)。S96の判定条件を満たしている場合、注目ブロックに、上隣のブロックと同じラベルをつけ、左隣のブロックのラベルと上隣のブロックのラベルとに相関があることを保持する(S97)。S96の判定条件を満たしていない場合、注目ブロックに、上隣のブロック及び左隣のブロックのラベルと異なる新しいラベルをつける(S98)。
以上の処理により、入力画像データの全てのブロックにラベルをつける処理(ラベリング処理)が施されたラベリング画像が得られる。
また、ラベリング処理を実施した後、同じラベルがつけられたブロックの数をカウントすることにより、最終的に、各ラベルのブロック数を得る。
次に、上記ラベリング処理により得られた各ラベルのブロック数に基づいて、上記局所的でない非背景ブロックの領域が、絵柄領域として妥当であるかを判定する。具体的には、下記の(2)式に基づいて、この判定を行う。但し、(2)式において、連結ブロック数LNは、注目ブロックに付けられているのと同じラベルNがつけられているブロックの数、すなわち注目ブロックを含む連結した非背景ブロックの塊に含まれるブロック数を表わす。
入力画像データの全体ブロック数に対する、ラベル数LNの割合((2)式の左辺)と、所定閾値THLとを比較することにより、絵柄領域として妥当であるかを判定する。局所的でない非背景ブロックに対して(2)式に基づく判定を行い、(2)式において、連結ブロック数LN/全体ブロック数が所定閾値THLよりも大きい場合、非背景ブロックの領域が、絵柄領域として妥当であると判定し、注目ブロックの分類をそのままの分類、すなわち局所的でない非背景ブロック(絵柄領域のブロック)とする。また、上記(2)式を満たさない場合、局所的でない非背景ブロックの分類を、局所的な非背景ブロック(文字領域のブロック)に変更する。
次に、絵柄領域判定処理部205における絵柄領域判定処理の一例について、図17に基づいて説明する。
まず、注目ブロックが局所的でない非背景ブロックであるかを判定する(S11)。注目ブロックが局所的でない非背景ブロックでなければ、後段のS12の判定処理を行わない。すなわち、S12の判定処理は、局所的でない非背景ブロックのみに対して行われ、局所的でない背景ブロック、局所的な背景ブロック、および局所的な非背景ブロックに対しては行われない。注目ブロックが局所的でない非背景ブロックであれば、上記(2)式を満たすかを判定する(S12)。上記(2)式を満たせば、注目ブロックを絵柄領域と判定し、注目ブロックの分類を変更しない(S13)。上記(2)式を満たさなければ、注目ブロックを文字領域と判定して、注目ブロックの分類を「局所的でない非背景ブロック」から「局所的な非背景ブロック」に変更する(S14)。
以上のように、上記カラー画像処理装置111の領域分離処理部104は、局所的な背景ブロック、及び、局所的な非背景ブロックを文字領域として、局所的でない非背景ブロックを絵柄領域として、背景ブロックを背景領域として扱うことにより、最終的に、画像の全領域をブロック単位で文字領域、絵柄領域、および背景領域の3つの領域に分類する。そして、領域分離処理部104は、この分類結果を領域識別信号として出力する。
また、上記カラー画像処理装置111は、背景画素検知処理部201、背景画素カウント処理部202、背景分類処理部203、分類変更処理部204、絵柄領域判定処理部205、および動的閾値設定部206にて、文字領域を検知するものであり、結果としてエッジ情報とほぼ独立した文字間スペース情報を用いて文字領域を検知することができる。
しかしながら、上記カラー画像処理装置111には、ブロックのエッジ情報に基づき文字領域検知を行なう文字領域検知処理部が備えられていてもよい。これにより、カラー画像処理装置111は、上記文字間スペース情報に基づく文字領域検知処理と、従来のエッジ情報に基づく文字領域検知処理とを併用して、文字領域を検知することができる。これにより、さらに文字領域検知精度を向上させることができる。
このような画像処理装置の一例を、図12及び13を用いて説明する。
本例の画像処理装置は、領域検知処理部(領域分離手段)121と、エッジ抽出処理に基づく文字領域検知処理を行う文字領域検知処理部(文字領域分離手段)122と、論理積演算部123とを備えている。領域検知処理部121は、背景画素検知処理部201、背景画素カウント処理部202、背景分類処理部203、分類変更処理部204、絵柄領域判定処理部205および動的閾値設定部206と同様の機能を有し、文字間スペースに基づく文字領域検知処理を行うものである。
文字領域検知処理部122は、まず、図13に示すエッジ検知フィルタを用いたフィルタ処理によって、各画素のエッジ強度(エッジ情報)を抽出する。なお、図13に記載されている数字はフィルタ係数である。そして、このエッジ検知フィルタによるフィルタ処理結果の絶対値(エッジ強度)が、所定閾値以上になる画素を求め、この画素をエッジ情報に基づく文字領域検知結果とする。一方、領域検知処理部121における文字間スペース情報に基づく文字領域検知処理は、上述の背景画素検知処理部201、背景画素カウント処理部202、背景分類処理部203、分類変更処理部204、絵柄領域判定処理部205および動的閾値設定部206による画像処理方法を用いる。そして、これにより算出される文字領域のブロック(局所的な背景ブロックなど)を、文字間スペース情報に基づく文字領域検知結果とする。次に、図12に示す論理積演算部123により、上記の2つの文字領域検知結果のAND(論理積)を取る。すなわち、領域検知処理部121による文字領域の検知結果と、文字領域検知処理部122による文字領域の検知結果とのいずれにおいても、文字領域として検知された領域を最終的な文字領域とする。このようにして、領域検知処理部121による文字領域の分離結果と、文字領域検知処理部122による文字領域の分離結果とに基づいて、最終的な文字領域が決定される。これにより、さらに文字検知精度を向上させることができる。
また、本発明の画像処理装置は、局所的でない非背景ブロックにおける近傍画素間の輝度の変化量を参照することにより、絵柄領域と判定された非背景ブロックが、網点領域であるのか、連続階調領域であるのかを判定する網点領域・連続階調領域判定手段を備えていてもよい。このような画像処理装置の実施の一形態に係るカラー画像処理装置を図19に基づいて説明する。図19に示すように、本形態に係るカラー画像処理装置は、図2に示すカラー画像処理装置111に対し、網点領域・連続階調領域判定部206を追加した構成を備えている。
一般的に、絵柄領域が網点画像である場合、輝度変化が多い。また、絵柄領域が連続階調画像である場合、輝度変化が少ない。そこで、上記網点・連続階調判定部206は、近傍画素間の輝度変化量を表わす特徴として、ブロック内の画素における画素値の分散値を用いる。例えば図14に示すような5×5画素のブロック内の各画素の輝度値Yから、5×5画素のブロック内での輝度値Yの分散値を求める。そして、この判定は、上記絵柄領域判定処理部205においてラベリング処理を実施した各ラベルについて行なわれる。すなわち、上記判定は、各ラベルを有するブロックに対して、分散値が所定の閾値より高いブロックが占める割合(注目ブロックを含む絵柄領域における、全ブロック数に対する分散値の高いブロックの数の割合)に基づいて行われる。絵柄領域が網点画像である場合、各ラベルを有するブロックに対して、分散値が所定の閾値より高いブロックが占める割合が非常に高くなる。これに対して、絵柄領域が連続階調画像である場合、各ラベルを有するブロックに対して、分散値が所定の閾値より高いブロックが占める割合が非常に低くなる。上記判定を行なうための判定式は、下記式(3)で表わされる。
上記(3)式左辺の、分散値が高いブロック数の比率が、所定閾値TH HT RATIO(例えば、0.5)よりも大きい場合、絵柄領域は、網点領域(網点画像領域)として判定される。また、所定閾値TH HT RATIOよりも小さい場合、絵柄領域は、連続階調領域(連続階調画像領域)として判定される。
以上のように、本実施形態にかかる画像処理方法は、入力画像データを、背景領域と、文字領域と、網点領域または連続階調領域である絵柄領域とに分離する画像処理方法であって、背景画素検知処理部201によって入力画像データから背景画素を検知するステップと、背景画素カウント処理部202によって、得られた背景画素に基づいて複数の画素よりなるブロック単位で背景画素数をカウントするステップと、背景分類処理部203によって、注目ブロックの背景画素数に基づいて複数のブロックを背景ブロックと非背景ブロックとに分類すると共に、背景ブロックを近傍ブロックの背景画素数に基づいて文字領域のブロックと背景領域のブロックとに分類するステップと、分類変更処理部204によって、得られた非背景ブロックを、近傍ブロックの分類結果に基づいて文字領域のブロックと絵柄領域のブロックとに分類するステップと、上記非背景分類処理手段で得られた絵柄領域のブロックについて、注目ブロックを含む絵柄領域のブロック数に基づいて絵柄領域に分類することが妥当であるか否かを判定し、妥当でないと判断された場合にはそのブロックの分類を文字領域のブロックに変更するステップとを含んでいる。
また、本実施の形態では、上記画像処理方法の各ステップ、すなわち絵柄領域判定処理ステップ等をコンピュータに実行させるためのプログラムをコンピュータ(CPUおよびメモリ)が実行することで、上記カラー画像処理装置の各ブロックが実現されている。また、本実施の形態では、上記プログラムをコンピュータ読み取り可能な記録媒体に記録するものとなっている。この結果、画像処理方法をコンピュータに実行させるプログラムを記録した記録媒体を、持ち運び自在に提供することができる。
なお、本実施の形態のプログラムを記録した記録媒体としては、コンピュータ(マイクロコンピュータ)のCPUで処理が行われるために設けられている図示していないメモリ(内部記憶装置)、例えばROM(Read-Only Memory)などであるプログラムメディアであってもよい。また、本実施の形態のプログラムを記録した記録媒体は、図示していない外部記憶装置としてのプログラム読み取り装置が設けられ、このプログラム読み取り装置に挿入することで読み取り可能になるプログラムメディアであってもよい。
いずれの場合においても、記録媒体に格納されているプログラムの実行は、マイクロプロセッサ(CPU)が記録媒体にアクセスしてプログラムを実行させる構成であってもよいし、あるいは、プログラムが記録媒体から読み出され、コンピュータ(マイクロコンピュータ)内の図示していないメモリのプログラム記憶エリアにダウンロードされて、そのプログラムがマイクロプロセッサによって実行される方式であってもよい。なお、このダウンロード用のプログラムは予め本体装置(デジタル複写機1)に格納されているものとする。
ここで、上記プログラムメディアは、デジタル複写機1本体などの装置本体と分離可能に構成される記録媒体である。このプログラムメディアとしては、例えば、磁気テープやカセットテープ等のテープ系;フロッピー(登録商標)ディスクやハードディスク等の磁気ディスク、CD−ROM(Compact Disc Read-Only Memory)、MO(Magneto-Optical disc)、MD(Mini Disc)、DVD(Digital Versatile Disc)等の光ディスクのディスク系;IC(Integrated Circuit)カード(メモリカードを含む)/光カード等のカード系;または、マスクROM、EPROM(Erasable Programmable Read-Only Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、フラッシュROM等による半導体メモリを含めた固定的にプログラムを担持する媒体であってもよい。
また、本実施の形態のデジタル複写機1は、図示しないインターネットを含む通信ネットワークを、接続可能にしたシステム構成であってもよい。したがって、上記記録媒体は、通信ネットワークからプログラムをダウンロードするように、流動的にプログラムを保持する媒体であってもよい。なお、このように通信ネットワークから、プログラムをダウンロードする場合には、そのダウンロード用プログラムは、予め本体装置(デジタル複写機1)内の記録媒体に格納しておくか、あるいは、別な記録媒体から本体装置(デジタル複写機1)にインストールされるものであってもよい。また、ダウンロード用プログラムは、ユーザーインターフェースを介して実行されるものであってもよいし、定期的に実行されて、決められたURL(Uniform Resource Locater)からプログラムをダウンロードできるようなものであってもよい。
上記記録媒体は、画像読取装置やコンピュータ・システムに備えられるプログラム読み取り装置により読み取られることで、上述した画像処理方法が実行される。
以上、本発明に係る画像処理装置をデジタル複写機に適用した例について説明したが、本発明に係る画像処理装置は、他の装置、例えばプリンタドライバまたはスキャナドライバがインストールされたコンピュータ・システム、画像読取装置(スキャナ)、プリンタなどにも適用できる。したがって、本発明に係るプログラムは、デジタル複写機内の画像処理部で領域分離処理をコンピュータに実行させるものに限らず、コンピュータ・システムにインストールされるプリンタドライバやスキャナドライバ、画像読取装置またはプリンタ内の画像処理部で領域分離処理をコンピュータに実行させるプログラムなどにも適用できる。
次に、上記プログラムを、コンピュータ・システムに備えられるプリンタドライバに適用した例について説明する。
図11は、上記プログラムを、パーソナル・コンピュータ等のコンピュータ・システムに備えられるプリンタドライバに適用した例を示す図である。図11に示すように、コンピュータ・システム3は、プリンタドライバ313、通信ポートドライバ314、通信ポート315を備えている。プリンタドライバ313は、色補正部305、黒生成下色除去部306、空間フィルタ処理部307、中間調出力階調処理部308、及び、プリンタ言語翻訳部309と備えている。また、コンピュータ・システム3は、RS232C・LAN(Local Area Network)等の通信ポートドライバ310・通信ポート311を介して、コンピュータの処理結果を紙などに出力するための電子写真方式やインクジェット方式のプリンタ312(画像出力装置)と接続している。
上記コンピュータ・システム3において、領域分離処理は、前記の領域分離処理部104と同様の領域分離処理部304によって実行される。領域分離処理部304では、記録媒体に記録されたプログラムを読み取り、このプログラムの指示によってコンピュータ(CPUおよびメモリ)が領域分離処理を実行する。そして、上記領域分離処理により生成された画像データは、プリンタドライバ313内の色補正部305、黒生成下色除去部306、空間フィルタ処理部307、及び、中間調出力階調処理部308に送られて、上述のカラー画像処理装置111に備えられた各処理部と同様の処理が実施される。すなわち、領域分離処理部304から送られた入力画像データに対し、色補正部305では色補正部105と同様の処理が実行され、黒生成下色除去部306、空間フィルタ処理部307、及び中間調出力階調処理部308では、領域分離処理部304の上記領域分離処理により生成された領域識別信号に基づいて、黒生成下色除去部106、空間フィルタ処理部107、及び中間調出力階調処理部108と同様の処理が実行される。そして、中間調出力階調処理部308から出力された入力画像データは、プリンタ言語翻訳部309へ送られ、プリンタ言語に変換される。プリンタ言語翻訳部309から出力された画像データは、通信ポートドライバ310および通信ポート311を介して、プリンタ312に入力される。プリンタ312では、入力された画像データを紙等の記録材に出力する。
また、コンピュータ・システム3は、所定のプログラムがロードされることにより上記画像処理方法など様々な処理を行うものである。コンピュータ・システム3は、さらに、フラットベッドスキャナ・フィルムスキャナ・デジタルカメラなどの画像入力装置、コンピュータの処理結果を表示するCRTディスプレイ・液晶ディスプレイなどの画像表示装置と接続されていてもよい。さらには、コンピュータ・システム3は、ネットワークを介してサーバーなどに接続するための通信手段としてのネットワークカードやモデムなどを備えていてもよい。
また、スキャナに領域分離処理部を備え、その結果をコンピュータやプリンタに出力するようにしてもよい。図15に、本発明に係る画像処理装置としての領域分離処理部を備えたスキャナの概略構成を示す。
図15に示すように、スキャナ406は、カラー画像入力装置400と、カラー画像処理装置411とを備えている。カラー画像処理装置411は、A/D変換部401、シェーディング補正部402、入力階調補正部403、及び、領域分離処理部404を備えている。
カラー画像入力装置400から出力されたアナログ信号は、上述のカラー画像処理装置111の各処理部と同様に処理される。すなわち、カラー画像入力装置400から出力されたアナログ信号に対してA/D変換部401でA/D変換部101と同様の処理が実行され、シェーディング補正部402でシェーディング補正部102と同様の処理が実行され、入力階調補正部403で入力階調補正部103と同様の処理が実行される。これらの処理には、領域識別信号は使用されない。そして、領域分離処理部404にて、入力階調補正部403で処理されたアナログ信号に対して領域分離処理部104と同様の領域分離処理が実行され、入力画像信号、及び、領域識別信号が、図示しないコンピュータやプリンタに出力される。そして、図示しないコンピュータやプリンタの画像処理部にて、上記領域識別信号に基づいた画像処理が行われる。
なお、本発明は、上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
例えば、図2に示すカラー画像処理装置111の領域分離処理部104では、RGBのデジタル信号が入力されるようになっていたが、CMYのデジタル信号が入力されるようになっていても構わない。
また、図2に示すカラー画像処理装置111では、領域分離処理部104から出力された領域識別信号に基づいて、黒生成下色除去処理、空間フィルタ処理、および中間調出力階調処理を行うようになっていた。しかしながら、領域識別信号に基づいて行われる画像処理については、これらに限定されるものではなく、例えば、変倍処理や解像度変換処理などであってもよい。
また、図1・2に示すカラー画像処理装置111では、背景分類処理部203における背景ブロックと非背景ブロックとの分類(背景/非背景分類処理)のための閾値を動的に設定する動的閾値設定部206が備えられていたが、動的閾値設定部206を省き、上記閾値を一定の値としてもよい。すなわち、例えば、上記閾値を、日本語の文字領域の分離に最適な値としてもよい。この場合、日本語の文字領域を精度良く分離できる一方、他の種類の文字領域、例えばアルファベットの文字領域を精度良く分離することは難しいが、構成は簡素化できる。また、図2に示す動的閾値設定部206は、閾値を2つの値の間で切り替えるようになっていたが、閾値を3つ以上の値で切り替えてもよく、また、閾値を連続的に変化させてもよい。
また、図1・2に示すカラー画像処理装置111では、絵柄領域判定処理部205が備えられていたが、絵柄領域判定処理部205を省略しても、ある程度の精度で文字領域と絵柄領域とを分離することができる。ただし、より高い精度で文字領域と絵柄領域とを分離するためには、絵柄領域判定処理部205を設けることが好ましい。