近年、コンピュータやカラープリンタの普及により、オフィスや各家庭で、カラープリンタによって、より多くのカラー画像が印刷される機会が増えてきた。
図12はカラープリンタの利用形態を示す図である。カラープリンタ1は、IEEE1284などのインターフェース53、あるいはLAN(ローカルエリアネットワーク)51やインターネット52などのネットワークを介して複数のホストコンピュータ50と接続されている。カラープリンタ1は、ホストコンピュータ50との間で印刷データやプリンタのステータス情報などのデータの送受信を行っている。
図13は、カラープリンタ1の構成を示す構成図である。図13において、カラープリンタ1は、ホストコンピュータ50から送れた画像データを解釈し印刷イメージを生成するコントローラ部2と、印字データを電子写真原理を用いて記録媒体上に形成するプリンタエンジン3とを有している。
コントローラ部2は、ホストコンピュータ50との間でデータ送受信を司るインターフェース部4、印刷データの解釈を行うインタプリタ部5、印刷画像イメージをメモリ上に形成するラスタライザ部6、印刷画像イメージを圧縮する圧縮器7、圧縮印刷画像イメージを伸長する伸長器8を有している。
一方、プリンタエンジン3は、レーザ照射を制御するレーザ駆動装置9、多角形に鏡面加工されたポリゴンミラー10、レーザによって電子潜像を形成する感光体11、シアン、マゼンタ、イエロー、ブラックの複数の現像器12、各現像器12で形成されたトナー像を転写してシアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(K)の各色のトナー画像を保持する中間転写体16、記録用紙を収めたペーパーカセット17、用紙に転写されたトナー像を用紙に加熱定着させる定着器19を有している。
このような構成のカラープリンタ1の処理動作について説明する。
印刷要求を行ったホストコンピュータ50から送信された画像データは、コントローラ部2によって処理される。すなわち、その画像データは、インターフェース部4を介してインタプリタ部5に入力される。インタプリタ部5は画像データを解釈して描画データを作成する。ラスタライザ部6は、前記作成された描画データに基づいて、印刷画像イメージを、1ページを複数ライン単位に分割したバンドメモリ(図示せず)上に展開する。
展開された印刷画像イメージは膨大なサイズとなるため、一旦、圧縮器7によって圧縮され圧縮メモリ(図示せず)に保存される。圧縮メモリに1ページ分の印刷画像イメージの蓄積が完了すると、コントローラ部2は、プリンタエンジン3に対して処理動作を開始させる。そして、伸長器8は、一旦保存された圧縮印刷画像イメージを伸長しながら、プリンタエンジン3へ送る。
プリンタエンジン3では、レーザ駆動装置9が、コントローラ2から送られてきたデータに基づいてレーザの点滅制御を行いながら、高速回転しているポリゴンミラー10へ向
けてレーザ照射を行う。このポリゴンミラー10からのレーザ反射光は感光体11上へ照射され、これにより感光体11上に潜像が形成される。このときポリゴンミラー10の回転により画像の主走査ラインが形成される。
各感光体11上に形成された潜像は各現像器12によってシアン、マゼンタ、イエロー、ブラックのトナー像として現像される。各感光体11上のトナー像は一旦中間転写体16に転写される。
ところで、各感光体11、各現像器12は、中間転写体16の駆動方向に対し直列的に配置されているため、中間転写体16は1回の回転で1ページのシアン、マゼンタ、イエロー、ブラックのトナーが重なった画像を保持することが出来る。
記録用紙13は中間転写体16の動きに同期して用紙カセット17から搬送される。中間転写体16に保持されているトナー像は、転写器18によって中間転写体16から記録用紙13上に転写され、その後、定着器19によって加熱されて記録用紙13上に定着される。これにより最終的な出力画像が得られる。
図14は、従来の画像処理装置の構成を示す構成図である。なお、図14に示す画像処理装置6Aは、図13に示したカラープリンタ1に設けられたコントローラ部2内のラスタライザ部6に含まれる。
画像処理装置6Aは、ホストコンピュータ50から送られてくるRGBカラーからデバイスカラーへの色変換と2値化を行うものであり、C信号処理部101C、M信号処理部101M、Y信号処理部101Y、及びK信号処理部101Kを有している。
C信号処理部101CはRGBカラーからシアン(C)への色変換と2値化を行うものであり、また、M信号処理部101M、Y信号処理部101Y、及びK信号処理部101Kも、それぞれマゼンタ(M)、イエロー(Y)及びブラック(K)についてC信号処理部101Cと同様の処理を行う。
C信号処理部101Cは、RGBの色信号(以下、RGB信号という)をシアン(C)の色信号(以下、C信号という)に変換する色変換部20、エンジン出力特性を補正するためのガンマ補正テーブルを記憶したガンマテーブル記憶部21、ガンマ補正テーブルに基づいてガンマ補正を実行するガンマ補正部22、多値画像をハーフトーン化するためのディザ閾値マトリクスをCMYKの色毎に記憶するディザ閾値記憶部23、ディザ閾値マトリクスとの比較を行って画像を2値化するディザ処理部24を有している。
M信号処理部101M、Y信号処理部101Y、及びK信号処理部101Kも、それぞれマゼンタ(M)、イエロー(Y)及びブラック(K)について、C信号処理部101Cと同様の処理を行うものであり、C信号処理部101Cと同様の構成になっている。
次に、このような画像処理装置6Aの動作について説明する。ホストコンピュータ50から送られてくるRGB画像データは、プリンタのデバイスカラーであるCMYKのデータに変換する必要があるので、色変換部20によってCMYKのデータに変換される。ここで、RGB信号、CMYK信号ともに0〜255のレベルを持った256階調データである。
なお、図14において、256階調データのCMYK信号については、後述する2値のCMYK信号と区別するために、また例えばシアン(C)の色信号であるC信号をC(256)と図示する。一方、2値のCMYK信号については、例えばC信号をC(2)と図
示する。さらには、256階調データのRGB信号については、例えば赤(R)の色信号であるR信号をR(256)と図示する。
ところで、RGB信号とCMYK信号との対応関係は非線型性が強いため、代表的な色の対応関係はルックアップテーブルで表される。色変換部20では、このルックアップテーブルを備えており、代表点以外については代表点を内挿して求めることでRGB信号からCMYK信号への変換を行っている。
なお、ここではルックアップテーブルを用いてCMYKの4色の値を求めているが、ルックアップテーブルでCMYの3色の値を求めた後、下色除去処理によってCMYKの4色の値を求めることもある。また、ルックアップテーブルを用いず、マスキングマトリクスを用いてCMY値を求める方法もある。
色変換部20の出力であるCMYK信号は、さらにガンマ補正部22によってガンマ補正が行われる。
図15は従来の画像処理装置に設けられたガンマ補正部によって参照される特性情報を示す図である。
入力信号(色変換部20からの出力信号であるCMYK信号)と出力画像の濃度とは、図15(a)のように非線型な関係(出力濃度特性)であり、更に、この非線形な関係はトナーや印刷プロセスに用いられる部材の材質により異なる。
このように入力信号と出力画像の濃度とは非線型な関係にあるため、電子写真の原理を用いたプリンタエンジンでは、色変換とは独立してCMYKの出力レベルの調整を行う必要がある。このため、ガンマテーブル記憶部21には、図15(a)に示す出力濃度特性の逆関数になる特性すなわち、図15(b)に示す入力信号とガンマ補正レベルとの関係を示すガンマ補正カーブが、CMYKの各々に対応してガンマ補正テーブルとして予め保存されている。
色変換部20からのCMYK信号を受け取ったガンマ補正部22は、このCMYK信号を、ガンマテーブル記憶部21に記憶されている各ガンマ補正テーブルを参照してガンマ補正することにより、CMYKの出力の直線性を得るようにしている。このようにしてガンマ補正されたCYK信号はディザ処理部24に入力される。
次に、ディザ処理部24は、ガンマ補正部22からのYMCK信号と、ディザマトリクス記憶部21に記憶されているディザ閾値マトリクスとに基づいて、CMYKの各プレーン毎に2値化を行う。
図16はディザ閾値マトリクスの一例を示す図である。ディザマトリクスは画像の各画素レベルに対する各ディザ閾値をマトリクス状に並べたものである。
ディザ処理部24は、CMYKそれぞれ別々にディザ閾値の並びを変えたものを用い、ディザ閾値マトリクスの閾値を超える画素を1、一方、その閾値を下回る画素を0とすることで、CMYKそれぞれの2値データを得る。そして、プリンタエンジン3のレーザ駆動はこの2値データに基づいて行われる。
ところで、電子写真では小ドットになるほど安定性が良くないため、ディザ閾値マトリクスは、なるべく複数の画素が隣接して纏まるように考慮されて、ディザ閾値の配置が行われている。このようなディザ閾値マトリクスによる2値化は、ある程度の領域の面積を
用いて階調を表すものであり、その階調再現性は優れている一方、解像性が良くないといった欠点がある。
このような欠点を補うために、入力画素が線分エッジ領域かどうかを判定し、エッジ画像領域であると判定した場合には固定閾値によって画像を2値化するという装置が知られている(例えば特許文献1参照)。
また、入力画像信号にエッジ強調を施した後に画像を2値化するという装置も知られている(例えば特許文献2参照)。
特開昭63−256055号公報
特開平3−136468号公報
以下、本発明を実施するための最良の形態を、図面を参照しつつさらに具体的に説明する。ここで、添付図面において同一の部材には同一の符号を付しており、また、重複した説明は省略されている。なお、ここでの説明は本発明が実施される最良の形態であることから、本発明は当該形態に限定されるものではない。
(実施の形態1)
図1は本発明の実施の形態1である画像処理装置の構成を示す構成図、図2はウィンドウが設定された画像の一例を示す図、図3はエッジ強度とディザ閾値変動量との関係を示す図、図4はシアンプレーンに対するディザ閾値の配列、及びライン画素レベルが2ドット幅の斜線の一例を示す図、図5は図4に示した内容に基づいて再現された線画の様子を示す図、図6は図4に示した内容に対してディザ閾値変動処理を施した後のディザ閾値の配列の一例を示す図、図7は図6に示した内容に基づいて再現された線画の様子を示す図である。
図1に示す画像処理装置60は、図13に示した従来のカラープリンタ1に設けられたラスタライザ部6に含まれるものであり、C信号処理部102Cと、M信号処理部102Mと、Y信号処理部102Yと、K信号処理部102Kとを有する信号処理部102を備えている。
C信号処理部102C、M信号処理部102M、Y信号処理部102Y、及びK信号処理部102Kは、それぞれシアン(C)、マゼンタ(M)、イエロー(Y)及びブラック(K)の各プレーンのエンジン出力イメージを作成するものである。これら各信号処理部は同様の構成及び動作を有しているため、これ以降の説明においては、シアンプレーンを出力するC信号処理部102Cについて説明する。
C信号処理部102Cは、色変換部20、ガンマテーブル記憶部21、ガンマ補正部22、ディザ閾値記憶部23、2値化処理部25、ウィンドウ設定部26、エッジ強度検出部27、及びディザ閾値変動量決定部28を有している。
色変換部20は、RGB色信号(RGB信号)をシアン(C)の色信号(C信号という)に変換する。RGB信号とCMYK信号との対応関係は非線型性が強いため、色変換部20は代表的な色の対応関係を表したルックアップテーブルを備えている。
ガンマテーブル記憶部21は、エンジン出力特性を補正するためのガンマ補正テーブルを記憶している。ガンマ補正部22は、ガンマ補正テーブルに基づいてガンマ補正を実行する。
ディザ閾値記憶部(閾値保持手段)23は、入力されるM値画に対応するM値画像例えば256階調の画像信号に対応する256階調画像をN値画像(NはM>Nの関係が成立する整数)例えば2値画像に変換するための閾値(ディザ閾値)を予め保持している。
ウィンドウ設定部(ウィンドウ設定手段)26は、M値画像(Mは整数)例えば256階調画像に対してn×n(nは整数)例えば3×3のウィンドウを設定する。
エッジ強度検出部(エッジ強度検出手段)27は、ウィンドウ設定部26によって設定されたウィンドウ内でエッジ強度を検出する。
ディザ閾値変動量決定部(ディザ閾値変動量決定手段)28は、エッジ強度検出部27によって検出されたエッジ強度に応じてディザ閾値変動量を決定するものであり、エッジ強度とディザ閾値変動量との関係を表した情報を記憶する記憶部(図示せず)を備えており、この記憶部の記憶内容を参照して、前記検出されたエッジ強度に対応するディザ閾値変動量を求める。
2値化処理部(N値化手段)25は、ディザ閾値記憶部23に記憶されている閾値(ディザ閾値)と、ディザ閾値変動量決定部28によって決定されたディザ閾値変動量とに基づいて新しい閾値(新しいディザ閾値)求め、この新しいディザ閾値と、ガンマ補正部2
2によってガンマ補正された256階調画像信号とに基づいて256階調画像をN値化(2値化)する。
次に、画像処理装置60の処理動作について説明する。
ホストコンピュータ50から送られてくるRGB画像データ(256階調の画像データ)は、色変換部20によってシアンの色信号(C信号)つまり256階調のC信号に変換される。このとき色変換部20は、代表的な色についてはルックアップテーブルを参照してRGB信号からC信号への変換を行うとともに、代表点以外については代表点を内挿して求めることでRGB信号からC信号への変換を行う。
これ以降の説明においては、256階調のC信号と2値のC信号とを区別するために、256階調のC信号はC(256)信号と表記し、一方、2値のC信号はC(2)信号と表記する。また、後述するガンマ補正された256階調のC信号をC’(256)信号と表記する。
なお、図1において、256階調のRGB信号(画像データ)については、それぞれR(256)、G(256)、B(256)と図示し、また256階調のCMYK信号については、例えば256階調のC信号はC(256)と図示し、また後述するガンマ補正された256階調のC信号はC’(256)と図示し、さらに2値のC信号はC(2)と図示する。
さて、色変換部20の出力であるC(256)信号は、ガンマ補正部22及びウィンドウ設定部26に入力される。
ガンマ補正部22は、入力されたC(256)信号に対して、ガンマテーブル記憶部21に記憶されているガンマ補正テーブルに基づいてガンマ補正を実行する。すなわち、ガンマ補正部22は、C(256)信号に対する補正値をガンマテーブル記憶部21のガンマ補正テーブルから取得することにより出力の直線性を得る。この結果として、ガンマ補正されたC’(256)信号が得られる。
一方、色変換されたC(256)信号が入力されたウィンドウ設定部26では、このC(256)信号(入力画像信号)に対して、着目画素を中心とするn×nのウィンドウを設定する。ここでは、n=3として3×3のウィンドウ設定を行うものとする。
図2は3×3のウィンドウが設定された画像の一例を示している。このウィンドウ内の画像は、斜線ハッチで示す現在の着目画素を中心に3×3の画素で構成されている。例えば、着目画素g11を中心に、g00、g01、g02、g10、g12、g20、g21、g22の各画素で構成されている。
続いて、エッジ強度検出部27は、ウィンドウ設定部26によって設定された3×3のウィンドウのエッジ強度Esを求める。このエッジ強度Esは、周辺画素から着目画素への差の最小値によって示されるものであり、(数1)及び(数2)の式を演算することにより求めることができる。
但し、min(*)は最小値を求める関数である。
このようにして求められたエッジ強度Esは、ディザ閾値変動量決定手段28に入力される。
ディザ閾値変動量決定手段28では、このエッジ強度Esに対応するディザ閾値変動量Dsを、記憶部(図示せず)に記憶されているエッジ強度Esとディザ閾値変動量Dsとの関係を表す情報から取得することにより、入力されたエッジ強度Esをディザ閾値変動量Dsに変換する。このようにして変換されたディザ閾値変動量Dsは2値化処理部25に渡される。
ここで、エッジ強度Esとディザ閾値変動量Dsとの関係は、図3に示すようなテーブルとして表すことが出来る。図3に示すテーブルは、エッジ強度Esが小さいときにはディザ閾値変動量Dsはより小さく又はディザ閾値変動量Dsが0となるように、また、エッジ強度Esが強くなるに従ってディザ閾値変動量Dsはより大きくなるように設定されている。
このようなテーブルは、0〜255の範囲にあるエッジ強度Esを0.0〜1.0の値のディザ閾値変動量Dsに変換するために用いられるものであり、ディザ閾値変動量決定部28の記憶部(図示せず)に記憶されている。
ディザ閾値変動量Dsを渡された2値化処理部25は、まずディザ閾値記憶部23の記憶内容からディザ閾値Tを取得する。このディザ閾値Tは着目画素の位置に対応する位置に配列されている値を取得する。このディザ閾値Tに対して、前記ディザ閾値変動量Dsを用いてディザ閾値を変動させる。
具体的には、変動後のディザ閾値をT’とした場合、このディザ閾値T’は(数3)の式を演算することにより求めることができる。
この(数3)の式からも分かるように、ディザ閾値変動量Dsの値に応じて変動するディザ閾値T’は、通常のディザ閾値Tよりも小さくなる。
ところで、2値化処理部25は、ガンマ補正後のC’(256)信号に基づく画素レベルと変動後のディザ閾値T’とを比較し、この比較した結果、C’(256)信号に基づく画素レベル≧ディザ閾値T’の関係が成立する場合にはONとし、一方、C’(256)信号に基づく画素レベル<ディザ閾値T’の関係が成立する場合はOFFとする2値化出力を得る。
このようにして2値化が行われた場合、エッジ強度Esがより強い部分は、ディザ閾値変動量Dsの値が0.0〜1.0の範囲内で大きくなるので(図3参照)、これに伴いディザ閾値T’が小さくなるため(数3参照)、画像が現れ易くなる。
図4はシアンプレーンに対するディザ閾値の配列、及びライン画素レベル(シアン単色
のレベル)が60である2ドット幅の斜線の一例を示している。図4において、各画素に対応する各セルの数字はディザ閾値を示し、また太線で囲った画素が2ドット幅ラインを構成する画素を示している。
ディザ閾値Tをそのまま適応して2値化した場合には、図5に示すような線画が再現されるため、線が離散したドットで表現されてしまい、破線となって見える。
ディザ閾値変動処理を行った後のディザ閾値T’を並べた様子を図6に示す。この図6から分かるように、線の存在する部分(太線で囲った画素の部分)は、エッジ強度Esが強く現われるため、上述したようにディザ閾値変動量Dsの値が大きくなり、その結果として、その部分のみのディザ閾値のレベルが下がっている。
なお、この実施の形態では、新しいディザ閾値T’とガンマ補正後のC’(256)信号に基づく画素レベル(256階調画像の画素値)とを比較し、この比較した結果を基に2値化するようにしているが、本発明はこれに限定されることなく、次のようにしても良い。
すなわち、着目画素についての、検出されたエッジ強度に応じて画素値変動量を求めるとともに、この画素値変動量と着目画素の画素値とに基づいて新たな画素値を求め、さらに、この新たな画素値と所定のディザ閾値とを比較し、この比較した結果を基に2値化するようにしても良い。
この場合、図1において、ディザ閾値変動量決定部28は、エッジ強度検出部(エッジ強度検出手段)27が検出したエッジ強度Esに応じて画素値変動量Dsを求める画素値変動量決定手段の機能を有するものとする。
また、2値化処理部25は、ガンマ補正された後の256階調画像信号(M値画像信号)と画素値変動量決定手段(ディザ閾値変動量決定部28)が決定した画素値変動量Dsとに基づいて新しい画素値を求め、この新しい画素値とディザ閾値記憶部23の記憶内容から取得したディザ閾値Tとに基づいて256階調画像を2値化(N値化)する。これにより、中間調の画像のエッジの欠損や細線の破線化を改善することができる。
また、この実施の形態では、1画素に対して1つのディザ閾値を変動させて2値化するようにしたが、本発明はこれに限定されることなく、1つの画素に対して複数のディザ閾値を持たせ、各ディザ閾値をそれぞれ変動させてn個の階調値を持たせるn値化とするようにしても良い。
また、この実施の形態において、画像処理装置は専用のハードウェアを用いて実現することが出来るが、一般的なCPU(中央演算処理装置)とROMやRAMなどの記憶媒体とにより構成して、上記画像処理装置と同じ処理を実現することも可能である。
この場合、色信号処理部の機能を実現し、当該処理の処理手順を示すプログラムを例えばROMに格納しておき、CPUが、このプログラムをこのROMから主記憶装置(RAM)へローディングして実行するようにする。
さらに、この実施の形態では、プリンタエンジンは電子写真を用いたカラープリンタについて説明しているが、プリンタエンジンは必ずしも電子写真を用いたものでなくても構わない。
以上説明したように、本実施の形態の画像処理装置によれば、ディザ閾値(所定の閾値
)Tとディザ閾値変動量Dsとに基づいて新しいディザ閾値(新しい閾値)T’を求め、この新しいディザ閾値T’とガンマ補正された256階調(256値)画像信号(256階調YMCK信号)とに基づいて、当該256階調画像を2値(N値)化するようにしたので、中間調の画像のエッジの欠損や細線の破線化を改善することができる。
(実施の形態2)
図8は本発明の実施の形態2である画像処理装置の構成を示す構成図、図9はエッジ強度と変動調整量との関係を示す図、図10は変動調整量を説明する図、図11はエッジ強度とカレント変動量との関係を示す図である。
この実施の形態の画像処理装置は、実施の形態1の画像処理装置とは、基本的には同様の機能を有するものの、ディザ閾値変動量を用いてディザ閾値を変動させる処理が相違している。
この実施の形態においても、256階調のC信号と2値のC信号とを区別するために、256階調のC信号はC(256)信号と表記し、一方、2値のC信号はC(2)信号と表記する。また、後述するガンマ補正された256階調のC信号をC’(256)信号と表記する。
また、図8において、256階調のRGB信号(画像データ)については、それぞれR(256)、G(256)、B(256)と図示し、また、CMYKの各信号について、例えば256階調のC信号はC(256)と図示し、また後述するガンマ補正された256階調のC信号をC’(256)と表記し、さらに2値のC信号はC(2)と図示する。
図8に示す画像処理装置600は、図13に示した従来のカラープリンタ1に設けられたラスタライザ部6に含まれるものであり、色信号処理部103と閾値変動量決定部104とを有している。
閾値変動量決定部104は、明度変換部30、ウィンドウ設定部31、エッジ強度検出部32、エッジ方向検出部33、変動調整量決定部34、及びカレント変動量決定部35を有している。
明度変換部30は、RGB入力信号から明度を求める。
ウィンドウ設定部(ウィンドウ設定手段)31は、入力されたM値画像信号(Mは整数)に対応するM値画像に対してn×n(nは整数)例えば3×3のウィンドウを設定する。
エッジ強度検出部(検出手段)32は、ウィンドウ設定部31によって設定されたウィンドウ内でエッジ強度を検出する。
エッジ方向検出部(検出手段)33は、ウィンドウ設定部31によって設定されたウィンドウ内でエッジ方向を検出する。
変動調整量決定部(第2の変動量決定手段)34は、エッジ強度検出部32によって求められたエッジ強度及びエッジ方向検出部33によって求められたエッジ方向に基づいて、当該エッジ方向の画素に対応するディザ閾値変動量(後述する変動調整量)を求める。また、変動調整量決定部34はエッジ強度と変動調整量との関係を表した情報(変動調整量変換テーブル)を記憶する記憶部(図示せず)を備えており、このテーブルを参照して、エッジ方向の画素に対する変動調整量を求めるようにしている。
カレント変動量決定部(第1の変動量決定手段)35は、エッジ強度検出部32によって求められたエッジ強度に応じてディザ閾値変動量(後述するカレント変動量)を求める。また、カレント変動量決定部35は、エッジ強度とカレント変動量との関係を表した情報を記憶する記憶部(図示せず)を備えており、この記憶部の記憶内容を参照して、前記エッジ強度に対応するカレント変動量を求めるようにしている。
一方、色信号処理部103は、C信号処理部103Cと、M信号処理部103Mと、Y信号処理部103Yと、K信号処理部102Kとを有する信号処理部103を有しており、それぞれシアン(C)、マゼンタ(M)、イエロー(Y)及びブラック(K)の各プレーンのエンジン出力イメージを作成するものである。これら各信号処理部は同様の構成及び動作を有しているため、以下の説明においては、シアンプレーンを出力するC信号処理部102Cについて説明する。
C信号処理部103Cは、色変換部20と、ガンマテーブル記憶部21と、ガンマ補正部22と、ディザ閾値記憶部23と、2値化処理部36とを有している。なお、これら各構成要素のうち、2値化処理部36を除く他の各構成要素は、それぞれ図1に示したC信号処理部102Cの各構成要素20,21,22,23と同様の機能を果たすものなので、ここでは、その説明を省略する。
2値化処理部(N値化手段)36は、ディザ閾値記憶部23に記憶されている閾値(ディザ閾値)と、カレント変動量決定部35によって求められたディザ閾値変動量、及び変動調整量決定部34によって求められたディザ閾値変動量とに基づいて、新しい閾値(新しいディザ閾値)求めるとともに、この新しいディザ閾値と、ガンマ補正部22によってガンマ補正された256階調画像信号とに基づいて、当該256階調画像をN値化(2値化)する。
次に、画像処理装置600の処理動作について説明する。
明度変換部30は、RGB入力信号を基に、Y=0.3R+0.6G+0.1Bの式を演算することにより明度信号Yを求め、この明度信号Yをウィンドウ設定部31に渡す。
次に、ウィンドウ設定部31は、明度信号Yに対して、着目画素を中心とするn×nのウィンドウを設定する。ここでは、n=3として3×3のウィンドウ設定を行うものとする(図2参照)。ウィンドウ設定部31によってウィンドウ設定されたウィンドウ(明度信号Yに対するウィンドウ)は、エッジ強調検出部32及びエッジ方向検出部33に入力される。
続いて、エッジ強度検出部32は、明度信号Yに対してウィンドウ設定された3×3のウィンドウ(図2参照)のエッジ強度Esを求める。このエッジ強度Esは、周辺画素から着目画素への差の最大値によって求められる。この実施の形態では、明度に対するエッジ強度Esの検出となるため、このエッジ強度Esは、(数4)及び(数5)の式を演算することにより求めることができる。
ただし、Max(*)は最大値を求める関数である。
このようにして求められエッジ強度Esは、変動調整量決定部34及びカレント変動量決定部35に入力される。
エッジ方向検出部33は、明度信号Yに対してウィンドウ設定された3×3のウィンドウ内の画素が構成するエッジの方向を検出する。
エッジ方向Edは、水平(Edh)、垂直(Edv)、右上がり斜め(Edr)、左上がり斜め(Edl)の4方向の抽出を行うことにより求められ、エッジ強度検出部32によってエッジ強度検出が行われた際(数4の式を演算して求められた結果)のgMaxを与える画素の位置に対し垂直な方向として求められる。
例えば、図2に示した例において、着目画素g11に対してgMaxを与える画素が右下の画素g22である場合には、エッジ方向Edはこの画素方向に対し直角となる右上がり斜め(Edr)となり、また着目画素g11に対してgMaxを与える画素が右横のg12である場合にはエッジ方向Edは垂直(Edv)となる。
エッジ方向検出部33によって求められたエッジ方向Edは変動調整量決定部34に入力される。
変動調整量決定部34は、エッジ強度Esから変動調整量Dadjを求めるとともに、既にエッジ強調検出部32から受け取ったエッジ方向Edに対して一時保存していく。
エッジ強度Esと変動調整量(ディザ閾値変動量)Dadjとの関係を表す特性(変動調整量変換テーブルをグラフ化したもの)を図9に示す。この図9に示すような特性情報は変換調整量決定部34の記憶部(図示せず)に記憶されている。
この図9から分かるように、エッジ強度Esが小さいときには変動調整量Dadjはより小さく又は変動調整量Dadjが0となるように、また、エッジ強度Esが強くなるに従って変動調整量Dadjはより大きくなるように設定されている。このようなテーブルは、0〜255の範囲にあるエッジ強調Esを0.0〜1.0の変動調整量Dadjに変換するために用いられる。
変動調整量決定部34は、変動調整量Dadjとして、エッジ方向が水平(Edh)の場合には着目画素の右側の方向に対して、垂直(Edv)の場合には下側の方向に対して、右上がり斜め(Edr)の場合には左下方向に対して、さらに左上がり斜め(Edl)の場合には右下方向に対して、それぞれ加算保存を行うようにする。
ここで、変動調整量決定部34による変動調整量Dadjの求め方について、図10を参照して具体的に説明する。
まず、上述したように、ウィンドウ設定部31によって、図10(a)に示すように、画素Aを着目画素として太線で囲む3×3のウィンドウを設定する。エッジ強度検出部32によって前記ウィンドウ内でエッジ強度を検出し、エッジ方向検出部33によって前記ウィンドウ内でエッジ方向を検出する。
変動調整量決定部34は、前記エッジ強度及び前記エッジ方向に基づいてエッジ方向の
画素に対応する変動調整量を求める。次に、変動調整量決定部34は、求めた変動調整量がDadj0でエッジ方向Edが垂直(Edv)である場合には、着目画素Aに対し下側に位置する画素Cの方向に対して変動調整量Dadj0を保存する。
続いて、着目画素が画素Aから画素Bに移動して、図10(b)に示すように、図10(a)に示すウィンドウの位置と比較して右方向に移動した位置にウィンドウが設定された場合においては、変動調整量決定部34は、変動調整量Dadj1でエッジ方向Edが右上がり斜め(Edr)である場合には、変動調整量Dadj1は、再び着目画素Bの左下である画素Cの位置に保存するが、先に保存した変動調整量Dadj0に加算して保存する。
なお、このとき変動調整量は0.0〜1.0の間の値であるため、加算結果が1.0を超える場合は1.0にクリッピングして保存される。これ以降の説明においては、加算保存された後の変動調整量をDa(0.0≦Da≦1.0)とする。
ところで、エッジ強調検出部32からのエッジ強調Esを受け取っているカレント変動量決定部35は、そのエッジ強調Esをカレント変動量Dsに変換する。なお、エッジ強度Esとカレント変動量Dsとの関係は、図11に示すようなテーブルとして表すことが出来る。この図11に示すような関係を示す情報はカレント変動量決定部35の記憶部(図示せず)に記憶されている。
このテーブルは、エッジ強度Esが小さいときにはカレント変動量Dsはより小さく又はカレント変動量Dsは0となるように、また、エッジ強度Esが強くなるに従ってカレント変動量Dsはより大きくなるように設定されている。このようなテーブルは、0〜255の範囲にあるエッジ強度Esを0.0〜1.0のカレント変動量Dsの値に変換するために用いられる。
このカレント変動量Ds及び先に求められた変動調整量Daは、色信号処理部103に渡される。例えば、着目画素が図10(c)に示すウィンドウ内の画素Cに移動したときには、画素Cの位置に対応して求められたカレント変動量Dsおよび画素Cの位置に対応して保存された変動調整量Daが渡されることになる。
このようにしてカレント変動量Ds及び変動調整量Daが渡される色信号処理部103について説明する。ここでは、RGBの各画像データからジアン(C)の色信号に変換する場合の処理について説明する。
ホストコンピュータ50から送られてくるRGB画像データ(256階調画像データ)は、色変換部20によってシアンの色信号つまりC(256)信号に変換される。このとき色変換部20は、代表的な色についてはルックアップテーブルを参照してRGB信号からC信号への変換を行うとともに、代表点以外については代表点を内挿して求めることでRGB信号からC(256)信号への変換を行う。このようにして色変換されたC(265)信号は、ガンマ補正部22に入力される。
ガンマ補正部22は、入力されたC(256)信号に対して、ガンマテーブル記憶部21に記憶されているガンマ補正テーブルに基づいてガンマ補正を実行する。すなわち、ガンマ補正部22は、C(256)信号に対する補正値をガンマテーブル記憶部21のガンマ補正テーブルから取得することにより出力の直線性を得る。この結果として、ガンマ補正されたC’(256)信号が得られる。このようにして求められたC’(256)信号は2値化処理部36に入力される。
2値化処理部36は、ガンマ補正部22からのガンマ補正後の色信号(C’(256)信号)、閾値変動量決定部104からのカレント変動量Dsおよび変動調整量Daの値を基に、2値化処理を実行する。
2値化処理部では、まずディザ閾値記憶部23に記憶されているディザ閾値Tを取得する。このディザ閾値Tは着目画素の位置情報に対応する位置に配列されている値を取得する。このディザ閾値に対して、ディザ閾値変動量(カレント変動量Dsおよび変動調整量Da)を用いて閾値を変動させる。
具体的には、変動後のディザ閾値をT’とした場合、このディザ閾値T’は(数6)の式を演算することにより求めることができる
この(数6)の式からも分かるように、カレント変動量Ds及び変動調整量Daの各値に応じて変動するディザ閾値T’は、通常のディザ閾値Tよりも小さくなる。変動調整量Daは、特に強度の高いエッジが同方向に連続する場合には1.0の値に近づくが、エッジ強度が弱い場合やエッジ方向が連続しない場合は0に近づく値である。そのため、変動調整量Daが0に近づく値であった場合には、ディザ閾値の変化量((1−Ds)^Da)は少なくなる。
ところで、2値化処理部36は、ガンマ補正が行われたC’(256)信号に基づく画素レベルと変動後のディザ閾値T’とを比較し、この比較した結果、C’(256)信号≧ディザ閾値T’の関係が成立する場合にはONとし、一方、C’(256)信号<ディザ閾値T’の関係が成立する場合はOFFとする2値化出力を得る。
このようにして2値化が行われた場合には、エッジ強度Esがより強い部分は、ディザ閾値Tの低下が大きくなり、この結果としてディザ閾値T’が小さくなるため、画素が現れやすくなり、さらに同方向にエッジが連続するときにはディザ閾値Tの低下が大きくなり、この結果としてディザ閾値T’が小さくなるため、直線に対して特に画素が現われやすくなる。
なお、この実施の形態では、閾値変動量決定部104の出力であるカレント変動量Ds及び変動調整量Daを用いてディザ閾値を変動させることによりエッジの画素再現を良くなるようにしたが、本発明はこれに限定されることなく、カレント変動量Ds及び変動調整量Daを画素レベルに作用させた後、当該画素レベルとディザ閾値Tとを比較し、この比較した結果に基づいて2値化することにより画素再現を良くするようにすることができる。
具体的には、図8において、カレント変動量決定部(第1の変動量決定手段)35は、エッジ強度検出部(検出手段)32が検出したエッジ強度に応じて画素値変動量(カレント変動量)Dsを求める機能を有し、変動調整量決定部(第2の変動量決定手段)34は、エッジ方向検出部(検出手段)33が検出したエッジ方向の画素に対応する画素値変動量(変動調整量)Daを求める機能を有するものとする。
2値化処理部36は、ガンマ補正された後の256階調画像信号(M値画像信号)とカレント変動量決定部(第1の変動量決定手段)35が求めた画素変動量Ds及び変動調整量決定部(第2の変動量決定手段)34が求めた画素変動量Daとに基づいて新しい画素
値を求め、この新しい画素値とディザ閾値記憶部23の記憶内容から取得したディザ閾値Tとに基づいて256階調画像をN値化する。
ここで、画素値Gに対する変動後の新しい画素値G’は、(数7)の式を演算することにより求めることができる。
そして、2値化処理部36は、この(数7)の式を演算して求めた画素値G’とディザ閾値Tとを比較し、この比較した結果、画素値G’≧ディザ閾値Tの関係が成立する場合にはON、画素値G’<ディザ閾値T’の関係が成立する場合はOFFとする2値化出力を得る。
また、この実施の形態では、1画素に対して1つのディザ閾値を変動させて2値化するようにしたが、本発明はこれに限定されることなく、1つの画素に対して複数のディザ閾値を持たせ、各ディザ閾値をそれぞれ変動させてn個の階調値を持たせるn値化とするようにしても良い。
さらに、この実施の形態において、画像処理装置は、専用のハードウェアを用いて実現することが出来るが、一般的なCPU(中央演算処理装置)とROMやRAMなどの記憶装置とにより構成して同じ処理を実現することも可能である。
この場合、色信号処理部及び閾値変動量決定部の機能を実現し、当該処理の処理手順を示すプログラムを例えばROMに格納しておき、CPUが、このプログラムをこのROMから主記憶装置(RAM)へローディングして実行するようにする。
さらに、この実施の形態では、プリンタエンジンは電子写真を用いたカラープリンタについて説明しているが、プリンタエンジンは必ずしも電子写真を用いたものでなくても構わない。