以下、本発明の実施の形態を図面に基づいて詳細に説明する。
(実施形態1)
図1は、実施形態1における画像形成装置のシステム構成を説明する図である。
同図において、画像形成装置1は、インターフェースコントローラ(以下、I/Fコントローラで示す)2とエンジンコントローラ3で構成されている。
画像形成装置1には、I/Fコントローラ2を介して、外部のパーソナルコンピュータ(PC)26やプリンタサーバ27等のホスト機器25が接続される。画像形成装置1(I/Fコントローラ2)とPC間は、USB(universal serial bus)で接続されている。画像形成装置1(I/Fコントローラ2)とプリンタサーバ間は、LAN(local area network)で接続されている。なお、画像形成装置1(I/Fコントローラ2)とPC間もLANで接続されるようにしても良い。
PCは、ワープロ等のアプリケーションを用いて印刷を行なうときは、印刷データをコマンドデータに変換しながら、スプーラ(print spooler の略)に一旦保存する。接続がUSBの場合は、スプーラから画像形成装置1(I/Fコントローラ2)へ直接コマンドデータが送られる。
LANで接続されているプリンタサーバ経由で印刷を行なう場合は、PCのスプーラに保存したデータがプリンタサーバのスプーラへ転送されて、プリンタサーバ内のスプーラから画像形成装置1(I/Fコントローラ2)へコマンドデータが送られる。
このようにしてホスト機器25から画像形成装置1(I/Fコントローラ2)へ供給された印刷データは、詳しくは後述するが、I/Fコントローラ2により解析処理が施され、圧縮、伸張処理が行われた後、ビデオデータ(ビットマップデータ)に変換されて、記憶部の描画エリアに描画される。1ページ分の描画が完了すると、I/Fコントローラ2は、ビデオI/Fを介し、エンジンコントローラ3へ印刷開始を指示する。
エンジンコントローラ3は、露光ヘッド制御部(以下、単にヘッド制御部で示す)12、モータ制御部13、MPU(micro processing unit)14、定着制御部15、高圧制御部16、露光ヘッド部17、メインモータ18、各種負荷19、各種センサ部20、定着部サーミスタ21、定着部ヒータ22、高圧部23で構成されている。
エンジンコントローラ3は、I/Fコントローラ2から印刷開始を指定されると、メインモータ18を回転させ、用紙収容部から取り出した用紙を搬送部により搬送させ、画像形成可能な位置に用紙先端が到達したことをI/Fコントローラ2へ通知する。尚、エンジンコントローラ3は、給紙口の選択、解像度の指定等のエンジン指定、ジャムなどのエンジン状態等の事象も通知する。
エンジンコントローラ3のビデオI/F制御部は、I/Fコントローラ2へ水平同期信号を出力し、I/Fコントローラ2は、エンジンコントローラ3から出力される水平同期信号(HSYNC)に同期させて、1ライン毎に描画エリアのビデオデータをエンジンコントローラ3(ヘッド制御部12)へ出力(DMA(Direct Memory Access)転送)する。
I/Fコントローラ2からエンジンコントローラ3のヘッド制御部12に出力されたビデオデータには、後述する処理が施され、ヘッド制御部12から露光ヘッド部17に出力される。露光ヘッド部17はビデオデータに基づいて不図示の露光ヘッドにより感光体ドラムを露光し、露光により形成された感光体ドラム上の静電潜像に不図示の現像器がトナー像を現像する。
現像されたトナー像は、高圧制御部16の制御下で動作する高圧部23からの所定極性の高圧転写電圧(又は電流)により、用紙に直接または中間転写体を介して転写され、転写トナー像は、定着制御部15の制御下で動作する定着ヒータ22により用紙に定着されてカラー画像が用紙上に完成する。
図2は、I/Fコントローラ2のブロック図である。図2に示すようにI/Fコントローラ2はCPU4と、このCPU4に太線矢印で示すPCI(Peripheral Component Interconnect)バスを介して接続されたSDRAM(synchronous dynamic random-access memory)5、フラッシュROM(Read Only Memory)6、OPE(オペレーションパネル制御部)7、Phy(Physical layer、本例の場合はLAN接続I/F)8、USB(I/F)9、ASIC(application specific integrated circuit)10等で構成されている。
そして、Phy8及びUSB9には、図1に示したPC26から、LAN及びUSBからなる回線網11を介して印刷データ(RGBデータ)が供給される。
PC26からLAN及びUSBの回線網11経由でPhy8及びUSB9に受信されたRGBデータ(24bit、256階調データ)は、細線矢印aで示すように、SDRAM5内の不図示のリングバッファに格納される。
リングバッファに一旦格納されたRGBデータは、細線矢印b1で示すように、CPU4に読み込まれ、フラッシュROM6に格納されているLUT(Color Look-up Table)がPCIバスを介して参照され、このLUTに基づき、カラーマッチング処理を施され、CMYKデータ(32bit、256階調データ)に変換される。
続いて、I/Fコントローラ2は、フラッシュROM6に格納されているディザパターン(dither pattern、本例では例えば6×5マトリックス、15パターン、図3参照)を、細線矢印c1で示すように、SDRAM5内のディザパターンエリアに書き込む。
上記のRGBデータからカラーマッチング処理により変換されたCMYKデータは、SDRAM5内のディザパターンエリアに書き込まれたディザパターンに基づいて階調データに置き換えられる。
この処理では、CMYKデータが、ディザパターンの形状からなる各ピクセルのしきい値に従って比較演算され、16階調のビデオデータに変換される。このビデオデータは、例えばヘッド制御部12に転送される1画素が4ビットで表現される画像データであり、したがって、1画素が16階調で表現されるビデオデータである。
この階調データに置き換えられたビデオデータは、細線矢印b2で示すように、SDRAM5内のページメモリに展開される。そして、このページメモリに展開されたビデオデータは、細線矢印dで示すように、ASIC10により圧縮データに変換される。
この圧縮データは、ASIC10により伸長され、露光ヘッド部17用のビデオデータとしてエンジンコントローラ3のヘッド制御部12に転送される。
図3は、本実施形態1において上記のように用いられるディザパターンの基本形を示す図である。同図に示すように、ディザパターン基本形30は、6×5のマトリクス内に収まるように構成されたセル1(31)とセル2(32)からなる。
右上がりハッチングで示すセル1(31)は、中央の縦4枡に8、0、2、14の4個の番号が配置され、その0番の左右に6と4の番号、2番の左右に12と10の番号が配置されている。
そして、このセル1(31)の斜め右下に続く横ストライプで示すセル2(32)は、中央の縦4枡に9、1、3、16の4個の番号が配置され、その1番の左右に7と5の番号、3番の左右に13と11の番号が配置されている。
つまり、このディザパターン基本形30は、セル1(31)とセル2(32)を合わせて0〜15までランダムに又は或る規則性で配置された16個の番号からなっている。これらの番号は、6×5マトリクスの横5枡の方向を主走査方向、縦6枡の方向を副走査方向としたときの、露光ヘッド部17の露光ヘッドにおいて隣接する5個のLEDに対してディザ階調で点灯すべき画素位置を指定する符号である。
例えば「0」の位置が設定されていれば、「0」の位置に来たLEDがディザ階調で点灯する。更に加えて「1」の位置が設定されていれば、「0」と「1」の位置に来たLEDがディザ階調で点灯する。
図4(a) は、階調データのビデオデータからなる16×16ドットのデータ領域(画像データの露光領域)に、上記のディザパターン基本形30を敷き詰めた状態を示す図であり、同図(b) は、露光ヘッドがディザ階調15で点灯すべき位置を示す図である。
尚、同図(a),(b) は説明の便宜上、横16ドット縦16ドットの階調データ領域を示しているが、実際の用紙1ページ分の階調データの展開領域は、例えば横1024ピクセル分、縦768ピクセル分のドット構成となっている。
この16×16ドットのデータ領域に敷き詰めた状態のディザパターン基本形30の位置関係を示すために、図4(a) の左上には、図3に示したディザパターン基本形30の、右上がりハッチンで示すセル1(31)と横ストライプで示すセル2(32)を示している。
また、図4(a) の右斜め下半分には、斜めに連続するセル1(31)とセル2(32)を示している。但し、セル1(31)は右上がりハッチングで示しているが、セル2(32)は白地で示している。この配置は同図の左上まで同様な状態で配置されている。
同図(b) は、同図(a) に示すディザパターン基本形30において、前述したようにセル1(31)の「0」と、セル2(32)の「1」がディザ階調で点灯すべき位置として設定されている場合の全体の中の点灯位置を「◎」で示したものである。
同図(b) には、仮想線33で、セル1(31)の「0」と、セル2(32)の「1」を順次関連付けて示している。仮想線33の両脇(斜め右上半分と斜め左した半分)の領域の点灯位置も、仮想線33に平行する仮想線で関連付けて示すことができる。
図5(a) は、図4(a) を再掲した図、図5(b) は、図4(b) を再掲した図(但しを図4(b) の「◎」を図5(b) で「●」で示している)、図5(c) は、ディザ階調45を用いる場合の点灯位置の設定の例(セル1(31)の「0」と「2」及びセル2(32)の「1」が点灯位置として設定されている)を示す図である。
尚、図5(c) の下に示す数字列34は、図5(c) に示す16×16ドット領域内における副走査方向(縦方向)の点灯ドット数を示している。また、図5(b),(c) に示すディザパターン基本形30に基づく点灯位置の設定は従来の点灯位置の設定方法を示している。
図5(b) は、一見して規則的な点灯位置の配置である。また図5(c) は、縦列に分けて見ると、点灯列は点灯位置が上下にばらついていてみえるが、横方向にみると、点灯列と非点灯列が交互に現れる規則的な点灯列の配置になっている。なお、点灯列と非点灯列が交互に現れる配置は図5(b) の場合も同様である。
元来、画像データの階調でータに、ディザパターンの階調データを加味する目的は、画像データの階調でータに発生する濃度ムラを低減させるために、各セル領域内の階調を分散又は平均化することにあるが、ディザ階調を加味する方法が規則的であると分散又は平均化の目的が薄れる虞がある。
図6(a),(b),(c) は、実施形態1におけるディザパターンテーブル(2値多値化しきい値テーブル、本例では図3に示したディザパターン基本形30)に対し、実施例1の場合として、ディザパターンの基本セル単位にデータ(セル内の番号配置位置)をシフトさせたディザパターンの点灯位置の例を説明する図である。
図6(a) は、16×16ドット領域内に敷き詰めたディザパターン基本形30において1セル置きに、つまりセル1(31)の位置を変えずに、このセル1(31)に対してセル2(32)を矢印34で示すように1ドット分、斜め左下方向にシフトさせたディザパターンを示している。
図6(b) は、図6(a) のディザパターンを用いてディザ階調15のときの露光ヘッドの点灯位置(セル1(31)の番号「0」とセル2(32)の番号「1」の位置)を示している。
図6(a) のようにセル2(32)を斜め左下方向に1ドット分シフトさせたことによって、セル2(32)の点灯位置はセル1(31)の点灯位置に対して矢印35で示すようにマイナス方向に1ドット分シフトし、これと相対的にセル1(31)の点灯位置はセル2(32)の点灯位置に対して矢印36で示すようにプラス方向に1ドット分シフトしている。
これにより、「●」で示す点灯位置の配置が、図5(b) に示した45度の直線配置から図6(b) のようにジグザグ配置に変更されている。また、図5(b) に示した点灯配置が縦列横行ともに、0、4、0、4、・・・の配置であったものが、図6(b) では、縦列横行ともに、2、2、2、2、・・・の配置になって、満遍なく平均的に分散している。
また、図6(c) は、図6(a) のディザパターンを用いてディザ階調45のときの露光ヘッドの点灯位置(セル1(31)の番号「0」と「2」及びセル2(32)の番号「1」の位置)を示している。
図6(a) のようにセル2(32)を斜め左下方向に1ドット分シフトさせたことによって、セル2(32)の「1」の点灯位置は斜め左下に1ドット分シフトしている。
これにより、「●」で示す点灯位置の配置が、図5(c) に示した縦列0、6、0、6、・・・の配置から、図6(c) では、縦列の配置が、2、4、2、4、・・・の配置になって、比較的満遍なく平均的に分散している。
図7(a),(b),(c) は、実施形態1におけるディザパターンテーブル(2値多値化しきい値テーブル、本例では図3に示したディザパターン基本形30)に対し、実施例2の場合として、ディザパターンの基本セル単位にデータ(セル内の番号配置位置)をシフトさせたディザパターンの点灯位置の例を説明する図である。
図7(a) は、16×16ドット領域内に敷き詰めたディザパターン基本形30において2セル置きに、2セルを矢印37で示すように1ドット分、斜め左下方向にシフトさせたディザパターンを示している。
換言すれば、右上がりハッチングで示す最初のディザパターン基本形30(30−1)の配列に対し、その下に続く横ストライプで示す2段目のディザパターン基本形30(30−2)を、1ドット分、斜め左下方向にシフトさせた形になっている。
図7(b) は、図7(a) のディザパターンを用いてディザ階調15のときの露光ヘッドの点灯位置(セル1(31)の番号「0」とセル2(32)の番号「1」の位置)を示している。
これにより、エンジンコントローラ3において、露光ヘッドが感光体ドラムを露光する際は、ディザ階調の露光位置「●」が、図5(b) の45度の角度に対し、2セルおきに「−シフト」(矢印38)、「+シフト」(矢印39)して配列されて、この配列に従ってディザ階調15の露光が加味される。
この場合も、図5(b) に示した点灯配置が縦列横行ともに、0、4、0、4、・・・の配置であったものが、図7(b) では、縦列横行ともに、2、2、2、2、・・・の配置になって、満遍なく平均的に分散している。
また、図7(c) は、図7(a) のディザパターンを用いてディザ階調45のときの露光ヘッドの点灯位置(セル1(31)の番号「0」と「2」及びセル2(32)の番号「1」の位置)を示している。
この例では、図7(a) のディザパターンが、セル1(31)とセル2(32)からなるディザパターン基本形30(30−2)がそのまま1ドット分シフトしているので、図5(c) に示した上下2つのディザパターン基本形30による縦列6個の点灯配置が、1ドット分シフトした1つのディザパターン基本形30−2の分の3個が左横方向に一列分ずれて配置されている。
これにより、ディザ階調の露光ドット数の配置は、縦列横行ともに、3、3、3、3、・・・となって、満遍なく平均的に分散している。
このように、実施形態1の実施例1又は2によれば、I/Fコントローラ2で2値多値化処理を施す際に参照されるディザパターンテーブル(2値多値化しきい値テーブル)に対し、ディザパターン(図3のディザパターン基本形30)の基本セル(セル1(31)又はセル2(32))単位でシフトさせることにより、ディザ階調の露光を平均的に分散させることができ、これにより、発光素子(LED)個々のバラツキを抑えて濃度ムラを分散し、画像品質を向上させることができる。
上記の実施形態1における実施例1及び2においては、いずれもセル又は基本形全体を1ドット分シフトさせているが、シフト方式をとらずに、階調のバラツキを平均化する方法もある。これを実施例3として以下に説明する。
図8(a) は図4(a) を再掲する図、図8(b) は図4(b) を再掲する図、図8(c) は実施例3の点灯例を示す図である。図8(b) はディザ階調12でセル1(31)の「0」とセル2(32)の「1」の位置(「◎」で示す)のドットを露光する従来の例を示している。
これに対して、図8(c) に示す実施例3では、セル1(31)の「0」の位置(「●」で示す)ではディザ階調15の露光を行い、セル2(32)の「1」の位置(「○」で示す)ではディザ階調9で露光を行う。
図8(b) では、16×16ドットの領域のなかで、ディザ階調12の露光を行うLEDは4回の露光を行うが、LEDの発光特性にバラツキがあった場合、そのバラツキは露光回数が多いほど(同図(c) に例では4回)累積されて強調され、全体としてのバラツキが大きくなる。
しかし、図8(c) に示す実施例3のように、4回発光する1つのLEDが、ディザ階調15とディザ階調9で発光を交互に行って「(15+9+15+9)/4=12」で算出されるように、平均すると図8(b) の場合と同様にディザ階調12の露光を4回行ったと同じことになり、全体的には異なる階調が平均化されて表現されるだけ、バラツキが吸収されて、露光ヘッドの個々のLEDの発光特性のバラツキが緩和される。
このように、実施形態1の実施例3によれば、2セルで形成されることを特徴としたディザパターンに対し、2値多値化処理を施す際、各セルに対し異なるしきい値(例えばディザ階調15と9)を設定することにより、2セルの平均(ディザ階調12)で階調表現することにより、個々のセルのドット露光エネルギーのバラツキを抑え、濃度ムラを平均化し画像品質を向上させることができる。
尚、上記の実施例3におけるディザパターンの2セルのドットの露光エネルギー変えてその平均で階調表現する方法は、実施例1又は2における基本セルをシフトさせてディザパターンを形成する方法と組み合わせて用いるようにしてもよい。
(実施形態2)
上述した実施形態1では画像形成装置1のI/Fコントローラ2が、ディザパターンテーブル(図3のディザパターン基本形30)を用いて画像データのビデオデータに所望のディザ階調を加味するようにしていたが、実施形態2では、図3とは異なるディザパターンテーブルを用いて、画像形成装置1のエンジンコントローラ3のヘッド制御部12が画像データのビデオデータに所望のディザ階調を加味して露光ヘッドを制御する。
図9は、実施形態2において用いられるディザパターンテーブルの基本形を示す図である。同図に示すように、本例のディザパターン基本形40は、3×6のマトリクス内に収まるように構成されたセル1(41)とセル2(42)からなる。
各セルは、3×3のマトリクスからなり、マトリクスの9個の枠には、それぞれ中央に番号1、この番号1を取り囲んで左上角から時計回り方向に、8、5、7、3、6、2、9、4の番号が配置されている。これらの番号は露光ヘッド部17の露光ヘッドにおいて隣接する3個のLEDに対してディザ階調で点灯すべき画素位置を指定する符号である。
図10は、実施形態2における画像形成装置1のヘッド制御部12の構成を説明する回路ブロック図である。尚、このヘッド制御部12は、図1に示したように、モータ制御部13と共に、ASIC10に配設されている。
ヘッド制御部12は、ビデオI/F制御部44、スクリーン制御部45、ヘッドI/F制御部46、基本タイミング生成部47、CPUI/F制御部48で構成され、これらビデオI/F制御部44、スクリーン制御部45、ヘッドI/F制御部46、基本タイミング生成部47、CPUI/F制御部48はそれぞれCPUバスによって接続されている。
CPUI/F制御部48は、アドレスデコード及び各モジュールのレジスタ群及びI/Oポートのリード/ライトを行う。
ビデオI/F制御部44は、I/Fコントローラ2との間で、垂直同期信号(/VHYNC)、水平同期信号(/HSYNC)、ビデオデータ(/VIDEO[3:0])、及び同期信号(/NVCLK)の授受を行う。
また、ビデオI/F制御部44には、ビデオRAM49が接続されている。ビデオI/F制御部44は、I/Fコントローラ2から受信したビデオデータをビデオRAM49に格納し、そのビデオデータを、ヘッドI/F制御部46のドットパターン生成部55の要求に応じて順次転送する。
スクリーン制御部45は、ドットカウンタ部51、セルカウンタ部52、シフトレジスタ部53、セル形状レジスタ部54を備えている。ドットカウンタ部51は、ビデオデータを1ドットごとカウントするカウンタ部であり、副走査方向ラインカウンタ部の機能を備えている。副走査方向ラインカウンタ部は、垂直同期信号(/VSYNC)および水平同期信号(/HSYNC)に従って有効印字領域の副走査方向ライン数をカウントする。
セルカウンタ部52は、基本セル(セル1(41)及びセル2(42))数をカウントするカウンタであり、セル形状レジスタ部54に設定された情報に基づき、有効印字領域でのセル数をカウントする。
シフトレジスタ部53は、構成は普通のシフトレジスタであり、ライン自体のシフト量(ラインシフト情報)を設定するレジスタである。セル形状レジスタ部54は、CPUI/F制御部48によって設定されたセルがどういう形をしているかというセル形状情報(本例では(3×3)×2)を設定するレジスタである。
スクリーン制御部45は、セル形状レジスタ部54に設定されているセル形状情報とシフトレジスタ部53に設定されているラインシフト情報にしたがって、該当するセル領域のビデオデータを主走査方向に対してプラス方向またはマイナス方向に設定ドット分シフトさせる。
基本タイミング生成部47は、CPUI/F制御部48により設定された階調情報に従って副走査方向をn分割し(1画素を副走査方向に4分割する等)、それぞれのスループットに応じて基本タイミングを生成する。
ヘッドI/F制御部46は、ドットパターン生成部55、ヘッドデータ送信部56、ヘッド制御信号生成部57、ストローブ信号生成部58で構成されている。
ドットパターン生成部55は、ビデオI/F制御部44から供給されるビデオデータの1画素を各階調値に基づき不図示のパターン登録レジスタに設定されたドットパターンデータを読み出して、N個のドットに展開する。
1画素がN個のドットに展開されたビデオデータは、更に副走査方向にそれぞれn分割されてドットパターンデータに展開される。このドットパターンデータに展開されたビデオデータは、ヘッドデータ送信部56へ出力される。
ヘッドデータ送信部56は、ドットパターン生成部55から入力されたドットパターンデータを、ヘッド制御信号生成部57のドットクロック(DCLK)の指示に従って、順次ヘッド部17へ転送する。
ヘッド制御信号生成部57は、基本タイミング生成部47によって生成させた各種タイミング信号に従って、水平同期信号(/HD−HSYNC)、ドットクロック信号(DCLK)等のヘッド制御信号を生成する。
ストローブ信号生成部58は、CPUI/F制御部48により設定された階調情報に従って、副走査方向をn分割し、それぞれの要求に応じたストローブ信号を生成する。例えば、副走査方向3分割の場合は、サブライン(1/3)、(2/3)、(3/3)の3種類、副走査方向4分割の場合は、サブライン(1/4)、(2/4)、(3/4)、(4/4)の4種類のストローブタイミング信号を生成する。
図11(a) は、図9のセル1(41)とセル2(42)からなる3×6マトリクスのディザパターン基本形40を、9×15ドットの領域に展開した例を示す図である。尚、この場合も、図11(a) には9×15ドットの階調データ領域を示しているが、実際の用紙1ページ分の階調データの展開領域は、例えば横1024ピクセル分、縦768ピクセル分のドット構成等の大きな領域である。
図11(b) は、参考のため従来のディザ階調15のときのLED点灯例を示す図である。同図(b) の例では、セル1(41)とセル2(42)のそれぞれ1番の位置が露光位置に設定されている。
エンジンコントローラ3のヘッド制御部12においては、スクリーン制御部45のセル形状レジスタ部54に設定されているディザパターン基本形40を認識し、セルカウンタ部52でセル1(41)とセル2(42)を順次カウントしながら、それぞれのセルの1番に対応する「●」の位置で、露光ヘッドのLEDがディザ階調15で露光するようにディザ階調露光情報をヘッドI/F制御部46に通知する。図11(b) に示す例では、副走査方向の15ドットの中での露光位置の個数は、横9ドット方向にみると、0、5、0、0、5、0、0、5、・・・の順に配置されている。
また、図11(c) は、これも参考のため従来のディザ階調30のときのLED点灯例を示す図である。同図(c) の例では、セル1(41)とセル2(42)のそれぞれ1番と2番の位置が露光位置に設定されており、その1番と2番に対応する「●」の位置がエンジンコントローラ3のヘッド制御部12において、露光ヘッドのLEDがディザ階調30で露光する位置である。図11(c) に示す例では、副走査方向の15ドットの中での露光位置の個数は、横9ドット方向にみると、0、10、0、10、・・・の順に配置されている。
図11(b),(c) に示す露光箇所の配置の例では、副走査方向で露光さる列と露光されない列が明確に分かれており、露光される列には露光箇所が集中している。これでは、濃度ムラを低減させるために、各セル領域内の階調を分散又は平均化する目的が十分に達成されていなことになる。
図12(a),(b),(c) は、実施形態2におけるディザパターンテーブル(ディザパターン基本形40)に対し、実施例1の場合として、基本セル単位にデータをシフトさせた場合の点灯位置の例を説明する図である。
図12(a) は、図9のセル1(41)とセル2(42)からなる3×6マトリクスのディザパターン基本形40を、9×15ドットの領域に、1セルおきに1セルを1ドットだけシフトさせながら展開した例を示す図である。
この例では、エンジンコントローラ3のヘッド制御部12において、スクリーン制御部45のセル形状レジスタ部54に設定されているディザパターン基本形40を認識し、セルカウンタ部52でセル1(41)とセル2(42)を順次カウントし、このカウンタ値を参照しながら、シフトレジスタ部53は、シフト「0」、シフト「+1」、シフト「0」、シフト「+1」を繰り返していく。各セルの主走査方向の3ラインは、ドットカウンタ部51による副走査方向のライン数カウンタ値で認識される。
図12(b) は、上記のように1セルおきに、1セルごと「+1」シフトされたディザパターンに基づいて、各セルの1番の位置(同図(b) の「●」の位置)で、ディザ階調15で露光するように設定された場合の、9×15ドット領域内の露光位置を示している。
従来例の図11(b) では副走査方向に直線に並んでいた露光位置が、図12(b) では各セルの並び行が、副走査方向に進むごとに、1セルごとに、矢印61及び62で示すように「+1」、「−1」と相対的にシフトされた形になって、ジグザク形状に配置されている。
この図12(b) に示す例では、副走査方向の15ドットの中での露光位置の個数は、横9ドット方向にみると、0、3、2、0、3、2、・・・の順に配置されており、図11(b) の場合に比較して、良く分散していることが分かる。
また、図12(c) は、図12(a) のように1セルおきに、1セルごと「+1」シフトされたディザパターンに基づいて、各セルの1番と2番の位置(同図(c) の「●」の位置)で、ディザ階調30で露光するように設定された場合の、9×15ドット領域内の露光位置を示している。
この図12(c) に示す例では、副走査方向の15ドットの中での露光位置の個数は、横9ドット方向にみると、0、6、4、0、6、4、・・・の順に配置されており、図11(c) の場合に比較して、良く分散していることが分かる。
図13は、図12(c) に示す例のときのタイムチャートを示している。同図は図示する都合上、ラインカウンタn、n+1、n+2、・・・、n+11までのタイムチャートを、4ラインごとに3段に分けて示している。
図13に示すタイムチャートは、上からI/Fコントローラ2か入力されるビデオ信号の垂直同期信号(/VHYNC)、水平同期信号(/HSYNC)、1ピクセルが4ビットからなるビデオデータ(/VIDEO[3:0])、同期信号(/NVCLK)、スクリーン制御部45のラインカウンタ、セルカウンタ、シフト値、ヘッドI/F制御部46のヘッド制御信号生成部57で生成されるヘッド制御信号の水平同期信号(/HD−HSYNC)、ヘッドデータ(/DATA[3:0])、ドットクロック信号(DCLK)、ストローブ信号(/STROBE)である。
同図のタイムチャートに示すように、シフト値が”0”のときの3ライン分のヘッドデータ(/DATA[3:0])は、それぞれドットクロック(DCLK)の「2」の立下りのタイミングでヘッドに転送されるのに対して、シフト値が”1”のときの3ラィン分のヘッドデータ(/DATA[3:0])は、それぞれドットクロック(DCLK)の「3」の立下りのタイミングでヘッドに転送される。すなわち、+1ドット分オフセットされて転送される。
図14(a),(b),(c) は、実施形態2におけるディザパターンテーブルに対し実施例2の場合として基本セル単位にデータをシフトさせた場合の点灯位置の例を説明する図である。
図14(a) は、図9のセル1(41)とセル2(42)からなる3×6マトリクスのディザパターン基本形40を、9×15ドットの領域に、1セルおきに1セルを「+1」ドット「−1」と交互にシフトさせながら展開した例を示す図である。
この例では、エンジンコントローラ3のヘッド制御部12において、スクリーン制御部45のセル形状レジスタ部54に設定されているディザパターン基本形40を認識し、セルカウンタ部52でセル1(41)とセル2(42)を順次カウントし、このカウンタ値を参照しながら、シフトレジスタ部53は、シフト「0」、シフト「+1」、シフト「0」、シフト「−1」を繰り返していく。各セルの主走査方向の3ラインは、ドットカウンタ部51による副走査方向のライン数カウンタ値で認識される。
図14(b) は、上記のように1セルおきに、1セルごと「+1」シフトと「−1」シフトを繰り返されるディザパターンに基づいて、各セルの1番の位置(同図(b) の「●」の位置)で、ディザ階調15で露光するように設定された場合の、9×15ドット領域内の露光位置を示している。
従来例の図11(b) では副走査方向に直線に並んでいた露光位置が、図14(b) では各セルの並び行が、副走査方向に進むごとに、1セル置きに、矢印63及び64で示すように「+1」、「−1」とシフトされた形になって、ジグザク形状に配置されている。
この図14(b) に示す例では、副走査方向の15ドットの中での露光位置の個数は、横9ドット方向にみると、1、3、1、1、3、1、・・・の順で配置されており、全ての副走査列に、少なくとも1個の露光点が必ず配置されており、良く分散していることが分かる。
また、図14(c) は、図14(a) のように1セルおきに、1セルごと「+1」シフトと「−1」シフトが繰り返されるディザパターンに基づいて、各セルの1番と2番の位置(同図(c) の「●」の位置)で、ディザ階調30で露光するように設定された場合の、9×15ドット領域内の露光位置を示している。
この図14(c) に示す例では、副走査方向の15ドットの中での露光位置の個数は、横9ドット方向にみると、2、6、2、2、6、2、・・・の順で配置されており、図11(c) の場合は勿論、図12(c) と比較しても、良く分散していることが分かる。
この実施形態2における実施例1又は2によれば、I/Fコントローラ2で2値多値化処理を施された階調データをエンジンコントローラ3においてディザパターン40の基本セル単位に主走査方向にドットシフトさせる事により、濃度ムラを分散し画像品質を向上させることができる。