(57)【要約】【課題】  ＨＳ補正処理において、補正を行う単位数が多くなるほどルックアップテーブルの数が多くなるため、変換データを格納するメモリの容量が大きくなってしまう。【解決手段】  補正処理に用いる変換データをメモリに格納する際に、あるノズル単位については変換データの絶対値を格納し、他のノズル単位については該絶対値のＬＵＴデータに対する差分値を格納することにより、データ量を小さくする。補正処理を実行する際には、絶対値と差分値を加算して絶対値を算出する。【選択図】  図７
2018056819.tif 000002
【特許請求の範囲】
【請求項１】
インクを吐出する複数のノズルが配列されたノズル列を備えたプリントヘッドを用いて、被記録媒体に画像を記録するための画像処理装置であって、
第１変換データと、前記第１変換データに対する第２変換データの差分を示す差分データと、を格納する格納手段と、
前記第１変換データに基づいて、前記ノズル列のうち一部のノズルを含む第１ノズル単位に対応する第１画像データを生成し、前記第１変換データと前記差分データとを加算することにより生成された前記第２変換データに基づいて、前記ノズル列のうち前記第１ノズル単位のノズルとは異なるノズルを含む第２ノズル単位に対応する第２画像データを生成する生成手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記差分データのデータ量は、前記第１変換データのデータ量よりも小さいことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記差分データのデータ量は、前記第２変換データのデータ量よりも小さいことを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記生成手段は、前記第１画像データを生成した後に、前記第２画像データを生成することを特徴とする請求項１から３のいずれか１項に記載の画像処理装置。
【請求項５】
データを格納する第２格納手段をさらに備え、
前記格納手段から読み出された前記第１変換データが前記第２格納手段に書き込まれ、
前記生成手段が前記第２格納手段から読み出された前記第１変換データに基づいて前記第１画像データを生成し、
前記第２格納手段から読み出された前記第１変換データに、前記格納手段から読み出された前記差分データを加算することにより生成された前記第２変換データが前記第２格納手段に書き込まれ、
前記生成手段が前記第２格納手段から読み出された前記第２変換データに基づいて前記第２画像データを生成することを特徴とする請求項１から４のいずれか１項に記載の画像処理装置。
【請求項６】
前記第１変換データに前記差分データを加算することにより前記第２変換データを生成する加算手段をさらに備えることを特徴とする請求項１から５のいずれか１項に記載の画像処理装置。
【請求項７】
前記第１ノズル単位及び前記第２ノズル単位のそれぞれは、少なくとも１つのノズルを含むことを特徴とする請求項１から６のいずれか１項に記載の画像処理装置。
【請求項８】
前記第１ノズル単位に含まれるノズルは、前記第２ノズル単位には含まれないことを特徴とする請求項１から７のいずれか１項に記載の画像処理装置。
【請求項９】
前記第１ノズル単位は、前記被記録媒体上の第１領域に画像を記録可能であり、前記第２ノズル単位は、前記被記録媒体上の領域であって前記第１領域とは異なる第２領域に画像を記録可能であることを特徴とする請求項１から８のいずれか１項に記載の画像処理装置。
【請求項１０】
前記第１領域と前記第２領域は、前記ノズルが配列する方向に隣接する領域であり、互いに重複しないことを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記生成手段により生成されたデータに基づいて前記プリントヘッドを制御することにより、前記被記録媒体に画像を記録する記録手段をさらに備えることを特徴とする請求項１から１０のいずれか１項に記載の画像処理装置。
【請求項１２】
前記ノズル列は、前記第１ノズル単位及び前記第２ノズル単位を含むＮ（Ｎ：２以上の整数）個のノズル単位に分割され、
前記Ｎ個のノズル単位のうち、第ｎノズル単位に対応する第ｎ変換データと、該第ｎノズル単位と隣接する第ｎ＋１ノズル単位に対応する第ｎ＋１変換データと、の差分である第ｎ＋１差分データのデータ量が所定量よりも小さい場合、前記格納手段には前記第ｎ＋１差分データが格納され、前記第ｎ＋１差分データのデータ量が前記所定量よりも大きい場合、前記格納手段には前記第ｎ＋１変換データが格納されることを特徴とする請求項１から１１のいずれか１項に記載の画像処理装置。
【請求項１３】
前記第１変換データは１６ｂｉｔのデータであり、前記差分データは８ｂｉｔのデータであることを特徴とする請求項１から１２のいずれか１項に記載の画像処理装置。
【請求項１４】
前記ノズル列は、第１の色のインクを吐出する第１ノズル列であり、
前記プリントヘッドは、前記第１の色とは異なる第２の色のインクを吐出する第２ノズル列をさらに備えることを特徴とする請求項１から１３のいずれか１項に記載の画像処理装置。
【請求項１５】
前記第１画像データ及び前記第１変換データは、前記第１ノズル単位と、前記第２ノズル列に含まれ且つ前記第１ノズル単位と前記被記録媒体上の同じ領域を記録可能な第３ノズル単位と、に対応し、前記第２画像データ及び前記第２変換データは、前記第２ノズル単位と、前記第２ノズル列に含まれ且つ前記第２ノズル単位と前記被記録媒体上の同じ領域を記録可能な第４ノズル単位と、に対応することを特徴とする請求項１４に記載の画像処理装置。
【請求項１６】
インクを吐出する複数のノズルが配列されたノズル列を備えたプリントヘッドを用いて、被記録媒体に画像を記録するための画像処理方法であって、
第１変換データに基づいて、前記ノズル列のうち一部のノズルを含む第１ノズル単位に対応する第１画像データを生成する工程と、
前記第１変換データに差分データを加算することにより、第２変換データを生成する工程と、
生成された前記第２変換データに基づいて、前記ノズル列のうち前記第１ノズル単位のノズルとは異なるノズルを含む第２ノズル単位に対応する第２画像データを生成する工程と、
を有することを特徴とする画像処理方法。
【請求項１７】
インクを吐出する複数のノズルが配列されたノズル列を備えたプリントヘッドを用いて、被記録媒体に画像を記録するための画像処理方法であって、
第１格納手段に格納された第１変換データを読み出して、第２格納手段に書き込む工程と、
前記第２格納手段に書き込まれた前記第１変換データに基づいて、前記ノズル列のうち一部のノズルを含む第１ノズル単位に対応する第１画像データを生成する工程と、
前記第２格納手段から読み出された前記第１変換データに、前記第１格納手段に格納された差分データを読み出して加算することにより、第２変換データを生成する工程と、
生成された前記第２変換データを前記第２格納手段に書き込む工程と、
前記第２格納手段に書き込まれた前記第２変換データに基づいて、前記ノズル列のうち前記第１ノズル単位のノズルとは異なるノズルを含む第２ノズル単位に対応する第２画像データを生成する工程と、
を有することを特徴とする画像処理方法。
【請求項１８】
請求項１６または請求項１７の画像処理方法における各工程を画像処理装置に実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録材を付与することにより被記録媒体上に画像を記録するための画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、インクなどの記録材を被記録媒体に付与することにより、紙などに画像を記録する記録装置が知られている。この記録装置においては、発熱素子などの記録素子を備えた吐出口（ノズル）を複数備えるプリントヘッドが備えられている。このプリントヘッドは、その製造上の誤差などにより、ノズル毎またはプリントヘッドを構成するチップ毎に、ノズルの口径や発熱素子によるインクの発泡がばらついてしまう場合がある。そのため、同じ工程で製造されたプリントヘッドであっても、実際にプリントしてみると濃度にばらつきがみられることがあり、これが記録画像において濃度ムラとして視認されてしまうという課題がある。
【０００３】
このような濃度ムラを目立たなくさせる補正方法として、特許文献１のように、ノズル個々の吐出特性に応じて、そのノズルで吐出する色の濃度値の補正を行う、所謂ヘッドシェーディング（ＨＳ）技術が知られている。
【０００４】
ヘッドシェーディングは、記録可能な領域をノズルが配列するノズル列方向に複数に分割した単位領域ごとに、各領域に対応したルックアップテーブルデータを入れ替えながら、１次元（１Ｄ）の色変換ＬＵＴ処理を行うことで実現できる。ＬＵＴデータとは、プリントヘッドの色変換で使用する変換データであり、各ノズルの吐出特性に応じた補正情報が格納されている。この補正処理を行うことにより、同一色のインクを吐出するノズル間の記録濃度をほぼ均一にすることができ、濃度ムラの発生を抑制することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１０−０１３６７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来のＨＳ技術においては、分割された単位領域数が多くなればなるほど、保持すべきルックアップテーブルの数が増え、ルックアップテールとしての変換データのデータ量が大きくなってしまうという課題がある。この結果、変換データを格納するメモリ（例えばＤＲＡＭ）の容量を圧迫してしまう場合がある。さらには、変換データをＤＲＡＭから画像処理部の内部メモリ（例えばＳＲＡＭ）に設定するためのデータ転送量も大きくなってしまうという問題点がある。そこで本発明は、変換データのデータ量を低減することを目的とする。
【課題を解決するための手段】
【０００７】
インクを吐出する複数のノズルが配列されたノズル列を備えたプリントヘッドを用いて、被記録媒体に画像を記録するための画像処理装置であって、第１変換データと、第２変換データの前記第１変換データに対する差分を示す差分データと、を格納する格納手段と、前記第１変換データに基づいて、前記ノズル列のうち一部のノズルを含む第１ノズル単位に対応する第１画像データを生成し、前記第１変換データと前記差分データとを加算することにより生成された前記第２変換データに基づいて、前記ノズル列のうち前記第１ノズル単位のノズルとは異なるノズルを含む第２ノズル単位に対応する第２画像データを生成する生成手段と、を備えることを特徴とする。
【発明の効果】
【０００８】
本発明の上記構成により、各ノズル単位のデータ変換用の補正値を差分値で格納することができるため、絶対値で格納する場合に比べて、より小さなデータ量でメモリに格納することが可能である。この結果、変換データを格納するメモリの容量を低減することができる。
【図面の簡単な説明】
【０００９】
【図１】ＳＲＡＭ制御部１２０２の内部動作を示す図
【図２】非圧縮ＨＳ補正値のデータ構成の概念図
【図３】差分圧縮されたＨＳ補正値のデータ構成の概念図
【図４】ＬＵＴデータが格納されたＤＲＡＭ及びＳＲＡＭの概念図
【図５】ＨＳ補正処理を説明するための図
【図６】画像処理の流れを示すフローチャート
【図７】ＨＳ処理の流れを示すフローチャート
【図８】複数チップを備えるプリントヘッドを説明するための図
【図９】第２の実施形態におけるＨＳ補正処理を説明するための図
【図１０】第２の実施形態における画像処理の流れを示すフローチャート
【図１１】画像処理部１３０４の内部構成を示す図
【図１２】ＨＳ色変換モジュール１１０３の内部構造を示す図
【図１３】画像処理装置の内部構成を示す図
【図１４】ＳＲＡＭ制御部１２０２が行うＨＳ処理のフローを示す図
【図１５】インクジェット記録装置の構成図
【図１６】ＣＳ補正処理を説明するための図
【発明を実施するための形態】
【００１０】
（第１の実施形態）
以下、図面を参照して、本発明の一実施形態を説明する。
【００１１】
図１５は、カラー画像を形成するインクジェット記録装置の構成例を示す図である。１５０１は、記録材としてのインクを吐出することにより、被記録媒体１５０３に画像を形成するプリントヘッドである。プリントヘッド１５０１は、それぞれシアン（Ｃ）、マゼンタ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）の色材を含むＣＭＹＫ各色のインクを吐出可能である。プリントヘッド１５０１は、熱を発生する発熱素子を備えたノズル（吐出口）からインクを吐出する、いわゆるサーマル方式のプリントヘッドである。ノズルが形成されたチップは、フォトリソグラフィー技術によって流路やノズルが形成された１枚のシリコンウエハから切り出されて製造されたものである。プリントヘッド１５０１には、最小単位であるノズルが被記録媒体の搬送方向と交差する方向に複数配置され、ノズル列が形成されている。このノズル列は、被記録媒体１５０３の横幅分の長さを満たしている。以下、ノズルが配列する方向をノズル列方向と呼ぶ。１５０２は、被記録媒体１５０３を、図中矢印で示す方向に搬送するラインフィードモータである。
【００１２】
本実施形態のインクジェット記録装置は、ＣＭＹＫの色毎にプリントヘッドを１つずつ備えている。そして、各ノズルからの一回のインク吐出により、記録画像においてノズル列方向の１列分の画像を形成する。そして、ラインフィードモータ１５０２による被記録媒体１５０３の搬送に同期して、インク吐出動作を繰り返すことで、一頁分の画像を記録する。本実施形態のインクジェット記録装置は、１ピクセル単位でインクの吐出もしくは非吐出を示す２値データによって画像を形成する２値プリンタである。入力された多値のＲＧＢ画像データを２値のＣＭＹＫデータに変換する処理をはじめとし、高品質の出力画像を得るための各種の画像処理を行う。
【００１３】
図１３は、本実施形態における画像処理装置の内部構成を示す。１３００は、本発明の画像処理装置の全体図である。１３０１は、外部から画像データを入力するＵＳＢやＬＡＮなどの外部Ｉ／Ｆである。１３０２は、本発明の画像処理装置全体を制御するＣＰＵである。１３０３は、原稿台ガラス上の画像を光学的に読み取るスキャナである。１３０４は、入力データに対し色変換から量子化までの処理を行う画像処理部である。後述するＨＳ処理もこの画像処理部において実行される。１３０５は、１３０４で出力された量子化データに基づいて、プリントヘッド１５０１の駆動を制御するプリントヘッド駆動部である。１３０７は、１３０１から１３０５の各モジュールからＤＲＡＭ１３０８への読み書きを制御するメモリコントローラである。１３０８は、１３０１から１３０５の各モジュールの処理途中のデータを一時的に格納するＤＲＡＭである。１３０９は、ＣＰＵ１３０２のプログラムや各種ルックアップテーブル（ＬＵＴ）のテーブルデータなどを格納しているＲＯＭである。
【００１４】
後述するＨＳ処理で使用するＬＵＴデータは、ＤＲＡＭ１３０８に格納される。ＬＵＴデータは、テストチャートを記録し、記録されたテストチャートをスキャナ１３０３で読み込み、読みこんだ結果と基準値との差分値に基づいて作成された補正値のデータである。そして、このＬＵＴデータはノズル単位（補正単位）毎に作成されるものであり、ノズル単位に含まれるノズル数は、１ノズルでもよく複数ノズルでもよい。そして、後述するように、本実施形態では非圧縮または圧縮のいずれかの形式でＤＲＡＭ１３０８に格納される。
【００１５】
図５は、本実施形態のＨＳ補正処理を説明するための図である。前述したように、プリントヘッドの製造上の誤差などの原因により、複数のノズル間で吐出量や吐出方向等の吐出特性にばらつきを含むことがある。このようなばらつきがあると、記録される画像に濃度むらが生じ易くなる。これに対し、ヘッドシェーディング（ＨＳ）補正技術が用いられている。ＨＳ補正処理は、ノズル個々の吐出特性に関する情報に応じて、一部のノズル毎に補正を行う処理である。具体的には、駆動パルスの制御によるドットサイズの調整や画像データの補正によるドット数の調整を行う。例えば、画像データを補正する方法では、最終的に記録されるインクドットの数を、補正単位毎に増加または減少させることで、記録画像における濃度をノズル単位でほぼ均一にすることが出来る。後述するように、本実施形態では、１ノズル群には連続する８ノズルが含まれる。そして、この８ノズルを１つの補正単位であるノズル単位として、各ノズル単位で記録可能な領域毎に、対応する画像データを補正する。また、ＨＳ補正は、被記録媒体上に付与するインクの量を調整するものであり、インク色毎に行われる。
【００１６】
本実施形態では、プリントヘッド１５０１をＮ個のノズル単位（ノズル群）に分割する。ノズル群１は、被記録媒体１５０３上の領域１を記録するノズルのグループである。同様に、ノズル群２は、ノズル列方向において領域１に隣接する領域２の記録に対応し、ノズル群Ｎは領域Ｎの記録に対応する。このときのＮは、２以上の整数とする。そして、各ノズル群に対応する領域毎に、記録すべき画像の画像データを補正することで、前述した吐出特性のばらつきに起因する濃度むらを抑制する。このノズル群毎の補正処理に、各ノズル群に対応した変換データとして、ＬＵＴデータを用いる。
【００１７】
次に、本発明の特徴的構成である、ノズル群毎のＬＵＴデータの圧縮について説明する。前述したようなフォトトリソグラフィー技術による半導体の製造プロセス上、シリコンウエハ上での位置が近いノズルは吐出特性が近い可能性が高い。従って、隣り合ったノズル同士は、前述したノズルの吐出特性のばらつきの程度が小さいことが多い。特性のばらつきが小さいということは、各ノズル群に対するＬＵＴデータのＨＳ補正値の差も小さいと言うことができる。そのため、特性のばらつきが小さいノズル群同士のＬＵＴデータのＨＳ補正値の差分を取ることで、従来のように補正値を絶対値で格納した場合よりもデータ量を小さくすることが出来る。以下に、ＬＵＴデータの差分をとって圧縮する方法の例を示す。
【００１８】
プリントヘッド１５０１には、１６ｂｉｔから成るＬＵＴデータ（ＨＳ補正値）がノズル群毎に設定される。本実施形態においては、１つのノズル群に含まれるノズル数が８ノズルであり、ノズル群１にはノズル番号０〜７の８ノズルが含まれ、ノズル群２にはノズル群１とは異なるノズル、ここではノズル番号８〜１５の８ノズルが含まれる。そして、「０」から「６５５３５」までの６５５３６階調の１６ｂｉｔの入力値に対して、同じく「０」から「６５５３５」までの６５５３６階調の出力値を補正値として出力する。例えば、ノズル群１のＨＳ補正値は「６５５３５、６５０００、６０３００…」であり、入力値「６５５３５」から「０」までの順に６５５３６個のＨＳ補正値が格納されている。同様に、ノズル群２のＨＳ補正値は「６５４３５、６４９００、６０１８０…」である。すなわち、ノズル群１及びノズル群２の両方を用いて「６５５３５」の階調値の画像を記録する場合、ＨＳ補正処理により、ノズル群１に対応する領域の出力値は「６５５３５」となり、ノズル群２に対応する領域の出力値は「６５４３５」となる。
【００１９】
そして、前述したように、隣り合ったノズル同士であれば、吐出特性のばらつきが小さいため、ＨＳ補正値が近しい値となる。このため、本実施形態では、ＨＳ補正値の差分値をとることにより、ＬＵＴデータ量を小さくして保持する。ノズル群１のＨＳ補正値とノズル群２のＨＳ補正値の、対応するそれぞれに対して差分をとると、「１００、−１００、１２０…」となる。すなわち、非圧縮ＨＳ補正値が１６ｂｉｔのデータであるのに対し、隣り合うノズル群のＬＵＴデータの差分値は８ｂｉｔ（−１２７〜１２８）以下のデータ量となる。同様に、ノズル群２とノズル群３の差分も「３５、７０、−５０…」であり、ノズル群３とノズル群４の差分も「１２０、−２０、１００…」であるため、いずれも８ｂｉｔ（−１２７〜１２８）以下のデータ量となる。
【００２０】
以上より、１６ｂｉｔの非圧縮ＨＳ補正値に対して、８ｂｉｔの差分値を格納することにより、データ量を低減することが可能となる。尚、ＬＵＴデータは、１６ｂｉｔのＨＳ補正値で構成された非圧縮ＬＵＴデータと、８ｂｉｔの差分圧縮されたＨＳ補正値で構成された圧縮ＬＵＴデータの２種類で表現が可能となる。
【００２１】
差分値が目標の圧縮サイズである閾値を超えてしまう場合、例えば本実施形態での８ｂｉｔ（−１２７〜１２８）を超えてしまう場合には、非圧縮ＨＳ補正値をＤＲＡＭ１３０８に格納すればよい。また、ＤＲＡＭ１３０８に格納されたＨＳ補正値が非圧縮ＨＳ補正値であるか差分圧縮されたＨＳ補正値であるかの情報をＤＲＡＭ１３０８内に格納しておく。そして、ＨＳ補正処理を行う際に、ＣＰＵがその情報に基づいて色変換モジュールへ展開する。
【００２２】
図１１は、画像処理部１３０４の内部構成を示す図である。１１００は、ＤＲＡＭ１３０８からＬＵＴ設定データおよび画像データを読みだすＤＭＡコントローラ（ＤＭＡＣ）０である。１１０１は、入力画像データのＲＧＢ値を、吐出ノズル径のばらつきに応じて設定された３Ｄ−ＬＵＴにより補正するＣＳ色変換モジュールである。ＣＳ色変換処理は、ＲＧＢ値を入力として、補正後のＲＧＢ値を出力とする３Ｄ−ＬＵＴによって行う。１１０２は、同じく３Ｄ−ＬＵＴを用いてＲＧＢ輝度値をインク色（たとえばＣＭＹＫ）濃度値に変換する色分解モジュールである。１１０３は、入力画像データのインク色濃度値を、吐出ノズル径のばらつきに応じて設定された１Ｄ−ＬＵＴにより補正するＨＳ色変換モジュールである。ＨＳ色変換処理は、量子化前のインク色の各色を入力として、各色の補正後の値を出力する１Ｄ−ＬＵＴによって行う。１１０４は、ＨＳ色変換後の多値インク色データを、誤差拡散処理などで量子化する量子化モジュールである。１１０５は、量子化処理後の出力画像データをＤＲＡＭへ書き出すＤＭＡコントローラ（ＤＭＡＣ）１である。１１００〜１１０５の各モジュールは共通バス１１０６で直列に接続されている。
【００２３】
画像処理部１３０４は、ＬＵＴ設定データと画像データで共通バス１１０６を共用している。ＤＭＡＣ０  １１００は、ＤＲＡＭからＬＵＴ設定モードフラグ、ＬＵＴ設定データ、レジスタ設定、画像処理開始フラグ、画像データ、を読み出し、共通バス１１０６を介して送ることにより、後段の各モジュールを制御する。１１００〜１１０５の各モジュールは、ＬＵＴ設定モードフラグを受け取ると、それ以降、送られてくるデータをレジスタデータ、ＬＵＴデータと認識し、処理を行う。画像処理開始フラグを受け取ると、それ以降送られてくるデータを画像データとして認識し、処理を行う。
【００２４】
図１２は、ＨＳ色変換モジュール１１０３の内部構造を示す図である。ＣＳ色変換モジュール１１０１、色分解モジュール１１０２も同様の内部構造である。ＨＳ色変換モジュール１１０３は、内部にＬＵＴ設定モードデータパス１２０６と画像処理モードデータパス１２０５を持ち、受信したフラグに応じてそれぞれのパスを切り替える。１２００は、ＬＵＴ設定モードフラグ、もしくは画像処理開始フラグを受信した際に、フラグによってデータパスをＬＵＴ設定モードデータパス１２０６か画像処理モードデータパス１２０５に切り替える切り替え器である。１２０１は、ＬＵＴ設定モード時に、受信したレジスタ設定値を内部に格納するレジスタ設定部である。ＨＳ補正値が非圧縮ＨＳ補正値か差分圧縮されたＨＳ補正値かを判断する設定もここに格納される。ＬＵＴ処理部１２０４やＳＲＡＭ制御部１２０２はこのレジスタの情報を元に処理を行う。
【００２５】
１２０２は、ＬＵＴ設定モード時に、受信したＬＵＴデータをＬＵＴ＿ＳＲＡＭ１２０３に書き込むよう制御するＳＲＡＭ制御部である。１２０３は、ＬＵＴ設定モード時にはＳＲＡＭ制御部１２０２から書き込まれたＬＵＴデータを格納し、画像処理モード時にはＬＵＴ処理部１２０４からリードアクセスされるＬＵＴ＿ＳＲＡＭ１２０３である。１２０４は、画像処理モード時に、入力画像データからアドレスを算出してＬＵＴ＿ＳＲＡＭ１２０３にアクセスすることでＬＵＴ処理を行うＬＵＴ処理部である。
【００２６】
図１は、本実施形態に係る、ＳＲＡＭ制御部１２０２の内部動作を示す図である。図２は、ＤＲＡＭ１３０８上のＬＵＴデータを読み込み、１６ｂｉｔずつ３２ｂｉｔのデータ構成にした図である。図３は、ＤＲＡＭ１３０８上のＬＵＴデータを読み込み、８ｂｉｔずつ３２ｂｉｔのデータ構成にした図である。図４は、ノズル群毎のＬＵＴデータが格納されたＤＲＡＭ１３０８、およびＨＳ処理で使用するＬＵＴを格納するＬＵＴ＿ＳＲＡＭ１２０３の内部を示す図である。
【００２７】
図１において、１０１は、ＤＲＡＭ１３０８から入力されたＬＵＴデータを制御するＬＵＴ制御部であり、１０２は、ＬＵＴ制御部１０１から入力されたＬＵＴデータを演算しＬＵＴ＿ＳＲＡＭ１２０３に書き込むデータ生成部である。１０３は、レジスタ設定部１２０１で、入力されたＨＳ補正値が非圧縮ＨＳ補正値か差分圧縮されたＨＳ補正値か判断してモード設定された値を元に、後処理を選択するセレクタである。
【００２８】
ＬＵＴ＿ＳＲＡＭ１２０３内の各アドレスには、以下のようにデータが設定される。図２に示すように、最初のノズル群１のＨＳ補正値、もしくは、差分圧縮されなかった非圧縮ＨＳ補正値はそれぞれ１６ｂｉｔずつの値である。一方、図３に示すように、差分圧縮されたＨＳ補正値はそれぞれ８ｂｉｔずつの値である。いずれの場合も、３２ｂｉｔのデータとして、共通バス１１０６を介してＳＲＡＭ制御部１２０２に入力される。
【００２９】
次に、本実施形態における制御上の特徴構成について説明する。ＳＲＡＭ制御部１２０２は、入力されたデータをＬＵＴ制御部１０１で受信する。ＬＵＴ制御部１０１は、入力されたデータが非圧縮ＨＳ補正値か、差分圧縮されたＨＳ補正値かをレジスタ設定部１２０１に設定された値で処理を切り替える。ここでは、３２ｂｉｔのデータが入力される。
【００３０】
まず、入力されたデータが、非圧縮ＨＳ補正値である場合、図２に示すように、１６ｂｉｔずつのデータとなる。すなわち、入力された３２ｂｉｔのデータのうち、下位１６ｂｉｔがアドレス０に設定されるデータ０の値であり、上位１６ｂｉｔがアドレス１に設定されるデータ１の値である。データが入力されると、ＬＵＴ制御部１０１は、まず基準となるアドレス値０とデータ０の値をデータ生成部１０２に出力する。データ生成部１０２における処理が終了すると、次に、アドレス値１とデータ１の値をデータ生成部１０２に出力する。次に受信する３２ｂｉｔデータは、下位１６ｂｉｔがアドレス２に設定されるデータ２の値、上位１６ｂｉｔがアドレス３に設定されるデータ３の値となるので、アドレス値２とデータ２の値を出力する。次に、アドレス値３とデータ３の値を出力する。以降、ＬＵＴデータを受信するごとに、所定数だけ、受信データを上記の構成で分割して、データ生成部１０２に出力し、且つ、単調増加でデータ毎のアドレスをＬＵＴ＿ＳＲＡＭ１２０３に出力する。
【００３１】
一方、入力されたデータが、差分圧縮されたＨＳ補正値である場合、図３に示すように、８ｂｉｔずつのデータとなる。すなわち、入力された３２ｂｉｔのデータのうち、下位８ｂｉｔからデータ０の値、データ１の値、データ２の値、データ３の値である。データが入力されると、ＬＵＴ制御部１０１は、アドレス値０とデータ０の値をデータ生成部１０２に出力する。そして、データ生成部１０２における処理が終了すると、次にアドレス値１とデータ１の値をデータ生成部１０２に出力する。以降、ＬＵＴデータを受信するごとに、所定数だけ、受信データを上記の構成で分割して、データ生成部１０２に出力、単調増加でデータ毎のアドレスをＬＵＴ＿ＳＲＡＭ１２０３に出力する。
【００３２】
データ生成部１０２は、ＬＵＴ制御部１０１から入力されたデータが非圧縮ＨＳ補正値か、差分圧縮されたＨＳ補正値かを判別するための値を、レジスタ設定部１２０１から受け取り、それぞれの処理を行う。
【００３３】
入力されたデータが、非圧縮ＨＳ補正値である場合、ＬＵＴ＿ＳＲＡＭ１２０３にＬＵＴ制御部１０１から送られたデータ０の値が出力される。すると、ＬＵＴ＿ＳＲＡＭ１２０３のアドレス０にデータ０の値が書き込まれる。次に、データ１の値が出力され、ＬＵＴ＿ＳＲＡＭ１２０３のアドレス１にデータ１の値が書き込まれる。以降、ＬＵＴデータを受信するごとに、所定数だけ、上記の処理を行い、ＬＵＴ＿ＳＲＡＭ１２０３に書き込む処理を行う。
【００３４】
ノズル群ｎのＬＵＴデータがすべて更新されると、ノズル群ｎで出力される位置に相当する画像データを画像処理部１３０４に入力する。画像処理部１３０４は、更新されたＬＵＴデータを用いてＨＳ処理を行う。その後、量子化処理までの処理が行われると、結果がＤＲＡＭ１３０８へ出力される。
【００３５】
一方、入力されたデータが、差分圧縮されたＨＳ補正値、すなわち差分データである場合、入力されたデータの値をＬＵＴ＿ＳＲＡＭ１２０３内の各データの値に加える処理が各アドレスについて順に行われ、加算後の値が再度書き込まれ、各データが更新される。ノズル群ｎ＋１のデータ０の値が入力されると、データ生成部１０２は、ノズル群のＬＵＴデータが格納されているＬＵＴ＿ＳＲＡＭ１２０３からノズル群ｎのアドレス０のデータを読み出す。そして、ノズル群ｎ＋１のデータ０の入力値を、読み出されたノズル群ｎのアドレス０のデータに加算する加算処理を行う。算出結果がノズル群ｎ＋１のデータ０の値としてＬＵＴ＿ＳＲＡＭ１２０３に出力され、加算後のデータ０の値がＬＵＴ＿ＳＲＡＭ１２０３のアドレス０に書き込まれる。このように、ノズル群ｎ＋１については、ＤＲＡＭにはノズル群ｎのＬＵＴデータとの差分値しか格納されていないが、加算処理を行うことで、実際に補正処理を実行する際には絶対値で扱うことができる。
【００３６】
同様に、ノズル群ｎ＋１のデータ１の値が入力されると、データ生成部１０２は、ノズル群ｎのＬＵＴデータが格納されているＬＵＴ＿ＳＲＡＭ１２０３からノズル群ｎのアドレス１のデータを読み出す。そして、ノズル群ｎ＋１のデータ１の入力値を、ノズル群ｎのアドレス１のデータに加算する加算処理を行う。算出結果がノズル群ｎ＋１のデータ１の値としてＬＵＴ＿ＳＲＡＭ１２０３に出力され、加算後のデータ１の値がＬＵＴ＿ＳＲＡＭ１２０３のアドレス１に書き込まれる。
【００３７】
以降、ＬＵＴデータを受信するごとに、所定数だけ、上記処理を行い、ＬＵＴ＿ＳＲＡＭ１２０３のアドレス順に読み出す処理と書き込む処理を行う。
【００３８】
ノズル群ｎ＋２のデータが入力されると、ＬＵＴ＿ＳＲＡＭ１２０３内に格納されたノズル群ｎ＋１のデータが読み出されて加算処理が行われる。ノズル群ｎ＋３のデータが入力されると、ＬＵＴ＿ＳＲＡＭ１２０３内に格納されたノズル群ｎ＋２のデータが読み出されて加算処理が行われる。
【００３９】
以降、ノズル群分の画像データを処理するごとに、ノズル群ＮのＬＵＴデータがＤＲＡＭ１３０８から読み出され、その各データの値が、ノズル群Ｎ−１のＬＵＴ＿ＳＲＡＭ１２０３の各データの値に加算される。その結果を、ノズル群ＮのＬＵＴ値としてＬＵＴ＿ＳＲＡＭ１２０３の各データが更新される。ＬＵＴ＿ＳＲＡＭ１２０３全データが更新されたあと、ノズル群Ｎで出力される画像データが、画像処理部１３０４で処理される。
【００４０】
図４は、ＤＲＡＭ１３０８内部とＬＵＴ＿ＳＲＡＭ１２０３内部の回路構成によって生成されるＬＵＴデータのイメージを説明するための図である。図４（ａ）は、ＣＰＵ１３０２によって、ＤＲＡＭ１３０８にノズル群Ｎ用のＬＵＴデータが書き込まれた内部を示す図である。アドレスにｏｆｆｓｅｔを加算することで、全ノズル群のＬＵＴデータが書き込まれている。図４（ｂ）は、前述したノズル群Ｎ用のＬＵＴデータのうち、ノズル群１とノズル群２のＬＵＴデータを抜粋した図である。Ｏｆｆｓｅｔ１＋各アドレスにノズル群１用のＬＵＴデータがデータ０、データ１…と３２ｂｉｔデータが格納されている。ノズル群２用のＬＵＴデータはノズル群１のデータとの差分であるため、８ｂｉｔのデータが格納されている。図４（ｃ）は、ＨＳ処理を行う際の、ＳＲＡＭ制御部１２０２によって入力されたＬＵＴ＿ＳＲＡＭ１２０３内部の図である。ＳＲＡＭ制御部１２０２は、各アドレスにＤＲＡＭ１３０８から受け取ったデータを格納する。ＳＲＡＭ制御部１２０２がＬＵＴ＿ＳＲＡＭ１２０３にＬＵＴデータを格納後、色変換モジュール１００１、１００２、１００３は、ＬＵＴデータを用いてノズル群１で記録すべき画像、すなわち領域１に対応する画像データに対してＨＳ処理を行う。
【００４１】
ノズル群１のＬＵＴ設定および画像処理が終わると、次に、ノズル群２のＬＵＴ設定が行われる。ＤＲＡＭ１３０８内部には、すでにノズル群２用のＬＵＴデータが格納されている。ノズル群２に対応するＬＵＴデータは、ノズル群１のＬＵＴデータとの差分値が設定された閾値より小さければ差分圧縮値として扱うため、８ｂｉｔ構成でＤＲＡＭ１３０８に格納されている。差分値が閾値より大きければ非圧縮として扱うため、１６ｂｉｔ構成で格納されている。図４に示す例では、差分値が圧縮されたＬＵＴデータが格納されている。
【００４２】
ノズル群２に対応するデータが、ＳＲＡＭ制御部１２０２によってＬＵＴ＿ＳＲＡＭ１２０３へ入力される。その際、差分圧縮されたＬＵＴデータを元のＬＵＴデータに戻す必要がある。ＳＲＡＭ制御部１２０２は、ＤＲＡＭ１３０８から読み出した８ｂｉｔのＬＵＴデータを、ノズル群１の処理でＬＵＴ＿ＳＲＡＭ１２０３に格納されたデータ１６ｂｉｔに加算し、加算結果を１６ｂｉｔのデータとして書き戻すことで上書きする。この処理は、ＬＵＴ＿ＳＲＡＭ１２０３の先頭のアドレスから行う。そして、ノズル群２用の全てのＬＵＴデータの加算処理を行い、格納した後、色変換モジュールは格納された値を用いて、ノズル群２を用いて記録すべき画像、すなわち領域２に対応する画像データに対してＨＳ処理を行う。
【００４３】
図６は、本実施形態において、ＣＰＵ１３０２がＤＭＡＣ０  １１００を介して行うＨＳを含む画像処理フローを示している。ステップ６００において、次に画像処理を行うデータが、最初のノズル群１のデータであるかノズル群２以降のデータであるかを判断する。ノズル群１のデータでなかった場合、ステップ６０１に進み、次に画像処理を行うデータに対応するＬＵＴデータが、差分圧縮されたＬＵＴデータか否かを判定する。ＬＵＴデータが差分圧縮されたデータであると判断された場合、差分圧縮モードとなるため、ステップ６０２に進む。ステップ６０２において、ＣＰＵ１３０２は圧縮モードであることを確認し、ＬＵＴ制御部１０１内のレジスタを「差分圧縮モード」に設定する。ステップ６０１において、ＬＵＴデータが圧縮されていないデータであると判断された場合、圧縮モードとなるため、ステップ６０３に進む。ステップ６０３において、ＣＰＵ１３０２は非圧縮モードであることを確認し、ＬＵＴ制御部１０１内のレジスタを「非圧縮モード」に設定する。
【００４４】
ステップ６０４において、各モジュールにＬＵＴ設定モードのコマンドが送られる。以降、各モジュールに送られてくるデータはＬＵＴデータとして認識され、処理が行われる。ステップ６０５において、各モジュールにＬＵＴデータが送られる。送られたＬＵＴデータに対して、ＳＲＡＭ制御部１２０２が制御を行い、ＬＵＴ＿ＳＲＡＭ１２０３に格納される。ステップ６０６において、各モジュールに画像処理開始コマンドが送られる。以降、各モジュールに送られてくるデータは画像データとして認識され、処理が行われる。ステップ６０７において、画像データが各モジュールに送られる。送られた画像を元に、各モジュールにおいて画像処理が行われる。本実施形態においては、一度の画像処理で８ノズル分（１ｂａｎｄ分）の処理が行われる。ステップ６０８において、１ページ分の画像処理が終了したかどうかを判断する。１ページ分処理が終わっていない場合は再びステップ６００に戻り、再び現在のデータが最初のノズル群（ノズル群１）のデータかであるか否かを判断し、１ページ分の処理が終わるまで前述のフローを繰り返す。
【００４５】
図７は、本実施形態において、ＳＲＡＭ制御部１２０２が行うＨＳ処理のフローチャートである。ステップ７００において、ＳＲＡＭ制御部１２０２は、ＤＭＡＣ０  １１００から入力されたＬＵＴデータ３２ｂｉｔを受信する。ステップ７０１において、ＣＰＵで設定されたモード選択用のレジスタを確認し、入力されたＬＵＴデータが非圧縮データか圧縮データかを判断する。非圧縮データであると判断された場合、ステップ７０２に進む。ステップ７０２において、受信した３２ｂｉｔのデータを１６ｂｉｔ分割し、前述したようにデータ０から順にＬＵＴ＿ＳＲＡＭ１２０３に格納する。次に、ステップ７０３において、３２ｂｉｔ分のデータを書き込んだかどうかを判断する。書き込んでいなければ、先ほど書き込みをしたアドレスの次のアドレスにデータを書き込む。ステップ７０１において圧縮データであると判断された場合は、ステップ７０４に進み、ＬＵＴ＿ＳＲＡＭ１２０３にすでに格納されている前のノズルのデータを読み出す。読み出すアドレスは、ＨＳで使用する領域の先頭アドレスから読み出す。次に、ステップ７０５において、読み出したデータと入力された８ｂｉｔのデータを加算し、ステップ７０６において、加算結果の値をＬＵＴ＿ＳＲＡＭ１２０３の読み出したアドレスに上書きし、更新する。ステップ７０７において、３２ｂｉｔ分のデータを書き込んだか判断し、書き込んでいなければ、先ほど書き込みをしたアドレスの次のアドレスに対して、ステップ７０４からのフローに戻り、処理を行う。ステップ７０８において、ノズル１列分のデータをＬＵＴ＿ＳＲＡＭ１２０３に格納したか判断し、書き込んでいれば終了し、書き込んでいなければステップ７００に戻り、再び処理を繰り返す。
【００４６】
以上の構成により、各ノズル群のＨＳ処理に用いるＨＳ補正値を、データ量の小さい差分値としてＤＲＡＭ１３０８に格納する。これにより、絶対値で格納する場合に比べて、ＬＵＴデータのデータ量を低減できるだけでなく、ＬＵＴデータを格納するＤＲＡＭ１３０８の容量を低減することも可能となる。本実施形態では、絶対値が１６ｂｉｔデータであるのに対し、差分値が８ｂｉｔデータであるため、およそ半分のデータ量とすることができる。また、ＨＳ処理を行う色変換モジュール内のＳＲＡＭを更新する際に、ＤＭＡＣ０  １１００を使用してＤＲＡＭ１３０８から読み込むＨＳ補正値も、絶対値を扱う場合に比べて小さいデータ量で転送することができる。このため、ＤＲＡＭ帯域の低減や転送速度の向上や転送時間の短縮にもつながる。また、ＳＲＡＭ上にある前のノズル群のＨＳ補正値を置き換えて更新する際のデータ処理を効率よく行うことができる。
【００４７】
尚、本実施形態では、１つ前に処理されるノズル群に対する差分値を差分データとして記憶する形態について説明したが、差分値のとり方としては上記方法に限るものではない。例えば、隣接するノズル群の補正値に対する差分ではなく、予め定められた基準となるノズル群に対する差分値を差分データとして記憶し、ＨＳ補正処理を実行する際に基準値と差分値を加算する方法であってもよい。すなわち、差分値が所定値よりもちいさければ、絶対値として保持するよりもデータ量を小さくすることができるため、差分のとり方は隣接するノズル群同士に限らない。ＬＵＴデータを作成する際に、基準ノズル群の補正値に対する差分値を順番に格納していき、あるノズル群の補正値との差分値が所定量よりも大きくなったときに、そのノズル群については差分値ではなく絶対値を保持すればよい。そして、そのノズル群を次の基準ノズル群として、そこからまた所定値を超えるまで順番に差分値を格納していけばよい。
【００４８】
また、前述の例では、ノズル群１について絶対値を記憶し、ノズル群２以降については差分値を記憶したが、絶対値を記憶する数は１つでなくてもよい。少なくとも１つのノズル群について絶対値を記憶しておけば、本発明を適用可能である。また、少なくとも１つのノズル群について差分値を記憶することにより、ＬＵＴデータのデータ量を低減することが可能となる。
【００４９】
また、本実施形態では、図１５に示すような、固定されたプリントヘッドに対し、ノズル列方向と交差する方向に被記録媒体を搬送する、フルマルチ型のインクジェット記録装置を例に説明した。本発明はこれに限るものではなく、被記録媒体の搬送方向にノズルが並ぶプリントヘッドを、搬送方向と交差する方向に往復走査させることにより被記録媒体に画像を記録する、シリアル型のインクジェット記録装置においても適用可能である。
【００５０】
（第２の実施形態）
第１の実施形態では、各領域について単色の濃度補正を行うＨＳ補正について説明したが、領域毎に複数色の色補正を行うＣＳ補正についても、本発明は適用可能である。以下、ＣＳ補正について説明する。
【００５１】
従来の単色の濃度補正によるＨＳ処理を行ったとしても、２種類以上のインクを重ねて多次色を再現した場合には、標準とは異なる吐出量のインク滴で記録した画像の発色が、本来記録されるべき色と異なる場合がある。例えば、標準量の吐出量のシアンインクを吐出するノズルと、標準よりも多い吐出量のマゼンタインクを吐出するノズルを用いて、それぞれ同数のインク滴数を付与することによりブルーの画像を記録する場合を考える。標準よりも大きい吐出量のマゼンタインク滴で被記録媒体上に形成されるドットは、標準量のシアンインク滴で形成されるドットよりも大きい。このようなプリントヘッドに対してＨＳ補正を行うと、マゼンタは標準よりも少ないドット数、すなわちシアンよりも少ないドット数が付与される。この結果、ブルーの画像領域では、標準の大きさのシアンの単独ドットと、シアンよりも大きなマゼンタドットの中にシアンドットが記録される重複ドットが混在する。そして、このような領域の発色は、標準の大きさと標準の数のシアンドットとマゼンタドットによって記録されるブルー画像の発色とは異なった色味となる。何故なら、両者の画像では、被記録媒体上でシアン単色が占有する割合と、マゼンタ単色が占有する割合と、シアンとマゼンタの重複によるブルー色が占有する割合、が異なるからである。このような各色が占有する面積の割合の変動は、吐出量のばらつきのみでなく、吐出方向のばらつきによっても招致される。すなわち、従来のＨＳ補正によって、シアン単色画像或いはマゼンタ単色画像の濃度むらは解決されたとしても、これらを重ね合わせて表現されるブルー画像においては、吐出特性のばらつきに応じて色差色ずれが招致されてしまう。そして、吐出特性の異なるノズルで記録された複数の領域間において色ずれの程度が異なることから、同じ発色であるはずの各領域で異なる色味が知覚され、色むらとして認識されてしまう。このような多次色画像における領域間の色むらに対しては、単色での濃度補正で解消することは難しく、色空間上における微細な補正を行う必要がある。この色空間上での補正がカラーシェーディング（ＣＳ補正）である。具体的には、多次色のパッチを実際に記録して測色した結果と目標色との差分を算出し、ＣＳ補正テーブルを生成する。補正を行うノズル単位は、ＨＳ補正処理と同様に、１ノズル毎でもよく、複数ノズルを含むノズル群毎でもよい。本実施形態では、図１１に示すＣＳ色変換モジュール１１０１においてＣＳ補正処理を行う。
【００５２】
図１６は、ＣＳ補正を説明するための概念図である。ここでは、簡単のため、シアンヘッドとマゼンタヘッドの２色のインクに対応したプリントヘッド示している。パッチを記録、測定することにより、シアンインクのノズル群Ｃ１及びマゼンタインクのノズル群Ｍ１を用いて記録可能な記録媒体上の領域である領域１に対応するＣＳ補正テーブルが生成される。領域２、領域３についても同様に、被記録媒体上の領域毎に生成されたＣＳ補正テーブルが、ＤＲＡＭ１３０８に格納される。
【００５３】
前述のＨＳ補正テーブルが１ＤＬＵＴを用いた１次元補正だったのに対し、本実施形態のＣＳ補正テーブルは、３ＤＬＵＴを用いた多次元補正であり、ＲＧＢ空間上で補正を行う。すなわち、Ｒ、Ｇ、Ｂの入力値に対してＲ、Ｇ、Ｂの出力値が対応する３ＤのＬＵＴである。入力値Ｒ、Ｇ、Ｂそれぞれは１６ｂｉｔのデータであり、出力値であるＣＳ補正値も、Ｒ、Ｇ、Ｂのそれぞれについて１６ｂｉｔのデータとなる。そして前述の実施形態におけるＨＳ補正と同様に差分値を算出して格納することによって、ＲＧＢそれぞれ８ｂｉｔの差分データとなる。図１６に示すＣＳ補正テーブルは、ＲＧＢデータのうちＲ値を補正するためのテーブルであり、ＨＳ補正テーブルと同様にＬＵＴ＿ＳＲＡＭ１２０３に格納される。この他に、不図示のＧ値を補正するためのテーブルとＢ値を補正するためのテーブルがＬＵＴ＿ＳＲＡＭ１２０３に格納されており、いずれも所定のノズル群に対する絶対値のデータと、少なくとも１つのノズル群に対する差分値のデータを含む。そして、ＨＳ補正時と同様に、絶対値と差分値を加算することにより、ＲＧＢそれぞれについて補正を行う。尚、ＣＳ補正処理はＲＧＢ色空間での補正のみに限るものではない。例えば、入力値がＲＧＢ値で出力値がインク色に対応した値、例えばＣＭＹＫ値であってもよい。また、入力値及び出力値の両方がインク色に対応した値であってもよい。
【００５４】
このように、ノズルの吐出特性のばらつきに起因する複数色の重ね合わせ画像における色むらは、単色での濃度補正だけで解消できない場合があり、色空間上での多次色補正を適用する必要がある。このときも、ＨＳ補正のＬＵＴデータと同様に、少なくとも１つのノズル群については絶対値を用い、他のノズル群については差分値を記憶する方法を用いることができる。
【００５５】
（第３の実施形態）
次に、第３の実施形態について説明する。
【００５６】
図８は、同一色が複数チップで構成されているプリントヘッドを示す図である。図中Ｘ方向が、複数のノズルが並ぶノズル列方向であり、図中Ｙ方向が、被記録媒体の搬送方向である。同一色が複数チップで構成されたプリントヘッドの場合、チップ同士の境目ではノズル特性の差が大きくなってしまう。このため、チップ間の境目に位置するノズル群のＬＵＴデータの差分をとっても値が大きくなるため、この差分値に合わせてデータの圧縮を行うと、圧縮後のデータが不必要に大きくなってしまう。この課題に対し、本実施形態では、ＨＳ補正値の差分圧縮をチップ毎に行い、境目にあたるチップの最初のノズル群１では圧縮を行わず、非圧縮のままＤＲＡＭに格納する。
【００５７】
図９は、本実施形態におけるプリントヘッドとＬＵＴデータの概念図である。プリントヘッド１５０１は、前述した図５と同様のノズル群を持ったプリントヘッドであり、複数のチップにより構成されている。チップ同士の境目ではノズル特性が異なってしまうため、他のノズル群間の差分値が８ｂｉｔ以下になっているのに対して、境目の差分値が８ｂｉｔよりも大きくなってしまう場合がある。本図の例では、チップ１のノズル群Ｎとチップ２のノズル群１とのＨＳ補正値の差分を取ると、「９８４５、９８５０、９７００…」となっており、８ｂｉｔよりも大きなデータ量となってしまう。
【００５８】
これに対し、このように同一色が複数のチップで構成されているプリントヘッドの場合は、チップ２の最初のノズル群１のＨＳ補正値については、差分値ではなく絶対値で記憶する。すなわち、ノズル群１のＨＳ補正値は、図２のように１６ｂｉｔずつ２つ分のデータ構成でＤＲＡＭに格納し、ノズル群２以降のノズル群のＨＳ補正値は、図３のように差分圧縮した８ｂｉｔずつ４つ分のデータ構成でＤＲＡＭに格納する。
【００５９】
尚、第ｎノズル群と第ｎ＋１ノズル群が同一チップ内に位置していたとしても、差分値のデータ量が所定量よりも大きい場合には、差分値ではなく元のＬＵＴデータ、すなわち絶対値で格納してもよい。
【００６０】
図１０は、ＣＰＵ１３０２がＤＭＡＣ０  １１００を介して行う画像処理フローを示す図である。尚、ＳＲＡＭ制御部１２０２が行うＨＳ処理のフローについては、第１実施形態の図７と同様であるため、ここでは省略する。
【００６１】
ステップ１０００において、次に画像処理を行うデータが、チップ１の最初のノズル群１のデータかノズル群２以降のデータか判断する。チップ１のノズル群１のデータでなかった場合、ステップ１００１に進み、次に画像処理を行うデータに対応するＬＵＴデータがチップとチップの境目のデータか判断する。境目のデータとは、チップ２の最初のノズル群１を指す。ＬＵＴデータが差分圧縮されたデータであると判断された場合、ステップ１００２に進み、ＣＰＵ１３０２は、ＬＵＴ制御部１０１内のレジスタを「差分圧縮モード」に設定する。ステップ１０００においてＬＵＴデータが圧縮されていないデータであると判断された場合、ステップ１００３に進み、ＣＰＵ１３０２は、ＬＵＴ制御部１０１内のレジスタを「非圧縮モード」に設定する。次に、ステップ１００４において、各モジュールにＬＵＴ設定モードのコマンドが送られる。以降、各モジュールに送られてくるデータはＬＵＴデータとして認識され、処理が行われる。
【００６２】
ステップ１００５において、各モジュールにＬＵＴデータが送られる。送られたＬＵＴデータに対して、ＳＲＡＭ制御部１２０２が制御を行い、ＬＵＴ＿ＳＲＡＭ１２０３に格納する。次に、ステップ１００６において、各モジュールに画像処理開始コマンドが送られる。以降、各モジュールに送られてくるデータは画像データとして認識され、処理が行われる。ステップ１００７において、画像データが各モジュールに送られる。送られた画像を元に、各モジュールにおいて画像処理が行われる。本実施形態においては、一度の画像処理で８ノズル分（１ｂａｎｄ分）処理が行われる。ステップ１００８において、１ページ分の画像処理が終了したかどうかを判断する。１ページ分処理が終わっていない場合は再びステップ９００に戻り、再び現在のデータがチップ１の最初のノズル群１のデータか最初のノズル群２以降のデータかの判断をし、以降フローを繰り返す。
【００６３】
本実施形態によれば、同一色が複数チップ構成の場合でも不必要なデータ転送を行うことなく、適切に差分データを生成することで、メモリに格納するデータ量及び転送データ量を低減することが可能となる。また、チップの中が同一色で構成されていても同様の処理を行うことが可能である。
【００６４】
（第４の実施形態）
次に、第４の実施形態について説明する。入力されたＬＵＴデータが前の処理で入力されたＬＵＴデータと同様であった場合は、ＳＲＡＭ制御部はＤＲＡＭからＬＵＴデータを読み出さず、またＬＵＴ＿ＳＲＡＭ１２０３にも書き込まない制御を行う。
【００６５】
図１４は、本実施形態におけるＳＲＡＭ制御部１２０２が行うＨＳ処理のフローを示す図である。尚、画像処理部１３０４が行う画像処理フローついては図６と同様であるため省略する。
【００６６】
ステップ１４００において、入力されたＬＵＴデータが前の処理で入力されたＬＵＴデータと差分値が０かレジスタで判断する。０である場合には、本制御を終了する。０ではない場合には、ステップ１４０１に進み、ＳＲＡＭ制御部１２０２は、ＤＭＡＣ０  １１００から入力されたＬＵＴデータ３２ｂｉｔを受信する。次に、ステップ１４０２において、ＣＰＵにより設定されたモード選択用のレジスタを確認し、入力されたＬＵＴデータが非圧縮データか圧縮データかを判断する。非圧縮モードであると判断された場合、ステップ１４０３に進み、受信した３２ｂｉｔのデータを１６ｂｉｔ分割し、前述したようにデータ０から順にＬＵＴ＿ＳＲＡＭ１２０３に格納する。ステップ１４０４において、３２ｂｉｔ分のデータを書き込んだか判断し、書き込んでいなければ、先ほど書き込みをしたアドレスの次のアドレスへ書き込む。ステップ１４０２において圧縮モードであると判断された場合、ステップ１４０５に進み、ＬＵＴ＿ＳＲＡＭ１２０３にすでに格納されている前のノズルのデータを読み出す。読み出すアドレスは、ＨＳで使用する領域の先頭アドレスから読み出す。次に、ステップ１４０６において、読み出したデータと入力された８ｂｉｔのデータを加算し、ステップ１４０７において、加算した値をＬＵＴ＿ＳＲＡＭ１２０３の読み出したアドレスに上書きする。ステップ１４０８において、３２ｂｉｔ分のデータを書き込んだかどうかを判断する。書き込んでいなければ、先ほど書き込みをしたアドレスの次のアドレスに対して、ステップ１４０５のフローに戻る。３２ｂｉｔのデータを書き込んだ場合は、ステップ１４０９に進み、ノズル１列分のデータをＬＵＴ＿ＳＲＡＭ１２０３に格納したかどうかを判断する。書き込んでいれば制御を終了し、書き込んでいなければ、ステップ１４０１に戻り、同様の処理を繰り返す。
【００６７】
以上の構成により、入力されたＬＵＴデータが前処理で使用されたＬＵＴデータと同様であった場合、ＬＵＴデータを読み出さず、書き込みも行わない。これにより、不必要なデータ転送を行うことなく、スループットを向上させることが可能となる。
【符号の説明】
【００６８】
１２０２  ＳＲＡＭ制御部
１２０３  ＬＵＴ＿ＳＲＡＭ
１３０８  ＤＲＡＭ
１５０１  プリントヘッド
１５０３  被記録媒体
【図１】
2018056819.tif 000003
【図２】
2018056819.tif 000004
【図３】
2018056819.tif 000005
【図４】
2018056819.tif 000006
【図５】
2018056819.tif 000007
【図６】
2018056819.tif 000008
【図７】
2018056819.tif 000009
【図８】
2018056819.tif 000010
【図９】
2018056819.tif 000011
【図１０】
2018056819.tif 000012
【図１１】
2018056819.tif 000013
【図１２】
2018056819.tif 000014
【図１３】
2018056819.tif 000015
【図１４】
2018056819.tif 000016
【図１５】
2018056819.tif 000017
【図１６】
2018056819.tif 000018