JP2004192164A - 画像処理装置および該画像処理装置を備える画像形成装置、ならびに画像処理方法、画像処理プログラムおよびコンピュータ読み取り可能な記録媒体 - Google Patents
画像処理装置および該画像処理装置を備える画像形成装置、ならびに画像処理方法、画像処理プログラムおよびコンピュータ読み取り可能な記録媒体 Download PDFInfo
- Publication number
- JP2004192164A JP2004192164A JP2002357259A JP2002357259A JP2004192164A JP 2004192164 A JP2004192164 A JP 2004192164A JP 2002357259 A JP2002357259 A JP 2002357259A JP 2002357259 A JP2002357259 A JP 2002357259A JP 2004192164 A JP2004192164 A JP 2004192164A
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- area
- pixels
- character
- image processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Studio Circuits (AREA)
- Facsimile Image Signal Circuits (AREA)
- Image Analysis (AREA)
Abstract
【課題】高精度な領域分割処理を行うことができる画像処理装置および該画像処理装置を備える画像形成装置、ならびに画像処理方法、画像処理プログラムおよびコンピュータ読み取り可能な記録媒体を提供する。
【解決手段】入力された画像データに対して、クラスタリング部11が再帰的クラス分け処理によってレベルごとに画像データのクラス情報、および、オブジェクト情報を生成する。そして、ランレングス算出部12が、クラス情報およびオブジェクト情報それぞれについて、水平方向に同一情報を有する画素が連続するランレングスを算出する。文字領域推定部13が、クラス情報のランレングスに基づいて文字領域に属する画素を推定する。最後に領域判定部14が、各オブジェクト領域において、文字領域に属すると推定された画素の含有率に基づいて、オブジェクト領域がどの領域に属するかを判定する。
【選択図】 図2
【解決手段】入力された画像データに対して、クラスタリング部11が再帰的クラス分け処理によってレベルごとに画像データのクラス情報、および、オブジェクト情報を生成する。そして、ランレングス算出部12が、クラス情報およびオブジェクト情報それぞれについて、水平方向に同一情報を有する画素が連続するランレングスを算出する。文字領域推定部13が、クラス情報のランレングスに基づいて文字領域に属する画素を推定する。最後に領域判定部14が、各オブジェクト領域において、文字領域に属すると推定された画素の含有率に基づいて、オブジェクト領域がどの領域に属するかを判定する。
【選択図】 図2
Description
【0001】
【発明の属する分野】
本発明は、たとえばデジタルテレビ放送から入力された映像について、背景・文字・写真が混在した多階調画像を背景・文字・その他の領域に分割する画像処理方法、画像処理装置、画像形成装置、およびプログラム、記録媒体に関する。
【0002】
【従来の技術】
チューナを介して受信したデジタルテレビ放送信号を復号して得られた多値入力画像(静止画)データには、文字・写真・背景領域が混在しており、それぞれの領域において固有の画質劣化を伴う。文字領域では、文字にじみ、文字欠けが発生し、写真領域ではJPEG(Joint Photographic Experts Group)、MPEG(Moving Picture Experts Group)によるリンギング、ブロックノイズなどの圧縮アーティファクツが発生する。また、背景領域には少なからずノイズが見られ、そのまま拡大してプリンタ出力した際には画質劣化が非常に目立つ。
【0003】
また、文字にじみや圧縮によるアーティファクツを解決するような処理を画像データ全体に実施すると画像がぼけたり、写真領域の画質を高めるために、ディテイル再現向上、輪郭強調を行うと、背景領域も強調されてしまい、ノイズを際立たせてしまう。したがって、背景・文字・写真領域などが混在する入力多値画像データの背景領域、文字領域、写真領域を検出して分割し、それぞれの領域に適した処理を行うことが望ましい。
【0004】
このような課題に対して、従来から画像データの領域分割処理が開発されており、たとえば、複数の画素からなる小領域内の最大画素濃度差を用いて分割する方法がある。この方法では、背景領域の濃度分布が写真・文字領域の濃度分布に比べて、平坦であることを利用し、注目画素を含む小領域内の最大濃度差が第一所定閾値以下であれば、その注目画素を背景領域と判定し、それ以外をオブジェクト領域として判定する。さらに、オブジェクト領域について第2所定閾値以上であれば、注目画素を文字領域と判定し、それ以外を写真領域として判定する。
【0005】
しかしながら、この方法では、写真領域に含まれるオブジェクトの輪郭など、濃度変化の激しい領域が文字領域として誤って判定されたり、かすれ文字など、2値画像でありながら濃度変化が緩やかな領域が写真領域として誤って判定される。そのため、画像データ全体としては領域分割精度が悪いという問題がある。この問題を解決するための技術として、特許文献1に記載の画像領域分離装置がある。この装置は、背景色画素から構成される背景領域と非背景色画素から構成され、写真や文字等の異なる種類の非背景領域とを有する画像情報を、走査することによって入力する入力手段と、この入力手段により走査毎に入力した画像情報の中から、非背景色画素を検出する非背景色画素分離手段と、非背景色画素分離手段により分離された走査方向に一つ以上連続する非背景色画素を一つのランとし、その長さを検出するラン検出手段と、非背景色画素分離手段により分離された非背景色画素が、非背景領域のエッジを構成するエッジ画素であるかどうかを判定するエッジ画素判定手段と、エッジ画素として判定された非背景色画素の割合に基づき、検出されたランが写真や文字等の異なる種類の非背景領域のうちのいずれの種類の非背景領域に属するかを示すランの属性を判定する領域判定手段とを備えており、これらの手段を用いて領域分割を行う。この領域判定手段では、ラン検出手段で検出されたランの中のエッジ画素の割合が多い場合には、そのランを文字領域として判定し、ランの中のエッジ画素の割合が少ない場合には、そのランを写真領域として判定する。
【0006】
一般に文字は白色と黒色とが鮮明に分かれており、これに対して写真は白色と黒色とが緩やかに変化していく場合が多い。したがって、一つのランに属する連続した非背景色画素の中で、ラン検出手段によりエッジ画素として判定された非背景色画素の割合が多い場合には、文字領域であると判定することが可能になる。反対に写真領域の場合は文字領域とは異なり、非背景色画素が連続し、かつ、なだらかな変化を呈するために、ランの中でエッジ画素として判定された非背景色画素の割合が少ない場合には、写真領域であると判定することが可能になる。このように、領域判定手段は、非背景色画素から成る主走査方向のランを、各ランにおけるエッジ画素含有率が高い場合には文字領域として判定し、エッジ画素含有率が低い場合には写真領域として判定する。
【0007】
【特許文献1】
特開平6−54180号公報
【0008】
【発明が解決しようとする課題】
上記の従来技術においては、N×N画素ブロック内の濃度平均値などに基づいて、非背景画素を検出しているが、背景色が白色であることを想定し、色の違いによって非背景画素を検出しているため、デジタルテレビ放送のように様々な色の背景領域を有する入力画像データに対して、背景領域と非背景領域との領域を分割することができない。さらに、エッジ量をN×N画素ブロック内の最大濃度差に基づく固定閾値を用いて2値化処理(クラス分け処理)しているので、非背景領域のうちの文字領域と写真領域との分割精度が悪いという問題がある。
【0009】
本発明の目的は、高精度な領域分割処理を行うことができる画像処理装置および該画像処理装置を備える画像形成装置、ならびに画像処理方法、画像処理プログラムおよびコンピュータ読み取り可能な記録媒体を提供することである。
【0010】
【課題を解決するための手段】
本発明は、複数の画素からなる画像を示す画像データが入力され、入力された画像データに基づいて画像を構成する各画素が、文字領域、背景領域およびその他領域のいずれの領域に属するかを判定し、画像データの領域分割を行う領域分割部を備える画像処理装置において、
前記領域分割部は、
注目画素とその周辺画素とからなる画素ブロックの特徴量を各画素の画素値を用いて求め、求めた特徴量に基づく閾値を生成し、生成された閾値と各画素の画素値とを比較して注目画素を2つの画素集合にクラス分けし、前記クラス分けによって分類された画素集合に対して、前記閾値とは異なる閾値でさらにクラス分けを行うことで複数段階のクラス分けを行い、段階ごとのクラス分けの結果を示すクラス情報を生成するクラス情報生成手段と、
クラス情報生成手段が生成した複数の閾値に基づいて、注目画素が背景領域に属するか否かを判断し、その判断結果を示すオブジェクト情報を生成するオブジェクト情報生成手段と、
同じクラス情報を有し、所定の方向に互いに隣接する画素からなるクラスランの画素数であるクラスランレングスと、同じオブジェクト情報を有し、所定の方向に互いに隣接する画素からなるオブジェクトランの画素数であるオブジェクトランレングスとを前記段階ごとに算出するランレングス算出手段と、
前記クラスランレングスに基づいて、クラスランに含まれる画素が文字領域に属するか否かを前記段階ごとに推定する文字領域推定手段と、
オブジェクト情報に基づいて画素が背景領域に属するか否かを判定するとともに、前記オブジェクトランに含まれる画素のうち、前記文字領域推定手段によって文字領域に属すると推定された画素の前記段階ごとの割合に基づいて、オブジェクトランに含まれる画素が文字領域およびその他領域のいずれに属するかを判定する領域判定手段とを有することを特徴とする画像処理装置である。
【0011】
本発明に従えば、領域分割部は、複数の画素からなる画像を示す画像データに基づいて、画像を構成する各画素が、文字領域、背景領域およびその他領域のいずれの領域に属するかを判定し、画像データの領域分割を行う。
【0012】
領域分割部は、上記のような構成となっており、まずクラス情報生成手段が、注目画素とその周辺画素とからなる画素ブロックの特徴量を各画素の画素値を用いて求め、求めた特徴量に基づく閾値を生成し、生成された閾値と各画素の画素値とを比較して注目画素のクラス分けを行う。このクラス分けによって各画素は、2つの画素集合に分類され、分類された画素集合の各画素に対して前記閾値とは異なる閾値でさらにクラス分けを行う。この処理を繰り返すことで、複数段階のクラス分けを行う。複数段階のクラス分けの結果は、クラス情報として生成される。クラス情報とは、上記のようにクラス分けによって、分類された際に各画素がいずれのクラス、すなわち明度値などの画素値が閾値以上のクラスまたは閾値未満のクラスに属するかを示す情報である。
【0013】
たとえば、第1の段階では、1回目のクラス分けによって、2つのクラスに分類され、第2の段階では、これら2つのクラスの画素がさらにクラス分けされて4つのクラスに分類される。したがって、第1の段階のクラス情報は、各画素が2つのクラスのいずれに属するか示し、第2の段階のクラス情報は、各画素が4つのクラスのいずれに属するかを示す。
【0014】
オブジェクト情報生成手段では、クラス情報生成手段が生成した複数の閾値に基づいて、注目画素が背景領域に属するか否かを判断し、その判断結果を示すオブジェクト情報を生成する。
【0015】
このようにして、クラス情報およびオブジェクト情報が生成されると、ランレングス算出手段は、クラスランレングスとオブジェクトランレングスとを前記段階ごとに算出する。クラスランレングスは、同じクラス情報を有し、所定の方向に互いに隣接する画素からなるクラスランの画素数であり、オブジェクトランレングスは、同じオブジェクト情報を有し、所定の方向に互いに隣接する画素からなるオブジェクトランの画素数である。つまり、クラスランレングスは、クラス分けによって同じクラスに分類された画素が連続して並んだ場合の画素数を示し、オブジェクトランレングスは、背景領域に属する画素が連続して並んだ場合、もしくは背景画素には属しない画素(文字領域またはその他領域に属する画素)が連続して並んだ場合の画素数を示している。
【0016】
次に、ランレングス算出手段によって算出されたクラスランレングスに基づいて、クラスランに含まれる画素が文字領域に属するか否かを前記段階ごとに判断するのであるが、クラスランレングスのみで画素が文字領域に属するか否かを判定すると、判定精度が低いものとなってしまう場合がある。したがって、最終的な判定は、後述の領域判定手段によって行い、文字領域推定手段では、クラスランレングスに基づいて、文字領域に属する可能性が高い画素を段階ごとに推定する。
【0017】
以上のようにして得られた各手段の動作結果に基づいて、領域判定手段が画素の属する領域を判定する。
【0018】
まず、オブジェクト情報生成手段によって生成されたオブジェクト情報に基づいて、画素が背景領域に属するか否かを判定する。背景領域に属さないと判定された画素については、次のようにして文字領域に属するか、その他領域に属するかを判定する。
【0019】
背景領域に属しない画素を含むオブジェクトランについて、このオブジェクトランに含まれる画素のうち、文字領域推定手段によって文字領域に属すると推定された画素の割合を前記段階ごとに算出する。文字領域では、1つのオブジェクトランの中に、同じ段階で文字領域と推定された画素が含まれる割合が多いことから、文字領域に属すると推定された画素の段階ごとの割合に基づいて、オブジェクトランが文字領域に属する画素からなるオブジェクトランであるか否かを判断する。文字領域に属する画素からなるオブジェクトランであれば、そのオブジェクトランに含まれる画素を文字領域に含まれる画素として判定する。文字領域に属する画素からなるオブジェクトランでなければ、そのオブジェクトランに含まれる画素をその他領域に含まれる画素として判定する。
【0020】
注目画素とその周辺画素とからなる画素ブロックの特徴量に基づく閾値を用いて注目画素のクラス分けを行っているので、固定閾値を用いてクラス分けを行う場合に比べ、周辺画素の影響を反映させたクラス情報およびオブジェクト情報を生成することができる。オブジェクト情報の判定は、オブジェクト情報に基づいて精度よく行われる。文字領域の判定は、クラス情報およびオブジェクト情報を用いて、クラスランレングスに基づく推定と、オブジェクトランに含まれる推定画素数の割合とから判定しているので、精度よく文字領域に属する画素を判定できる。
【0021】
このように、各領域の判定精度が高いので、画像データの領域分割精度を向上させることができる。
【0022】
また本発明は、前記クラス情報生成手段は、特徴量として注目画素のエッジ量と、前記画素ブロックに含まれる画素の濃度平均値と、周辺画素が注目画素であったときに行ったクラス分けの閾値とを用い、前記エッジ量を重み係数として、濃度平均値と周辺画素の閾値とを線形補間して閾値を算出することを特徴とする。
【0023】
本発明に従えば、クラス情報生成手段は、特徴量として注目画素のエッジ量と、画素ブロックに含まれる画素の濃度平均値と、周辺画素が注目画素であったときに行ったクラス分けの閾値とを用い、エッジ量を重み係数として、濃度平均値と周辺画素の閾値とを線形補間して閾値を算出する。
【0024】
これにより、エッジ強度を反映した閾値を用いるため、文字領域などのエッジ付近の画素において適切にクラス分けを行うことができる。
【0025】
また本発明は、前記クラス情報生成手段は、前記エッジ量の下限値を画像データのダイナミックレンジに基づいて設定することを特徴とする。
【0026】
本発明に従えば、クラス情報生成手段は、画前記エッジ量の下限値を画像データのダイナミックレンジに基づいて設定する。
【0027】
これにより、画像データのダイナミックレンジが狭い場合でも、適切にクラス分けを行うことができる。
【0028】
また本発明は、前記クラス情報生成手段は、注目画素を所定の走査方向に順次移動させてクラス分けを行い、走査ラインごとに走査方向を変えることを特徴とする。
【0029】
本発明に従えば、クラス情報生成手段は、注目画素を所定の走査方向に順次移動させてクラス分けを行い、走査ラインごとに走査方向を変える。
【0030】
クラス情報生成手段が閾値を算出する場合、周辺画素が注目画素であったときに行ったクラス分けの閾値を用いる。したがって、ラインを左から右へ走査するときは、注目画素の上側の周辺画素と左側の周辺画素の閾値を用いることとなる。走査方向を変えずにクラス分けを行うと、常に左側の周辺画素の影響を受けるため、適切な閾値を算出することができない。走査ラインごとに走査方向を変えることによって、左右の周辺画素の影響を平均して受けることができるため、適切なクラス分けを行うことができる。
【0031】
また本発明は、前記クラス情報生成手段は、周辺画素に含まれるエッジ画素の位置に基づいて、注目画素の閾値を算出せずに周辺画素の閾値の中から選択するか、もしくは濃度平均値と周辺画素の閾値とを線形補間して算出することを特徴とする。
【0032】
本発明に従えば、クラス情報生成手段は、周辺画素に含まれるエッジ画素の位置に基づいて、注目画素の閾値を算出せずに周辺画素の閾値の中から選択するか、もしくは濃度平均値と周辺画素の閾値とを線形補間して算出する。
【0033】
周辺画素にエッジ画素が含まれる場合、算出する閾値は、エッジ画素の影響を強く受けることになり、適切な閾値を算出することができない。したがって、エッジ画素の位置が注目画素の上のみの場合は、閾値を算出せずに左側の周辺画素の閾値を注目画素の閾値として用いるなど、エッジ画素の位置に基づいて注目画素の閾値を生成するので、特に注目画素がエッジ付近の背景画素などの場合に適切な閾値を生成してクラス分けを行うことができる。
【0034】
また本発明は、前記オブジェクト情報生成手段は、前記クラス情報生成手段が生成した閾値として、画像データの最初の注目画素に対して予め定められている初期閾値が連続する場合、注目画素が背景領域に属すると判断することを特徴とする。
【0035】
本発明に従えば、オブジェクト情報生成手段は、クラス情報生成手段が生成した閾値として、画像データの最初の注目画素に対して予め定められている初期閾値が連続する場合、注目画素が背景領域に属すると判断する。
【0036】
画像データの最初の注目画素は、背景画素である場合がほとんどであるため、クラス情報生成手段が生成した閾値が初期閾値であり、それが連続するときは、注目画素が背景領域に属する場合が多い。したがって、このような条件で注目画素が背景領域に属するか否かの判断をすることで、容易かつ精度良く判断することができる。
【0037】
また本発明は、前記ランレングス算出手段は、同種複数処理型演算装置で構成され、走査ラインを予め定める画素数分のクラス情報を含むデータパスに分割し、データパスごとにランレングスを算出し、各データパスの算出後にデータパス間を連結してランレングスを求めることを特徴とする。
【0038】
本発明に従えば、ランレングス算出手段は、同種複数処理型演算装置で構成される。このとき、走査ラインを予め定める画素数分のクラス情報を含むデータパスに分割し、データパスごとにランレングスを算出し、各データパスの算出後にデータパス間を連結してランレングスを求める。
【0039】
同種複数処理型演算装置、いわゆるSIMD(Single Instruction MultipleData)型プロセッサは、同種の命令の処理を同時に行うことができる。ランレングスを算出する場合に、命令をランレングスの算出とすると、データパスごとのランレングスの算出処理を同時に行うことができる。したがって、ランレングス算出処理の処理速度を高速化することができる。
【0040】
また本発明は、前記文字領域推定手段は、ランレングス算出手段により算出されたクラスランレングスを予め定める文字推定閾値と比較し、閾値以下であればクラスランに含まれる画素は文字領域に属すると推定することを特徴とする。
【0041】
本発明に従えば、文字領域推定手段は、ランレングス算出手段により算出されたクラスランレングスを予め定める文字推定閾値と比較し、閾値以下であればクラスランに含まれる画素は文字領域に属すると推定する。
【0042】
一般的に文字は繁雑度が高いため、クラスランレングスを文字推定閾値と比較するだけで容易に文字領域に属するか否かを推定することができる。
【0043】
また本発明は、前記文字領域推定手段は、周辺画素のいずれかが注目画素と同じクラス情報を有し、かつ、文字領域に属しないと推定されている場合、注目画素を文字領域に属しないと推定することを特徴とする。
【0044】
本発明に従えば、文字領域推定手段は、周辺画素の何れかが注目画素と同じクラス情報を有し、かつ、文字領域に属しないと推定されている場合、注目画素を文字領域に属しないと推定する。
【0045】
文字領域の推定に用いられるランレングスは、所定の方向、たとえば横方向のみのランレングスであり、ランレングスと閾値の比較のみで推定すると、横方向の繁雑度のみに依存し、推定精度が低くなってしまう。したがって、上記のような条件を付加して推定を行うことで推定精度を高めることができる。
【0046】
また本発明は、前記領域判定手段によって、文字領域に属すると判定された連続する画素のうち、最端部の画素が有するクラス情報と同じクラス情報を有する画素を文字画素として検知する文字検知手段が備えられていることを特徴とする。
【0047】
本発明に従えば、文字検知手段は、領域判定手段によって、文字領域に属すると判定された連続する画素のうち、最端部の画素が有するクラス情報と同じクラス情報を有する画素を文字画素として検知する。
【0048】
文字領域に属する画素は同じクラス情報を有し、文字領域に属すると判定された連続する画素のうち、最端部の画素が文字領域に属する場合が多いので、精度よく文字領域に属する画素を検知することができる。
【0049】
また本発明は、上記の画像処理装置と、画像処理装置によって処理された画像データを出力する画像出力装置とを備えることを特徴とする画像形成装置である。
【0050】
本発明に従えば、上記の画像処理装置によって処理された画像データを、画像出力装置から出力する。
【0051】
これにより、画像データが高精度で領域分割され、各領域に応じた後処理が施された画像データを出力することができるので、高画質な静止画像を形成することができる。
【0052】
また本発明は、複数の画素からなる画像を示す画像データが入力され、入力された画像データに基づいて画像を構成する各画素が、文字領域、背景領域およびその他領域のいずれの領域に属するかを判定し、画像データの領域分割を行う領域分割工程を備える画像処理方法において、
前記領域分割工程は、
注目画素とその周辺画素とからなる画素ブロックの特徴量を各画素の画素値を用いて求め、求めた特徴量に基づく閾値を生成し、生成された閾値と画素値とを比較して注目画素を2つの画素集合にクラス分けし、前記クラス分けによって分類された画素集合に対して、前記閾値とは異なる閾値でさらにクラス分けを行うことで複数段階のクラス分けを行い、段階ごとのクラス分けの結果を示すクラス情報を生成するクラス情報生成工程と、
クラス情報生成工程で生成した複数の閾値に基づいて、注目画素が背景領域に属するか否かを判断し、その判断結果を示すオブジェクト情報を生成するオブジェクト情報生成工程と、
同じクラス情報を有し、所定の方向に互いに隣接する画素からなるクラスランの画素数であるクラスランレングスと、同じオブジェクト情報を有し、所定の方向に互いに隣接する画素からなるオブジェクトランの画素数であるオブジェクトランレングスとを前記段階ごとに算出するランレングス算出工程と、
前記クラスランレングスに基づいて、クラスランに含まれる画素が文字領域に属するか否かを前記段階ごとに推定する文字領域推定工程と、
オブジェクト情報に基づいて画素が背景領域に属するか否かを判定するとともに、前記オブジェクトランに含まれる画素のうち、前記文字領域推定工程によって文字領域に属すると推定された画素の前記段階ごとの割合に基づいて、オブジェクトランに含まれる画素が文字領域およびその他領域のいずれに属するかを判定する領域判定工程とを有することを特徴とする画像処理方法である。
【0053】
本発明に従えば、領域分割工程は、複数の画素からなる画像を示す画像データに基づいて、画像を構成する各画素が、文字領域、背景領域およびその他領域のいずれの領域に属するかを判定し、画像データの領域分割を行う。
【0054】
領域分割工程は、上記のような工程からなり、まずクラス情報生成工程が、注目画素とその周辺画素とからなる画素ブロックの特徴量を各画素の画素値を用いて求め、求めた特徴量に基づく閾値を生成し、生成された閾値と各画素の画素値とを比較して注目画素のクラス分けを行う。このクラス分けによって各画素は、2つの画素集合に分類され、分類された画素集合の各画素に対して前記閾値とは異なる閾値でさらにクラス分けを行う。この処理を繰り返すことで、複数段階のクラス分けを行う。複数段階のクラス分けの結果は、クラス情報として生成される。クラス情報とは、上記のようにクラス分けによって、分類された際に各画素がいずれのクラス、すなわち明度値などの画素値が閾値以上のクラスまたは閾値未満のクラスに属するかを示す情報である。
【0055】
たとえば、第1の段階では、1回目のクラス分けによって、2つのクラスに分類され、第2の段階では、これら2つのクラスの画素がさらにクラス分けされて4つのクラスに分類される。したがって、第1の段階のクラス情報は、各画素が2つのクラスのいずれに属するか示し、第2の段階のクラス情報は、各画素が4つのクラスのいずれに属するかを示す。
【0056】
オブジェクト情報生成工程では、クラス情報生成工程で生成された複数の閾値に基づいて、注目画素が背景領域に属するか否かを判断し、その判断結果を示すオブジェクト情報を生成する。
【0057】
このようにして、クラス情報およびオブジェクト情報が生成されると、ランレングス算出工程では、クラスランレングスとオブジェクトランレングスとを前記段階ごとに算出する。クラスランレングスは、同じクラス情報を有し、所定の方向に互いに隣接する画素からなるクラスランの画素数であり、オブジェクトランレングスは、同じオブジェクト情報を有し、所定の方向に互いに隣接する画素からなるオブジェクトランの画素数である。つまり、クラスランレングスは、クラス分けによって同じクラスに分類された画素が連続して並んだ場合の画素数を示し、オブジェクトランレングスは、背景領域に属する画素が連続して並んだ場合、もしくは背景画素には属しない画素(文字領域またはその他領域に属する画素)が連続して並んだ場合の画素数を示している。
【0058】
次に、ランレングス算出工程によって算出されたクラスランレングスに基づいて、クラスランに含まれる画素が文字領域に属するか否かを前記段階ごとに判断するのであるが、クラスランレングスのみで画素が文字領域に属するか否かを判定すると、判定精度が低いものとなってしまう場合がある。したがって、最終的な判定は、後述の領域判定工程によって行い、文字領域推定工程では、クラスランレングスに基づいて、文字領域に属する可能性が高い画素を段階ごとに推定する。
【0059】
以上のようにして得られた各工程の結果に基づいて、領域判定工程では、画素の属する領域を判定する。
【0060】
まず、オブジェクト情報生成工程で生成されたオブジェクト情報に基づいて、画素が背景領域に属するか否かを判定する。背景領域に属さないと判定された画素については、次のようにして文字領域に属するか、その他領域に属するかを判定する。
【0061】
背景領域に属しない画素を含むオブジェクトランについて、このオブジェクトランに含まれる画素のうち、文字領域推定工程で文字領域に属すると推定された画素の割合を前記段階ごとに算出する。文字領域では、1つのオブジェクトランの中に、同じ段階で文字領域と推定された画素が含まれる割合が多いことから、文字領域に属すると推定された画素の段階ごとの割合に基づいて、オブジェクトランが文字領域に属する画素からなるオブジェクトランであるか否かを判断する。文字領域に属する画素からなるオブジェクトランであれば、そのオブジェクトランに含まれる画素を文字領域に含まれる画素として判定する。文字領域に属する画素からなるオブジェクトランでなければ、そのオブジェクトランに含まれる画素をその他領域に含まれる画素として判定する。
【0062】
注目画素とその周辺画素とからなる画素ブロックの特徴量に基づく閾値を用いて注目画素のクラス分けを行っているので、固定閾値を用いてクラス分けを行う場合に比べ、周辺画素の影響を反映させたクラス情報およびオブジェクト情報を生成することができる。オブジェクト情報の判定は、オブジェクト情報に基づいて精度よく行われる。文字領域の判定は、クラス情報およびオブジェクト情報を用いて、クラスランレングスに基づく推定と、オブジェクトランに含まれる推定画素数の割合とから判定しているので、精度よく文字領域に属する画素を判定できる。
【0063】
このように、各領域の判定精度が高いので、画像データの領域分割精度を向上させることができる。
【0064】
また本発明は、上記の画像処理方法をコンピュータに実行させるための画像処理プログラムである。
【0065】
本発明に従えば、上記の画像処理方法をコンピュータに実行させるための画像処理プログラムとして提供することができる。
【0066】
また本発明は、上記の画像処理方法をコンピュータに実行させるための画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【0067】
本発明に従えば、上記の画像処理方法をコンピュータに実行させるための画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体として提供することができる。
【0068】
【発明の実施の形態】
本発明は、文字・写真・背景領域が混在する多値入力画像データに対して、領域判定処理を行う画像処理装置であり、たとえば、デジタル放送(データ放送)で得られた多値入力画像データをプリンタなどで印刷する場合に予め画像処理を行う装置である。
【0069】
図1は、本発明の実施の一形態である画像形成装置1の構成を示すブロック図である。画像形成装置1は、画像処理装置2と画像出力装置であるプリンタ9とからなり、画像処理装置2は、入力部3、領域分割部4、補正部5、解像度変換部6、色補正部7およびハーフトーン部8からなる。
【0070】
本実施形態における画像形成装置1は、デジタルテレビ放送などで送信される画像データを印刷して出力するデジタルプリンタとして説明する。印刷して出力するためには、まず有線ケーブルまたは放送用無線アンテナなどを介して送られてきたデジタルテレビ放送信号を、チューナなどの入力部3によって、入力多値画像データ(以下では単に画像データと呼ぶ。)に変換する。画像データは、格子状に配列された複数の画素からなり、各画素は明度値や色度などの画素値を有している。
【0071】
次に、領域分割部4により、画像データの各画素が文字領域、背景領域、写真領域のいずれの領域に属するかを判定し、画像データを文字領域、背景領域、写真領域に分割した後、補正部5によりそれぞれの領域に適した補正処理を行う。
【0072】
補正部5は、文字にじみ補正処理手段5a、圧縮アーティファクツ除去処理手段5b、ノイズ除去処理手段5cからなり、文字領域であると判定された領域については、文字にじみ補正処理手段5aが文字にじみおよび文字欠けを補正する処理を行い、写真領域には、圧縮アーティファクツ除去処理手段5bが圧縮によるアーティファクツを除去する処理を行い、また、背景領域には、ノイズ除去処理手段5cが雑音成分を除去するような処理を行う。
【0073】
補正されて画質改善された画像データは、解像度変換部6によって、プリンタ9の解像度に合わせて解像度変換処理される。色補正部7が、解像度変換処理された画像データの色空間をデバイス色空間に変換した後、最後にハーフトーン部8が中間調処理を行い、プリンタ9に出力する。プリンタ9は、たとえば、電子写真方式やインクジェット方式を用いて画像処理装置2から出力された画像データを紙などの記録媒体に印刷する。
【0074】
なお、以上の処理は不図示のCPU(Central Processing Unit)により制御される。画像処理装置2とプリンタ3とは、接続ケーブルによって直接接続されていてもよいし、LAN(Local Area Network)などのネットワークを介して接続されていても良い。このとき、画像処理装置2はパーソナルコンピュータ(PC)などであり、プリンタ3はファクシミリ装置やコピー装置または複写機能およびファックス機能を備える複合機などでもよい。
【0075】
図2は、領域分割部4の構成を示すブロック図である。領域分割部4は、色変換部10、クラスタリング部11、ランレングス算出部12、文字領域推定部13および領域判定部14からなる。
【0076】
領域分割部4では、写真領域、背景領域、文字領域が混在する画像データに対して、色変換部10が所定の色空間に変換した後、クラスタリング部11が再帰的クラス分け処理によって画像データのクラス情報、および、オブジェクト情報を生成する。そして、ランレングス算出部12が、クラス情報およびオブジェクト情報それぞれについて、水平方向に同一情報を有する画素が連続するランレングスを算出する。
【0077】
次に、文字領域推定部13は、クラス情報のランレングスに基づいて文字領域に属する画素を推定する。そして、領域判定部14は、オブジェクト情報のランが連続する各オブジェクト領域において、文字領域に属すると推定された画素の含有率に基づいて、オブジェクト領域が文字領域、背景領域、写真領域のどの領域に属するかを判定する。
【0078】
以下では、各部位の動作について詳細に説明する。まず色変換部10において、入力された画像データがRGB色空間画像であれば、(R+G+B)/3を算出して、1つのデータに統一できるよう変換する。
【0079】
また、他の色変換方法として、入力されたRGB色空間画像を均等色空間であるL*a*b*カラースペースCIE 1976(CIE:Commission Internationale de l’Eclairage:国際照明委員会。L*:明度、a*,b*:色度)色空間に変換し、そのL*信号を用いる。図3は、入力画像(図3(a))と、色空間変換によって生成したL*信号からなる画像(図3(b))の例を示す図である。
【0080】
クラスタリング部11は、画像データに対して再帰的クラス分け処理を行い、クラス情報およびオブジェクト情報を生成するクラス情報生成手段およびオブジェクト情報生成手段である。クラス情報とは、再帰的クラス分け処理によって、分類された際に各画素がいずれのクラス、すなわち明度値などの画素値が閾値以上のクラスまたは閾値未満のクラスに属するかを示す情報である。オブジェクト情報とは、各画素が背景領域に属するか、文字領域および写真領域である非背景領域(オブジェクト領域)に属するかを示す情報である。
【0081】
再帰的クラス分け処理は、注目画素を含む画素ブロックの特徴量を基に閾値を算出し、算出した閾値を用いて注目画素をクラス分けする処理である。まず、画素ブロックとしては、中心となる注目画素とその周辺画素となる8画素を含む3×3画素の画素ブロックを用いる。
【0082】
図4は、3×3画素の画素ブロックを示す図である。注目画素C1の座標を(x,y)とすると、周辺画素P1〜P8の座標は、それぞれP1(x−1,y−1),P2(x,y−1),P3(x+1,y−1),P4(x−1,y),P5(x+1,y),P6(x−1,y+1),P7(x,y+1),P8(x+1,y+1)となる。特徴量としては、近傍平均値、近傍エッジ量および近傍閾値を用いる。近傍平均値Avgは、図4に示したウインドウ内の9画素の画素値の平均として求める。また、エッジ量については図5に示すようなprewittオペレータ(プリヴィットフィルター)を用いる。3×3画素の画素値を抽出し、画素値にマトリクス係数を畳み込むことで、エッジ量を算出する。図5(a)が垂直方向用オペレータ、図5(b)が水平方向用オペレータである。それぞれのオペレータを用いることで、垂直方向エッジedge_v量(x, y)および水平方向エッジ量edge_h(x, y)を算出することができる。
【0083】
そして、上記で求めた近傍平均値Avg、垂直方向エッジ量edge_v、水平方向エッジ量edge_h、および近傍閾値(すでにクラス分けされた周辺画素の閾値)を用いて動的に注目画素の閾値を決定する。領域分離の精度を高めるために、画像のエッジ部では、クラスを変化させるように、主に近傍平均値を閾値として用い、画像の平坦部では、クラスを変化させないように、主に近傍閾値を用いてクラス分けする。
【0084】
そこで、閾値を、エッジ量を重み係数として用いた線形補間により算出する。以下に一般的な線形補間式を示す。
Y=(1−a)×X1+a×X2 (1)
ただし、aの範囲は0≦a≦1である。
【0085】
(1)式において、重み係数aをエッジ量、X1を近傍閾値、X2を近傍平均値として閾値Yを算出することにより、エッジ部では主に近傍平均値をクラス分けの閾値として用い、平坦部では、主に近傍閾値を閾値として用いることができる。
そこで、以下の算出式を用いてエッジ量Edgeを算出する。
【0086】
【数1】
【0087】
(1)式を用いて線形補間により閾値を算出するためには、重み係数であるエッジ量の範囲が、0≦Edge≦1である必要があるが、(2)式で算出されるエッジ量Edgeは、0≦Edge≦1の範囲とはならない。したがって、エッジ量Edgeに対して最大値Wを設け、最大値で除算することで0≦Edge/W≦1の範囲とすることができる。
【0088】
エッジ量Edgeの最大値Wは、以下の(3)式により設定する。
Edge=Edge>W ? W:Edge (3)
【0089】
(3)式は、Edgeとして、条件を満たすときには前者を、条件を満たさない場合には後者の値を用いることを意味する。つまり、エッジ量EdgeがWより大きい時はEdge=Wとし、W以下の時は、Edgeをそのまま用いる。
【0090】
本実施形態における再帰的クラス分け処理は、注目画素とその周辺画素とからなる3×3画素の画素ブロックにおいて、エッジ量、近傍平均値および近傍閾値などの特徴量を求め、求めた特徴量に基づく閾値を生成して注目画素のクラス分けを行う。さらに、クラス分けによって分類された各クラスの画素に対して、異なる閾値でさらにクラス分けを行うことで複数段階(レベル)のクラス分けを行う。また、本実施形態では再帰レベルを3とし、段階的に、強いエッジ部分をクラスの境界として分割するレベル1、比較的強いエッジ部分をクラスの境界として分割するレベル2、および、弱いエッジ部分をクラスの境界として分割するレベル3の3つのレベルで分割することとなる。強いエッジ部分とは、エッジを挟んだ両側の画素間の画素値の差が大きい部分であり、弱いエッジ部分とは、エッジを挟んだ両側の画素間の画素値の差が小さい部分である。
【0091】
したがって、複数レベルの再帰的クラス分け処理を実現するためにエッジ量の下限値を設ける。
【0092】
下限値をWの関数LOWER_VAL(W)とすると、下限値は以下の(4)式により算出される。
Edge=Edge<LOWER_VAL(W) ? 0:Edge (4)
【0093】
このとき、エッジ量EdgeがLOWER_VAL(W)より小さい時はEdge=0とし、LOWER_VAL(W)以上の時は、Edgeをそのまま用いる。
【0094】
関数LOWER_VAL(W)は、たとえば以下のようなWの関数とする。
LOWER_VAL(W)=32×W/128 (5)
【0095】
(2)〜(4)式により算出したエッジ量Edge、近傍平均値Avg、および、近傍閾値th(x−1,y),th(x,y−1)を(1)式に代入することにより、注目画素における閾値th(x,y)を算出することができる。ここで、座標(x−1,y)は周辺画素のうち注目画素C1の左隣の画素P4の座標を示し、座標(x,y−1)は周辺画素のうち上の画素P2の座標を示している。したがって、th(x−1,y)は注目画素の左隣の画素P4をクラス分けしたときの閾値を示し、th(x,y−1)は注目画素の上の画素P2をクラス分けしたときの閾値を示す。
【0096】
【数2】
【0097】
(7)式は四捨五入を表す。閾値th(x,y)は整数であることから、TH/Wに0.5を加えることにより、四捨五入を実現することができる。しかしながら、整数演算において、除算を行った後に0.5を加える場合、処理量が増加するため、除算における分母を2で割った値を分子に加えた後、分母で割ることにより四捨五入を実現するのが一般的である。
【0098】
実際にクラス分け処理を行う手順としては、画像データの各画素を行方向(主走査方向)に処理を繰り返して走査する。1ラインの処理が終われば列方向(副走査方向)に処理の対象ラインを移動し、再度主走査方向にクラス分け処理を行う。
【0099】
前述のように閾値th(x,y)を算出するためには、近傍閾値th(x−1,y),th(x,y−1)が必要であるが、最初のラインをクラス分け処理する場合、注目画素の上の画素が存在しないので、近傍閾値th(x,y−1)を用いることができない。また、ラインを左から右へ順次クラス分け処理を行うときに、最初の注目画素、すなわち左端の画素には左隣の画素が存在しないため、近傍閾値th(x−1,y)を用いることができない。したがって、予め初期閾値を設定し、近傍画素が存在しない場合には、設定した初期閾値を近傍閾値th(x,y−1)および近傍閾値th(x−1,y)として閾値th(x,y)を算出する。
【0100】
以下では、画素値、たとえば明度値の範囲を0(黒)〜255(白)として、初期閾値を128とする。なお、他の初期閾値としては、たとえば画像データ全体の平均画素値などを用いてもよい。
【0101】
また、閾値th(x,y)を算出するために、近傍閾値th(x−1,y),th(x,y−1)を用いることから、ラインを主走査方向に走査するときに、常に左から右へクラス分け処理を行うと、閾値th(x,y)は、注目画素の左隣の画素の近傍閾値th(x−1,y)の影響を受けることになり、適切なクラス分け処理が行われない場合がある。したがって、所定のライン毎に、ラインの左から右への処理と、右から左への処理とを入れ換えてクラス分け処理を行う。ラインの右から左へクラス分け処理を行う場合は、(6)式に代入する近傍閾値を、近傍閾値th(x−1,y)から近傍閾値th(x+1,y)に変更すればよい。これにより、閾値th(x,y)は、上の画素、および左右の画素を平均的に考慮した閾値として算出することができる。
【0102】
さらに、クラスタリング部11へ入力される画像データとして、明度値など1つの画素値のみでなく、他に色差などを入力し、エッジ量算出に、色差のエッジ量を付加することにより、色差も考慮したクラス分け処理を行うことができる。
【0103】
また、画像データ全体のダイナミックレンジ(画素値の最大値と最小値との差)を算出し、以下の式によりLOWER_VAL(W)を算出することにより、より画像に適応したクラス分け処理を行うことができ、その結果、処理精度を向上することが可能となる。
【0104】
【数3】
Dはダイナミックレンジを表す。
【0105】
これは、画像におけるエッジ量がダイナミックレンジと大きく関係しており、ダイナミックレンジが狭い(Dが小さい)画像はエッジが検出されにくく、エッジ量算出時における下限値をダイナミックレンジに合わせて変更することにより、エッジが検出されにくい画像に対応するためである。
【0106】
本実施形態で行われる画像処理は、ラスタ処理であるため、注目画素とエッジ部との位置関係によって同じ平坦部の画素であっても閾値が異なる。たとえば、注目画素の下にエッジ部がある場合は平坦部が連続しており、前述の(6),(7)式に示すように、注目画素の左隣および上の周辺画素、すなわち同じ平坦部の近傍閾値を用いて閾値を算出するのに対し、注目画素の上にエッジ部がある場合は注目画素の上の周辺画素がエッジ画素であるため、エッジ画素および平坦部の画素の近傍閾値を用いて閾値を算出することになる。したがって、同じ平坦部の画素であってもエッジ部との位置関係によって閾値が異なることとなる。図6(a)に図3に示した画像データの各画素における(6),(7)式で求めた閾値の分布を示す。背景部分および下部の写真内の陸地や海の部分などの平坦部で閾値の変化が生じていることが分かる。
【0107】
そこで、注目画素とエッジ部との位置関係によって、クラス分け処理の閾値の算出方法を変える。まず、注目画素をラインの左から右へ1画素ごとにクラス分け処理を行う場合について説明する。
【0108】
図7(a)に示すように、周辺画素のうち注目画素の上の画素のみがエッジ画素であり、注目画素の左右にはエッジ画素が存在しない場合には、注目画素の左の画素がクラス分けを行ったときの閾値th(x−1,y)をそのまま注目画素の閾値th(x,y)とする。図7(b)に示すように、周辺画素のうち注目画素の上にはエッジ画素が存在せず、注目画素の左右の画素がエッジ画素である場合には、注目画素の上の画素がクラス分けを行ったときの閾値th(x,y−1)をそのまま注目画素の閾値th(x,y)とする。
【0109】
図7(c)に示すように、周辺画素にエッジ画素が存在しない場合には、注目画素の左の画素がクラス分け処理を行ったときの閾値、あるいは、上の画素がクラス分け処理を行ったときの閾値のうち、予め設定されている初期閾値に近いほうの閾値を注目画素の閾値とする。図7(d)に示すように、上記以外の場合には、(6)式を用いて注目画素の閾値を算出する。
【0110】
次に、注目画素をラインの右から左へ1画素ごとにクラス分け処理を行う場合について説明する。図8(a)に示すように、周辺画素のうち注目画素の上の画素のみがエッジ画素であり、注目画素の左右にはエッジ画素が存在しない場合には、注目画素の右の画素にクラス分け処理を行ったときの閾値th(x+1,y)をそのまま注目画素の閾値th(x,y)とする。図8(b)に示すように、周辺画素のうち注目画素の上にはエッジ画素が存在せず、注目画素の左右の画素がエッジ画素である場合には、注目画素の上の画素がクラス分け処理を行ったときの閾値th(x,y−1)をそのまま注目画素の閾値th(x,y)とする。
【0111】
図8(c)に示すように周辺画素にエッジ画素が存在しない場合には、注目画素の右の画素がクラス分け処理を行ったときの閾値、あるいは、上の画素がクラス分け処理を行ったときの閾値のうち、予め設定されている初期閾値に近いほうの閾値を注目画素の閾値とする。図8(d)に示すように、上記以外の場合には、(6)式を用いて注目画素の閾値を算出する。
【0112】
このようにして閾値を決定した場合の閾値の分布を図6(b)に示す。図から平坦部における不自然な閾値の変化を生じていないことが分かる。これにより平坦部の閾値を一定に保つことができ、さらに、後述するオブジェクト情報の作成を行うことができる。
【0113】
再帰的クラス分け処理は、上記のように画素ごとに閾値を決定してクラス分け処理が繰り返されることにより実行される。具体的には以下のように実現する。
【0114】
本実施形態では、3レベル階層まで、再帰的クラス分け処理を繰り返す。
まず、レベル1におけるクラス分け処理では、エッジ量上限値(=重み係数の和)W1を128とし、前述のようにして決定した閾値に基づいて、各画素を明度値が0または255の2つのクラスに分類する。画素の明度値が閾値より大きいときは、その画素の明度値を255とし、閾値より小さいときは、明度値を0とする。このようにして得られた各画素の明度値をレベル1のクラス情報として画素ごとに記憶し、レベル1における分類結果とする。
【0115】
レベル2では、レベル1において明度値が0のクラスに分類された各画素および255のクラスに分類された各画素について、さらにクラス分け処理を行う。エッジ量上限値をW2=W1/2(=64)と設定することで、レベル1より細かなエッジを検出してクラスの変化を起こしやすくする。また、このとき、エッジ量下限値LOWER_VAL(W2)は、(5)式にW=64を代入して16とする。
【0116】
レベル2のクラス分け処理では、レベル1において0のクラスに分類された各画素の明度値を0と85の2つのクラスに分類し、レベル1において255のクラスに分類された各画素の明度値を170と255の2つのクラスに分類する。このようにして得られた各画素の明度値をレベル2のクラス情報として記憶し、レベル2における分類結果とする。
【0117】
最後に、レベル3では、レベル2において明度値が0,85,170,255のクラスに分類された各画素について、さらにクラス分け処理を行う。エッジ量上限値W3をW3=W2/2(=32)と設定することで、より細かなエッジを検出してクラスの変化を起こしやすくする。また、このとき、エッジ量下限値LOWER_VAL(W3)は、(5)式にW3=32を代入して8とする。
【0118】
レベル3のクラス分け処理では、レベル2において明度値が0のクラスに分類された各画素の明度値を0と28の2つのクラスに分類し、85のクラスに分類された各画素の明度値を56と85の2つのクラスに分類し、170のクラスに分類された各画素の明度値を170と196の2つのクラスに分類し、255のクラスに分類された各画素の明度値を226と255の2つのクラスに分類する。このようにして得られた各画素の明度値をレベル3のクラス情報として記憶し、レベル3における分類結果とする。
【0119】
図9は、再帰的クラス分け処理を3レベルまで行ったときの画素の分類を模式的に表したツリー構造を示す図である。ここで、0,28,56,…255はそれぞれクラスの明度値であり、クラスを識別するためのクラス情報である。また、このツリー構造は、クラス情報により、レベル3のクラス情報から容易にレベル1、レベル2におけるクラス情報を求めることができる。たとえば、レベル3では196のクラスに属する画素は、レベル2では170のクラスに属し、レベル1では255に属することがわかる。したがって、各画素については、レベル3におけるクラス情報のみを記憶しておけばよい。
【0120】
ただし、必ずしもクラス情報には明度値を用いる必要はなく、レベル3におけるクラス情報からレベル1,2におけるクラス情報がわかれば良い。たとえば、レベル3のクラスにおいて、前述のクラス0をクラス1,クラス28をクラス2,クラス56をクラス3,…,クラス255をクラス8などとしてもよい。
【0121】
さらにクラスタリング部11は、再帰的クラス分け処理を行う際に決定した画素ごとの閾値に基づいてオブジェクト情報を作成する。オブジェクト情報は画素ごとに決定され、画素が背景領域に属するか、背景以外のオブジェクト(写真、文字など)領域に属するかを示す。たとえば、画素が背景領域に属する場合は、オブジェクト情報を1とし、オブジェクト領域に属する場合は、オブジェクト情報を0として記憶する。
【0122】
画素が背景領域に属するかどうかは、レベルごとに決定され、クラス分けに用いた閾値が初期閾値であって、これが継続されている間の画素は背景領域に属すると判断する。図7および図8に示した条件で閾値を決定した場合、初期閾値が継続されるのは、平坦部が連続しているからである。また、背景領域以外の領域は何らかのオブジェクトが存在すると考えられるため、背景領域以外はオブジェクト領域であると判断する。
【0123】
したがって、画素ごとに行われる再帰的クラス分け処理において、閾値として用いる近傍閾値が、背景画素の閾値であれば、注目画素は背景領域に属し、非背景画素の閾値であれば、注目画素は背景領域に属するとする。
【0124】
また、閾値が式(6)を用いて算出された場合には、注目画素は非背景領域に属するとする。これは、注目画素の閾値が新たに算出されるということは、何らかのオブジェクトが存在すると考えられるためである。
【0125】
以上のように、再帰的クラス分け処理によってクラスタリング部11は、各画素のクラス情報とオブジェクト情報とを作成する。
【0126】
図10は、各画素のクラス情報の分布を示す図である。本実施形態では、クラス情報として明度値を用いており、この明度値を階調値として用いることで、各画素が有するクラス情報を画像として可視化することができる。図10(a)は、レベル1のクラス情報の分布を示し、図10(b)は、レベル2のクラス情報の分布を示し、図10(c)は、レベル3のクラス情報の分布を示している。レベル1から3にかけてクラスが詳細に分類される様子が分かる。
【0127】
図11は、各画素のオブジェクト情報の分布を示す図である。図では、背景領域に属する画素の明度値を255(白の領域)とし、オブジェクト領域に属する画素の明度値を128(グレーの領域)としてオブジェクト情報の分布を示している。
【0128】
次に、ランレングス算出手段であるランレングス算出部12においてクラスタリング部11で作成したクラス情報およびオブジェクト情報の主走査方向のランレングスを算出する。ランレングスはレベルごと、本実施形態ではレベル3までのランレングスを算出する。
【0129】
図12は、ランレングス算出処理の手順の一例を示す図である。ここでは、1ラインの画素数を16画素として処理を行うこととする。ランレングス算出処理は、2つの処理からなる。各画素には1つの変数(カウント)が与えられ、このカウントを所定の条件で変化させることによりランレングスを算出する。まず第1の処理は、各画素のクラス情報(図12(a)参照)に基づいて、ラインの左から右方向に同一クラスの画素が連続する限り、画素のカウントを増加させてランレングスを算出する処理であり、第2の処理は、ラインの右から左方向について、右隣りの画素のカウントが注目画素におけるカウントより1大きい場合、右隣りの画素におけるカウントを注目画素のカウントに置き換えることにより、各画素に自らが属するランのランレングスを与える処理である。なお、2つの処理に分割することで、複雑なループ処理を避けることが可能となり、SIMDプロセッサ(同種複数処理型演算装置)によってマルチパス処理で行うことができる。
【0130】
まず、図12(b)を参照して、第1の処理について説明する。第1の処理では、図12(a)に示した各画素のクラス情報に基づいて、左隣りの画素のクラス情報が注目画素のクラス情報と同じ場合、左隣りの画素のカウントに1を加えたカウントを注目画素のカウントとする。図12(b)のレベル1では、まず左端の画素を注目画素とすると、注目画素のレベル1クラス情報は0であり、左隣りの画素が存在しないので、カウント0を出力バッファに書き込み、注目画素を次の右隣の画素に移動する。
【0131】
次の注目画素(左から2番目の画素)のレベル1クラス情報も0であるから、左隣の画素のカウントに1を加え、カウント1を出力バッファに書き込む。次の注目画素(左から3番目の画素)のレベル1クラス情報は255であり、左隣の画素とは異なるクラスに属するので、カウントを0に戻し、出力バッファにカウント0を書き込む。同様にして左隣の画素のクラス情報と注目画素のクラス情報とを比較しながら1ライン分の画素についてカウントを決定する。カウントが0の画素が現れるまでのカウントがその画素が属するランのランレングスを示す。
【0132】
なお、図12(a)に示すクラス情報は、レベル3クラス情報であるため、レベル1のランレングスを算出するためには、レベル3クラス情報からレベル1クラス情報を求める必要がある。たとえば、左から6番目の画素の記憶されているクラス情報は、レベル3クラス情報の170であるが、図9に示したツリー構造から、レベル2クラス情報は、170であり、レベル1クラス情報は255であることがわかる。
【0133】
次に、各画素のレベル2クラス情報を求め、レベル1と同様にして、ランレングスを算出する。レベル3クラス情報からレベル2クラス情報を求める方法について説明する。レベル3クラス情報をin、レベル2クラス情報をoutとすると、以下の式により容易に実現できる。
【0134】
▲1▼out = in < 56 ? 0 : out;
▲2▼out = in < 170 ? 85 : out;
▲3▼out = in < 226 ? 170 : out;
▲4▼out = 255;
【0135】
▲1▼レベル3クラス情報を56と比較し、56未満ならばレベル2クラス情報を「0」とする。
【0136】
▲2▼レベル3クラス情報が56以上で170未満ならば、レベル2クラス情報を「85」とする。
【0137】
▲3▼レベル3クラス情報が170以上で226未満ならば、レベル2クラス情報を「170」とする。
【0138】
▲4▼レベル3クラス情報が226以上ならば、レベル2クラス情報を「255」とする。
【0139】
レベル2においては、レベル2より上位であるレベル1におけるクラスの変化を無視してランレングスを算出するために、左隣の画素のクラス情報と注目画素のクラス情報との差の絶対値が255となるときには、クラスの変化が無いものとみなし、カウントを0に戻さず、カウントアップを継続する。つまり、レベル1で既にクラスの変化点、すなわちランの境界であると判定された箇所をレベル2以降では検知しないようにする。図12(b)にレベル2のランレングス算出結果を示す。
【0140】
レベル3については、記憶されているそのままのクラス情報を用いてランレングスを算出することができる。ただし、レベル2と同様に、レベル3より上位であるレベル1およびレベル2におけるクラスの変化を無視してランレングスを算出するために、左隣の画素のクラス情報と注目画素のクラス情報との差の絶対値が28を超えるときには、クラスの変化が無いものとみなし、カウントアップを継続する。以上のような第1の処理により、レベル1〜3までのランレングスを算出することができる。
【0141】
第2の処理について説明する。第2の処理では、第1の処理で求めた各画素のカウント(図12(b))に対して、注目画素のカウントとその右隣り画素のカウントとを比較し、右隣の画素のカウントが注目画素のカウントより1だけ大きければ、注目画素のカウントを右隣りの画素のカウントで置き換える。ランの右端にある画素のカウントはランレングスと等しいので、同じランに属する画素のカウントをランの右端にある画素のカウントで置き換えることによって、各画素が、自らが属するランのランレングスを情報として有することとなる。レベル1の場合を例として以下に説明する(図12(c)参照)。
・右端の画素のカウントが「1」であり、右隣の画素が存在しないので、カウントは「1」のまま変えない。
・次(右から2番目)の画素のカウントが「0」であり、右隣の画素のカウントが1だけ大きいので、カウントを「1」に置き換える。
・右から3番目の画素のカウントは「3」であり、右隣の画素のカウントが2大きいので、カウントは「3」のまま変えない。
・右から4番目の画素のカウントは「2」であり、右隣の画素のカウントが1だけ大きいので、カウントを「3」に置き換える。
・右から5番目の画素のカウントは「1」であり、右隣の画素のカウントが1だけ大きいので、カウントを「3」に置き換える。
【0142】
以下同様にこの処理を繰り返す。なお、注目画素のカウントとその右隣りの画素のカウントとの比較は、第1の処理で求めたカウント(図12(b))に基づいて行い、置き換えるカウントは第2の処理後のカウントを用いる。これは、連続してカウントされたときのカウントの最大値(ランの右端のカウント)がランレングスに相当するため、連続してカウントされた画素のカウントを最大値で置き換えることに相当する。
【0143】
以上の第1および第2の処理と同様の処理を行えば、オブジェクト情報のランレングスを算出することができる。第1の処理では、左隣の画素と同じオブジェクト情報であれば、左隣りの画素のカウントに1を加えたカウントを注目画素のカウントとする。第2の処理では、第1の処理結果に基づいて、カウントの置き換えを行う。
【0144】
また、SIMDプロセッサのような複数のデータパスを1つのプログラムカウンタで扱うプロセッサでは、1ラインのクラス情報を複数のデータパス、たとえば図13(a)に示すように、データパスAおよびデータパスBに分割し、第1の処理では各データパスを同時に処理することができる。
【0145】
各データパス内で個別にランレングスを算出し(図13(b)参照)、データパス間を連結する(図13(c)参照)。データパスAとデータパスBとの連結部において、隣接する画素のクラス情報が同じであれば、データパスAの右端の画素のカウントを、データパスBの左端の画素以外でカウントが0の画素が現れるまで加算する(図13(c)参照)。また、連結部でクラス情報が異なる場合には、そのまま連結する。データパスの連結後は、前述と同様に第2の処理を行い、各画素に自らが属するランのランレングスを与える(図13(d)参照)。以上の処理により、容易にSIMDプロセッサにおいて処理を行うことができる。
【0146】
次に、文字領域推定手段である文字領域推定部13において、クラス情報のランレングスに基づいて、文字領域に属する画素を推定する。文字は、一般的に煩雑度が高いと考えられるため、クラス情報のランレングスが文字推定閾値SIZEOFTEXT以下であれば文字領域に属する画素であると推定することができる。
【0147】
しかしながら、ランレングス算出部12で算出したランレングスは、主走査方向のランレングスであるから、閾値SIZEOFTEXTに基づいて文字領域の推定を行うと、画像の横方向の煩雑度にのみ依存した判定となり、精度が十分ではない。
【0148】
そこで、周辺画素において、注目画素と同一のクラスに属し、かつ、文字領域ではないと推定されている画素が存在する場合、その注目画素は、クラス情報のランレングスが所定の閾値SIZEOFTEXT以下であっても文字領域であると推定しない。この条件を付加して判定することにより、文字領域推定精度を向上することができる。
【0149】
さらに、ラインの左から処理を行う場合と右から処理を行う場合とを考慮し、2方向から推定処理を行う。まず、左から右方向に処理を行う場合、クラス情報のランレングスが所定の閾値SIZEOFTEXT以下であっても、図14に示す処理対象の周辺画素が以下の条件を満たす場合、文字領域であると推定しない。
・左隣の画素が注目画素と同一のクラスに属し、かつ、文字領域として推定されていない
・上の画素が注目画素と同一のクラスに属し、かつ、文字領域として推定されていない
・左斜め上の画素が注目画素と同一のクラスに属し、かつ、文字領域として推定されていない
・右斜め上の画素が注目画素と同一のクラスに属し、かつ、文字領域として推定されていない
また、ラインの右から左方向に処理を行う場合、既に左から右方向の処理で文字領域と推定されていても、以下の条件を満たす場合、文字領域であると推定しない。
・右隣の画素が注目画素と同一のクラスに属し、かつ、文字領域として推定されていない
以上の2方向の処理(▲1▼ラインの左から右方向の処理、▲2▼ラインの右から左方向処理)により、クラス情報のランレングスに基づいて文字領域を精度良く推定することが出来る。以上の文字領域推定処理を各レベルで行う。
【0150】
図15は、各レベルにおける文字推定領域を示す図である。図15(a)は、レベル1における文字推定領域、図15(b)は、レベル2における文字推定領域、図15(c)は、レベル3における文字推定領域をそれぞれ示している。図では、文字領域に属すると推定された画素の明度値を255、それ以外の画素の明度値を0としている。
【0151】
領域判定部14は、オブジェクト情報のランレングスおよび文字領域推定結果に基づいて、各画素の属する領域を判定する領域判定手段である。オブジェクト情報のランを単位窓(ある単位をまとめて1つのものとして見なす)とし、文字領域推定部13の推定結果からレベル毎に文字領域と推定された画素の含有率に基づいて、領域判定を行う。
【0152】
まず、単位窓内におけるレベル1の文字推定領域の画素数、レベル2の文字推定領域の画素数、レベル3の文字推定領域の画素数をカウントする。図16は、領域判定の対象となる単位窓の一例を示す図である。この例では、単位窓であるオブジェクト情報のランレングスを8とし(ランレングス算出処理が0からカウントを始めるため、図では「8」ではなく「7」と表記している。)、文字領域に属すると推定される画素を「*」、文字領域ではないと推定された画素を「−」で表している。
【0153】
まず、単位窓内におけるレベル毎の文字領域推定画素をカウントする。図16では、レベル1における文字領域推定画素数が4、レベル2における文字領域推定画素数が3、レベル3における文字領域推定画素が0である。
【0154】
そして、これらの文字領域推定画素数から背景・文字・写真領域を判定する。文字領域は、連続するオブジェクト領域が1つのレベルの文字領域推定画素で構成されていることが多く、たとえば、以下に示す条件では文字領域である可能性が高い。
【0155】
【表1】
【0156】
逆に、写真領域は、連続するオブジェクト領域が複数のレベルの文字領域推定画素で構成されていることが多い。たとえば、以下に示す条件では写真領域である可能性が高い。
【0157】
【表2】
【0158】
実際に判定するには、予めオブジェクト情報のランレングス、レベル1の文字領域推定画素数、レベル2の文字領域推定画素数およびレベル3の文字領域推定画素数と、領域判定結果とを関連付けるLUT(Look Up Table)を記憶しておき、文字領域推定画素数に基づいてLUTを参照することにより、オブジェクト領域が文字領域と写真領域のいずれであるかを判定する。このLUTの作成には、たとえば、ニューラルネットワークを用いた学習方法などが挙げられる。
【0159】
なお、背景領域は、オブジェクト情報を作成した際、オブジェクト領域が存在しない領域を背景領域と判定する。また、オブジェクト領域であったとしてもオブジェクト情報のランレングスがある程度大きく、各レベルにおける文字領域推定画素数が少ない場合には、背景領域として判定してもよい。
【0160】
図17は、領域判定結果を示す図である。ただし、文字領域に属する画素の明度値を0(黒の領域)、背景領域に属する画素の明度値を255(白の領域)、写真領域に属する画素の明度値を128(グレーの領域)としている。
【0161】
さらに、領域分割結果に基づいて、文字領域に判定された画素から詳細に文字を検知する。なお、文字検知を行う際には、図18の領域分割部4のブロック図に示すように、領域判定部14の後段に文字検知部15が設けられる。文字検知部15以外の部位については、図2で説明した部位と同じであるので説明は省略する。なお、文字検知部15は必ずしも領域分割部4に備える必要はない。
【0162】
文字検知部15は、領域判定部14において文字領域であると判定された画素について、文字領域推定結果を用いてさらに詳細に文字を検知する。文字推定領域において、連続する文字推定領域の最初の画素の属するクラスが文字クラスであるのが一般的であることから、最初の画素が属するクラスを検知し、文字領域であると判定された領域内において、検知したクラスと同一のクラスに属する画素が文字領域に属すると判定することにより、文字の判定精度をさらに向上させることができる。
【0163】
図19は、文字検知部15が文字の検知を行った場合の領域判定結果を示す図である。各領域を示す明度値は、図17に示した判定結果と同じである。図からわかるように図17に示した判定結果に比べて、精度良く文字領域が分割されているのがわかる。
【0164】
図20は、領域分割処理を示すフローチャートである。まず、ステップS1では、色変換部10によって、入力された画像データの色空間を変換し、明度値など領域判定に用いる画素値を求める。ステップS2では、クラスタリング部11によって、再帰的クラス分け処理を行い、クラス情報およびオブジェクト情報を生成する。ステップS3では、ランレングス算出部12が作成されたクラス情報およびオブジェクト情報の主走査方向ランレングスを算出する。
【0165】
ステップS4では、文字領域推定部13が、クラス情報のランレングスと閾値SIZEOFTEXTとを比較する。閾値より小さいランレングスを有するランに属する画素を文字領域に属する画素と推定する。ステップS5では、領域判定部14が、オブジェクト情報が連続する領域内の画素のうち文字領域と推定された画素の画素数に基づいて、オブジェクト領域の画素を文字領域か写真領域に判定する。
【0166】
以上のように、本実施形態では、周辺画素の影響を考慮して注目画素ごとに閾値を決定する再帰的クラス分け処理によって、画像データを複数のクラスに分類し、この結果に基づいて領域判定を行う。したがって、固定閾値を用いてクラス分け処理を行う場合などと比べて領域分離精度を向上させることができる。
【0167】
また、本発明の実施の他の形態は、コンピュータを画像処理装置2として機能させるための画像処理プログラム、および画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体である。これによって、画像処理プログラムおよび画像処理プログラムを記録した記録媒体を持ち運び自在に提供することができる。
【0168】
記録媒体は、プリンタやコンピュータシステム(コンピュータシステムに適用する場合はアプリケーション・ソフトとして用いることができる)に備えられるプログラム読み取り装置により読み取られることで、画像処理プログラムが実行される。
【0169】
コンピュータシステムの入力手段としては、フラットベッドスキャナ・フィルムスキャナ・デジタルカメラなどを用いてもよい。コンピュータシステムは、これらの入力手段と、所定のプログラムがロードされることにより画像処理などを実行するコンピュータと、コンピュータの処理結果を表示するCRT(CathodeRay Tube)ディスプレイ・液晶ディスプレイなどの画像表示装置と、コンピュータの処理結果を紙などに出力するプリンタより構成される。さらには、ネットワークを介してサーバーなどに接続するための通信手段としてのモデムなどが備えられる。
【0170】
なお、記録媒体としては、プログラム読み取り装置によって読み取られるものには限らず、マイクロコンピュータのメモリ、たとえばROMであっても良い。記録されているプログラムはマイクロプロセッサがアクセスして実行しても良いし、あるいは、記録媒体から読み出したプログラムを、マイクロコンピュータのプログラム記憶エリアにダウンロードし、そのプログラムを実行してもよい。このダウンロード機能は予めマイクロコンピュータが備えているものとする。
【0171】
記録媒体の具体的な例としては、磁気テープやカセットテープなどのテープ系、フレキシブルディスクやハードディスクなどの磁気ディスクやCD−ROM(Compact Disc−Read Only Memory)/MO(Magneto Optical)ディスク/MD(Mini Disc)/DVD(Digital Versatile Disc)などの光ディスクのディスク系、IC(Integrated Circuit)カード(メモリカードを含む)/光カードなどのカード系、あるいはマスクROM、EPROM(Erasable Programmable ReadOnly Memory)、EEPROM(Electrically Erasable Programmable ReadOnly Memory)、フラッシュROMなどの半導体メモリを含めた固定的にプログラムを担持する媒体である。
【0172】
また、本実施形態においては、コンピュータはインターネットを含む通信ネットワークに接続可能なシステム構成とし、通信ネットワークを介して画像処理プログラムをダウンロードしても良い。なお、このように通信ネットワークからプログラムをダウンロードする場合には、そのダウンロード機能は予めコンピュータに備えておくか、あるいは別な記録媒体からインストールされるものであっても良い。また、ダウンロード用のプログラムはユーザーインターフェースを介して実行されるものであっても良いし、決められたURL(Uniform ResourceLocater)から定期的にプログラムをダウンロードするようなものであっても良い。
【0173】
【発明の効果】
以上のように本発明によれば、注目画素とその周辺画素とからなる画素ブロックの特徴量に基づく閾値を用いて注目画素にクラス分けを行っているので、固定閾値を用いてクラス分けを行う場合に比べ、周辺画素の影響を反映させたクラス情報およびオブジェクト情報を生成することができる。オブジェクト情報の判定は、オブジェクト情報に基づいて精度よく行われる。文字領域の判定は、クラス情報およびオブジェクト情報を用いて、クラスランレングスに基づく推定と、オブジェクトランに含まれる推定画素数の割合とから判定しているので、精度よく文字領域に属する画素を判定できる。したがって、各領域の判定精度が高いので、画像データの領域分割精度を向上させることができる。
【0174】
また本発明によれば、エッジ強度を反映した閾値を用いるため、文字領域などのエッジ付近の画素において適切にクラス分けを行うことができる。
【0175】
また本発明によれば、画像データのダイナミックレンジが狭い場合でも、適切にクラス分けを行うことができる。
【0176】
また本発明によれば、走査ラインごとに走査方向を変えることによって、左右の周辺画素の影響を平均して受けることができるため、適切なクラス分けを行うことができる。
【0177】
また本発明によれば、エッジ画素の位置が注目画素の上のみ場合は、閾値を算出せずに左側の周辺画素の閾値を注目画素の閾値として用いるなど、エッジ画素の位置に基づいて注目画素の閾値を生成するので、特に注目画素がエッジ付近の背景画素などの場合に適切な閾値を生成してクラス分けを行うことができる。
【0178】
また本発明によれば、注目画素が背景領域に属するか否かを容易かつ精度良く判断することができる。
【0179】
また本発明によれば、同種複数処理型演算装置、いわゆるSIMD(SingleInstruction Multiple Data)型プロセッサは、同種の命令の処理を同時に行うことができる。ランレングスを算出する場合に、命令をランレングスの算出とすると、データパスごとのランレングスの算出処理を同時に行うことができる。したがって、ランレングス算出処理の処理速度を高速化することができる。
【0180】
また本発明によれば、一般的に文字は繁雑度が高いため、クラスランレングスを文字推定閾値と比較するだけで容易に文字領域に属するか否かを推定することができる。
【0181】
また本発明によれば、文字領域の推定精度を高めることができる。
また本発明によれば、文字領域に属する画素は同じクラス情報を有し、文字領域に属すると判定された連続する画素のうち、最端部の画素が文字領域に属する場合が多いので、精度よく文字領域に属する画素を検知することができる。
【0182】
また本発明によれば、画像データが高精度で領域分割され、各領域に応じた後処理が施された画像データを出力することができるので、高画質な静止画像を形成することができる。
【0183】
また本発明によれば、画像処理方法をコンピュータに実行させるための画像処理プログラムとして提供することができる。
【0184】
また本発明によれば、画像処理方法をコンピュータに実行させるための画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体として提供することができる。
【図面の簡単な説明】
【図1】本発明の実施の一形態である画像形成装置1の構成を示すブロック図である。
【図2】領域分割部4の構成を示すブロック図である。
【図3】入力画像(図3(a))と、色空間変換によって生成したL*信号からなる画像(図3(b))の例を示す図である。
【図4】3×3画素の画素ブロックを示す図である。
【図5】Prewittオペレータ(プリヴィットフィルター)の一例を示す図である。
【図6】各画素における閾値の分布を示す図である。
【図7】注目画素と周辺のエッジ画素との位置関係による閾値の決定方法を説明する図である。
【図8】注目画素と周辺のエッジ画素との位置関係による閾値の決定方法を説明する図である。
【図9】再帰的クラス分け処理を3レベルまで行ったときの画素の分類を模式的に表したツリー構造を示す図である。
【図10】各画素のクラス情報の分布を示す図である。
【図11】各画素のオブジェクト情報の分布を示す図である。
【図12】ランレングス算出処理の手順の一例を示す図である。
【図13】SIMDプロセッサを用いたランレングス算出処理の手順の一例を示す図である。
【図14】文字領域推定部13が行う文字領域推定処理を説明する図である。
【図15】各レベルにおける文字推定領域を示す図である。
【図16】領域判定の対象となる単位窓の一例を示す図である。
【図17】領域判定結果を示す図である。
【図18】領域分割部4の他の構成を示すブロック図である。
【図19】文字検知部15が文字の検知を行った場合の領域判定結果を示す図である。
【図20】領域分割処理を示すフローチャートである。
【符号の説明】
1 画像形成装置
2 画像処理装置
3 入力部
4 領域分割部
5 補正部
6 解像度変換部
7 色補正部
8 ハーフトーン部
9 プリンタ
10 色変換部
11 クラスタリング部
12 ランレングス算出部
13 文字領域推定部
14 領域判定部
【発明の属する分野】
本発明は、たとえばデジタルテレビ放送から入力された映像について、背景・文字・写真が混在した多階調画像を背景・文字・その他の領域に分割する画像処理方法、画像処理装置、画像形成装置、およびプログラム、記録媒体に関する。
【0002】
【従来の技術】
チューナを介して受信したデジタルテレビ放送信号を復号して得られた多値入力画像(静止画)データには、文字・写真・背景領域が混在しており、それぞれの領域において固有の画質劣化を伴う。文字領域では、文字にじみ、文字欠けが発生し、写真領域ではJPEG(Joint Photographic Experts Group)、MPEG(Moving Picture Experts Group)によるリンギング、ブロックノイズなどの圧縮アーティファクツが発生する。また、背景領域には少なからずノイズが見られ、そのまま拡大してプリンタ出力した際には画質劣化が非常に目立つ。
【0003】
また、文字にじみや圧縮によるアーティファクツを解決するような処理を画像データ全体に実施すると画像がぼけたり、写真領域の画質を高めるために、ディテイル再現向上、輪郭強調を行うと、背景領域も強調されてしまい、ノイズを際立たせてしまう。したがって、背景・文字・写真領域などが混在する入力多値画像データの背景領域、文字領域、写真領域を検出して分割し、それぞれの領域に適した処理を行うことが望ましい。
【0004】
このような課題に対して、従来から画像データの領域分割処理が開発されており、たとえば、複数の画素からなる小領域内の最大画素濃度差を用いて分割する方法がある。この方法では、背景領域の濃度分布が写真・文字領域の濃度分布に比べて、平坦であることを利用し、注目画素を含む小領域内の最大濃度差が第一所定閾値以下であれば、その注目画素を背景領域と判定し、それ以外をオブジェクト領域として判定する。さらに、オブジェクト領域について第2所定閾値以上であれば、注目画素を文字領域と判定し、それ以外を写真領域として判定する。
【0005】
しかしながら、この方法では、写真領域に含まれるオブジェクトの輪郭など、濃度変化の激しい領域が文字領域として誤って判定されたり、かすれ文字など、2値画像でありながら濃度変化が緩やかな領域が写真領域として誤って判定される。そのため、画像データ全体としては領域分割精度が悪いという問題がある。この問題を解決するための技術として、特許文献1に記載の画像領域分離装置がある。この装置は、背景色画素から構成される背景領域と非背景色画素から構成され、写真や文字等の異なる種類の非背景領域とを有する画像情報を、走査することによって入力する入力手段と、この入力手段により走査毎に入力した画像情報の中から、非背景色画素を検出する非背景色画素分離手段と、非背景色画素分離手段により分離された走査方向に一つ以上連続する非背景色画素を一つのランとし、その長さを検出するラン検出手段と、非背景色画素分離手段により分離された非背景色画素が、非背景領域のエッジを構成するエッジ画素であるかどうかを判定するエッジ画素判定手段と、エッジ画素として判定された非背景色画素の割合に基づき、検出されたランが写真や文字等の異なる種類の非背景領域のうちのいずれの種類の非背景領域に属するかを示すランの属性を判定する領域判定手段とを備えており、これらの手段を用いて領域分割を行う。この領域判定手段では、ラン検出手段で検出されたランの中のエッジ画素の割合が多い場合には、そのランを文字領域として判定し、ランの中のエッジ画素の割合が少ない場合には、そのランを写真領域として判定する。
【0006】
一般に文字は白色と黒色とが鮮明に分かれており、これに対して写真は白色と黒色とが緩やかに変化していく場合が多い。したがって、一つのランに属する連続した非背景色画素の中で、ラン検出手段によりエッジ画素として判定された非背景色画素の割合が多い場合には、文字領域であると判定することが可能になる。反対に写真領域の場合は文字領域とは異なり、非背景色画素が連続し、かつ、なだらかな変化を呈するために、ランの中でエッジ画素として判定された非背景色画素の割合が少ない場合には、写真領域であると判定することが可能になる。このように、領域判定手段は、非背景色画素から成る主走査方向のランを、各ランにおけるエッジ画素含有率が高い場合には文字領域として判定し、エッジ画素含有率が低い場合には写真領域として判定する。
【0007】
【特許文献1】
特開平6−54180号公報
【0008】
【発明が解決しようとする課題】
上記の従来技術においては、N×N画素ブロック内の濃度平均値などに基づいて、非背景画素を検出しているが、背景色が白色であることを想定し、色の違いによって非背景画素を検出しているため、デジタルテレビ放送のように様々な色の背景領域を有する入力画像データに対して、背景領域と非背景領域との領域を分割することができない。さらに、エッジ量をN×N画素ブロック内の最大濃度差に基づく固定閾値を用いて2値化処理(クラス分け処理)しているので、非背景領域のうちの文字領域と写真領域との分割精度が悪いという問題がある。
【0009】
本発明の目的は、高精度な領域分割処理を行うことができる画像処理装置および該画像処理装置を備える画像形成装置、ならびに画像処理方法、画像処理プログラムおよびコンピュータ読み取り可能な記録媒体を提供することである。
【0010】
【課題を解決するための手段】
本発明は、複数の画素からなる画像を示す画像データが入力され、入力された画像データに基づいて画像を構成する各画素が、文字領域、背景領域およびその他領域のいずれの領域に属するかを判定し、画像データの領域分割を行う領域分割部を備える画像処理装置において、
前記領域分割部は、
注目画素とその周辺画素とからなる画素ブロックの特徴量を各画素の画素値を用いて求め、求めた特徴量に基づく閾値を生成し、生成された閾値と各画素の画素値とを比較して注目画素を2つの画素集合にクラス分けし、前記クラス分けによって分類された画素集合に対して、前記閾値とは異なる閾値でさらにクラス分けを行うことで複数段階のクラス分けを行い、段階ごとのクラス分けの結果を示すクラス情報を生成するクラス情報生成手段と、
クラス情報生成手段が生成した複数の閾値に基づいて、注目画素が背景領域に属するか否かを判断し、その判断結果を示すオブジェクト情報を生成するオブジェクト情報生成手段と、
同じクラス情報を有し、所定の方向に互いに隣接する画素からなるクラスランの画素数であるクラスランレングスと、同じオブジェクト情報を有し、所定の方向に互いに隣接する画素からなるオブジェクトランの画素数であるオブジェクトランレングスとを前記段階ごとに算出するランレングス算出手段と、
前記クラスランレングスに基づいて、クラスランに含まれる画素が文字領域に属するか否かを前記段階ごとに推定する文字領域推定手段と、
オブジェクト情報に基づいて画素が背景領域に属するか否かを判定するとともに、前記オブジェクトランに含まれる画素のうち、前記文字領域推定手段によって文字領域に属すると推定された画素の前記段階ごとの割合に基づいて、オブジェクトランに含まれる画素が文字領域およびその他領域のいずれに属するかを判定する領域判定手段とを有することを特徴とする画像処理装置である。
【0011】
本発明に従えば、領域分割部は、複数の画素からなる画像を示す画像データに基づいて、画像を構成する各画素が、文字領域、背景領域およびその他領域のいずれの領域に属するかを判定し、画像データの領域分割を行う。
【0012】
領域分割部は、上記のような構成となっており、まずクラス情報生成手段が、注目画素とその周辺画素とからなる画素ブロックの特徴量を各画素の画素値を用いて求め、求めた特徴量に基づく閾値を生成し、生成された閾値と各画素の画素値とを比較して注目画素のクラス分けを行う。このクラス分けによって各画素は、2つの画素集合に分類され、分類された画素集合の各画素に対して前記閾値とは異なる閾値でさらにクラス分けを行う。この処理を繰り返すことで、複数段階のクラス分けを行う。複数段階のクラス分けの結果は、クラス情報として生成される。クラス情報とは、上記のようにクラス分けによって、分類された際に各画素がいずれのクラス、すなわち明度値などの画素値が閾値以上のクラスまたは閾値未満のクラスに属するかを示す情報である。
【0013】
たとえば、第1の段階では、1回目のクラス分けによって、2つのクラスに分類され、第2の段階では、これら2つのクラスの画素がさらにクラス分けされて4つのクラスに分類される。したがって、第1の段階のクラス情報は、各画素が2つのクラスのいずれに属するか示し、第2の段階のクラス情報は、各画素が4つのクラスのいずれに属するかを示す。
【0014】
オブジェクト情報生成手段では、クラス情報生成手段が生成した複数の閾値に基づいて、注目画素が背景領域に属するか否かを判断し、その判断結果を示すオブジェクト情報を生成する。
【0015】
このようにして、クラス情報およびオブジェクト情報が生成されると、ランレングス算出手段は、クラスランレングスとオブジェクトランレングスとを前記段階ごとに算出する。クラスランレングスは、同じクラス情報を有し、所定の方向に互いに隣接する画素からなるクラスランの画素数であり、オブジェクトランレングスは、同じオブジェクト情報を有し、所定の方向に互いに隣接する画素からなるオブジェクトランの画素数である。つまり、クラスランレングスは、クラス分けによって同じクラスに分類された画素が連続して並んだ場合の画素数を示し、オブジェクトランレングスは、背景領域に属する画素が連続して並んだ場合、もしくは背景画素には属しない画素(文字領域またはその他領域に属する画素)が連続して並んだ場合の画素数を示している。
【0016】
次に、ランレングス算出手段によって算出されたクラスランレングスに基づいて、クラスランに含まれる画素が文字領域に属するか否かを前記段階ごとに判断するのであるが、クラスランレングスのみで画素が文字領域に属するか否かを判定すると、判定精度が低いものとなってしまう場合がある。したがって、最終的な判定は、後述の領域判定手段によって行い、文字領域推定手段では、クラスランレングスに基づいて、文字領域に属する可能性が高い画素を段階ごとに推定する。
【0017】
以上のようにして得られた各手段の動作結果に基づいて、領域判定手段が画素の属する領域を判定する。
【0018】
まず、オブジェクト情報生成手段によって生成されたオブジェクト情報に基づいて、画素が背景領域に属するか否かを判定する。背景領域に属さないと判定された画素については、次のようにして文字領域に属するか、その他領域に属するかを判定する。
【0019】
背景領域に属しない画素を含むオブジェクトランについて、このオブジェクトランに含まれる画素のうち、文字領域推定手段によって文字領域に属すると推定された画素の割合を前記段階ごとに算出する。文字領域では、1つのオブジェクトランの中に、同じ段階で文字領域と推定された画素が含まれる割合が多いことから、文字領域に属すると推定された画素の段階ごとの割合に基づいて、オブジェクトランが文字領域に属する画素からなるオブジェクトランであるか否かを判断する。文字領域に属する画素からなるオブジェクトランであれば、そのオブジェクトランに含まれる画素を文字領域に含まれる画素として判定する。文字領域に属する画素からなるオブジェクトランでなければ、そのオブジェクトランに含まれる画素をその他領域に含まれる画素として判定する。
【0020】
注目画素とその周辺画素とからなる画素ブロックの特徴量に基づく閾値を用いて注目画素のクラス分けを行っているので、固定閾値を用いてクラス分けを行う場合に比べ、周辺画素の影響を反映させたクラス情報およびオブジェクト情報を生成することができる。オブジェクト情報の判定は、オブジェクト情報に基づいて精度よく行われる。文字領域の判定は、クラス情報およびオブジェクト情報を用いて、クラスランレングスに基づく推定と、オブジェクトランに含まれる推定画素数の割合とから判定しているので、精度よく文字領域に属する画素を判定できる。
【0021】
このように、各領域の判定精度が高いので、画像データの領域分割精度を向上させることができる。
【0022】
また本発明は、前記クラス情報生成手段は、特徴量として注目画素のエッジ量と、前記画素ブロックに含まれる画素の濃度平均値と、周辺画素が注目画素であったときに行ったクラス分けの閾値とを用い、前記エッジ量を重み係数として、濃度平均値と周辺画素の閾値とを線形補間して閾値を算出することを特徴とする。
【0023】
本発明に従えば、クラス情報生成手段は、特徴量として注目画素のエッジ量と、画素ブロックに含まれる画素の濃度平均値と、周辺画素が注目画素であったときに行ったクラス分けの閾値とを用い、エッジ量を重み係数として、濃度平均値と周辺画素の閾値とを線形補間して閾値を算出する。
【0024】
これにより、エッジ強度を反映した閾値を用いるため、文字領域などのエッジ付近の画素において適切にクラス分けを行うことができる。
【0025】
また本発明は、前記クラス情報生成手段は、前記エッジ量の下限値を画像データのダイナミックレンジに基づいて設定することを特徴とする。
【0026】
本発明に従えば、クラス情報生成手段は、画前記エッジ量の下限値を画像データのダイナミックレンジに基づいて設定する。
【0027】
これにより、画像データのダイナミックレンジが狭い場合でも、適切にクラス分けを行うことができる。
【0028】
また本発明は、前記クラス情報生成手段は、注目画素を所定の走査方向に順次移動させてクラス分けを行い、走査ラインごとに走査方向を変えることを特徴とする。
【0029】
本発明に従えば、クラス情報生成手段は、注目画素を所定の走査方向に順次移動させてクラス分けを行い、走査ラインごとに走査方向を変える。
【0030】
クラス情報生成手段が閾値を算出する場合、周辺画素が注目画素であったときに行ったクラス分けの閾値を用いる。したがって、ラインを左から右へ走査するときは、注目画素の上側の周辺画素と左側の周辺画素の閾値を用いることとなる。走査方向を変えずにクラス分けを行うと、常に左側の周辺画素の影響を受けるため、適切な閾値を算出することができない。走査ラインごとに走査方向を変えることによって、左右の周辺画素の影響を平均して受けることができるため、適切なクラス分けを行うことができる。
【0031】
また本発明は、前記クラス情報生成手段は、周辺画素に含まれるエッジ画素の位置に基づいて、注目画素の閾値を算出せずに周辺画素の閾値の中から選択するか、もしくは濃度平均値と周辺画素の閾値とを線形補間して算出することを特徴とする。
【0032】
本発明に従えば、クラス情報生成手段は、周辺画素に含まれるエッジ画素の位置に基づいて、注目画素の閾値を算出せずに周辺画素の閾値の中から選択するか、もしくは濃度平均値と周辺画素の閾値とを線形補間して算出する。
【0033】
周辺画素にエッジ画素が含まれる場合、算出する閾値は、エッジ画素の影響を強く受けることになり、適切な閾値を算出することができない。したがって、エッジ画素の位置が注目画素の上のみの場合は、閾値を算出せずに左側の周辺画素の閾値を注目画素の閾値として用いるなど、エッジ画素の位置に基づいて注目画素の閾値を生成するので、特に注目画素がエッジ付近の背景画素などの場合に適切な閾値を生成してクラス分けを行うことができる。
【0034】
また本発明は、前記オブジェクト情報生成手段は、前記クラス情報生成手段が生成した閾値として、画像データの最初の注目画素に対して予め定められている初期閾値が連続する場合、注目画素が背景領域に属すると判断することを特徴とする。
【0035】
本発明に従えば、オブジェクト情報生成手段は、クラス情報生成手段が生成した閾値として、画像データの最初の注目画素に対して予め定められている初期閾値が連続する場合、注目画素が背景領域に属すると判断する。
【0036】
画像データの最初の注目画素は、背景画素である場合がほとんどであるため、クラス情報生成手段が生成した閾値が初期閾値であり、それが連続するときは、注目画素が背景領域に属する場合が多い。したがって、このような条件で注目画素が背景領域に属するか否かの判断をすることで、容易かつ精度良く判断することができる。
【0037】
また本発明は、前記ランレングス算出手段は、同種複数処理型演算装置で構成され、走査ラインを予め定める画素数分のクラス情報を含むデータパスに分割し、データパスごとにランレングスを算出し、各データパスの算出後にデータパス間を連結してランレングスを求めることを特徴とする。
【0038】
本発明に従えば、ランレングス算出手段は、同種複数処理型演算装置で構成される。このとき、走査ラインを予め定める画素数分のクラス情報を含むデータパスに分割し、データパスごとにランレングスを算出し、各データパスの算出後にデータパス間を連結してランレングスを求める。
【0039】
同種複数処理型演算装置、いわゆるSIMD(Single Instruction MultipleData)型プロセッサは、同種の命令の処理を同時に行うことができる。ランレングスを算出する場合に、命令をランレングスの算出とすると、データパスごとのランレングスの算出処理を同時に行うことができる。したがって、ランレングス算出処理の処理速度を高速化することができる。
【0040】
また本発明は、前記文字領域推定手段は、ランレングス算出手段により算出されたクラスランレングスを予め定める文字推定閾値と比較し、閾値以下であればクラスランに含まれる画素は文字領域に属すると推定することを特徴とする。
【0041】
本発明に従えば、文字領域推定手段は、ランレングス算出手段により算出されたクラスランレングスを予め定める文字推定閾値と比較し、閾値以下であればクラスランに含まれる画素は文字領域に属すると推定する。
【0042】
一般的に文字は繁雑度が高いため、クラスランレングスを文字推定閾値と比較するだけで容易に文字領域に属するか否かを推定することができる。
【0043】
また本発明は、前記文字領域推定手段は、周辺画素のいずれかが注目画素と同じクラス情報を有し、かつ、文字領域に属しないと推定されている場合、注目画素を文字領域に属しないと推定することを特徴とする。
【0044】
本発明に従えば、文字領域推定手段は、周辺画素の何れかが注目画素と同じクラス情報を有し、かつ、文字領域に属しないと推定されている場合、注目画素を文字領域に属しないと推定する。
【0045】
文字領域の推定に用いられるランレングスは、所定の方向、たとえば横方向のみのランレングスであり、ランレングスと閾値の比較のみで推定すると、横方向の繁雑度のみに依存し、推定精度が低くなってしまう。したがって、上記のような条件を付加して推定を行うことで推定精度を高めることができる。
【0046】
また本発明は、前記領域判定手段によって、文字領域に属すると判定された連続する画素のうち、最端部の画素が有するクラス情報と同じクラス情報を有する画素を文字画素として検知する文字検知手段が備えられていることを特徴とする。
【0047】
本発明に従えば、文字検知手段は、領域判定手段によって、文字領域に属すると判定された連続する画素のうち、最端部の画素が有するクラス情報と同じクラス情報を有する画素を文字画素として検知する。
【0048】
文字領域に属する画素は同じクラス情報を有し、文字領域に属すると判定された連続する画素のうち、最端部の画素が文字領域に属する場合が多いので、精度よく文字領域に属する画素を検知することができる。
【0049】
また本発明は、上記の画像処理装置と、画像処理装置によって処理された画像データを出力する画像出力装置とを備えることを特徴とする画像形成装置である。
【0050】
本発明に従えば、上記の画像処理装置によって処理された画像データを、画像出力装置から出力する。
【0051】
これにより、画像データが高精度で領域分割され、各領域に応じた後処理が施された画像データを出力することができるので、高画質な静止画像を形成することができる。
【0052】
また本発明は、複数の画素からなる画像を示す画像データが入力され、入力された画像データに基づいて画像を構成する各画素が、文字領域、背景領域およびその他領域のいずれの領域に属するかを判定し、画像データの領域分割を行う領域分割工程を備える画像処理方法において、
前記領域分割工程は、
注目画素とその周辺画素とからなる画素ブロックの特徴量を各画素の画素値を用いて求め、求めた特徴量に基づく閾値を生成し、生成された閾値と画素値とを比較して注目画素を2つの画素集合にクラス分けし、前記クラス分けによって分類された画素集合に対して、前記閾値とは異なる閾値でさらにクラス分けを行うことで複数段階のクラス分けを行い、段階ごとのクラス分けの結果を示すクラス情報を生成するクラス情報生成工程と、
クラス情報生成工程で生成した複数の閾値に基づいて、注目画素が背景領域に属するか否かを判断し、その判断結果を示すオブジェクト情報を生成するオブジェクト情報生成工程と、
同じクラス情報を有し、所定の方向に互いに隣接する画素からなるクラスランの画素数であるクラスランレングスと、同じオブジェクト情報を有し、所定の方向に互いに隣接する画素からなるオブジェクトランの画素数であるオブジェクトランレングスとを前記段階ごとに算出するランレングス算出工程と、
前記クラスランレングスに基づいて、クラスランに含まれる画素が文字領域に属するか否かを前記段階ごとに推定する文字領域推定工程と、
オブジェクト情報に基づいて画素が背景領域に属するか否かを判定するとともに、前記オブジェクトランに含まれる画素のうち、前記文字領域推定工程によって文字領域に属すると推定された画素の前記段階ごとの割合に基づいて、オブジェクトランに含まれる画素が文字領域およびその他領域のいずれに属するかを判定する領域判定工程とを有することを特徴とする画像処理方法である。
【0053】
本発明に従えば、領域分割工程は、複数の画素からなる画像を示す画像データに基づいて、画像を構成する各画素が、文字領域、背景領域およびその他領域のいずれの領域に属するかを判定し、画像データの領域分割を行う。
【0054】
領域分割工程は、上記のような工程からなり、まずクラス情報生成工程が、注目画素とその周辺画素とからなる画素ブロックの特徴量を各画素の画素値を用いて求め、求めた特徴量に基づく閾値を生成し、生成された閾値と各画素の画素値とを比較して注目画素のクラス分けを行う。このクラス分けによって各画素は、2つの画素集合に分類され、分類された画素集合の各画素に対して前記閾値とは異なる閾値でさらにクラス分けを行う。この処理を繰り返すことで、複数段階のクラス分けを行う。複数段階のクラス分けの結果は、クラス情報として生成される。クラス情報とは、上記のようにクラス分けによって、分類された際に各画素がいずれのクラス、すなわち明度値などの画素値が閾値以上のクラスまたは閾値未満のクラスに属するかを示す情報である。
【0055】
たとえば、第1の段階では、1回目のクラス分けによって、2つのクラスに分類され、第2の段階では、これら2つのクラスの画素がさらにクラス分けされて4つのクラスに分類される。したがって、第1の段階のクラス情報は、各画素が2つのクラスのいずれに属するか示し、第2の段階のクラス情報は、各画素が4つのクラスのいずれに属するかを示す。
【0056】
オブジェクト情報生成工程では、クラス情報生成工程で生成された複数の閾値に基づいて、注目画素が背景領域に属するか否かを判断し、その判断結果を示すオブジェクト情報を生成する。
【0057】
このようにして、クラス情報およびオブジェクト情報が生成されると、ランレングス算出工程では、クラスランレングスとオブジェクトランレングスとを前記段階ごとに算出する。クラスランレングスは、同じクラス情報を有し、所定の方向に互いに隣接する画素からなるクラスランの画素数であり、オブジェクトランレングスは、同じオブジェクト情報を有し、所定の方向に互いに隣接する画素からなるオブジェクトランの画素数である。つまり、クラスランレングスは、クラス分けによって同じクラスに分類された画素が連続して並んだ場合の画素数を示し、オブジェクトランレングスは、背景領域に属する画素が連続して並んだ場合、もしくは背景画素には属しない画素(文字領域またはその他領域に属する画素)が連続して並んだ場合の画素数を示している。
【0058】
次に、ランレングス算出工程によって算出されたクラスランレングスに基づいて、クラスランに含まれる画素が文字領域に属するか否かを前記段階ごとに判断するのであるが、クラスランレングスのみで画素が文字領域に属するか否かを判定すると、判定精度が低いものとなってしまう場合がある。したがって、最終的な判定は、後述の領域判定工程によって行い、文字領域推定工程では、クラスランレングスに基づいて、文字領域に属する可能性が高い画素を段階ごとに推定する。
【0059】
以上のようにして得られた各工程の結果に基づいて、領域判定工程では、画素の属する領域を判定する。
【0060】
まず、オブジェクト情報生成工程で生成されたオブジェクト情報に基づいて、画素が背景領域に属するか否かを判定する。背景領域に属さないと判定された画素については、次のようにして文字領域に属するか、その他領域に属するかを判定する。
【0061】
背景領域に属しない画素を含むオブジェクトランについて、このオブジェクトランに含まれる画素のうち、文字領域推定工程で文字領域に属すると推定された画素の割合を前記段階ごとに算出する。文字領域では、1つのオブジェクトランの中に、同じ段階で文字領域と推定された画素が含まれる割合が多いことから、文字領域に属すると推定された画素の段階ごとの割合に基づいて、オブジェクトランが文字領域に属する画素からなるオブジェクトランであるか否かを判断する。文字領域に属する画素からなるオブジェクトランであれば、そのオブジェクトランに含まれる画素を文字領域に含まれる画素として判定する。文字領域に属する画素からなるオブジェクトランでなければ、そのオブジェクトランに含まれる画素をその他領域に含まれる画素として判定する。
【0062】
注目画素とその周辺画素とからなる画素ブロックの特徴量に基づく閾値を用いて注目画素のクラス分けを行っているので、固定閾値を用いてクラス分けを行う場合に比べ、周辺画素の影響を反映させたクラス情報およびオブジェクト情報を生成することができる。オブジェクト情報の判定は、オブジェクト情報に基づいて精度よく行われる。文字領域の判定は、クラス情報およびオブジェクト情報を用いて、クラスランレングスに基づく推定と、オブジェクトランに含まれる推定画素数の割合とから判定しているので、精度よく文字領域に属する画素を判定できる。
【0063】
このように、各領域の判定精度が高いので、画像データの領域分割精度を向上させることができる。
【0064】
また本発明は、上記の画像処理方法をコンピュータに実行させるための画像処理プログラムである。
【0065】
本発明に従えば、上記の画像処理方法をコンピュータに実行させるための画像処理プログラムとして提供することができる。
【0066】
また本発明は、上記の画像処理方法をコンピュータに実行させるための画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【0067】
本発明に従えば、上記の画像処理方法をコンピュータに実行させるための画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体として提供することができる。
【0068】
【発明の実施の形態】
本発明は、文字・写真・背景領域が混在する多値入力画像データに対して、領域判定処理を行う画像処理装置であり、たとえば、デジタル放送(データ放送)で得られた多値入力画像データをプリンタなどで印刷する場合に予め画像処理を行う装置である。
【0069】
図1は、本発明の実施の一形態である画像形成装置1の構成を示すブロック図である。画像形成装置1は、画像処理装置2と画像出力装置であるプリンタ9とからなり、画像処理装置2は、入力部3、領域分割部4、補正部5、解像度変換部6、色補正部7およびハーフトーン部8からなる。
【0070】
本実施形態における画像形成装置1は、デジタルテレビ放送などで送信される画像データを印刷して出力するデジタルプリンタとして説明する。印刷して出力するためには、まず有線ケーブルまたは放送用無線アンテナなどを介して送られてきたデジタルテレビ放送信号を、チューナなどの入力部3によって、入力多値画像データ(以下では単に画像データと呼ぶ。)に変換する。画像データは、格子状に配列された複数の画素からなり、各画素は明度値や色度などの画素値を有している。
【0071】
次に、領域分割部4により、画像データの各画素が文字領域、背景領域、写真領域のいずれの領域に属するかを判定し、画像データを文字領域、背景領域、写真領域に分割した後、補正部5によりそれぞれの領域に適した補正処理を行う。
【0072】
補正部5は、文字にじみ補正処理手段5a、圧縮アーティファクツ除去処理手段5b、ノイズ除去処理手段5cからなり、文字領域であると判定された領域については、文字にじみ補正処理手段5aが文字にじみおよび文字欠けを補正する処理を行い、写真領域には、圧縮アーティファクツ除去処理手段5bが圧縮によるアーティファクツを除去する処理を行い、また、背景領域には、ノイズ除去処理手段5cが雑音成分を除去するような処理を行う。
【0073】
補正されて画質改善された画像データは、解像度変換部6によって、プリンタ9の解像度に合わせて解像度変換処理される。色補正部7が、解像度変換処理された画像データの色空間をデバイス色空間に変換した後、最後にハーフトーン部8が中間調処理を行い、プリンタ9に出力する。プリンタ9は、たとえば、電子写真方式やインクジェット方式を用いて画像処理装置2から出力された画像データを紙などの記録媒体に印刷する。
【0074】
なお、以上の処理は不図示のCPU(Central Processing Unit)により制御される。画像処理装置2とプリンタ3とは、接続ケーブルによって直接接続されていてもよいし、LAN(Local Area Network)などのネットワークを介して接続されていても良い。このとき、画像処理装置2はパーソナルコンピュータ(PC)などであり、プリンタ3はファクシミリ装置やコピー装置または複写機能およびファックス機能を備える複合機などでもよい。
【0075】
図2は、領域分割部4の構成を示すブロック図である。領域分割部4は、色変換部10、クラスタリング部11、ランレングス算出部12、文字領域推定部13および領域判定部14からなる。
【0076】
領域分割部4では、写真領域、背景領域、文字領域が混在する画像データに対して、色変換部10が所定の色空間に変換した後、クラスタリング部11が再帰的クラス分け処理によって画像データのクラス情報、および、オブジェクト情報を生成する。そして、ランレングス算出部12が、クラス情報およびオブジェクト情報それぞれについて、水平方向に同一情報を有する画素が連続するランレングスを算出する。
【0077】
次に、文字領域推定部13は、クラス情報のランレングスに基づいて文字領域に属する画素を推定する。そして、領域判定部14は、オブジェクト情報のランが連続する各オブジェクト領域において、文字領域に属すると推定された画素の含有率に基づいて、オブジェクト領域が文字領域、背景領域、写真領域のどの領域に属するかを判定する。
【0078】
以下では、各部位の動作について詳細に説明する。まず色変換部10において、入力された画像データがRGB色空間画像であれば、(R+G+B)/3を算出して、1つのデータに統一できるよう変換する。
【0079】
また、他の色変換方法として、入力されたRGB色空間画像を均等色空間であるL*a*b*カラースペースCIE 1976(CIE:Commission Internationale de l’Eclairage:国際照明委員会。L*:明度、a*,b*:色度)色空間に変換し、そのL*信号を用いる。図3は、入力画像(図3(a))と、色空間変換によって生成したL*信号からなる画像(図3(b))の例を示す図である。
【0080】
クラスタリング部11は、画像データに対して再帰的クラス分け処理を行い、クラス情報およびオブジェクト情報を生成するクラス情報生成手段およびオブジェクト情報生成手段である。クラス情報とは、再帰的クラス分け処理によって、分類された際に各画素がいずれのクラス、すなわち明度値などの画素値が閾値以上のクラスまたは閾値未満のクラスに属するかを示す情報である。オブジェクト情報とは、各画素が背景領域に属するか、文字領域および写真領域である非背景領域(オブジェクト領域)に属するかを示す情報である。
【0081】
再帰的クラス分け処理は、注目画素を含む画素ブロックの特徴量を基に閾値を算出し、算出した閾値を用いて注目画素をクラス分けする処理である。まず、画素ブロックとしては、中心となる注目画素とその周辺画素となる8画素を含む3×3画素の画素ブロックを用いる。
【0082】
図4は、3×3画素の画素ブロックを示す図である。注目画素C1の座標を(x,y)とすると、周辺画素P1〜P8の座標は、それぞれP1(x−1,y−1),P2(x,y−1),P3(x+1,y−1),P4(x−1,y),P5(x+1,y),P6(x−1,y+1),P7(x,y+1),P8(x+1,y+1)となる。特徴量としては、近傍平均値、近傍エッジ量および近傍閾値を用いる。近傍平均値Avgは、図4に示したウインドウ内の9画素の画素値の平均として求める。また、エッジ量については図5に示すようなprewittオペレータ(プリヴィットフィルター)を用いる。3×3画素の画素値を抽出し、画素値にマトリクス係数を畳み込むことで、エッジ量を算出する。図5(a)が垂直方向用オペレータ、図5(b)が水平方向用オペレータである。それぞれのオペレータを用いることで、垂直方向エッジedge_v量(x, y)および水平方向エッジ量edge_h(x, y)を算出することができる。
【0083】
そして、上記で求めた近傍平均値Avg、垂直方向エッジ量edge_v、水平方向エッジ量edge_h、および近傍閾値(すでにクラス分けされた周辺画素の閾値)を用いて動的に注目画素の閾値を決定する。領域分離の精度を高めるために、画像のエッジ部では、クラスを変化させるように、主に近傍平均値を閾値として用い、画像の平坦部では、クラスを変化させないように、主に近傍閾値を用いてクラス分けする。
【0084】
そこで、閾値を、エッジ量を重み係数として用いた線形補間により算出する。以下に一般的な線形補間式を示す。
Y=(1−a)×X1+a×X2 (1)
ただし、aの範囲は0≦a≦1である。
【0085】
(1)式において、重み係数aをエッジ量、X1を近傍閾値、X2を近傍平均値として閾値Yを算出することにより、エッジ部では主に近傍平均値をクラス分けの閾値として用い、平坦部では、主に近傍閾値を閾値として用いることができる。
そこで、以下の算出式を用いてエッジ量Edgeを算出する。
【0086】
【数1】
【0087】
(1)式を用いて線形補間により閾値を算出するためには、重み係数であるエッジ量の範囲が、0≦Edge≦1である必要があるが、(2)式で算出されるエッジ量Edgeは、0≦Edge≦1の範囲とはならない。したがって、エッジ量Edgeに対して最大値Wを設け、最大値で除算することで0≦Edge/W≦1の範囲とすることができる。
【0088】
エッジ量Edgeの最大値Wは、以下の(3)式により設定する。
Edge=Edge>W ? W:Edge (3)
【0089】
(3)式は、Edgeとして、条件を満たすときには前者を、条件を満たさない場合には後者の値を用いることを意味する。つまり、エッジ量EdgeがWより大きい時はEdge=Wとし、W以下の時は、Edgeをそのまま用いる。
【0090】
本実施形態における再帰的クラス分け処理は、注目画素とその周辺画素とからなる3×3画素の画素ブロックにおいて、エッジ量、近傍平均値および近傍閾値などの特徴量を求め、求めた特徴量に基づく閾値を生成して注目画素のクラス分けを行う。さらに、クラス分けによって分類された各クラスの画素に対して、異なる閾値でさらにクラス分けを行うことで複数段階(レベル)のクラス分けを行う。また、本実施形態では再帰レベルを3とし、段階的に、強いエッジ部分をクラスの境界として分割するレベル1、比較的強いエッジ部分をクラスの境界として分割するレベル2、および、弱いエッジ部分をクラスの境界として分割するレベル3の3つのレベルで分割することとなる。強いエッジ部分とは、エッジを挟んだ両側の画素間の画素値の差が大きい部分であり、弱いエッジ部分とは、エッジを挟んだ両側の画素間の画素値の差が小さい部分である。
【0091】
したがって、複数レベルの再帰的クラス分け処理を実現するためにエッジ量の下限値を設ける。
【0092】
下限値をWの関数LOWER_VAL(W)とすると、下限値は以下の(4)式により算出される。
Edge=Edge<LOWER_VAL(W) ? 0:Edge (4)
【0093】
このとき、エッジ量EdgeがLOWER_VAL(W)より小さい時はEdge=0とし、LOWER_VAL(W)以上の時は、Edgeをそのまま用いる。
【0094】
関数LOWER_VAL(W)は、たとえば以下のようなWの関数とする。
LOWER_VAL(W)=32×W/128 (5)
【0095】
(2)〜(4)式により算出したエッジ量Edge、近傍平均値Avg、および、近傍閾値th(x−1,y),th(x,y−1)を(1)式に代入することにより、注目画素における閾値th(x,y)を算出することができる。ここで、座標(x−1,y)は周辺画素のうち注目画素C1の左隣の画素P4の座標を示し、座標(x,y−1)は周辺画素のうち上の画素P2の座標を示している。したがって、th(x−1,y)は注目画素の左隣の画素P4をクラス分けしたときの閾値を示し、th(x,y−1)は注目画素の上の画素P2をクラス分けしたときの閾値を示す。
【0096】
【数2】
【0097】
(7)式は四捨五入を表す。閾値th(x,y)は整数であることから、TH/Wに0.5を加えることにより、四捨五入を実現することができる。しかしながら、整数演算において、除算を行った後に0.5を加える場合、処理量が増加するため、除算における分母を2で割った値を分子に加えた後、分母で割ることにより四捨五入を実現するのが一般的である。
【0098】
実際にクラス分け処理を行う手順としては、画像データの各画素を行方向(主走査方向)に処理を繰り返して走査する。1ラインの処理が終われば列方向(副走査方向)に処理の対象ラインを移動し、再度主走査方向にクラス分け処理を行う。
【0099】
前述のように閾値th(x,y)を算出するためには、近傍閾値th(x−1,y),th(x,y−1)が必要であるが、最初のラインをクラス分け処理する場合、注目画素の上の画素が存在しないので、近傍閾値th(x,y−1)を用いることができない。また、ラインを左から右へ順次クラス分け処理を行うときに、最初の注目画素、すなわち左端の画素には左隣の画素が存在しないため、近傍閾値th(x−1,y)を用いることができない。したがって、予め初期閾値を設定し、近傍画素が存在しない場合には、設定した初期閾値を近傍閾値th(x,y−1)および近傍閾値th(x−1,y)として閾値th(x,y)を算出する。
【0100】
以下では、画素値、たとえば明度値の範囲を0(黒)〜255(白)として、初期閾値を128とする。なお、他の初期閾値としては、たとえば画像データ全体の平均画素値などを用いてもよい。
【0101】
また、閾値th(x,y)を算出するために、近傍閾値th(x−1,y),th(x,y−1)を用いることから、ラインを主走査方向に走査するときに、常に左から右へクラス分け処理を行うと、閾値th(x,y)は、注目画素の左隣の画素の近傍閾値th(x−1,y)の影響を受けることになり、適切なクラス分け処理が行われない場合がある。したがって、所定のライン毎に、ラインの左から右への処理と、右から左への処理とを入れ換えてクラス分け処理を行う。ラインの右から左へクラス分け処理を行う場合は、(6)式に代入する近傍閾値を、近傍閾値th(x−1,y)から近傍閾値th(x+1,y)に変更すればよい。これにより、閾値th(x,y)は、上の画素、および左右の画素を平均的に考慮した閾値として算出することができる。
【0102】
さらに、クラスタリング部11へ入力される画像データとして、明度値など1つの画素値のみでなく、他に色差などを入力し、エッジ量算出に、色差のエッジ量を付加することにより、色差も考慮したクラス分け処理を行うことができる。
【0103】
また、画像データ全体のダイナミックレンジ(画素値の最大値と最小値との差)を算出し、以下の式によりLOWER_VAL(W)を算出することにより、より画像に適応したクラス分け処理を行うことができ、その結果、処理精度を向上することが可能となる。
【0104】
【数3】
Dはダイナミックレンジを表す。
【0105】
これは、画像におけるエッジ量がダイナミックレンジと大きく関係しており、ダイナミックレンジが狭い(Dが小さい)画像はエッジが検出されにくく、エッジ量算出時における下限値をダイナミックレンジに合わせて変更することにより、エッジが検出されにくい画像に対応するためである。
【0106】
本実施形態で行われる画像処理は、ラスタ処理であるため、注目画素とエッジ部との位置関係によって同じ平坦部の画素であっても閾値が異なる。たとえば、注目画素の下にエッジ部がある場合は平坦部が連続しており、前述の(6),(7)式に示すように、注目画素の左隣および上の周辺画素、すなわち同じ平坦部の近傍閾値を用いて閾値を算出するのに対し、注目画素の上にエッジ部がある場合は注目画素の上の周辺画素がエッジ画素であるため、エッジ画素および平坦部の画素の近傍閾値を用いて閾値を算出することになる。したがって、同じ平坦部の画素であってもエッジ部との位置関係によって閾値が異なることとなる。図6(a)に図3に示した画像データの各画素における(6),(7)式で求めた閾値の分布を示す。背景部分および下部の写真内の陸地や海の部分などの平坦部で閾値の変化が生じていることが分かる。
【0107】
そこで、注目画素とエッジ部との位置関係によって、クラス分け処理の閾値の算出方法を変える。まず、注目画素をラインの左から右へ1画素ごとにクラス分け処理を行う場合について説明する。
【0108】
図7(a)に示すように、周辺画素のうち注目画素の上の画素のみがエッジ画素であり、注目画素の左右にはエッジ画素が存在しない場合には、注目画素の左の画素がクラス分けを行ったときの閾値th(x−1,y)をそのまま注目画素の閾値th(x,y)とする。図7(b)に示すように、周辺画素のうち注目画素の上にはエッジ画素が存在せず、注目画素の左右の画素がエッジ画素である場合には、注目画素の上の画素がクラス分けを行ったときの閾値th(x,y−1)をそのまま注目画素の閾値th(x,y)とする。
【0109】
図7(c)に示すように、周辺画素にエッジ画素が存在しない場合には、注目画素の左の画素がクラス分け処理を行ったときの閾値、あるいは、上の画素がクラス分け処理を行ったときの閾値のうち、予め設定されている初期閾値に近いほうの閾値を注目画素の閾値とする。図7(d)に示すように、上記以外の場合には、(6)式を用いて注目画素の閾値を算出する。
【0110】
次に、注目画素をラインの右から左へ1画素ごとにクラス分け処理を行う場合について説明する。図8(a)に示すように、周辺画素のうち注目画素の上の画素のみがエッジ画素であり、注目画素の左右にはエッジ画素が存在しない場合には、注目画素の右の画素にクラス分け処理を行ったときの閾値th(x+1,y)をそのまま注目画素の閾値th(x,y)とする。図8(b)に示すように、周辺画素のうち注目画素の上にはエッジ画素が存在せず、注目画素の左右の画素がエッジ画素である場合には、注目画素の上の画素がクラス分け処理を行ったときの閾値th(x,y−1)をそのまま注目画素の閾値th(x,y)とする。
【0111】
図8(c)に示すように周辺画素にエッジ画素が存在しない場合には、注目画素の右の画素がクラス分け処理を行ったときの閾値、あるいは、上の画素がクラス分け処理を行ったときの閾値のうち、予め設定されている初期閾値に近いほうの閾値を注目画素の閾値とする。図8(d)に示すように、上記以外の場合には、(6)式を用いて注目画素の閾値を算出する。
【0112】
このようにして閾値を決定した場合の閾値の分布を図6(b)に示す。図から平坦部における不自然な閾値の変化を生じていないことが分かる。これにより平坦部の閾値を一定に保つことができ、さらに、後述するオブジェクト情報の作成を行うことができる。
【0113】
再帰的クラス分け処理は、上記のように画素ごとに閾値を決定してクラス分け処理が繰り返されることにより実行される。具体的には以下のように実現する。
【0114】
本実施形態では、3レベル階層まで、再帰的クラス分け処理を繰り返す。
まず、レベル1におけるクラス分け処理では、エッジ量上限値(=重み係数の和)W1を128とし、前述のようにして決定した閾値に基づいて、各画素を明度値が0または255の2つのクラスに分類する。画素の明度値が閾値より大きいときは、その画素の明度値を255とし、閾値より小さいときは、明度値を0とする。このようにして得られた各画素の明度値をレベル1のクラス情報として画素ごとに記憶し、レベル1における分類結果とする。
【0115】
レベル2では、レベル1において明度値が0のクラスに分類された各画素および255のクラスに分類された各画素について、さらにクラス分け処理を行う。エッジ量上限値をW2=W1/2(=64)と設定することで、レベル1より細かなエッジを検出してクラスの変化を起こしやすくする。また、このとき、エッジ量下限値LOWER_VAL(W2)は、(5)式にW=64を代入して16とする。
【0116】
レベル2のクラス分け処理では、レベル1において0のクラスに分類された各画素の明度値を0と85の2つのクラスに分類し、レベル1において255のクラスに分類された各画素の明度値を170と255の2つのクラスに分類する。このようにして得られた各画素の明度値をレベル2のクラス情報として記憶し、レベル2における分類結果とする。
【0117】
最後に、レベル3では、レベル2において明度値が0,85,170,255のクラスに分類された各画素について、さらにクラス分け処理を行う。エッジ量上限値W3をW3=W2/2(=32)と設定することで、より細かなエッジを検出してクラスの変化を起こしやすくする。また、このとき、エッジ量下限値LOWER_VAL(W3)は、(5)式にW3=32を代入して8とする。
【0118】
レベル3のクラス分け処理では、レベル2において明度値が0のクラスに分類された各画素の明度値を0と28の2つのクラスに分類し、85のクラスに分類された各画素の明度値を56と85の2つのクラスに分類し、170のクラスに分類された各画素の明度値を170と196の2つのクラスに分類し、255のクラスに分類された各画素の明度値を226と255の2つのクラスに分類する。このようにして得られた各画素の明度値をレベル3のクラス情報として記憶し、レベル3における分類結果とする。
【0119】
図9は、再帰的クラス分け処理を3レベルまで行ったときの画素の分類を模式的に表したツリー構造を示す図である。ここで、0,28,56,…255はそれぞれクラスの明度値であり、クラスを識別するためのクラス情報である。また、このツリー構造は、クラス情報により、レベル3のクラス情報から容易にレベル1、レベル2におけるクラス情報を求めることができる。たとえば、レベル3では196のクラスに属する画素は、レベル2では170のクラスに属し、レベル1では255に属することがわかる。したがって、各画素については、レベル3におけるクラス情報のみを記憶しておけばよい。
【0120】
ただし、必ずしもクラス情報には明度値を用いる必要はなく、レベル3におけるクラス情報からレベル1,2におけるクラス情報がわかれば良い。たとえば、レベル3のクラスにおいて、前述のクラス0をクラス1,クラス28をクラス2,クラス56をクラス3,…,クラス255をクラス8などとしてもよい。
【0121】
さらにクラスタリング部11は、再帰的クラス分け処理を行う際に決定した画素ごとの閾値に基づいてオブジェクト情報を作成する。オブジェクト情報は画素ごとに決定され、画素が背景領域に属するか、背景以外のオブジェクト(写真、文字など)領域に属するかを示す。たとえば、画素が背景領域に属する場合は、オブジェクト情報を1とし、オブジェクト領域に属する場合は、オブジェクト情報を0として記憶する。
【0122】
画素が背景領域に属するかどうかは、レベルごとに決定され、クラス分けに用いた閾値が初期閾値であって、これが継続されている間の画素は背景領域に属すると判断する。図7および図8に示した条件で閾値を決定した場合、初期閾値が継続されるのは、平坦部が連続しているからである。また、背景領域以外の領域は何らかのオブジェクトが存在すると考えられるため、背景領域以外はオブジェクト領域であると判断する。
【0123】
したがって、画素ごとに行われる再帰的クラス分け処理において、閾値として用いる近傍閾値が、背景画素の閾値であれば、注目画素は背景領域に属し、非背景画素の閾値であれば、注目画素は背景領域に属するとする。
【0124】
また、閾値が式(6)を用いて算出された場合には、注目画素は非背景領域に属するとする。これは、注目画素の閾値が新たに算出されるということは、何らかのオブジェクトが存在すると考えられるためである。
【0125】
以上のように、再帰的クラス分け処理によってクラスタリング部11は、各画素のクラス情報とオブジェクト情報とを作成する。
【0126】
図10は、各画素のクラス情報の分布を示す図である。本実施形態では、クラス情報として明度値を用いており、この明度値を階調値として用いることで、各画素が有するクラス情報を画像として可視化することができる。図10(a)は、レベル1のクラス情報の分布を示し、図10(b)は、レベル2のクラス情報の分布を示し、図10(c)は、レベル3のクラス情報の分布を示している。レベル1から3にかけてクラスが詳細に分類される様子が分かる。
【0127】
図11は、各画素のオブジェクト情報の分布を示す図である。図では、背景領域に属する画素の明度値を255(白の領域)とし、オブジェクト領域に属する画素の明度値を128(グレーの領域)としてオブジェクト情報の分布を示している。
【0128】
次に、ランレングス算出手段であるランレングス算出部12においてクラスタリング部11で作成したクラス情報およびオブジェクト情報の主走査方向のランレングスを算出する。ランレングスはレベルごと、本実施形態ではレベル3までのランレングスを算出する。
【0129】
図12は、ランレングス算出処理の手順の一例を示す図である。ここでは、1ラインの画素数を16画素として処理を行うこととする。ランレングス算出処理は、2つの処理からなる。各画素には1つの変数(カウント)が与えられ、このカウントを所定の条件で変化させることによりランレングスを算出する。まず第1の処理は、各画素のクラス情報(図12(a)参照)に基づいて、ラインの左から右方向に同一クラスの画素が連続する限り、画素のカウントを増加させてランレングスを算出する処理であり、第2の処理は、ラインの右から左方向について、右隣りの画素のカウントが注目画素におけるカウントより1大きい場合、右隣りの画素におけるカウントを注目画素のカウントに置き換えることにより、各画素に自らが属するランのランレングスを与える処理である。なお、2つの処理に分割することで、複雑なループ処理を避けることが可能となり、SIMDプロセッサ(同種複数処理型演算装置)によってマルチパス処理で行うことができる。
【0130】
まず、図12(b)を参照して、第1の処理について説明する。第1の処理では、図12(a)に示した各画素のクラス情報に基づいて、左隣りの画素のクラス情報が注目画素のクラス情報と同じ場合、左隣りの画素のカウントに1を加えたカウントを注目画素のカウントとする。図12(b)のレベル1では、まず左端の画素を注目画素とすると、注目画素のレベル1クラス情報は0であり、左隣りの画素が存在しないので、カウント0を出力バッファに書き込み、注目画素を次の右隣の画素に移動する。
【0131】
次の注目画素(左から2番目の画素)のレベル1クラス情報も0であるから、左隣の画素のカウントに1を加え、カウント1を出力バッファに書き込む。次の注目画素(左から3番目の画素)のレベル1クラス情報は255であり、左隣の画素とは異なるクラスに属するので、カウントを0に戻し、出力バッファにカウント0を書き込む。同様にして左隣の画素のクラス情報と注目画素のクラス情報とを比較しながら1ライン分の画素についてカウントを決定する。カウントが0の画素が現れるまでのカウントがその画素が属するランのランレングスを示す。
【0132】
なお、図12(a)に示すクラス情報は、レベル3クラス情報であるため、レベル1のランレングスを算出するためには、レベル3クラス情報からレベル1クラス情報を求める必要がある。たとえば、左から6番目の画素の記憶されているクラス情報は、レベル3クラス情報の170であるが、図9に示したツリー構造から、レベル2クラス情報は、170であり、レベル1クラス情報は255であることがわかる。
【0133】
次に、各画素のレベル2クラス情報を求め、レベル1と同様にして、ランレングスを算出する。レベル3クラス情報からレベル2クラス情報を求める方法について説明する。レベル3クラス情報をin、レベル2クラス情報をoutとすると、以下の式により容易に実現できる。
【0134】
▲1▼out = in < 56 ? 0 : out;
▲2▼out = in < 170 ? 85 : out;
▲3▼out = in < 226 ? 170 : out;
▲4▼out = 255;
【0135】
▲1▼レベル3クラス情報を56と比較し、56未満ならばレベル2クラス情報を「0」とする。
【0136】
▲2▼レベル3クラス情報が56以上で170未満ならば、レベル2クラス情報を「85」とする。
【0137】
▲3▼レベル3クラス情報が170以上で226未満ならば、レベル2クラス情報を「170」とする。
【0138】
▲4▼レベル3クラス情報が226以上ならば、レベル2クラス情報を「255」とする。
【0139】
レベル2においては、レベル2より上位であるレベル1におけるクラスの変化を無視してランレングスを算出するために、左隣の画素のクラス情報と注目画素のクラス情報との差の絶対値が255となるときには、クラスの変化が無いものとみなし、カウントを0に戻さず、カウントアップを継続する。つまり、レベル1で既にクラスの変化点、すなわちランの境界であると判定された箇所をレベル2以降では検知しないようにする。図12(b)にレベル2のランレングス算出結果を示す。
【0140】
レベル3については、記憶されているそのままのクラス情報を用いてランレングスを算出することができる。ただし、レベル2と同様に、レベル3より上位であるレベル1およびレベル2におけるクラスの変化を無視してランレングスを算出するために、左隣の画素のクラス情報と注目画素のクラス情報との差の絶対値が28を超えるときには、クラスの変化が無いものとみなし、カウントアップを継続する。以上のような第1の処理により、レベル1〜3までのランレングスを算出することができる。
【0141】
第2の処理について説明する。第2の処理では、第1の処理で求めた各画素のカウント(図12(b))に対して、注目画素のカウントとその右隣り画素のカウントとを比較し、右隣の画素のカウントが注目画素のカウントより1だけ大きければ、注目画素のカウントを右隣りの画素のカウントで置き換える。ランの右端にある画素のカウントはランレングスと等しいので、同じランに属する画素のカウントをランの右端にある画素のカウントで置き換えることによって、各画素が、自らが属するランのランレングスを情報として有することとなる。レベル1の場合を例として以下に説明する(図12(c)参照)。
・右端の画素のカウントが「1」であり、右隣の画素が存在しないので、カウントは「1」のまま変えない。
・次(右から2番目)の画素のカウントが「0」であり、右隣の画素のカウントが1だけ大きいので、カウントを「1」に置き換える。
・右から3番目の画素のカウントは「3」であり、右隣の画素のカウントが2大きいので、カウントは「3」のまま変えない。
・右から4番目の画素のカウントは「2」であり、右隣の画素のカウントが1だけ大きいので、カウントを「3」に置き換える。
・右から5番目の画素のカウントは「1」であり、右隣の画素のカウントが1だけ大きいので、カウントを「3」に置き換える。
【0142】
以下同様にこの処理を繰り返す。なお、注目画素のカウントとその右隣りの画素のカウントとの比較は、第1の処理で求めたカウント(図12(b))に基づいて行い、置き換えるカウントは第2の処理後のカウントを用いる。これは、連続してカウントされたときのカウントの最大値(ランの右端のカウント)がランレングスに相当するため、連続してカウントされた画素のカウントを最大値で置き換えることに相当する。
【0143】
以上の第1および第2の処理と同様の処理を行えば、オブジェクト情報のランレングスを算出することができる。第1の処理では、左隣の画素と同じオブジェクト情報であれば、左隣りの画素のカウントに1を加えたカウントを注目画素のカウントとする。第2の処理では、第1の処理結果に基づいて、カウントの置き換えを行う。
【0144】
また、SIMDプロセッサのような複数のデータパスを1つのプログラムカウンタで扱うプロセッサでは、1ラインのクラス情報を複数のデータパス、たとえば図13(a)に示すように、データパスAおよびデータパスBに分割し、第1の処理では各データパスを同時に処理することができる。
【0145】
各データパス内で個別にランレングスを算出し(図13(b)参照)、データパス間を連結する(図13(c)参照)。データパスAとデータパスBとの連結部において、隣接する画素のクラス情報が同じであれば、データパスAの右端の画素のカウントを、データパスBの左端の画素以外でカウントが0の画素が現れるまで加算する(図13(c)参照)。また、連結部でクラス情報が異なる場合には、そのまま連結する。データパスの連結後は、前述と同様に第2の処理を行い、各画素に自らが属するランのランレングスを与える(図13(d)参照)。以上の処理により、容易にSIMDプロセッサにおいて処理を行うことができる。
【0146】
次に、文字領域推定手段である文字領域推定部13において、クラス情報のランレングスに基づいて、文字領域に属する画素を推定する。文字は、一般的に煩雑度が高いと考えられるため、クラス情報のランレングスが文字推定閾値SIZEOFTEXT以下であれば文字領域に属する画素であると推定することができる。
【0147】
しかしながら、ランレングス算出部12で算出したランレングスは、主走査方向のランレングスであるから、閾値SIZEOFTEXTに基づいて文字領域の推定を行うと、画像の横方向の煩雑度にのみ依存した判定となり、精度が十分ではない。
【0148】
そこで、周辺画素において、注目画素と同一のクラスに属し、かつ、文字領域ではないと推定されている画素が存在する場合、その注目画素は、クラス情報のランレングスが所定の閾値SIZEOFTEXT以下であっても文字領域であると推定しない。この条件を付加して判定することにより、文字領域推定精度を向上することができる。
【0149】
さらに、ラインの左から処理を行う場合と右から処理を行う場合とを考慮し、2方向から推定処理を行う。まず、左から右方向に処理を行う場合、クラス情報のランレングスが所定の閾値SIZEOFTEXT以下であっても、図14に示す処理対象の周辺画素が以下の条件を満たす場合、文字領域であると推定しない。
・左隣の画素が注目画素と同一のクラスに属し、かつ、文字領域として推定されていない
・上の画素が注目画素と同一のクラスに属し、かつ、文字領域として推定されていない
・左斜め上の画素が注目画素と同一のクラスに属し、かつ、文字領域として推定されていない
・右斜め上の画素が注目画素と同一のクラスに属し、かつ、文字領域として推定されていない
また、ラインの右から左方向に処理を行う場合、既に左から右方向の処理で文字領域と推定されていても、以下の条件を満たす場合、文字領域であると推定しない。
・右隣の画素が注目画素と同一のクラスに属し、かつ、文字領域として推定されていない
以上の2方向の処理(▲1▼ラインの左から右方向の処理、▲2▼ラインの右から左方向処理)により、クラス情報のランレングスに基づいて文字領域を精度良く推定することが出来る。以上の文字領域推定処理を各レベルで行う。
【0150】
図15は、各レベルにおける文字推定領域を示す図である。図15(a)は、レベル1における文字推定領域、図15(b)は、レベル2における文字推定領域、図15(c)は、レベル3における文字推定領域をそれぞれ示している。図では、文字領域に属すると推定された画素の明度値を255、それ以外の画素の明度値を0としている。
【0151】
領域判定部14は、オブジェクト情報のランレングスおよび文字領域推定結果に基づいて、各画素の属する領域を判定する領域判定手段である。オブジェクト情報のランを単位窓(ある単位をまとめて1つのものとして見なす)とし、文字領域推定部13の推定結果からレベル毎に文字領域と推定された画素の含有率に基づいて、領域判定を行う。
【0152】
まず、単位窓内におけるレベル1の文字推定領域の画素数、レベル2の文字推定領域の画素数、レベル3の文字推定領域の画素数をカウントする。図16は、領域判定の対象となる単位窓の一例を示す図である。この例では、単位窓であるオブジェクト情報のランレングスを8とし(ランレングス算出処理が0からカウントを始めるため、図では「8」ではなく「7」と表記している。)、文字領域に属すると推定される画素を「*」、文字領域ではないと推定された画素を「−」で表している。
【0153】
まず、単位窓内におけるレベル毎の文字領域推定画素をカウントする。図16では、レベル1における文字領域推定画素数が4、レベル2における文字領域推定画素数が3、レベル3における文字領域推定画素が0である。
【0154】
そして、これらの文字領域推定画素数から背景・文字・写真領域を判定する。文字領域は、連続するオブジェクト領域が1つのレベルの文字領域推定画素で構成されていることが多く、たとえば、以下に示す条件では文字領域である可能性が高い。
【0155】
【表1】
【0156】
逆に、写真領域は、連続するオブジェクト領域が複数のレベルの文字領域推定画素で構成されていることが多い。たとえば、以下に示す条件では写真領域である可能性が高い。
【0157】
【表2】
【0158】
実際に判定するには、予めオブジェクト情報のランレングス、レベル1の文字領域推定画素数、レベル2の文字領域推定画素数およびレベル3の文字領域推定画素数と、領域判定結果とを関連付けるLUT(Look Up Table)を記憶しておき、文字領域推定画素数に基づいてLUTを参照することにより、オブジェクト領域が文字領域と写真領域のいずれであるかを判定する。このLUTの作成には、たとえば、ニューラルネットワークを用いた学習方法などが挙げられる。
【0159】
なお、背景領域は、オブジェクト情報を作成した際、オブジェクト領域が存在しない領域を背景領域と判定する。また、オブジェクト領域であったとしてもオブジェクト情報のランレングスがある程度大きく、各レベルにおける文字領域推定画素数が少ない場合には、背景領域として判定してもよい。
【0160】
図17は、領域判定結果を示す図である。ただし、文字領域に属する画素の明度値を0(黒の領域)、背景領域に属する画素の明度値を255(白の領域)、写真領域に属する画素の明度値を128(グレーの領域)としている。
【0161】
さらに、領域分割結果に基づいて、文字領域に判定された画素から詳細に文字を検知する。なお、文字検知を行う際には、図18の領域分割部4のブロック図に示すように、領域判定部14の後段に文字検知部15が設けられる。文字検知部15以外の部位については、図2で説明した部位と同じであるので説明は省略する。なお、文字検知部15は必ずしも領域分割部4に備える必要はない。
【0162】
文字検知部15は、領域判定部14において文字領域であると判定された画素について、文字領域推定結果を用いてさらに詳細に文字を検知する。文字推定領域において、連続する文字推定領域の最初の画素の属するクラスが文字クラスであるのが一般的であることから、最初の画素が属するクラスを検知し、文字領域であると判定された領域内において、検知したクラスと同一のクラスに属する画素が文字領域に属すると判定することにより、文字の判定精度をさらに向上させることができる。
【0163】
図19は、文字検知部15が文字の検知を行った場合の領域判定結果を示す図である。各領域を示す明度値は、図17に示した判定結果と同じである。図からわかるように図17に示した判定結果に比べて、精度良く文字領域が分割されているのがわかる。
【0164】
図20は、領域分割処理を示すフローチャートである。まず、ステップS1では、色変換部10によって、入力された画像データの色空間を変換し、明度値など領域判定に用いる画素値を求める。ステップS2では、クラスタリング部11によって、再帰的クラス分け処理を行い、クラス情報およびオブジェクト情報を生成する。ステップS3では、ランレングス算出部12が作成されたクラス情報およびオブジェクト情報の主走査方向ランレングスを算出する。
【0165】
ステップS4では、文字領域推定部13が、クラス情報のランレングスと閾値SIZEOFTEXTとを比較する。閾値より小さいランレングスを有するランに属する画素を文字領域に属する画素と推定する。ステップS5では、領域判定部14が、オブジェクト情報が連続する領域内の画素のうち文字領域と推定された画素の画素数に基づいて、オブジェクト領域の画素を文字領域か写真領域に判定する。
【0166】
以上のように、本実施形態では、周辺画素の影響を考慮して注目画素ごとに閾値を決定する再帰的クラス分け処理によって、画像データを複数のクラスに分類し、この結果に基づいて領域判定を行う。したがって、固定閾値を用いてクラス分け処理を行う場合などと比べて領域分離精度を向上させることができる。
【0167】
また、本発明の実施の他の形態は、コンピュータを画像処理装置2として機能させるための画像処理プログラム、および画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体である。これによって、画像処理プログラムおよび画像処理プログラムを記録した記録媒体を持ち運び自在に提供することができる。
【0168】
記録媒体は、プリンタやコンピュータシステム(コンピュータシステムに適用する場合はアプリケーション・ソフトとして用いることができる)に備えられるプログラム読み取り装置により読み取られることで、画像処理プログラムが実行される。
【0169】
コンピュータシステムの入力手段としては、フラットベッドスキャナ・フィルムスキャナ・デジタルカメラなどを用いてもよい。コンピュータシステムは、これらの入力手段と、所定のプログラムがロードされることにより画像処理などを実行するコンピュータと、コンピュータの処理結果を表示するCRT(CathodeRay Tube)ディスプレイ・液晶ディスプレイなどの画像表示装置と、コンピュータの処理結果を紙などに出力するプリンタより構成される。さらには、ネットワークを介してサーバーなどに接続するための通信手段としてのモデムなどが備えられる。
【0170】
なお、記録媒体としては、プログラム読み取り装置によって読み取られるものには限らず、マイクロコンピュータのメモリ、たとえばROMであっても良い。記録されているプログラムはマイクロプロセッサがアクセスして実行しても良いし、あるいは、記録媒体から読み出したプログラムを、マイクロコンピュータのプログラム記憶エリアにダウンロードし、そのプログラムを実行してもよい。このダウンロード機能は予めマイクロコンピュータが備えているものとする。
【0171】
記録媒体の具体的な例としては、磁気テープやカセットテープなどのテープ系、フレキシブルディスクやハードディスクなどの磁気ディスクやCD−ROM(Compact Disc−Read Only Memory)/MO(Magneto Optical)ディスク/MD(Mini Disc)/DVD(Digital Versatile Disc)などの光ディスクのディスク系、IC(Integrated Circuit)カード(メモリカードを含む)/光カードなどのカード系、あるいはマスクROM、EPROM(Erasable Programmable ReadOnly Memory)、EEPROM(Electrically Erasable Programmable ReadOnly Memory)、フラッシュROMなどの半導体メモリを含めた固定的にプログラムを担持する媒体である。
【0172】
また、本実施形態においては、コンピュータはインターネットを含む通信ネットワークに接続可能なシステム構成とし、通信ネットワークを介して画像処理プログラムをダウンロードしても良い。なお、このように通信ネットワークからプログラムをダウンロードする場合には、そのダウンロード機能は予めコンピュータに備えておくか、あるいは別な記録媒体からインストールされるものであっても良い。また、ダウンロード用のプログラムはユーザーインターフェースを介して実行されるものであっても良いし、決められたURL(Uniform ResourceLocater)から定期的にプログラムをダウンロードするようなものであっても良い。
【0173】
【発明の効果】
以上のように本発明によれば、注目画素とその周辺画素とからなる画素ブロックの特徴量に基づく閾値を用いて注目画素にクラス分けを行っているので、固定閾値を用いてクラス分けを行う場合に比べ、周辺画素の影響を反映させたクラス情報およびオブジェクト情報を生成することができる。オブジェクト情報の判定は、オブジェクト情報に基づいて精度よく行われる。文字領域の判定は、クラス情報およびオブジェクト情報を用いて、クラスランレングスに基づく推定と、オブジェクトランに含まれる推定画素数の割合とから判定しているので、精度よく文字領域に属する画素を判定できる。したがって、各領域の判定精度が高いので、画像データの領域分割精度を向上させることができる。
【0174】
また本発明によれば、エッジ強度を反映した閾値を用いるため、文字領域などのエッジ付近の画素において適切にクラス分けを行うことができる。
【0175】
また本発明によれば、画像データのダイナミックレンジが狭い場合でも、適切にクラス分けを行うことができる。
【0176】
また本発明によれば、走査ラインごとに走査方向を変えることによって、左右の周辺画素の影響を平均して受けることができるため、適切なクラス分けを行うことができる。
【0177】
また本発明によれば、エッジ画素の位置が注目画素の上のみ場合は、閾値を算出せずに左側の周辺画素の閾値を注目画素の閾値として用いるなど、エッジ画素の位置に基づいて注目画素の閾値を生成するので、特に注目画素がエッジ付近の背景画素などの場合に適切な閾値を生成してクラス分けを行うことができる。
【0178】
また本発明によれば、注目画素が背景領域に属するか否かを容易かつ精度良く判断することができる。
【0179】
また本発明によれば、同種複数処理型演算装置、いわゆるSIMD(SingleInstruction Multiple Data)型プロセッサは、同種の命令の処理を同時に行うことができる。ランレングスを算出する場合に、命令をランレングスの算出とすると、データパスごとのランレングスの算出処理を同時に行うことができる。したがって、ランレングス算出処理の処理速度を高速化することができる。
【0180】
また本発明によれば、一般的に文字は繁雑度が高いため、クラスランレングスを文字推定閾値と比較するだけで容易に文字領域に属するか否かを推定することができる。
【0181】
また本発明によれば、文字領域の推定精度を高めることができる。
また本発明によれば、文字領域に属する画素は同じクラス情報を有し、文字領域に属すると判定された連続する画素のうち、最端部の画素が文字領域に属する場合が多いので、精度よく文字領域に属する画素を検知することができる。
【0182】
また本発明によれば、画像データが高精度で領域分割され、各領域に応じた後処理が施された画像データを出力することができるので、高画質な静止画像を形成することができる。
【0183】
また本発明によれば、画像処理方法をコンピュータに実行させるための画像処理プログラムとして提供することができる。
【0184】
また本発明によれば、画像処理方法をコンピュータに実行させるための画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体として提供することができる。
【図面の簡単な説明】
【図1】本発明の実施の一形態である画像形成装置1の構成を示すブロック図である。
【図2】領域分割部4の構成を示すブロック図である。
【図3】入力画像(図3(a))と、色空間変換によって生成したL*信号からなる画像(図3(b))の例を示す図である。
【図4】3×3画素の画素ブロックを示す図である。
【図5】Prewittオペレータ(プリヴィットフィルター)の一例を示す図である。
【図6】各画素における閾値の分布を示す図である。
【図7】注目画素と周辺のエッジ画素との位置関係による閾値の決定方法を説明する図である。
【図8】注目画素と周辺のエッジ画素との位置関係による閾値の決定方法を説明する図である。
【図9】再帰的クラス分け処理を3レベルまで行ったときの画素の分類を模式的に表したツリー構造を示す図である。
【図10】各画素のクラス情報の分布を示す図である。
【図11】各画素のオブジェクト情報の分布を示す図である。
【図12】ランレングス算出処理の手順の一例を示す図である。
【図13】SIMDプロセッサを用いたランレングス算出処理の手順の一例を示す図である。
【図14】文字領域推定部13が行う文字領域推定処理を説明する図である。
【図15】各レベルにおける文字推定領域を示す図である。
【図16】領域判定の対象となる単位窓の一例を示す図である。
【図17】領域判定結果を示す図である。
【図18】領域分割部4の他の構成を示すブロック図である。
【図19】文字検知部15が文字の検知を行った場合の領域判定結果を示す図である。
【図20】領域分割処理を示すフローチャートである。
【符号の説明】
1 画像形成装置
2 画像処理装置
3 入力部
4 領域分割部
5 補正部
6 解像度変換部
7 色補正部
8 ハーフトーン部
9 プリンタ
10 色変換部
11 クラスタリング部
12 ランレングス算出部
13 文字領域推定部
14 領域判定部
Claims (14)
- 複数の画素からなる画像を示す画像データが入力され、入力された画像データに基づいて画像を構成する各画素が、文字領域、背景領域およびその他領域のいずれの領域に属するかを判定し、画像データの領域分割を行う領域分割部を備える画像処理装置において、
前記領域分割部は、
注目画素とその周辺画素とからなる画素ブロックの特徴量を各画素の画素値を用いて求め、求めた特徴量に基づく閾値を生成し、生成された閾値と各画素の画素値とを比較して注目画素を2つの画素集合にクラス分けし、前記クラス分けによって分類された画素集合に対して、前記閾値とは異なる閾値でさらにクラス分けを行うことで複数段階のクラス分けを行い、段階ごとのクラス分けの結果を示すクラス情報を生成するクラス情報生成手段と、
クラス情報生成手段が生成した複数の閾値に基づいて、注目画素が背景領域に属するか否かを判断し、その判断結果を示すオブジェクト情報を生成するオブジェクト情報生成手段と、
同じクラス情報を有し、所定の方向に互いに隣接する画素からなるクラスランの画素数であるクラスランレングスと、同じオブジェクト情報を有し、所定の方向に互いに隣接する画素からなるオブジェクトランの画素数であるオブジェクトランレングスとを前記段階ごとに算出するランレングス算出手段と、
前記クラスランレングスに基づいて、クラスランに含まれる画素が文字領域に属するか否かを前記段階ごとに推定する文字領域推定手段と、
オブジェクト情報に基づいて画素が背景領域に属するか否かを判定するとともに、前記オブジェクトランに含まれる画素のうち、前記文字領域推定手段によって文字領域に属すると推定された画素の前記段階ごとの割合に基づいて、オブジェクトランに含まれる画素が文字領域およびその他領域のいずれに属するかを判定する領域判定手段とを有することを特徴とする画像処理装置。 - 前記クラス情報生成手段は、特徴量として注目画素のエッジ量と、前記画素ブロックに含まれる画素の濃度平均値と、周辺画素が注目画素であったときに行ったクラス分けの閾値とを用い、前記エッジ量を重み係数として、濃度平均値と周辺画素の閾値とを線形補間して閾値を算出することを特徴とする請求項1記載の画像処理装置。
- 前記クラス情報生成手段は、前記エッジ量の下限値を画像データのダイナミックレンジに基づいて設定することを特徴とする請求項2記載の画像処理装置。
- 前記クラス情報生成手段は、注目画素を所定の走査方向に順次移動させてクラス分けを行い、走査ラインごとに走査方向を変えることを特徴とする請求項2記載の画像処理装置。
- 前記クラス情報生成手段は、周辺画素に含まれるエッジ画素の位置に基づいて、注目画素の閾値を算出せずに周辺画素の閾値の中から選択するか、もしくは濃度平均値と周辺画素の閾値とを線形補間して算出することを特徴とする請求項2記載の画像処理装置。
- 前記オブジェクト情報生成手段は、前記クラス情報生成手段が生成した閾値として、画像データの最初の注目画素に対して予め定められている初期閾値が連続する場合、注目画素が背景領域に属すると判断することを特徴とする請求項1記載の画像処理装置。
- 前記ランレングス算出手段は、同種複数処理型演算装置で構成され、走査ラインを予め定める画素数分のクラス情報を含むデータパスに分割し、データパスごとにランレングスを算出し、各データパスの算出後にデータパス間を連結してランレングスを求めることを特徴とする請求項1記載の画像処理装置。
- 前記文字領域推定手段は、ランレングス算出手段により算出されたクラスランレングスを予め定める文字推定閾値と比較し、閾値以下であればクラスランに含まれる画素は文字領域に属すると推定することを特徴とする請求項1記載の画像処理装置。
- 前記文字領域推定手段は、周辺画素のいずれかが注目画素と同じクラス情報を有し、かつ、文字領域に属しないと推定されている場合、注目画素を文字領域に属しないと推定することを特徴とする請求項8記載の画像処理装置。
- 前記領域判定手段によって、文字領域に属すると判定された連続する画素のうち、最端部の画素が有するクラス情報と同じクラス情報を有する画素を文字画素として検知する文字検知手段が備えられていることを特徴とする請求項1記載の画像処理装置。
- 請求項1〜10のいずれかに記載の画像処理装置と、
画像処理装置によって処理された画像データを出力する画像出力装置とを備えることを特徴とする画像形成装置。 - 複数の画素からなる画像を示す画像データが入力され、入力された画像データに基づいて画像を構成する各画素が、文字領域、背景領域およびその他領域のいずれの領域に属するかを判定し、画像データの領域分割を行う領域分割工程を備える画像処理方法において、
前記領域分割工程は、
注目画素とその周辺画素とからなる画素ブロックの特徴量を各画素の画素値を用いて求め、求めた特徴量に基づく閾値を生成し、生成された閾値と画素値とを比較して注目画素を2つの画素集合にクラス分けし、前記クラス分けによって分類された画素集合に対して、前記閾値とは異なる閾値でさらにクラス分けを行うことで複数段階のクラス分けを行い、段階ごとのクラス分けの結果を示すクラス情報を生成するクラス情報生成工程と、
クラス情報生成工程で生成した複数の閾値に基づいて、注目画素が背景領域に属するか否かを判断し、その判断結果を示すオブジェクト情報を生成するオブジェクト情報生成工程と、
同じクラス情報を有し、所定の方向に互いに隣接する画素からなるクラスランの画素数であるクラスランレングスと、同じオブジェクト情報を有し、所定の方向に互いに隣接する画素からなるオブジェクトランの画素数であるオブジェクトランレングスとを前記段階ごとに算出するランレングス算出工程と、
前記クラスランレングスに基づいて、クラスランに含まれる画素が文字領域に属するか否かを前記段階ごとに推定する文字領域推定工程と、
オブジェクト情報に基づいて画素が背景領域に属するか否かを判定するとともに、前記オブジェクトランに含まれる画素のうち、前記文字領域推定工程によって文字領域に属すると推定された画素の前記段階ごとの割合に基づいて、オブジェクトランに含まれる画素が文字領域およびその他領域のいずれに属するかを判定する領域判定工程とを有することを特徴とする画像処理方法。 - 請求項12記載の画像処理方法をコンピュータに実行させるための画像処理プログラム。
- 請求項12記載の画像処理方法をコンピュータに実行させるための画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002357259A JP2004192164A (ja) | 2002-12-09 | 2002-12-09 | 画像処理装置および該画像処理装置を備える画像形成装置、ならびに画像処理方法、画像処理プログラムおよびコンピュータ読み取り可能な記録媒体 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002357259A JP2004192164A (ja) | 2002-12-09 | 2002-12-09 | 画像処理装置および該画像処理装置を備える画像形成装置、ならびに画像処理方法、画像処理プログラムおよびコンピュータ読み取り可能な記録媒体 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2004192164A true JP2004192164A (ja) | 2004-07-08 |
Family
ID=32757346
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002357259A Pending JP2004192164A (ja) | 2002-12-09 | 2002-12-09 | 画像処理装置および該画像処理装置を備える画像形成装置、ならびに画像処理方法、画像処理プログラムおよびコンピュータ読み取り可能な記録媒体 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2004192164A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008512947A (ja) * | 2004-09-07 | 2008-04-24 | イーストマン コダック カンパニー | テキスト/ライン及び中間調の独立制御方法 |
| JP2008097310A (ja) * | 2006-10-11 | 2008-04-24 | Sharp Manufacturing System Corp | エッジ抽出方法、定義表作成方法、画像処理方法、画像処理装置、画像処理プログラムおよび画像処理プログラムを記録する記録媒体 |
| KR20120121744A (ko) * | 2011-04-27 | 2012-11-06 | 삼성테크윈 주식회사 | 객체 정보 산출 방법 및 장치 |
-
2002
- 2002-12-09 JP JP2002357259A patent/JP2004192164A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008512947A (ja) * | 2004-09-07 | 2008-04-24 | イーストマン コダック カンパニー | テキスト/ライン及び中間調の独立制御方法 |
| JP2008097310A (ja) * | 2006-10-11 | 2008-04-24 | Sharp Manufacturing System Corp | エッジ抽出方法、定義表作成方法、画像処理方法、画像処理装置、画像処理プログラムおよび画像処理プログラムを記録する記録媒体 |
| KR20120121744A (ko) * | 2011-04-27 | 2012-11-06 | 삼성테크윈 주식회사 | 객체 정보 산출 방법 및 장치 |
| KR101726682B1 (ko) | 2011-04-27 | 2017-04-13 | 한화테크윈 주식회사 | 객체 정보 산출 방법 및 장치 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3585703B2 (ja) | 画像処理装置 | |
| JP4568460B2 (ja) | 画像処理装置及び記録媒体 | |
| US7149355B2 (en) | Image processing apparatus, image processing method, image processing program, and computer-readable record medium storing image processing program | |
| US8472709B2 (en) | Apparatus and method for reducing artifacts in images | |
| US6766053B2 (en) | Method and apparatus for classifying images and/or image regions based on texture information | |
| JP3549720B2 (ja) | 画像処理装置 | |
| US7411699B2 (en) | Method and apparatus to enhance digital image quality | |
| US7602967B2 (en) | Method of improving image quality | |
| JP6781406B2 (ja) | 画像処理装置、および、コンピュータプログラム | |
| US7885486B2 (en) | Image processing system, method for processing image and computer readable medium | |
| JP4093413B2 (ja) | 画像処理装置、画像処理プログラム及び該プログラムを記録した記録媒体 | |
| JP4105539B2 (ja) | 画像処理装置およびそれを備えた画像形成装置ならびに画像処理方法、画像処理プログラムおよび記録媒体 | |
| US6222641B1 (en) | Method and apparatus for image descreening | |
| JP4084719B2 (ja) | 画像処理装置および該画像処理装置を備える画像形成装置、ならびに画像処理方法、画像処理プログラムおよびコンピュータ読み取り可能な記録媒体 | |
| JP4369030B2 (ja) | 画像補正方法および装置ならびに画像補正プログラムを記録したコンピュータ読取可能な記録媒体 | |
| JP2004192164A (ja) | 画像処理装置および該画像処理装置を備える画像形成装置、ならびに画像処理方法、画像処理プログラムおよびコンピュータ読み取り可能な記録媒体 | |
| JP2000253238A (ja) | 画像処理装置及び画像処理方法 | |
| JP2784278B2 (ja) | 画像変倍処理装置 | |
| JP4248899B2 (ja) | 領域分離処理方法、領域分離処理プログラムおよびこれを記録した記録媒体ならびに画像処理装置およびこれを備えた画像形成装置 | |
| US7295344B2 (en) | Image processing method and image processing apparatus, program and recording medium, and image forming apparatus | |
| JP3361355B2 (ja) | 画像処理装置 | |
| JP4857975B2 (ja) | 画像処理システムおよび画像処理プログラム | |
| JP4324532B2 (ja) | 画像処理装置および記憶媒体 | |
| JPH09270911A (ja) | 画像形成装置 | |
| JP6867609B2 (ja) | 画像処理装置、および、コンピュータプログラム |
