(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の目的は、画素の挿入または間引きによる局所的な画素の位置ずれが発生した場合でも、本構成を有していない場合と比較して、エッジ部分の検出をより正確に行うことが可能な画像処理装置、画像形成装置およびプログラムを提供することである。
【課題を解決するための手段】
【0005】
請求項1に係る本発明は、画像データに対して、画素の挿入による拡大または画素の間引きによる縮小の処理を行う拡大縮小処理手段と、
前記拡大縮小処理手段により、画像データの拡大または縮小の処理が行われた際に、挿入された画素の位置または間引きされた画素の位置を記憶する記憶手段と、
前記記憶手段により記憶されている挿入された画素の位置または間引きされた画素の位置の情報に基づいて、拡大または縮小された画像データにおける主走査方向の各行毎に、それぞれの画素の位置が上または下に隣接する他の行上の対応する画素の位置に対して何画素分およびどちらの方向に位置ずれしているかを示す位置ずれ情報を算出する算出手段と、
前記画像データにおける注目画素の近傍画素の配置パターンと、エッジの検出パターンとを比較することにより、前記画像データ中のエッジ部分を検出するエッジ検出手段と、前記算出手段によって算出された画素の位置ずれ情報に基づいて、前記エッジ検出手段がエッジ部分の検出の際に使用する検出パターンを切り替える切替手段とを有する画像処理装置である。
【0007】
請求項
2に係る本発明は、前記算出手段により算出された画素の位置ずれ情報に基づいて、エッジ部分の画素のうち、位置ずれしている画素の画素値を変更する画素値変更手段をさらに有する請求項
1記載の画像処理装置である。
【0008】
請求項
3に係る本発明は、画像データに対して、画素の挿入による拡大または画素の間引きによる縮小の処理を行う拡大縮小処理手段と、
前記拡大縮小処理手段により、画像データの拡大または縮小の処理が行われた際に、挿入された画素の位置または間引きされた画素の位置を記憶する記憶手段と、
前記記憶手段により記憶されている挿入された画素の位置または間引きされた画素の位置の情報に基づいて、拡大または縮小された画像データにおける副走査方向の各列毎に、それぞれの画素の位置が右または左に隣接する他の列上の対応する画素の位置に対して何画素分およびどちらの方向にずれているかを示す位置ずれ情報を算出する算出手段と、
前記画像データにおける注目画素の近傍画素の配置パターンと、エッジの検出パターンとを比較することにより、前記画像データ中のエッジ部分を検出するエッジ検出手段と、
前記算出手段によって算出された画素の位置ずれ情報に基づいて、前記エッジ検出手段がエッジ部分の検出の際に使用する検出パターンを切り替える切替手段と、
を有する画像処理装置である。
【0009】
請求項
4に係る本発明は、画像データに対して、画素の挿入による拡大または画素の間引きによる縮小の処理を行う拡大縮小処理手段と、
前記拡大縮小処理手段により、画像データの拡大または縮小の処理が行われた際に、挿入された画素の位置または間引きされた画素の位置を記憶する記憶手段と、
前記記憶手段により記憶されている挿入された画素の位置または間引きされた画素の位置の情報に基づいて、拡大または縮小された画像データにおける主走査方向の各行毎に、それぞれの画素の位置が上または下に隣接する他の行上の対応する画素の位置に対して何画素分およびどちらの方向に位置ずれしているかを示す位置ずれ情報を算出する算出手段と、
前記画像データにおける注目画素の近傍画素の配置パターンと、エッジの検出パターンとを比較することにより、前記画像データ中のエッジ部分を検出するエッジ検出手段と、
前記算出手段によって算出された画素の位置ずれ情報に基づいて、前記エッジ検出手段がエッジ部分の検出の際に使用する検出パターンを切り替える切替手段と、
前記算出手段により算出された画素の位置ずれ情報に基づいて、エッジ部分の画素のうち、位置ずれしている画素の画素値を変更する画素値変更手段と、
前記
画素値変更手段により画素値が変更された画像データを出力する出力手段と、
を有する画像形成装置である。
【0011】
請求項
5に係る本発明は、画像データに対して、画素の挿入による拡大または画素の間引きによる縮小の処理を行うステップと、
画像データの拡大または縮小の処理が行われた際に、挿入された画素の位置または間引きされた画素の位置を記憶するステップと、
記憶されている挿入された画素の位置または間引きされた画素の位置の情報に基づいて、拡大または縮小された画像データにおける主走査方向の各行毎に、それぞれの画素の位置が上または下に隣接する他の行上の対応する画素の位置に対して何画素分およびどちらの方向に位置ずれしているかを示す位置ずれ情報を算出するステップと、
算出された画素の位置ずれ情報に基づいて、エッジ部分の検出の際に使用する検出パターンを切り替えるステップと、
前記画像データにおける注目画素の近傍画素の配置パターンと、エッジの検出パターンとを比較することにより、前記画像データ中のエッジ部分を検出するステップと、
をコンピュータに実行させるためのプログラムである。
【発明の効果】
【0012】
請求項1に係る本発明によれば、画素の挿入または間引きによる局所的なずれが発生した場合でも、本構成を有していない場合と比較して、エッジ部分の検出をより正確に行うことが可能な画像処理装置を提供することができる。
【0014】
請求項
2に係る本発明によれば、請求項1により得られる効果に加えて、画像データ中のエッジ部分のずれを視覚的に目立たなくすることが可能な画像処理装置を提供すること ができる。
【0015】
請求項
3に係る本発明によれば、画素の挿入または間引きによる局所的なずれが発生した場合でも、本構成を有していない場合と比較して、エッジ部分の検出をより正確に行うことが可能な画像処理装置を提供することができる。
【0016】
請求項
4に係る本発明によれば、画素の挿入または間引きによる局所的なずれが発生した場合でも、本構成を有していない場合と比較して、より正確にエッジ部分が検出された画像を形成することが可能な画像形成装置を提供することができる。
【0018】
請求項
5に係る本発明によれば、画素の挿入または間引きによる局所的なずれが発生した場合でも、本構成を有していない場合と比較して、エッジ部分の検出をより正確に行うことが可能なプログラムを提供することができる。
【発明を実施するための形態】
【0020】
[背景]
まず、本発明の理解を助けるために、画素の挿入または間引きによる局所的な画素のずれ(位置ずれ)について
図1を参照して説明する。
【0021】
画像処理において、画像主副走査倍率補正の処理を行う場合に、画素の挿入または間引きを行う補正が行われることがある。
【0022】
しかし、画素の挿入または間引きの位置を均一に配置する場合、注目点が連続することで視覚的に目立ちやすくなってしまう。従って、画像主副走査倍率補正の処理において、画素の挿入または間引きの位置を不均一にする方法が採用される場合がある。しかし、補正箇所を不均一に配置する場合、画像主副走査方向に画素の位置ずれが発生し、この位置ずれの領域がエッジを跨ぐことで、エッジ部分の画素が本来の配列と異なってしまう。
【0023】
例えば、
図1(A)に示すような画像データに対して画素の挿入を行い、画像を走査方向に拡大する処理を行う場合について説明する。
図1(A)における画像データは、複数の黒画素50からなる領域を有する。また、
図1(B)は、
図1(A)の画像データに対して、各ライン毎に1画素ずつ挿入画素51が挿入されて走査方向に1画素分だけ拡大される処理が行われた後の画像データを示している。
【0024】
上述したように、拡大処理において、挿入画素51は画像データに対して不均一に配置される。ここで、
図1(B)では、挿入画素51は、複数の黒画素50からなる領域上に配置されていないため、エッジ部分において位置ずれは発生していない。しかし、
図1(C)に示されるように、挿入画素51が複数の黒画素50からなる領域上に配置される場合、挿入画素51の分走査方向に移動する黒画素50と、移動しない黒画素50が存在することにより位置ずれが発生する。そして、この位置ずれが発生することによって、エッジ部分の画素が本来の配列とは異なる配列となってしまうために、エッジの検出パターンと注目画素の近傍画素の配置パターンとを比較してエッジを検出する際に、正確にエッジが検出されない恐れがある。
【0025】
また、縮小処理についても、画素が間引きされて画像データが縮小されることにより、複数の黒画素50からなる領域のうちいずれかの画素が間引かれることによって位置ずれが発生し、エッジ部分の画素が本来の配列と異なってしまうために、エッジの検出パターンと注目画素の近傍画素の配置パターンとを比較してエッジを検出する際に、正確にエッジが検出されない恐れがある。
【0026】
[実施形態]
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【0027】
図2は本発明の一実施形態の画像形成システムを示す図である。
【0028】
本実施形態における画像形成装置1は、ネットワーク3を介して端末装置2と接続されている。画像形成装置1は、端末装置2からネットワーク3を介して送信されてきた画像データ、および図示しない光学的に画像を読み取るプリンタなどの読み取り装置から送信されてきた画像データを用紙に印刷する。また、本実施形態において、画像形成装置1には、内部に画像処理装置4が設置されている。
【0029】
次に、画像形成装置1の構成を
図3を参照して詳細に説明する。
【0030】
画像形成装置1は、
図3に示されるように、CPU11、メモリ12、ハードディスクドライブ(HDD)等の記憶装置13、ネットワーク10を介して外部の装置等との間でデータの送信及び受信を行う通信インタフェース(IF)14、タッチパネル又は液晶ディスプレイ並びにキーボードを含むユーザインタフェース(UI)装置15、スキャナ16、プリンタ17を有する。これらの構成要素は、制御バス18を介して互いに接続されている。
【0031】
CPU11は、メモリ12または記憶装置13に格納された制御プログラムに基づいて所定の処理を実行して、画像形成装置1に設置された画像形成装置4の動作を制御する。なお、本実施形態では、CPU11は、メモリ12または記憶装置13内に格納された制御プログラムを読み出して実行するものとして説明したが、当該プログラムをCD−ROM等の記憶媒体に格納してCPU11に提供することも可能である。
【0032】
図4は、上記の制御プログラムが実行されることにより実現される画像形成装置1内の画像処理装置4の機能構成を示すブロック図である。
【0033】
画像処理装置4は、
図4に示されるように、画像拡大縮小処理部41、記憶部42、算出部43、パターン切替部44、予め設定されているエッジ検出パターンに基づいて画像データのエッジ部分を検出するエッジ検出部45、画像データの階調を補正する階調補正処理部46を有する。そして、階調補正処理部46の補正に基づいて光書込みを行う露光部47が画像処理装置4と接続されている。なお、本実施形態において画像処理装置4は、画像形成装置1の内部に設置されているものとして説明するが、本発明はこのような構成に限定されず、画像形成装置1から独立させるようにしてもよい。
【0034】
画像拡大縮小処理部41は、画像データに対して画素の挿入による拡大処理または画素の間引きによる縮小処理を行う。
【0035】
記憶部42は、画像拡大縮小処理部41において、画像の拡大および縮小がされた場合に挿入された画素の位置および間引きされた画素の位置の情報を記憶する。このとき、記憶部42は、挿入された画素の位置を2、間引きされた画素の位置を0、それ以外の画素の位置を1として表した保持バッファ値を記憶する。
【0036】
算出部43は、記憶部42に記憶されている挿入された画素の位置または間引きされた画素の位置の情報に基づいて、拡大または縮小された画像データにおける主走査方向の各ライン毎に、それぞれの画素の位置が上または下に隣接する他の行上の対応する画素の位置に対して何画素分およびどちらの方向に位置ずれしているかを示す位置ずれ情報を算出する。
【0037】
具体的には、算出部43は、記憶部42に記憶されている保持バッファ値を参照して、画像データのライン毎にラインの先頭からその画素の位置までの保持バッファ値を加算する。さらに、算出部43は、各画素の位置にそれぞれの加算値が対応付けられた加算値情報を生成する。そして、算出部43は、注目ラインの走査方向に1つ上のラインを選択し、注目ラインの画素の位置と、注目ラインの1つ上のライン上において注目ラインの画素の位置と対応する位置の画素との加算値を比較する。
【0038】
ここで、算出部43は、加算値情報を参照して、注目ラインの画素の位置の加算値が対応する画素の位置の加算値よりも小さい場合は、走査方向に対して加算値の差分左ずれであるという情報を位置ずれ情報として算出する。また、算出部43は、注目ラインの画素の位置の加算値が、対応する画素の位置の加算値よりも大きい場合は、走査方向に対して加算値の差分右ずれであるという情報を位置ずれ情報として算出する。さらに、算出部43は、注目ラインの画素の位置の加算値と対応する画素の位置の加算値が同じである場合は、位置ずれ無しであるという情報を位置ずれ情報として算出する。
【0039】
パターン切替部44は、エッジ検出部45によってエッジ部分の検出が行われる際、算出部43によって算出された位置ずれ情報を参照して、画素のずれ方向および何画素分ずれているかに応じて、エッジ検出部45がエッジの検出に用いるパターンを切り替える。
【0040】
次に、本実施形態の画像処理装置4の動作を図面を参照して詳細に説明する。
【0041】
まず、画像処理装置4の動作の全体的な流れを
図5を参照して説明する。
【0042】
まず、画像拡大縮小処理部41は、スキャナ16により読み取られた画像データまたは端末装置2から送信されてきた画像データに対して、
図6(A)に示されるように、挿入画素51が挿入されることによる拡大処理、および間引き画素52が間引かれることによる縮小処理を行う。この際、記憶部42は、
図6(B)に示されるように、挿入画素51および間引き画素52の位置を記憶する(ステップS101)。ここで、
図6(B)に示されるように、記憶部42は、挿入画素51の位置を2、間引き画素52の位置を0、それ以外の画素の位置を1として表した保持バッファ値を記憶する。なお、保持バッファ値として用いる値は挿入画素51の位置、間引き画素52の位置、それ以外の画素の位置をそれぞれ区別できる値であれば数に限定されるものではない。
【0043】
次に、算出部43は、
図6(C)に示されるように、拡大および縮小処理後の画像データの走査方向の各ラインに対して、ライン毎にラインの先頭からその画素の位置までの保持バッファ値を走査方向順に加算する(ステップS102)。
【0044】
そして、算出部43は、保持バッファ値の加算値が各画素の位置に対応付けられた加算値情報を生成する(ステップS103)。例えば、算出部43は、
図6(C)に示されるように、1段目のラインの場合、左から順に、1つ目の画素の位置には1、2つ目の画素の位置には3、3つ目の画素の位置には4・・・というようにラインの先頭からその画素の位置までの保持バッファ値を加算して加算値情報を生成する。
【0045】
そして、算出部43は、ステップS103で生成された加算値情報に基づいて、位置ずれ情報を算出する(ステップS104)。なお、位置ずれ情報の算出方法の詳細は後述する。
【0046】
次に、エッジ検出部45は、画像データ中から1つの画素を順次選択してこれを注目画素とし、注目画素の近傍の画素の配置パターンと、パターン切替部44が指示したエッジ検出パターンとを比較することによってエッジ部分を検出する(ステップS105)。エッジ部分の検出方法の詳細は後述する。
【0047】
最後に、階調補正処理部46は、画像データに対して階調の補正を行う。ここで、ステップS105において検出されたエッジ部分の画素に対して、画素値を変更して強調する補正を行う(ステップS106)。
【0048】
次に、ステップS104における位置ずれ情報の算出方法の流れを
図7を参照して詳細に説明する。
【0049】
まず、算出部43は、画像データ中のラインの1つを注目ラインとし(ステップS201)、ステップS103において生成された加算値情報を参照して、注目ライン上の各画素の位置の加算値と、注目ラインの1ライン上に隣接するライン上の対応する画素の位置の加算値とを比較して、画素の位置の加算値の差を位置ずれ情報として算出する(ステップS202)。
【0050】
ここで、加算値の比較において、例えば、算出部43が2段目のラインに注目し、1段目のラインと2段目のラインを比較する場合について、
図8(A)を参照して説明する。まず、1段目のライン上および2段目のライン上の左から1番目の画素の位置においては、算出部43は、画素の位置の加算値がともに1であるため、位置ずれなしと判定する。また、1段目のライン上および2段目のライン上の左から2番目の画素の位置おいては、1段目のライン上の画素の位置の加算値が3、2段目のライン上の画素の位置の加算値が2となり、2段目のライン上の画素の位置の加算値が1段目のライン上の画素の位置の加算値よりも1小さいため、算出部43は、2段目のライン上の左から2番目の画素の位置を左ずれ領域53と判定する。また、1段目のライン上および2段目のライン上の左から9番目の画素の位置においては、1段目のライン上の画素の位置の加算値が9、2段目のライン上の画素の位置の加算値が10となり、2段目のライン上の画素の位置の加算値が1段目の画素の位置の加算値よりも1大きいため、算出部43は、2段目のライン上の画素の位置を右ずれ領域54と判定する。
【0051】
さらに、算出部43は、上記の処理を3段目のライン上の各画素の位置、および4段目のライン上の各画素の位置に対しても行うことにより、
図8(B)に示されるような位置ずれ情報を算出する。なお、
図8(B)は、各ライン上の左から1番目から10番目までの画素の位置ずれ情報を示している。ここで、
図8(B)において、Nはラインずれ無しの画素、Lは左ずれ領域53の画素、Rは右ずれ領域54の画素を示している。
【0052】
そして、全てのラインで位置ずれ情報が算出された場合、上記処理を終了する(ステップS204)。
【0053】
次に、ステップS105におけるエッジの検出方法の流れを
図9を参照して詳細に説明する。
【0054】
まず、エッジ検出部45は、画像データ中の画素を1つ選択し、これを注目画素とする(ステップS301)。
【0055】
次に、パターン切替部44は、注目画素の位置ずれ情報に基づいて、エッジ検出パターンを切り替える(ステップS302)。具体的には、注目画素が位置ずれしている画素でない場合、パターン切替部44は、
図10(A)に示されるような基準パターン61を用いるようエッジ検出部45に指示する。また、パターン切替部44は、注目画素が左ずれしている画素である場合には、左ずれパターン62を用いるようエッジ検出部45に指示し、注目画素が右ずれしている画素である場合には、右ずれパターン63を用いるようエッジ検出部45に指示する。ここで、左ずれパターン62は、基準パターン61に対して、2段目のラインが加算値の差分左にずれて中央の画素が黒画素となっている。また、右ずれパターン63は、基準パターン61に対して、1段目のラインおよび3段目のラインが加算値の差分左にずれて中央の画素の上下に隣接する画素が黒画素となっている。
【0056】
そして、エッジ検出部45は、パターン切替部44によって指示されたエッジ検出パターンを用いて、注目画素の近傍8画素の配置パターンがエッジ検出パターンと一致するか否かを判定する(ステップS303)。ここで、注目画素の近傍8画素の配置パターンとエッジ検出パターンが一致すると判定された場合、エッジ検出部45は、当該注目画素はエッジ部分であると判定する(ステップS304)。また、注目画素の近傍8画素の配置パターンがエッジ検出パターンと不一致と判定された場合、エッジ検出部45は、当該注目画素はエッジ部分と判定せず、ステップS305に進む。
【0057】
そして、注目画素のエッジ判定が行われた後、エッジ検出部45は、画像データ中に未選択の画素が存在するか否かを判定する(ステップS305)。ここで、画像データ中に未選択の画素が存在する場合、エッジ検出部45は、ステップS301に戻って未選択の画素を注目画素とし、上記と同様の処理を行う。また、画像データ中に未選択の画素が存在しない場合、エッジ検出部45は、エッジ検出の処理を終了する。
【0058】
上記の処理によって、エッジ部分が検出された後、階調補正処理部46は、黒画素50の画素の画素値を変更してエッジを強調する。例えば、
図11に示されるように、階調補正処理部46は、黒画素50のうち、ラインずれにより左ずれを起こしているエッジずれ画素55に対しては、薄くして目立たなくなるような画素値に変更する。また、階調補正処理部46は、黒画素50の領域のうち、エッジ部分に挟まれた強調画素57に対しては、濃くして目立つような画素値に変更する。
【0059】
さらに、エッジが強調された後、階調補正処理部46は、上記の処理によってエッジ部分が検出および強調された画像データを露光部47に送信し、露光部47は該画像データに基づいて光書込みを行う。
【0060】
なお、本実施形態においては、走査方向に対する位置ずれ情報を算出しているが、副走査方向に対する位置ずれ情報を算出するようにしてもよい。この場合、本実施形態における算出部43の保持バッファ値の加算および加算値を比較する処理を副走査方向の各列毎に行えばよい。
【0061】
なお、本実施形態では、左側のエッジ部分を検出する場合について説明したが、本発明は、右側のエッジ部分を検出する場合も同様の方法を用いることができる。例えば、右側のエッジ部分を検出する場合、
図10(B)に示されるように、基準パターン61とは対称的に左側に黒画素が直線的に配置された基準パターン64を用いるようにしてもよい。この場合、注目画素が左ずれである場合は、左ずれパターン65、注目画素が右ずれである場合は、右ずれパターン66を用いるようにしてもよい。
【0062】
さらに、本実施形態においては、注目ライン上の画素の位置の加算値と1つ上のライン上の対応する画素の位置の加算値とを比較するものとして説明したが、本発明はこれに限定されず、最上段のラインまたは1つ下のラインを選択して注目ライン上の画素の位置の加算値と対応する画素の位置の加算値を比較するようにしてもよい。
【0063】
また、本実施形態において、画素の位置ずれは1画素分ずれている場合を説明したが、本発明は位置ずれの画素数に限定されるものではなく、2画素分以上の位置ずれが発生していても適用することができる。この場合、算出部43は、位置ずれの方向に加えて、画素の位置の加算値の比較の際に、加算値の差分を位置ずれ量として各画素の位置と対応させ、パターン切替部44は、基準となるパターンに対して、位置ずれの方向および位置ずれ量を考慮したエッジ検出パターンに切り替えるようにすればよい。
【0064】
また、本実施形態において、パターン切替部44は、エッジ部分を検出するために用いられるエッジ検出パターンを予め設定されているパターンの中から切り替えるものとして説明した。しかし、本発明はこれに限定されるものではなく、パターン切替部44は、基準となるエッジ検出パターンに対して、位置ずれ情報に基づいて異なるエッジ検出パターンを動的に生成するようにしてもよい。この場合、パターン切替部44は、エッジ検出部45に対して生成されたエッジ検出パターンを用いるよう指示すればよい。