(57)【特許請求の範囲】
【請求項１】
画像形成手段によって形成される画像の主走査方向における位置に応じた副走査方向のずれの量を示す情報を取得する取得手段と、
画像を、主走査方向における位置に応じて前記情報に基づいて求まる第１の画素数分、副走査方向にずらしてメモリに書き込む第１の補正手段と、
前記メモリの副走査方向の読み出しアドレスを主走査方向における位置に応じて前記情報に基づいて求まる第２の画素数分、副走査方向にずらして、当該ずらされた副走査方向の読み出しアドレスに対応する画像であって前記メモリにおいて主走査方向に連続するアドレスに書き込まれた画像を、主走査方向の連続アドレスアクセスで読み出す第２の補正手段と、
を有し、
前記第１の画素数は、所定の複数画素数未満の整数画素数であり、
前記第２の画素数は、前記所定の複数画素数の整数倍数であることを特徴とする画像処理装置。
【請求項２】
前記第１の補正手段によって前記メモリに書き込まれる画像の解像度は、所定の解像度であり、
前記第２の補正手段によって処理される、前記第１の補正手段によって前記メモリに書き込まれた画像の解像度は、前記所定の解像度であり、
前記第２の補正手段によって処理された後の画像の解像度は、前記所定の解像度であることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記所定の解像度は、２４００ｄｐｉであることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記第１の画素数は、前記情報によって示される前記ずれ量を前記所定の複数画素数で割った場合の余りであり、
前記第２の画素数は、前記情報によって示される前記ずれ量と前記余りとの差であることを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記所定の複数画素数は、４であることを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
前記第１の補正手段は、前記メモリとは異なるメモリを用いて画像を副走査方向にずらし、
前記第２の補正手段は、前記メモリを用いて画像を副走査方向にずらし、
前記異なるメモリは、前記メモリよりも高速にランダムアクセスが可能であることを特徴とする請求項１乃至５の何れか１項に記載の画像処理装置。
【請求項７】
前記第１の補正手段によって補正される画像は、前記異なるメモリに記憶されており、前記第１の補正手段は、補正がなされた画像を前記メモリに記憶し、
前記第２の補正手段は、前記メモリからの画像の読み出しアドレスを、前記第２の画素数に基づいて、副走査方向に切り替え、当該切り換えられた読み出しアドレスに対応する前記メモリに記憶されている画像を読み出すことを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記読み出しは、副走査方向の読み出しアドレスが等しい主走査方向にならぶ複数画素単位に対するバースト転送によって実行されることを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記異なるメモリは、複数ライン分の画像を記憶するメモリであり、
前記第１の補正手段は、前記異なるメモリから出力する画像のラインを、前記第１の画素数に基づいて、副走査方向に切り替え、当該切り換えられたラインにおける画像を出力することで、前記補正を行うことを特徴とする請求項６乃至８の何れか１項に記載の画像処理装置。
【請求項１０】
前記メモリは、連続アドレスアクセスがランダムアドレスアクセスに比べて高速に処理可能であるメモリであることを特徴とする請求項６乃至９の何れか１項に記載の画像処理装置。
【請求項１１】
前記メモリは、前記情報によって示される前記ずれ量分のライン数に相当する画像を格納可能なメモリ容量を持つことを特徴とする請求項６乃至１０の何れか１項に記載の画像処理装置。
【請求項１２】
前記第１および第２の補正手段は、ＡＳＩＣによって構成され、
前記異なるメモリは、前記ＡＳＩＣの内部に備わり、
前記メモリは、前記ＡＳＩＣの外部に備わることを特徴とする請求項６乃至１１の何れか１項に記載の画像処理装置。
【請求項１３】
画像形成手段によって形成される画像の主走査方向における位置に応じた副走査方向のずれの量を示す情報を取得する取得工程と、
画像を、主走査方向における位置に応じて前記情報に基づいて求まる第１の画素数分、副走査方向にずらしてメモリに書き込む第１の補正工程と、
前記メモリの副走査方向の読み出しアドレスを主走査方向における位置に応じて前記情報に基づいて求まる第２の画素数分、副走査方向にずらして、当該ずらされた副走査方向の読み出しアドレスに対応する画像であって前記メモリにおいて主走査方向に連続するアドレスに書き込まれた画像を、主走査方向の連続アドレスアクセスで読み出す第２の補正工程と、
を有し、
前記第１の画素数は、所定の複数画素未満の整数画素数であり、
前記第２の画素数は、前記所定の複数画素数の整数倍数であることを特徴とする画像処理方法。
【請求項１４】
請求項１乃至１２の何れか１項に記載の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成時のレジストレーションずれを補正するする画像形成装置及び画像形成方法に関するものである。
【背景技術】
【０００２】
近年、電子写真方式のカラー画像形成装置（レーザプリンタ）における画像形成速度をより高速化するためにタンデム方式が多く採用されている。タンデム方式では、色材（トナー）の種類数と同数の現像器及び感光ドラムを配置し、搬送ベルト或は記録シート上に順次異なる色の画像を転写してカラー画像を形成している。このようなタンデム方式のカラー画像形成装置では、それぞれ異なる色の画像が各色に対応する画像形成部で形成されるため、各色の画像間でレジストレーションずれを生じる複数の要因が存在し、それを補正するための様々な対処法が提案されている。
【０００３】
レジストレーションずれの要因の一つとして、レーザ光の偏向走査を行う偏向走査装置のレンズの不均一性や、レンズの取り付け位置ずれ、偏向走査装置の画像形成装置本体への組み付け位置ずれ等が考えられる。このような事態が発生すると、レーザ光の走査ラインに傾きや曲がりが生じる。また、その走査ラインの傾きや曲がりの程度（以下、プロファイルという）が色毎に異なるため、結果としてレジストレーションずれとなって表れることになる。
【０００４】
このようなレジストレーションずれへの対処方法として、特許文献１には、次のことが記載されている。すなわち、光学センサを用いて、偏向走査装置における走査ラインの傾きと曲がりの大きさを測定し、それらを相殺するようにビットマップ画像データを補正し、その補正した画像データに基づいて画像を形成することが記載されている。この特許文献１の方法は、画像データを処理することで電気的にレジストレーションずれの補正を行っているため、機械的な調整や組立時の調整工程が不要となる。
【０００５】
更に特許文献２には、画像メモリから走査ラインの曲がり（湾曲）に合わせてデータを読み出し、ラインバッファを用いずにレジストレーションずれの補正を行っている。従って、前述の特許文献１記載の方法に比べて、より安価にレジストレーションずれに対処できるという利点がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−１７０７５５号公報
【特許文献２】特開２００８−１４８２９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記特許文献１に記載された方法では、複数の走査分のビットマップデータを記憶するラインバッファが必要となる。そして、このラインバッファの数は走査ラインの曲がり幅に依存することになる。例えば、走査ラインの曲がり幅が画像データのＮライン分であると、Ｎライン分の画像データを記憶できる分のラインバッファが必要となる。ここで、このＮの値はカラー画像形成装置毎にばらつきがあるため、実装するラインバッファの数を、このばらつきの最大値を超えるライン数に対応させなければならない。このように多くのラインバッファを確保すると、その分メモリ容量が増大し、かつビットマップ画像データを補正するための回路規模が増大して、コストアップを招くこととなる。そこで、特許文献２に記載されているように、ラインバッファを用いずに、画像メモリからデータを読み出す手法が考えられる。
【０００８】
しかしながら、上記特許文献２に記載された方法では、走査ラインの曲がりの量に応じて画像メモリから、連続アドレスではないメモリアクセスを毎ライン行う必要がある。この連続アドレスではないメモリアクセスは、画像の解像度が高いほどより多くのアクセスが必要となる。具体的な数値の例をあげると、解像度２４００ｄｐｉ画像の高解像度の画像に対し、画像形成可能な主走査幅に対して、画像端から端までで１ｍｍ副走査方向にレジストレーションずれを補正する場合は次の通りとなる。すなわち、
（１ｍｍ÷２５．４ｍｍ）×２４００ｄｐｉ≒９５
となり、メモリの読み出しアドレスについて連続アドレスではないメモリアクセスを毎ラインで９５回行う必要がある。今日では、画像の高解像度化が進んでいるので、画像の解像度が高くなるほど連続アドレスでないメモリアクセスを行う回数は増加する。従って、高解像度の画像を扱う場合にメモリアクセスのパフォーマンスが劣化してしまう可能性がある。
【０００９】
本発明の目的は、メモリアクセスパフォーマンスを向上させてレジストレーションずれを補正することにある。
【課題を解決するための手段】
【００１０】
本発明に係る画像処理装置は、画像形成手段によって形成される画像の主走査方向における位置に応じた副走査方向のずれの量を示す情報を取得する取得手段と、画像を、主走査方向における位置に応じて前記情報に基づいて求まる第１の画素数分、副走査方向にずらしてメモリに書き込む第１の補正手段と、前記メモリの副走査方向の読み出しアドレスを主走査方向における位置に応じて前記情報に基づいて求まる第２の画素数分、副走査方向にずらして、当該ずらされた副走査方向の読み出しアドレスに対応する画像であって前記メモリにおいて主走査方向に連続するアドレスに書き込まれた画像を、主走査方向の連続アドレスアクセスで読み出す第２の補正手段と、を有し、前記第１の画素数は、所定の複数画素数未満の整数画素数であり、前記第２の画素数は、前記所定の複数画素数の整数倍数であることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、画像データを補正することによってレジストレーションずれを補正する際に、不連続なメモリアドレス領域へのアクセス回数を減らし、かつ高速なメモリアクセスパフォーマンスを可能とすることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態１に係るカラー画像形成装置（多機能装置）の構成を説明するブロック図である。
【図２】本発明の実施形態１に係るプリンタコントローラの詳細構成を示すブロック図である。
【図３】本発明の実施形態１に係るレジストレーションずれとその補正を説明するための図である。
【図４】本発明の実施形態１に係るプリンタコントローラの画像補正部の詳細構成を示すブロック図である。
【図５】本発明の実施形態１に係る画像補正部にプロファイルを指定する方法を説明するための図である。
【図６】本発明の実施形態１に係る画像補正処理を説明するための図である。
【図７】本発明の実施形態２に係るプリンタコントローラの画像補正部の詳細構成を示すブロック図である。
【図８】本発明の実施形態３に係るプリンタコントローラの画像補正部の詳細構成を示すブロック図である。
【発明を実施するための形態】
【００１３】
発明を実施するための形態を説明する前に、まず、連続アドレスではないメモリアクセスを行う回数が増加することによってメモリパフォーマンスが低下することについて説明する。
【００１４】
今日の画像形成装置においては、大量の画像データを処理する必要があるため、画像メモリはＤＲＡＭ（Dynamic Random Access Memory）で構成されることが行われている。
【００１５】
高速ランダムアクセスが可能なＳＲＡＭ（Static Random Access Memory）と異なり、ＤＲＡＭではアクセスに多くのレイテンシがかかるためアクセスを高速化する技術が搭載されている。特に連続アドレスのアクセスに対しては多くの高速化技術が搭載されている。すなわち、ＤＲＡＭの特徴として、連続アドレスアクセスがランダムアドレスアクセスに比べ高速処理可能であるということがいえる。
【００１６】
具体的には、ページモードやバンクインターリーブ、またメモリに接続するバスにおいても、バースト転送と呼ばれる技術が搭載されている。ページモードは、行と列で構成されるメモリブロックのアクセスにおいて、同じ行に構成されるデータを一時バッファに読みだしておき、同じ行かつ異なる列のデータへのアクセスの手順を簡略化することができる処理である。バンクインターリーブは、連続したアドレスを異なるバンクに順に割り当てることにより、アクセス要求の処理の時間を隠ぺいできる処理である。またバースト転送は連続アドレスのアクセスにおいて最初のメモリアクセスに対するアドレス以降のアドレス通知処理を省略する処理である。ここで挙げた処理は一例であり、そのほかにも多くの高速化技術が実装されている。
【００１７】
しかしながら、ＤＲＡＭのような画像メモリから走査ラインの曲がり（湾曲）に合わせて毎ライン画像データを読み出すときに、多くの不連続なアドレス領域へのメモリアクセスを行うと、上述した高速化技術が効果的に発揮されない。従って、メモリアクセスのパフォーマンスが劣化し、高速な画像形成を行うシステムが成り立たなくなることが起こり得る。
【００１８】
以下で説明する実施形態においては、高速ランダムアクセス可能なＳＲＡＭと、比較的安価で大容量化が容易なＤＲＡＭとを用いてレジストレーション補正時のメモリアクセスを向上させる例について説明する。
【００１９】
以下、本発明を実施するための最良の形態について図面を用いて説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００２０】
＜実施形態１＞
図１は、本発明の実施形態１に係るカラー画像形成装置（多機能装置）１００の構成を説明するブロック図である。
【００２１】
この画像形成装置１００は、例えば、複数種類の機能を実現する複合機である多機能処理装置（ＭＦＰ：Multi Function Peripheral）で実現される。またこの画像形成装置１００は、ネットワークＩ／Ｆ１０８を介してネットワークに接続され、このネットワークを利用して、ネットワークに接続された外部機器との間で画像データや各種情報をやりとりすることができる。
【００２２】
図１において、原稿台とオートドキュメントフィーダ（ＡＤＦ）を含む画像読取部１０５は、原稿台上の束状或は１枚の原稿画像を光源で照射し、その原稿からの反射像をレンズで固体撮像素子（不図示）に結像する。これにより画像読取部１０５は、その固体撮像素子からラスタ状の画像読取信号を所定密度（例えば、６００ｄｐｉ）のページ単位のラスタ画像として得ることができる。尚、本実施の形態では画像読取部１０５で読み取られる印刷物として、紙文書を例に挙げて説明するが、紙以外の記録媒体（例えば、ＯＨＰシート、フィルム等の透過原稿、布等）等の印刷物を画像読取部１０５の読取対象としても良い。
【００２３】
また画像形成装置１００は、画像読取信号に対応する画像を印刷部１０７で記録媒体に印刷する複写機能を有する。特に、原稿画像を１部複写する場合には、この画像読取信号をデータ処理部１０１で画像処理して記録信号を生成し、これを印刷部１０７によって記録媒体に印刷させる。一方、原稿画像を複数部複写する場合には、ＨＤ等の記憶部１０６に一旦、記録データを記憶させた後、これを指定された部数分繰り返し印刷部１０７に出力して記録媒体上に印刷させる。尚、印刷部１０７を用いる各種印刷制御は、プリンタコントローラ１０３によって実現される。印刷部１０７は、この実施の形態では、例えばタンデム方式のレーザプリンタのプリンタエンジンを含むものとする。
【００２４】
画像形成装置１００への操作者の指示は、画像形成装置１００に装備された操作部１０４から行われ、これら一連の動作はデータ処理部１０１内の制御部（図２のＣＰＵ３０７）で制御される。また、操作部１０４における入力状態の表示及び処理中の画像データの表示等は表示部１０２に表示される。尚、この画像形成装置１００では、後述する各種処理を実行するための各種操作及び表示をユーザに提供するユーザインタフェースを、表示部１０２及び操作部１０４によって実現している。
【００２５】
次に、プリンタコントローラ１０３の詳細構成について図２を用いて説明する。このプリンタコントローラ１０３はホストＩ／Ｆ部３０２を有する。このホストＩ／Ｆ部３０２には、データ処理部１０１から送出された印刷データや、この画像形成装置１００の動作を指示する設定を入力する入力バッファ（不図示）が設けられている。またホストＩ／Ｆ部３０２には、データ処理部１０１へ送出する信号や機器情報データを含む出力データを一時的に保持する出力バッファ（不図示）が設けられている。またホストＩ／Ｆ部３０２は、データ処理部１０１との間で送受信される信号や通信パケットの入出力部を構成するとともに、データ処理部１０１との間の通信制御を行う。
【００２６】
ホストＩ／Ｆ部３０２を介して入力された印刷データは、画像データ発生部３０３に与えられる。ここで、入力される印刷データは、例えば、ＰＤＬ（ページ記述言語）データで構成される。画像データ発生部３０３は、予め定められている解析部により、入力された印刷データの解析（例えば、ＰＤＬ解析処理）を行う。そして、その解析結果から中間言語を生成し、更に印刷部（プリンタエンジン）１０７が処理可能なビットマップデータを生成する。
【００２７】
具体的には、印刷データの解析とその解析による中間言語情報の作成を行うとともに、その中間言語情報の作成と並行してラスタライズ処理を行う。このラスタライズ処理では、印刷データに含まれる表示色ＲＧＢ（加法混色）から印刷部１０７が処理可能なＹＭＣＫ（減法混色）への変換が含まれる。またこの処理には、印刷データに含まれる文字コードから予め格納されているビットパターン、アウトラインフォント等のフォントデータへの変換等の処理が含まれる。その後、ラスタライズ処理では、ページ単位或は所定のラインから構成されるバンド単位でビットマップデータを作成する。そして、このビットマップデータに対してディザパターンを用いる疑似階調処理を施し、印刷部１０７において印刷処理が可能なビットマップデータを生成する。こうして作成されたビットマップデータは画像メモリ３０４に格納される。
【００２８】
ＣＰＵは画像メモリ３０４に格納したビットマップデータを、後述される画像補正処理を行う画像補正部３０５に転送する。画像補正処理が施されたビットマップデータは、エンジンＩ／Ｆ部３０６を介してビデオ信号として印刷部１０７に転送される。エンジンＩ／Ｆ部３０６は、印刷部１０７へ転送する記録データ（ビデオ信号）を一時的に保持する出力バッファ（不図示）と、印刷部１０７から送出された信号を一時的に保持する入力バッファ（不図示）とが設けられている。またエンジンＩ／Ｆ部３０６は、印刷部１０７との間で送受信される信号の入出力部を構成するとともに、印刷部１０７との間の通信制御をも司っている。
【００２９】
また操作部１０４におけるユーザの操作入力によって出力されるモード設定に関する指示等の各種指示は、操作部Ｉ／Ｆ部３０１を介して入力される。この操作部Ｉ／Ｆ部３０１は、操作部１０４とＣＰＵ３０７との間のインターフェースを構成する。ＣＰＵ３０７は、操作部１０４もしくはデータ処理部１０１から指示されたモードに応じて、上述の各部に対する制御を行う。この制御はＲＯＭ３０８に格納されている制御プログラムに基づいて実行される。このＲＯＭ３０８に格納されている制御プログラムは、システムクロックによってタスクと称されるロードモジュール単位に時分割制御を行うためのＯＳを含んでいる。またこの制御プログラムには、このＯＳによって機能単位に実行制御される複数のロードモジュールが含まれる。ＣＰＵ３０７による演算処理の作業領域としては、ＲＡＭ３０９が使用される。ＣＰＵ３０７を含む各部は、システムバス３１０に接続されている。このようなプリンタコントローラの一部、例えば操作部Ｉ／Ｆ３０１、ホストＩ／Ｆ部３０２、画像データ発生部３０３、画像補正部３０５、エンジンＩ／Ｆ部３０６、ＣＰＵ３０７をＡＳＩＣ（特定用途向け集積回路）としてパッケージ化することができる。パッケージ化により、さまざまな機種で共通使用することにより、コストダウンを図ることができる。また画像メモリ３０４等は、さまざまな機種に必要な容量を汎用品のＤＲＡＭを選択するにより、コストの最適化を行うことができる。
【００３０】
次に、レジストレーションずれ補正の原理について、図３を用いて説明する。図３は、本発明の実施の形態に係るレジストレーションずれ補正の原理を説明するための図である。
【００３１】
図３（Ａ）は、レジストレーションずれの原因となる、走査ラインの曲がりの度合い、すなわち、プロファイルを説明する図である。図において、横軸は走査ラインの主走査方向を示し、縦軸は副走査方向を示している。図３（Ｂ）は、このプロファイルを相殺するように、各走査ラインに対応するラインデータに切り換えながら、ビットマップデータを印刷部１０７へ送り出す様子を示している。ここで、ｎラインが、本来印刷すべき印刷対象の走査ラインを示している。図３（Ｂ）において、黒い部分がｎラインの印刷時に印刷部１０７へ送り出されるラインデータを示している。このようにプロファイルを相殺するように、印刷部１０７に出力するデータのラインを切り換えることにより、露光走査に曲がりが生じても、感光ドラム等の像担持体上に生成された静電潜像は歪みのないものにできる。
【００３２】
次に、画像補正部３０５の詳細構成について図４を用いて説明する。図４は、本発明の実施形態１に係るプリンタコントローラ１０３の画像補正部３０５の詳細構成を示すブロック図である。
【００３３】
第１レジスタ部４０１は、複数のレジスタ（不図示）で構成される。高解像度補正処理部４０３に対するＣＰＵ３０７からの指示は、ＣＰＵ３０７が第１レジスタ部４０１の各レジスタに適切な値を書き込むことで行われる。
【００３４】
第１メモリ４０５は、高解像度補正処理部４０３が用いるメモリ（第１記憶部）であり、主走査方向１ライン分のビットマップデータを複数ライン格納可能なラインバッファである。第１メモリ４０５は、１ライン分のビットマップデータが転送されるごとに、転送されたビットマップデータを格納するとともに、格納されているビットマップデータをライン単位でシフトして、もっとも古く格納されたビットマップデータを削除する。このように動作することにより、高解像度補正処理に必要なビットマップデータを出力する。この第１メモリ４０５は、読み書き可能で、高速ランダムアクセス可能なメモリ、例えばＳＲＡＭにより実現される。
【００３５】
高解像度補正処理部４０３は、画像メモリ３０４から入力されたビットマップデータに対して、第１レジスタ部４０１の各レジスタに基づき後述する高解像度補正処理を行う。高解像度補正処理が行われたビットマップデータは低解像度補正処理部４０４に出力される。高解像度補正処理は、低解像度補正処理による処理単位よりも高い解像度単位でのレジストレーションずれを補正する処理である。
【００３６】
第２レジスタ部４０２は、複数のレジスタ（不図示）で構成される。低解像度補正処理部４０４に対するＣＰＵ３０７からの指示は、ＣＰＵ３０７が第２レジスタ部４０２の各レジスタに適切な値を書き込むことで行われる。
【００３７】
第２メモリは、低解像度補正処理部４０４が用いるメモリ（第２記憶部）であり、読み書き可能で、大容量化が容易なメモリ、例えばＤＲＡＭにより実現される。
【００３８】
低解像度補正処理部４０４は、高解像度補正処理部４０３から入力されたビットマップデータに対して、第２レジスタ部４０２の各レジスタに基づき後述する低解像度補正処理を行う。低解像度補正処理は、印刷対象の画像の解像度未満の解像度単位でのレジストレーションずれを補正する処理である。
【００３９】
次に本発明の実施形態１に係る画像補正部３０５における、高解像度補正処理、低解像度補正処理について、図５、図６を参照して説明する。大まかな処理としては、高解像度レベルの補正処理については、高速ランダムアクセス可能なＳＲＡＭを用いて処理を行う一方で、低解像度レベルの補正処理についてはＤＲＡＭを用いて処理を行う。ここで、ＤＲＡＭにおいては、低解像度レベルでの補正処理が行われるため、レジストレーションずれを補正する回数、すなわち、不連続なメモリアドレス領域へのアクセス回数を、オリジナルの高解像度レベル時の補正と比べて少なくすることができる。換言すれば、ＤＲＡＭにおける連続メモリアドレス領域へのアクセス回数を増やすことができるので、前述した高速化技術を効果的に発揮することが可能となる。なお、以下の説明では高解像度部分の補正処理と低解像度部分の補正処理という表現を用いて説明しているが、説明を容易にするための表現であり、実際に解像度変換処理を行うわけではない点に留意されたい。また、「高解像度」と「低解像度」とはそれぞれ相対的な概念であり、一方に対して解像度が高いものを「高解像度」と称し、他方を「低解像度」と称しているに過ぎない。従って、以下の例で高解像度として示している２４００ｄｐｉの画像が、場合によっては「低解像度」の画像となり得る点にも留意されたい。
【００４０】
本実施形態では、２４００ｄｐｉの高解像度を有するビットマップデータを画像補正処理の対象とする。
【００４１】
図５は、本発明の実施形態１に係る画像補正部３０５にプロファイルを指定する方法を説明するための図である。なお、図５に示す走査線プロファイルは、レジストレーションずれ量を検出する公知の手法を用いて、予めプリンタコントローラ１０３において取得されているものとする。
【００４２】
尚、ここではビットマップデータの１ラインを等分に分割して考える。以下、この分割された一つをセグメントと呼ぶことにする。尚、以下の説明において、セグメント長、各セグメントの副走査位置等の英字で示す名称は、第１レジスタ部４０１および第２レジスタ部４０２のレジスタ名を示している。前述のようにＣＰＵ３０７は、これら各レジスタに値を書き込むことにより画像補正部３０５に対して動作を指示する。
【００４３】
各セグメントの長さを設定するレジスタRegSegLenを、画像補正部３０５の第１レジスタ部４０１および第２レジスタ部４０２に設ける。また、主走査幅の長さを設定するRegLineLenを画像補正部３０５の第１レジスタ部４０１および第２レジスタ部４０２に設ける。
【００４４】
さらに、プロファイルを相殺するように、各セグメントが副走査方向にどの程度ずれた位置であるかを指示するレジスタ郡RegSegPosH[i]を必要な数だけ第１レジスタ部４０１に設ける。また、RegSegPosL[i]を必要な数だけ第２レジスタ部４０２に設ける。尚、変数ｉは、画像端から主走査方向に何番目のセグメントであるかを示す。ここで、低解像度補正処理部４０４が参照するレジスタ群RegSegPosL[i]には、処理するビットマップの解像度に対して低解像度である６００ｄｐｉ単位での副走査位置を書き込む。また高解像度補正処理部４０３が参照するレジスタ群RegSegPosH[i]には、前述した低解像度単位では表現できない高解像度分の副走査位置を書き込む。具体的には、図５に示した画像端のセグメント（ｉ＝０）は、副走査方向に２４００ｄｐｉで９ラインずれた位置になっている（RegSegPos[i]を参照）。ここでは副走査方向にもっとも下のラインを基準の「０」として、低解像度単位で何ラインずれているかを指定する。従って低解像度である６００ｄｐｉ単位の値を設定するRegSegPosL[0] には９（２進数では０１００１）の下位２ビットを切り捨てた値である２（２進数では０１０）を書き込む。また、高解像度分の副走査位置を設定するRegSegPosH[0] にはこの切り捨てた下位２ビットのみ（２進数では０１）の値である１を書き込む。すなわち、RegSegPosL[i]で示された主走査位置毎の副走査位置との残差を書き込む。さらにプロファイルの低解像度単位での最大の副走査位置を設定するRegSegPosMAXを第２レジスタ部４０２に設ける。RegSegPosMAXはRegSegPosL[i]が格納する値の最大値に等しい。このように高解像度補正処理部４０３と低解像度補正処理部４０４に必要な補正情報のみを設定することにより、不要な回路規模の増加を抑えることができる。
【００４５】
なお、本実施の形態では、１走査ラインにおいて、セグメント長RegSegLenの値は固定としているが、可変としてもよい。また、図５に示すRegSegPos[i]は、説明を容易にするために示すものであり、第１レジスタ部４０１及び第２レジスタ部４０２には設定されなくてもよい。以上の各レジスタに格納される情報を、副走査位置情報と称する。また、第１レジスタ部４０１に設定される情報を高解像度補正情報と称し、第２レジスタ部４０２に設定される情報を低解像度補正情報と称する。
【００４６】
次に、図６を用いて図５に示す走査線プロファイルに従ってレジストレーションずれを補正する画像補正処理を説明する。
【００４７】
図６（Ａ）は画像メモリ３０４に格納されている解像度２４００ｄｐｉ、１画素あたり１ｂｉｔのデータ量をもつビットマップデータを示す。このビットマップデータに対して高解像度補正処理部４０３は、ＣＰＵによって第１レジスタ部４０１に設定されたレジスタ値に従って高解像度補正処理を行う。
【００４８】
図６（Ｂ）は高解像度補正処理が行われたビットマップデータを表わす図である。高解像度補正処理部４０３は、第１メモリ４０５を用いて、０、１、２、３ライン遅延させたビットマップデータを含む計４ライン分の処理ウィンドウを形成する。高解像度補正処理部４０３はさらに、主走査方向の位置に対応するRegSegPosH[i]を参照して遅延させたビットマップデータをサンプリング処理する。具体的には、RegSegPosH[i]が０のときは０ラインの遅延、１のときは１ライン、２のときは２ライン、３のときは３ライン遅延させたビットマップデータをサンプリング処理する。サンプリングとは、出力された処理ウィンドウ内のデータを抽出する処理のことである。高解像度補正処理部４０３はサンプリングしたビットマップデータを低解像度補正処理部へ出力する。従って、第１メモリ４０５は少なくとも３ライン分のビットマップデータを読み書き可能なメモリ容量を備える（遅延なしの１ライン分を合わせて計４ライン分の処理ウィンドウの形成が可能）。このように、第１メモリ４０５を比較的少ない数のラインバッファとして構成して、データを低解像度補正処理部へ出力可能とすることができる。このラインバッファは、少なくとも低解像度補正処理における処理単位分に相当する処理ウィンドウを形成できればよい。尚、入力された全てのビットマップデータが含まれるビットマップデータを出力するために、図６（Ｂ）において黒で示した領域、すなわちデータが入っていないサンプリング対象領域には、白データ等（ダミーデータ）を付加する。
【００４９】
図６（Ｃ）は、高解像度補正処理が施されたビットマップデータに対し低解像度補正処理が行われたビットマップデータを示す図である。低解像度補正処理部４０４は、まず高解像度補正処理部４０３から入力されたビットマップデータを第２メモリ４０６に順次書き込む。低解像度補正処理部４０４は、少なくとも（RegSegPosMAX＋１）×４ライン分のビットマップデータを書き込む。その後、次に主走査方向の位置に対応するRegSegPosL[i]を参照し、RegSegPosL[i]×４ライン前に書き込まれたビットマップデータを、対応するアドレスのメモリから順次読み出す。なお、データがどれくらい読み出されたかを管理できていれば、（RegSegPosMAX＋１）×４ライン分のビットマップデータを書き込みが終わるまで待たずに、順次データを読み出すことも可能である。ここで「×４」は、６００ｄｐｉが２４００ｄｐｉの４ライン分であることを意味する。すなわち、高解像度補正処理部４０３で使用された第１メモリ４０５で形成される処理ウィンドウ分に相当するライン数を意味している。読み出しを行ったラインのビットマップデータに対応するメモリは、次に再び入力されるビットマップデータを格納する。このように動作することにより、第２メモリは少なくとも（RegSegPosMAX＋１）×４ライン分のビットマップデータを読み書き可能なメモリ容量を備える。本実施形態では、RegSegPosMAXが２であるため、（２＋１）×４＝１２ライン分のメモリ容量が必要となる。
【００５０】
ここで、解像度２４００ｄｐｉ、１画素あたり１ビット、主走査幅３００ｍｍのビットマップデータに対し、画像端から端までで１ｍｍ副走査方向に画像補正する場合、
（３００ｍｍ÷２５．４ｍｍ／ｉｎｃｈ）×２４００ｄｐｉ≒２８３４６
（１ｍｍ÷２５．４ｍｍ）×６００ｄｐｉ≒２４
（２４＋１）×４＝１００
となり、少なくとも１００ライン＝２８３４６００ビットのメモリ容量を色毎に備える必要がある。なお、上記の式において低解像度単位での最大の副走査位置を設定するRegSegPosMAＸは、上記の計算の通り２４である。このような容量のメモリをＡＳＩＣ内部のＳＲＡＭとして構成すると、ＡＳＩＣの規模が大きくなりＡＳＩＣのコストが上がる要因となってしまう。そのため、前述したように、第２メモリ４０６はＡＳＩＣ外部のメモリとして構成し、大容量化の容易なメモリ、例えばＤＲＡＭとして構成する。ここで、解像度２４００ｄｐｉ、１画素あたり１ビット、主走査幅３００ｍｍのビットマップデータに対し、画像端から端までで１ｍｍ副走査方向に画像補正する場合、連続アドレスではないメモリアクセスを行う回数は、２４回となる。一つのメモリからの読み出しのみにより画像補正を行った場合の９５回に比べ、アドレスの切り替え回数が減少する。尚、読み出し先のアドレスにビットマップデータが存在しない場合、すなわち図６（Ｃ）において斜線で示した領域には、白データ等（ダミーデータ）を付加する。
【００５１】
以上のように、画像補正部３０５は、画像メモリ３０４からビットマップデータを読み出して、画像補正処理を行い、印刷部１０７へ転送する。そして、印刷部１０７は、感光体ドラム（像担持体）を１走査ラインの画像データに基づいてレーザ光にて走査して、感光ドラム上に１走査ラインの静電潜像を形成する。ここで、静電潜像とは、所定の電位に帯電された感光体ドラムをレーザ光を照射（走査）することで、感光ドラム上に生成される画像データに応じた電位差のある像をいう。そして、印刷部１０７は、静電潜像に対してトナーを付着させることで、電位差に応じたトナー像が感光体ドラム上に形成し、更にトナー像を用紙上に転写することでシート上に画像を形成する。
【００５２】
尚、更に、カラー画像形成装置において、複数色（ＣＹＭＫ）の各色に対応する像形成ユニットを有する場合には、各色の像形成ユニット毎に本実施の形態に係るデータ転送方式を実施することで、各色毎のレジストレーションずれによる色ずれを防ぐことができる。これは以下に説明する各実施の形態においても同様である。
【００５３】
以上説明したように本実施の形態によれば、画像補正処理を、高速ランダムアクセス可能なメモリで構成されたラインバッファを用いた高解像度補正処理と、大容量化が容易なメモリを用いた低解像度補正処理と、の２段階に分けて構成する。その結果、色毎に走査ラインの曲がりが発生している場合でも、不連続なアドレス領域へのアクセス回数を減らすことで、高速にレジストレーションずれによる色ずれを防ぐ処理ができる。
【００５４】
＜実施形態２＞
図４に示した画像補正部３０５は、第２メモリ４０６を低解像度補正処理部４０４が占有する構成を例に挙げて説明した。画像メモリは３０４や、第２メモリ４０６はＡＳＩＣ等の集積回路デバイス外部の外部メモリデバイスとして構成されることが頻繁に行われる。このように多くの部品が必要となると、部品点数が増え、コストの増加につながる。そこで、実施形態２では、第２メモリ４０６を画像メモリ３０４と共有する構成を採用する場合について説明する。
【００５５】
図７は、第２メモリ４０６を画像メモリ３０４の一部の領域を用いた場合の構成を示す図である。図７に示した低解像度補正処理部４０４は、システムバス３１１を介して、ビットマップデータの読み書きを行うことにより、低解像度補正処理を行う。
【００５６】
＜実施形態３＞
実施形態１または２の構成は、画像補正部の上流側において高解像度補正処理を行い、高解像度補正がされたデータが低解像度補正処理される例について説明した。しかしながら、第２メモリ４０６と、画像メモリ３０４を共有する構成であって、低解像度補正処理部４０４と高解像度補正処理部４０３の接続順を変える構成も考えられる。図８は、そのような構成を示す図である。図４に示した低解像度補正処理部４０４では、まず入力されたビットマップデータを第２メモリ４０６に書き込み、次に読み出すときにRegSegPosL[i]に基づいて読み出しアドレスを切り替えていた。図８に示した低解像度補正処理部４０４は、画像メモリ３０４から画像データを読み出すときに、RegSegPosL[i]に基づいて読み出しアドレスを切り替えることにより、低解像度補正処理を行う。ここで低解像度補正処理を行われたビットマップデータは、次に高解像度補正処理部４０３に入力され、高解像度補正処理を行う。
【００５７】
このような形態をとることにより、色毎に走査ラインの曲がりが発生している場合でも、プリンタコントローラ１０３の部品点数を増やすことなく、レジストレーションずれによる色ずれを防ぐことができる。
【００５８】
＜その他の形態＞
また、図８の例では、画像メモリ３０４と第２メモリ４０６とを共通する構成として説明したが、実施形態１で示したように、第２メモリ４０６を低解像度補正処理部４０４が占有するような構成であってもよい。
【００５９】
また、上記の各実施形態においては、連続メモリアドレスへのアクセスパフォーマンスの向上効果が認められるＤＲＡＭが第２メモリ４０６として用いられる例について説明した。しかしながら、第２メモリ４０６を他の種類のＲＡＭで構成してもよい。
【００６０】
すなわち、画像補正処理を、高速ランダムアクセス可能なメモリで構成されたラインバッファを用いた高解像度補正処理と、所定のメモリを用いた低解像度補正処理と、の２段階に分けて構成することもできる。これにより、ＤＲＡＭに特有のメモリアドレスのアクセス向上のみならず、バス転送時のパフォーマンスを向上させることができる。
【００６１】
また、上記の各実施形態においては、１画素単位での画像の補正の場合について説明したが、１画素未満の画像に対する補間処理を併せて行っても良い。また、上記の各実施形態においては、高解像度処理は画像メモリ３０４に入力された解像度と同じ解像度の場合について説明したが、必ずしも同じ解像度でなくてもよい。例えば、上記の補間処理を用いることによって、上述した高解像度処理は、入力された画像の解像度よりも低い解像度の処理としてもよい。
【００６２】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005754972.tif 000002
【図２】
0005754972.tif 000003
【図３】
0005754972.tif 000004
【図４】
0005754972.tif 000005
【図５】
0005754972.tif 000006
【図６】
0005754972.tif 000007
【図７】
0005754972.tif 000008
【図８】
0005754972.tif 000009