(57)【特許請求の範囲】
【請求項１】
描画コマンドに対する処理を行う画像処理装置において、予め決められたモアレが生じる描画コマンドあるいは描画コマンド列を置換対象コマンドとして検出する検出手段と、該検出手段で検出された置換対象コマンドの全部または一部について描画コマンドあるいは描画コマンド列に置換する置換手段を有し、前記置換手段は、黒以外の色情報の場合は、置換する描画コマンドあるいは描画コマンド列を該描画コマンドあるいは描画コマンド列で描画されるパターンの各矩形のサイズを小さくすることにより前記パターンの周期を細かくした描画コマンドあるいは描画コマンド列に変更し、黒色の色情報の場合は、置換する描画コマンドあるいは描画コマンド列を菱形の連続パターンを用いる描画コマンドあるいは描画コマンド列に変更することを特徴とする画像処理装置。
【請求項２】
前記検出手段が検出する前記置換対象コマンドは、あるオブジェクトを半透明にする機能により出力されたものであることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記検出手段が検出する前記置換対象コマンドは、特定色の排他論理和を指示する描画コマンド、市松パターンの論理積を指示する描画コマンド、特定色の排他論理和を指示する描画コマンドの順の描画コマンド列であることを特徴とする請求項１または請求項２に記載の画像処理装置。
【請求項４】
コンピュータに、描画コマンドに対する処理を実行させる画像処理プログラムであって、請求項１ないし請求項３のいずれか１項に記載の画像処理装置の機能をコンピュータに実行させることを特徴とする画像処理プログラム。
【請求項５】
描画コマンドに対する処理をコンピュータに実行させる画像処理プログラムを格納したコンピュータ読取可能な記憶媒体において、請求項１ないし請求項３のいずれか１項に記載の画像処理装置の機能をコンピュータに実行させる画像処理プログラムを格納したことを特徴とするコンピュータが読取可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、描画コマンドに従って描画された画像に対して施すスクリーン処理に伴うモアレの発生を低減するために、描画コマンドに対して行う画像処理技術に関するものである。
【背景技術】
【０００２】
一般に、各種のアプリケーションソフトウェアなどで作成された画像を画像形成装置などで出力する場合には、オペレーティングシステムなどから描画コマンドの列として出力される。その描画コマンドに従って描画処理を行い、多値のビットマップ画像を生成し、その多値のビットマップ画像に対してスクリーン処理を施す。このスクリーン処理では、カラー画像の場合には３または４色の色成分毎に擬似中間調画像を形成する。この色成分毎の擬似中間調画像が画像形成エンジンに渡され、それぞれの色成分に対応した色材を用いて画像が形成され、それらが重ね合わされてカラー画像が形成されることになる。
【０００３】
このようにスクリーン処理によって色成分毎に擬似中間調画像を作成し、それらの擬似中間調画像を重ね合わせるため、それぞれの擬似中間調画像に周期性が存在するとモアレが発生する。画像形成エンジンとして電子写真方式を用いる場合には、スクリーン処理としてＡＭ変調により擬似中間調画像を形成する場合が多く、モアレが発生しやすいという傾向がある。通常はスクリーン角度をそれぞれの色成分毎に異ならせることによって回避している。
【０００４】
しかし、ある特定の模様を描画する場合に限って、モアレが目立つ場合がある。このような場合のモアレを低減する一つの方法として、ビットマップ画像を対象にパターンマッチングを行って該当する模様を検出して対処することが考えられる。しかし、ビットマップ画像を処理対象とすることは、多くの処理時間を必要とし、またハードウェアで構成する場合にはさらにコストアップにつながる。
【０００５】
例えば特許文献１では、ビットマップ画像を処理対象として、画像信号と特殊な関数を用いてモアレの有無を判別し、必要に応じてＧＣＲ／ＵＣＲ調整を行うことで、モアレを低減する技術が記載されている。この技術においてもビットマップ画像を処理対象としているため、処理時間がかかる。また、一旦ＧＣＲ／ＵＣＲを施したビットマップ画像からＧＣＲ／ＵＣＲの調整を行うため、繰り返しの処理が必要となり、さらに処理時間がかかるという問題がある。
【０００６】
このような問題に対して、ビットマップ画像に展開する前の描画コマンドについて、予め決められたモアレが生じる描画コマンドあるいは描画コマンド列を置換対象コマンドとして検出し、その検出された置換対象コマンドの全部または一部について、モアレを低減できる描画コマンドあるいは描画コマンド列に置換することが考えられている。より具体的には、特に半透明処理により重ね合わせるオブジェクトのパターンが特定のパターンであるとき、モアレを生じやすい。そのため、その特定のパターンをより細かいパターンに置き換える。これによって、描画コマンドを展開したビットマップ画像に対してスクリーン処理を施した際に、モアレの周期を短くして、モアレを見た目では分からない程度に抑制することができる。
【０００７】
しかし、置換された描画コマンドあるいは描画コマンド列によって描画処理を行うと、描画する画像によっては濃度が変わったり、描画したはずの図形が消失してしまうという問題が新たに発生する場合があった。これは、置換後の描画コマンドのパターン形状とスクリーンのパターン形状が一致することにより発生する。図１０は、描画パターンとスクリーン形状による濃度変化の一例の説明図である。図１０に示したいずれの例も、描画パターンは４×４画素のうち左上と右下の２×２画素が黒、左下と右上の２×２画素が白の市松パターンを示している。この描画パターンを並べて画像を形成すれば、５０％の濃度のグレーの画像が形成されることになる。
【０００８】
このような描画パターンに対して、傾きが４５°のスクリーンをかける例を示している。このスクリーン形状が図示のようなパターンであり、ハッチングを施した画素は描画パターンを反映して画像を形成し、白抜きの画素は描画パターンにかかわらず形成しないものとする。このとき、描画パターンとスクリーンのパターンの位置により図１０（Ａ）〜（Ｃ）のような場合が現れる。すなわち、図１０（Ａ）に示したように描画パターンの黒く描画すべき画素位置とスクリーンの描画パターンを反映する画素とが一致すれば、描画結果として描画パターンがそのまま現れる。そのため、所望の５０％の濃度のグレーの画像が形成されることになる。
【０００９】
しかし、図１０（Ｂ）に示すように描画パターンとスクリーン形状とが１画素ずれると、描画パターンの黒の画素のうち半分しか描画結果に現れず、２５％の濃度しか得られない。さらに図１０（Ｃ）に示すように双方がさらに１画素ずれると、描画パターンの黒の画素はいずれも描画結果に反映されず、従って描画パターンは消失してしまう。
【００１０】
このように、モアレの発生を抑えるために置換した描画コマンドのパターンによって、濃度の低下や描画パターンの消失という、別の問題が発生していた。特に上述のように描画パターンをより細かいパターンに置換した場合、このような問題が発生しやすい。現状ではフルカラーの写真やグラフィックスではスクリーン線数よりも解像度が低いため、濃度の低下や描画パターンの消失などの不具合は発生しにくい。しかし描画パターンをより細かいパターンに置換することによって、描画パターンがスクリーン線数に近い、あるいは同じ解像度となってしまう。そのために上述の濃度の低下や描画パターンの消失という問題が発生すると考えられる。さらに、上述のような半透明処理などでは、描画パターンは市松パターンが多いが、スクリーン角度が４５°近辺であると図１０にも示したようにスクリーン形状も市松パターンとなり、互いの位置関係が描画結果に反映されやすくなってしまう。
【００１１】
【特許文献１】特開２０００−１５２０１９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明は、上述した事情に鑑みてなされたもので、特定の描画パターンによるモアレを目立たなくするとともに、濃度の低下や描画パターンの消失を抑えた画像処理装置、画像処理プログラムと、そのような画像処理プログラムを格納した記憶媒体を提供することを目的とするものである。
【課題を解決するための手段】
【００１３】
本発明では、ビットマップ画像に展開する前の描画コマンドに対して処理を施すことによって、特定の模様によるモアレを抑制することを特徴としている。より具体的には、予め決められたモアレが生じる描画コマンドあるいは描画コマンド列を置換対象コマンドとして検出し、その検出された置換対象コマンドの全部または一部について、モアレを低減できる描画コマンドあるいは描画コマンド列に置換する。これによって、描画コマンドを展開したビットマップ画像に対してスクリーン処理を施した際に、モアレの発生を抑制することができる。
【００１４】
モアレが発生する特定の模様としては、あるオブジェクトを半透明にする機能により出力された描画コマンドがある。このような描画コマンドは、例えば特定色の排他論理和を指示する描画コマンド、市松パターンの論理積を指示する描画コマンド、特定色の排他論理和を指示する描画コマンドの順の描画コマンド列で構成される場合が多い。この描画コマンド列の中の市松パターンが、後に行われるスクリーン処理との関係で特定のパターン周期であるとき、モアレが生じやすい。また、半透明の機能以外でも、例えばハーフトーンの描画を行った場合や意図的に市松パターンを用いた場合などのように、市松パターンの描画を指定した描画コマンドにおいても、その市松パターンとスクリーン処理との関係でモアレが生じる場合がある。従って、市松パターンが特定のパターン周期であるとき、置換対象コマンドとして検出し、その市松パターンを他のパターンに置換する。
【００１５】
このようなパターンの置換によってモアレの発生を抑えることができるものの、すべての色について一律にパターンの置換を行ってしまうと、スクリーン角度、スクリーン形状との関係から、特定の色については濃度の低下や描画パターンの消失などの問題が発生する。この問題を解消するため、本発明では色情報に応じて描画コマンドあるいは描画コマンド列の置換を変更することを特徴としている。例えばグレーを含む黒については、文字や線画を良好に再現するため４５°のスクリーンを用いることが多く、この場合のスクリーン形状は市松パターンに類似した形状となる。そのため、描画コマンドあるいは描画コマンド列により描画される市松パターンとの位置関係から濃度の低下や描画パターンの消失などの問題が発生しやすい。このような場合に、グレーを含む黒については、置換する描画コマンドあるいは描画コマンド列を菱形の連続パターンを用いる描画コマンドあるいは描画コマンド列に変更している。また、黒以外の色情報の場合は、置換する描画コマンドあるいは描画コマンド列を該描画コマンドあるいは描画コマンド列で描画されるパターンの各矩形のサイズを小さくすることにより前記パターンの周期を細かくした描画コマンドあるいは描画コマンド列に変更している。これらによって、濃度の低下や描画パターンの消失などの問題を回避することができる。
【発明の効果】
【００１７】
本発明によれば、描画コマンドに対する処理によって、見かけ上のモアレを軽減することができるとともに、濃度の低下や描画パターンの消失などの問題を回避することができるという効果がある。このとき、処理対象を描画結果であるビットマップ画像ではなく、描画コマンドとしたことによって、処理時間を格段に短縮でき、また、その処理も非常に容易である。また、描画した画像に対する処理を変更せずに、モアレの軽減と、濃度低下や描画パターンの消失を回避することができる。
【発明を実施するための最良の形態】
【００１８】
図１は、本発明の実施の一形態を示すブロック図である。図中、１は置換対象コマンド検出部、２は描画コマンド置換部である。置換対象コマンド検出部１は、予め決められたモアレが生じる描画コマンドあるいは描画コマンド列を置換対象コマンドとして検出する。
【００１９】
描画コマンド置換部２は、置換対象コマンド検出部１で検出された置換対象コマンドの全部または一部について、モアレを低減できる描画コマンドあるいは描画コマンド列に置換する。このとき、色情報に応じて置換する描画コマンドあるいは描画コマンド列を変更するか、あるいは、特定の色については置換を行わないようにする。または、置換後の描画コマンドあるいは描画コマンド列により描画されるパターンがスクリーン形状と略一致するとき、置換する描画コマンドあるいは描画コマンド列を変更するか、あるいは置換しない。
【００２０】
この描画コマンド置換部２で適宜置換された描画コマンドは、図示しない描画部によって描画処理が行われ、ビットマップ画像となる。描画処理前に、一旦、中間コードに変換してから描画処理が行われる場合もある。描画されたビットマップ画像は、色変換や各種の処理が行われた後、スクリーン処理が施されて各色成分毎の擬似中間調画像に変換され、画像形成エンジンに渡されて実際に画像が形成される。この後段で行われるスクリーン処理でモアレが発生しないように、描画コマンドあるいは描画コマンド列の置換を行うが、スクリーン処理は画像形成エンジンにおいて用いる色材色ごとに異なる角度のスクリーンを施す。そのため、描画コマンドあるいは描画コマンド列の置換を一律に行ってしまうと、置換された描画コマンドあるいは描画コマンド列で描画されるパターンと特定の色材色のスクリーン形状とが略一致した場合、図１０に示したような濃度低下や描画パターンの消失が発生してしまう。そのため、本発明の描画コマンド置換部２では、色情報に応じて置換する描画コマンドあるいは描画コマンド列を変更することにより、描画されるパターンとスクリーン形状とが一致しないようにして、濃度の低下や描画パターンの消失を防止している。この描画コマンドあるいは描画コマンド列の変更は、置換後の描画コマンドによって描画されるパターンとスクリーン形状とが略一致するような特定の色について行えばよい。もちろん、それぞれの色材色に対応した描画コマンドあるいは描画コマンド列に置換してもよい。あるいは、置換後の描画コマンドによって描画されるパターンとスクリーン形状とが略一致するような特定の色については置換を行わないようにしてもよい。
【００２１】
図１０で説明したような濃度低下や描画パターンの消失などの不具合は、特にグレーを含む黒において発生しやすい。これは、後述するようにモアレが発生しやすい描画パターンが市松パターンであり、さらに黒に対応するスクリーンとして、文字や線画のエッジをなるべく高画質で再現するため、高線数の４５°の角度のスクリーンを用いることが多く、この場合のスクリーン形状が市松パターンとなることによる。
【００２２】
しかし、それぞれの色材色に対応して用いられるスクリーンは予めわかっているので、上述のように置換後の描画コマンドあるいは描画コマンド列によって描画されるパターンとスクリーン形状とが略一致するか否かは、ある程度予測可能である。従って、置換後の描画コマンドあるいは描画コマンド列によって描画されるパターンとスクリーン形状とが略一致する色について、置換する描画コマンドあるいは描画コマンド列を変更することによって、モアレを低減するとともに、濃度低下や描画パターンの消失を回避することができる。もちろん、そのような色について置換を行わないことによっても、濃度低下や描画パターンの消失については回避することができる。
【００２３】
以下、具体例を用いながら本発明の実施の一形態の動作について説明してゆく。図２は、描画図形及び描画コマンドの一具体例の説明図である。以下の説明で用いる具体例では、図２（Ａ）に示すように図形（ア）の上に、図形（イ）を半透明の指定で描画した場合について説明してゆく。このような半透明の指定を行って図形の描画を行った場合、図形（イ）を描画するための描画コマンドとして、図２（Ｂ）に（ａ）〜（ｃ）として示す３つの描画コマンドが出力されるものとする。すなわち、図形（イ）を排他論理和（ＥｘＯＲ）による論理演算（ＲＯＰ）を行って描画する描画コマンド（ａ）、市松パターンを用いて論理積（ＡＮＤ）による論理演算を行って描画する描画コマンド（ｂ）、図形（イ）を排他論理和（ＥｘＯＲ）による論理演算を行って描画する描画コマンド（ｃ）の３つである。描画コマンド（ｂ）における市松パターンの黒の部分で描画コマンド（ａ）、（ｃ）によって描画する図形が実際に描画され、白の部分で下地の図形や背景がそのまま残る。従って、これらの描画コマンドを順に実行することによって、図形（イ）が描画された部分ではあたかも図形（ア）や背景が透けて見えているかのような描画結果を得ることができる。
【００２４】
なお、図２（Ｂ）に示す３つの描画コマンド（ａ）〜（ｃ）は、図２（Ｃ）に示すように図形（イ）を市松パターンとして描画することと等価である。従って、３つの描画コマンド（ａ）〜（ｃ）を、図２（Ｃ）に示すような市松パターンとして描画する描画コマンド（ｄ）に変換することができる。
【００２５】
描画コマンド（ｂ）及び（ｄ）は周期的なパターンであるため、描画コマンドに従って描画処理を行った後にスクリーン処理を行うと、モアレが生じるおそれがある。モアレが発生するか否かは、スクリーンの角度や線数、スクリーン処理方法などと、市松パターンのパターン周期との関係に依存している。使用するスクリーン処理に応じて、描画コマンド（ｂ）または描画コマンド（ｄ）がモアレが生じるか否か、あるいはモアレが生じる市松パターンのパターン周期を求めておき、モアレが生じる市松パターンを、予め取得しておく。このような市松パターンを描画する描画コマンド（例えば描画コマンド（ｂ）あるいは図２（Ｂ）に示す３つの描画コマンド、または、描画コマンド（ｄ）など）を、置換対象コマンド検出部１で置換対象コマンドとして検出する描画コマンドとする。
【００２６】
図３は、描画コマンド置換部で置換する描画コマンドの一例の説明図である。ここでは図２（Ｃ）に示す描画コマンド（ｄ）の市松パターンを置換対象コマンド検出部１で置換対象コマンドとして検出した場合について示している。描画コマンド置換部２は、置換描画コマンドが描画に用いる市松パターンについて、例えばパターン周期を変更した市松パターンに置き換える。より具体的には、図３（Ａ）における各矩形のサイズｐが４画素のとき、図３（Ｂ）における各矩形のサイズｐ’を２画素とした市松パターンとすることができる。
【００２７】
図３に示した例では、より細かいパターン周期の市松パターンに置き換えた例を示している。図３（Ａ）に示した市松パターンが置換対象コマンド内の市松パターンであるとき、これを図３（Ｂ）に示すように、より細かい市松パターンとした描画コマンドに置き換える。このように、より細かい市松パターンに置き換えることによって、スクリーン処理により発生するモアレの周期を短くして、モアレを見た目では分からない程度まで抑えることができる。また、もともとの半透明処理による効果はほとんど変わらず、下地の画像が透けて見えるような描画効果を得ることができる。
【００２８】
なお、図３（Ｃ）には図３（Ａ）に示した市松パターンを反転したパターンを示しており、このようなパターンの場合にも、図３（Ｄ）に示すように、より細かい市松パターンとした描画コマンドに置き換える。例えば図３（Ｅ）に示すように、半透明処理が指定された２つの図形を重ねて描画する場合には、一方の図形において例えば図３（Ａ）に示すような市松パターンが使用されると、他方の図形においては図３（Ｃ）に示すような反転した市松パターンが使用され、両者の図形とも半透明の効果を得ることができる。このような場合に、図３（Ａ）に示す市松パターンは図３（Ｂ）に示す市松パターンに、また図３（Ｃ）に示す市松パターンは図３（Ｄ）に示す市松パターンに、それぞれ置換することによって、それぞれの半透明処理の効果をそのままに、モアレを目立たなくすることができる。
【００２９】
しかし、上述のように例えば黒に対応するスクリーンとして高線数の４５°のスクリーンを用いていると、黒の市松パターンの描画を行う描画コマンドについて細かいパターン周期の市松パターンに置換した場合に両者のパターンが略一致してしまう場合がある。このような場合には、モアレを低減できるものの濃度の低下や描画パターンの消失が発生する可能性がある。そのため、このような不具合の発生が予測される場合には、別のパターンを描画する描画コマンドへの置換を行う。これによって、モアレの低減と、濃度低下や描画パターンの消失の回避を両立させることができる。
【００３０】
図４は、描画コマンド置換部で置換する描画コマンドの別のパターンの例の説明図である。図４（Ａ）に示した置換対象コマンド中の市松パターンについて変更するパターンとしては、例えば図４（Ｂ）に示すように、菱形の連続パターンに変更したり、さらに大きさも異ならせて図４（Ｃ）に示すようなパターンに変更してもよい。逆に、通常の置換パターンを図４（Ｂ）や（Ｃ）に示したパターンとすることもできる。この場合には０°や９０°のスクリーンとの関係で濃度低下や描画パターンの消失が発生する可能性があり、市松パターンへ変更することによりこれらの不具合を回避することが可能である。
【００３１】
もちろん、通常の置換後のパターンや変更後のパターンは任意であり、それぞれの色のスクリーンの線数や角度との関係から決定すればよい。いずれのパターンも、描画する部分と透過させる部分の面積が置換前と同じであれば、例えば半透明処理の効果もほぼ同様に得ることができ、またハーフトーンなどの濃度もほぼ保つことができる。
【００３２】
また、ある色において置換後のパターンがスクリーン形状と略一致する場合に、上述のようにパターンを変更するほか、描画コマンドの置換を行わないように構成することもできる。この場合でも、他の色については描画コマンドの置換を行うことによりモアレの低減を図ることができ、当該色については描画コマンドの置換による濃度低下や描画パターンの消失を回避することができる。
【００３３】
図５は、本発明の実施の一形態における動作の一例を示すフローチャートである。ここでは、グレーを含む黒の描画パターンについて、通常の置換時とは異なるパターンに置換する場合の動作の一例を示している。また、置換パターンとして図３に示した２つの置換パターンを用いるものとし、変更する場合の置換パターンとして、図４（Ｃ）に示すパターンとその反転パターンを用いるものとしている。
【００３４】
置換対象コマンド検出部１は、Ｓ１１において、描画コマンドがパターンを含むものであるか否かを判断し、パターンを含まなければ置換対象コマンドではないとして、その描画コマンドに対する描画コマンド置換部２による置換処理は行わない。
【００３５】
パターンを含む描画コマンドである場合には、Ｓ１２において、描画パターンがグレーを含む黒のパターンであるか否かを判定する。他の色のパターンであれば、続いてＳ１３において、描画コマンドに含まれるパターンが図３（Ａ）に示す市松パターンであるかを判定し、またＳ１５において、同じく図３（Ｃ）に示す市松パターンであるかを判定する。描画コマンドに含まれるパターンが図３（Ａ）に示す市松パターンである場合には、Ｓ１４において図３（Ｂ）に示す細かい市松パターンに置換する。また、描画コマンドに含まれるパターンが図３（Ｃ）に示す市松パターンである場合には、Ｓ１６において図３（Ｄ）に示す細かい市松パターンに置換する。いずれのパターンでもない場合には、その描画コマンドに対する描画コマンド置換部２による置換処理は行わない。
【００３６】
また、描画パターンがグレーを含む黒のパターンである場合には、続いてＳ１７において、描画コマンドに含まれるパターンが図３（Ａ）に示す市松パターンであるかを判定し、またＳ１９において、同じく図３（Ｃ）に示す市松パターンであるかを判定する。描画コマンドに含まれるパターンが図３（Ａ）に示す市松パターンである場合には、Ｓ１８において例えば図４（Ｃ）に示すようなパターンなど、図３（Ｂ）とは異なるパターンに変更して描画コマンドの置換を行う。また、描画コマンドに含まれるパターンが図３（Ｃ）に示す市松パターンである場合には、Ｓ２０において、例えば図４（Ｃ）を反転したパターンなど、図３（Ｄ）とは異なるパターンに変更して描画コマンドの置換を行う。いずれのパターンでもない場合には、その描画コマンドに対する描画コマンド置換部２による置換処理は行わない。
【００３７】
このようにして、図３（Ａ）、（Ｃ）に示す市松パターンを用いた描画が指定された描画コマンドについて、黒以外の色については図３（Ｂ）、（Ｄ）に示す細かい市松パターンを用いた描画を行う描画コマンドに置換し、黒の場合には図４（Ｃ）あるいはその反転パターンを用いた描画を行う描画コマンドに置換する。上述のような処理を、それぞれの描画コマンドに対して行い、置換対象コマンドに対してパターンの置換を行うことによって、後に行われるスクリーン処理によって発生するモアレを目立たなくするとともに、パターンの置換によって発生する濃度低下や描画パターンの消失を回避することができる。このような処理は、ビットマップ画像を対象とした従来の技術に比べて格段に短時間で行うことができ、また、処理も非常に簡単である。
【００３８】
図６は、本発明の実施の一形態における動作の別の例を示すフローチャートである。ここでは、グレーを含む黒の描画パターンについてはパターンの置換を行わない場合の動作の一例を示している。この例では、Ｓ１２において、描画パターンがグレーを含む黒のパターンであると判定された場合に、描画コマンドに対する描画コマンド置換部２による置換処理を行わないで終了する。これによって、パターンの置換を行ったときにスクリーンとの関係で発生する濃度低下や描画パターンの消失を回避することができる。
【００３９】
上述の説明では、例えば図２で説明したような半透明の処理を行う場合について説明した。しかしこのような半透明の処理以外でも、例えばハーフトーンの描画を行った場合や意図的に市松パターンを用いた場合などのように、市松パターンの描画を指定した描画コマンドが渡される場合もある。そのような場合も同様に置換対象コマンドとして置換対象コマンド検出部１で検出し、描画コマンド置換部２で描画コマンドの置き換えを行い、また置換した後のパターンがスクリーン形状と略一致するような特定色のパターンの場合には置換するパターンを変更し、あるいは置換を行わないことによって、スクリーン処理に起因して発生するモアレを目立たなくするとともに、置換処理で発生する濃度低下や描画パターンの消失を回避することができる。
【００４０】
図７は、本発明による画像処理の応用例を示すブロック図である。図中、２１はコンピュータ、２２はプリンタ、３１はプリンタドライバ、３２は画像処理部、４１は描画部、４２はスクリーン処理部、４３はプリンタエンジンである。図７ではコンピュータ２１からプリンタ２２へ描画コマンドを送り、プリンタ２２で画像を形成する場合の例を示している。なお、コンピュータ２１及びプリンタ２２とも、一部の構成のみを示している。
【００４１】
描画コマンドを送り出すコンピュータ２１側には、一般に、使用するプリンタ２２に対応するプリンタドライバ３１が組み込まれ、利用される。このプリンタドライバ３１に、本発明の画像処理を行う画像処理部３２を含めておくことができる。プリンタドライバ３１では、アプリケーションプログラムやオペレーティングシステムなどから渡される描画コマンドについて、画像処理部３２によって適宜描画コマンドの置換を行い、プリンタ２２に対して描画コマンドを送出する。
【００４２】
プリンタ２２では、コンピュータ２１から受け取った描画コマンドを解釈し、その描画コマンドに従って描画部４１で描画処理を行ってビットマップ画像を生成する。そしてスクリーン処理部４２でビットマップ画像に対してスクリーン処理を施して色成分毎の擬似中間調画像を生成し、プリンタエンジン４３で各色成分に対応した色材を用いて各擬似中間調画像を重ね合わせ、用紙等の媒体上に画像を形成する。スクリーン処理を行っても、コンピュータ２１から送られてくる描画コマンドに対して画像処理部３２において本発明による画像処理を行っているので、モアレはほとんど目立たず、また濃度低下や描画パターンの消失なども発生せず、良好な画質の画像を得ることができる。
【００４３】
図８は、本発明による画像処理の別の応用例を示すブロック図である。図中、図７と同様の部分には同じ符号を付している。４４は画像処理部である。この例では、本発明の画像処理を行う画像処理部４４をプリンタ２２側に設けた例を示している。
【００４４】
このような構成では、プリンタ２２がコンピュータ２１から描画コマンドを受け取ると、画像処理部４４において、上述のようにして適宜描画コマンドの置換を行い、描画部４１へ描画コマンドを渡す。描画部４１は、適宜置換された描画コマンドに従って描画処理を行い、ビットマップ画像を生成する。そしてスクリーン処理部４２でビットマップ画像に対してスクリーン処理を施して色成分毎の擬似中間調画像を生成し、プリンタエンジン４３で画像を形成する。この具体例においても、スクリーン処理を行ってもモアレはほとんど目立たず、また濃度低下や描画パターンの消失なども発生せず、良好な画質の画像を得ることができる。
【００４５】
図９は、本発明の画像処理装置の機能または画像処理方法をコンピュータプログラムで実現した場合におけるコンピュータプログラムおよびそのコンピュータプログラムを格納した記憶媒体の一例の説明図である。図中、５１はプログラム、５２はコンピュータ、６１は光磁気ディスク、６２は光ディスク、６３は磁気ディスク、６４はメモリ、７１は光磁気ディスク装置、７２は光ディスク装置、７３は磁気ディスク装置である。
【００４６】
上述の各実施の形態で説明した構成の一部または全部を、コンピュータにより実行可能なプログラム５１によって実現することが可能である。例えば上述の図７に示した応用例における画像処理部３２はプログラムにより実現することができるし、図８に示した応用例における画像処理部４４についても、プリンタ２２内のプログラムにより実現することができる。このようにプログラムで実現される場合、そのプログラム５１およびそのプログラムが用いるデータなどは、コンピュータが読み取り可能な記憶媒体に記憶することも可能である。記憶媒体とは、コンピュータのハードウェア資源に備えられている読取装置に対して、プログラムの記述内容に応じて、磁気、光、電気等のエネルギーの変化状態を引き起こして、それに対応する信号の形式で、読取装置にプログラムの記述内容を伝達できるものである。例えば、光磁気ディスク６１，光ディスク６２（ＣＤやＤＶＤなどを含む）、磁気ディスク６３，メモリ６４（ＩＣカード、メモリカードなどを含む）等である。もちろんこれらの記憶媒体は、可搬型に限られるものではない。
【００４７】
これらの記憶媒体にプログラム５１を格納しておき、例えばコンピュータ５２の光磁気ディスク装置７１，光ディスク装置７２，磁気ディスク装置７３，あるいは図示しないメモリスロットにこれらの記憶媒体を装着することによって、コンピュータからプログラム５１を読み出し、本発明の画像処理装置の機能または画像処理方法を実行することができる。あるいは、あらかじめ記憶媒体をコンピュータ５２に装着または内蔵しておき、例えばネットワークなどを介してプログラム５１をコンピュータ５２に転送し、記憶媒体にプログラム５１を格納して実行させてもよい。もちろん、一部の機能についてハードウェアによって構成することもできるし、あるいは、すべてをハードウェアで構成してもよい。
【図面の簡単な説明】
【００４８】
【図１】本発明の実施の一形態を示すブロック図である。
【図２】描画図形及び描画コマンドの一具体例の説明図である。
【図３】描画コマンド置換部で置換する描画コマンドの一例の説明図である。
【図４】描画コマンド置換部で置換する描画コマンドの別のパターンの例の説明図である。
【図５】本発明の実施の一形態における動作の一例を示すフローチャートである。
【図６】本発明の実施の一形態における動作の別の例を示すフローチャートである。
【図７】本発明による画像処理の応用例を示すブロック図である。
【図８】本発明による画像処理の別の応用例を示すブロック図である。
【図９】本発明の画像処理装置の機能または画像処理方法をコンピュータプログラムで実現した場合におけるコンピュータプログラムおよびそのコンピュータプログラムを格納した記憶媒体の一例の説明図である。
【図１０】描画パターンとスクリーン形状による濃度変化の一例の説明図である。
【符号の説明】
【００４９】
１…置換対象コマンド検出部、２…描画コマンド置換部、２１…コンピュータ、２２…プリンタ、３１…プリンタドライバ、３２…画像処理部、４１…描画部、４２…スクリーン処理部、４３…プリンタエンジン、４４…画像処理部、５１…プログラム、５２…コンピュータ、６１…光磁気ディスク、６２…光ディスク、６３…磁気ディスク、６４…メモリ、７１…光磁気ディスク装置、７２…光ディスク装置、７３…磁気ディスク装置。
【図１】
0004702533.tif 000002
【図２】
0004702533.tif 000003
【図３】
0004702533.tif 000004
【図４】
0004702533.tif 000005
【図５】
0004702533.tif 000006
【図６】
0004702533.tif 000007
【図７】
0004702533.tif 000008
【図８】
0004702533.tif 000009
【図９】
0004702533.tif 000010
【図１０】
0004702533.tif 000011