(57)【特許請求の範囲】
【請求項１】
画像形成装置であって、
副走査方向の周期的な濃度ムラであるバンディングを補正すべく画像信号の補正量を決定する補正量決定手段と、
前記補正量決定手段によって決定された補正量に従って、ｎビットの画像信号の各画素値を補正して、第１の補正画像信号として出力する画像補正手段と、
前記画像補正手段によって補正された第１の補正画像信号を、ｎビットよりも低いｍビットの第２の補正画像信号へ画素ごとに量子化する量子化手段と
を備え、
前記量子化手段は、
前記第１の補正画像信号を前記第２の補正画像信号へ量子化する際の量子化誤差を、各主走査ラインにおいて連続した複数の画素を含む所定の領域内で打ち消すように、前記バンディングの補正方向とは直交する主走査方向に分散させることを特徴とする画像形成装置。
【請求項２】
前記量子化手段は、
着目画素の前記第２の補正画像信号と前記第１の補正画像信号との差分を計算する差分計算手段と、
前記差分計算手段によって計算された差分を、前記着目画素に対して主走査方向において隣接する隣接画素の前記第１の補正画像信号に加算する加算手段と
を備えることを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記量子化手段は、
各主走査ラインの画素ごとに前記第２の補正画像信号と前記第１の補正画像信号との差分を計算する差分計算手段と、
前記差分計算手段によって計算された差分について、主走査ラインにおいて連続した複数の画素を含む所定のブロック単位で総和を計算する総和計算手段と、
前記総和の絶対値を小さくするようにブロック内の第２の補正画像信号を修正する修正手段と
を備えることを特徴とする請求項１に記載の画像形成装置。
【請求項４】
前記修正手段は、
前記総和が正の場合は、ブロック内の差分のうち、正の値でかつ絶対値が最も大きい差分を有する画素の第２の補正画像信号を１つ小さい量子化レベルに変更し、前記総和が負の場合は、ブロック内の差分うち、負の値でかつ絶対値が最も大きい差分を有する画素の第２の補正画像信号を１つ大きい量子化レベルに変更する量子化処理を実行するとともに、前記総和の絶対値が所定の値より小さくなるまで前記量子化処理を繰り返し実行することを特徴とする請求項３に記載の画像形成装置。
【請求項５】
前記補正量決定手段は、
各主走査ラインの画像信号を副走査方向における隣接ラインにシフトする位置補正量を、前記補正量として決定することを特徴とする請求項１乃至４の何れか１項に記載の画像形成装置。
【請求項６】
回転体と、該回転体を駆動するためのモータとを含み、画像を形成するための画像形成手段と、
前記画像形成手段を用いて、前記モータの回転ムラに伴う濃度ムラを検出するためのパッチ画像を形成するパッチ形成手段と
をさらに備え、
前記補正量決定手段は、
前記パッチ画像の濃度を検出する濃度センサからの濃度検出信号の平均濃度と、前記モータの駆動に関する位相信号が出力されるごとの濃度検出信号との差分をそれぞれ算出する手段と、
前記位相信号が出力される各タイミングにおいて、前記差分から濃度変動率を算出する手段と、
前記位相信号が出力される各タイミングにおいて、前記濃度変動率に予め定められた係数を乗算することにより、副走査方向における位置補正量を算出する手段と、
前記位相信号が出力される各タイミング間で前記位置補正量を補間することにより、主走査ラインごとの位置補正量を決定する手段と、
各主走査ラインと、決定された位置補正量とを対応付けて定義したテーブルを作成し、記憶手段に記憶する手段と
を備え、
前記画像補正手段は、前記記憶手段に記憶されたテーブルを用いて、前記第１の補正画像信号を生成することを特徴とする請求項５に記載の画像形成装置。
【請求項７】
画像信号にハーフトーン処理を施し、前記ｍビットの画像信号を出力するハーフトーン処理手段をさらに備え、
前記画像補正手段は、
ハーフトーン処理後において、ｍビットの画像信号の各画素値をｎビットの画像信号に変換した後に、前記第１の補正画像信号へ補正することを特徴とする請求項１乃至６の何れか１項に記載の画像形成装置。
【請求項８】
画像形成装置であって、
副走査方向の周期的な濃度ムラであるバンディングを補正すべく画像信号の補正量を決定する補正量決定手段と、
前記補正量決定手段によって決定された前記補正量をｎビットから該ｎビットより低いｍビットに量子化する量子化手段と、
前記量子化手段によって量子化された前記補正量を、主走査方向において連続した複数の画素を含むブロック単位での補正量を示す修正補正量に変換する変換手段と、
前記変換手段によって変換されたブロック単位の修正補正量を、ｍビットの画像信号の該ブロックに対応する画素に加算することにより、該画像信号を補正する画像補正手段と
を備え、
前記変換手段は、ブロック単位の修正補正量の平均値が補正量に最も近くなるように変換することを特徴とする画像形成装置。
【請求項９】
前記変換手段は、前記ブロック内の変換した値がブロック内、及びブロックの繰り返しの周期内で偏らないように前記補正量を前記修正補正量へ変換することを特徴とする請求項８に記載の画像形成装置。
【請求項１０】
前記補正量決定手段は、
主走査ラインごとに画像信号の濃度補正量を、前記補正量として決定することを特徴とする請求項８又は９に記載の画像形成装置。
【請求項１１】
画像信号にハーフトーン処理を施し、前記ｍビットの画像信号を出力するハーフトーン処理手段をさらに備え、
前記画像補正手段は、
ハーフトーン処理後において、ｍビットの画像信号の前記ブロックに対応する画素に、前記ブロック単位の修正補正量を加算することを特徴とする請求項８乃至１０の何れか１項に記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子写真方式或いは静電記録方式を利用した、複写機、プリンタ等の画像形成装置に関するものである。
【背景技術】
【０００２】
電子写真方式の画像形成装置の場合、感光ドラムや、中間転写ベルト駆動ローラや、現像ローラ自体、或いはそれらを駆動するモータやギア等の周期的な回転ムラによって、画像の副走査方向において濃度ムラ（所謂バンディング）が発生する。より詳細には、例えば感光ドラムに回転ムラが生じるとレーザの書き込み位置が周期的に変動してしまう。また、中間転写ベルトの駆動ローラに回転ムラが生じると転写位置が周期的に変動してしまう。また、現像ローラに回転ムラが生じると現像状態が周期的に変動してしまう。位置の変動は主走査ライン間隔の変動（所謂ピッチ誤差）となり、濃度ムラとして見えてしまう。また、現像の変動は主走査ライン濃度の変動としてやはり濃度ムラとして見えてしまう。そしてこれら周期的変動が画像上にバンディングとして表れ印字品質を劣化させてしまう。
【０００３】
このバンディングを解決するために、特許文献１では、画像信号にバンディングを打ち消すような補正を行う手法、所謂バンディング画像補正手法が提案されている。バンディング画像補正手法としては上記位置ズレや現像状態の変動によって生じる濃度ムラを打ち消すように画像の階調を逆方向に補正する濃度補正手法と、上記位置ズレを打ち消すように画像信号上で走査位置を逆方向に移動する位置補正手法とが考えられている。位置補正の方法としてはライン単位の補正に加えて、１ライン未満の補正をＰＷＭ（パルス幅変調）などで多値を使用して擬似的に行う方法が考えられている。
【０００４】
特許文献１では、副走査方向の濃度ムラについて上記濃度補正による解決策が提案されている。具体的には、まず、濃度センサにより画像形成装置から発生しているバンディングの濃度ムラを測定し、測定した濃度ムラから画像形成中の濃度ムラを予測し、濃度ムラを打ち消すように画像信号を補正する。しかしながら、例えば、ハーフトーン処理の前で濃度補正を行う場合、その後のハーフトーン処理によって、補正した状態が保存されず、結果的にバンディングを低減できない恐れがある。また、上記位置補正を行う場合は上記問題がより顕著になってしまう。したがって、バンディング画像補正はハーフトーン処理の後に行う必要がある。一方、データ転送量の低減、メモリの節約、ＰＷＭ回路のコストダウンなどのためにハーフトーン処理後の画像信号のビット数はハーフトーン処理前のビット数よりも少ない値となることが望ましい。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−１０８２４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、画像信号のビット数が少ない場合、補正量を反映させる為の分解能が十分でない為、補正精度が足りなくなり、補正誤差に起因する横スジが発生するなどかえって画質が劣化する問題があった。図２４はある周期のピッチ誤差によるバンディングに対して、ハーフトーン処理後に上記位置補正を行い、補正量を８ビット及び４ビットにそれぞれ量子化した場合の補正結果のピッチ誤差の例を示している。元のピッチ誤差（太線）に対して８ビット（実線）の場合はピッチ誤差はほぼ０に抑えられているのに対して４ビット（破線）では突発的に大きなピッチ誤差が生じていることが分かる。このピッチ誤差が突発的なスジとして画質劣化を引き起こすことになる。つまり、補正量を表すためのビット数が小さいほど量子化誤差が増大してしまうことになる。
【０００７】
本発明は、上述の問題に鑑みて成されたものであり、できるだけ少ないビット数でのバンディング画像補正を実施するとともに、量子化誤差を所定の領域内で分散させることで高精度なバンディング画像補正を実現する画像形成装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、例えば、画像形成装置として実現できる。画像形成装置は、副走査方向の周期的な濃度ムラであるバンディングを補正すべく画像信号の補正量を決定する補正量決定手段と、補正量決定手段によって決定された補正量に従って、ｎビットの画像信号の各画素値を補正して、第１の補正画像信号として出力する画像補正手段と、画像補正手段によって補正された第１の補正画像信号を、ｎビットよりも低いｍビットの第２の補正画像信号へ画素ごとに量子化する量子化手段とを備え、量子化手段は、第１の補正画像信号を第２の補正画像信号へ量子化する際の量子化誤差を、各主走査ラインにおいて連続した複数の画素を含む所定の領域内で打ち消すように、前記バンディングの補正方向とは直交する主走査方向に分散させることを特徴とする。
【０００９】
また、本発明は、画像形成装置として実現できる。画像形成装置は、副走査方向の周期的な濃度ムラであるバンディングを補正すべく画像信号の補正量を決定する補正量決定手段と、補正量決定手段によって決定された補正量をｎビットより低いｍビットに量子化する量子化手段と、量子化手段によって量子化された補正量を、主走査方向において連続した複数の画素を含むブロック単位での補正量を示す修正補正量に変換する変換手段と、変換手段によって変換されたブロック単位の修正補正量を、ｍビットの画像信号のブロックに対応する画素に加算することにより、画像信号を補正する画像補正手段とを備え、変換手段は、ブロック単位の修正補正量の平均値が補正量に最も近くなるように変換することを特徴とする。
【発明の効果】
【００１０】
本発明は、できるだけ少ないビット数でのバンディング画像補正を実施するとともに、量子化誤差を所定の領域内で分散させることで高精度なバンディング画像補正を実現する画像形成装置を提供できる。
【図面の簡単な説明】
【００１１】
【図１】画像形成装置の断面図である。
【図２】濃度センサの構成図である。
【図３】モータの構成図である。
【図４】信号処理部のブロック図である。
【図５】センサ信号を表すである。
【図６】システム全体構成のブロック図である。
【図７】出力補正テーブル作成のフロー図である。
【図８】ＦＧ信号のリセットのタイミングチャートである。
【図９】テストパッチ露光及び、検出のタイミングチャートである。
【図１０】露光タイミングを表す模式図である。
【図１１】補正テーブルを示す図である。
【図１２】補正テーブルの補間を示す図である。
【図１３】画像形成時のＦＧカウンタ値と露光のタイミングの関係を示すタイミングチャートである。
【図１４】実施例１、２の画像補正工程のフロー図である。
【図１５】実施例１の補正量修正工程のフロー図である。
【図１６】画像データとＦＧパルス同期のフロー図である。
【図１７】量子化の値を示す図である。
【図１８】濃度補正，及び補正量修正を表す図である。
【図１９】別の補正量修正工程のフロー図である。
【図２０】別の補正量修正を表す図である。
【図２１】別の補正テーブルを表す図である。
【図２２】別の画像補正のフロー図である。
【図２３】別の画像補正を表す図である。
【図２４】比較例の問題点を表す図である。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態について図面を用いて説明する。尚、以下の実施例は特許請求の範囲に係る発明を限定するものでなく、また実施例で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１３】
＜実施例１＞
＜画像形成装置の構成＞
まず、図１を参照して、本発明における画像形成装置の構成例について説明する。当該画像形成装置においては、まず、画像処理部から供給される画像情報に基づいて点灯される露光光により静電潜像を形成し、この静電潜像を現像して単色トナー像を形成する。そして、各色の単色トナー像を形成し、これらを重ね合わせ、それらを記録材Ｐへ転写し、その記録材Ｐ上の多色トナー像を定着させ、当該記録材を機外へ排出する。以下、詳細に説明する。
【００１４】
まず、給紙部２１ａ又は２１ｂから記録材Ｐが給紙される。感光ドラム（像担持体）２２Ｙ、２２Ｍ、２２Ｃ、２２Ｋは、アルミシリンダの外周に有機光導伝層を塗布して構成され、図示しない駆動モータ６ａ〜６ｄの駆動力が伝達されて回転する。注入帯電器２３は感光ドラム２２を帯電させる。４個の注入帯電器２３Ｙ、２３Ｍ、２３Ｃ、２３Ｋは、イエロー（Ｙ）、マゼンダ（Ｍ）、シアン（Ｃ）、ブラック（Ｋ）に夫々対応する。各注入帯電器２３には丸断面で示されるようにスリーブが備えられている。露光光はスキャナ部２４Ｙ、２４Ｍ、２４Ｃ、２４Ｋから出力される。感光ドラム２２Ｙ、２２Ｍ、２２Ｃ、２２Ｋの表面を選択的に露光することにより、静電潜像が形成される。尚、感光ドラム２２Ｙ〜Ｋは、一定の偏心成分をもって回転しているが、静電潜像が形成される時点においては、各感光ドラム２２の位相関係は、転写部において同じ偏心影響になるよう既に調整されている。現像器２６は、トナーカートリッジ（２５Ｙ、２５Ｍ、２５Ｃ、２５Ｋ）から供給される現像剤により、静電潜像を現像化すべく現像剤を用いて現像剤像を形成する。４個の現像器２６Ｙ、２６Ｍ、２６Ｃ、２６Ｋは、イエロー（Ｙ）、マゼンダ（Ｍ）、シアン（Ｃ）、ブラック（Ｋ）に夫々対応する。各現像器には、スリーブ２６ＹＳ、２６ＭＳ、２６ＣＳ、２６ＫＳが設けられており、また、各々の現像器は脱着可能に画像形成装置に取り付けられている。
【００１５】
中間転写体２７は、感光ドラム２２Ｙ、２２Ｍ、２２Ｃ、２２Ｋに接触しており、中間転写体の駆動ローラ５２によって画像形成時に時計周り方向に回転し、感光ドラム２２Ｙ、２２Ｍ、２２Ｃ、２２Ｋの回転に伴って、各トナー像が重畳転写される。その後、中間転写体２７に転写ローラ２８が接触して記録材Ｐを狭持搬送し、記録材Ｐに中間転写体２７上の多色トナー像が転写される。転写ローラ２８は、記録材Ｐ上に多色トナー像を転写している間、２８ａの位置で記録材Ｐに当接し、転写処理後は２８ｂの位置に離間する。
【００１６】
定着器３０は、記録材Ｐを搬送させながら、転写された多色トナー像を溶融定着させるものであり、図１に示すように記録材Ｐを加熱する定着ローラ３１と記録材Ｐを定着ローラ３１に圧接させるための加圧ローラ３２を備えている。定着ローラ３１と加圧ローラ３２は中空状に形成され、内部にそれぞれヒータ３３、３４が内蔵されている。すなわち、多色トナー像を保持した記録材Ｐは定着ローラ３１と加圧ローラ３２により搬送されるとともに、熱および圧力が加えられ、トナーが表面に定着される。
【００１７】
トナー像定着後の記録材Ｐは、その後、排出ローラによって排紙トレイに排出されて画像形成動作が終了する。クリーニング手段２９は、中間転写体２７上に残ったトナーをクリーニングするものであり、中間転写体２７上に形成された４色の多色トナー像を記録材Ｐに転写した後の廃トナーは、クリーナ容器に蓄えられる。濃度センサ５１は、図１の画像形成装置において中間転写体２７へ向けて配置されており、中間転写体２７の表面上に形成されたトナーパッチの濃度を測定し、濃度検出信号を出力する。
【００１８】
なお、本実施例では中間転写体２７を備えた画像形成装置を例に説明するが、本発明は感光ドラム２２に現像されたトナー像（現像剤像）を記録材に直接転写する一次転写方式を採用した画像形成装置にも適用することができる。この場合、以下の説明において、中間転写体２７を、記録材搬送ベルト（記録材担持体上）に置き換えることで、発明を実施できる。また、図１に示される断面図では各感光ドラム２２に駆動手段であるモータ６が設けられているが、複数の感光ドラム２２でモータ６を共通化してもよい。また、以下では、画像の主走査方向に対して、上からみた場合に主走査方向と垂直に交わる、例えば記録材の搬送方向や、中間転写体の回転方向の称呼を、搬送方向もしくは副走査方向と称する。
【００１９】
＜濃度センサ５１の構成＞
次に、図２を参照して、光学特性検出センサである濃度センサ５１の一例について説明する。図２（ａ）に示すように、濃度センサ５１は、発光素子であるＬＥＤ８と、受光素子であるフォトトランジスタ１０により構成される。ここで、ＬＥＤ８により照射された光は、拡散光を抑えるためのスリット９を通過し、中間転写体２７表面に到達する。そして、乱反射光を開口部１１により抑制した上で正反射成分をフォトトランジスタ１０で受光する。
【００２０】
図２（ｂ）は濃度センサ５１の回路構成を示す図である。抵抗１２はフォトトランジスタ１０とＶｃｃの電圧を分圧するためのものであり、抵抗１３はＬＥＤ８を駆動する電流を制限する。トランジスタ１４は、ＣＰＵ４０１からの信号により、ＬＥＤ８をオンオフする。そして、図２（ｂ）に示される回路では、ＬＥＤ８により光を照射したときのトナー像からの正反射光量が大きいと、フォトトランジスタ１０に流れる電流が大きくなり、ＯｕｔＰｕｔとして検出される電圧Ｖ１の値が大きくなる。換言すれば、図２（ｂ）の構成では、トナーパッチの濃度が低く正反射光が大きいときに検出電圧Ｖ１は高くなり、トナーパッチの濃度が高く正反射光が小さいときに検出電圧Ｖ１は小さくなる。
【００２１】
＜モータ６の構成＞
次に、図３を参照して、補正対象となるバンディングの発生源であるモータの構成について説明する。まず、図３の（ａ）乃至（ｄ）を参照して、モータ６の一般的な構成を説明し、その後に図３の（ｅ）等を用い、モータ６で発生する周期的な回転ムラのメカニズムについて説明する。尚、以下においては、バンディングの発生源として回転体であるモータを例に説明を行うがそれに限定されない。画像形成に係る回転体であれば、例えば、ベルト駆動ローラや、感光ドラムや、現像ローラ等をバンディングの発生源として想定することができる。
【００２２】
モータの一般的な構成の説明
まず、図３の（ａ）に、モータ６の断面図を、図３の（ｂ）に正面図を、また、図３の（ｃ）に回路基板３０３を取り出した図を夫々一例として示す。尚、モータ６とは、例えば上に説明した感光ドラム２２を駆動するモータ６ａ〜ｄや、駆動ローラ５２を駆動するモータ６ｅ等、画像形成部に含まれる様々なモータに相当させることができる。
【００２３】
図３の（ａ）、（ｂ）において、ロータフレーム３０１の内側には、永久磁石で構成されるロータマグネット３０２が接着されている。ステータ３０８にはコイル３０９が巻かれている。そして複数のステータ３０８が、ロータフレーム３０１の内周方向に沿って配置されている。シャフト３０５は回転力を外部に伝達する。具体的には、当該シャフト３０５を加工しギアを形成したり、或いはＰＯＭなどの樹脂により構成されたギアを当該シャフト３０５に挿入し、回転力を相手ギアに伝達する。ハウジング３０７は、ベアリング３０６を固定し、且つ取り付けプレート３０４に勘合される。
【００２４】
一方、図３（ｃ）に示すような回路基板３０３のロータ側の面には、ＦＧ（Ｆｒｅｑｕｅｎｃｙ  Ｇｅｎｅｒａｔｏｒ）マグネット３１１に対向するように、環状にＦＧパッチ（速度パッチ）３１０がプリントされている。また、回路基板３０３の他方の面には、不図示の駆動制御用の回路部品が実装されている。駆動制御用の回路部品には、制御用ＩＣ、複数のホール素子（例えば３つ）、抵抗、コンデンサ、ダイオード、ＭＯＳＦＥＴ等がある。そして、不図示の制御ＩＣは、ロータマグネット３０２の位置情報（ホール素子出力）に基づき、電流を流すコイルと、その電流の向きを切り替え、ロータフレーム３０１や、それに接続された各パーツを回転させる。
【００２５】
次に、図３の（ｄ）にロータマグネット３０２を取り出した図を示す。ロータマグネット３０２の内周表面には３１２で示すように着磁が施され、ロータマグネット３０２の開放面端にはＦＧマグネット３１１の着磁が施されている。本実施例では、ロータマグネット３０２は８極（４Ｎ極、４Ｓ極）の駆動用着磁を持っている。また着磁３１２は理想的には等間隔でＮ極とＳ極が交互に着磁されている。一方、当該ＦＧマグネット３１１は、Ｎ、Ｓ磁極が駆動用着磁の数より多く着磁されている（本実施例ではＮ極Ｓ極の対が３２個）。尚、図３の（ｃ）に示されるＦＧパッチ３１０は、ＦＧマグネット３１１の着磁極数と等しい数の矩形を、直列かつ環状に接続して形成している。尚、駆動用着磁数及びＦＧマグネット数については上の例に限定されることはなく、その他の形態でも適用可能であることは言うまでもない。
【００２６】
ここで、図３に例示されるモータでは、モータの速度センサとして、回転速度に比例した周波数信号を発生する周波数発電機（Ｆｒｅｑｕｅｎｃｙ  Ｇｅｎｅｒａｔｏｒ）方式、即ちＦＧ方式を採用している。以下それについて説明する。ＦＧマグネット３１１がロータフレーム３０１と一体的に回転すると、ＦＧパッチ３１０には、ＦＧマグネット３１１との相対的な磁束変化により、回転速度に応じた周波数の正弦波状の信号が誘起される。不図示の制御ＩＣは、発生した誘起電圧と所定閾値とを比較することにより、パルス状のＦＧ信号を生成する。そして、当該生成されたＦＧ信号に基づきモータ６の速度／駆動制御、及び後述する各種処理が行なわれる。尚、モータの速度センサとしては、速度発電型のものに限らず、ＭＲセンサ式やスリット板式等のエンコーダー型を採用してもよい。
【００２７】
後述するが本実施例では、モータの回転ムラが周期的な濃度ムラ（バンディング）に連動してくると想定している。つまり、どのような周期的濃度ムラが発生しているかを予測するときに、モータの回転ムラの回転位相をパラメータにしている。そして、後述するＣＰＵ４０１は、モータ６から出力されるＦＧ信号に基づき、回転ムラの回転位相を特定している。
【００２８】
モータの回転ムラ発生のメカニズム
一般的に、モータ１回転周期の回転ムラの態様は、モータの構造に起因して決定される。代表例として、ロータマグネット３０２の着磁具合（ロータ１周での着磁バラツキ）と、ロータマグネット３０２とステータ３０８の中心位置のずれとの２つにより、モータ１回転周期の回転ムラの態様が決まる。これは、当該２つの要因により、各ステータ３０８全体とロータマグネット３０２全体とで発生している総合モータ駆動力が、モータ６の１周期の中で変化することに起因する。ここで図３の（ｅ）を用いて着磁のバラツキがどのようなものかを示す。図３の（ｅ）は、着磁３１２を正面から見た図である。Ａ１〜Ａ８、及びＡ１’〜Ａ８’は夫々極が変化する境界を示す。円周に沿って等間隔でプロットされるＡ１〜Ａ８は着磁バラツキがないときのＮ極及びＳ極の境界を示す。一方、Ａ１’〜Ａ８’は着磁バラツキがあるときのＮ極及びＳ極の境界を示す。
【００２９】
また、その他、モータシャフト（ピニオンギア）３０５の偏心もモータの回転ムラの一要因として挙げることができる。この回転ムラが回転する相手に伝達され、それが濃度ムラとなって現れる。このモータシャフト（ピニオンギア）３０５の偏心も、モータ６の１回転周期に依存するが、この回転ムラと、上述した着磁バラツキの回転ムラとを合成した回転ムラが、駆動力の伝達先に伝わり、それが濃度ムラとなって現れる。以上の説明が、代表的なモータ１回転周期の回転ムラのメカニズムである。
【００３０】
他方、モータ６からは、上述した１回転周期の回転ムラ以外の周期の回転ムラも発生している。ロータマグネット３０２に８極の着磁がなされた駆動磁極を持つモータの場合、４組のＮ極及びＳ極の組み合わせがあるので、モータ１回転において、不図示の各ホール素子からは、４周期分の磁束変化が検出される。そして、何れかのホール素子の配置が理想配置からずれてしまうと、１周期の磁束変化において、各ホール素子からの出力の位相関係が崩れる。すると、各ホール素子からの出力に基づき、ステータに巻かれたコイルへの励磁切替えを行うモータ駆動制御において、その切替タイミングがずれてしまう。結果、モータ６の１周分周期の１／４周期の回転ムラが、モータ６が１周する間に４回発生する。尚、ロータマグネット３０２の駆動用着磁の極数に応じた整数分の１周期（整数倍の周波数）の回転ムラが発生することは自明であろう。
【００３１】
＜信号処理に関するハードウェア構成＞
次に、図４を参照して、信号処理に関するハードウェア構成について説明する。ここで、濃度信号処理部４０５、ＦＧ信号処理部４０６は、例えば、特定用途向け集積回路（ＡＳＩＣ）や、ＳＯＣ（Ｓｙｓｔｅｍ  Ｏｎ  Ｃｈｉｐ）で構成される。ＣＰＵ４０１は、記憶部４０２、画像形成部４０３、ＦＧ信号処理部４０６、濃度信号処理部４０５、濃度センサ５１の各ブロックと連携し各種制御を行う。また、ＣＰＵ４０１は入力される情報に基づき各種演算処理も行う。
【００３２】
記憶部４０２は、ＥＥＰＲＯＭ及びＲＡＭを含む。ＥＥＰＲＯＭは、モータ６の位相信号としてのＦＧ信号を識別するカウント値（モータの位相信号に相当）と、画像濃度を補正するための補正情報との対応関係を書換え可能な形態で格納している。また、ＥＥＰＲＯＭは、ＣＰＵ４０１の画像形成制御に用いられる、その他の各種設定情報も格納している。また、記憶部４０２のＲＡＭは、ＣＰＵ４０１が各種処理を実施する際の情報を一時的に格納するために用いられる。画像形成部４０３は、図１において説明した画像形成に係る各部材の総称であり、ここでの詳しい説明は省略する。また濃度センサ５１も、図２で説明した通りである。
【００３３】
濃度信号処理部４０５は、濃度センサ５１の濃度検出信号を入力とし、ＣＰＵ４０１が着目すべきモータ６に関する濃度ムラを容易に抽出できるように、入力された信号を加工することなく或いは加工し、それをＣＰＵ４０１に供給（出力）する。他方、ＦＧ信号処理部４０６は、図３で説明した、モータ６から出力されるＦＧ信号を入力とし、そのＦＧ信号に係る処理を行う。例えば、ＦＧ信号処理部４０６は、ＣＰＵ４０１がモータの位相を特定するために、ＦＧ信号を加工し、それをＣＰＵ４０１へ出力したり、ＦＧ信号に係る処理の判定結果をＣＰＵ４０１へ通知したりする。
【００３４】
本実施例によれば、ＣＰＵ４０１は、濃度信号処理部４０５から出力される濃度信号と、ＦＧ信号処理部４０６からの出力される位相信号と、に基づき、モータの回転位相と濃度補正（バンディング補正）のための補正情報との対応付けテーブルを作成する。また、ＣＰＵ４０１は、ＦＧ信号処理部４０６から供給されるＦＧ信号に基づき特定したモータ６の位相変化に同期させ、モータ６の回転ムラの位相に応じた画像補正が反映された露光をスキャナ部２４に行わせる。これについての詳細は、後述のフローチャート等により説明する。
【００３５】
＜濃度信号処理部４０５の構成＞
次に、図４（ａ）で説明した濃度信号処理部４０５の詳細について、図４（ｂ）を用いて説明する。ローパスフィルタ（ＬＰＦ）４０７は特定の周波数成分の信号を選択的に通過させる。フィルタの遮断周波数はモータの１回転で１周期の周波数成分（以下Ｗ１成分）以下の信号を主に通過させ、且つその他Ｗ１成分の整数倍周波数の信号を減衰させる設定となっている。図５の（ａ）にＬＰＦの動作例を示す。濃度センサ出力をＬＰＦに通過させることにより、Ｗ１成分の濃度ムラを容易に抽出することができる。
【００３６】
また、バンドパスフィルタ（ＢＰＦ）４０８は、濃度センサ５１の出力のうち、所定の周波数成分を抽出することができる。本実施例では一例としてモータ１回転周波数の４倍周波数（１／４周期：以下Ｗ４成分）の回転ムラを抽出する構成となっている。フィルタ特性はＷ４成分の周波数を中心に、遮断周波数を２つ設けている。図５の（ｂ）にＢＰＦの動作例を示す。濃度センサ出力をＢＰＦに通過させることによりＷ４成分の濃度ムラを容易に抽出することができる。
【００３７】
また、濃度信号処理部４０５は、濃度センサ５１の検出結果からモータの回転ムラの成分を除去しない生センサ出力データもＣＰＵ４０１に供給する。この生センサ出力データは、例えば、ＣＰＵ４０１が、濃度センサ５１の平均検出値を算出するときに利用される。
【００３８】
尚、後述するが、本実施例によるＣＰＵ４０１は、モータの回転ムラに起因したＷ１成分とＷ４成分との双方の濃度ムラを補正するための補正値を算出する。また算出された補正値を、位相信号であるＦＧ信号のカウント値と関連付け、記憶部４０２に格納され、画像形成時（露光時）に、モータ６の回転位相に応じて利用できるようにしておく。ここで、モータ６の回転ムラの位相とは、モータ６の周期的な回転速度変動における、ある状態に対応させることができる。そして、モータの回転ムラの位相が変化するとは、先のある速度状態から、モータ６の速度が変化することを意味する。
【００３９】
＜ＦＧ信号処理部４０６の構成＞
次に、図４（ａ）で説明したＦＧ信号処理部４０６の詳細を図４（ｃ）を用いて説明する。Ｆ／Ｖ変換器４０９は、取得されたＦＧ信号の周波数解析を行う。具体的には、ＦＧ信号のパルス周期を計測し、周期に応じた電圧を出力する。ローパスフィルタ４１０におけるフィルタの遮断周波数は、Ｗ１成分以下を通過させ、Ｗ１成分より上の周波数は減衰させる設定になっている。尚、Ｆ／Ｖ変換器４０９及びローパスフィルタ４１０にかわり、ＦＦＴ解析部を設け、ＦＧ信号の周波数解析を行ってもよい。ＳＷ４１１はスイッチであり、ローパスフィルタ４１０から出力される信号を判定部４１２へ入力するか否かを切り替える。ＳＷ制御部４１３は、初期化信号によりＳＷ４１１をＯＮさせ、リセット終了後においては次に入力されるＦＧカウンタ信号によりＳＷ４１１をオフさせる。
【００４０】
判定部４１２は、ローパスフィルタ４１０から入力された信号をモータ１周分取得し、平均値を算出する。平均値算出後はローパスフィルタ４１０から入力される値と平均値を比較し、所定の条件となった場合にカウンタリセット信号を出力する。カウンタリセット信号は、ＳＷ制御部４１３とＦＧカウンタ４１４へ入力される。また、カウンタリセット信号はＣＰＵ４０１へ送られ、リセットが行われたことがＣＰＵへ報知される。
【００４１】
ＦＧカウンタ４１４は、モータ１周分のＦＧパルス数をカウントアップしトグルする。本実施例ではモータが１回転すると、３２パルスのＦＧ信号が出力されるので、ＦＧカウンタ４１４は０〜３１をカウントする。また、ＦＧカウンタ４１４は、カウンタリセット信号が入力されるとカウントを“０”にリセットする。
【００４２】
＜主要なハードウェア構成及び機能構成＞
次に、図６（ａ）を参照して、本実施例における主要なハードウェア構成及び機能構成について説明する。図６（ａ）は、画像形成装置の一部の部材、及び図４に示した一部のブロック図、及びＣＰＵ４０１が司る機能ブロック図との関係を示す。尚、図１、図４と同一の構成を指すときは、同一の符号を付してあり、ここでの詳しい説明は省略する。
【００４３】
図６（ａ）において、テストパッチ生成部３５は、パッチ形成手段として機能し、中間転写体２７上に濃度検出のためのトナー像で構成されるパッチ画像（以下テストパッチ）３９の形成機能を司る。テストパッチ生成部３５は、テストパッチのデータに基づき、スキャナ部２４により感光ドラム２２上に静電潜像を形成させる。そして、不図示の現像部により形成された静電潜像に基づくトナー像（テストパッチ）を中間転写体２７上に形成させる。濃度センサ５１は、中間転写体２７上に形成されたテストパッチ３９に光を照射し、その反射光特性を検出し、濃度信号処理部４０５にその検出結果を入力する。
【００４４】
補正情報生成部３６は、濃度センサ５１により検出されたテストパッチ３９の検出結果に基づき、濃度補正情報を生成する。詳細については、図１１を用いて後述する。画像処理部３７は、各種画像に中間調処理などの画像処理を実行する。画像処理部３７の構成については後述する。露光制御部３８は、ＦＧカウント値に同期させて、スキャナ部２４を露光させ、電子写真プロセスを経て中間転写体２７上へテストパッチを形成させる。
【００４５】
尚、ハードウェア構成と機能ブロックとの対応について、図４、図６（ａ）で示した形態は一例であり、本発明はこの構成例にに限定されることはない。例えば、図４、図６（ａ）でＣＰＵ４０１に担わせた機能の一部、或いは全てを特定用途向け集積回路に担わせてもよい。また、逆に、図４、図６（ａ）で特性用途向け集積回路に担わせた機能の一部、或いは全てをＣＰＵ４０１に担わせてもよい。
【００４６】
＜画像処理部３７の構成＞
次に、図６（ｂ）を参照して、画像処理部３７の構成例について説明する。ホストコンピュータ等からのプリント指示によりプリントが開始されると、カラーマッチング処理部７０１では、予め用意されているカラーマッチングテーブルにより色変換処理が行われる。より具体的には、カラーマッチング処理部７０１は、ホストコンピュータから送られてくる画像の色を表すＲＧＢ信号を画像形成装置の色再現域に合わせたデバイスＲＧＢ信号（以下ＤｅｖＲＧＢと称する。）に変換する。色分解処理部７０２では、予め用意されている色分解テーブルにより、ＤｅｖＲＧＢ信号を画像形成装置のトナー色材色であるＣＭＹＫ信号に変換する。
【００４７】
濃度補正処理部７０３は、ＲＡＭ４０２に格納された階調‐濃度特性を補正する濃度補正テーブルをＣＰＵ４０１の指示により読み込み、この濃度補正テーブルによって上記ＣＭＹＫ信号を階調‐濃度特性の補正を加えたＣ’Ｍ’Ｙ’Ｋ’信号へ変換する。本実施例ではＣ’Ｍ’Ｙ’Ｋ’信号のデータ長は８ビットである。
【００４８】
その後、中間調処理部７０４で、Ｃ’Ｍ’Ｙ’Ｋ’信号に対して中間調処理（ハーフトーン処理）を行う。中間調処理部７０４は多値ディザ処理を行い、入力される８ビットの信号を４ビットのＣ’’Ｍ’’Ｙ’’Ｋ’’信号へと変換する。その後、後述するバンディング補正を行う画像補正部７０５により、バンディングの補正処理が行われ、４ビットのＣ’’’Ｍ’’’Ｙ’’’Ｋ’’’信号となる。なお、本実施形態によれば、画像補正部７０５は、ハーフトーン処理後の４ビット（ｍビット）の画像信号を、一度、８ビット（ｎビット）表現に変換してバンディング画像補正を実施する。その後、画像補正部７０５は、８ビットの補正信号を４ビットの補正信号に量子化する。ここで、本実施形態では、この際の量子化誤差を、各主走査ラインにおいて連続した複数の画素を含む所定の領域内で打ち消すように分散させる。これらの方法の詳細については後述する。さらに、ＰＷＭ処理部７０６で、ＰＷＭ（Ｐｕｌｓｅ  Ｗｉｄｔｈ  Ｍｏｄｕｌａｔｉｏｎ）テーブルにより、上記Ｃ’’’Ｍ’’’Ｙ’’’Ｋ’’’信号を、スキャナ部２４Ｃ、２４Ｍ、２４Ｙ、２４Ｋの露光時間Ｔｃ、Ｔｍ、Ｔｙ、Ｔｋへ変換する。
【００４９】
＜出力補正テーブル作成処理＞
次に、図７を参照して、出力補正テーブル作成処理の処理手順について説明する。以下で説明する処理により、モータの位相信号と濃度ムラとの対応関係を特定し、また濃度ムラに対して濃度補正情報を演算し、モータの位相信号と濃度補正情報との対応テーブルを作成する。そして、ここで作成されたテーブルが後のプリント実行時にバンディングを軽減させるために用いられる。以下、具体的に説明する。
【００５０】
まず、Ｓ８０１において、モータ制御部４０は、出力補正調整モードの処理を開始する。続いて、Ｓ８０２において、モータ制御部４０は、モータが所定の回転数範囲であることを確認し、確認できた後に、速度制御部４３の制御ゲイン４２の設定を最低値に変更する。尚、ゲイン設定について、最低値に限定するわけではなく、少なくとも通常の画像形成時よりも、低い設置値にゲインを設定すればよい。このようにゲインを設定することで、モータの１回転の周期の回転ムラを大きくしその検出を容易に行える。ここで、通常の画像形成とは、例えば、画像形成装置の外部のコンピュータから入力された画像情報であって、ユーザのコンピュータ操作に応じて作成された画像情報に従う画像形成のことを指す。
【００５１】
続いて、ＣＰＵ４０１は、Ｓ８０３で、モータの回転位相を検出するために、ＳＷ制御部４１３を介して、ＳＷ４１１をＯＮし、モータＦＧ信号のカウントを開始する。そして、判定部４１２は、Ｓ８０４で、Ｆ／Ｖ変換器４０９の出力、即ち、ＬＰＦ４１０で処理されたモータの１回転の周期の回転ムラを抽出し、それを平均化する。
【００５２】
また、判定部４１２は、Ｓ８０５で、Ｗ１成分のモータ回転ムラの位相が所定位相になったか否かを判定する。ここでは、モータ６の回転ムラの位相が零になったかを調べる。Ｓ８０５でＹＥＳと判定された場合、判定部４１２は、Ｓ８０６で、カウンタリセット信号を発行し、ＦＧカウンタ４１４をリセットする。また、ＣＰＵ４０１は、Ｓ８０６で、モータ位相信号であるＦＧ信号のカウント監視を開始する。このＦＧ信号に係るカウントによりモータ６の位相が特定される。また、このＦＧ信号のカウント値の監視は、印刷ジョブが終了するまで継続される。
【００５３】
一方、Ｓ８０７で、モータ制御部４０は、制御ゲイン４２の設定を最低値から元の設定値へ戻す。これにより、テストパッチ形成において、制御ゲイン４２について、通常の画像形成時と同じ条件とすることができる。テストパッチ生成部３５は、Ｓ８０８で、パッチ３９のためのテストパッチデータを生成する。
【００５４】
テストパッチ生成部３５は、Ｓ８０９で、モータのＦＧ信号のカウント値が所定値（例えば“０”）になったか否かを判定する。そして、Ｓ８０９でＹＥＳと判定すると、テストパッチ生成部３５は、Ｓ８１０で、スキャナ部２４による露光を開始させる。尚、テストパッチ形成時には画像補正は行われない。具体的には、ここでは、プレパッチと、通常パッチとが形成される。ここで、プレパッチとは、通常パッチより所定距離ほど先行した位置に形成され、濃度センサ５１による通常パッチの濃度計測を開始するタイミングを生成するためのものである。また、通常パッチは、副走査方向においてモータ６の１周分の長さを有する。
【００５５】
濃度センサ５１は、Ｓ８１１で、中間転写体２７上に形成されたテストパッチから得られる反射光を検知する。ここで濃度センサ５１による検知結果は濃度信号処理部４０５を介してＣＰＵ４０１へ入力される。ＣＰＵ４０１へ入力される信号は、図４の（ｂ）で説明した通り３種類である。
【００５６】
補正情報生成部３６は、補正量決定手段として機能し、Ｓ８１２で、Ｓ８１１における検知結果に基づき、モータの回転ムラに起因する濃度ムラを軽減するための濃度補正情報を算出する。またそれと共に、算出した濃度補正情報をＥＥＰＲＯＭに格納する。ここで、Ｓ８１１の処理では、図４の（ｂ）で説明した如く、ＬＰＦ４０７とＢＰＦ４０８とによりＷ１、Ｗ４の夫々について検出が行われる。尚、Ｗ４成分の反射光の検出開始タイミングはＷ１のそれと同じである。また、Ｓ８１２の処理では、検出されたＷ１及びＷ４成分の濃度ムラに基づき、補正情報生成部３６が、Ｗ１とＷ４成分の夫々のムラを補正するための補正情報を演算する。そして、以上の各ステップの処理を終えて、Ｓ８１３で、露光出力補正テーブル作成の処理を終了する。
【００５７】
＜モータ位相とトナー像の濃度変動の関連付け処理＞
次に、図８を参照して、図７のＳ８０２〜Ｓ８０６の処理の詳細について説明する。図８は、モータＦＧカウンタ値のリセット処理の一実施例を示すタイミングチャートである。この図８に示されるタイミングチャートにより、モータ６のどういう速度変動状態をどういう位相（例では位相零（ＦＧ０））に相当させるかを決めることができる。図８の例では、モータの速度が、平均よりも高い速度の状態から、低い状態に向かう途中の、正に平均値を横切る状態を位相零（ＦＧ０）に割り当てた。尚、図８は一例であり、モータ６の任意或いは所定の速度変動状態を何れかの位相（例えば位相零（ＦＧ０））に割り当ててもよい。要は、再現性を前提に、モータ６の任意或いは所定の速度状態を、モータ６の何れの位相（任意或いは所定位相）に割り当て、後々の処理で、その割り当てられた位相を特定できるようにすればよい。こうすることで、他のタイミングにおいて、モータ６の位相をパラメータにして各種処理を行うことができるようになる。以下、具体的に説明する。
【００５８】
まず、ＣＰＵ４０１がｔ０で初期化信号をＦＧ信号処理部４０６へ出力すると、ＳＷ制御部４１３へ初期化信号が伝わる。ＳＷ制御部４１３はｔ０以降最初に入力されたＦＧ信号に同期してＳＷ４１１をＯＮさせる（Ｓ８０３）。
【００５９】
ｔ１〜ｔ２の間（ＦＧ信号モータ１周分）、判定部４１２は、ローパスフィルタ４１０からの入力値の平均値Ｖａｖｅを算出する。判定部４１２はｔ２以降、算出されたＶａｖｅとローパスフィルタ４１０から入力される値を比較し、所定の条件、例えば、入力値が平均値Ｖａｖｅより高い側から低い側へ横切ったタイミングｔ３（Ｓ８０５でＹＥＳ）でカウンタリセット信号を出力する。ＦＧカウンタ４１４は、ｔ３のタイミングでカウンタリセット信号を受信すると、カウントを“０”にリセットする（Ｓ８０６）。また、ＣＰＵ４０１はカウンタリセット信号を受けて、位相信号（ＦＧカウント値）の初期化が完了したことを認識する。
【００６０】
次に、図９の（ａ）を参照して、パッチ画像（テストパッチ）についての露光タイミング、即ち、図７におけるＳ８０８の処理の詳細について説明する。尚、図９の（ａ）のタイミングチャートでは、図８の処理からＦＧ信号のカウントが継続されているものとする。つまり、ＣＰＵ４０１が、モータ６の回転ムラ位相を、ＦＧカウンタ値の変化に応じて継続的に特定していることを前提としている。以下、図９の（ａ）について詳細を説明していく。
【００６１】
まずテストパッチについて詳細に定義すると、上述したように、読み取りタイミング生成用のプレパッチと濃度ムラ計測用の通常パッチとで構成される。テストパッチ生成部３５は通常パッチの露光を開始するべき所定のＦＧカウンタ値に到達する前のｔ４のタイミング（本実施例では通常パッチを露光する１０ＦＧカウント前）にプレパッチの形成（露光）を開始する。プレパッチは濃度センサ５１によるテストパッチの検知開始タイミングの同期を取るためのものであり、副走査方向の長さは短くてよい。例えばモータ１回転周期の長さは不要である。濃度センサ５１で検知できる長さがあれば十分である。図９の（ａ）では、プレパッチにおける露光時間を、ＦＧカウントで２カウント分とし、ｔ５のタイミングでプレパッチのための露光を停止する。
【００６２】
そして、テストパッチ生成部３５は、ｔ６のタイミングで、所定ＦＧカウントが零になったら再び通常パッチのための露光を開始する（Ｓ８０９）。この後、少なくともモータ１周分以上のＦＧカウントが行われるまで露光を継続する（Ｓ８１０）。そして図１で説明した電子写真プロセスを経て、最終的に中間転写体２７上に、トナー像としてテストパッチが形成される。
【００６３】
図９の（ｂ）は、テストパッチを読み取るタイミングチャートを示したものであり、図７のＳ８１１の詳細を説明する図である。図９（ａ）の説明においては、テストパッチ生成部３５は、プレパッチの露光開始から１０ＦＧカウント後にテストパッチの露光を開始した。そのため、テストパッチは、プレパッチを濃度センサ５１で検出してから９カウント経過後に読み取りを行う。ｔ８で濃度センサ５１がプレパッチを検出し、ＣＰＵ４０１は、次のＦＧパルスを検知するｔ９のタイミングを起点とし、９カウント経過後のｔ１０で、パッチの読み取りを開始する。また、図中の１００１は、ＣＰＵ４０１により管理されており、光学特性が読み取られた通常のテストパッチを露光したときの、ＣＰＵ４０１により認識されていたモータ６の位相信号であるＦＧ信号を示す。その様子を模式的に図１０に示す。
【００６４】
図１０の（ｉ）〜（ｉｉｉ）は、スキャナ部２４の露光タイミングと、そのときにＣＰＵ４０１が認識しているモータ６の位相信号と、の関係を模式的に示す。（ｉ）及び（ｉｉ）は、テストパッチに対する静電潜像を形成する際に、ＣＰＵ４０１がモータ６の位相信号を認識している様子を示している。図中では、位相θ１に対してＦＧｓ１が、位相θ２に対してＦＧｓ２が夫々対応していることを示している。また（ｉｉｉ）は、形成されたテストパッチの移動方向に沿った各位置において、画像露光時におけるモータ６の、どの位相信号が対応しているかを示す図である。この（ｉｉｉ）における対応関係もＣＰＵ４０１により管理されている。
【００６５】
尚、図９の（ｂ）では図示していないが、実際には、Ｗ４成分の光学特性検出もｔ１０のタイミングに同期してＢＰＦから出力され、ＣＰＵ４０１へ入力されているものとする。そして、濃度センサ５１で得られたテストパッチの光学特性は、濃度信号処理部４０５でＬＰＦ４０７やＢＰＦ４０８を経由後、ＣＰＵ４０１へ入力される。ＣＰＵ４０１は、濃度信号処理部４０５から出力された光学特性値（濃度値に相当）と、その検知対象となったパッチを形成したときのモータ６の位相信号（ＦＧカウント値）と、を関連付け、ＥＥＰＲＯＭへ格納する。タイミングがｔ１１に達し、少なくともモータ１周分のＦＧカウント分の濃度センサ５１による検出結果が得られると、ＣＰＵ４０１はテストパッチの読み取りを終了する。
【００６６】
＜テストパッチの濃度ムラ成分＞
ここで、図１０からも理解できるように、テストパッチの検出結果には、露光時におけるモータ６の回転ムラ影響と、転写時におけるモータ６の回転ムラ影響とが含まれている。ここで、露光時も転写時も、回転ムラの発生源は同一となっている。そして、テストパッチからは、今述べたような、影響が統合された濃度ムラが検出される。尚、濃度ムラについては、モータの物理的形状に起因するため、モータの１回転周期の回転ムラの位相は、モータの物理的形状に対応して再現性あるものとなっている。
【００６７】
＜出力補正テーブルの一例＞
図１１は、図７のフローチャートにおけるＳ８１２の処理に従って作成された補正テーブルの一例を示す。この図１１に示される情報はＥＥＰＲＯＭに格納されたものであり、画像形成時に、当該テーブルをＣＰＵ４０１が参照し、モータの回転ムラ位相に応じたバンディング補正が行われる。
【００６８】
図１１のテーブルＡは、モータ位相とトナー像の濃度値との対応を示す。図１１中ではＷ１とＷ４の夫々についてテーブルＡが作成されている。ここで、Ｗ１については、ＬＰＦ４０７を介して検出される電圧値Ｖ１を濃度値に変換することで、図１１（ａ）に示される濃度値を算出できる。また、Ｗ４については、ＢＰＦ４０８を介して得られる検出結果を濃度値に換算し、それに平均濃度値を加算することで図１１（ｂ）の濃度値を算出できる。なお平均濃度値についてはＷ１の検出結果より求めてもよいし、図４（ｂ）に示される生センサ出力データを補正情報生成部３６が平均化することで算出してもよい。
【００６９】
次に、補正情報生成部３６は、Ｗ１とＷ４の夫々について、各濃度値と平均値との差分Δｄ１、Δｄ２を算出し、算出したΔｄ１、Δｄ２を、各位相信号に対応付けてテーブルＢを作成する。ここでは、平均値を１０．０００としている。そして、補正情報生成部３６は、テーブルＢに格納された各位相信号に対応したΔｄ１、Δｄ２を加算し、Ｗ１とＷ４の差分値を合計する。そのテーブルを図１１の（ｃ）のテーブルＣに示す。
【００７０】
補正情報生成部３６は、各位相信号に対応した合計差分値に基づき、画像の各主走査ラインに対する位置補正値を算出する。具体的には、まず、モータ６のある位相におけるＦＧｎにおける濃度変動率をＤｃ＿ｎ、平均濃度値をＤａｖｅとすると、Ｄｃ＿ｎは、Ｄｃ＿ｎ＝合計差分値／Ｄａｖｅ×１００として与えられる（テーブルＤ）。次に、補正値Ｄｃ＿ｎをＴｃ＿ｎ＝Ｋ×Ｄｃ＿ｎによって位置補正量Ｔｃ＿ｎに変換する（テーブルＥ）。ここでＫは予め定められた係数で、濃度変動率［％］と副走査方向の画像解像度単位での位置補正値［ｌｉｎｅ］との対応を決めるものである。図１１の例ではＫ＝１．５となっている。また、位置補正量の単位はドットであり、副走査方向に隣接する隣接ラインに対して、画像信号をどれだけシフトするかを表す。なお、濃度変動率Ｄｃｎと位置補正値Ｔｃ＿ｎが比例関係にないような場合には、濃度変動率Ｄｃ＿ｎと距離補正値Ｔｃ＿ｎとの対応関係をテーブル化して保持しておき、テーブルによってＤｃ＿ｎをＴｃ＿ｎに変換してもよい。
【００７１】
次に、ＦＧ信号間の位置補正値Ｔｃ＿ｎを補間し、各主走査ライン毎の位置補正値Ｔ＿ｍのデータを生成する。具体的には画像データの各主走査ラインの走査間隔をΔＴ［ｓｅｃ］とし、モータ１回転の時間をＭｔ［ｓｅｃ］、モータ１回転のＦＧカウント数をｎとすると、ＦＧ信号の間隔、即ち、ＦＧ信号（位相信号）が出力されるタイミング間隔がΔＦｔ＝Ｍｔ／ｎとなる。従って、走査間隔ΔＦｔ間のデータを線形補間やスプライン補間などの方法で補間し、ΔＴ間隔のデータを生成し（図１２）、テーブルＦとする。図１２では簡単のためにΔＦｔ＝ΔＴ×３となる場合について示している。図のようにＦＧ信号が１周期進むと再びＦＧカウント＝０として画像１ページのライン数分繰り返す。以上により副走査方向のライン単位の位置補正値を得ることができる。
【００７２】
ＣＰＵ４０１は、算出されたテーブルＦの情報を、再度利用できるようにＥＥＰＲＯＭに格納する。このように、本実施例では、モータ６という１つの回転体から複数周期（周波数）の回転ムラが発生し、それがバンディングに影響するような場合に対応することができ、木目細かな対応を行うことができる。
【００７３】
次に、図１３を参照して、画像形成時のＦＧカウンタ値と露光のタイミングの関係について説明する。ここでは説明を簡単にするためにＹ，Ｍ，Ｃ，Ｋ各色の感光ドラム（２２Ｙ，２２Ｍ，２２Ｃ，２２Ｋ）を同一のモータで駆動しているものとして説明する。１色目のＹ画像に対して時刻ｔＹ１１で後述する画像データ補正処理を開始し、ＦＧカウンタ値が０となるタイミング（時刻ｔＹ１２）でＹ画像の露光を開始する。さらに時刻ｔＭ１１で２色目のＭ画像に対して後述する画像データ補正処理を開始し、Ｙ画像の露光後ｔＹＭ経過した時刻ｔＹ２１にＭ画像の露光を開始する。ここで、ｔＹＭは、感光ドラム２２Ｙ、２２Ｍ間の配置位置の違いを解消して、Ｙ画像とＭ画像の搬送方向の画像位置が合うように予め調整されている時間差である。時刻ｔＭ１２におけるＦＧカウンタ値ＦＧｍはｔＹＭ／ΔＦｔによって画像形成前に予め算出し、Ｍの補正テーブルはＦＧｍを基準として作成しておけばよい。Ｃ，Ｍについても同様である。また、Ｙ，Ｍ，Ｃ，Ｋの感光ドラム（２２Ｙ，２２Ｍ，２２Ｃ，２２Ｋ）がそれぞれ別モータで駆動する場合も、各色のモータそれぞれのＦＧカウント値を上述と同様の方法で取得すれば同様の処理が可能なことは明らかである。尚、画像データの補正処理については後述にて詳しく説明する。
【００７４】
＜画像データ補正＞
次に、図１４及び図１５を参照して、画像補正部７０５における画像補正工程及び補正量修正工程について説明する。まず、図１４を参照して、画像補正工程について説明する。中間調処理部７０４で処理された画像信号はＲＡＭ４０２内のラインバッファ（入力画像バッファ）に一旦ロードされる。本実施例では入力画像バッファは１ページ分のサイズを持つものとする。同時にＲＡＭ４０２内には入力画像バッファと同じサイズの補正画像バッファ、及び出力画像バッファが確保されているものとする。入力画像バッファには中間調処理が行われた図１７（ａ）のような４ビットの画素値が格納されている。
【００７５】
まず、画像補正部７０５は、Ｓ１４０１で入力画像バッファに格納されている４ビットの画素値Ｑ４＿ｎ＝０〜１５を図１７（ｂ）のように８ビット値Ｑ８＿ｎ＝０〜２５５に変換する。次に、画像補正部７０５は、Ｓ１４０２で補正画像バッファの値を０クリアする初期化を行う。
【００７６】
次に、画像補正部７０５は、Ｓ１４０３でライン番号ｍ＝０とし、第１主走査ラインＬ＿０に対する累積位置補正量ＴＬ＿０を０とする。また、前述のようにＦＧカウント値ＦＧｓが０となるタイミングで画像データの露光を開始する為、ラインＬ＿ｍに対する位置補正値はＴ＿ｍとなる。
【００７７】
次に、主走査ラインＬ＿ｍに対する補正を行う。以下、主走査ラインＬ＿ｍの補正方法について説明する。まず、画像補正部７０５は、Ｓ１４０４で、ｍラインに対する位置補正値Ｔ＿ｍを位置補正テーブル（図１１）より読み込み、ｍ−１ラインの累積位置修正量ＴＬ＿（ｍ−１）とＴ＿ｍから主走査ラインＬ＿ｍの累積位置補正量ＴＬ＿ｍを以下の処理によって算出する。
ＴＬ＿ｍ＝ＴＬ＿（ｍ−１）＋Ｔ＿ｍ
続いて、入力画像信号の補正を行う。これは、Ｌ＿ｍラインの画像信号をＴＬ＿ｍライン分シフトするための補正である。
【００７８】
まず、Ｓ１４０５で下式によって補正量を求める。
ｙ１＝ｃｅｉｌ（ＴＬ＿ｍ）
ｙ２＝ｙ１−１
ｒ１＝１．０−（ｙ１−ＴＬ＿ｍ）
ｒ２＝１．０−ｒ１
ただし、ｃｅｉｌは正の無限大方向の整数への丸めを意味する。
【００７９】
次に、画像補正部７０５は、Ｓ１４０６で主走査方向の画素番号ｋを０に初期化し、Ｓ１４０７で下式によって画像信号に対する補正を行う。
Ｉ‘（ｍ＋ｙ１，ｋ）＝Ｉ’（ｍ＋ｙ１，ｋ）＋ｒ１×Ｉ（ｍ，ｋ）
Ｉ‘（ｍ＋ｙ２，ｋ）＝Ｉ’（ｍ＋ｙ１，ｋ）＋ｒ２×Ｉ（ｍ，ｋ）
ここで、Ｉ（ｍ，ｋ）は副走査ｍライン，主走査ｋ画素の入力画像バッファの値を、Ｉ’（ｍ，ｋ）は副走査ｍライン，主走査ｋ画素の補正画像バッファの値を示す。
【００８０】
上式による処理の内容を図１８（ａ）（ｂ）を用いて説明する。図のようにＬ＿ｍに対する位置補正量ＴＬ＿ｍ＝１．３［ｌｉｎｅ］の場合、Ｌ＿ｍラインを副走査方向に１．３ライン分シフトする。この場合、ライン単位のシフト量＝１ラインと１ライン未満のシフト量＝０．３ラインとなり、１ライン未満のシフト量は２ラインに画素値を分散させることにより補正する。例えば、ＴＬ＿ｍ＝１．３［ｌｉｎｅ］の場合、ｙ１＝２、ｙ２＝１、ｒ１＝０．３、ｒ２＝０．７となる。当該２ラインにおいて、ｍ＋ｙ１は副走査方向に対してより下流のラインを示し、ｍ＋ｙ２はより上流のラインを示す。また、ｒ１はｍ＋ｙ１ラインに振り分ける重みを示し、ｒ２はｍ＋ｙ２ラインに振り分ける重みを示す。
【００８１】
Ｌ＿ｍラインの入力画素値Ｉ（ｙ，ｋ）が図１８（ａ）とすると、補正画像バッファ上のｍ＋ｙ１＝ｍ＋２ラインの画素値Ｉ‘（ｍ＋２，ｋ）には入力画像バッファのｍラインの画像信号Ｉ（ｍ，ｋ）の値に重みｒ１＝０．３をかけた値を加算する。また、出力画像バッファ上のｍ＋ｙ２＝ｍ＋１ラインの画素値Ｉ‘（ｍ＋１，ｋ）には入力画像バッファのｍラインの画像信号Ｉ（ｍ，ｋ）の値に重みｒ２＝０．７をかけた値を加算する。これにより補正画像バッファのＬ＿（ｍ＋１），Ｌ＿（ｍ＋２）ラインには図１８（ｂ）のような画素値が加算される。
【００８２】
次に、画像補正部７０５は、Ｓ１４０８でライン内の全画素に対して処理が完了したか否かを判定し、完了していなければＳ１４１０でｋを１つ進めて再びＳ１４０７の処理へ移る。Ｓ１４０８で全画素に対して完了していればＳ１４０９へ進む。以上の処理によってＬ＿ｍラインの位置補正が行われる。
【００８３】
ＣＰＵ４０１は、Ｓ１４０９で所定の主走査ライン（ページ内での最後の主走査ライン）に対して処理が完了したか否かを判定し、完了していなければＳ１４１１でｍを１つ進めて次の主走査ラインに対して再びＳ１４０４の処理を実行する。一方、所定主走査ライン数の処理が完了し、ＣＰＵ４０１が、Ｓ１４０９でＹＥＳと判定すると、画像補正工程を終了し、次の補正量修正工程に移る。なお、画像補正工程において、出力される画像信号が第１の補正画像信号に相当する。
【００８４】
次に、図１５を参照して、補正量修正処理について説明する。補正量修正工程は補正画像バッファの８ビットデータを４ビットに変換し、出力画像バッファへ格納する補正を行う。補正画像バッファのＬ＿ｍライン上の画素値を走査方向の左端からＰ＿０、Ｐ＿１…として、ｋ番目の画素値をＰ＿ｋとする。まずＳ１５０１で、画像補正部７０５は、ｍ＝０と設定し、Ｓ１５０２で差分Ｅを０に初期化すると共に着目画素の主走査番号ｋ＝０とする。その後、主走査ラインＬ＿ｍに対する修正を行う。まず、画像補正部７０５は、Ｓ１５０３でＰ＿ｋに差分Ｅを加算し（Ｐ’＿ｋ＝Ｐ＿ｋ＋Ｅ）、Ｐ’＿ｋとする。
【００８５】
次に、画像補正部７０５は、Ｓ１５０４で４ビット値への量子化を行う。ここで４ビット値の各値は上述の８ビット表現の値Ｑ８＿ｎを用いて、Ｐ’＿ｋと最も近い４ビット値Ｑ８＿ｎを量子化信号Ｐｑ＿ｋとする。
量子化は例えば下式の計算によって行うことができる：
Ｐｑ＿ｋ＝ｆｌｏｏｒ（（Ｐ’＿ｋ＋８）／１７）×１７
ここで、ｆｌｏｏｒは負の無限大方向の整数への丸めを意味する。
【００８６】
次に、画像補正部７０５は、差分計算手段として機能し、Ｓ１５０５で
Ｅ＝Ｐ’＿ｋ−Ｐｑ＿ｋ
によって量子化前後の値の差分（量子化誤差）を計算し、Ｅとする。
【００８７】
次に、画像補正部７０５は、Ｓ１５０６で８ビット表現から４ビット表現への変換（Ｑ８＿ｎからＱ４＿ｎへの変換）を行い、変換後の値Ｑ＿ｋを着目画素の出力画像信号として出力画像バッファへ格納し、着目画素の処理を完了する。
【００８８】
次に、画像補正部７０５は、Ｓ１５０７でライン上のすべての画素についての処理が完了したか否かを判定し、完了していなければＳ１５０９でｋを１つ進めて再びＳ１５０３へと移る。Ｓ１５０７ですべての画素について処理が完了していれば次にＳ１５０８で所定の主走査ライン（ページ内での最後の主走査ライン）に対して処理が完了したか否かを判定し、完了していなければＳ１５１０でｍを１つ進め、再びＳ１５０２の処理に移る。一方、Ｓ１５０８で所定主走査ライン数の処理が完了し、ＣＰＵ４０１がＹＥＳと判定すると、１ページ分の補正量修正工程を完了する。なお、補正量修正工程において、出力される画像信号が第２の補正画像信号に相当する。
【００８９】
上記のＳ１５０３〜Ｓ１５０６の一連の処理の様子を図１８（ｃ）の例を用いて説明する。図１８（ｃ）の１８０１は、補正画像バッファのＬ＿ｍラインの値を示す。最初の着目画素はＰ＿０＝４８であり、Ｅは初期化されているため０である。したがってＳ１５０３の処理によってＰ’＿ｋ＝４８となり、次のＳ１５０４で量子化を行い、Ｐｑ＿ｋ＝（ｆｌｏｏｒ（４８＋８）／１７）×１７＝５１となる。次にＳ１５０５で差分Ｅ＝４８−５１＝−３となり、その後Ｓ１５０６で５１→３の変換（８ビット表現から４ビット表現への変換、図１７を参照すると、５１は３へ変換される。）が行われ、出力値Ｑ＿０＝３となる。
【００９０】
次に、Ｐ＿１の処理へと移り、Ｐ＿１＝１７９であるのでＳ１５０３でＰ’＿１＝Ｐ＿１＋Ｅ＝１７９−３＝１７６となり、Ｓ１５０４でＰｑ＿ｋ＝（ｆｌｏｏｒ（１７６＋８）／１７）×１７＝１７０となる。次にＳ１５０５で差分Ｅ＝１７６−１７０＝６となり、その後Ｓ１５０６で１７０→１０の変換が行われ、出力値Ｑ＿１＝１０となる。上記のように着目画素を走査方向に進めながら順次処理を行う。その結果、主走査ラインの各画素の量子化信号Ｐｑ＿ｋと量子化前の値Ｐ＿ｋの量子化誤差は主走査ライン内で拡散され、主走査ライン内の量子化誤差の総和は非常に小さくなる。
【００９１】
＜画像データとＦＧパルスとの同期＞
次に、図１６を参照して、画像データとＦＧパルスとの同期について説明する。図１６のフローチャートは、図１５の補正量修正工程に連動して処理が開始される。
【００９２】
まず、Ｓ１６０１でプリント開始すると、ＣＰＵ４０１は、Ｓ１６０２で、補正量修正工程が終了したか判定し、終了していなければ終了するまで待機する。補正量修正工程が終了し、Ｓ１６０２でＹＥＳと判定すると、Ｓ１６０３で、ＣＰＵ４０１は、印刷ジョブにおける１ページ目の処理か否かを判定する。１ページ目と判定した場合、ＣＰＵ４０１は、Ｓ１６０４で、図８を用いて説明した、モータＦＧカウンタ値のリセット処理（位相信号の初期化処理）を実行する。このリセット処理により、図８のタイミングチャートで決定した所定のタイミングにおけるモータ６の速度変動状態に対するモータ６の位相対応付けを再現できるようになる。そして、以後、ＦＧカウント値をパラメータに、モータの位相変化を特定（モニタリング）する。これにより、次のステップでは、特定されたモータ６の回転ムラの位相変化に同期させ、モータ６の回転ムラをキャンセルさせるための露光をスキャナ部２４に行わせることができる。
【００９３】
そして、Ｓ１６０５において、ＣＰＵ４０１は、モータ６の回転ムラの位相変化を特定し、モータ６の回転ムラの位相がＦＧカウント値０になると、それに同期させ、スキャナ部２４により、露光を開始し、画像形成を行う。Ｓ１６０５では、モータの回転ムラの位相に応じた画像補正が行われた露光がスキャナ部２４により行われる。ここで、上述のようにＦＧカウント値０と露光開始タイミングの同期を取ることにより、画像補正工程、補正量修正工程での補正の位相とバンディングの位相が一致するため、バンディングを効果的に低減することが可能となる。続いて、ＣＰＵ４０１は、Ｓ１６０６で、全てのページについて処理を終了したか否かを判定する。Ｓ１６０６でＹＥＳと判定すると、ＣＰＵ４０１は処理を終了する。
【００９４】
以上説明したように、上述の実施例によれば、モータの回転ムラに起因した濃度ムラを軽減することができる。また、モータ６の回転ムラに着目した場合に、常に記録材の同位置で同様のバンディングが発生するとは限らない。しかし、上述の実施例によれば、そのような場合にも対応して、適切に濃度ムラ（バンディング）の補正を行うことができる。なお、本実施例では説明を容易にするために１ページ分のページメモリを有する構成としたが、メモリ節約のために必要なライン数分のラインバッファを有するのみの構成としてもよい。また、副走査方向へ量子化信号の同じ値が続かないようにライン毎に補正量修正工程を開始する画素番号を前後させてもよい。また、バンディングの発生源として、画像形成に係る回転体であれば、例えば、ベルト駆動ローラや、感光ドラムや、現像ローラ等をバンディング発生源として想定できることは上述した通りであるが、上記補正は、バンディング補正に限定されるものでもない。バンディング補正以外にも適用できる。
【００９５】
＜実施例２＞
上記実施例１では補正量修正工程で、着目画素の差分を隣接画素に加算することによって修正を行ったが、本実施例では他の補正量修正方法について説明する。具体的には、本実施例では同一の主走査ラインにおいて連続した複数の画素を含むブロック単位で量子化誤差を最小化するように補正量を修正する。まず、図１４の濃度補正までの流れは実施例１と同様であるため、説明は省略する。以下では、上記実施例とは異なる構成及び技術について説明する。
【００９６】
まず、図１９を参照して、本実施例における補正量修正工程について説明する。補正量修正工程に入ると、画像補正部７０５は、まずＳ２００１でライン番号ｍを０に初期化する。次に、画像補正部７０５は、Ｓ２００２で主走査番号ｋ＝０に初期化し、Ｓ２００３でブロック内画素番号ｊを０に初期化すると共にブロック内の差分の総和Ｅ＿ｔｏｔａｌを０に初期化する。
【００９７】
次に、ブロック単位の処理に入る。画像補正部７０５は、Ｓ２００４で補正画像信号Ｐ＿ｋの４ビット値への量子化を行い、Ｐｑ＿ｋとする。量子化の方法は実施例１、Ｓ１５０４と同様に８ビット表現の値Ｑ８＿ｎを用いて、Ｐ＿ｋと最も近い４ビット値Ｑ８＿ｎをＰｑ＿ｋとする。次に画像補正部７０５は、差分計算手段及び総和計算手段として機能し、Ｓ２００５で量子化前後の差分Ｅ＿ｊをＥ＿ｊ＝Ｐｑ＿ｋ−Ｐ＿ｋで算出し、Ｓ２００６でＥ＿ｔｏｔａｌ＝Ｅ＿ｔｏｔａｌ＋Ｅ＿ｊでブロック内の差分の総和Ｅ＿ｔｏｔａｌを更新する。本実施例ではブロックサイズを８としており、Ｓ２００７でｊ＝７、すなわちブロック内の全画素に対する処理が完了したか否かを判定し、Ｎｏであればｋ、ｊを１つ進めて再び処理をＳ２００４に戻す。一方、Ｓ２００７でＹｅｓであればＳ２００８以降の修正処理に移る。
【００９８】
画像補正部７０５は、Ｓ２００８で差分の総和Ｅ＿ｔｏｔａｌが８よりも大きいか否かを判定し、大きければＳ２００９へ進み、ブロック内の差分Ｅ＿０〜Ｅ＿７の中で最も差分の大きな画素ｊ’を選択し、対応する画素番号ｋ’の量子化値Ｐｑ＿ｋ’を１つ下の量子化レベルへ下げる（即ち、Ｑ８＿ｎ→Ｑ８＿（ｎ−１））。同時にＥ＿ｊ’＝Ｅ＿ｊ’−１７とする。本実施例では量子化値Ｑ８＿ｎのステップ量は１７であるのでＰｑ＿ｋ’＝Ｐｑ＿ｋ’−１７となる。次に、画像補正部７０５は、Ｓ２０１０で差分の総和Ｅ＿ｔｏｔａｌの値もＥ＿ｔｏｔａｌ＝Ｅ＿ｔｏｔａｌ−１７にし、Ｓ２０１４へ移る。
【００９９】
一方、Ｓ２００８でＮｏであればＳ２０１１へ進み、画像補正部７０５は、差分の総和Ｅ＿ｔｏｔａｌが−８よりも小さいか否かを判定する。Ｓ２０１１でＹｅｓであればＳ２０１２へ進み、画像補正部７０５は、ブロック内の差分Ｅ＿０〜Ｅ＿７の中で最も差分の小さな画素ｊ’を選択し、対応する画素番号ｋ’の量子化値Ｐｑ＿ｋ’を１つ上の量子化レベルへ上げる（即ち、Ｑ８＿ｎ→Ｑ８＿ｎ＋１）。同時にＥ＿ｊ’＝Ｅ＿ｊ’＋１７とする。本実施例では量子化値Ｑ８＿ｎのステップ量は１７であるのでＰｑ＿ｋ’＝Ｐｑ＿ｋ’＋１７となる。
【０１００】
次に、画像補正部７０５は、Ｓ２０１３で差分の総和Ｅ＿ｔｏｔａｌの値もＥ＿ｔｏｔａｌ＝Ｅ＿ｔｏｔａｌ＋１７にし、Ｓ２０１４へ移る。Ｓ２０１４では、画像補正部７０５は、Ｅ＿ｔｏｔａｌの値が（＋／−）量子化ステップ量／２以内に収まっているか、すなわち−８≦Ｅ＿ｔｏｔａｌ≦８か否かを判定し、Ｎｏであれば再度Ｓ２００８の処理を行う。なお、Ｓ２００９、Ｓ２０１２において最も差分の大きい、または小さい画素が複数存在する場合は例えば最もｊの小さい画素を選択するようにすればよい。
【０１０１】
Ｓ２０１４でＹｅｓであれば、差分の総和の絶対値が許容範囲内に収束したと判断して修正作業を完了し、Ｓ２０１５へ進む。また、Ｓ２０１１でＮｏであれば−８≦Ｅ＿ｔｏｔａｌ≦８ということであるので、そのままＳ２０１５へ進む。Ｓ２０１５では、画像補正部７０５は、実施例１のＳ１５０６と同様に、Ｑ８＿ｎ→Ｑ４＿ｎの変換が行われ、変換後の値Ｑ＿ｋを着目画素の出力値として出力画像バッファへ格納し、ブロック内の処理を完了する。次に、画像補正部７０５は、Ｓ２０１６でライン内の全画素の処理が終了したか否かを判定し、終了していなければＳ２０１９で画素番号ｋを１つ進め、再びＳ２００３へ進み、次のブロックの処理を行う。Ｓ２０１６ですべての画素について処理が完了していれば次にＳ２０１７で、画像補正部７０５は、所定の主走査ライン（ページ内での最後の主走査ライン）に対して処理が完了したか否かを判定し、完了していなければＳ２０２０でｍを１つ進め、再びＳ２００２の処理に移る。一方、Ｓ２０２０で所定の主走査ライン数の処理が完了し、ＣＰＵ４０１がＹＥＳと判定すると、１ページ分の補正量修正工程を完了する。
【０１０２】
上記のＳ２００４〜Ｓ２０１５の一連の処理の様子を図２０の例を用いて説明する。実施例１と同様、画像補正工程の結果、補正画像バッファのＬ＿ｍラインには２１０１のような値が入っているものとする。まず、Ｓ２００４で補正画像信号Ｐ＿０＝４８が量子化され、Ｐｑ＿０＝５１となり、Ｓ２００５で差分Ｅ＿０＝３となり差分の総和Ｅ＿ｔｏｔａｌは０に初期化されているため、Ｓ２００６でＥ＿ｔｏｔａｌ＝３となる。順次ブロック内のＰ＿１〜Ｐ＿７に上記処理がなされ、２１０２に示す量子化信号Ｐｑ＿０〜Ｐｑ＿７、及び２１０３に示す差分Ｅ＿１〜Ｅ＿７が計算され、差分の総和Ｅ＿ｔｏｔａｌ＝２８となる（２１０８）。Ｐｑ＿７の処理が完了するとｊ＝７であるのでＳ２００７がＹｅｓとなり、次の処理Ｓ２００８へ移る。
【０１０３】
Ｓ２００８ではＥ＿ｔｏｔａｌ＝２８＞８であるのでＹｅｓとなり、Ｓ２００９へ進み、Ｅ＿０〜Ｅ＿７で最も差分の大きい画素を選択する。図２０の例では差分（２１０３）の中で最も大きな差分値は８であり、差分が８の画素がＥ＿１，Ｅ＿２，Ｅ＿５，Ｅ＿６の４つ存在するため、最も画素番号の小さいＥ＿１を選択し、対応するＰｑ＿１の量子化レベルを１つ下げる。すなわちＰｑ＿１の値を１８７→１７０に変更する。また、Ｅ＿１の値から１７を減算し、Ｅ＿１＝−９とする。図２０の２１０４が量子化レベル変更後の画素値、２１０５が差分を表す。２１０４の網掛けで示された画素Ｐｑ＿１が値の変更された画素である。次にＳ２０１０で差分の総和Ｅ＿ｔｏｔａｌ＝２８から１７を減算し、Ｅ＿ｔｏｔａｌ＝１１となる（２１０９）。
【０１０４】
次に、画像補正部７０５は、Ｓ２０１４で−８≦Ｅ＿ｔｏｔａｌ≦８の判定を行い、Ｅ＿ｔｏｔａｌ＝１１＞８であるのでＮｏとなり、Ｓ２００８へ移る。Ｓ２００８ではＹｅｓとなり、Ｓ２００９で差分２１０５の中で最も大きい画素を選択する。差分（２１０５）の中で最も大きな差分値は８であり、差分が８の画素がＥ＿２，Ｅ＿５，Ｅ＿６の３つ存在するため、最も画素番号の小さいＥ＿２を選択し、対応するＰｑ＿２の量子化レベルを１つ下げる。すなわちＰｑ＿２の値を１８７→１７０に変更する。また、Ｅ＿２の値から１７を減算し、Ｅ＿２＝−９とする。図２０の２１０６が量子化レベル変更後の画素値、２１０７が差分を表す。２１０６の網掛けで示された画素Ｐｑ＿２が値の変更された画素である。次にＳ２０１０で差分の総和Ｅ＿ｔｏｔａｌ＝１１から１７を減算し、Ｅ＿ｔｏｔａｌ＝−６となる（２１１０）。次にＳ２０１４で−８≦Ｅ＿ｔｏｔａｌ≦８の判定を行い、Ｙｅｓと判定し、ブロック内の修正処理を終了し、Ｓ２０１５へと移る。Ｓ２０１５では実施例１のＳ１５０６と同様のＱ８＿ｎ→Ｑ４＿ｎの変換が行われ、変換後の値Ｑ＿ｋを着目画素の出力画像信号として出力画像バッファへ格納し、当該ブロック処理が完了する。その後は次の８画素に処理を移し、以降８画素を１ブロックとして順次処理を行う。
【０１０５】
このように、本実施形態における量子化処理において、画像補正部７０５は、差分の総和が正の場合は、ブロック内の差分のうち、正の値でかつ絶対値が最も大きい差分を有する画素の値の量子化レベルを１つ小さいレベルに変更する。一方、差分の総和が負の場合は、画像補正部７０５は、ブロック内の差分うち、負の値でかつ絶対値が最も大きい差分を有する画素の値の量子化レベルを１つ大きいレベルに変更する。さらに、画像補正部７０５は、差分の総和の絶対値が所定の値（ここでは、８）より小さくなるまで当該量子化処理を繰り返し実行する。
【０１０６】
以上説明したように、ブロック単位で量子化誤差を最小化することにより、本発明を効果的に実施することが可能である。なお、本実施例ではブロック長を８画素としたが、ブロックの画素数はこれに限定されない。また、補正量修正の処理周期と中間調処理の周期と干渉しないようにブロック長と中間調処理の周期とを整数倍にさせることにより、効果的に本発明を実施することが可能である。
【０１０７】
＜実施例３＞
上記実施例１、２では位置を補正することにより、バンディングを低減する実施例について説明したが、本実施例では濃度を補正する（濃度補正量を求める）ことにより、バンディングを低減する実施例について説明する。本実施例でもモータのＦＧパルスに同期して画像を補正する基本的な構成は実施例１と同様であるため、補正テーブル及び、画像補正部７０５における画像補正工程についてのみ説明する。
【０１０８】
まず、図２１を参照して、本実施例における補正テーブルの例を示す。テーブルＡ〜Ｄは実施例１、図１１と同様であるので説明は省略する。本実施例ではテーブルＤの補正値Ｄｃ＿ｎをＤｃｃ＿ｎ＝Ｋ’×Ｄｃ＿ｎによって濃度補正値Ｄｃｃ＿ｎに変換する（テーブルＥ）。ここでＫ’は予め定められた係数で、濃度変動率［％］と濃度補正値との対応を決めるものである。ここで濃度補正値Ｄｃｃ＿ｎは４ビット（０−１５）の画像信号値に対する補正量を表す。図２１の例ではＫ’＝０．０７５となっている。なお、濃度変動率Ｄｃｎと濃度補正値Ｄｃｃ＿ｎが比例関係でない場合には、濃度変動率Ｄｃ＿ｎと濃度補正値Ｄｃｃ＿ｎとの対応関係をテーブル化して保持しておき、テーブルによってＤｃ＿ｎをＤｃｃ＿ｎに変換してもよい。
【０１０９】
次に、実施例１の図１２と同様に濃度補正値Ｄｃｃ＿ｎを補間し、各主走査ライン毎の濃度補正値Ｄ＿ｍのデータを生成し、テーブルＦとする。さらに、Ｄ＿ｍに１７を乗算し、四捨五入して整数に丸めることによって量子化された濃度補正値Ｄｑ＿ｍを演算し、テーブルＧを生成する。具体的にはＤｑ＿ｍ＝ｆｌｏｏｒ（Ｄ＿ｍ×１７＋０．５）の式によってＤｑ＿ｍの値を計算する。テーブルＧの値の意味としてはｐ／１７（ｐ＝０，１，…，１７）の中で最もテーブルＦに近いｐの値を求めている。ＣＰＵ４０１は、算出されたテーブルＧの情報を、再度利用できるようにＥＥＰＲＯＭに格納する。
【０１１０】
＜画像補正工程＞
次に、図２２を参照して、本実施例における画像補正工程について説明する。中間調処理部７０４で処理された画像信号はＲＡＭ４０２内のラインバッファ（入力画像バッファ）に一旦ロードされる。本実施例でも実施例１と同様に入力画像バッファは１ページ分のサイズを有するものとする。
【０１１１】
入力画像バッファには中間調処理が行われた図１７（ａ）のような４ビットの画素値が格納されている。まず、画像補正部７０５は、Ｓ２３０１でライン番号ｍ＝０とする。また、本実施例でもＦＧカウント値ＦＧｓが０となるタイミングで画像データの露光を開始するため、ラインＬ＿ｍに対する濃度補正値はＤ＿ｍとなる。
【０１１２】
次に、画像補正部７０５は、Ｓ２３０２で主走査方向の画素番号ｋを０に初期化し、Ｓ２３０３で濃度補正値Ｄｑ＿ｍを図２３の変換テーブルによってブロック単位の補正量（修正補正量）に変換する。上述したように濃度補正値Ｄｑ＿ｍ＝ｐは４ビット（０−１５）の入力画像信号に対する補正量ｐ／１７を表わしている。
【０１１３】
例えばＤｑ＿ｍが１の場合は２４０１のような１７画素のブロックに変換される。２４０１のブロックは補正量１の画素１個と、補正量０の画素１６個で構成されている。したがって、ブロック内の平均補正量は１／１７となり、ブロック単位で補正量１／１７を表すことになる。同様にＤｑ＿ｍ＝２の場合は補正量１の画素２個と、補正量０の画素１５個出構成され、ブロック内の平均補正量は２／１７となり、ブロック単位で補正量２／１７を表すことになる。Ｄｑ＿ｍ＝３〜５も同様である。また、図を見て分かるように補正量が１の画素はブロック内で偏らないように、さらには、ブロックの繰り返しの周期内で偏らないように配置されている。以上の変換によって１／１７単位での補正が可能となる。上記によって変換されたブロック単位の補正量を順にＤ＿ｂｋ＿０〜Ｄ＿ｂｋ＿１６とする。なお、ここでは、Ｄｑ＿ｍが正の値について説明したが、本発明では負の値の場合も想定される。Ｄｑ＿ｍが負の値の場合は、上記ブロック内の１の画素が−１の画素となる。
【０１１４】
次に、画像補正部７０５は、Ｓ２３０４でブロック内の画素番号ｊを０に初期化し、Ｓ２３０５で入力画像信号にＳ２３０３で変換された補正量を下式で加算する。
Ｉ（ｍ、ｋ）＝Ｉ（ｍ，ｋ）＋Ｄ＿ｂｋ＿ｊ
上式によって入力画像バッファのラインｍの左端の画素から順に、対応するブロック単位の補正量Ｄ＿ｂｋ＿ｊが加算される。
【０１１５】
Ｓ２３０６で、画像補正部７０５は、ｊ＝１６か否かを判定し、ＮｏであればＳ２３０９でｋ、ｊを１つ進めて再びＳ２３０７で補正処理を行う。一方、Ｓ２３０６でＹｅｓであれば、画像補正部７０５は、当該ブロックの補正を完了し、Ｓ２３０７でライン内の全画素に対して処理が終了したか否かを判定し、終了していなければＳ２３１０でｋを１つ進め、Ｓ２３０４でｊを０に初期化して次のブロックに対してＳ２３０５の補正処理を行う。Ｓ２３０７で、画像補正部７０５は、ライン内の全画素に対して処理が終了していればＳ２３０８で所定の主走査ライン（ページ内での最後の主走査ライン）に対して処理が完了したか否かを判定し、完了していなければＳ２３１１でｍを１つ進め、次のラインに対して再びＳ２３０２の処理を行う。一方、Ｓ２３０８で所定主走査ライン数の処理が完了し、ＣＰＵ４０１がＹＥＳと判定すると、１ページ分の画像補正工程を完了する。
【０１１６】
以上説明したように、本実施例によれば、４ビット値（０−１５）で１／１７単位での補正が可能となり、高精度な補正を行うことが可能となる。
【図１】
0005901248.tif 000002
【図２】
0005901248.tif 000003
【図３】
0005901248.tif 000004
【図４】
0005901248.tif 000005
【図５】
0005901248.tif 000006
【図６】
0005901248.tif 000007
【図７】
0005901248.tif 000008
【図８】
0005901248.tif 000009
【図９】
0005901248.tif 000010
【図１０】
0005901248.tif 000011
【図１１】
0005901248.tif 000012
【図１２】
0005901248.tif 000013
【図１３】
0005901248.tif 000014
【図１４】
0005901248.tif 000015
【図１５】
0005901248.tif 000016
【図１６】
0005901248.tif 000017
【図１７】
0005901248.tif 000018
【図１８】
0005901248.tif 000019
【図１９】
0005901248.tif 000020
【図２０】
0005901248.tif 000021
【図２１】
0005901248.tif 000022
【図２２】
0005901248.tif 000023
【図２３】
0005901248.tif 000024
【図２４】
0005901248.tif 000025