(57)【要約】      （修正有）【課題】出力データの階調数が少なくても高い階調特性や正確な濃度特性を有し、画像処理特性のキャリブレーションを可能にする。【解決手段】画像処理装置は、ハーフトーン処理ユニットにより参照されるルックアップテーブル(122)とを有し、ルックアップテーブル(122)において所定の変位ベクトル上に配置された同一インデックス画素群それぞれに対して当該同一インデックス画素群内で平面的に分散配置された複数の拡散ガンマテーブルが割り当てられ、当該複数の拡散ガンマテーブルの画像再生出力データの平均値が、前記同一インデックス画素群の仮想上の代表ガンマテーブルの出力階調値にほぼ一致する。更に、画像処理装置は、キャリブレーション処理時に、複数の拡散ガンマテーブルから生成される代表ガンマテーブルの出力階調値を、補正ガンマテーブルに基づいて補正して複数の補正拡散ガンマテーブルを生成するキャリブレーション手段(128)を有する。【選択図】  図１
2006033402.tif 000002
【特許請求の範囲】
【請求項１】
階調入力データから画像再生出力データを生成する画像処理装置において、
前記階調入力データを画素のドットサイズに対応する前記画像再生出力データに変換するハーフトーン処理ユニットと、
前記階調入力データに対応して画像再生出力データを有するガンマテーブルを、階調入力データの画素の位置に対応して複数有し、前記ハーフトーン処理ユニットにより参照されるルックアップテーブルとを有し、
前記ルックアップテーブルにおいて、所定の変位ベクトル上に配置された同一インデックス画素群それぞれに対して、当該同一インデックス画素群内で平面的に分散配置された複数の拡散ガンマテーブルが割り当てられ、当該複数の拡散ガンマテーブルは、前記階調入力データに対応して、少なくとも一部で異なる離散的な画像再生出力データを有し、当該複数の拡散ガンマテーブルの画像再生出力データの平均値が、前記同一インデックス画素群の仮想上の代表ガンマテーブルの出力階調値にほぼ一致し、
更に、キャリブレーション処理時に、前記複数の拡散ガンマテーブルから生成される代表ガンマテーブルの出力階調値を、補正ガンマテーブルに基づいて補正して補正代表ガンマテーブルを生成し、当該補正代表ガンマテーブルから複数の補正拡散ガンマテーブルを生成するキャリブレーション手段を有することを特徴とする画像処理装置。
【請求項２】
階調入力データから画像再生出力データを生成する画像処理装置において、
前記階調入力データを画素のドットサイズに対応する前記画像再生出力データに変換するハーフトーン処理ユニットと、
前記階調入力データに対応して画像再生出力データを有するガンマテーブルを、階調入力データの画素の位置に対応して複数有し、前記ハーフトーン処理ユニットにより参照されるルックアップテーブルとを有し、
前記ルックアップテーブルでは、所定の変位ベクトル上に配置された同一インデックス画素群それぞれに代表ガンマテーブルが割り当てられ、各代表ガンマテーブルはそれに対応する同一インデックス画素群内で平面的に分散配置された複数の拡散ガンマテーブルで構成され、当該複数の拡散ガンマテーブルは、前記階調入力データに対応して、前記代表ガンマテーブルの出力階調値の近傍にある離散的な画像再生出力データのうちいずれかを有し、
更に、キャリブレーション処理時に、前記複数の拡散ガンマテーブルから生成される代表ガンマテーブルの出力階調値を、補正ガンマテーブルに基づいて補正して補正代表ガンマテーブルを生成し、当該補正代表ガンマテーブルから複数の補正拡散ガンマテーブルを生成するキャリブレーション手段を有することを特徴とする画像処理装置。
【請求項３】
請求項１または２において、前記代表ガンマテーブルの出力階調値は所定数の離散値からなり、前記キャリブレーション手段は、前記補正代表ガンマテーブルの少なくとも一つの出力階調値に前記離散値間の値を与えることを特徴とする画像処理装置。
【請求項４】
請求項１または２において、前記キャリブレーション手段は、前記補正代表ガンマテーブルの出力階調値の近傍にある離散的な画像再生出力データを、前記拡散ガンマテーブルの数に応じて分配し、前記補正ガンマテーブルの出力データとして与えることを特徴とする画像処理装置。
【請求項５】
請求項１または２において、前記複数の拡散ガンマテーブルは、それに対応する同一インデックス画素群内においてランダムに分散配置されることを特徴とする画像処理装置。
【請求項６】
請求項１または２において、前記複数の拡散ガンマテーブルは、前記階調入力データに対応して、前記代表ガンマテーブルの出力階調値の近傍にある離散的な画像再生出力データのうちいずれかをランダムに有することを特徴とする画像処理装置。
【請求項７】
階調入力データから画素のドットサイズに対応する画像再生出力データを生成する画像処理プログラムにおいて、
前記階調入力データに対応して画像再生出力データを有するガンマテーブルを、階調入力データの画素の位置に対応して複数有するルックアップテーブルを参照して、前記階調入力データを前記画像再生出力データに変換するハーフトーン処理手順をコンピュータに実行させ、
前記ルックアップテーブルでは、所定の変位ベクトル上に配置された同一インデックス画素群それぞれに対して、当該同一インデックス画素群内で平面的に分散配置された複数の拡散ガンマテーブルが割り当てられ、当該複数の拡散ガンマテーブルは、前記階調入力データに対応して、少なくとも一部で異なる離散的な画像再生出力データを有し、当該複数の拡散ガンマテーブルの画像再生出力データの平均値が、前記同一インデックス画素群の仮想上の代表ガンマテーブルの出力階調値にほぼ一致し、
更に、前記複数の拡散ガンマテーブルから生成される代表ガンマテーブルの出力階調値を、補正ガンマテーブルに基づいて補正して補正代表ガンマテーブルを生成し、当該補正代表ガンマテーブルから複数の補正拡散ガンマテーブルを生成するキャリブレーション手順をコンピュータに実行させることを特徴とする画像処理プログラム。
【請求項８】
階調入力データから画素のドットサイズに対応する画像再生出力データを生成する画像処理プログラムにおいて、
前記階調入力データに対応して画像再生出力データを有するガンマテーブルを、階調入力データの画素の位置に対応して複数有するルックアップテーブルを参照して、前記階調入力データを前記画像再生出力データに変換するハーフトーン処理手順をコンピュータに実行させ、
前記ルックアップテーブルでは、所定の変位ベクトル上に配置された同一インデックス画素群それぞれに代表ガンマテーブルが割り当てられ、各代表ガンマテーブルはそれに対応する同一インデックス画素群内で平面的に分散配置された複数の拡散ガンマテーブルで構成され、当該複数の拡散ガンマテーブルは、前記階調入力データに対応して、前記代表ガンマテーブルの出力階調値の近傍にある離散的な画像再生出力データのうちいずれかを有し、
更に、前記複数の拡散ガンマテーブルから生成される代表ガンマテーブルの出力階調値を、補正ガンマテーブルに基づいて補正して補正代表ガンマテーブルを生成し、当該補正代表ガンマテーブルから複数の補正拡散ガンマテーブルを生成するキャリブレーション手順をコンピュータに実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、拡散ガンマテーブルを利用する画像処理装置及び画像処理プログラムに関し、特に、キャリブレーション時に拡散ガンマテーブルを補正する画像処理装置及び画像処理プログラムに関する。
【背景技術】
【０００２】
プリンタや複写機などの画像生成装置は、階調入力データを画素内のドットサイズを特定する画像再生出力データに変換する画像処理装置を有する。ホストコンピュータやスキャナーなどから出力される画素の階調入力データは、画素内の階調値を表す例えば８ビットのデータである。かかる階調によるハーフトーンを表現するために、印刷エンジンにより画素内に所定サイズのドットを形成し、平面的に所望の階調を表現する多値ディザ法が利用される。多値ディザ法によるハーフトーン処理部では、８ビット２５６階調の階調入力データを、画素内に形成するドットサイズを特定する８ビット２５６階調の画像再生出力データに変換し、パルス幅変調ユニットが画像再生出力データから駆動パルス信号を生成し、印刷エンジンが、その駆動パルス信号に基づいて画素内にドットを形成する。印刷エンジンの電子写真技術によれば、駆動パルスによりレーザを駆動し、駆動されたレーザビームにより感光体ドラム上に静電潜像を形成する。そして、形成された静電潜像に所望の色の現像材を付着させてドットを形成する。
【０００３】
上記のような画像処理装置については、例えば、特許文献１，２などに開示されている。
【０００４】
従来のハーフトーン処理は、例えば、８ビットの階調入力データに対して、８ビットまたはそれより少ないビット数の出力データに変換し、その出力データにより画素内のドットサイズが決められている。したがって、画像として再生される画素内のドットサイズは、出力データのビット数に対応する階調数を有し、階調数を高くするためには出力データのビット数を多くすることが望ましい。
【特許文献１】特開２０００−８５１８７号公報
【特許文献２】特開２０００−２２８７２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
近年において、コストダウンの要請から、ハーフトーン処理で生成される出力データのビット数を、例えば４ビットなど、より少なくして、その出力データから駆動パルス信号を生成するパルス幅変調ユニットの構成を簡単化することが望まれている。パルス幅変調ユニットは、入力されるデータのビット数が少ないほど、その回路構成が簡単になり、低コスト化を図ることができるからである。
【０００６】
しかしながら、出力データのビット数を少なくすると、出力データにより表現可能なドットサイズの階調数が少なくなり、再生される画素内のドットに、高い階調特性や正確な濃度特性を与えることができなくなる。例えば、出力データが８ビットであれば２５６階調を表現可能であるが、出力データが４ビットであると１６階調しか表現できず、階調特性が低くなり、濃度特性においても所望の濃度を再現できないことになる。
【０００７】
そこで、本発明の目的は、ハーフトーン処理で生成される画像再生用の出力データの階調数が少なくても高い階調特性や正確な濃度特性を有し、更に、画像処理特性のキャリブレーションを可能にする画像処理装置及び画像処理プログラムを提供することにある。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために、本発明の第１の側面によれば、階調入力データから画像再生出力データを生成する画像処理装置において、前記階調入力データを画素のドットサイズに対応する前記画像再生出力データに変換するハーフトーン処理ユニットと、前記階調入力データに対応して画像再生出力データを有するガンマテーブルを、階調入力データの画素の位置に対応して複数有し、前記ハーフトーン処理ユニットにより参照されるルックアップテーブルとを有する。そして、前記ルックアップテーブルにおいて、所定の変位ベクトル上に配置された同一インデックス画素群それぞれに対して、当該同一インデックス画素群内で平面的に分散配置された複数の拡散ガンマテーブルが割り当てられ、当該複数の拡散ガンマテーブルは、前記階調入力データに対応して、少なくとも一部で異なる離散的な画像再生出力データを有し、当該複数の拡散ガンマテーブルの画像再生出力データの平均値が、前記同一インデックス画素群の仮想上の代表ガンマテーブルの出力階調値にほぼ一致する。更に、画像処理装置は、キャリブレーション処理時に、前記複数の拡散ガンマテーブルから生成される代表ガンマテーブルの出力階調値を、補正ガンマテーブルに基づいて補正して補正代表ガンマテーブルを生成し、当該補正代表ガンマテーブルから複数の補正拡散ガンマテーブルを生成するキャリブレーション手段を有する。
【０００９】
上記第１の側面の変形例によれば、前記ルックアップテーブルは、所定の変位ベクトル上に配置された同一インデックス画素群それぞれに代表ガンマテーブルが割り当てられ、各代表ガンマテーブルはそれに対応する同一インデックス画素群内で平面的に分散配置された複数の拡散ガンマテーブルで構成され、当該複数の拡散ガンマテーブルは、前記階調入力データに対応して、前記代表ガンマテーブルの出力階調値の近傍にある離散的な画像再生出力データのうちいずれかを有する。
【００１０】
上記の第１の側面及びその変形例によれば、ハーフトーン処理部が生成する画像再生出力データの階調数を少なくしても、高階調性と高精度の出力濃度を再現して画質を上げることができ、更に、キャリブレーション時において、高階調性と高精度出力濃度の特性を損なうことなく、拡散ガンマテーブルを補正することができる。
【００１１】
上記の目的を達成するために、本発明の第２の側面によれば、画像処理プログラムは、階調入力データに対応して画像再生出力データを有するガンマテーブルを、階調入力データの画素の位置に対応して複数有するルックアップテーブルを参照して、画素の階調入力データを画素のドットサイズに対応する画像再生出力データに変換するハーフトーン処理手順をコンピュータに実行させる。そして、ルックアップテーブルは、上記第１の側面と同じである。更に、画商処理プログラムは、前記複数の拡散ガンマテーブルから生成される代表ガンマテーブルの出力階調値を、補正ガンマテーブルに基づいて補正して補正代表ガンマテーブルを生成し、当該補正代表ガンマテーブルから複数の補正拡散ガンマテーブルを生成するキャリブレーション手順をコンピュータに実行させる。
【発明を実施するための最良の形態】
【００１２】
以下、図面にしたがって本発明の実施の形態について説明する。但し、本発明の技術的範囲はこれらの実施の形態に限定されず、特許請求の範囲に記載された事項とその均等物まで及ぶものである。
【００１３】
［拡散ガンマテーブル］
図１は、本実施の形態における画像処理装置の構成図である。画像処理装置１００は、画素の階調入力データＩＮを画素のドットサイズに対応する画像再生出力データＯＵＴに変換するハーフトーン処理ユニット１１０と、階調入力データＩＮに対応して画像再生出力データＯＵＴを有する拡散ガンマテーブル１２４を、階調入力データの画素の位置（Ｘ，Ｙ）に対応して複数有するルックアップテーブル１２２とを有する。拡散ガンマテーブルについては後で詳述する。ルックアップテーブル１２２は、例えば高速のスタティックＲＡＭで構成され、画素の位置（Ｘ，Ｙ）に対応して参照すべきガンマテーブルを特定するインデックスIndexを有するインデックステーブル１２０と、複数の拡散ガンマテーブル１２４とを有する。ハーフトーン処理ユニット１１０は、画素位置（Ｘ，Ｙ）に応じて参照すべきインデックステーブル１２０の画素位置（ｘ、ｙ）を求め、その画素位置（ｘ、ｙ）に基づいてインデックステーブル１２０を参照する。そして、参照したインデックステーブル１２０のインデックス番号Indexに対応する拡散ガンマテーブル１２４を参照して、画像再生出力データＯＵＴを取得する。そして、ハーフトーン処理ユニット１１０は、取得した画像再生出力データＯＵＴを、パルス幅変調ユニット１３０に供給し、パルス幅変調ユニット１３０が駆動パルス幅信号ＰＷを生成し、図示しない印刷エンジンに供給する。印刷エンジンでは、駆動パルス幅信号ＰＷに基づいて、感光体ドラムにビームを照射し、感光体ドラム上に静電潜像を形成する。そして、この静電潜像にトナーを付着させてドットに現像し、記録用紙などの記録媒体上に転写する。したがって、画像再生出力データＯＵＴは、画素のドットサイズに関する印刷画像の再生用のデータである。なお、この画像再生出力データＯＵＴには、後述するとおり、画素内に生成するドットの位置が右寄せか左寄せかの情報Ｌ／Ｒが含まれ、以下に示す実施の形態では、右寄せか左寄せかの情報Ｌ／Ｒは、インデックステーブル１２０から出力される。
【００１４】
画像処理装置１００は、更に、ルックアップテーブルを管理するプロセッサ１２８と、あらかじめ最適に設計された通常拡散ガンマテーブルを格納するＲＯＭ１２６を有する。プロセッサ１２８は、電源投入時やその他要求された時に、ＲＯＭ内の通常拡散版間テーブルを、ＣＰＵバスＣ−ＢＵＳを介してＳＲＡＭにダウンロードして、ルックアップテーブル１２２を構築する。更に、プロセッサ１２８は、感光体ドラムが取り替えられた時や積算使用時間が所定時間を超えた時などに、印刷エンジンからの要求に応答して、キャリブレーション処理を実行する。キャリブレーション処理では、通常拡散ガンマテーブルを利用して、キャリブレーションパターンを感光体ドラム上に形成し、濃度センサによりそのパターン濃度を検出し、設計時の濃度特性からのずれを検出し、通常拡散ガンマテーブルを補正して、補正された拡散ガンマテーブルをルックアップテーブル１２２に格納する。キャリブレーション処置により、印刷エンジンの経年変化や感光体ドラムの特性変化に順応して、画質の劣化を防止することができる。
【００１５】
図２は、一般的なインデックステーブルとガンマテーブルとの関係を示す図である。ここに示されたインデックステーブル１２０は、１２×１２の画素マトリクスにそれぞれ参照すべきガンマテーブル番号１〜６が格納されている。インデックステーブル１２０は、太枠で囲った４×６の最小マトリクス単位の繰り返しであり、この最小マトリクス単位内に、ガンマテーブル１が２箇所、ガンマテーブル２が４箇所、ガンマテーブル３が２箇所、ガンマテーブル４が８箇所、ガンマテーブル５が４箇所、ガンマテーブル６が４箇所に配置されている。この最小マトリクス単位が繰り返されることで、ガンマテーブル１は、変位ベクトル（＋２，＋３），（＋２，−３），（−２，＋３），（−２，−３）の位置に繰り返し配置される。但し、図２中のインデックステーブル１２０の右側最上位置を座標（Ｘ，Ｙ）の原点とする。ガンマテーブル２は、Ｘ方向に隣接しており、変位ベクトル（＋２，＋３），（＋２，−３），（−２，＋３），（−２，−３）の位置に繰り返し配置される。他のガンマテーブルも同様に固有の変位ベクトル上に配置されている。
【００１６】
このように、共通の変位ベクトル上に配置される画素群には、同一のインデックス番号が与えられ、そのインデックス番号に対応するガンマテーブルが参照される。そこで、このように同じ変位ベクトル上に配置される画素群を、同一インデックス画素群と称することにする。
【００１７】
図２には、６種類のガンマテーブル１２４が示されている。ガンマテーブルは、入力階調値に対応して画像再生出力である出力パルス幅値を格納するものであり、図中、ガンマテーブル１は、低い入力階調値の領域で最小値から最大値に成長する出力パルス幅値を有する。ガンマテーブル２，３，４は、図示されるように、中間の入力階調値の領域で最小値から最大値に成長する出力パルス幅値を有し、ガンマテーブル５，６は、比較的高い入力階調値の領域で最小値から最大値に成長する出力パルス幅値を有する。
【００１８】
図３は、図２の例において入力階調値を増加した場合の画素のドットの成長を示す図である。上記のようなガンマテーブル及びインデックステーブル１２０によれば、入力階調値が増加するに応じて、入力階調値が低い領域（入力階調値１０、４０、９０）では、インデックス１の画素にドットが形成され（入力階調値１０）、続いてインデックス２の画素にドットが形成され（入力階調値４０）、そして、インデックス２の画素と平行してインデックス３の画素にドットが形成される（入力階調値９０）。つまり、入力階調値が低い領域では、インデックステーブル２０のインデックス１、２、３の画素にドットが順次成長する。そして、入力階調値が高い領域（入力階調値１５０，２２０，２５０）では、インデックス４の画素にドットが成長し（入力階調値１５０）、更に、それに続いてインデックス５、６の画素にドットが成長する（入力階調値２２０、２５０）。
【００１９】
したがって、入力階調値９０や１５０の成長ドットに示されるように、インデックス１の画素を結ぶ線上にスクリーン線が形成されることになる。別の言葉でいうと、インデックス１の変位ベクトルがスクリーン線を特定することになる。
【００２０】
図２のガンマテーブル１２４は、８ビットの入力階調値に対して８ビットの出力パルス幅を有する。したがって、２５６階調の入力に対して２５６階調（０〜２５５）の出力を有する。そのため、入力階調値の階調の変化に対応して、ガンマテーブルの出力階調値も必要に応じて変化させることができる。ところが、出力パルス幅データが６ビットの場合は、出力は６４階調（０〜６３）しか取りえず、入力階調値の階調の変化に対応して、ガンマテーブルの出力階調値を変化させることができない場合がある。ましてや、出力パルス幅データが４ビットの場合は、その出力は１６階調（０〜１５）しかなく、入力階調値の階調変化に対応して出力階調値を変化させることができない場合が更に増える。更に、出力データのビット数が少なくなるとその階調がより離散的になり、再現できるドットサイズの階調解像度が低下する。
【００２１】
図４は、ガンマテーブルの入力階調値の変化に対する出力階調値の変化量を示す図である。図２に示したガンマテーブルについて、（Ａ）出力データが８ビットの場合、（Ｂ）出力データが６ビットの場合、（Ｃ）出力データが４ビットの場合において、入力階調値が１階調変化した時の６つのガンマテーブルの出力データの合計階調値の差分（変化量）を示している。図４（Ａ）（Ｂ）（Ｃ）において、上段がガンマテーブルを、下段が合計出力階調値の差分を示す。
【００２２】
図４（Ａ）の８ビットの出力データの場合は、そのガンマテーブル１２４は図２のガンマテーブル１２４と同じである。この場合、入力階調値が１階調変化する時の出力パルス幅の差分は、全て０階調以外であり、入力階調値の２５５回の階調変化に対して合計出力パルス幅も２５５回にわたり階調変化している。したがって、入力階調値の変化に対して忠実に変化する出力パルス幅値を出力データとして生成することができる。
【００２３】
図４（Ｂ）の６（M=6）ビットの出力データの場合は、それぞれのガンマテーブル１〜６の出力の最小幅は255/(2M-1)＝４であり、上段のガンマテーブル１２４によれば、出力パルス幅の離散値の間が図４（Ａ）の場合に比較して荒くなっていることがわかる。そのため、入力階調値の２５５回の階調変化に対して、合計出力パルス幅は、４４回にわたり階調変化ゼロになり、２１１回しか階調変化していない。
【００２４】
更に、図４（Ｃ）の４（M=4）ビットの出力データの場合は、それぞれのガンマテーブル１〜６の出力の最小幅は255/(2M-1)＝１７であり、上段のガンマテーブル１２４によれば、出力パルス幅の離散値の間が図４（Ａ）や（Ｂ）の場合に比較して更に荒くなっている。そのため、入力階調値の２５５回の階調変化に対して、合計出力パルス幅は、わずか８２回しか階調変化しておらず、実に１７３回にわたり階調変化ゼロになる。しかも、出力パルス幅の差分は、大部分で０または１７であり、高入力階調値領域では出力パルス幅の差分が３４になる場合もある。
【００２５】
つまり、出力データのビット数を減らして出力データの階調数を減らした結果、出力パルス幅の差分がゼロになる回数が増大し、更に、変化した場合でもその差分量が大きくなる。このことは、入力階調値の２５５階調数に対して、出力パルス幅の階調数は大幅に減り且つ差分も大幅に大きくなることを意味し、高い階調特性と正確な濃度特性が損なわれることを意味する。
【００２６】
図５は、出力階調が４ビットの場合におけるガンマテーブルの拡大図である。この図では、実線がガンマテーブルＧの入出力特性であり、縦軸には出力パルス幅が８ビット（２５６階調）の場合の階調値で表示されている。前述したとおり、４ビットの出力階調の最小幅は１７であるから、その採りうる離散点は、８ビット（２５６階調）の場合の０，１７，３４，５１，６８，８５，１０２，１１９，１３６，１５３，１７０，１８７，２０４，２２１，２３８，２５５である。図５の縦軸には、その一部の出力離散点１５３，１７０，１８７が示される。実線で示したガンマテーブルＧは、８ビットであれば四角Ｗ，Ｘ，Ｙで示した点の階調値が出力データとして出力されるが、４ビットの場合は、１５３，１７０，１８７の離散点のみしか採りえないので、黒丸で示した階調値が出力データとして出力される。例えば、８ビット出力では四角Ｘは出力階調値１６１になるところ、４ビットではその近傍の黒丸の出力階調値１５３（４ビット表示では１００１＝９）になる。つまり、４ビットの出力データでは、より離散的になり、８ビットの出力データの階調値と一致させることができなくなる。更に、一方では、８ビットの出力データで四角Ｗ，Ｘの出力階調値１４５と１６１とは、４ビットの出力データでは同じ出力階調値１５３になり、その出力階調値の差分はゼロであるが、他方では、８ビットの出力データで四角Ｘ，Ｙの出力階調値１６１と１６７とは、４ビットの出力データでは１５３と１７０になり、その出力階調値の差分は１７になる。したがって、４ビットの出力階調値では、入力階調値の変化に対して差分ゼロになる場合もあれば、入力階調値の変化に対して期待される出力階調値の差分とは異なる大きな差分になる場合もある。
【００２７】
図６は、本実施の形態における拡散ガンマテーブルの原理を説明する図である。拡散ガンマテーブルの原理によれば、８ビット出力の場合の四角Ｘに対して、その四角Ｘの出力階調値１６１の近傍にある４ビット出力の離散点Ｘ１（出力階調値１５３）、Ｘ２（出力階調値１７０）を複数の拡散ガンマテーブルに割り当てて、離散点Ｘ１とＸ２をもつ拡散ガンマテーブルの個数を最適化して、それらの平均出力階調値が四角Ｘの１６１に最も近くなるようにする。たとえば、離散点Ｘ１を５個、離散点Ｘ２を４個にすると、それら９個の離散点の出力階調値の平均値は、（１５３×５＋１７０×４）／９＝１６０．５５と、四角Ｘの出力階調値１６１に近い値になる。このように、４ビット出力のように離散幅が大きな出力階調値しか採り得ない場合であっても、複数の画素に異なる離散値Ｘ１，Ｘ２を割り当てることによってガンマテーブルＧの四角Ｘの出力階調値に極めて近い階調値を表現することができる。ここで、ガンマテーブルＧを代表ガンマテーブルと、異なる離散値を有するテーブルを拡散ガンマテーブルと、それぞれ称する。
【００２８】
図７は、代表ガンマテーブルＧに複数の拡散ガンマテーブルＧ１，Ｇ２，Ｇ３を割り当てた場合の例を示す図である。この例では、表示を簡単化するために、代表ガンマテーブルＧに３つの拡散ガンマテーブルＧ１，Ｇ２，Ｇ３を割り当てている。拡散ガンマテーブルＧ１は、代表ガンマテーブルＧの四角（例えばＸ）の近傍に位置する４ビットの離散点（例えばＸ１，Ｘ２）のうち白丸の離散点（例えばＸ２）をとり、代表ガンマテーブルＧの近傍で上下に変化する出力値を有する。同様に、拡散ガンマテーブルＧ２は、近傍の４ビット離散点のうち三角の離散点をとり、拡散ガンマテーブルＧ３は、近傍の４ビット離散点のうち菱形の離散点をとる。一例として四角Ｘは、２個の離散点Ｘ１と１個の離散点Ｘ２に拡散または分散されている。この場合の平均値は、（１５３×２＋１７０×１）／３＝１５８．７となる。このように、拡散または分散する拡散ガンマテーブルの数を増やすことにより、その出力階調値の平均値を代表ガンマテーブルＧの出力階調値により近づけることができる。
【００２９】
そして、図２のインデックステーブルに示されるように、画素マトリクスの所定の領域内には同じ代表ガンマテーブルＧをとる画素が複数存在するので、その複数の画素の代表ガンマテーブルＧを異なる拡散ガンマテーブルに割り当てることで、当該所定の領域内において、平面的に理想的な代表ガンマテーブルの出力階調値を表現することができる。この複数の拡散ガンマテーブルの配置は、分散されれば良いが、好ましくは、規則的よりも不規則にまたはランダムに分散されることが良い。また、各拡散ガンマテーブルが採る離散値は、代表ガンマテーブルＧの出力階調値の近傍の４ビット離散値のいずれかをとれば良いが、好ましくは、近傍の４ビット離散値のいずれかをランダムに採るようにする。
【００３０】
図１７は、本実施の形態における代表ガンマテーブルから拡散ガンマテーブルを生成するフローチャート図である。図６、図７で説明した方法をまとめると次のとおりである。ある代表ガンマテーブルＧについて、入力階調値ＩＮに対応する出力パルス幅Ｘを取得する（Ｓ１２）。図６の例では、Ｘ＝１６１である。そして、目標値である出力パルス幅Ｘ＝１６１に対する隣接離散点ｘｌ＝１７０，ｘｓ＝１５３を、拡散数Ｎ＝３個に分配し、ｘｌとｘｓの分配数Ｌ＝１、Ｎ−Ｌ＝２を求める。このｘｌの分配数Ｌは、例えば、
Ｌ＝ＩＮＴ［｛（Ｘ−ｘｓ）／（ｘｌ−ｘｓ）｝×Ｎ＋0.5］
により求めることができる。ここで、ＩＮＴ［  ］は切り捨て処理を示す。上記の例にあてはめれば、
Ｌ＝ＩＮＴ［｛（161−153）/（170−153）｝×３＋0.5］＝１
となる。そして、Ｎ＝３個の拡散ガンマテーブルに対して、Ｌ＝１個には離散値ｘｌ＝１７０を、Ｎ−Ｌ＝２個には離散値ｘｓ＝１５３を、ランダムに与える。また、Ｎ＝３個の拡散ガンマテーブルの配置もランダムに決定される。
【００３１】
そして、拡散されたＮ＝３個の拡散ガンマテーブルのＬ＝１個の出力値ｘｌ＝１７０とＮ−Ｌ＝２個の出力値ｘｓ＝１５３との平均値ｘは、
ｘ＝｛ｘｌ×Ｌ＋ｘｓ×（Ｎ−Ｌ）｝／Ｎ＝１５８．７
になる。拡散数Ｎを増やすことで、平均値ｘの精度を高めることができる。
【００３２】
図８は、本実施の形態における代表ガンマテーブルを有する同一インデックス画素群を示す図である。ここに示したインデックステーブル１２０は、図８中の対応表１２１Ａに示したように、図２のインデックステーブル１２０のインデックス番号１〜６を、新たなインデックス番号０〜１１に変換した例であり、新たなインデックス番号の偶数０，２，４，６，８，１０は、画素内のドットを左寄せし、その奇数１，３，５，７，９，１１は、画素内のドットを右寄せする画素に対応付けられ、インデックス番号の偶数／奇数の情報Ｌ／Ｒが、パルス幅変調ユニットへの画像再生出力データＯＵＴに加えられる。したがって、図８のインデックステーブルの左上の４×６のマトリクス内には、インデックス番号０，２，３，４，６，７，８，９，１０，１１が割り当てられているが、そのインデックス番号０には図２のガンマテーブル１が、インデックス番号２，３には、ガンマテーブル２が、インデックス番号４，５にはガンマテーブル３が、以下、６，７にはガンマテーブル４が、８，９にはガンマテーブル５が、１０，１１にはガンマテーブル６がそれぞれ参照される。
【００３３】
さて、図８において、変位ベクトル（±２、±３）の位置に配置されるインデックス番号０の同一インデックス画素群は、図示されるように、左上の４×６の小さい画素マトリクス内には２個配置され、図８の１６×１８の画素マトリクス内には２４個配置されている。そこで、本実施の形態では、このインデックス番号０の同一インデックス画素群の代表ガンマテーブル０に、複数（９種類）の拡散ガンマテーブルを割り当てる。しかも、複数の拡散ガンマテーブルを同一インデックス画素群内で平面的に分散させ、好ましくはランダムに分散配置する。
【００３４】
図９は、本実施の形態による拡散ガンマテーブルに対するインデックステーブルを示す図である。本実施の形態では、図１２で後述するような広い画素マトリクス（３２×３０画素マトリクス）内に配置されるインデックス０の同一インデックス画素群８０個を、９種類の拡散マトリクスに割り当てている。図９のインデックステーブル１２０Ａには、その一部の画素マトリクスのみが示される。図９中の下に示される対応表１２１Ｂには、図２、図８、図９のインデックス番号の対応が示されている。図８のインデックス０の画素群に対しては、拡散ガンマテーブルのインデックス番号０，１２，２４，３６，４８，６０，７２，８４，９６が割り当てられる。しかも、その割り当て方は、平面的にランダムな配置にされている。図８の他のインデックス番号の同一インデックス画素群に対しても、同様に９種類または８種類の拡散ガンマテーブルがそれぞれ割り当てられる。その割り当てられた拡散ガンマテーブルのインデックス番号が対応表１２１Ｂに示されている。
【００３５】
図１０は、図９に示した拡散ガンマテーブルが採りうる出力階調値の一例を示す図である。図６で示した四角Ｘの出力階調値１６１に対して、４ビット離散点Ｘ１（出力階調値１５３）と離散点Ｘ２（出力階調値１７０）とが、拡散ガンマテーブル０，１２，２４，３６，４８，６０，７２，８４，９６にランダムに割り当てられている。ここに表れている２４個の画素の代表ガンマテーブル０に対応付けられる９種類の拡散ガンマテーブルのうち、１３個の拡散ガンマテーブルには離散点Ｘ１（出力階調値１５３）が、１０個の拡散ガンマテーブルには離散点Ｘ２（出力階調値１７０）がランダムに割り当てられている。その割り当て比を概算すると１３：１０＝５：４である。このように、代表ガンマテーブルに割り当てられた複数の拡散ガンマテーブルの配置をランダムにし、その拡散ガンマテーブルに対して代表ガンマテーブルの出力階調値の近傍の離散点もランダムに割り当てることで、代表ガンマテーブルの出力階調値１６１に極めて近似する階調値を空間的に表現することができる。図９に示した他の拡散ガンマテーブルについても、それぞれ対応する代表ガンマテーブルの出力階調値近傍の４ビット離散点がランダムに割り当てられる。
【００３６】
図１１は、８ビット出力の代表ガンマテーブルのインデックステーブルとその代表ガンマテーブルの一例を示す図である。このインデックステーブル１２０は、図８のインデックステーブル２０と同じであり、画素サイズが３２×３０に拡大されている。図８でも説明したとおり、インデックステーブル１２０内のインデックス０（代表ガンマテーブル０）の同一インデックス画素群は、同じ変位ベクトル（±３，±４）の位置に配置されている。画素マトリクス３２×３０内には、インデックス０の同一インデックス画素は、合計で８０個存在する。そして、その代表ガンマテーブル０は、図１１中の黒四角に示されるように、入力階調の増加に伴って８ビット出力パルス幅を有する。この代表ガンマテーブル０を単純に４ビット出力パルス幅に変更すると、図１１中の白四角に示されるように、離散的な値しかとりえないようになる。
【００３７】
図１１には、代表ガンマテーブル０のインデックス０に加えて、代表ガンマテーブル２，３，４，６，７，８，９，１０，１１のインデックスも含まれる。これら同一のインデックスの画素群も、それぞれ同じ変位ベクトル上の位置に配置されている。
【００３８】
図１２は、本実施の形態による拡散ガンマテーブルに対するインデックステーブルとガンマテーブルとを示す図である。このインデックステーブル１２０Ａは、図９のインデックステーブル１２０Ａと同じであり、画素サイズが３２×３０に拡大されている。図中、代表ガンマテーブル０に対応するインデックス０の画素群に対して、ハーフトーンで表示している。そして、図１１内の８０個の同一インデックス画素群（インデックス０）に、９種類の拡散ガンマテーブルを割り当てている。つまり、代表ガンマテーブル０は、９個の拡散ガンマテーブル０，１２、８個の拡散ガンマテーブル１２４、９個の拡散ガンマテーブル３６，４８，６０，７２，８４，９６に分散または拡散される。インデックステーブル１２０Ａ内には、他の代表ガンマテーブルに対しても複数の拡散ガンマテーブルのインデックス番号が割り当てられている。
【００３９】
図１２に示した拡散ガンマテーブル１２４には、９種類の拡散ガンマテーブルの４ビット出力パルス幅がプロットされている。つまり、破線で示した代表ガンマテーブルＧに対して、その出力値に隣接する４ビット離散値Ｘ１，Ｘ２が拡散ガンマテーブルの出力値として割り当てられている。つまり、９種類の拡散ガンマテーブルの出力値に離散値Ｘ１，Ｘ２のいずれかを割り当てる。したがって、離散値Ｘ１，Ｘ２に対して、合計で９種類の拡散ガンマテーブルが割り当てられることになる。この離散値は、代表ガンマテーブルＧの出力値に近接する単数のまたは複数の４ビット離散値であり、それらの離散値が、平均すると代表ガンマテーブルの出力値に近似するように、複数の拡散ガンマテーブルに割り当てられる。
【００４０】
図１３、図１４、図１５は、図１２の９種類の拡散ガンマテーブルの配置及び具体的テーブル値を示す図である。図１３には、拡散ガンマテーブル０，１２，２４のインデックステーブル内の配置とテーブル値が、図１４には、同テーブル３６，４８，６０のインデックステーブル内の配置とテーブル値が、図１５には、同テーブル７２，８４，９６のインデックステーブル内の配置とテーブル値がそれぞれ示される。インデックステーブルのインデックス番号はフォントサイズが小さくて判別困難であるが、図１２と同じである。しかし、図１３〜図１５のインデックステーブルによれば、ランダムに拡散配置された各拡散ガンマテーブルの位置と数が確認できる。また、拡散ガンマテーブルのテーブル値は４ビット離散値を有するが、この例では、破線の代表ガンマテーブルの出力値に近接する上下２つの離散値のいずれかが各拡散ガンマテーブルに割り当てられている。したがって、図１３〜図１５の拡散ガンマテーブルにより、入力階調値０〜２５までの各階調値において、各拡散ガンマテーブルが上下のいずれの離散値を有するかが確認できる。つまり、図７に示した拡散ガンマテーブルと同様であり、９種類の拡散ガンマテーブルは、破線の代表ガンマテーブルの出力値に近似する離散値を出力値として有し、その離散値の割り当ての割合を制御することで、拡散ガンマテーブルの出力値の平均値が代表ガンマテーブルの出力値にきわめて近くなる。
【００４１】
上記の説明から、本実施の形態におけるルックアップテーブルは、もはや代表ガンマテーブルをもたず、代表ガンマテーブルに変えて複数の拡散ガンマテーブルを有する。その意味からすると、同一インデックス画素群には、仮想的な代表ガンマテーブルが割り当てられ、その仮想上の代表ガンマテーブルが複数の拡散ガンマテーブルを有することになる。そして、その複数の拡散ガンマテーブルの出力値の平均が、代表ガンマテーブルの出力値に近似する。
【００４２】
図１６は、図１１と図１２のガンマテーブルと入力階調値の変化に対する出力パルス幅の差分とを示す図である。図４と同じ種類の図である。図１６（Ａ）は、図１１に示した代表ガンマテーブル０，２，３，４，６，７，８，９，１０，１１と、入力階調値の変化に対する合計出力パルス値の差分を示す。つまり、図４（Ａ）と同じであり、２５５回の全ての入力階調値の変化に対して合計出力パルス値が変化している。
【００４３】
一方、図１６（Ｂ）は、図１２に示した拡散ガンマテーブルと、入力階調値の変化に対する合計出力パルス値の差分を示す。つまり、図９の対応表１２１Ｂに示されるように、代表ガンマテーブル０は、拡散ガンマテーブル０〜９６に拡散され、代表ガンマテーブル２，３は、拡散ガンマテーブル２〜９８，３〜８７に拡散され、代表ガンマテーブル４は、拡散ガンマテーブル４〜１００に拡散され、代表ガンマテーブル６，７は、拡散ガンマテーブル６〜１０２，７〜１０３に拡散され、代表ガンマテーブル８，９は、拡散ガンマテーブル８〜１０４，９〜１０５に拡散され、代表ガンマテーブル１０，１１は、拡散ガンマテーブル１０〜１０６，１１〜１０７に拡散される。
【００４４】
図１６（Ｂ）に示されるように、複数の拡散ガンマテーブルに拡散または分散させることで、出力値が４ビット離散値であっても、平均出力値は代表ガンマテーブルと同等にすることができる。その結果、入力階調値の変化に対して、合計の出力パルス幅差分は２５５段階全てで変化し、その差分の傾向は、図１６（Ａ）と同じである。但し、縦軸のスケールは、図１６（Ａ）の４０に対して、図１６（Ｂ）ではその９倍の３６０になっている。
【００４５】
図１６（Ｃ）は、（Ｂ）の９種類の拡散ガンマテーブルの平均値に変換したテーブルと、その場合の入力階調値の変化に対する出力パルス幅の差分が示される。平均値にすると、そのガンマテーブルは、図１６（Ａ）の代表ガンマテーブルと殆ど同じであることが理解できる。また、出力パルス幅の差分は、図１６（Ｂ）と縦軸のスケールのみが異なるだけであり、図１６（Ａ）の縦軸と同じスケール、同じ差分になっている。この図１６（Ｃ）で確認できることは、各代表ガンマテーブルを複数の拡散ガンマテーブルに拡散または分散することで、第１に、低ビット化され出力階調数が少なくても、代表ガンマテーブルにきわめて近い出力値を再現することができ（ガンマテーブル参照）、第２に、低ビット化され出力階調数が少なくても、２５５の高い階調特性を得ることもできる（出力パルス幅差分参照）。したがって、ハーフトーン処理ユニットが低ビット化された画像再生出力データに変換しても、高ビットの出力データと同等に高精度の濃度特性と、高階調特性とを有することができる。
【００４６】
上記の実施の形態では、８ビットの入力階調データに対して４ビットの出力パルス幅データに変換するに際して、代表ガンマテーブルを複数の拡散ガンマテーブルに拡散または分散させている。つまり、代表ガンマテーブルの出力が８ビット、２５６階調であるのに対して、拡散ガンマテーブルの出力はそれより少ない４ビット、１６階調である。そのような場合でも、複数の拡散ガンマテーブルに拡散または分散することで、高階調特性、高精度濃度特性を実現する。本実施の形態はそれに限定されずに、拡散ガンマテーブルを利用して、８ビットの入力階調データに対して８ビットの出力パルス幅データに変換する場合においても、各代表ガンマテーブルをそれと同じ８ビット出力データを有する複数の拡散ガンマテーブルに拡散または分散させることで、画質を向上させることができる。この場合は、８ビットの代表ガンマテーブルでは表現できない高階調の出力濃度を表現することができる。つまり、８ビットの代表ガンマテーブルでは、２５６階調しか表現できないが、複数の拡散ガンマテーブルに拡散または分散させることで、２５６階調以上の階調特性を出力データに与えることができる。但し、１つの代表ガンマテーブルを複数の拡散ガンマテーブルに置き換える必要があり、ガンマテーブルのメモリ容量を増大させることになる。その場合は、例えば、共通の代表ガンマテーブルに加えて、それとの差分値のみを少ないビット数で有する拡散ガンマテーブルを複数設けることで、全体のメモリ容量の増大を抑制することができる。それ以外にも、ハーフトーン処理ユニットが、代表ガンマテーブルの出力データにランダムに差分値を与えて拡散ガンマテーブルの出力データとして出力するようにしてもよい。
【００４７】
図１の画像処理構成図では、ハーフトーン処理ユニット１１０がルックアップテーブル１２２を参照して画像再生出力データＯＵＴ，Ｌ／Ｒを出力する。しかし、かかる変換処理は、マイクロプロセッサによるソフトウエア処理によっても行うことができる。その場合、プロセッサが、入力階調データＩＮと画素位置情報（Ｘ，Ｙ）に基づいて、ルックアップテーブル１２２を格納した高速メモリを参照して、入力階調データＩＮを画像再生出力データＯＵＴ，Ｌ／Ｒを生成する。
【００４８】
［キャリブレーション処理］
以上説明したとおり、ルックアップテーブルに拡散ガンマテーブルを利用することにより、少ない階調数の出力データであっても画質低下を抑制することができ、出力データの階調数が少なくない場合は、更に高い画質を提供することができる。かかる拡散ガンマテーブルは、図１に示したように、設計時において最適化されたものがＲＯＭ１２６内に格納される。しかし、印刷エンジンの積算使用時間が所定時間を超えたり、感光体ドラムが取り替えられたりすると、印刷エンジンが設計時の特性とは異なる特性を有することになり、キャリブレーション処理が必要になる。しかし、拡散ガンマテーブルを直接補正することは補正後の画質を悪化して適切ではない。
【００４９】
図１８は、本実施の形態におけるキャリブレーション処理のフローチャート図である。また、図１９は、キャリブレーション処理におけるテーブル間の関係を示す図である。本実施の形態では、図１に示したプロセッサ１２８が、キャリブレーション要求に応答して（Ｓ３０）、ＲＯＭ内の通常拡散ガンマテーブルを、代表ガンマテーブルを介して補正し、補正拡散ガンマテーブルを生成し、ルックアップテーブル１２２に格納する。まず、プロセッサ１２８は、ＲＯＭ内の通常拡散ガンマテーブルを参照して所定のキャリブレーションパターンを図示しない印刷エンジン内の感光体ドラムに形成する（Ｓ３２）。そして、プロセッサ１２８は、印刷エンジン内の光学濃度センサによりキャリブレーションパターンの濃度を検出させ、その検出濃度データを印刷エンジンから受信する（Ｓ３４）。プロセッサ１２８は、検出濃度データに基づいて補正ガンマテーブル２０２を生成する（Ｓ３８）。
【００５０】
図２０は、検出濃度データと補正ガンマテーブルの一例を示す図である。検出濃度データ２００は、入力階調値に対するセンサ出力値を有する。なお、センサ出力値は、紙上の濃度に正規化されている。この例では、入力階調に対して理想的なリニアな濃度特性ではなく、低入力階調で濃度が急激に上昇し、最大入力階調に達するまえに最大濃度になっている。つまり、出力濃度が理想特性より高くなっている。したがって、設計時のガンマテーブルを、その出力パルス幅を小さくするように補正する必要がある。図中の補正ガンマテーブルＣ−ＧＴは、検出濃度データ２００のＸ軸とＹ軸とを反転したものである。つまり、補正ガンマテーブルＣ−ＧＴは、Ｘ軸が補正後のガンマテーブルの入力階調を示し、Ｙ軸が当該入力階調に対して与えるべき出力パルス幅を有する被補正ガンマテーブルの入力階調値（補正階調値）を示す。この補正ガンマテーブルによる補正方法については、後の説明で明らかにする。
【００５１】
図２０には、補正ガンマテーブルの拡大図Ｃ−ＧＴ（Ａ）が示されている。この補正ガンマテーブルの拡大図Ｃ−ＧＴ（Ａ）には、Ｘ軸の０〜３０におけるＹ軸（補正階調値）が示されている。この例では、Ｘ軸が２４にて、Ｙ軸の補正階調値（参照すべき設計ガンマテーブルの入力階調値）が１になっている。そこで、Ｘ軸の１〜２３に対して、Ｙ軸の補正階調値を補間演算で求めた実数（少数を含む数）にする。例えば、０．０４，０．０９などであり、つまり離散的な整数値の間の値である。これにより、補正ガンマテーブルは、高精度の補正特性を有する。
【００５２】
図１８、図１９に戻り、プロセッサ１２８は、ＲＯＭ内に格納されている通常拡散ガンマテーブルＲ−ＤＧＴから通常代表ガンマテーブルＲ−ＲＧＴを生成する（Ｓ３８）。通常代表ガンマテーブルＲ−ＲＧＴは、対応する複数の拡散ガンマテーブルの出力階調値の平均を求めることにより得られる。
【００５３】
図２１は、通常拡散ガンマテーブルＲ−ＤＧＴとその代表ガンマテーブルＲ−ＲＧＴとを示す図である。この例は、図１６（Ｂ）（Ｃ）に示された拡散ガンマテーブルと代表ガンマテーブルとに対応する。図２１の通常拡散ガンマテーブルは、６つの代表ガンマテーブルを拡散して生成された６群の通常拡散ガンマテーブルを有する。各拡散ガンマテーブルＲ−ＤＧＴは、その出力パルス幅データが４ビット、１６階調になっている。そして、通常拡散ガンマテーブルＲ−ＤＧＴの平均値を求めて得られた６つの代表ガンマテーブルＲ−ＲＧＴは、その出力パルス幅データは８ビット、２５６階調になっている。
【００５４】
図１８、図１９に戻り、プロセッサ１２８は、通常代表ガンマテーブルＲ−ＲＧＴを補正ガンマテーブルＣ−ＧＴに基づいて補正し、補正代表ガンマテーブルＣ−ＲＧＴを生成する（Ｓ４０）。この補正処理は、入力階調値０〜２５５それぞれにおいて、補正ガンマテーブルＣ−ＧＴを参照し、その出力である補正階調値（図２０）を読み出し、当該補正階調値を入力階調とする時の通常代表ガンマテーブルＲ−ＲＧＴの出力パルス値を取得する。補正階調値が整数の離散値間の小数点付きであれば、直線補間により出力パルス値を求める。そのため、求められた出力パルス値は、小数点付きの実数になることがある。この出力パルス値が、補正代表ガンマテーブルＣ−ＲＧＴの出力データになる。以下、図を参照して説明する。
【００５５】
図２２は、代表ガンマテーブルの補正方法を説明する図である。図２２の第１象限には、通常代表ガンマテーブルＲ−ＲＧＴと、補正された補正代表ガンマテーブルＣ−ＲＧＴが示されている。第４象限には、補正ガンマテーブルＣ−ＧＴが示され、Ｘ軸が入力、Ｙ軸が出力（補正階調値）に対応し、上下反転している。第３象限には、通常代表ガンマテーブルＲ−ＲＧＴが第１象限と原点対象に与えられている。第２象限は、Ｘ軸の値をそのままＹ軸に変換するだけである。
【００５６】
図２２では、入力階調ｉａ，ｉｂに対する補正出力パルス値ｐａ，ｐｂが求められる。入力階調ｉａに対応して補正ガンマテーブルＣ−ＧＴを参照すると、補正階調値ｉｘａが得られる。そこで、補正階調値ｉｘａを入力階調として通常代表ガンマテーブルＲ−ＲＧＴを参照すると、出力パルス値ｐａが得られる。この出力パルス値ｐａが、第１象限に示すように補正出力パルス値となる。次に入力階調ｉｂに対応して補正ガンマテーブルＣ−ＧＴを参照すると、整数の離散値ｉｘｎ、ｉｘｎ＋１の間の実数ｉｘｂが得られたとする。補正ガンマテーブルＣ−ＧＴが整数からなる離散値の間の少数付き実数を有することは前述のとおりである。この場合は、離散値ｉｘｎ，ｉｘｎ＋１に対応する出力パルス値ｐｎ，ｐｎ＋１を通常代表ガンマテーブルＲ−ＲＧＴから取得し、離散値ｉｘｎ、ｉｘｎ＋１とその間の実数ｉｘｂとによる直線補間演算により、補間された出力パルス値ｐｂを求める。この出力パルス値ｐｂは小数を有する実数である。そして、実数の出力パルス値ｐｂが、補正出力パルス値として補正代表ガンマテーブルＣ０ＲＧＴに与えられる。このように、補正ガンマテーブルに実数をもたせることで、補正代表ガンマテーブルに実数の補正出力パルス値を持たせることができる。そして、拡散ガンマテーブルを利用することにより、かかる実数の補正出力パルス値も再現することができる。以上のように、補正処理Ｓ４０では、プロセッサ１２８は、各通常代表ガンマテーブルにつき、入力階調０〜２５５に対して、各テーブルの参照と直線補間演算とを繰り返して、補正出力パルス値を求める処理を繰り返す。
【００５７】
図２３は、補正代表ガンマテーブルＣ−ＲＧＴと補正拡散ガンマテーブルＣ−ＤＧＴとを示す図である。補正代表ガンマテーブルＣ−ＲＧＴに示されるように、図２２に示した補正方法により、６つの代表ガンマテーブルが補正されている。図２１の補正前の通常代表ガンマテーブルＲ−ＲＧＴに比較すると、補正後の代表ガンマテーブルＣ−ＲＧＴはやや傾きが大きくなり、やや右側に移動した特性になっている。つまり、図２０のセンサ出力特性２００では、理想特性よりやや高濃度に変化しているので、補正された結果、出力パルス値が抑えられることになる。
【００５８】
図１８，図１９に戻り、プロセッサ１２８は、補正代表ガンマテーブルＣ−ＲＧＴから、補正拡散ガンマテーブルＣ−ＤＧＴを求める（Ｓ４２）。この処理は、図１７のフローチャート図の処理と同じである。つまり、補正代表ガンマテーブルの入力階調値ＩＮに対応する補正出力パルス幅Ｘ（図２２ではｐａ，ｐｂ）を取得し（Ｓ１２）、それに隣接する離散点ｘｌ、ｘｓを、拡散数Ｎ個に分配し、分配数Ｌ個、（Ｎ−Ｌ）個を求め（Ｓ１４）、Ｎ個の補正拡散ガンマテーブルの出力パルス値として、離散点ｘｌ、ｘｓをランダムに与える（Ｓ１６）。この処理を、全ての入力階調値ＩＮ＝０〜２５５に対して繰り返す。そして、プロセッサ１２８は、求めた補正拡散ガンマテーブルＣ−ＤＧＴをＳＲＡＭのルックアップテーブルメモリに格納する（Ｓ４４）。この補正拡散ガンマテーブルＣ−ＤＧＴの例が、図２３に示される。
【００５９】
本実施の形態では、キャリブレーション処理で、インデックステーブル１２０は変更しない。したがって、Ｎ個の拡散ガンマテーブルの配置に変更はない。但し、上記の通り、拡散ガンマテーブルの出力パルス値が、補正代表ガンマテーブルの出力パルス値ｐａ，ｐｂに対応して補正される。出力パルス値ｐｂが少数を含む実数であっても、Ｎ個の拡散ガンマテーブルＣ−ＤＧＴに拡散することで、かかる実数を再現することができる。このキャリブレーション処理は、プロセッサ１２８がキャリブレーションプログラムを実行することにより行われる。つまり、プロセッサ１２８がキャリブレーション手段に対応する。
【００６０】
上記の実施の形態において、画像処理装置１００内のＲＯＭに通常代表ガンマテーブルが格納されていてもよい。その場合は、プロセッサ１２８は、ＲＯＭ内の通常代表ガンマテーブルを補正し、補正された代表ガンマテーブルから補正拡散ガンマテーブルを生成する。
【００６１】
以上のとおり、本実施の形態のキャリブレーション処理によれば、設計時の通常拡散ガンマテーブルがメモリ内に格納されている場合に、それから通常代表ガンマテーブルを求めて、補正ガンマテーブルにより補正し、再度補正拡散ガンマテーブルに戻している。したがって、正しくガンマテーブルの補正を行うことができる。そして、補正ガンマテーブルの参照出力値に実数を与え、その実数を利用して補正代表ガンマテーブルの出力パルス値を実数で求めているので、より精度の高い補正を行うことができる。
【図面の簡単な説明】
【００６２】
【図１】本実施の形態における画像処理装置の構成図である。
【図２】一般的なインデックステーブルとガンマテーブルとの関係を示す図である。
【図３】図２の例において入力階調値を増加した場合の画素のドットの成長を示す図である。
【図４】ガンマテーブルの入力階調値の変化に対する出力階調値の変化量を示す図である。
【図５】出力階調が４ビットの場合におけるガンマテーブルの拡大図である。
【図６】本実施の形態における拡散ガンマテーブルの原理を説明する図である。
【図７】代表ガンマテーブルＧに複数の拡散ガンマテーブルＧ１，Ｇ２，Ｇ３を割り当てた場合の例を示す図である。
【図８】本実施の形態における代表ガンマテーブルを有する同一インデックス画素群を示す図である。
【図９】本実施の形態による拡散ガンマテーブルに対するインデックステーブルを示す図である。
【図１０】図９に示した拡散ガンマテーブルが採りうる出力階調値の一例を示す図である。
【図１１】８ビット出力の代表ガンマテーブルのインデックステーブルとその代表ガンマテーブルの一例を示す図である。
【図１２】本実施の形態による拡散ガンマテーブルに対するインデックステーブルとガンマテーブルとを示す図である。
【図１３】図１２の９種類の拡散ガンマテーブルの配置及びテーブル値を示す図である。
【図１４】図１２の９種類の拡散ガンマテーブルの配置及びテーブル値を示す図である。
【図１５】図１２の９種類の拡散ガンマテーブルの配置及びテーブル値を示す図である。
【図１６】図１１と図１２のガンマテーブルと入力階調値の変化に対する出力パルス幅の差分とを示す図である。
【図１７】本実施の形態における代表ガンマテーブルから拡散ガンマテーブルを生成するフローチャート図である。
【図１８】本実施の形態におけるキャリブレーション処理のフローチャート図である。
【図１９】キャリブレーション処理におけるテーブル間の関係を示す図である。
【図２０】検出濃度データと補正ガンマテーブルの一例を示す図である。
【図２１】通常拡散ガンマテーブルＲ−ＤＧＴとその代表ガンマテーブルＲ−ＲＧＴとを示す図である。
【図２２】代表ガンマテーブルの補正方法を説明する図である。
【図２３】補正代表ガンマテーブルＣ−ＲＧＴと補正拡散ガンマテーブルＣ−ＤＧＴとを示す図である。
【符号の説明】
【００６３】
１１０：ハーフトーン処理ユニット、１２０： インデックステーブル
１２２：ルックアップテーブル、１２８：プロセッサ、１３０：パルス幅変調ユニット
ＩＮ：階調入力データ、（Ｘ，Ｙ）：画素位置
ＯＵＴ：画像再生出力データ、Ｌ／Ｒ：右寄せ・左寄せ情報
【図１】
2006033402.tif 000003
【図２】
2006033402.tif 000004
【図３】
2006033402.tif 000005
【図４】
2006033402.tif 000006
【図５】
2006033402.tif 000007
【図６】
2006033402.tif 000008
【図７】
2006033402.tif 000009
【図８】
2006033402.tif 000010
【図９】
2006033402.tif 000011
【図１０】
2006033402.tif 000012
【図１１】
2006033402.tif 000013
【図１２】
2006033402.tif 000014
【図１３】
2006033402.tif 000015
【図１４】
2006033402.tif 000016
【図１５】
2006033402.tif 000017
【図１６】
2006033402.tif 000018
【図１７】
2006033402.tif 000019
【図１８】
2006033402.tif 000020
【図１９】
2006033402.tif 000021
【図２０】
2006033402.tif 000022
【図２１】
2006033402.tif 000023
【図２２】
2006033402.tif 000024
【図２３】
2006033402.tif 000025