(57)【特許請求の範囲】
【請求項１】
多値画像内のスムージング対象である画像要素とスムージング対象でない画像要素とを区別した２値化画像を生成する２値画像生成部と、
前記２値化画像にスムージング処理を行ってスムージング画像信号を生成し、前記多値画像の画素値に基づいて、前記スムージング画像信号を調節するスムージング部と、
前記多値画像のすべての画素にハーフトーニング処理を行ってハーフトーン画像信号を出力するハーフトーニング部と、
前記調節されたスムージング画像信号と前記ハーフトーン画像信号とを組み合わせて最終的な画像信号を出力する出力部と
を備えた多値画像のスムージング装置。
【請求項２】
前記２値画像生成部が、前記多値画像内のスムージング対象である画像要素を指定した属性データに基づいて前記２値画像を生成する請求項１記載のスムージング装置。
【請求項３】
前記スムージング部が、前記多値画像内のスムージング処理による補正を施してよい領域と前記補正を施してはいけない領域とを指定した属性データに基づいて、前記いけない領域に前記補正が施されないように前記スムージング画像信号を生成する請求項１記載のスムージング装置。
【請求項４】
前記属性データが前記多値画像に含まれている請求項２又は３記載のスムージング装置。
【請求項５】
多値画像内のスムージング対象である画像要素とスムージング対象でない画像要素とを区別した２値化画像を生成する２値画像生成部と、
前記２値化画像にスムージング処理を行ってスムージング画像信号を生成し、前記多値画像の画素値に基づいて、前記スムージング画像信号を調節するスムージング部と、
前記多値画像のすべての画素にハーフトーニング処理を行ってハーフトーン画像信号を出力するハーフトーニング部と、
前記調節されたスムージング画像信号と前記ハーフトーン画像信号とを組み合わせて最終的な画像信号を出力する出力部と、
前記最終的な画像信号に基づいて前記多値画像を再生する画像形成部と
を備えた多値画像の形成装置。
【請求項６】
多値画像内のスムージング対象である画像要素とスムージング対象でない画像要素とを区別した２値化画像を生成するステップと、
前記２値化画像にスムージング処理を行ってスムージング画像信号を出力するステップと、
前記多値画像の画素値に基づいて、前記スムージング画像信号を調節するステップと、
前記多値画像のすべての画素にハーフトーニング処理を行ってハーフトーン画像信号を出力するステップと、
前記調節されたスムージング画像信号と前記ハーフトーン画像信号とを組み合わせて最終的な画像信号を出力するステップと
を有する多値画像のスムージング方法。
【請求項７】
多値画像内のスムージング対象である画像要素とスムージング対象でない画像要素とを区別した２値化画像を生成するステップと、
前記２値化画像にスムージング処理を行ってスムージング画像信号を出力するステップと、
前記多値画像の画素値に基づいて、前記スムージング画像信号を調節するステップと、
前記多値画像のすべての画素にハーフトーニング処理を行ってハーフトーン画像信号を出力するステップと、
前記調節されたスムージング画像信号と前記ハーフトーン画像信号とを組み合わせて最終的な画像信号を出力するステップと
を有する多値画像のスムージング方法を、コンピュータに行わせるためのプログラムを格納したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ビットマップ表現されたデジタル画像の表示又は印刷などを行う画像形成装置に関わり、特に、文字や図形の輪郭線を滑らかにするスムージング技術に関わる。
【０００２】
【従来の技術】
デジタル画像では、ビットマップ表現が用いられるため、文字や図形の輪郭線にジャギーと呼ばれるジグザグの凹凸が生じる。スムージングは、ジャギーをより微細な凹凸に補正して、輪郭線が人の目には滑らかな線として見えるように修正する技術である。
【０００３】
画像を構成する要素は、通常、文字や記号などの「キャラクタ」、線図やドロー画などの「グラフィックス」、及び写真やペイント絵画などの「自然画像」の３種に大別できる。これら３種の要素のうち、一般にスムージングが必要なものは「キャラクタ」と「グラフィックス」のように明確な輪郭線をもつ要素である。一方、「自然画像」は画像値が実質的に連続的に変化する要素であるから、スムージングを適用すると不自然な画像になってしまう。
【０００４】
キャラクタやグラフィックスは、典型的には２値画像データ（１色についての１画素値を１ビットワードで表現したデータ）で表現することができる。一方、自然画像は多値画像データ（１色について１画素値を複数ビット（例えば８ビット）ワードで表現したデータ）で表現する必要がある。こうした事情から、従来のスムージング技術は専ら２値画像データに対する処理として発展してきており、多値画像データに対しては、これを使用することができない。
【０００５】
【発明が解決しようとする課題】
しかし、多値画像データの形でキャラクタやグラフィックスが表現されていることは実際少なくない。カラー画像の場合、むしろ多値画像データの方が普通である。この種の画像の典型例は、自然画像上に文字やグラフィックスを重ね書きした画像である。このような多値画像にはスムージングを施すことができないので、キャラクタやグラフィックスのジャギーが目立ってしまう。一方、多値画像を一旦２値画像に落としてからスムージングを施すことは可能であるが、そうすると補正の不要な自然画像が崩れてしまうという副作用が生じてしまう。
【０００６】
従って、本発明の目的は、多値画像において、自然画像に影響を与えることなく、キャラクタやグラフィックスなどに選択的にスムージングが施せるようにすることにある。
【０００７】
【課題を解決するための手段】
本発明の第１の側面に従う多値画像のスムージング装置は、多値画像を２値化する２値化部と、この２値化部から出力される２値化画像にスムージング処理を行ってスムージング画像信号を出力するスムージング部と、前記多値画像にハーフトーニング処理を行ってハーフトーン画像信号を出力するハーフトーニング部と、前記スムージング画像信号と前記ハーフトーン画像信号とを組み合わせて最終的な画像信号を出力する出力部とを備える。このスムージング装置によれば、２値化部での２値化を適切に行うことによって、キャラクタやグラフィックスのようなスムージング対象と、自然画像のようなスムージング対象でない画像要素とを効果的に区別した２値画像を得ることができる。この２値画像にスムージング処理を行うことにより、スムージング対象だけにスムージングを施したスムージング画像信号を得ることができる。そして、このスムージング画像信号と、別途に多値画像をハーフトーニング処理して得たハーフトーニング画像信号とを組み合わせることで、自然画像は連続的な濃度で自然に、キャラクタやグラフィックスはジャギーのない鮮明な輪郭で再生できるような最終的な画像信号を得ることができる。
【０００８】
２値化の閾値としては、スムージング対象の画像要素とスムージング対象でない画像要素とを実質的に区別できるような値を用いるべきである。例えば、多値画像値の最大値近傍の値を閾値として用いることができる。また、対象の画像の状態やユーザの好みなどに応じて、閾値を可変できるようにしてもよい。
【０００９】
本発明の第２の側面に従う多値画像のスムージング装置は、多値画像内のスムージング対象である画像要素とスムージング対象でない画像要素とを区別した２値画像を生成する２値画像生成部と、その２値化画像にスムージング処理を行ってスムージング画像信号を出力するスムージング部と、前記多値画像にハーフトーニング処理を行ってハーフトーン画像信号を出力するハーフトーニング部と、前記スムージング画像信号と前記ハーフトーン画像信号とを組み合わせて最終的な画像信号を出力する出力部とを備える。このスムージング装置によれば、スムージング対象とそうでないものとを区別した２値画像に対してスムージングを行うことで、スムージング対象だけにスムージングを施したスムージング画像信号を得ることができる。そして、このスムージング画像信号と、別途に用意したハーフトーニング画像信号とを組み合わせることで、自然画像は自然に、そしてキャラクタやグラフィックスは鮮明な輪郭で再生できるような最終的な画像信号を得ることができる。
【００１０】
好適な実施形態では、多値画像内のスムージング対象である画像要素を指定した属性データに基づいて、上記のような２値画像を生成している。また、この属性データは、さらに、スムージング処理による補正を施してよい領域と補正を施してはいけない領域をも指定しており、この情報に基づいて、補正してはいけない領域にスムージングの補正が施されないようにスムージング画像信号を生成している。さらに、多値画像の画像値に基づいて、スムージング対象のもつ画像値がスムージング画像信号の示す画像値に反映されるようにスムージング画像信号を生成している。
【００１１】
本発明は専用ハードウェアによっても、コンピュータによっても、あるいはその組み合わせによっても実施することができる。また、プリンタのような１台の装置内でも、あるいはホストとこれに接続されたプリンタのような複数台の装置によっても実施することができる。コンピュータを用いる場合、そのコンピュータプログラムは、ディスク型ストレージ、半導体メモリおよび通信ネットワークなどの各種の媒体を通じてコンピュータにインストールまたはロードすることができる。
【００１２】
【発明の実施の形態】
図１は、ページプリンタに適用した本発明の一実施形態にかかるスムージング装置の全体構成を示す。
【００１３】
例えばＤＲＡＭであるページイメージメモリ１には、少なくとも１ページ分又は１ページを分割した１バンド分のビットマップイメージデータが格納されている。このビットマップマップイメージデータは、１色についての１画素値を８ビット（１バイト）ワードで表現した多値画像データである。カラー画像の場合、イメージデータは通常、３色または４色の色成分のプレーンのセットとして構成されるが、図１に示す構成は１色成分のプレーンを処理する構成である。当然、異なる色成分プレーンをシリアルに処理するならば、図１に示した装置が１つあればよいが、パラレルに処理するならば図１に示した装置が複数必要である。
【００１４】
ページイメージメモリ１内のイメージデータの各色成分の画素値は、１バイトワードであるから、２５６段階の分解能をもった０〜２５５の範囲内の濃度を示している。このイメージデータのソースデータは、通常、ページプリンタに接続されたホストから供給されるから、このイメージデータの各色成分の画素値はホストでどのようなイメージを作ったかによって決まる。しかし、実際上は、
（１）  自然画像の画素値：０〜２５４
（２）  キャラクタ及びグラフィックスの少なくとも１色成分の画素値：２５５
になっているケースは少なくない。本実施形態はこの点に着目してキャラクタ及びグラフィックスのスムージングを行うよう、以下の通り構成されている。
【００１５】
ページイメージメモリ１内のイメージの各画素値（１バイトワード）は、ラスタスキャンの順序で読み出されて、例えばＳＲＡＭを用いた８ラスタイメージレジスタ２に入力される。８ラスタイメージレジスタ２は、４つのラスタバイトレジスタ２５〜２８と４つのラスタビットレジスタ２１〜２４とから構成される。ラスタバイトレジスタ２５〜２８の各々は、１ラスタ分の画素のバイトワードを記憶することができる。ラスタビットレジスタ２１〜２４の各々は、１ラスタ分の画素の、後述する２値化回路３によって２値化されたビットワードを記憶することができる。ここで、「ラスタ」とは、ページをラスタスキャンするときの主走査ラインを意味し、例えば解像度６００ｄｐｉでサイズＡ４（８．２７インチ×１１．６９インチ）のページの場合、１ラスタは８．２７×６００＝約４９６０個の画素から構成される。
【００１６】
ラスタバイトレジスタ２５〜２８及びラスタビットレジスタ２１〜２４はそれぞれ、シフトレジスタ又はＦＩＦＯメモリとして機能し、新しい画素値が書き込まれる度に、最も古く書き込まれた画素値を出力する。ページイメージメモリ１から読み出された各画素値（１バイトワード）は、まず、最も下方に図示された第４のラスタバイトレジスタ２８に書き込まれる。第４のラスタバイトレジスタ２８から出力された各画素バイトワードは、一方では第３のラスタバイトレジスタ２７に書き込まれ、他方では２値化回路３に入力されて、そこで第４の２値化ユニット３４によって２値化されて１ビットワードに変換される。第３のラスタバイトレジスタ２７から出力された各画素バイトワードは、一方で第２のラスタバイトレジスタ２６に書き込まれ、他方で２値化回路３内の第３の２値化ユニット３３によって２値化されて１ビットワードに変換される。第２のラスタバイトレジスタ２６から出力された各画素バイトワードは、一方で第１のラスタバイトレジスタ２５に書き込まれ、他方で２値化回路３内の第２の２値化ユニット３２によって２値化されて１ビットワードに変換される。第１のラスタバイトレジスタ２５から出力された各画素バイトワードは、２値化回路３内の第１の２値化ユニット３１によって２値化されて１ビットワードに変換される。
【００１７】
第１の２値化ユニット３１によって２値化された各画素値（１ビットワード）は、第４のラスタビットレジスタ２４に書き込まれる。この第４のラスタビットレジスタ２４から出力された各画素ビットワードは、第３のラスタビットレジスタ２３に書き込まれる。この第３のラスタビットレジスタ２３から出力された各画素ビットワードは、第２のラスタビットレジスタ２３に書き込まれる。この第２のラスタビットレジスタ２２から出力された各画素ビットワードは、第１のラスタビットレジスタ２１に書き込まれる。こうして８ラスタイメージレジスタ２には、連続する８ラスタ分の画素値が格納されることになる。
【００１８】
２値化回路３は前述したように、４つの２値化ユニット３１〜３４を有し、４つのラスタバイトレジスタ２５〜２８からそれそれ出力される各画素バイトワードを２値化して１ビットワードに変換する。この２値化は、所定の閾値を用いて、その閾値以上の値を示す画素バイトワードはビットワード「１」に、その閾値未満の画素バイトワードはビットワード「０」に変換する。
【００１９】
この２値化の目的は、イメージの中からキャラクタとグラフィックスのようなスムージング対象の画像要素だけを、自然画像のようなスムージング対象でない領域から区別して抽出することにある。この目的から、この２値化の閾値には、スムージング対象であるキャラクタとグラフィックスの画素値は「１」に変換し、スムージング対象でない領域の画素値は「０」に変換することができるような値が選ばれる。典型的には、画素バイトワードの最高値「２５５」（又は、その近傍値、例えば「２５０」や「２４０」など）が２値化閾値として選ばれる。前述したように、多くのイメージでは、スムージング対象たるキャラクタ及びグラフィックスは少なくとも１色成分について画素値が最高値「２５５」であり、スムージング対象でない自然画像のそれは「０」〜「２５４」に分布しているからである。しかし、これには該当しないイメージも存在するから、イメージの実情やユーザの好みに応じて適切な閾値を選択できるようにしてもよい。例えば、自然画像の画素値が「０」〜「２００」の範囲に分布し、スムージング対象のキャラクタ及びグラフィックスの画素値が「１００」〜「２５５」の範囲にあるようなイメージでは、キャラクタ及びグラフィックスの全てを確実に抽出してスムージング処理することをユーザが望むならば、例えば「８０」〜「１５０」程度の範囲から閾値を選べばよいであろうし、一方、自然画像にスムージングの影響を与えないことをユーザが重視するならば、例えば「１５０」〜「２５０」程度の範囲から閾値を選べばよいであろう。いずれにしても、スムージング対象の画像要素と他のスムージング対象でない画像要素とを実質的に区別できる（つまり、完全に区別できなくても、実用上支障のない範囲内で大体区別できる）ような閾値が選ばれる。
【００２０】
この２値化閾値は、ユーザが手動で設定してもよいし、あるいは、プリンタドライバ又はプリンタが自動的に設定してもよい。自動設定の方法としては、例えばホストのアプリケーション画面上でユーザがスムージング対象の画像要素とそうでない画像要素の領域とをそれぞれ１個又は複数個指定すると、その指定された画像要素の画素値に基づいて、両者を効果的に区別できる閾値をプリンタドライバ又はプリンタが自動的に求めるといった方法が考えられる。
【００２１】
さて、図１に示した２値化回路３の４つの２値化ユニット３１〜３４から出力される第５〜第８のラスタの画素ビットワードは、８×９画素レジスタ５を構成する８つの９ステージシフトレジスタ５１〜５８にうちの、第５〜第８のシフトレジスタ５５〜５８にそれぞれ入力される。また、８ラスタイメージレジスタ２の第１〜第４のラスタビットレジスタ２１〜２４から出力される第１〜第４のラスタの画素ビットワードは、遅延回路４を経由して、８×９画素レジスタ５の第１〜第４の９ステージシフトレジスタ５２１〜５４にそれぞれ入力される。遅延回路４は、４つの遅延ユニット４１〜４４を有し、ラスタビットレジスタ２１〜２４からの第１〜第４ラスタの画素ビットワードに対して、２値化回路３にて第５〜第８ラスタの画素値が受けた同じ長さに遅延を与えて、イメージ上でラスタスキャンの副走査方向に一線に並ぶ画素のビットワードが８×９画素レジスタ５に同時に入力されるようにする。従って、８×９画素レジスタ５には、イメージ上の８×９画素領域の７２画素のビットワードが格納される。この８×９画素領域はラスタスキャン方式でイメージ上を時間と共に１画素すつ移動していく。以下、この８×９画素領域の中央の画素、つまり、８×９画素レジスタ５の第５シフトレジスタ５５の第５ステージ１００に対応する画素を「着目画素」と呼ぶ。
【００２２】
スムージング回路６は、８×９画素レジスタ５内の８×９画素領域の７２画素のビットワードを取り込み、それに基づいて、その８×９画素領域内の画像要素（ビットワード値「１」をもつ）の輪郭線にスムージングを施したときの、着目画素に対する描画レーザパルス幅を計算し、その計算結果に従ってパルス幅変調したレーザ駆動パルス信号を発生する。ここで、描画レーザのパルス幅とそれによって１画素領域に形成される着色剤のドットの大きさとの関係は例えば図２に示すとおりである。すなわち、番号２０１で示す１画素フルサイズ分のパルス幅のレーザパルスによれば、１画素領域２１０にフルサイズのドット２１１が形成される。また、番号２０２で示すようなフルパルス幅より若干短いレーザパルスによれば、１画素領域２１０内に若干小さいドット２１２が形成される。更に短いレーザパルス２０３によれば、より更にドット２１３が形成される。このようにレーザパルス幅を変化させることにより、ドットのサイズを調節することができる。
【００２３】
図３は、この原理を利用してスムージングを行った一例を示している。図３（Ａ）は８×９画素領域のスムージング前の２値化イメージを、図３（Ｂ）はスムージング後のイメージを示している。図３（Ａ）のスムージング前のイメージにおいて、スムージング対象の画像要素（図の例では斜めの直線）対応した画素はハッチングで示されているが、それらの画素は、８×９画素レジスタ５上でビットワード値「１」をもっている。それ以外の画素は白抜きで示されているが、それらは８×９画素レジスタ５上でビットワード値「０」をもっている。図１に示したスムージング回路６は、８×９画素レジスタ５から、図３（Ａ）のイメージを表した２値化イメージデータを読み込み、そして、図３（Ｂ）に示したスムージング後のイメージが描画できるように、着目画素３００に対する描画レーザパルス幅を決定する。その結果、図３（Ｂ）の例では、着目画素３００に対する描画レーザパルスは図２に示したパルス２０２に決定される。なお、このような処理を行うスムージング回路６の具体的構成としては、種々のものが公知である。
【００２４】
図１のハーフトーニング回路７は、８ラスタイメージレジスタ２の第５のラスタバイトデータ２５から出力される画素バイトワードを受け取り、ハーフトーニング処理つまり画素バイトワードが示す濃度を、人の目に同じ濃度を感じさせるようなドットの有無及びサイズに変換する処理を行なう。このハーフトーニング処理の結果として、ハーフトーニング回路７は、着目画素に対する描画レーザパルス幅を決定して、その決定結果に従ってパルス幅変調された着目画素に対するレーザ駆動パルスを、スムージング回路６からの着目画素に対するレーザ駆動パルスの出力と同期して出力する。
【００２５】
ＯＲ回路８は、スムージング回路６から出力される着目画素に対するレーザ駆動パルス信号と、ハーフトーニング回路７から出力される着目画素に対するレーザ駆動パルス信号とを論理和して、描画レーザドライバ（図示せず）へ送り描画レーザパルスを発生させる。
【００２６】
以上の構成により、ページイメージ内の画像要素のうち、２値化処理でビット値「１」になった画像要素つまり主としてキャラクタとグラフィックスだけに選択的にスムージングが行われることになる。キャラクタやグラフィックスが一次色（濃度２５５の１色成分のみからなる色）や濃度２５５の２色又は３色成分からなる色である場合は勿論のこと、濃度２５５未満の色成分を含む中間色である場合にも、その少なくとも１色成分の濃度が２５５であるならば、スムージングの効果が得られる。
【００２７】
図４は、中間色の斜め直線をこの実施形態でスムージングした様子を示す。図４（Ａ）はスムージング前を示し、図４（Ｂ）はスムージング後を示す。
【００２８】
図４（Ａ）のスムージング前の斜線４０１は、例えば、濃度１００％（値２５５）に対応するフル画素サイズのマゼンタのドット４０２と、濃度２５％（値６４）に対応する１／４画素サイズのイエローのドット４０３とから描かれるようなものである。これを上記実施形態に通すと、値６４のイエロードット４０３にはスムージング処理がかからないが、値２５５のマゼンタドット４０２にスムージング処理がかかって、図４（Ｂ）に斜線４０４として示すように印刷される。従って、値６４のイエロードット４０３にはスムージング処理がかからないが、全体的にはスムージングの効果が現れる。
【００２９】
図５は、本発明の第２の実施形態を示す。図１に示した第１の実施形態と同じ構成要素には、同じ参照番号をふって重複した説明は省略する。
【００３０】
この第２の実施形態にかかるスムージング装置は、第１の実施形態の装置構成に加えて、例えばＤＲＡＭであるページ属性メモリ９を備える。このページ属性メモリ９には、ページイメージメモリ１に格納されたイメージの各画素についての属性を示した属性データが格納される。つまり、ページのイメージは、ページイメージメモリ１に格納される１色、３色又は４色の色成分プレーンに加え、ページ属性メモリ９に格納される属性プレーンから構成されているのである。この実施形態では、各画素の「属性」とは、その画素がスムージング対象の画像要素であるか否か、及び、その画素上にスムージング補正のための描画レーザパルスを出してよいか否か、の２点である（勿論、更に他の属性を加えてもよし、スムージング対象か否かの１点だけでもよい）。属性データは、１画素当たり２ビットであり、
（１）  １ビット目：「１」＝スムージング対象である、「０」＝否
（２）  ２ビット目：「１」＝補正パルスを出してよい、「０」＝否
を意味している。例えば図６に示すように、細かいハッチングで示した領域５０１に含まれる各画素の属性データが「１１」であれば、この領域５０１はスムージング対象であって、スムージング補正パルスを出して良い領域であることを意味する。また、このスムージング対象５０１の両脇の荒いハッチングで示した領域５０２、５０３、５０４、５０５に含まれる各画素の属性データが「０１」であれば、これらの領域５０２、５０３、５０４、５０５に、スムージング対象５０１をスムージングした結果としての補正描画レーザパルスを出してよいことを意味する。また、その外側の白抜きの領域５０６、５０７に「含まれる画素の属性データが「００」であれば、それらの領域５０６、５０７はスムージング対象でもないし、かつ補正パルスも出してはいけないことを意味する。図６に例示したような属性データに基づけば、図３に例示したようなスムージングが行える。
【００３１】
このような属性データは、ホスト又はプリンタで自動生成しても良いし、ホストのアプリケーション上でユーザが作るようにしても良い。例えば、アプリケーションなどが作るイメージのソースデータ又はホストからプリンタに送られる印刷データにおいて、キャラクタはキャラクタラクタコードで、グラフィックスはベクタデータ又は関数コールで、自然画像はビットマップデータで、というように種類の異なる画像要素が異なる形式のデータで表現されていれば、ホストのアプリケーション、プリンタドライバ又はプリンタのイメージングプロセスが、そのデータ形式を頼りにキャラクタとグラフィックスと自然画像とを識別して自動的に属性データを作ることができる。また、アプリケーション上でユーザが文書や絵画や写真を作ったり編集したりする際に、ユーザがスムージング対象を具体的に指定したり、補正パルスを出して良い領域又は出していけない領域を具体的に指定したりすることによって、アプリケーション上でユーザが属性データを作れるようにすることもできる。
【００３２】
再び図５を参照して、ページイメージメモリ１から各画素のバイトワードが読み出されるのに同期して、対応する画素の属性データ（２ビットワード）がページ属性メモリ９から読み出されて、例えばＳＲＡＭを用いた４ラスタ属性レジスタ１０に書き込まれる。４ラスタ属性レジスタ１0は、それぞれ１ラスタ分の属性データが格納できる４つのラスタ属性レジスタ１０１〜１０４からなる。４つのラスタ属性レジスタ１０１〜１０４の各々は、シフトレジスタ又はＦＩＦＯメモリとして動作し、新しい画素の属性データが書き込まれると、最も古くに書き込まれた画素の属性データを出力する。
【００３３】
ページ属性メモリ９から読み出された各画素の属性データ（２ビットワード）は、まず、最も下方に図示された第４のラスタ属性レジスタ１０４に書き込まれる。第４のラスタ属性レジスタ１０４から出力された各画素属性データは、一方では第３のラスタ属性レジスタ１０３に書き込まれ、他方では遅延回路１１内の第４の遅延ユニット１１４に入力されれる。第３のラスタ属性レジスタ１０３から出力された各画素属性データは、一方で第２のラスタ属性レジスタ１０２に書き込まれ、他方で遅延回路１１内の第３の遅延ユニット１１３に入力される。第２のラスタ属性レジスタ１０２から出力された各画素属性データは、一方で第１のラスタ属性レジスタ１０１に書き込まれ、他方で遅延回路１１内の第２の遅延ユニット１１２に入力される。第１のラスタ属性レジスタ１０１から出力された各画素属性データは、遅延回路１１内の第１の遅延ユニット１１１に入力される。
【００３４】
遅延回路１１は前述したように、４つの遅延ユニット１１１〜１１４を有し、４つのラスタ属性レジスタ１０１〜１０４からそれそれ出力される各画素属性データを、２値化回路３での２値化処理時間分だけ遅延させる。４つの遅延ユニット１１１〜１１４から出力される４つのラスタの属性データのうち、１ビット目は、２値化回路３と８×９画素レジスタ５との間に介装されたセレクタに制御信号として加えられる。
【００３５】
セレクタ１２は４つのセレクタユニット１２１〜１２４を有し、これらのセレクタユニット１２１〜１２４はそれぞれ、２値化回路３から出力される４つのラスタの画素ビットワードと「０」値ビットワードとを選択対象の信号として受け、そして、上述した遅延ユニット１１１〜１１４から加えられる画素属性データの１ビット目の信号に応答して、その１ビット目の信号値が「１」であれば画素ビットワードを選択し、１ビット目の信号値が「０」であれば「０」値ビッドワードを選択して、８×９画素レジスタ５に出力する。また、第１のセレクタユニット１２１から出力されたビットワードは、８ラスタイメージレジスタ２内の第４のラスタビットレジスタ２４にも書き込まれる。
【００３６】
遅延回路４は、図１に示した第１の実施形態では２値化回路３での処理時間分の遅延を発生させたが、この第２の実施形態では、２値化回路３での処理時間とセレクタ１２での処理時間とを加えた時間分だけの遅延を発生させ、それにより、副走査方向に一線に並ぶ８ラスタの画素が８×９画素レジスタ５に同時に書き込まれるようにする。
【００３７】
以上の構成により、８×９画素レジスタ５には、属性データの１ビット目が「１」であるスムージング対象の画素についてのみ、２値化された画素値が書き込まれ、スムージング対象でない画素については一律に「０」値が書き込まれることになる。
【００３８】
ところで、図１に示した第１の実施形態では２値化回路３がスムージング対象とそうでないものとを区別していたのに対し、この第２の実施形態ではこの機能をセレクタ１２が果たすので、２値回路３の役割は第１の実施形態とは異なってくる。すなわち、２値化回路３は、属性データが指定するスムージング対象の中から、実際にスムージングを施す対象を画素値によって限定するという役割を果たす。例えば、属性データによって全てのキャラクタと全てのグラフィックスがスムージング対象として指定されている場合、もし２値化回路３に閾値として例えば「２００」が設定されているならば、全てのキャラクタと全てのグラフィックスの中でも特に画素値が「２００」以上のものだけに対して、実際のスムージング処理が行われることになる。このスムージング対象限定機能は、属性データが指定するスムージング対象の中から、画素値の比較的小さい特定の画像要素を除外したい場合や、あるいは、属性データを作成する際に例えば白い背景上に黒字のテキストが書かれている特定の領域全体をスムージング対象として指定しておいて、そして、印刷の際には、その領域内の黒字のテキストだけにスムージングを施したい場合などに活用することができる。一方、属性データが指定するスムージング対象の全てに対し実際にスムージング処理を施してよい場合には、２値化回路３に閾値「０」を設定したり、或いは、２値化回路３とセレクタ１２を除去して、遅延回路１１からの画素属性データの１ビット目を直接に８×９画素レジスタ５に書き込むようにしてもよい。
【００３９】
さて、スムージング回路６は、第１の実施形態に関して説明したとおり、８×９画素レジスタ５内の７２画素のデータに基づいて、着目画素に対するスムージング後の補正されたレーザ駆動パルス信号を生成する。このスムージング回路６から出力されたレーザ駆動パルスはパルス調節回路１４に入力される。パルス調整回路１４は、８ラスタイメージレジスタ２の第５ラスタレジスタ２５から出力される画素バイトワードを遅延回路１３を通じて入力し、その画素バイトワードの値に基づいて、スムージング回路６からのレーザ駆動パルスのパルス幅を調整するものである。すなわち、スムージング回路６から出力されるレーザ駆動パルスのパルス幅は、スムージング対象の画素値が「２５５」であるとした場合のパルス幅であるため、そのパルス幅を、第５ラスタレジスタ２５から出力される実際のスムージング対象の画素値に適合する幅に調節するのである。ここで、遅延回路１３は、常に着目画素の画素バイトワードがパルス調整回路１４に入力されるようにタイミングを調整するものである。なお、パルス幅調節回路１４によるパルス幅調節はスムージングの効果を減じる可能性もあるので、パルス幅調節回路１４を除去しても良い。また、パルス幅調節回路１４を除去し、それとは別の手法で、スムージング対象の実際の画素値をスムージング後の画像に反映させる手段を設けても良い。
【００４０】
パルス幅調節回路１４から出力されたレーザ駆動パルスは次にゲート１５に入力される。ゲート１５は、遅延回路１１の第１の遅延ユニット１１から出力された画素属性データの２ビット目を遅延回路１６を通じて受け、そして、その２ビット目の値が「１」であるときのみ、レーザ駆動パルスを通過させてＯＲ回路８に出力する。ここで、遅延回路１６は、常に着目画素の属性データ２ビット目がゲート１５に入るようにタイミングを調整するものである。このゲート１５の作用により、着目画素が補正パルスを出して良い領域である場合にのみ、パルス調節回路１４からの着目画素の補正パルスがＯＲ回路８に入ることになる。
【００４１】
また、ハーフトーニング回路７で生成されたハーフトーニング後の着目画素のレーザ駆動パルスは、遅延回路１７を通じて、ゲート１５からの着目画素のレーザ駆動パルスとタイミングを合わせて、ＯＲ回路８に入力される。そして、ＯＲ回路８で論理和されたレーザ駆動パルスが描画レーザドライバに送られる。
【００４２】
図７は、この第２の実施形態のスムージング処理の結果例を示す。
【００４３】
この例は、５０％の濃度の背景上に斜めの直線が走っているイメージであり、これをスムージング処理せずに印刷した場合が図６（Ａ）に示すものである。図６（Ｂ）は属性データを示しており、細かいハッチングで示された領域がスムージング対象の斜線であり、その両側の荒いハッチングで示した領域が補正パルスを出して良い領域である。図６（Ｃ）は、この属性データを用いてスムージング処理をした後の印刷例であり、斜線がスムージングされている。
【００４４】
以上、本発明一実施形態を説明したが、これらの実施形態はあくまで本発明の説明のための例示であり、本発明をこれら実施形態にのみ限定する趣旨ではない。従って、本発明は、上記実施形態以外の様々な形態でも実施することができるものである。本発明はレーザページプリンタだけでなく、インクジェットプリンタどの他のタイプのプリンタや、画像を画面に表示するディスプレイ装置などにも適用できる。上述の実施形態は全ての処理をハードウェアで行っているが、その少なくとも一部は、コンピュータソフトウェアによって実施することもできる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態の構成を示すブロック図。
【図２】レーザ駆動パルスのパルス幅とドットのサイズの関係を示す図。
【図３】スムージングの結果例を示す図。
【図４】中間色のスムージング結果を示す例。
【図５】本発明の第２の実施形態の構成を示すブロック図。
【図６】属性データの例を示す図。
【図７】スムージング結果例を示す図。
【符号の説明】
１  ページイメージメモリ
２  ８ラスタイメージメモリ
３  ２値化回路
５  ８×９画素レジスタ
６  スムージング回路
７  ハーフトーニング回路
８  ＯＲ回路
１０  ４ラスタ属性レジスタ
１２  セレクタ
１４  パルス調節回路
１５  ゲート
【図１】
0004050382.tif 000002
【図２】
0004050382.tif 000003
【図３】
0004050382.tif 000004
【図４】
0004050382.tif 000005
【図５】
0004050382.tif 000006
【図６】
0004050382.tif 000007
【図７】
0004050382.tif 000008