以下に添付図面を参照して、この発明にかかる画像形成装置、画像形成方法およびプログラムの最良な実施の形態を詳細に説明する。以下の実施の形態では、本発明の画像形成装置をカラー複写機に適用した例を示す。但し、カラー複写機に限られず、ファクシミリ、スキャナ機能やコピー、ファックス、プリンタなどの複数の機能を一つの筐体に収納した複合機等の画像処理を行うものであれば、本発明を適用することができる。
まず、本実施の形態のカラー複写機の作像原理について図1を参照して説明する。図1は、カラー複写機の作像原理を説明するための画像プロセス部、露光部および転写ベルトの正面図である。カラー複写機は、電子写真方式の画像形成による転写紙上への画像を形成する装置である。
このカラー複写機は、各々異なる色(Y,M,C,K)の画像を形成する画像プロセス部1の内部の4個の作像ユニット1Y,1M,1C,1Kが、転写媒体としての転写紙2を搬送する転写ベルト3に沿って一列に配置されたタンデム型となっている。転写ベルト3は、駆動回転する駆動ローラ4と従動回転する従動ローラ5との間に架設されており、駆動ローラ4の回転によって、図中矢印の方向に回転駆動される。転写ベルト3の下部には、転写紙2が収納された給紙トレイ6が備えられる。この給紙トレイ6に収納された転写紙2のうち最上位置にある転写紙2が、画像形成時に転写ベルト3に向けて給紙され、静電吸着によって転写ベルト3上に吸着される。吸着された転写紙2は、作像ユニット1Yに搬送され、ここで最初にY色の画像形成が行われる。
作像ユニット1Y,1M,1C,1Kは、それぞれ感光体ドラム7Y,7M,7C,7Kと、感光体ドラム7Y,7M,7C,7Kの周囲に配置された帯電器8Y,8M,8C,8Kと、現像器10Y,10M,10C,10Kと、感光体クリーナ11Y,11M,11C,11Kと、転写器12Y,12M,12C,12Kと、を備える。
作像ユニット1Yの感光体ドラム7Yの表面は、帯電器8Yで一様に帯電された後、露光部9によりY色の画像に対応したレーザ光LYで露光され、静電潜像が形成される。形成された静電潜像は、現像器10Yで現像され、感光体ドラム7Y上にトナー像が形成される。このトナー像は、感光体ドラム7Yと転写ベルト3上の転写紙2とが接する位置(転写位置)で、転写器12Yによって転写紙2に転写され、これによって、転写紙2上に単色(Y色)の画像が形成される。転写が終わった感光体ドラム7Yでは、ドラム表面に残った不要なトナーが感光体クリーナ11Yによってクリーニングされ、つぎの画像形成に備えることとなる。
このように、作像ユニット1Yで単色(Y色)が転写された転写紙2は、転写ベルト3によって作像ユニット1Mに搬送される。ここでも同様に、感光体ドラム7M上に形成されたM色のトナー像が転写紙2上に重ねて転写される。転写紙2は、その後さらに作像ユニット1Cと作像ユニット1Kとに順に搬送され、同様に、形成されたC色とK色のトナー像が転写紙2に転写され、これによって転写紙2上にカラー画像が形成されてゆく。
そして、作像ユニット1Kを通過してカラー画像が形成された転写紙2は、転写ベルト3から剥離され、定着器13で定着された後、排紙される。
タンデム方式のカラー複写機においては、その構成上、各色間の位置合わせが重要である。各色間の色ずれには、主走査方向(感光体ドラム7K,7M,7C,7Yの回転軸に平行な方向)のレジストレーションずれ、副走査方向(感光体ドラム7K,7M,7C,7Yの回転軸に垂直な方向)のレジストレーションずれ、主走査倍率ずれ、スキューずれなどがある。そこで、このカラー複写機では、転写紙2に対して実際のカラー画像形成動作を行うに先立ち、補正パターンを用いた各色間の位置ずれ補正を行うことにしている。
図2は、補正パターンが形成された状態を示す転写ベルトの斜視図である。このカラー複写機では、位置ずれ補正のため、転写ベルト3上に各色の色ずれ補正用の補正パターン14を各作像ユニット1Y,1M,1C,1Kで形成し、この補正パターン14を複数の検知用の検知センサ15,16で検出する。この図2の例では、複数の検知センサ15,16を転写ベルト3における主走査方向の両端に配置し、転写ベルト3には、各々の検知センサ15,16の配置位置に対応して補正パターン14が形成されている。このような補正パターン14は、転写ベルト3が同図に示す搬送方向に転動移動し、検知センサ15,16を順に通過することによって検出される。この補正パターン14を検出すると、その検出結果から、種々のずれ量(主走査倍率ずれ量、主走査レジストレーションずれ量、副走査レジストレーションずれ量、スキューずれ量、歪み量)を算出するための演算処理が行われ、その色ずれ量から各ずれ成分の補正量が算出される。
つぎに、カラー複写機の制御動作に関連するブロックとその動作について説明する。図3は、カラー複写機の書込み制御と位置ずれ補正を行う機構の構成の一例を示すブロック図である。このカラー複写機で位置ずれ補正処理を行う処理部は、検知センサ15,16、プリンタコントローラ111、スキャナコントローラ112、エンジン制御部113、およびK,M,C,Y各色のLD(Laser Diode)制御部114K,114M,114C,114Yである。
検知センサ15,16は、各色の画像の位置ずれを算出するために、転写ベルト3に転写された補正パターン14を検知するためのものである。検知センサ15,16は、補正パターン14の位置を検出してアナログの検知信号をエンジン制御部113に出力する。
プリンタコントローラ111は、外部装置(たとえばパーソナルコンピュータ(以下、PCという))からネットワークを介して送信された画像データを受信するためのものである。プリンタコントローラ111は、受信した画像データを画像処理部124へ転送する。
スキャナコントローラ112は、図示しないスキャンで読み取った原稿画像を取得するためのものである。スキャナコントローラ112は、取得した画像データを画像処理部124へ転送する。
エンジン制御部113は、大別して、パターン検知部121と、CPU(Central Processing Unit)122と、RAM(Random Access Memory)123と、画像処理部124と、書込み制御部125と、を有する。
パターン検知部121は、検知センサ15,16から出力された検知信号を増幅し、増幅されたアナログの検知信号をデジタルデータへ変換し、変換したデジタルデータをRAM123に格納する。
CPU122は、RAM123に格納された補正パターン14の位置の検知信号であるデジタルデータから色ずれ量を算出し、算出した色ずれ量から色ずれを補正するための色ずれ補正量を算出する。ここで、色ずれ量としては、各色の歪み量、主走査方向の倍率誤差量、主走査方向レジストレーションずれ量および副走査方向レジストレーションずれ量(以下、主/副レジストずれ量という)、スキューずれ量などがある。また、色ずれ補正量としては、これらの各種ずれ量から、各色の歪み補正量、主走査倍率補正量、主走査方向レジストレーション補正量および副走査方向レジストレーション補正量(以下、主/副レジスト補正量という)、スキュー補正量などがある。
また、CPU122は、画像データの解像度、および算出した各色(Y,M,C,K)の歪み量に基づいて、K色を基準色とする場合のY色、M色、およびC色の歪みライン量を算出し、これらの基準色に対する各色の歪みライン量に基づいて、ラインメモリのライン数を決定する。なお、基準色とは、各色の歪み量を算出する際の基準位置となる色をいい、この例ではK色を基準色としている。
RAM123は、パターン検知部121からCPU122を介して取得した補正パターン14のデジタルデータを一時的に記憶するためのものである。なお、このRAM123を不揮発性メモリに代替し、不揮発性メモリに補正パターン14のデジタルデータを記憶する構成としてもよい。
画像処理部124は、プリンタコントローラ111によって受信した各画像データ、またはスキャナコントローラ112から取得した各画像データに応じた種々の画像処理を施す。また、画像処理部124は、書込み制御部125から送信された各色の副走査タイミング信号(K,M,C,Y)_FSYNC_Nを受信して、各色の主走査ゲート信号(K,M,C,Y)_IPLGATE_Nと副走査ゲート信号(K,M,C,Y)_IPFGATE_Nおよびこれら同期信号に伴う画像信号(K,M,C,Y)_IPDATA_Nを書込み制御部125に送信する。
書込み制御部125は、画像処理部124から転送された画像データを受け取り、受け取った画像データについて各種書込み処理を施して画像信号(K,M,C,Y)_LDDATAを生成し、それぞれLD制御部114K,114M,114C,114Yに送信する。
LD制御部114K,114M,114C,114Yは、露光部9内に備えられ、露光部9による感光体ドラム7Y,7M,7C,7Kへのレーザ光LY,LM,LC,LKの照射を制御するためのものである。レーザ光LY,LM,LC,LKが照射されることによって、感光体ドラム7Y,7M,7C,7K上にトナー画像が形成される。形成されたトナー画像は、転写紙2に転写され出力される。
このようなカラー複写機におけるカラー画像形成処理の概要について説明する。PCからのプリンタ画像はプリンタコントローラ111で、コピー画像はスキャナコントローラ112でそれぞれ処理され、エンジン制御部113の画像処理部124に転送される。画像処理部124では、各画像データに応じた種々の画像処理を行い、カラー各色の画像データに変換して書込み制御部125に転送する。書込み制御部125では、各色の印字タイミングを生成し、副走査タイミングに合わせて画像データを受け取り、各種書込み画像処理を施した後にLD発光データに変換し、各色のLD制御部114K,114M,114C,114YにてLDを発光し、感光体ドラム上に画像を形成する。
ここで、エンジン制御部113内の書込み制御部125について図4を参照してさらに説明する。図4は、書込み制御部の構成の一例を示すブロック図である。書込み制御部125は、大別して、K,M,C,Y各色の書込み制御部126K,126M,126C,126Yと、入力画像制御部127K,127M,127C,127Yと、ラインメモリ128K,128M,128C,128Yと、を備えている。
さらに、基準色のK色の書込み制御部126Kは、書込画像処理部131K、位置ずれ補正パターン生成部132K、LDデータ出力部133Kを備える。また、他のM,C,Y色の書込み制御部126M,126C,126Yは、K色と同様の構成である書込画像処理部131M,131C,131Y、位置ずれ補正パターン生成部132M,132C,132Y、LDデータ出力部133M,133C,133Yに加えて、スキュー補正処理部135M,135C,135Yを備える。
なお、この図4においては、説明を簡略にするために、図3で説明した各色の主走査ゲート信号(K,M,C,Y)_IPLGATE_Nと副走査ゲート信号(K,M,C,Y)_IPFGATE_Nおよびこれら同期信号に伴う画像信号(K,M,C,Y)_IPDATA_Nの3信号をあわせて書き込み制御信号(K,M,C,Y)_IPDATA[7:0]_Nと表記している。
書込画像処理部131K,131M,131C,131Yは、ラインメモリ128K,128M,128C,128Yに格納された画像データを用いて各種の画像処理を行うものである。
位置ずれ補正パターン生成部132K,132M,132C,132Yは、転写ベルト3上での各色の色ずれを補正するための補正値を算出するために、転写ベルト3に転写する補正パターン14の画像データを生成するためのものである。
LDデータ出力部133K,133M,133C,133Yは、CPU122によって算出された主副レジスト補正量に応じて補正書き込み指令(LDDATA)をLD制御部114K,114M,114C,114Yに送出し、レーザ光照射による書き込みタイミングのずれを補正する制御を行うものである。また、LDデータ出力部133K,133M,133C,133Yは、CPU122によって算出された主走査倍率補正量に応じた画像周波数の変更指令(LDDATA)をLD制御部114K,114M,114C,114Yに送出し、主走査方向の倍率誤差の補正制御を行うものである。さらに、LDデータ出力部133K,133M,133C,133Yは、位置ずれ補正パターン生成部132K,132M,132C,132Yから得られる補正パターン14を転写ベルト3上に形成する指令(LDDATA)を、LD制御部114K,114M,114C,114Yに送出するものである。また、LDデータ出力部133K,133M,133C,133Yは、出力周波数を非常に細かく設定できるデバイス、たとえば電圧制御発信器(VCO:Voltage Controlled Oscillator)を利用したクロックジェネレータなどが各色について備えられている。
入力画像制御部127K,127M,127C,127Yは、画像処理部124から転送された画像データを受け取り、受け取った画像データをラインメモリ128K,128M,128C,128Yに格納し、格納した画像データを各色の書込み制御部126K,126M,126C,126Yに転送するものである。また、入力画像制御部127K,127M,127C,127Yは、CPU122により算出された歪みライン量に基づいて、各色のラインメモリ128K,128M,128C,128Yへの格納を行う。本実施の形態にかかる入力画像制御部127K,127M,127C,127Yでは、画像処理部124から1ビットの2値画像の画像データを受信し、受信した画像データを書込み制御部126K,126M,126C,126Yに転送する。なお、本実施の形態では、2値画像の画像データを書込み制御部126K,126M,126C,126Yに転送しているが、これに限定するものではない。例えば、2値画像の画像データを4ビットの濃度値(0(=白画素)〜15(=黒画素))を取る画像データに変換して書込み制御部126K,126M,126C,126Yに転送してもよい。
ラインメモリ128K,128M,128C,128Yは、画像処理部124から転送された画像データを順次格納するためのメモリである。
スキュー補正処理部135M,135C,135Yは、K色を基準として画像データのスキュー補正を行うものである。本実施の形態では、主走査方向を1ラインとして副走査方向の画像データ(画像)を複数に分割して、ラインメモリ128M,128C,128Yに格納し、主走査方向の1ラインの画像を表現する画素を分割し、分割した画素をスキューとは逆の副走査方向にシフトさせて出力する。これにより、トナー画像が形成される際に生じるスキューを補正する。以下、書込み制御部126K,126M,126C,126Yによる画像書込み処理について詳細に説明する。
まず、この図4のK色における画像書込み処理について説明する。まず、画像信号K_IPDATA[7:0]_Nが、画像処理部124から入力画像制御部127Kに送信される。入力画像制御部127Kは、ラインメモリ128Kに画像信号を一時記憶しながら、書込み制御部126Kに画像信号を送信する。書込み制御部126K内部では、書込画像処理部131Kが、入力画像制御部127Kから送信された画像信号をLDデータ出力部133Kに送信する。LDデータ出力部133Kは、K色書き込み画像信号K_LDDATAを生成しLD制御部114Kに送信する。
次に、図4のM色、C色、Y色における画像書込み処理について説明する。まず、画像信号(M,C,Y)_IPDATA[7:0]_Nが、画像処理部124から入力画像制御部127M,127C,127Yに送信される。ついで、入力画像制御部127M,127C,127Yは、RAM123に記憶されたスキュー補正量に基づいてスキュー量補正を行うために、それぞれラインメモリ128M,128C,128Yに画像信号を一時記憶する。スキュー補正処理部135M,135C,135Yは、一時記憶された画像信号にスキュー補正量によるスキュー量補正処理を実行した後、書込画像処理部131M,131C,131Yにそれぞれの画像信号を送信する。そして、K色の動作と同様に、各色の書込画像処理部131M,131C,131Yから画像信号を受信した各色のLDデータ出力部133M,133C,133Yは、書き込み画像信号(M,C,Y)_LDDATAを生成し各色のLD制御部114M,114C,114Yにそれぞれ送信する。上記スキュー補正量については、後に詳細を説明する。
なお、位置ずれ補正パターン14を出力する際には、位置ずれ補正パターン生成部132K,132M,132C,132YからK,M,C,Y各色のパターン画像信号が各色のLDデータ出力部133K,133M,133C,133Yに送信される。その後は、上記における説明と同様の動作を行う。
上述したように、カラー画像を形成するためには、K,M,C,Yの各色の位置合わせが行われていなければならない。そこで、位置ずれ補正の動作処理について、図5のフローチャートを参照しながら説明する。以下の位置ずれ補正処理は、基準色をK色とした場合について説明する。基準色とは補正の基準となる色で、他の色を基準色に合わせることで各色間の位置ずれを補正するものである。
位置ずれ補正処理が開始されると、まずステップS11で、図4の各色の書込み制御部126K,126M,126C,126Y内の位置ずれ補正パターン生成部132K,132M,132C,132Yで生成した位置ずれ補正パターンを転写ベルト3上に形成する。ついで、ステップS12では、検知センサ15,16によって、転写ベルト3上に形成された補正パターン14が検出される。
その後、ステップS13では、パターン検知部121で検出された補正パターン14がデジタルデータへと変換された後、CPU122によって、デジタルデータ化された補正パターンから基準色(ブラック(K))に対する主走査倍率補正量と、主レジスト補正量と、副レジスト補正量と、が算出される。同時に、ステップS14では、基準色(ブラック(K))に対する各色のスキュー補正量が算出され、ステップS15では、スキュー補正を行うための主走査方向の分割位置と補正方向が算出される。
そして、ステップS16では、算出した主走査倍率補正量、主レジスト補正量、および副レジスト補正量と、スキュー補正量と、スキュー補正用の主走査の分割位置および補正方向と、を含む情報をRAM123(または不揮発性メモリ)に保存し、位置ずれ補正処理が終了する。なお、RAM123に保存した補正量は、次回の位置ずれ補正処理を実施するまで、印刷時の補正量として使用される。
以上のように、主走査倍率補正量、主レジスト補正量、副レジスト補正量、およびスキュー補正量と、M,C,Y各色のスキュー補正用の主走査の分割位置および補正方向と、を保存した後に、印刷処理が行われる。図6は、印刷の処理手順の一例を示すフローチャートである。
まず、印刷要求を受信すると、ステップS31では、書込み制御部125は、前述した主走査倍率補正量に基づき、K,M,C,Y各色の画素クロック周波数を設定する。ついで、ステップS32では、RAM123に保存された主レジスト補正量に基づいて、各色の主走査遅延量を設定し、さらにステップS33では、RAM123に保存された副レジスト補正量に基づいて、各色の副走査遅延量を設定する。
その後、ステップS34では、各色のスキュー補正量と階調数情報に基づいて、基準色(K色)に対するM、CおよびY色のスキュー補正量を設定する。そして、ステップS35では、設定されたK,M,C,Y各色の主走査画素クロック周波数、主走査遅延量、副走査遅延量、スキュー補正量に基づいて画像補正を実行しながら印刷動作を開始し、印刷処理が終了する。
なお、主走査方向の色ずれの補正は、主走査倍率と主走査の書き出しタイミングを補正することによって行われ、主走査倍率補正は、書込み制御部125で検出した各色の倍率誤差量に基づく画像周波数を変更することによって行う。ただし、書込み制御部125には、周波数を非常に細かく設定できるデバイス、たとえばVCOを利用したクロックジェネレータなどが備えられている。また、主走査方向の書き出しタイミングは、各色の同期検知信号をトリガにして動作する主走査カウンタのどの位置からLDがデータを出力するかによって調整を行う。
さらに、副走査方向の色ずれ補正は、副走査方向の書き出しタイミングを調整することで行う。図7は、書込み制御部による副走査方向の書き出しタイミング補正の一例を示すタイミングチャートである。図7において、書込み制御部125は、CPU122からのスタート信号STTRIG_Nを基準として、ライン数をカウントし、画像処理部124に対して副走査タイミング信号(Y,M,C,K)_FSYNC_Nを出力する。
その後、画像処理部124では、副走査タイミング信号(Y,M,C,K)_FSYNC_Nの受信をトリガにして、副走査ゲート信号(Y,M,C,K)_IPFGATE_Nを書込み制御部125に出力し、画像データ(Y,M,C,K)_IPDATA[7:0]_Nを転送する。そして、各色の書込み制御部126Y,126M,126C,126Kでは、画像信号(Y,M,C,K)_LDDATAをLD制御部114Y,114M,114C,114Kに送信する。
なお、副走査方向のレジストを補正する場合には、スタート信号からの副走査遅延量(Y,M,C,K)_mfcntldを検出した位置ずれ量に応じて変更する。通常は、K色を基準としての位置ずれ量をカラー(M,C,Y)の副走査遅延量に反映して、(Y,M,C,K)_FSYNC_Nのタイミングを変更して副走査方向の位置合わせを行う。
つぎに、カラー複写機における位置ずれ量の検出とその補正処理について説明する。図8−1は、転写ベルトに形成された位置ずれ補正パターンの一例を示す図である。転写ベルト3上に形成された補正パターン14は検知センサ15,16で検知され、得られた信号は、パターン検知部121によってアナログデータからデジタルデータへと変換され、データがサンプリングされ、サンプリングされたデータはRAM123に格納される。一通り補正パターン14の検知が終了した後、RAM123に格納されていたデータを用いて、CPU122で種々の色ずれ量(主走査倍率、主レジストずれ量、副レジストずれ量、スキュー)を算出するための演算処理を行い、その色ずれ量から各ずれ成分の補正量を算出する。
ここでは、スキュー補正について説明する。図8−2は、スキュー量の算出方法の一例を示す図である。ここでは、K色を基準色とした場合の各色の歪量を算出する方法の一例を示している。スキュー補正については、まず基準色であるK色に対するカラー各色(M,C,Y)のスキュー量を求める。例えば、図8−2のようにC色の画像の右側が通常の位置よりも下にずれている場合を例に挙げて説明すると、左側の検知センサ15は、転写ベルト3に形成された左側パターンK11とC11の位置を検出し、その位置関係からK色とC色の左側距離KC_Lを算出する。一方、右側の検知センサ16は、転写ベルト3に形成された右側パターンK21とC21の位置を検出し、その位置関係からK色とC色の右側距離KC_Rを算出する。以上により、C色のK色に対するスキュー量:KC_Skewは、次式(1)のように求められる。
KC_Skew=KC_R−KC_L ・・・(1)
また、M色、Y色についても同様に、パターン検出によって次式(2)、(3)からそれぞれのスキュー量KM_Skew,KY_Skewが算出される。
KM_Skew=KM_R−KM_L ・・・(2)
KY_Skew=KY_R−KY_L ・・・(3)
以上のようにして、K色を基準としたC色、M色、Y色のスキュー量、KC_Skew,KM_Skew,KY_Skewが算出される。
ここで、スキュー量とスキュー補正量の関係についての詳細を説明する。図9−1は、副走査方向の解像度が600dpi時のK色基準の各色のスキュー量の一例を示す図である。上記の(1)〜(3)式を用いて、カラー各色のスキュー量が図9−1のように求められたものとする。すなわち、K色基準で各色のスキュー量が、M:−110[μm]、C:−130[μm]、Y:30[μm]であったとする。ここで、副走査方向の解像度が600dpiであるので、1ラインシフトすることによって、25,400[μm]/600=42.3[μm]移動する。したがって、スキュー補正量は、それぞれのずれ量(スキュー量)を1ラインあたりの移動量で割って、小数点以下は四捨五入して整数単位の値にし、符号を反転したものとして求めることができる。図9−2は、図9−1の場合のスキュー補正量の一例を示す図である。この図9−2に示されるように、図9−1に示されるスキュー量の場合のスキュー補正量は、それぞれM:+3ライン、C:+3ライン、Y:−1ラインとなる。
図10−1〜図10−6は、スキュー補正方法(スキュー補正量算出方法)の一例を示す図である。図10−1は、入力画像図を示す図であり、8ライン分の入力画像が示されている。ここで、1つのラインは1つのラインメモリに格納される画像を示している。図10−2は、スキューを補正しないで図10−1の入力画像図をそのままLDデータとして出力した状態を示す図である。この図に示されるように、走査ビームのスキューにより、入力画像図をそのままLDデータとして出力した場合には、図10−1と比較して用紙上で右側が上方向に3ラインに相当する量だけずれている(つまり、スキュー量のライン数は3である)。
このように、右側画像が上に3ラインずれている場合には、図10−3に示されるように、主走査方向を{(スキュー量のライン数)+1}等分割、すなわち4等分割する。ここで、ライン上の主走査方向に分割した位置(分割位置)をシフト位置といい、シフト位置で区切られるライン上の主走査方向の領域をシフト領域というものとする。
そして、図10−4に示されるように、右側のシフト領域に移る度に1ラインずつ下方向にシフトさせて画像を出力すれば、図10−5に示すように、用紙上で左右の画像位置を平行にさせることができる。つまり、ラインメモリに画像の一部を蓄積し、読み出し位置を切り替えながら読み出し、主走査方向に分割した画像(シフト領域)を副走査方向にシフトすることで各色のスキューを補正する。この副走査方向にシフトすることをシフトという。
図11−1〜図11−6は、スキュー補正方法(スキュー補正量算出方法)の他の例を示す図であり、入力画像図に対して、スキュー補正をしない場合に用紙上で右側の画像が通常の位置よりも下方向に1ラインずれている場合のスキュー補正方法を示している。この場合も上述した図10−1〜図10−5の場合と同様に処理を行うことで、スキューを補正することができる。つまり、主走査方向に2等分割し、右側のシフト領域に移る度に1ラインずつシフト領域を上方向にシフトさせることで、図11−5に示すように用紙上で左右の画像位置が平行になる。
実際のスキュー補正では、スキュー補正用のラインメモリに入力画像データを順次蓄積しておき、スキュー補正処理部135M,135C,135Yで、分割した各領域でどのラインメモリ128M,128C,128Yのデータをリードするかを切り替えることで、図10−4や図11−4の画像を出力する構成とする。そのため、図10−6と図11−6に示されるように、各色での主走査方向のシフト位置のアドレスと、それぞれのシフト位置で副走査方向の+方向か−方向にシフトするかの情報を求めておけばよい。この主走査方向のシフト位置のアドレスと、それぞれのシフト位置での副走査方向の+方向か−方向へのシフト方向を含む情報をシフト補正情報という。
たとえば、図10−3に示すように走査方向の画素数を4,800画素とした場合、左端に対して右端では3ライン上方向にシフトしているので、主走査方向に4分割される。そこで、1〜1,200画素、1,201〜2,400画素、2,401〜3,600画素、3,601〜4,800画素のシフト領域に分割し、それぞれのシフト領域を1ブロック目、2ブロック目、3ブロック目、4ブロック目というものとする。
その結果、図10−4のように1ライン目の0〜1,200画素までは1本目のラインメモリの画像データの1ブロック目を出力し、1,201〜4,800画素までは白画素を出力する。また、2ライン目の0〜1,200画素までは2本目のラインメモリの画像データの1ブロック目を出力し、1,201〜2,400画素では1本目のラインメモリの画像データの2ブロック目を出力し、2,401〜4,800画素までは白画素を出力する。このような画像データ出力処理を繰り返し実行することで、出力画像は図10−5に示すように左右の画像位置が平行になるように補正することができる。
図12−1〜図12−2は、ラインメモリのスキュー補正時のタイミングチャートである。ここでは、K色は基準色であるので分割なしであり、M色およびC色はスキュー補正量が3ドットであるので4分割補正であり、Y色はスキュー補正量が1ドットであるので、2分割補正であるものとする。
図12−1〜図12−2において、入力画像制御部127K,127M,127C,127Yは、CPU122からのスタート信号からの副走査遅延量(K,M,C,Y)_mfcntldによるタイミングで印刷動作を開始する。印刷動作が開始すると、ラインメモリK−1,M−1,C−1,Y−1に画像が記憶される。
ついで、ラインメモリK−2,M−2,C−2,Y−2に画像が記憶されると同時に、ラインメモリK−1,M−1,C−1,Y−1から画像が読み出される。そして、書込み制御部126Kを経てK色書込み信号K_LDDATAに全画素が出力され、書込み制御部126Mを経てM色書込み信号M_LDDATAに4分割の1ブロック目の画素が出力され、書込み制御部126Cを経てC色書込み信号C_LDDATAに4分割の1ブロック目の画素が出力され、書込み制御部126Yを経てY色書込み信号Y_LDDATAに2分割の1ブロック目の画素が出力される。
その後、ラインメモリK−1,M−3,C−3,Y−3に画像が記憶されると同時に、ラインメモリK−2,M−1,M−2,C−1,C−2,Y−1,Y−2から画像が読み出される。そして、書込み制御部126Kを経てK色書込み信号K_LDDATAに全画素が出力され、書込み制御部126Mを経てM色書込み信号M_LDDATAにラインメモリM−1の4分割の2ブロック目の画素とラインメモリM−2の4分割の1ブロック目の画素が出力される。また、書込み制御部126Cを経てC色書込み信号C_LDDATAにラインメモリC−1の4分割の2ブロック目の画素とラインメモリC−2の4分割の1ブロック目の画素が出力され、書込み制御部126Yを経てY色書込み信号Y_LDDATAにラインメモリY−1の2分割の2ブロック目の画素とラインメモリY−2の2分割の1ブロック目の画素が出力される。
ついで、ラインメモリK−2,M−4,C−4,Y−1に画像が記憶されると同時に、ラインメモリK−1,M−1,M−2,M−3,C−1,C−2,C−3,Y−2,Y−3から画像が読み出される。そして、書込み制御部126Kを経てK色書込み信号K_LDDATAに全画素が出力され、書込み制御部126Mを経てM色書込み信号M_LDDATAにラインメモリM−1の4分割の3ブロック目の画素とラインメモリM−2の4分割の2ブロック目の画素とラインメモリM−3の4分割の1ブロック目の画素が出力される。また、書込み制御部126Cを経てC色書込み信号C_LDDATAにラインメモリC−1の4分割の3ブロック目の画素とラインメモリC−2の4分割の2ブロック目の画素とラインメモリC−3の4分割の1ブロック目の画素が出力され、書込み制御部126Yを経てY色書込み信号Y_LDDATAにラインメモリY−2の2分割の2ブロック目の画素とラインメモリY−3の2分割の1ブロック目の画素が出力される。
その後、ラインメモリK−1,M−5,C−5,Y−2に画像が記憶されると同時に、ラインメモリK−2,M−1,M−2,M−3,M−4,C−1,C−2,C−3,C−4,Y−1,Y−3から画像が読み出される。書込み制御部126Kを経てK色書込み信号K_LDDATAに全画素が出力され、書込み制御部126Mを経てM色書込み信号M_LDDATAにラインメモリM−1の4分割の4ブロック目の画素とラインメモリM−2の4分割の3ブロック目の画素とラインメモリM−3の4分割の2ブロック目の画素とラインメモリM−4の4分割の1ブロック目の画素が出力される。また、書込み制御部126Cを経てC色書込み信号C_LDDATAにラインメモリC−1の4分割の4ブロック目の画素とラインメモリC−2の4分割の3ブロック目の画素とラインメモリC−3の4分割の2ブロック目の画素とラインメモリC−4の4分割の1ブロック目の画素が出力され、書込み制御部126Yを経てY色書込み信号Y_LDDATAにラインメモリY−3の2分割の2ブロック目の画素とラインメモリY−1の2分割の1ブロック目の画素が出力される。以上の処理が繰り返して実行され、スキュー補正された画像データが印刷される。
次に、曲がり補正について説明する。図13−1は、転写ベルトに形成された曲がり補正のための位置ずれ補正パターンの一例を示す図である。図13−2は、曲がり補正量算出方法の一例を示す説明図である。
図13−1に示すように、位置ずれ補正パターンを3つの検知センサ15,16,17によって検知する。補正パターン14は、検知センサ15,16,17で検知し、検知された信号は、図3に示したパターン検知部121によってアナログデータからデジタルデータへと変換され、データをサンプリングし、サンプリングされたデータはRAM123に格納される。
一通り補正パターン14の検知が終了した後、CPU122は、RAM123に格納されていたデータについて種々の色ずれ量(主走査倍率、主走査レジスト、副走査レジスト、スキュー又は曲がり)を算出するための演算処理を行い、その色ずれ量から各ずれ成分の補正量を算出する。
曲がり補正については、位置ずれ補正パターンを3つ以上の検知センサによって検知し、主走査方向へ区分した領域毎にスキュー量を求め、領域毎にスキュー補正を行えばよい。例えば、図13−1に示すように位置ずれ補正パターンを3つの検知センサ15,16,17によって検知する場合、検知センサ15,17間でのK色に対するスキュー量と、検知センサ17,16間のK色に対するスキュー量をそれぞれ求める。図13−2に示すようにM色の画像中央が下にずれている場合、M色の曲がり量(各スキュー量):KM_Skew1,KM_Skew2は、次の式で求められる。
KM_Skew1=KM_C−KM_L
KM_Skew2=KM_C−KM_R
ただし、KM_Cは、図13−1における中央のK色とM色のパターン間の間隔を示す。KM_Lは、図13−1における左側のK色とM色のパターン間の間隔を示す。KM_Rは、図13−1における右側のK色とM色のパターン間の間隔を示す。
図14−1〜図14−6は、曲がり補正方法(曲がり補正量算出方法)の一例を示す図である。図14−1は、入力画像図を示す図であり、8ライン分の入力画像が示されている。ここで、1つのラインは1つのラインメモリに格納される画像を示している。
図14−2は、走査ビームの曲がりにより、図14−1に示す入力画像をそのままLDデータとして出力した場合を示す図である。図14−2に示すように、図14−1の入力画像と比較して転写紙2上で中央が下に1ラインずれている画像となっている。
図14−2に示すように、中央の画像が下に1ラインずれている場合、図14−3に示すようにLC間の主走査をLC間のスキュー量のライン数+1の2等分割に、CR間の主走査をCR間のスキュー量のライン数+1の2等分割にし、図14−4に示すように、LC間は右側に行くたびに1ラインずつ上へシフトし、CR間は右側に行く度に1ラインずつ下へシフトしていけば、図14−5に示すように転写紙2上で各ラインの左右の画像位置が平行になる。
すなわち、曲がり量(左右の領域別のスキュー量)の符号を反転した値が曲がり補正量となり、曲がり量又は曲がり補正量のライン数+1に等分割し、スキューする方向とは逆方向(補正する方向)へ画像を1ラインずつシフトするようにする。
ここで、走査方向の画素数を4800画素とすると、中央部で1ライン下方向にシフトしているので、1200画素目で1ライン上にシフトさせる。そして、図14−5に示すように1ライン目は0から1199画素までは2本目のラインメモリ画像データを出力し、1200画素から3599画素までは1本目のラインメモリ画像データを出力し、3600画素から4800画素までは2本目のラインメモリ画像データを出力する。2ライン目は0から1199画素までは3本目のラインメモリ画像データを出力し、1200から3599画素までは2本目のラインメモリ画像データを出力し、2400から4800画素までは3本目のラインメモリ画像データを出力することによって出力画像は図14−5に示すように左右の画像位置が平行になるように補正することができる。
このような一連の画像処理により、各色間でスキューや曲がりが発生している場合においてもスキュー補正処理、曲がり補正処理を行うことにより、スキューや曲がりによる色ずれが低減され、画質を向上することが可能となる。
ここで、K色のスキュー補正量と画像の品質劣化との関係について説明する。図15は、K色のスキュー補正量と画質劣化との関係を示す図である。
図15に示すように、K色のスキュー補正を実施しない場合は、K色のスキュー補正量が0であり、ラインメモリを切り換えることがないので、すじ状ノイズ発生や段差発生等の画像の不具合は発生せず、画像品質の劣化は生じない。
また、K色のスキュー補正を実施する場合であって、K色のスキュー補正量が小さい場合には、図16に示すように、ラインメモリを切り換える回数が少ないので、すじ状ノイズ発生や段差発生等の画像の不具合の発生頻度は少なく、画像品質の劣化はあまり生じない。
これに対し、K色のスキュー補正を実施する場合であって、K色のスキュー補正量が大きい場合には、図17に示すように、ラインメモリを切り換える回数が多くなるので、すじ状ノイズ発生や段差発生等の不具合の発生頻度は多くなり、画像品質の劣化が著しく発生してしまう。
本実施の形態では、K色のスキュー補正を実施する場合において、K色のスキュー補正量が大きい場合でも、このような画質劣化を防止するものである。
本実施の形態では、上述した位置ずれ補正処理のスキュー補正処理部135によるステップS14のスキュー補正量の算出処理を以下のように行っている。
スキュー補正を行う場合、K色に対する各有彩色のライン数単位のスキュー補正量N0(KN0:K(ブラック)色、MN0:M(マゼンダ)色、CN0:C(シアン)色、YN0:Y(イエロー)色)の絶対値がラインメモリ128のライン数Lから1を差し引いた値以下(|N0|≦L−1)である場合は、K色についてはスキュー補正を行わずに各有彩色をK色に対して位置を合わせてスキュー補正(K色を基準にしたスキュー補正)を行うようにしている。このように、K色を基準にしてスキュー補正を行うことにより、コントラストの強いK色に対してスキュー補正をしたときに生じるすじ状ノイズ発生や段差発生等の画像の不具合を抑制することができる。
一方、K色に対する各有彩色のスキュー補正量N0の絶対値がラインメモリのライン数Lから1を差し引いた値を超える(|N0|>L−1)ときは、その超えた有彩色についてはK色を基準にしたスキュー補正を行うことができないことになる。この場合、各色のスキュー補正量の絶対値がいずれもL−1以下になるように、かつK色のスキュー補正量が最も0に近い値になるように各色の新たなスキュー補正量N1(KN1:K色、MN1:M色、CN1:C色、YN1:Y色)を算出し、算出した各色のスキュー補正量によりスキュー補正を行うようにする。
このように、K色のスキュー補正量をできるだけ0に近い値にしてスキュー補正を行うことにより、ラインメモリ128の記憶容量を増加しなくても補正範囲を拡大することができるようになると共に、コントラストの強いK色についてスキュー補正をしたときに生じるすじ状ノイズ発生や段差発生等の画像の不具合を効果的に抑制することができる。
次に、このようなスキュー補正処理部135によるスキュー補正量の演算処理の詳細について説明する。図18は、スキュー補正量の演算処理の手順を示すフローチャートである。
まず、スキュー補正処理部135は、K色に対する各有彩色のライン単位のスキュー補正量N0(MN0、YN0、CN0)を求める(ステップS1801)。そして、スキュー補正処理部135は、求めたN0(MN0、YN0、CN0)の絶対値がラインメモリ128のライン数Lから1を差し引いた第1所定値L−1以下であるか否かを判断する(ステップS1802)。
N0(MN0、YN0、CN0)の絶対値がいずれもL−1以下の場合には(ステップS1802:Yes)、スキュー補正処理部135は、N0(MN0、YN0、CN0)で各有彩色のスキュー補正を行い(ステップS1803)、処理を終了する。
一方、ステップS1802において、N0(MN0、YN0、CN0)の絶対値のいずれかがL−1より大きい場合には(ステップS1802:No)、スキュー補正処理部135は、N0(KN0、MN0、YN0、CN0)のうち最大値N0max、最小値N0minを求め、(11)式を満たすか否かを判断することにより補正可能か否か判断する(ステップS1804)。
N0max−N0min≦2(L−1)・・・(11)
そして、N0max−N0min が2(L−1)より大きく(11)式を満たさない場合には(ステップS1804:No)、スキュー補正処理部135は、補正不可能であると判定し、エラー判定を行い(ステップS1809)、処理を終了する。
一方、N0max−N0minが2(L−1)以下であり(11)式を満たする場合には(ステップS1804:Yes)、スキュー補正処理部135は、N0の絶対値の最大値N0ABSmaxの符号が正か負かを判定する(ステップS1805)。
そして、N0ABSmaxの符号が正の場合には(ステップS1805:Yes)、スキュー補正処理部135は、(12)〜(15)式より各色のスキュー補正量の絶対値がL−1以下になるN1(KN1、MN1、CN1、YN1)を求める(ステップS1806)。
KN1=KN0−N0ABSmax+(L−1)・・・(12)
MN1=MN0−N0ABSmax+(L−1)・・・(13)
CN1=CN0−N0ABSmax+(L−1)・・・(14)
YN1=YN0−N0ABSmax+(L−1)・・・(15)
一方、N0ABSmaxの符号が負の場合には(ステップS1805:No)、スキュー補正処理部135は、(16)〜(19)式より各色のスキュー補正量の絶対値がL−1以下になるN1(KN1、MN1、CN1、YN1)を求める(ステップS1807)。
KN1=KN0+N0ABSmax−(L−1)・・・(16)
MN1=MN0+N0ABSmax−(L−1)・・・(17)
CN1=CN0+N0ABSmax−(L−1)・・・(18)
YN1=YN0+N0ABSmax−(L−1)・・・(19)
そして、スキュー補正処理部135は、ステップS1806またはS1807で求めたN1(BkN1、MN1、YN1、CN1)で各色のスキュー補正を行い(ステップS1808)、処理を終了する。
なお、本実施の形態では、ステップS1804の判定処理で、N0max−N0minが2(L−1)を超える場合、ステップS1809でエラー判定を行い、処理を終了するように構成しているが、これに限定されるものではない。例えば、N0’max−N0’min=2(L−1)となるN0’を求めて、N0’を用いてステップS1805以降の処理を実行するようにスキュー補正処理部135を構成してもよい。
また、ステップS1804の判定で N0max−N0min が2(L−1)を超える場合には、N0max−N0min≦2(L−1)+β(β:任意の値)のときはN0’max−N0’min= 2(L−1)となるN0’を求めて、N0’を用いてステップS1805以降の処理を行い、N0max−N0min>2(L−1)+βのときはエラー判定を行い、処理を終了するようにスキュー補正処理部135を構成してもよい。
また、本実施の形態では、ステップS1804の判定処理は、ステップS1802の判定結果を受けた後に処理を行うようにしているが、ステップS1804の処理はステップS1802の判定処理の前に実行するようにスキュー補正処理部135を構成してもよい。
次に、K色を基準とした各有彩色のスキュー補正量N0(MN0、CN0、YN0)が図9−2に示す例の場合について具体的に説明する。
図9−2の例では、K色基準のM色のスキュー補正量MN0は+3ライン、K色基準のC色のスキュー補正量CN0は+3ライン、K色基準のY色のスキュー補正量YN0が−1ラインとなっている。この場合、ラインメモリLの記憶容量がL=6ライン分あるとすると、K色基準の各有彩色のスキュー補正量N0は上述のステップS1802における|N0|≦L−1を満足することになる。このため、ステップS1803の処理により、K色のスキュー補正は行われず、各有彩色のスキュー補正をK色基準で補正することになる。
次に、K色を基準とした各有彩色のスキュー補正量N0(MN0、CN0、YN0)が図19に示す例の場合について具体的に説明する。
図19に示す例では、K色基準のM色のスキュー補正量MN0は+7ライン、K色基準のC色のスキュー補正量CN0は+3ライン、K色基準のY色のスキュー補正量YN0が−1ラインである。この場合、ラインメモリLの記憶容量がL=6ライン分あるとすると、K色基準のY色以外の有彩色のスキュー補正量N0は上述のステップS1802における条件|N0|≦L−1を満足しない。このため、スキュー補正処理部135は、各色のスキュー補正量の絶対値がいずれもL−1以下になるように、且つブラックのスキュー補正量が最も0に近い値になるような各色の新たなスキュー補正量N1(KN1:K色、MN1:M色、CN1:C色、YN1:Y色)を算出し、算出した各色のスキュー補正量によりスキュー補正を行う。
まず、スキュー補正処理部135は、K色基準の各有彩色のスキュー補正量N0(MN0、YN0、CN0)より、最大値N0max、最小値N0minを求め、ステップS1804で(11)式より補正可能か否かを判断する。この例の場合、N0max=+7(MN0)、N0min=−1(YN0)であるので、次式のように算出される。
N0max−N0min=MN0−YN0=(+7)−(−1)=+8
すなわち、(11)式の判定条件であるN1max−N1min≦2(L−1)を満足し、補正可であると判定される。
次に、スキュー補正処理部135は、N0の絶対値の最大値N0ABSmaxを求める。K色基準の各有彩色のスキュー補正量N0の絶対値はそれぞれ|MN0|=7、|CN0|=3、|YN0|=1となり、N0の絶対値の最大値N0ABSmaxは、+7(MN0)である。ステップS1805にて、このN0ABSmaxの符号が正であるため、ステップS1806により(12)〜(15)式から各色のスキュー補正量N1(KN1、MN1、CN1、YN1)を求める。
KN1=KN0−N0ABSmax+(L−1)=0−(+7)+5=−2
MN1=MN0−N0ABSmax+(L−1)=+7−(+7)+5=+5
CN1=CN0−N0ABSmax+(L−1)=+3−(+7)+5=+1
YN1=YN0−N0ABSmax+(L−1)=−1−(+7)+5=−3
このように求めたN1(KN1、MN1、YN1、CN1)は、各色のスキュー補正量の絶対値がいずれもL−1以下になり、かつK色のスキュー補正量が最も0に近い値になるため、ステップS1808にてこのスキュー補正量でステップS1808で各色のスキュー補正を行うと、K色のスキュー補正をしたときに生じるすじ状ノイズ発生や段差発生等の画像の不具合の発生を効果的に抑制することができる。
このように本実施の形態では、スキュー補正処理部135は、各色のスキュー補正量の絶対値がいずれもL−1以下になり、かつK色のスキュー補正量が最も0に近い値になるような各色の新たなスキュー補正量N1(KN1:K色、MN1:M色、CN1:C色、YN1:Y色)を算出し、算出した各色のスキュー補正量によりスキュー補正を行っているので、K色のスキュー補正をしたときに生じるすじ状ノイズ発生や段差発生等の画像の不具合の発生を効果的に抑制することができ、高品質な画像を得ることができる。
なお、本実施の形態では、ライン単位のスキュー補正量により各色のスキュー処理を実行しているが、ライン単位に換算せずに、光学センサの検出するデータの単位(例えば[um]単位)のスキュー補正量を求め各色のスキュー処理を実行するように構成することができる。
また、本実施の形態では、スキュー補正量算出によるスキュー補正処理について適用した例を説明したが、曲がり補正量算出による曲がり補正処理についても適用することが可能である。
なお、上記実施の形態の画像形成装置で実行される画像形成プログラムは、ROM等に予め組み込まれて提供される。
上記実施の形態の画像形成装置で実行される画像形成プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
さらに、上記実施の形態の画像形成装置で実行される画像形成プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、上記実施の形態の画像形成装置で実行される画像形成プログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
上記実施の形態の画像形成装置で実行される画像形成プログラムは、上述したスキュー補正処理部135等を含むモジュール構成となっており、実際のハードウェアとしてはCPU(プロセッサ)が上記ROMから画像形成プログラムを読み出して実行することにより上記スキュー補正処理部135等が主記憶装置上にロードされ、主記憶装置上に生成されるようになっている。