(57)【要約】      （修正有）【課題】記録素子毎の吐出ドット数の偏りを抑制する。【解決手段】複数の記録素子が第１の方向に配列された記録ヘッドを有し、第１の方向に対して垂直な第２の方向に搬送される記録媒体に、画像を形成する画像データを生成する画像処理装置であって、多値の入力画像データを取得する取得部と、入力画像データに対し、記録素子毎の特性に応じた濃度ムラ補正処理を実行する補正処理部と、ディザマトリクスを用いて補正処理部により濃度ムラ補正処理を実行された入力画像データを、ドットの有無を示すハーフトーン画像データに変換する変換部を有する。ディザマトリクスは分散型ディザマトリクスであって、入力画像データがとり得る階調のうち濃度ムラ補正処理の対象となる階調について、均一階調の入力画像データから２値のハーフトーン画像データに変換した際の、第１の方向の各位置における第２の方向の所定の範囲に含まれるドット数が同じになる特性を有する。【選択図】図１
2020015303.tif 000002
【特許請求の範囲】
【請求項１】
複数の記録素子が第１の方向に配列された記録ヘッドを有し、前記第１の方向に対して垂直な第２の方向に沿って相対的に搬送される記録媒体に向けて前記記録ヘッドが有する記録素子からインクを吐出させるにより前記記録媒体上に画像を形成する画像形成装置のための画像データを生成する画像処理装置であって、
多値の入力画像データを取得する取得手段と、
前記入力画像データに対して、前記記録素子毎の特性に応じた濃度ムラ補正処理を実行する補正処理手段と、
ディザマトリクスを用いて、前記補正処理手段により濃度ムラ補正処理を実行された前記入力画像データを、ドットの有無を示すハーフトーン画像データに変換する変換手段を有し、
前記ディザマトリクスは、
分散型ディザマトリクスであって、
前記入力画像データがとり得る階調のうち前記濃度ムラ補正処理の対象となる階調について、均一階調の入力画像データから２値のハーフトーン画像データに変換した際の、前記第１の方向の各位置における前記第２の方向の所定の範囲に含まれるドット数が同じになる特性を有する
ことを特徴とする画像処理装置。
【請求項２】
前記所定の範囲は、前記ハーフトーン画像データにおいて疑似的に再現可能な階調数の整数倍であることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記所定の範囲は、前記ディザマトリクスに存在する閾値として用いられる値の数の整数倍である請求項１に記載の画像処理装置。
【請求項４】
前記濃度ムラ補正処理の対象は、全階調であることを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記ディザマトリクスは、前記第２の方向に対応するＳｘ行、前記第１の方向に対応するＳｙ列（Ｓｘ，Ｓｙは自然数）のサイズであることを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記所定の範囲は、前記第２の方向の前記Ｓｘの整数倍のであることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記ディザマトリクスは、
均一階調の入力画像データから２値のドットパターンに変換した際の、前記第１の方向の各位置の、前記第２の方向の前記Ｓｘの整数倍の範囲に含まれるドット数の差が、全ての階調において１以下とする特性を有する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項８】
記録素子毎の濃度補正パラメータを保持する保持手段をさらに有し、
前記補正処理手段は、前記保持した濃度補正パラメータに基づいて、入力画像データの補正を行うことを特徴とする請求項１に記載の画像処理装置。
【請求項９】
前記第２方向にＳｘ画素以上の幅を持つ均一階調のチャート画像に基づいてハーフトーン画像を生成し、記録媒体上に画像を記録する記録手段と、
前記記録媒体上に形成した画像の濃度測定データを取得する取得手段と、
を備えることを特徴とする請求項１に記載の画像処理装置。
【請求項１０】
前記Ｓｘ、前記Ｓｙは、共に２５６以上であることを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項１１】
複数の記録素子が第１の方向に配列された記録ヘッドを有し、前記第１の方向に対して垂直な第２の方向に沿って相対的に搬送される記録媒体に向けて前記記録ヘッドが有する記録素子からインクを吐出させるにより前記記録媒体上に画像を形成する画像形成装置のための画像データを生成する画像処理装置の制御方法であって、
取得手段が、多値の入力画像データを取得する取得工程と、
補正処理手段が、前記入力画像データに対して、前記記録素子毎の特性に応じた濃度ムラ補正処理を実行する補正処理工程と、
変換手段が、ディザマトリクスを用いて、前記補正処理工程により濃度ムラ補正処理を実行された前記入力画像データを、ドットの有無を示すハーフトーン画像データに変換する変換工程を有し、
前記ディザマトリクスは、
分散型ディザマトリクスであって、
前記入力画像データがとり得る階調のうち前記濃度ムラ補正処理の対象となる階調について、均一階調の入力画像データから２値のハーフトーン画像データに変換した際の、前記第１の方向の各位置における前記第２の方向の所定の範囲に含まれるドット数が同じになる特性を有する
ことを特徴とする画像処理装置の制御方法。
【請求項１２】
多値の画像データを、画像形成装置が有する記録ヘッドの複数の記録素子からインクの吐出する／しないを決定するための２値のドットパターンに変換する際に利用するディザマトリクスを生成する画像処理装置であって、
ここで、前記画像形成装置の前記記録ヘッドが有する前記複数の記録素子の並び方向を第１の方向、当該第１の方向に対して垂直な方向であって、前記記録ヘッドに対して相対的に記録媒体の搬送する方向を第２の方向と定義したとき、前記ディザマトリクスは、前記第２の方向に対応するＳｘ行、前記第１の方向に対応するＳｙ列（Ｓｘ，Ｓｙは自然数）のサイズを有する、
前記画像処理装置は、
所定階調ｇのドットパターンｄ（ｇ）における局所的な濃度変動を評価するためのフィルタと、
前記フィルタを適用して濃度変動マップｎ（ｇ）を算出する第１の算出手段と、
前記階調ｇのドットパターンｄ（ｇ）に対し、前記第２の方向の合計ドット数マップｓ（ｇ）を算出する第２の算出手段と、
前記濃度変動マップと前記合計ドット数マップに基づいて、前記ドットパターンに対してドットの追加または削除を行うことにより、前記階調ｇと連続する階調のドットパターンを生成する生成手段と、
前記第１の算出手段と、前記第２の算出手段と、前記生成手段を、所定階調の初期ドットパターンを起点として繰り返し適用することにより、全階調のドットパターンを生成し、前記全階調のドットパターンに基づいて前記ディザマトリクスの値を決定する決定手段を有することを特徴とする画像処理装置。
【請求項１３】
前記生成手段は、
前記ディザマトリクスにおける前記第１の方向の位置をｘ、前記第２の方向の位置をｙと定義したとき、
前記合計ドット数マップｓ（ｇ、ｙ）が最少のｙ位置の中で、濃度変動マップｎ（ｇ、ｘ、ｙ）が最少である位置（ｘ、ｙ）にドットパターンｄ（ｇ、ｘ、ｙ）にドットを追加し、
前記合計ドット数マップｓ（ｇ、ｙ）が最大のｙ位置の中で、濃度変動マップｎ（ｇ、ｘ、ｙ）が最大である座標（ｘ、ｙ）からドットパターンｄ（ｇ、ｘ、ｙ）のドットを削除する
ことを特徴とする請求項１２に記載の画像処理装置。
【請求項１４】
前記ディザマトリクスは、ブルーノイズ特性を有することを特徴とする請求項１２に記載の画像処理装置。
【請求項１５】
前記所定階調ｇは、前記ディザマトリクスを利用する画像処理装置において実行される処理に応じて設定されていることを特徴とする請求項１２に記載の画像処理装置。
【請求項１６】
前記第１の方向に対応するＳｙは、前記所定階調ｇに対応するドット数に応じて設定されることを特徴とする請求項１２に記載の画像処理装置。
【請求項１７】
前記生成手段は、前記所定階調ｇとして設定される全ての階調において、前記第１の方向毎のドットの合計数が同じになるように、ドットパターンを生成することを特徴とする請求項１２に記載の画像処理装置。
【請求項１８】
多値の画像データを、画像形成装置が有する記録ヘッドの複数の記録素子からインクの吐出する／しないを決定するための２値のドットパターンに変換する際に利用するディザマトリクスを生成する画像処理装置の制御方法であって、
ここで、前記画像形成装置の前記記録ヘッドが有する前記複数の記録素子の並び方向を第１の方向、当該第１の方向に対して垂直な方向であって、前記記録ヘッドに対して相対的に記録媒体の搬送する方向を第２の方向と定義したとき、前記ディザマトリクスは、前記第２の方向に対応するＳｘ行、前記第１の方向に対応するＳｙ列（Ｓｘ，Ｓｙは自然数）のサイズを有する、
前記画像処理装置の制御方法は、
第１の算出手段が、所定階調ｇのドットパターンｄ（ｇ）における局所的な濃度変動を評価するためのフィルタを適用して濃度変動マップｎ（ｇ）を算出する第１の算出工程と、
第２の算出手段が、前記階調ｇのドットパターンｄ（ｇ）に対し、前記第２の方向の合計ドット数マップｓ（ｇ）を算出する第２の算出工程と、
生成手段が、前記濃度変動マップと前記合計ドット数マップに基づいて、前記ドットパターンに対してドットの追加または削除を行うことにより、前記階調ｇと連続する階調のドットパターンを生成する生成工程と、
決定手段が、前記第１の算出工程と、前記第２の算出工程と、前記生成工程を、所定階調の初期ドットパターンを起点として繰り返し適用することにより、全階調のドットパターンを生成し、前記全階調のドットパターンに基づいて前記ディザマトリクスの値を決定する決定工程を有することを特徴とする画像処理装置の制御方法。
【請求項１９】
コンピュータが読み込み実行することで、前記コンピュータに、請求項１１に記載の方法の各工程を実行させるためのプログラム。
【請求項２０】
コンピュータが読み込み実行することで、前記コンピュータに、請求項１８に記載の方法の各工程を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多階調の画像を当該画像よりも階調数よりも低い階調数の画像に変換する技術に関するものである。
【背景技術】
【０００２】
従来から、コンピュータの出力装置としてのインクジェット記録装置が知られている。インクジェット記録装置は、複数のインク吐出口（ノズル）が配列された記録ヘッドを有し、この記録ヘッドを記録媒体に対して相対移動させ、ノズルからインク滴（ドット）を吐出することで、その記録媒体上に所望の画像を形成するものである。
【０００３】
特に商業印刷向けのインクジェット方式のプリンタはプリント生産性が求められることもあって、シングルパスで描画する方式（フルライン方式またはフルマルチ方式とも呼ばれる）が多く採用されている。シングルパス描画方式は、記録媒体の搬送方向（以下「搬送方向」又は「ｘ方向」という。）と垂直な記録媒体幅方向（以下「記録媒体幅方向」又は「ｙ方向」という。）について描画領域の全範囲をカバーするノズル配列を備えた長尺のラインヘッドを用い、このラインヘッドを記録媒体の搬送方向に対して垂直方向に延在させる構成を採用する。ラインヘッドに対して記録媒体を１回だけ相対移動すればよいため、複数回の走査で画像を完成させるマルチパス方式と比べて、シングルパス描画方式は印刷速度が速いという特徴がある。
【０００４】
このようなプリンタで印刷する際には、印刷しようとする原画像データの階調値をドットのオン・オフで表す画像処理、いわゆるハーフトーン処理が行われる。そして、プリンタは、このハーフトーン処理後の画像データに従って印刷処理を実行することになる。
【０００５】
ハーフトーン処理には種々の方法が提案されており、その代表的な手法の一つにディザ法がある。ディザ法とは、互いに異なる閾値が配置された所定サイズのディザマトリクスを用いるものである。具体的には、このディザマトリクスを画像データ上にタイル状に繰り返し展開し、入力される画像の階調値（画素値）と対応する閾値との大小比較を行う。そして、階調値が閾値よりも大きければドットをオンに、階調値が閾値以下であればドットをオフにして階調表現を行う、というものである。
【０００６】
このようなディザ法では、ディザマトリクスで生成されるドットパターンにおいて、ノズル毎の吐出ドット数（吐出頻度）に偏りが発生することがあり、頻繁にインクを吐出するノズルの寿命が短くなり、ヘッドそのものの寿命が短くなってしまうという問題がある。
【０００７】
特許文献１は、この問題を解決する画像記録装置として、ディザマトリクスを従来のようにタイル状に展開するのではなく、記録媒体幅方向にシフトさせて展開する方法を提案している。これにより、ノズル毎の吐出ドット数に偏りを抑制することができる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００５−１６１８１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、空間周波数分布を人間が知覚しにくいある一定周波数以上に偏らせて高画質化を図ったいわゆるドット分散型ディザマトリクスを使用する場合、特許文献１の方法では、十分にノズル毎の吐出ドット数の偏りを抑制できない場合がある。
【００１０】
ドット分散型ディザマトリクスの例として、ブルーノイズ特性を有するブルーノイズディザマトリクスや、グリーンノイズ特性を有するグリーンノイズディザマトリクスがある。ブルーノイズディザマトリクスは、人間の視覚特性を考慮して、ドットが分散するように閾値の格納位置が調整されたディザマトリクスである。これにより、ドット配置の空間周波数が高周波に偏り、粒状感を抑制することができる。また、グリーンノイズディザマトリクスは、数ドット単位で隣接してドットが形成されながら、全体としてはドットの固まりが分散するように閾値の格納位置が調整されたディザマトリクスである。１画素程度の微細なドットを安定して形成することが困難なプリンタでは、こうしたグリーンノイズマトリクスを参照してドット形成の有無を判断することで、孤立したドットの発生を抑制することができる。
【００１１】
このようなドット分散型ディザマトリクスでは比較的大きなサイズのディザマトリクスが使用される。例えば記録媒体の搬送方向に２５６画素、記録媒体の搬送方向に直交する方向に２５６画素のサイズのディザマトリクスを使用する場合、ノズル使用率を完全に均一化するには、搬送方向に６５５３６画素幅（搬送方向に２５６画素幅のマトリクスを記録媒体方向に２５６回シフトして展開）が必要となる。一方、描画する原画像データの画像オブジェクトが、例えば搬送方向に２０ｍｍ（１２００ｄｐｉ）の場合のとき、画像オブジェクトのサイズは９４５画素程度である。そのため、展開されたディザマトリクスの一部分の閾値でドットが生成され、ノズル使用率の偏りを抑制することができなかった。即ち、記録媒体幅方向にシフトさせて展開されたディザマトリクスに対して、原画像データの画像オブジェクトが比較的小さい場合、ノズル毎の吐出ドット数を十分に均一化することができないという課題があった。
【００１２】
本発明は上記の課題に鑑みてなされたものであり、ディザマトリクスを用いたハーフトーン処理における、ノズル等の記録素子毎の吐出ドット数の偏りを抑制する技術を提供しようとするものである。
【課題を解決するための手段】
【００１３】
この課題を解決するため、例えば本発明の画像処理装置は以下の構成を備える。すなわち、
複数の記録素子が第１の方向に配列された記録ヘッドを有し、前記第１の方向に対して垂直な第２の方向に沿って相対的に搬送される記録媒体に向けて前記記録ヘッドが有する記録素子からインクを吐出させるにより前記記録媒体上に画像を形成する画像形成装置のための画像データを生成する画像処理装置であって、
多値の入力画像データを取得する取得手段と、
前記入力画像データに対して、前記記録素子毎の特性に応じた濃度ムラ補正処理を実行する補正処理手段と、
ディザマトリクスを用いて、前記補正処理手段により濃度ムラ補正処理を実行された前記入力画像データを、ドットの有無を示すハーフトーン画像データに変換する変換手段を有し、
前記ディザマトリクスは、
分散型ディザマトリクスであって、
前記入力画像データがとり得る階調のうち前記濃度ムラ補正処理の対象となる階調について、均一階調の入力画像データから２値のハーフトーン画像データに変換した際の、前記第１の方向の各位置における前記第２の方向の所定の範囲に含まれるドット数が同じになる特性を有することを特徴とする。
【発明の効果】
【００１４】
本発明により、ノズル等の記録素子毎の吐出ドット数の偏りを抑制することが可能になる。
【図面の簡単な説明】
【００１５】
【図１】第１実施形態の画像処理装置及び画像形成装置の構成を示すブロック図。
【図２】第１実施形態のハーフトーン処理部を示すブロック図。
【図３】第１実施形態の記録ヘッドを説明する図。
【図４】第１実施形態のハーフトーン処理を説明する図。
【図５】第１実施形態に適用するディザトリクスの作成手順を示すフローチャート。
【図６】ディザトリクスの作成における初期パターンの手順を示すフローチャート。
【図７】第１実施形態に適用するディザトリクスで生成されるドットパターンの特徴を示す図。
【図８】第２実施形態の画像処理装置及び画像形成装置の構成を示すブロック図。
【図９】第２実施形態の濃度測定用テストチャートの例を示す図。
【図１０】第２実施形態の濃度ムラ補正パラメータの作成手順を示すフローチャート。
【発明を実施するための形態】
【００１６】
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。なお、以下に示す実施形態における構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１７】
［第１実施形態］
図１は、第１実施形態に適用可能な画像処理装置および画像形成装置の構成を示したブロック図である。図１において、画像処理装置１０と画像形成装置２０はインタフェース又は回路によって接続されている。画像処理装置１０は、例えば、プリンタドライバがインストールされた一般的なパーソナルコンピュータである。その場合、以下に説明する画像処理装置１０内の各部は、コンピュータが所定のプログラムを実行することにより実現される。ただし、画像形成装置２０が画像処理装置１０を含む構成としてもよい。
【００１８】
画像処理装置１０は、画像データ入力部１０１から入力された出力対象の画像データを入力画像バッファ１０２に格納する。画像データ入力部１０１に入力される画像データの形式は特に制限されないが、ここでは説明を簡単にするために、画像形成装置２０で使用されるインク色と同じ色種、色数並びに解像度を持った階調画像であるとする。例えば、画像形成装置２０が、シアン（Ｃ）、マゼンタ（Ｍ）、イエロー（Ｙ）、黒（Ｋ）の４色インクを用いて出力解像度１２００ｄｐｉを実現するインクジェット印刷システムの場合、画像データはＣＭＹＫの各色それぞれ８ｂｉｔ（２５６階調）を持った多値の画像データである。なお、印刷しようとする画像の画像データの形式は種々のものがあり得る。画像形成装置２０で使用するインク色の種類や解像度と異なる色の組み合わせや解像度の形式で特定される画像データを印刷する場合には、画像データ入力部１０１の前段において、図示しない前処理部により、色変換や解像度変換などの処理を行い、印画像形成装置２０で使用するインク色及び解像度の画像データに変換した後に、画像データ入力部１０１から入力すれば良い。
【００１９】
ハーフトーン処理部１０３は、入力画像バッファ１０２に格納された画像データに対して、ディザマトリクスを用いて、画像形成装置２０が直接表現可能な階調数への変換（ハーフトーン）処理とノズル群が形成するドット配置の決定を行い、ハーフトーン画像データを作成する。ディザマトリクスは、疑似的に表現可能な階調数に応じて閾値群が配置されている。ディザマトリクスに存在する、閾値として用いられる値の数によって、疑似的に表現可能な階調数が決められる。ディザマトリクスの詳細な生成方法については、後述する。ハーフトーン処理部１０３は、作成したハーフトーン画像データをハーフトーン画像バッファ１０４に出力する。格納されたハーフトーン画像データは、出力端子１０５より画像形成装置２０へ出力される。
【００２０】
画像形成装置２０は、画像処理装置１０から入力端子２０１を介して受信したハーフトーン画像データに基づいて、記録紙等の記録媒体を記録ヘッド２０３に対して相対的に移動させつつ、その記録媒体上にドットを生成することにより、記録媒体上に画像を形成する。ここで記録ヘッド２０３はインクジェット記録方式のものであり、インクを吐出可能な記録素子を複数配列した記録素子列を備える。図３は、記録ヘッド２０３の構成例を示す図である。なお記録ヘッドは典型的にはシアン（Ｃ）、マゼンタ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）の４種類のインク用のノズルを搭載するが、説明の簡易化のためブラック（Ｋ）のみ図示されている。ノズル配列は記録媒体の搬送方向（ｙ方向）と垂直な記録媒体幅方向（ｘ方向）について描画領域の全範囲をカバーする長尺のラインヘッドであり、記録媒体を１回相対移動しつつインクを吐出することで印刷画像が形成される。ヘッド駆動部２０２は、ハーフトーン画像データに基づいて、記録ヘッド２０３を制御するための駆動信号を生成する。記録ヘッド２０３は駆動信号に基づき、実際に記録媒体上へ各インクドットの記録を行う。なお、シアン（Ｃ）、マゼンタ（Ｍ）、イエロー（Ｙ）の記録ヘッドの記録素子も、図示とブラックのヘッドと平行に配列されているものとする。
【００２１】
以下、本実施形態におけるハーフトーン処理部１０３を詳細に説明する。
【００２２】
図２は、ハーフトーン処理部１０３の詳細な構成を示すブロック図である。ハーフトーン処理部１０３は、入力画像バッファ１０２に格納された画像データを、ノズル群ごとの２値（１ｂｉｔ）のデータに変換して出力する。この処理のためハーフトーン処理部１０３は、比較器１０３１、ディザマトリクス１０３２（ＲＯＭ等で構成される）、出力データ生成器１０３３を有する。
【００２３】
ここで、入力バッファ１０２に格納された入力画像データをＩinと定義し、そのｘ方向（ここでは記録媒体の搬送方向とする）の画素数をＷ，ｙ方向（記録媒体の搬送方向に対して直交する方向（以下、単に幅方向とする）の画素数をＨ画素とする。そして、入力画像Ｉinの座標（ｘ，ｙ）（０≦ｘ≦Ｗ−１、０≦ｙ≦Ｈ−１）の画素値をＩin（ｘ，ｙ）と表すことにする。また、ディザマトリクス１０３２はＳｘ行（ｘ方向のサイズ）、Ｓｙ列（ｙ方向のサイズ）を有するものとし、そのディザマトリクス内の座標（ｉ，ｊ）の閾値をＭ（ｉ，ｊ）と表す。そして、出力データ生成器１０３３が生成する出力画像データ（２値画像データ）をＩoutと定義し、その座標（ｘ，ｙ）の出力値をＩout（ｘ，ｙ）とする。また、整数“ａ”を整数“ｂ”で除算した際の剰余を「ａ ％ ｂ」と表す。
【００２４】
比較器１０３１は、入力画像バッファ１０２から入力画像データＩinの座標（ｘ、ｙ）の画素値Ｉin（ｘ，ｙ）と、ディザマトリクスの閾値Ｍ（ｘ ％ Ｓｘ、ｙ ％ Ｓｙ）との大小判定を行い、その判定結果（比較結果）を出力データ生成器１０３３に出力する。出力データ生成器１０３３は、Ｉin（ｘ，ｙ）が閾値Ｍ（ｘ ％ Ｓｘ、ｙ ％ Ｓｙ）より大きいとき、黒ドットを打つことを示す“ＢＬＡＣＫ”を出力値Ｉout（ｘ，ｙ）として生成する。また、出力データ生成器１０３３は、Ｉin（ｘ，ｙ）が閾値Ｍ（ｘ ％ Ｓｘ、ｙ％ Ｓｙ）以下の場合、ドットを打たないことを示す“ＷＨＩＴＥ”を出力値Ｉout（ｘ，ｙ）として生成する。なお、以下の説明で、ドットを打つ／打たないを、「ドットをＯＮ／ＯＦＦする」とも表現する。
【００２５】
ハーフトーン処理部１０３の処理を整理して示せば次の通りである。
Iout(x,y)=BLACK if Iin(x,y) ＞ M(x % Sx, y % Sy)
Iout(x,y)=WHITE if Iin(x,y) ≦ M(x % Sx, y % Sy)
なお、実際には、出力データ生成器１０３３は、出力値“BLACK”を例えば１ビットの“１”、“WHITE”を“０”とする２値画像を生成するものである。
【００２６】
ここで、上記のハーフトーン処理の一例を、図４を参照して説明する。図４における参照符号４０１は入力画像データの一部を、参照符号４０２はディザマトリクスＭの一部と、そして、参照符号４０３は出力データの一部を示している。入力画像データ４０１は、１画素が例えば８ビットで表現されており、各画素の取り得る範囲は０〜２５５の値である。
【００２７】
ディザマトリクス４０２は、ｘ方向に２５６個、ｙ方向に２５６個の合計６５５３６個の閾値を有し、それら閾値は値０〜２５５の範囲から万遍なく選択された閾値となっているものとする。
【００２８】
ここで、入力画像データの画素値が対応する閾値を超える場合にはＢＬＡＣＫ（黒ドットを打つ）が出力値として決定され、画素値が対応する閾値以下の場合にはＷＨＩＴＥ（ドットを打たない）が出力値として決定される。従って、図示のディザマトリクス４０２を使った場合、２５６階調のドット配置を得られる。すなわちディザマトリクス４０２を用いてハーフトーン処理すると、出力データとしては、２５６画素×２５６画素の範囲において０〜２５５までの２５６段階の階調を疑似的に表現することができる。図示では、入力画像４０１は単一の画素値“３３”を持つ画像であり、ディザマトリクス４０２を用いた場合、図示の出力データ４０３が得られる。
【００２９】
上記からもわかるように、ディザマトリクスの閾値が小さい画素位置では、ドットがＯＮになる確率が高く、逆に閾値が大きい画素位置はドットＯＦＦになる確率が高くなると言える。そのため、ディザマトリクスの比較的小さい閾値が特定のノズル列に偏ると、そのノズルは頻繁にインクを吐出することとなり、そのノズルの寿命を短くしてしまう。
【００３０】
記録ヘッドをできる限り長く使用可能とするためには、各ノズルが吐出するインクのドット数に偏りを無くし均一化することで、インクの吐出数が極端に多いノズルの発生を抑制すると良い。このためには、同一の入力階調値に対して各ノズルで形成されるドットの生成頻度が均一になるようにディザマトリクスの閾値配置を調整することが有効と言える。
【００３１】
そこで、以降では、各ノズルで形成されるドットの生成頻度が均一になるように調整されたドット分散型のディザマトリクスの作成方法について述べる。以下の説明では、生成過程または、生成後のディザマトリクスをＭとする。ディザマトリクスＭは、ｘ方向（記録媒体の搬送方向）に並ぶ閾値数（サイズ）をＳｘ、ｙ方向（記録媒体の幅方向）に並ぶ閾値数をＳｙとする、二次元の配列であり、Ｓｘ，Ｓｙは自然数である。ディザマトリクスのサイズ（Ｓｘ，Ｓｙ）は任意であるが、典型的には２のべき乗の辺の長さをもつ四角形で、各辺が２５６以上（例えば２５６×２５６や５１２×５１２）が好適である。本実施形態では、Ｓｘを２５６、Ｓｙを２５６とする。本実施形態で作成するディザマトリクスＭには、０〜６５５３５の閾値が格納されている。これにより、ディザマトリクスＭを用いてハーフトーン処理すると、Ｓｘ×Ｓｙの領域において疑似的に２５６階調を再現することができる。
【００３２】
ドット分散型ディザマトリクスを生成可能な方法としてＶｏｉｄ＆Ｃｌｕｓｔｅｒ法が知られている。Ｖｏｉｄ＆Ｃｌｕｓｔｅｒ法は、ローパスフィルタを適用して平滑化濃度画像を求め、局所的な濃度変動を抑える様にドットを追加／削除すべき配置を決定する。本実施形態でも同様な方法により、ドット分散型のブルーノイズ特性を有するディザマトリクスを生成する。
【００３３】
この過程で生成されるドットパターンをｄ（ｘ、ｙ）とする。ｄ（ｘ、ｙ）は二次元の配列で、サイズはＭ（ｘ、ｙ）と同じである。ｄ（ｘ、ｙ）の各画素の値は、ドットが存在するときは“１”、ドットが存在しないときは“０”の２値表現とする。
【００３４】
ドットパターンｄ（ｘ、ｙ）は、反復過程において変化する。反復過程によれば、ドット数が０個のドットパターンから、ドット数がＳｘ×Ｓｙ個までの、Ｓｘ×Ｓｙ＋１通りのドットパターンが生成される。そのため、ドットパターンｄ（ｘ、ｙ）におけるドット数をｇとしたとき、このｇを用いれば、反復過程における、ある１つの時点を特定できる。以下の説明では、ドット数ｇを、階調値ｇと呼ぶことにする。また、以下の説明では、階調値がｇのときのドットパターンｄ（ｘ、ｙ）を、ｄ（ｇ、ｘ、ｙ）、あるいはｘ、ｙを省略して、ｄ（ｇ）とも表記する。上述の通り本実施形態では、疑似的に２５６階調再現可能なディザマトリクスを作成するため、以下の処理において階調ｇには、０〜Ｓｘ×Ｓｙ−１のすべての自然数の値が設定される。
【００３５】
以下、図５を参照して本実施形態の詳細を説明する。同図はディザマトリクス生成方法の全体の流れを示すフローチャートであり、図１の画像処理装置１０の不図示のＣＰＵが、ハーフトーン処理部１０３で利用するディザマトリクスの生成処理を示している。なおディザマトリクスを次回の印刷処理で再利用できるようにするため、不図示の不揮発性メモリに格納するのであれば、初回時だけ実行すればよい。なお、画像処理装置１０が、パーソナルコンピュータ等の情報処理装置の場合には、図示のフローチャートに係るプログラムは、アプリケーション或いはプリンタドライバの一部を示すことになる。
【００３６】
Ｓ１００にて、ＣＰＵは、階調値が所定階調ｇ０の初期ドットパターンｄ（ｇ０）を生成する。本実施形態では、初期ドットパターンの階調数ｇ０は、Ｓｘ×Ｓｘ×０．５＝２５６×２５６×０．５＝３２７６８とする。初期ドットパターンの生成方法は後述する。なお、初期ドットパターンｄ（ｇ０）を、ドットが１つも存在しない階調数ｇ０＝０の画像とすることもできる。その場合、Ｓ１００は実施されない。
【００３７】
Ｓ１０１からＳ１０７は、初期ドットパターンを起点としてドット追加を反復する処理である。また、Ｓ２０１からＳ２０７は、初期ドットパターンを起点としてドット削除を反復する処理である。なお、ドット追加を反復する際は、ドット削除は行わない。逆に、ドット削除を反復する際は、ドット追加は行わない。
【００３８】
Ｓ１０１とＳ１０７はループ端を示し、ループ端で囲まれるＳ１０２からＳ１０６の処理が、階調値ｇがｇＭＡＸに達するまで繰り返されることを示している。Ｓ１０２からＳ１０６までの処理は、階調値がｇのドットパターンにドットを１つ追加することで、連続する階調値、すなわち階調値がｇ＋１のドットパターンを生成する処理である。また、処理の終了条件を決定するｇＭＡＸは、ｇＭＡＸ≧ｇ０であって、本実施形態では、ｇＭＡＸ＝Ｓｘ×Ｓｙ−１＝６５５３５とする。
【００３９】
同様に、Ｓ２０１とＳ２０７はループ端を示し、そのループ端で囲まれるＳ２０２からＳ２０６の処理が、階調値ｇがｇＭＩＮに達するまで繰り返されることを示している。Ｓ２０２からＳ２０６までの処理は階調値がｇのドットパターンからドットを１つ削除し、連続する階調値、すなわち階調値がｇ−１のドットパターンを生成する処理である。ｇＭＩＮ≦ｇ０であり、本実施形態ではｇＭＩＮ＝０とする。このようにドット追加の反復と、ドット削除の反復を行うことにより、全階調のドットパターンを生成する。
【００４０】
Ｓ１０２とＳ２０２の処理は、処理内容が同じため、以下ではＳ１０２について説明する。Ｓ１０２にて、ＣＰＵは、階調値ｇに対応するドットパターンｄ（ｇ）に対してローパスフィルタを適用し、濃度変動マップｎ（ｇ）を算出する。以下の説明では、濃度変動マップｎ（ｇ）を濃度変動ｎ（ｇ）と略称する。
【００４１】
濃度変動ｎ（ｇ）は、階調値がｇのドットパターンｄ（ｇ）における、ドットの粗密の評価に使用する。濃度変動ｎ（ｇ）の値が小さい場所ほど平滑化濃度が低くドットが疎だと評価され、逆に、濃度変動ｎ（ｇ）の値が大きい場所ほど平滑化濃度が高くドットが密だと評価される。後述するＳ１０４では、濃度変動ｎ（ｇ）の値が小さい、ドットが疎な位置にドットが追加される。また、Ｓ２０４では、濃度変動ｎ（ｇ）の値が大きい、ドットが密な位置からドットが削除される。これにより、局所的な濃度の変動を抑えて低粒状性を実現する。
【００４２】
濃度変動ｎ（ｇ）は、ドットパターンｄ（ｇ）と同じサイズの二次元配列であり、ドットパターンｄ（ｇ）と同様に、配列の値が階調値ｇによって変化する。以下の説明では、ｎ（ｇ）をｎ（ｇ、ｘ、ｙ）とも表記する。ディザマトリクスは入力画像に対して周期的に適用されることを想定している。このため、ＣＰＵは、Ｓ１０３のフィルタ処理で、濃度変動ｎ（ｇ）を、ドットパターンｄ（ｇ）とフィルタ係数との巡回畳み込み演算によって生成する。巡回畳み込み演算は、通常の畳み込み演算を、周期的境界条件を設定したドットパターンｄ（ｇ）と、フィルタ係数との間で行う演算である。なお、Ｓ１０３で使用するフィルタ係数の詳細は後述する。
【００４３】
Ｓ１０３とＳ２０３の処理は、処理内容が同じため、以下ではＳ１０３について説明する。Ｓ１０３にて、ＣＰＵは、階調値ｇに対応するドットパターンｄ（ｇ）に対して、ｙ方向の位置毎のｘ方向の合計ドット数マップｓ（ｇ）を抽出する。合計ドット数マップｓ（ｇ）は一次元配列であり、ｓ（ｇ）をｓ（ｇ、ｙ）とも表記する。ｙ方向の位置毎（ノズル毎）のドット数を均一化するための配置制約に使用する。後述するＳ１０４では、ｓ（ｇ、ｙ）の値が小さく、合計ドット数が少ないｙ位置のドットパターンｄ（ｇ、ｘ、ｙ）に、ドットが追加される。また、Ｓ２０４では、ｓ（ｙ）の値が大きく、合計ドット数が多いｙ位置のドットパターンｄ（ｇ、ｘ、ｙ）からドットが削除される。これにより、ノズル毎のドット生成頻度の差を小さくなるように調整できる。
【００４４】
Ｓ１０４とＳ２０４にて、ＣＰＵは、濃度変動ｎ（ｇ）と合計ドット数マップｓ（ｇ、ｙ）に基づいてドットの追加または削除を行う。Ｓ１０４にて、ＣＰＵは、合計ドット数マップｓ（ｇ、ｙ）が最少のｙ位置群の中で、濃度変動ｎ（ｇ、ｘ、ｙ）が最少である位置（ｘＭＩＮ、ｙＭＩＮ）のドットパターンｄ（ｇ、ｘＭＩＮ、ｙＭＩＮ）にドットを追加する。一方、Ｓ２０４にて、ＣＰＵは、合計ドット数マップｓ（ｇ、ｙ）が最大のｙ位置の中で、濃度変動ｎ（ｇ、ｘ、ｙ）が最大である位置（ｘＭＡＸ、ｙＭＡＸ）のドットパターンｄ（ｇ、ｘＭＡＸ、ｙＭＡＸ）のドットを削除する。処理の詳細については後述する。
【００４５】
Ｓ１０５とＳ２０５にて、ＣＰＵは、ドットを追加または削除した位置（ｘＭＩＮ、ｙＭＩＮ、またはｘＭＡＸ、ｙＭＡＸ）に基づき、ディザマトリクスＭ（ｘ、ｙ）の値を決定する。Ｓ１０５にて、ＣＰＵは、ディザマトリクスＭ（ｘ、ｙ）において、Ｍ（ｘＭＩＮ、ｙＭＩＮ）の値を階調値ｇにする。Ｓ２０５にて、ＣＰＵは、ディザマトリクスＭ（ｘ、ｙ）において、Ｍ（ｘＭＡＸ、ｙＭＡＸ）の値を階調値ｇ−１にする。
【００４６】
Ｓ１０６にて、ＣＰＵは、階調値ｇの値をインクリメントし、ｇ＋１とする。同様に、Ｓ２０６にて、ＣＰＵは、階調値ｇの値をデクリメントし、ｇ−１とする。
【００４７】
上記のようにして、Ｓ１０１〜１０７のループ、Ｓ２０１〜Ｓ２０７のループを抜けると、ＣＰＵはＳ２０８にて、ディザマトリクスの値のレンジに応じて、入力画像の画素値のレンジを調整する。Ｓ２０８を行う前の段階において、ディザマトリクスＭ（ｘ、ｙ）には、ｇＭＩＮからｇＭＡＸまでの値が格納されている。本実施形態の場合、０から６５５３５（ｍＭＩＮからｍＭＡＸ）までの値が格納されている。ディザ処理を行う際の入力画像が８ビットの場合は、入力画像のレンジは０〜２５５（ｔｈＭＩＮからｔｈＭＡＸ）である。それ故、０から６５５３５までの値が格納されたディザマトリクスを使用しても、適切なハーフトーン処理結果を得ることができない。Ｓ２０８にて、ＣＰＵは、ディザマトリクスＭ（ｘ、ｙ）の値のレンジに合うように、入力画像の画素値のビット数を拡張する。例えば、ディザマトリクスの値のレンジが０から６５５３５の１６ビットで入力画像が８ビットの場合は、入力画像の下位に０詰めして１６ビットにして比較する。
【００４８】
一方、入力画像の画素値のレンジに合わせて、ディザマトリクスの値を調整してもよい。例えば、０から６５５３５までの値が格納された１６ビットのディザマトリクスの下位８ビットを切り捨て、上位８ビットをディザマトリクスの値とする。また、ｔｈＭＩＮからｔｈＭＡＸにしたい場合は、ＣＰＵは、調整後のディザマトリクスの値として次式の整数部を得る。
ａ×Ｍ（ｘ、ｙ）＋ｂ
ただし、
ａ＝（ｔｈＭＡＸ−ｔｈＭＩＮ）÷（ｍＭＡＸ−ｍＭＩＮ）、
ｂ＝ｔｈＭＩＮ−ａ×ｍＭＩＮ
である。
【００４９】
以上説明した図５の処理フローによれば、低粒状性を維持しつつ、ノズル毎のインク吐出頻度を均一化することが可能なディザマトリクスを生成できる。以下、図１における各処理の詳細を説明する。
【００５０】
まず、Ｓ１０２とＳ２０２で使用するフィルタ係数ｆについて説明する。このフィルタ係数は、濃度変動マップｎ（ｇ）を抽出するために使用する。ｆは、二次元配列であり、ｆ（ｘ、ｙ）とも表記する。本実施形態では、ｆ（ｘ、ｙ）の配列サイズは、ドットパターンｄ（ｇ）と同じとする。すなわち、ｘ方向のフィルタサイズをＳｆｘ、ｙ方向のフィルタサイズをＳｆｙとしたとき、これらの値は“２５６”とする。ｆ（ｘ、ｙ）の値としては、次式（１）の値を用いる。
ｒ＝｛（ｘ−ｘ0）2+（ｙ−ｙ0）2｝1/2
ｆ（ｘ、ｙ）＝１／（ｒ＋１）              …（１）
式（１）において、ｘ０、ｙ０は、フィルタ係数の中心位置であり、ｘ０＝Ｓｆｘ÷２、ｙ０＝Ｓｆｙ÷２である。
【００５１】
Ｓ１０４、Ｓ２０４にて、ＣＰＵは、濃度変動ｎ（ｇ）を緩和するようにドットを追加または削除することにより、ドットの粗密を低減し、これにより低粒状性を実現する。これを好適に実現するためには、ドット間の粗密を抽出する必要がある。ドット間の粗密を抽出するには、フィルタｆを、式（１）に示すようにドットからの距離ｒの逆数の関数にすれば良い。なお、本実施形態では、距離ｒ＝０におけるゼロ割を避けるために分母に“１”を加算した。
【００５２】
なお、Ｓ１０４、Ｓ２０４で使用するフィルタｆはこれに限らず、粒状感として知覚される周波数成分を抽出可能なローパスフィルタを用いてもよい。
【００５３】
次にＳ１０４とＳ２０４におけるドット配置方法を説明する。ＣＰＵは、濃度変動ｎ（ｇ）と合計ドット数マップｓ（ｇ、ｙ）に基づいてドットの追加または削除を行う。Ｓ１０４はドットを追加する処理である。Ｓ１０４にて、ＣＰＵは、ドットが存在せず、且つ、合計ドット数マップｓ（ｇ、ｙ）が最少のｙ位置の中で、濃度変動ｎ（ｇ、ｘ、ｙ）の値が最小になる位置（ｘＭＩＮ、ｙＭＩＮ）にドットを追加する。具体的には、合計ドット数マップｓ（ｇ、ｙ）においてドット数が最少となっているｙ位置群の画素、且つ、ドットパターンｄ（ｇ、ｘ、ｙ）において画素値が“０”になっている画素の中から、濃度変動ｎ（ｇ、ｘ、ｙ）の値が最小となる位置（ｘＭＩＮ、ｙＭＩＮ）を探索する。そして、ｄ（ｇ、ｘＭＩＮ、ｙＭＩＮ）の画素値を“１”にすることでドットを追加する。なお、濃度変動マップｎ（ｇ、ｘ、ｙ）の値が最小となる位置が複数存在する場合、ＣＰＵは、その中からドットを追加する位置をランダムに選択する。
【００５４】
一方、Ｓ２０４はドットを削除する処理である。Ｓ２０４にて、ＣＰＵは、ドットが存在し、且つ、合計ドット数マップｓ（ｇ、ｙ）が最大のｙ位置の中で、濃度変動マップｎ（ｇ、ｘ、ｙ）の値が最大になる位置（ｘＭＡＸ、ｙＭＡＸ）からドットを削除する。具体的には、合計ドット数マップｓ（ｇ、ｙ）においてドット数が最大となっているｙ位置群の画素、且つ、ドットパターンｄ（ｇ、ｘ、ｙ）において画素値が“１”になっている画素の中から、濃度変動マップｎ（ｇ、ｘ、ｙ）の値が最大となる位置（ｘＭＡＸ、ｙＭＡＸ）を探索する。そして、ＣＰＵは、ｄ（ｇ、ｘＭＡＸ、ｙＭＡＸ）の画素値を“０”にすることでドットを削除する。なお、濃度変動マップｎ（ｇ、ｘ、ｙ）の値が最大となる位置が複数存在する場合、ＣＰＵは、その中からドットを削除する位置をランダムに選択する。
【００５５】
次に、Ｓ１００における初期ドットパターンの生成方法の詳細を、図６を参照して説明する。簡単に言えば、ＣＰＵは、はじめにランダムなドットパターンを生成する。そして、ＣＰＵは、このランダムなドットパターンを起点として、ＣＰＵドットの移動を反復することにより、粒状性が低く、且つ、濃度ムラが目立たない初期ドットパターンｄ（ｇ０）を生成する。
【００５６】
Ｓ３０１にて、ＣＰＵは、階調数がｇ０のランダムなドットパターンｄ_ｒを生成する。ｄ_ｒは二次元の配列で、ｄ_ｒ（ｘ、ｙ）とも表記する。サイズはディザマトリクスＭ（ｘ、ｙ）と同じで、ｘ方向のサイズはＳｘ、ｙ方向のサイズはＳｙである。前述の通り、本実施形態ではＳｘとＳｙの値は“２５６”とする。また、前述のｄ（ｘ、ｙ）と同じく、ドットが存在するときの画素値は“１”、ドットが存在しないときの画素値は“０”とする。
【００５７】
Ｓ３０１にて、ＣＰＵは、ドットが１つも存在しない画像を起点として、階調数がｇ０に達するまで、ドット追加を反復し、階調数がｇ０のランダムドットパターンを生成する。
【００５８】
ＣＰＵは、ドットを追加するｙ方向の位置ｙｒを１からＳｙまで順番にインクリメントして決定する。そして、最端Ｓｙまで到達したら１に戻り繰り返す。一方、ＣＰＵは、ドットを追加するｘ方向の位置の候補を乱数を用いて決める。具体的には、ＣＰＵは、１からＳｘまでの乱数を発生させ、ｘ方向の位置ｘｒを決める。そして、ＣＰＵは（ｘｒ、ｙｒ）にドットが存在しない場合は、その位置にドットを追加する。すなわち、ＣＰＵは、ｄ_ｒ（ｘｒ、ｙｒ）の画素値が“０”の場合は、ｄ_ｒ（ｘｒ、ｙｒ）の画素値を“１”にする。ただし、すでにｄ_ｒ（ｘｒ、ｙｒ）の画素値が“１”になっていた場合、ＣＰＵは、ドットを追加するｘ方向の位置ｘｒの候補を、新たに乱数を発生させて変更する。これにより、Ｓ３０１で生成されるドットパターンは、ｘ方向に合計した合計ドット数の偏りが、１ドット以下に抑えられたランダムドットパターンとなる。
【００５９】
Ｓ３０２とＳ３０５はループ端であり、Ｓ３０３からＳ３０４までの処理を所定回数だけ繰り返すことを意味している。本実施形態では、繰り返し回数を１００００回とするが、これに限らず、所定の収束条件を設定しても構わない。
【００６０】
Ｓ３０３にて、ＣＰＵは、Ｓ１０３と同じ方法により、ドットパターンｄ_ｒから濃度変動ｎを抽出する。濃度変動ｎは二次元配列であり、ｎ（ｘ、ｙ）とも表記する。
【００６１】
Ｓ３０４にて、ＣＰＵは、濃度変動マップｎに基づいてドットを移動する。まず、ｄ_ｒ（ｘ、ｙ）においてドットが存在する画素の中から、濃度変動ｎ（ｘ、ｙ）の値が最大になる位置（ｘＭＡＸ、ｙＭＡＸ）を探索する。次に、ＣＰＵは、濃度変動ｎ（ｘ、ｙ）の値が最大になる位置と同じｙ位置（ｙＭＡＸ）で、且つドットが存在しない画素の中から、濃度変動ｎ（ｘ、ｙＭＡＸ）の値が最小になるｘ位置（ｘＭＩＮ、ｙＭＡＸ）を探索する。そして、ＣＰＵは、（ｘＭＡＸ、ｙＭＡＸ）の位置のドットを、（ｘＭＩＮ、ｙＭＡＸ）に移動させる。すなわち、ドットパターンｄ_ｒ（ｘＭＡＸ、ｙＭＡＸ）の画素値を“０”にして、ドットパターンｄ_ｒ（ｘＭＩＮ、ｙＭＡＸ）の画素値を“１”にする。濃度変動ｎが大きい位置のドットを同じｙ位置で濃度変動ｎが小さい位置に移動する。これにより、Ｓ３０４で生成されるドットパターンは、ドットの移動前後でｙ方向の位置ｙｒ毎の合計ドット数が変化しない。これにより、ｘ方向に合計した合計ドット数の偏りを、１ドット以下に抑えつつ、ドット分散性が良好なドットパターンを生成可能となる。
【００６２】
以上、本実施形態に記載の方法で生成したディザマトリクスを用いてドットパターンを生成した場合、記録ヘッド２０３のノズル毎の吐出ドット数の差を予め設定された範囲内にすることができる（吐出ドット数を略均一化できる）。これにより、特定のノズルの寿命が短くなるのを抑制し、記録ヘッドの寿命を延ばすことが可能となる。
【００６３】
［第２実施形態］
ノズル毎の吐出ドット数の均一化は、ノズル毎のインクの吐出特性の変動による画質劣化を抑制する濃度ムラ補正においても好適に作用する。第２実施形態においては、濃度ムラ補正における効果と、その実現例を説明する。
【００６４】
実際の画像形成装置においては、記録ヘッドに列設された各ノズルには、記録ヘッドの製造プロセスや構成材料等に起因した吐出特性のばらつきがある。そして、各ノズルの吐出特性のばらつきは、各ノズルから吐出されるインク滴の大きさや吐出方向の不均一となって現れ、記録画像に濃度むらを生じさせる原因となる。このような問題に対して、記録ヘッドを構成するノズル毎の吐出特性に基づき、入力画像データを補正することで濃度ムラを抑制する濃度ムラ補正の技術がある。具体的には、濃度ムラ補正用の濃度変換関数を求めるための濃度測定用テストチャートを出力し、この出力された濃度測定用テストチャートの画像を読み取って、記録濃度の測定を行い、その測定濃度データを基にノズルごとの画像データの濃度補正パラメータを生成する。そして、画像を印刷する際には、入力画像データを濃度補正パラメータに基づいて補正し、当該補正された画像データを基に画像記録の制御を行うことで濃度ムラの発生が抑制された画像を形成する。
【００６５】
濃度測定用テストチャートから生成されたドットパターンのドット位置が、ある特定のノズルに偏りを持つと、ノズル毎にインクの吐出数に差異が生じてしまう。その結果、吐出数が多いノズルに対応する出力濃度は濃く、吐出数が少ないノズルに対応する出力濃度は薄くなる。そのため、出力された濃度測定用テストチャートには、ノズル毎の吐出特性による濃度差とノズル毎のインクの吐出数の差異による濃度差が混在してしまう。このような、テストチャートの記録濃度から、ノズル毎の吐出特性に起因した濃度変動を分離して測定することは困難となり、濃度ムラ補正の効果が低減してしまうという問題が生じる。
【００６６】
そこで、ノズルの吐出特性に起因した濃度変動を精度よく計測するために、濃度ムラ補正の対象とする各ノズルで形成されるドット数が均一になるように調整されたディザマトリクスを使用して濃度測定用テストチャートのドットパターンを生成することが有効となる。
【００６７】
また、ノズル位置毎に入力階調に対する出力ドット数に差異があると、ノズル毎の吐出特性に起因した濃度変動を正しく補正できたとしても、ノズル毎に補正の効き方（補正による出力ドット数の変化の仕方）が異なり、濃度ムラ補正効果が低減する場合があった。具体的には例えば、理想的な吐出量に比べて、同程度、１ドットに対する吐出量が少なくなってしまうノズルが２つあるとする。この時、入力画像において補正対象の２つのノズルに対応する画素列に対して、同様に画素値が大きくなるように補正される。しかしながら、各ノズルにおいて階調に応じて出力ドット数が異なっている場合、補正前後の画素値が同じであっても、異なる出力ドット数が吐出されることになる。その結果、濃度ムラ補正処理をしても濃度ムラが残留してしまう。
【００６８】
そこで、ノズル毎の濃度ムラ補正を施した入力画像に対して、記録画像の濃度ムラ補正効果を向上するために、各ノズルで形成される各階調に対応するドット数が均一になるように調整されたディザマトリクスを使用することが有効となる。
【００６９】
図８は、第２実施形態に適用可能な画像処理装置１０および画像形成装置２０の構成を示したブロック図である。なお、以降の説明において、第１実施形態と共通の部分は説明を簡易化または省略する。
【００７０】
図８において、画像読取装置３０、濃度ムラ補正パラメータ演算部１０５、濃度ムラ補正パラメータ格納部１０６、濃度ムラ補正処理部１０７、テストチャート生成部１０８以外は図１と同様のため、説明を省略する。
【００７１】
画像読取装置３０は、記録ヘッド２０３によって記録媒体上に記録された画像を読み取り、電子画像データ（読取画像データ）に変換する。画像読取装置３０としては、例えば、ＣＣＤラインセンサを用いることができる。本実施形態の画像読取装置３０は、媒体搬送路の途中に設置されるインラインセンサであり、記録ヘッド２０３によって記録された画像を排紙前の搬送中に読み取る。画像読取装置３０は、後述する濃度測定用テストチャートの出力結果を読み取ることができる。
【００７２】
濃度ムラ補正パラメータ演算部１０５は、画像読取装置３０から取得した濃度測定用テストチャートの読取画像を基に、濃度測定を行い、ノズル毎の濃度ムラの補正値データ（濃度ムラ補正パラメータ）を生成する。濃度ムラ補正パラメータ演算部１０５で生成された濃度ムラ補正パラメータは、濃度ムラ補正パラメータ格納部１０６に格納される。
【００７３】
濃度ムラ補正処理部１０７は、記録ヘッド２０３におけるノズルの吐出特性のばらつき等に起因して発生する記録媒体上の印刷画像の濃度ムラを抑制するための画像信号補正を行う。本実施形態では、記録ヘッド２０３のノズルごとに、入力信号値と出力信号値の変換関係を記述した濃度ムラ補正用のルックアップテーブルである濃度ムラ補正ＬＵＴが準備され、この濃度ムラ補正ＬＵＴを用いて信号値の変換がなされる。
【００７４】
テストチャート生成部１０８は、濃度ムラ補正パラメータの計算に必要な濃度測定データを得るための濃度測定用テストチャートのデータを生成し、入力画像バッファ１０２に提供する。図９は、濃度測定用テストチャートの一例であり、記録ヘッド２０３の記録媒体幅方向の幅Ｔｙ、搬送方向に高さＴｘの大きさの矩形領域にそれぞれ予め決められた階調値Ｄ１〜Ｄ１０となる均一濃度の階調パッチを搬送方向に帯状に有する。図９に示すように本実施形態では、全てのノイズの吐出特性を導出できるように、ノズル幅分のチャートのデータがある。また、本実施形態においては、０〜２５５の全ての階調を濃度ムラ補正の対象とする。そのため０〜２５５のうち離散的であるが、低濃度から高濃度まで等間隔の濃度に対応する階調毎のパッチを含むように、濃度測定用テストチャートが生成されている。
【００７５】
吐出特性に起因した濃度変動を取得するためには、各ノズルで形成されるドット数が均一になるように調整されたディザマトリクスを使用して濃度測定用テストチャートのドットパターンを生成することが有効である。そのため、濃度測定用テストチャートにおける各階調の濃度領域のｘ方向サイズＴｘは、ディザマトリクスのｘ方向サイズＳｘ画素以上（実施形態ではＳｘは２５６）である必要がある。本第２実施形態では、Ｔｘ＝８００画素とする。
【００７６】
図１０は、本第２実施形態の画像処置装置１０内の不図示のＣＰＵが実行する、濃度ムラ補正パラメータの作成手順の概要を示すフローチャートである。なお、同図に係るプログラムは、所定のメモリ（ＲＡＭ等）に格納されるものである。
【００７７】
Ｓ４０１にて、ＣＰＵは、テストチャート生成部１０８によって生成された濃度測定用テストチャートの画像データを入力画像バッファ１０２に送ることで、記録ヘッド２０３による記録媒体上への濃度測定用テストチャートの画像を出力させる。このとき、ＣＰＵは、濃度ムラ補正処理部１０７に対して濃度ムラ補正は行わないようにし、均一濃度の階調パッチを出力させる。また、ハーフトーン処理部１０３に対しては、各ノズルで形成されるドット数が均一になるように調整されたディザマトリクスを使用して、濃度測定用テストチャートのドットパターンを生成させる。
【００７８】
Ｓ４０２にて、ＣＰＵは、画像読取装置３０を制御し、濃度測定用テストチャートの出力結果を読み取り、テストチャートの測定を行わせる。
【００７９】
Ｓ４０３にて、ＣＰＵは、取り込まれた画像から、画像処理により各階調に対応する帯状の濃度パッチ毎に、搬送方向（ｘ方向）に信号を積算し、記録媒体幅方向（ｙ方向）の１次元の測定データを作成する。このとき、ノズル毎の吐出特性に起因した濃度変動を取得するために、ノズル毎のドット数が均一となる範囲で搬送方向（ｘ方向）の信号を積算するのが望ましい。つまり、搬送方向（ｘ方向）の積算範囲Ｍｘは、ディザマトリクスのｘ方向サイズの印字幅（ｍｍ）の整数倍であることが望ましい。ディザマトリクスのｘ方向サイズＳｘ＝２５６（ｐｉｘｅｌ）の場合、印字幅（ｍｍ）は２５６（ｐｉｘｅｌ）／１２００（ｐｉｘｅｌ／ｉｎｃｈ）＊２５．４（ｍｍ／ｉｎｃｈ）≒５．４（ｍｍ）である。一方、濃度測定用テストチャートにおける各階調の濃度領域のｘ方向サイズＴｘの印字幅（ｍｍ）は、８００（ｐｉｘｅｌ）／１２００（ｐｉｘｅｌ／ｉｎｃｈ）＊２５．４（ｍｍ／ｉｎｃｈ）≒１６．９（ｍｍ）である。本実施形態では搬送方向（ｘ方向）の積算範囲Ｍｘを、濃度領域のｘ方向サイズの印字幅（１６．９ｍｍ）以下で、且つ、ディザマトリクスのｘ方向サイズＳｘの印字幅（５．４ｍｍ）の整数倍（３倍）となる、１６．３ｍｍとする。
【００８０】
ＣＰＵは、画像読取装置３０の読み取り解像度（例えば、記録媒体幅方向について６００ｄｐｉ）の測定１次元データを基に、記録ヘッド２０３のノズルの解像度（記録解像度）刻みに補間を行い、ノズル位置ごとの濃度測定データを作成する。
【００８１】
次に、Ｓ４０４にて、ＣＰＵは、取得されたノズル位置ごとの濃度測定データと、目標とする階調特性とから、ノズルごとの濃度ムラ補正パラメータ、すなわち濃度ムラ補正ＬＵＴが算出される。なお、離散的な階調値に対する濃度測定データを補間することにより、測定点以外の階調値に対する濃度データが得られる。
【００８２】
次に、図７（Ａ），（Ｂ）を参照して、本発明のディザマトリクスを用いたハーフトーン処理で生成されるドットパターンの階調特性を説明する。
【００８３】
図７（Ａ），（Ｂ）のグラフの水平軸は、入力階調値、垂直軸はディザマトリクスと同じサイズ（Ｓｘ，Ｓｙ）の均一階調の入力画像ｉｎとディザマトリクスＭの比較処理によって生成されたドットパターンにおける、ｘ方向の合計ドット数ｘＳｕｍ（ｙ）（以下、合計ドット数）である。ディザマトリクスのｙ方向のサイズＳｙが２５６の場合、２５６本のグラフを生成可能であるが、ここではグラフの見易さのために、一部のｙ位置における対応を表示していることに注意されたい。
【００８４】
図７（Ａ）に、本実施形態で作成したディザマトリクスを用いてドットパターンを生成した場合の例を示す。図７（Ｂ）に、比較のためにノズル毎のドットの生成頻度が均一になることを考慮せずに作成された一般的なブルーノイズディザマトリクスを用いてドットパターンを生成した場合の例を示す。ここで一般的なブルーノイズディザマトリクスは、図５を用いたマトリクス作成方法のうち、Ｓ１０３、Ｓ１０４、Ｓ２０３、Ｓ２０４のみが異なる方法で作成される。一般的なブルーノイズディザマトリクスは、Ｓ１０３およびＳ２０３がなく、Ｓ１０４およびＳ２０４において濃度変動ｎ（ｇ、ｘ、ｙ）にも参照することで生成されたマトリクスであるとする。
【００８５】
図７（Ａ）は、ｙ方向の複数位置における入力階調値に対する合計ドット数を表示しているが、グラフが重なっているため、１つの線に見えている。つまり、均一濃度の入力階調値に対して、ディザマトリクスを用いて生成されるドットパターンの、合計ドット数が階調によらず略均一となり、階調間のドットの増加数が一定（線形）となることを示している。
【００８６】
一方、図７（Ｂ）に示すように、一般的なブルーノイズディザマトリクスを用いてドットパターンを生成した場合、入力階調値に対する出力ドットの合計数の対応関係が、ｙ位置毎に異なり、階調間のドットの増加数が非線形となることを示している。
【００８７】
図７（Ａ）に示すノズル毎の合計ドット数は、全体のドット数がディザマトリクスのｙ方向のサイズＳｙで割り切れる場合（Ｓｙの整数倍である場合）、完全に一致させることが可能である。これは、ディザマトリクスによって疑似的に表現できる階調数（ｇの数）がＳｙであるために成立する。つまりディザマトリクスを用いて生成されるドットパターンの全体のドット数をｄとすると、ｄ ％ Ｓｙ＝０の場合、ノズル毎の合計ドット数はそれぞれｄ／Ｓｙ個とすることができる。すなわち、ｄ ％ Ｓｙ＝０となるように、ディザマトリクスＭの閾値レンジを調整することで、ノズル毎の合計ドット数を均一化することができる。本実施形態のように、ノズル毎の濃度ムラ補正が全階調を対象とする場合には、全階調でノズル毎の合計ドット数を均一化することが望ましい。
【００８８】
なお、ディザマトリクスのサイズに制限がある場合など、ノズル毎の合計ドット数は完全に一致できない場合もある。たとえば、階調によっては全体のドット数がディザマトリクスのｙ方向のサイズＳｙで割り切れず、ｙ位置毎の合計ドット数を揃えることができない場合がある。このような場合は、ｙ位置毎の合計ドット数の差は、１以下であるのが好適である。
【００８９】
本実施形態で出力された濃度測定用テストチャートは、各ノズルで形成されるドット数が均一になるように調整されたディザマトリクスを使用して、濃度測定用テストチャートのドットパターンを生成する。そのため、ノズル毎のインクの吐出数に偏りがなく、テストチャートの記録濃度からノズル毎の吐出特性に起因した濃度変動を精度よく測定することが可能となる。これにより、濃度測定データに基づく濃度ムラ補正の効果を向上することができる。
【００９０】
一方、ノズル毎の濃度ムラ補正パラメータを参照し、入力画像に対してノズル毎の濃度ムラ補正を施す場合にも各ノズルで形成されるドット数が均一になるように調整されたディザマトリクスは有効である。実際に印刷する場合には、濃度ムラ補正処理部１０７において、濃度ムラ補正パラメータを参照し、入力画像に対してノズル毎の濃度ムラ補正を施す。さらに、ハーフトーン処理部１０３では、ノズル位置毎の入力階調に対する出力ドット数が均一になるように調整されたディザマトリクスを使用して、ドットパターンを生成する。階調間のドットの増加数が一定（線形）であるため、ノズル毎の濃度ムラ補正量に対して、適切なドット数のディザパターンを生成し、記録画像の濃度ムラ補正効果を向上することができる。
【００９１】
そのため、ノズル毎の濃度ムラ補正パラメータの測定は、上述した濃度測定用テストチャートに限らず、その他の測定方法で作成した濃度ムラ補正パラメータを用いてノズル毎の濃度ムラ補正を施す場合であっても、記録画像の濃度ムラ補正効果を向上することができる。
【００９２】
［第３実施形態］
第２実施形態では、濃度ムラ補正の対象を全階調とした。第３実施形態では、濃度ムラ補正の対象を一部の階調に対してのみ行う場合を例に説明する。例えば、図９における低濃度であるＤ９およびＤ１０のパッチではほとんど濃度ムラが生じていない場合に、濃度Ｄ９より高濃度のみ濃度ムラ補正の対象としてもよい。この場合、濃度ムラ補正効果を向上するべき濃度範囲は、濃度Ｄ８〜Ｄ１（ここで濃度Ｄ１は最大濃度であるものとする）の範囲である。濃度ムラ補正処理部１０７は、入力画像における画素の画素値が、濃度Ｄ８以上であるか否かを判定する。画素値が濃度Ｄ８以上である場合は、濃度ムラ補正処理部１０７は、濃度ムラ補正パラメータを参照し、濃度ムラ補正を実行する。一方、画素値が濃度Ｄ８未満である場合は、濃度ムラ補正を実行せず、その画素値のまま出力する。
【００９３】
一方、低濃度部では、濃度ムラは目立たない代わりに、ドットの分散性が重視される場合がある。記録媒体に対して吐出されるドットが少ない場合は、複数のドットが近くに吐出されることで、ドットの塊があるように視認され、粒状感が低下してしまう。そこで第３実施形態では、入力画像に対してハーフトーン処理を実行する際に、ディザマトリクスを切り替えて適用する。処理対象の画素の画素値が濃度Ｄ８〜Ｄ１である場合には、第１実施形態と同様のディザマトリクス（Ｍ１）を用いる。また、処理対象の画素の画素値が濃度Ｄ９以上の低濃度部である場合は、ノズル毎のドットの生成頻度が均一になることを考慮せずに作成されたディザマトリクス（Ｍ２）を用いる。
【００９４】
ハーフトーン処理部１０３は、以下の処理を実行する。
Iin(x,y)≧Ｄ８
Iout(x,y)=BLACK if Iin(x,y) ＞ M1(x % Sx, y % Sy)
Iout(x,y)=WHITE if Iin(x,y) ≦ M1(x % Sx, y % Sy)
Iin(x,y)＜Ｄ８
Iout(x,y)=BLACK if Iin(x,y) ＞ M2(x % Sx, y % Sy)
Iout(x,y)=WHITE if Iin(x,y) ≦ M2(x % Sx, y % Sy)
ディマトリクスＭ２は、ドットを追加する際、またはドットを削除する際に、濃度変動ｎのみを参照しているため、図５に示すドット作成方法よりも、ドットの配置を決定する際に制約が少ない。従って、ドット分散性という観点のみにおいては、ディザマトリクスＭ２は、ディザマトリクスＭ１よりも良好である
以上の通り本実施形態では、濃度ムラ補正処理部は、画素値の濃度範囲に応じて濃度ムラ範囲を実行する。画素値が濃度ムラ補正処理を実行される濃度範囲である場合は、ノズル毎のドット数が均一になるように作成されたディザマトリクスを用いることで、濃度ムラ補正の効果を向上する。一方、画素値が濃度ムラ補正処理を必要としない濃度範囲では、より分散性を高めるディザマトリクスを用いる。
【００９５】
なお本実施形態では、ハーフトーン処理が参照するディザマトリクスを画素値に応じて切り替える構成とした。しかしながら、１つのディザマトリクスで第３実施形態と同様の効果を実現する方法もある。ディザマトリクスを作成する際に、階調値ｇに応じて合計ドット数マップを参照するか否かを判定する方法である。例えば、図５に示すフローチャートにおいて、Ｓ２０１〜Ｓ２０７のうち、階調ｇが所定値（例えば濃度Ｄ９）以下である場合には、Ｓ２０３を実行せず、Ｓ２０４において濃度変動ｎ（ｇ、ｘ、ｙ）のみを参照して、ドットを削除する位置を決定する。これにより、ディザマトリクスは、階調ｇが所定値以上である場合には、ｙ方向のサイズＳｙの整数倍の範囲では、ノズル毎の合計ドット数が均一になる。このように作成したディザマトリクスを用いてハーフトーン処理することでも、第３実施形態と同様の効果を得ることができる。
【００９６】
（その他の実施例）
なお上述の実施形態では、ディザマトリクスが疑似的に再現する階調数が２５６である場合を例に説明した。しかしながら、ディザマトリクスが疑似的に再現する階調数は、入力画像の階調数のうち離散的な階調のみとしてもよい。例えば、０〜２５５のうち、０、１５、３０、４５、６０、７５、９０、１０５、１２０、１３５、１５０、１６５、１８０、１９５、２１０、２２５、２４０、２５５の階調のみを疑似的に再現する場合、図５に示すノズル毎の合計ドット数の制約も、疑似的に再現する階調値のみに設定されることになる。この場合、ディザマトリクスのｙ方向のサイズは、疑似的に再現する階調数１８の倍数となるように、設定するとよい。
【００９７】
また、上述の実施形態では、ハーフトーン処理部がディザマトリクスを用いた比較処理を実行する方法を例に説明した。しかしながら、ディザマトリクスに応じてドットの配置を決定する方法に第１実施形態において作成されたディザマトリクスを適用することもできる。例えば、特開２０１６−０２１７３５に記載された方法に、上述で説明したディザマトリクスを用いても良い。
【００９８】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００９９】
１０…画像処理装置、２０…画像形成装置、１０２…入力画像バッファ、１０３…ハーフトーン処理部、１０４…ハーフトーン画像バッファ、２０２…ヘッド駆動部、２０３…記録ヘッド
【図１】
2020015303.tif 000003
【図２】
2020015303.tif 000004
【図３】
2020015303.tif 000005
【図４】
2020015303.tif 000006
【図５】
2020015303.tif 000007
【図６】
2020015303.tif 000008
【図７】
2020015303.tif 000009
【図８】
2020015303.tif 000010
【図９】
2020015303.tif 000011
【図１０】
2020015303.tif 000012