以下に、図面を参照しながら、本発明に係る画像形成装置、階調補正方法およびプログラムの実施形態を詳細に説明する。また、以下の実施形態によって本発明が限定されるものではなく、以下の実施形態における構成要素には、当業者が容易に想到できるもの、実質的に同一のもの、およびいわゆる均等の範囲のものが含まれる。さらに、以下の実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換、変更および組み合わせを行うことができる。
(画像形成装置の全体構成)
図1は、実施形態に係る画像形成装置の全体構成の一例を示す図である。図1を参照しながら、本実施形態に係る画像形成装置1の全体構成について説明する。
図1に示す本実施形態に係る画像形成装置1は、多階調の入力画像に基づいて、複数の濃度値を切り替えて設定可能な画素を用いて階調を表現する多値ディザ法により画像を形成する画像形成装置である。画像形成装置1の作像エンジン部は、イエロー(Y)、マゼンタ(M)、シアン(C)、ブラック(K)のトナー像を形成するための4つの画像形成ユニットを備えている。また、図1に示すように、画像形成装置1は、中間転写ベルト16と、駆動ローラ17と、ベルトテンションローラ19と、二次転写ローラ20と、二次転写対向ローラ21と、レジストローラ対22と、定着装置23と、クリーニングバックアップローラ27と、ベルトクリーニング装置28と、を備えている。
4つの画像形成ユニットは、互いに異なる色のY、M、C、Kのトナーを用いるが、それ以外は同様の構成になっている。なお、4つの画像形成ユニットは、共通の保持体に保持して画像形成装置1本体に対して一体的に脱着されることで、同時に交換されるような構成であってもよい。
ここで、Cトナー像を形成するC用の画像形成ユニットを例にして、その構成を説明する。C用の画像形成ユニットは、図1に示すように、感光体ドラム11Cと、帯電ローラ12Cと、書き込みレーザ光13Cと、現像装置14Cと、一次転写ローラ15Cと、ドラムクリーニング装置18Cと、を含む。
感光体ドラム11Cは、潜像担持体として機能するドラムである。感光体ドラム11Cは、図示しない駆動手段によって図1に示す矢印方向に回転駆動され、帯電バイアスが印加された帯電ローラ12Cに接触または近接しながら、帯電ローラ12Cとの間で発生する放電によって、表面が一様に帯電される。なお、感光体ドラム11Cを一様に帯電させる方式としては、帯電ローラ12Cのような帯電部材を感光体ドラム11Cに接触または近接させる方式に代えて、帯電チャージャによる方式を採用するものとしてもよい。
帯電ローラ12Cは、回転駆動する感光体ドラム11Cに対して、帯電バイアスを印加することにより、感光体ドラム11Cの表面を一様に帯電させるローラである。
書き込みレーザ光13Cは、図示しない光書込ユニットから発せられ、帯電した感光体ドラム11Cの表面にC用の静電潜像を形成するレーザ光である。この光書込ユニットは、例えば、光源としてレーザダイオードと、レーザダイオードをパルス幅変調(PWM:Pulse Width Modulation)方式で駆動するレーザ駆動部と、を有し、形成対象の入力画像の画像情報に基づいて制御される。レーザ駆動部は、例えば、後述するプリンタコントローラ100から送られてくる露光制御PWM値と、感光体ドラム11C上の1画素分の領域に書き込みレーザ光13Cを照射可能な時間が1周期に設定された所定の画素クロックとに基づいて、レーザダイオードを駆動する。露光制御PWM値は、各画素ごとに、画素クロックの1周期にうち1画素分の領域に書き込みレーザ光13Cを照射する時間を指定する値であり、各画素における濃度値に応じて設定される値である。各画素の露光制御PWM値は、スキャナコントローラ110またはPC(Personal Computer)等の外部機器から送られてくる画像情報に基づいて、多値ディザ法により生成される。この光書込ユニットからの書込みレーザ光13Cは、例えば、入力画像の画像情報に基づいて画像部と非画像部とを分けて感光体ドラム11Cの表面の主走査方向に光走査される。
現像装置14Cは、感光体ドラム11Cに担持(形成)されたC用の静電潜像を現像する装置である。
一次転写ローラ15Cは、感光体ドラム11Cに現像されたC用のトナー像を中間転写ベルト16上に一次転写するローラである。一次転写ローラ15C、15M、15Y、15Kは、それぞれ、無端移動する中間転写ベルト16を感光体ドラム11C、11M、11Y、11Kとの間に挟み込んでいる。これによって、中間転写ベルト16の表面と、感光体ドラム11C、11M、11Y、11Kとが当接するC、M、Y、K用の一次転写ニップが形成されている。一次転写ローラ15Cは、図示しない一次転写バイアス電源によって一次転写バイアスが印加されている。これによって、感光体ドラム11C上のC用のトナー像と、一次転写ローラ15Cとの間に一次転写電界が形成される。C用の感光体ドラム11Cの表面に形成されたYのトナー像は、感光体ドラム11Cの回転に伴ってC用の一次転写ニップに進入する。そして、一次転写電界およびニップ圧の作用により、感光体ドラム11C上から中間転写ベルト16上に一次転写される。なお、一次転写ローラ15M、15Y、15Kに形成されたトナー像についても、同様に、中間転写ベルト16に一次転写される。
ドラムクリーニング装置18Cは、一次転写の工程を経た後、感光体ドラム11Cの表面に付着している転写残トナーを除去する装置である。
なお、M、Y、K用の画像形成ユニットの構成は、上述のようなC用の画像形成ユニットの構成と同様である。
中間転写ベルト16は、無端状のベルトであって、駆動ローラ17、ベルトテンションローラ19、二次転写対向ローラ21、クリーニングバックアップローラ27、一次転写ローラ15C、15M、15Y、15K等によって張架されている。そして、中間転写ベルト16は、駆動ローラ17による回転駆動により、無端移動され、上述のように、感光体ドラム11C、11M、11Y、11Kに形成されたトナー像が一次転写される。具体的には、感光体ドラム11YからY用のトナー像が一次転写された後、C、M、K用の一次転写ニップを順次通過し、感光体ドラム11Yから一次転写されたY用のトナー像の上に順次重ね合わせられて一次転写される。この重ね合わせの一次転写により、中間転写ベルト16上には4色の重ね合わせトナー像が形成される。
二次転写ローラ20は、中間転写ベルト16に形成された4色の重ね合わせトナー像を、印刷媒体(用紙等)に二次転写(印刷)するローラである。二次転写ローラ20は、中間転写ベルト16のループ外側方向に、中間転写ベルト16を介して加圧されて配設されており、ループ内側の二次転写対向ローラ21との間に中間転写ベルト16を挟み込んでいる。これによって、二次転写ローラ20は、中間転写ベルト16または印刷媒体(用紙等)に接触しながら回転し、一次転写ローラ15の表面と二次転写対向ローラ21とが当接する二次転写ニップが形成される。二次転写ローラ20は、接地されているのに対し、二次転写対向ローラ21は、図示しない二次転写バイアス電源によって二次転写バイアスが印加される。これによって、二次転写ローラ20と二次転写対向ローラ21との間に、マイナス極性のトナーを二次転写対向ローラ21側から二次転写ローラ20側へ向けて静電移動させる二次転写電界が形成される。
レジストローラ対22は、図示しない給紙カセットから搬送されてきた印刷媒体(用紙等)を上述の二次転写ニップに送り出すローラである。給紙カセットには、用紙が複数枚重ねた紙束の状態で収容されているこの給紙カセットは、紙束の一番上の用紙に図示しない給紙ローラを当接させており、この給紙ローラを所定のタイミングで回転駆動させることにより、用紙が搬送経路25へ向けて送り出される。レジストローラ対22は、搬送経路25の末端付近に配設されており、給紙カセットから送り出された用紙をローラ間に挟み込むと、すぐに両ローラの回転を停止させる。そして、レジストローラ対22は、挟み込んだ用紙を二次転写ニップ内で中間転写ベルト16上に形成された4色の重ね合わせトナー像に同期させるタイミングで回転駆動を再開して、用紙を二次転写ニップに向けて送り出す。二次転写ニップで用紙に密着された中間転写ベルト16上の4色の重ね合わせトナー像は、二次転写電界およびニップ圧、ならびに二次転写電界の作用によって、用紙上に二次転写され、用紙の白色と相まってフルカラートナー像となる。このようにして表面にフルカラートナー像が形成された用紙は、二次転写ニップを通過すると、二次転写ローラ20および中間転写ベルト16から曲率分離する。
定着装置23は、用紙の搬送経路における二次転写ニップの後段側に配設され、用紙に二次転写されたフルカラートナー像に対して、加熱および加圧することによって、トナーを軟化させ、フルカラー画像を用紙上に定着させる装置である。定着装置23は、ハロゲンランプ等の発熱源を内包する定着ローラと、これに所定の圧力で当接しながら回転する加圧ローラと、によって定着ニップを形成する。定着装置23内に搬送された用紙は、定着ニップにおける加熱および加圧の影響によってフルカラートナー像中のトナーが軟化されて、フルカラー画像が用紙上に定着される。定着装置23から排出された用紙は、画像形成装置1外へと排紙される。
ベルトクリーニング装置28は、二次転写ニップを通過した中間転写ベルト16に付着している残トナーを除去してクリーニングする装置である。
(画像形成装置のハードウェア構成)
図2は、実施形態に係る画像形成装置のハードウェア構成の一例を示す図である。図2を参照しながら、本実施形態に係る画像形成装置1のハードウェア構成について説明する。
図2に示すように、画像形成装置1は、プリンタコントローラ100と、スキャナコントローラ110と、プリンタ装置120(印刷部)と、スキャナ装置130(読取部)と、入出力装置140と、外部I/F150と、を備えている。上述の各ユニットは、バス160を介して互いに通信可能に接続されている。
プリンタコントローラ100は、プリンタ装置120による印刷動作を制御するコントローラである。プリンタコントローラ100は、CPU(Central Processing Unit)101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、I/F104と、記憶装置105と、を有する。
CPU101は、プリンタコントローラ100の動作全般について制御する演算装置である。CPU101は、ROM102に記憶されたプログラムを実行し、RAM103をワークエリアとして用いて、プリンタコントローラ100全体の動作を制御する。
I/F104は、バス160を介して、スキャナコントローラ110、プリンタ装置120、スキャナ装置130、入出力装置140、および外部I/F150と、データ通信を行うためのインターフェースである。I/F104は、例えば、プリンタ装置120の印刷制御のための指令の送信、および印刷データの転送、ならびに、スキャナコントローラ110を介してスキャナ装置130の読取制御、および読取データの受信等を行うために用いられる。また、I/F104は、入出力装置140の表示内容の制御、および入力データの受信等を行うためにも用いられる。
記憶装置105は、制御コード、フォントデータ、後述するディザマトリクスのデータ、およびディザパターン情報等を記憶する装置である。記憶装置105は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、またはフラッシュメモリ等によって構成される。
スキャナコントローラ110は、スキャナ装置130による読み取り動作を制御するコントローラである。スキャナコントローラ110は、読込データ生成装置111と、色変換装置112と、I/F113と、記憶装置114と、を有する。
読込データ生成装置111は、スキャナ装置130により読み取られたRGBの光三原色の測色値を基に、デジタル画像(TIFF(Tagged Image File Format)、JPEG(Joint Photographic Experts Group)等)(読取画像)を生成する装置である。読込データ生成装置111により生成された読取画像のデータは、外部I/F150を介して外部機器に送信されたり、I/F113を介してプリンタコントローラ100に送信される。
色変換装置112は、スキャナ装置130により読み取られたRGBの光三原色の値をCMYの色三原色およびK色のデータ等に変換する処理を行う装置である。この処理は読込データ生成装置111による読取画像の生成の際に用いられたり、後述する階調補正用パッチの読み込み値の変換等に用いられる。
I/F113は、バス160を介して、プリンタコントローラ100、プリンタ装置120、スキャナ装置130、入出力装置140、および外部I/F150と、データ通信を行うためのインターフェースである。I/F113は、例えば、スキャナ装置130の読取制御のための指令の送信、および読み取りデータの受信等を行うために用いられる。また、I/F113は、入出力装置140の表示内容の制御、入力データの受信、外部装置への画像データの送信、および機器の状況の伝達等にも用いられる。
記憶装置114は、読込データ生成装置111により生成さた読取画像等を記憶する装置である。記憶装置114は、例えば、HDD、SSD、またはフラッシュメモリ等によって構成される。
プリンタ装置120は、プリンタコントローラ100からの指令に従って、印刷媒体(用紙等)への印刷動作(画像形成処理)を行う装置である。プリンタ装置120は、印刷装置121と、I/F122と、を有する。
印刷装置121は、外部装置またはプリンタコントローラ100から転送された印刷データに基づいて、印刷媒体へ印刷処理を行う装置である。
I/F122は、バス160を介して、プリンタコントローラ100、スキャナコントローラ110、スキャナ装置130、入出力装置140、および外部I/F150と、データ通信を行うためのインターフェースである。I/F122は、例えば、外部装置またはプリンタコントローラ100からの印刷データの受信等を行うために用いられる。
スキャナ装置130は、スキャナコントローラ110からの指令に従って、スキャナトレイに配置された画像が印刷された印刷媒体を読み込む装置である。スキャナ装置130は、読取装置131と、I/F132と、を有する。
読取装置131は、画像が印刷された印刷媒体を読み込みRGBの光三原色の値を取得する装置である。
I/F132は、バス160を介して、プリンタコントローラ100、スキャナコントローラ110、プリンタ装置120、入出力装置140、および外部I/F150と、データ通信を行うためのインターフェースである。I/F132は、例えば、スキャナ装置130により読み取られた読取データを、スキャナコントローラ110へ送信する。
入出力装置140は、データを入出力するための装置である。入出力装置140は、入力装置141と、出力装置142と、I/F143と、を有する。
入力装置141は、例えば、テンキーまたは専用キー等のユーザが操作入力およびデータ入力を行うための装置である。出力装置142は、例えば、LCD(Liquid Crystal Display)、または有機EL(Electro-Luminescence)ディスプレイ等の表示装置である。なお、入力装置141および出力装置142は、双方の機能を併せ持つタッチパネルディスプレイで実現されるものとしてもよい。
I/F143は、バス160を介して、プリンタコントローラ100、スキャナコントローラ110、プリンタ装置120、スキャナ装置130、および外部I/F150と、データ通信を行うためのインターフェースである。I/F143は、例えば、入力装置141により入力されたデータの送信、および、出力装置142に表示させるための表示データの受信等を行うために用いられる。
外部I/F150は、画像形成装置1の外部の装置との間でデータ通信を行うためのインターフェースである。外部I/F150は、例えば、外部装置から印刷データを受信し、プリンタコントローラ100へ転送する。
なお、図2に示した画像形成装置1のハードウェア構成は一例を示すものであり、その他の構成要素を含むものとしてもよい。
(画像形成装置の機能ブロックの構成)
図3は、実施形態に係る画像形成装置の機能ブロックの構成の一例を示す図である。図3を参照しながら、本実施形態に係る画像形成装置1の機能ブロックの一例について説明する。
図3に示すように、画像形成装置1は、パターン情報取得部201(情報取得部)と、階調数算出部202と、パッチサイズ算出部203(サイズ算出部)と、パッチ生成部204と、パッチ印刷制御部205(印刷制御部)と、読込制御部206と、パッチ分離部207と、特性取得部208と、ドット特性算出部209と、階調特性算出部210と、補正マトリクス生成部211と、記憶部212と、入力部213と、通信部214と、を有する。
パターン情報取得部201は、後述する成長ステップ階調の数、階層レベル数、ベースマトリクス数、集約ディザマトリクス(ディザマトリクス)およびディザサイズ等を含むディザパターン情報(ディザ情報)を取得する機能部である。パターン情報取得部201は、例えば、記憶部212に記憶されたディザパターン情報を取得、または、通信部214を介して外部からディザパターン情報を取得する。なお、ディザパターン情報(ディザ情報)は、上述の情報をすべて含むものとは限らず、例えば、集約ディザマトリクス(ディザマトリクス)は、ディザパターン情報とは別の情報として取得されるものとしてもよい。
ここで、上述のベースマトリクスおよび階層レベル数について、図4を参照しながら説明する。図4は、ベースマトリクスを説明する図である。
図4に示すそれぞれ異なるハッチングで示された領域は、プリンタ装置120が印刷媒体(以下、単に用紙として説明する)に印刷する場合に疑似的に濃度の濃淡を疑似的に表現するためのドットを作り出す元となるディザパターンを構成する単位領域であり、これをベースマトリクスと称するものとする。図4に示す各ベースマトリクスを構成するドット内に記載された番号は、当該ベースマトリクス全体としての濃度を濃くする場合に、ドットの階調を変更する順番を示す成長順位を示す。図4に示す例では、各ベースマトリクスは、32個のドットで構成されているので、上述の成長順位として0~31が割り当てられている。また、図4に示すように、各ペースマトリクスを構成する各ドットの成長順位は、共通である。すなわち、特定のベースマトリクス内の特定の位置のドットの番号と、異なるベースマトリクス内の同一の位置のドットの番号とは同一となる。また、ドットの階調を変更するためには、例えば、1ドットの露光量を1ビット、2ビットまたは4ビット等で表現することにより、段階的な露光量の変更によってドットの濃淡表現が可能となる。そして、この濃淡(露光量)の各段階を階層レベルと称し、各ドットで表現可能な階層レベルの数を階層レベル数と称するものとする。例えば、1ビットの場合は1段階、2ビットの場合は最大で3段階、4ビットの場合は最大で15段階の階層レベル数で濃淡表現が可能となる。また、例えば、階層レベル数が3(すなわち2ビット)の場合、図4に示す1つのベースマトリクスが表現可能な濃度の階調数は、(ベースマトリクス内のドット数)×(階層レベル数)=32×3=96[階調]となる。
次に、上述の集約ディザマトリクスおよびディザサイズについて、図5および図6を参照しながら説明する。図5は、集約ディザマトリクスの一例を示す図である。図6は、ペースマトリクスの成長順を示すベースマトリクス順位情報の一例を示す図である。
図5に示すように、図4に示すベースマトリクスを周期的に配置したものが集約ディザマトリクスである。図5に示す例では、ベースマトリクスを32個含む集約ディザマトリクス501を示している。この集約ディザマトリクスを単位として、濃淡の階調が段階的に切り替えて表現される。この集約ディザマトリクスのサイズを、ディザサイズと称するものとする。
また、上述の成長順位についてはドットに対するものだけではなく、図6に示すように、ベースマトリクス単位でも成長順位が割り当てられている。この集約ディザマトリクスにおける各ベースマトリクスに割り当てられた成長順位の情報を、ベースマトリクス順位情報と称するものとする。図6に示すベースマトリクス順位情報502は、図5に示した集約ディザマトリクス501に対応するベースマトリクス順位情報である。図5に示す集約ディザマトリクス501では、32個のベースマトリクスで構成されているので、図6に示すように、ベースマトリクスの成長順位として0~31が割り当てられている。
上述した図5に示す集約ディザマトリクス501では、96階調の濃度表現が可能なベースマトリクスを32個含むので、集約ディザマトリクス501全体として表現可能な濃度の階調数は、(ベースマトリクスが表現可能な濃度の階調数)×(ベースマトリクス数)=96×32=3072[階調]となる。なお、上述のベースマトリクス順位情報は、集約ディザマトリクスの情報に含まれるものとしてもよく、または、集約ディザマトリクスとは別の情報として管理されるものとしてもよい。
次に、上述の成長ステップ階調について、図7を参照しながら説明する。図7は、成長ステップ階調を説明する図である。
図7では、階層レベル数を3(すなわち2ビット)とし、32個のベースマトリクスを周期的に配置した上述の集約ディザマトリクス501を用いて、すべてのベースマトリクスについて一様に成長させた場合の濃度の状態を示している。実際には、上述のように各ベースマトリクスにも成長順位が割り当てられているわけだが、図7では、すべてのベースマトリクスにおいて同位置のドットが一様に成長した場合の階調を示しており、この場合の階調を成長ステップ階調と称するものとする。すなわち、各成長ステップ階調における1ドットの成長は同一である。この成長ステップ階調の数(ステップ数)は、上述したベースマトリクスが表現可能な濃度の階調数と同じであり、96ステップである。すなわち、図7では、1~96ステップの各成長ステップ階調の状態を示している。
ここで、階調の変更による濃度特性について、1ステップ、2ステップ、3ステップのように、同じドットについての露光量の変更では、階層レベルによって露光量が異なる等の理由で、0ステップ(紙白)→1ステップ、1ステップ→2ステップ、2ステップ→3ステップ間の成長特性が異なる場合がある。また、2ステップ、5ステップ、・・・、89ステップ、92ステップ、95ステップのように、同じ階層レベルの成長でも、周囲のドットの埋められ方の違いによって周囲のドットの帯電の影響、および、隣接するドットのトナー潰れの影響等を受けて、各成長ステップ階調で成長特性が異なる場合もある。
ここで、集約ディザマトリクスを用いた場合における各成長ステップ階調の濃度特性について説明する。図8は、ディザ濃度特性グラフの一例を示す図である。ディザ濃度特性グラフは、集約ディザマトリクスを用いた場合における各成長ステップ階調において測色した場合の濃度のグラフである。図8に示すグラフにおいて、横軸は各成長ステップ階調(ステップ)であり、縦軸は濃度を示す。このうち、図8(a)は、0ステップ(紙白)から96ステップまでの濃度のグラフを示し、図8(b)は、このうち0ステップ~12ステップの範囲を拡大したグラフである。図8(b)に示すように、各成長ステップ階調において濃度特性にばらつきがあることがわかる。
従来の自動階調補正では、1枚の用紙に印字できるパッチ数が限られているので、例えば、6ステップおきの間隔で階調補正用のパッチを配した階調補正シートを用い、各パッチ間の階調の濃度特性については、図8(b)に示す破線のグラフのように補間して求めるものとしていた。しかし、実際には、図8(b)に示すように、各成長ステップ階調において濃度特性にばらつきがあるため、補間した濃度特性も実際の濃度特性とは異なっている場合がある。そのため、自動階調補正の結果に影響を与えてしまい、階調性が悪くなる場合がある。この階調性への悪影響を解消するための本実施形態の自動階調補正についての詳細は、後述する。
図4に戻り、画像形成装置1の機能ブロックの説明を続ける。
階調数算出部202は、パターン情報取得部201により取得されたディザパターン情報を用いて、成長ステップ階調の数を算出する機能部である。例えば、ディザパターン情報に成長ステップ階調の数が含まれる場合、階調数算出部202は、ディザパターン情報から成長ステップ階調の数を抽出するものとすればよい。一方、ディザパターン情報に成長ステップ階調の数が含まれておらず、ペースマトリクスのドット数が含まれる場合、階調数算出部202は、ベースマトリクスのドット数に、階層レベル数を乗じることによって、成長ステップ階調の数を算出することができる。階調数算出部202により算出された成長ステップ階調の数は、後述する階調補正用パッチに含まれるパッチ数となる。
パッチサイズ算出部203は、印刷媒体である用紙のサイズまたは印刷可能範囲と、階調数算出部202により算出された成長ステップ階調の数とから、各成長ステップ階調に対応するパッチのサイズを算出する機能部である。
パッチ生成部204は、パッチサイズ算出部203により算出された各成長ステップ階調のパッチのサイズにより当該各成長ステップ階調の濃度のパッチを生成し、生成した各パッチを連結した階調補正用パッチの印刷データを生成する機能部である。
パッチ印刷制御部205は、パッチ生成部204により生成された階調補正用パッチの印刷データにより、プリンタ装置120に対して用紙に印刷させる機能部である。
ここで、上述の各成長ステップ階調のパッチ、および階調補正用パッチについて、図9~図11を参照しながら説明する。図9は、階調補正用の各ステップのパッチの一例を示す図である。図10は、階調補正用パッチの一例を示す図である。図11は、2列に分離した階調補正用パッチの一例を示す図である。
図9に示す各パッチ601は、上述の図7に示した各成長ステップ階調の有効ドットを反映したパッチの画像であり、パッチサイズ算出部203により算出された同一のサイズとなっている。パッチ生成部204は、図9に示す各成長ステップ階調のパッチ601を連結して、図10に示すような階調補正用パッチ611を生成する。この階調補正用パッチ611の印刷データが、実際にプリンタ装置120により印刷されることになる。また、パッチ生成部204は、図10に示すように、階調補正用パッチ611の濃度が濃い側に隣接してダミーパッチ612を生成し、印刷データに含める。ダミーパッチ612は、パッチサイズ算出部203により算出されたサイズのパッチであり、濃度を取得するためのパッチではないダミーのパッチである。このダミーパッチ612は、後述する読込制御部206により生成された階調補正用パッチ611の読込画像から、パッチサイズ算出部203により算出されたサイズでパッチ分離部207により各成長ステップ階調のパッチを分離するために、階調補正用パッチ611の下端を検出するために利用される。すなわち、パッチ分離部207は、後述するように、まず、階調補正用パッチ611の下端に隣接するダミーパッチ612を検出することによって、階調補正用パッチ611の分離開始位置を検出する。また、ダミーパッチ612の濃度は、例えば、100%とすればよい。
また、各成長ステップ階調が多く、階調補正用パッチに含まれる各パッチのサイズが規定のサイズより下回る場合、すなわち、パッチサイズ算出部203により算出された各成長ステップ階調に対応するパッチのサイズが規定のサイズより下回る場合、パッチ生成部204は、図11に示すように、連結した階調補正用パッチを2列に分離して、階調補正用パッチ621a、621bを生成するようにしてもよい。この場合、階調補正用パッチ621aの濃度が濃い側(下端)に隣接してダミーパッチ622aを生成し、階調補正用パッチ621bの濃度が濃い側(下端)に隣接してダミーパッチ622bを生成すればよい。
図4に戻り、画像形成装置1の機能ブロックの説明を続ける。
読込制御部206は、パッチ印刷制御部205の制御に基づいてプリンタ装置120により印刷された階調補正用パッチの用紙をスキャナ装置130により読み込ませる機能部である。読込制御部206は、図2に示すスキャナコントローラ110により実現(スキャナコントローラ110で実行されるプログラムにより実現)される。
パッチ分離部207は、読込制御部206の制御に基づいてスキャナ装置130により読み込まれた階調補正用パッチの読取画像について、階調補正用パッチに隣接するダミーパッチ(例えば図10に示すダミーパッチ612)を検出することによって分離開始位置を検出し、当該位置からパッチサイズ算出部203により算出されたサイズごとに各パッチに分離する機能部である。
ここで、パッチ分離部207により分離されたパッチは、理想的には、各成長ステップ階調に対応したパッチとなるが、正確に各成長ステップ階調のパッチの境界で分離できていない可能性を考慮し、分離した各パッチの縦横の両端部分の数画素を除去する動作を、図12を参照しながら説明する。図12は、分離した各成長ステップ階調のパッチにおいて除外する領域の一例を示す図である。
例えば、図12に示す分離パッチ631が、パッチ分離部207によって分離されたパッチであるものとすると、パッチ分離部207は、分離パッチ631における縦横の両端部分の数画素の領域631aを除去して、新たに分離後のパッチとする。これによって、各成長ステップ階調に対応するパッチとしての精度の高い特性値を取得することが可能となる。なお、図12に示すように、分離パッチ631の縦および横の双方の両端部分の領域を除去することに限定されるものではなく、パッチの境界で正確に分離できていない可能性があるのは縦方向での境界であるため、縦方向の両端部分の数画素のみを除去するものとしてもよい。
特性取得部208は、パッチ分離部207により分離された各成長ステップ階調に対応するパッチの画像から、特性値としての濃度を取得する機能部である。なお、特性値としては濃度に限定されるものではなく、例えば、明度であったり、または、独自のデジタル値等であってもよい。または、最も濃度が高いパッチの値を100、紙白のパッチの値を0とした場合の濃度または明度の割合を特性値として取得するものとしてもよい。
ドット特性算出部209は、各成長ステップ階調のパッチの特性値と、1つ前の成長ステップ階調のパッチの特性値との差を算出し、当該差を、集約ディザマトリクスに含まれるベースマトリクスの数で割ることにより、各成長ステップ階調における1ドットの成長特性を算出する機能部である。ここで、上述の差、および各成長ステップ階調における1ドットの成長特性の例を、下記の(表1)に示す。
特性取得部208により取得された各成長ステップ階調に対応するパッチの特性値が、(表1)における「成長ステップ階調特性値」に相当する。ドット特性算出部209により算出される各成長ステップ階調のパッチの特性値と、1つ前の成長ステップ階調のパッチの特性値との差が、(表1)における「成長ステップ階調成長値」に相当する。そして、ドット特性算出部209により当該差を、集約ディザマトリクスに含まれるベースマトリクスの数((表1)の例では32)で割ることにより算出された各成長ステップ階調における1ドットの成長特性が、(表1)における「成長ステップ1ドット特性値」に相当する。
階調特性算出部210は、本実施形態に係る自動階調補正処理により補正する各階調の特性値(濃度等)についての目標値を満たす成長ステップ階調、および、当該成長ステップ階調における必要なドット数を算出する機能部である。各階調の目標値は、例えば、画像形成装置1のメーカにより予め定められているものとすればよい。以下、この目標値を満たす(目標値を超過する)成長ステップ階調、および、当該成長ステップ階調における必要なドット数を、「階調特性」と称する場合がある。ここで、自動階調補正処理により補正する各階調の特性値(濃度等)についての目標値、上述の階調特性、および、階調特性を求めるために必要となる値等をまとめたものを、下記の(表2)に示す。
(表2)における「目標値」は、本実施形態に係る自動階調補正処理により補正する各階調の特性値(濃度等)についての目標値である。本実施形態に係る自動階調補正処理により補正する階調の数は256(0階調~255階調)であるものとして説明する。なお、当該階調の数は、256に限定されるものではなく、その他の階調の数であってもよい。
(表2)における「目標値超過成長ステップ階調」とは、階調特性のうち、目標値を満たす(目標値を超過する)成長ステップ階調のことを示す。また、(表2)における「目標値超過前成長ステップ階調特性値」とは、「目標値超過成長ステップ階調」の1つ前の成長ステップ階調の特性値を示す。例えば、「目標値超過成長ステップ階調」が3ステップである場合の「目標値超過前成長ステップ階調特性値」は、1つ前の成長ステップ階調である2ステップでの特性値である「0.910」となる。
(表2)における「目標値超過成長ステップ1ドット特性値」とは、「目標値超過成長ステップ階調」に対応する「成長ステップ1ドット特性値」を示す。例えば、「目標値超過成長ステップ階調」が4ステップである場合、対応する「成長ステップ1ドット特性値」は(表1)から「0.000625」であるので、これが「目標値超過成長ステップ1ドット特性値」となる。
(表2)における「目標値超過成長ステップ必要ドット数」とは、「目標値超過成長ステップ階調」の1つ前の成長ステップ階調の状態から、対応する階調の特性値が「目標値」を超えるのに必要な成長ドット数を示し、これは、階調特性のうち、上述した、目標値を満たす(目標値を超える)成長ステップ階調における必要なドット数に相当する。この「目標値超過成長ステップ必要ドット数」の算出方法については、後述の図13および図14で詳述する。
(表2)における「予想特性値」とは、階調特性算出部210により算出された階調特性から予想される対象の階調の特性値を示す。また、(表2)における「予想特性値と目標値との差分」は、「予想特性値」と「目標値」との差である。
補正マトリクス生成部211は、階調特性算出部210により算出された階調特性、および、パターン情報取得部201により取得されたディザパターン情報に基づいて、階調補正ディザマトリクスを生成する機能部である。階調補正ディザマトリクスについては、後述の図13で詳述する。
上述のパターン情報取得部201、階調数算出部202、パッチサイズ算出部203、パッチ生成部204、パッチ印刷制御部205、パッチ分離部207、特性取得部208、ドット特性算出部209、階調特性算出部210および補正マトリクス生成部211は、例えば、図2に示すプリンタコントローラ100のCPU101により実行されるプログラムにより実現される。なお、パターン情報取得部201、階調数算出部202、パッチサイズ算出部203、パッチ生成部204、パッチ印刷制御部205、パッチ分離部207、特性取得部208、ドット特性算出部209、階調特性算出部210および補正マトリクス生成部211の一部または全部は、ソフトウェアであるプログラムではなく、FPGA(Field-Programmable Gate Array)またはASIC(Application Specific Integrated Circuit)等のハードウェア回路によって実現されてもよい。
記憶部212は、ディザパターン情報、読込制御部206により取得された読込画像、ドット特性算出部209および階調特性算出部210の算出結果(1ドットの成長特性、および階調特性等)、ならびにパッチ生成部204により生成された階調補正用パッチの印刷データ等を記憶する機能部である。記憶部212は、図2に示すプリンタコントローラ100の記憶装置105により実現される。
入力部213は、例えば、テンキーまたは専用キー等のユーザが操作入力およびデータ入力を受け付ける機能部である。入力部213は、図2に示す入出力装置140の入力装置141により実現される。
通信部214は、外部装置との間でデータ通信を行う機能部である。通信部214は、例えば、上述のディザパターン情報を外部装置から受信して、パターン情報取得部201へ送るものとしてもよい。通信部214は、図2に示す外部I/F150により実現される。
なお、図3に示した各機能部は、機能を概念的に示したものであって、このような構成に限定されるものではない。例えば、図3で独立した機能部として図示した複数の機能部を、1つの機能部として構成してもよい。一方、図3の1つの機能部が有する機能を複数に分離し、複数の機能部として構成するものとしてもよい。
(画像形成装置の自動階調補正処理の流れ)
図13は、実施形態に係る画像形成装置の自動階調補正処理の流れの一例を示すフローチャートの一例である。図14は、目標値を超過した成長ステップ階調、および当該成長ステップ階調における必要なドット数の一例を示す図である。図13および図14を参照しながら、本実施形態に係る画像形成装置1の自動階調補正処理の流れについて説明する。
<ステップS11>
パターン情報取得部201は、成長ステップ階調の数、階層レベル数、ベースマトリクス数、集約ディザマトリクスおよびディザサイズ等を含むディザパターン情報を取得する。そして、ステップS12へ移行する。
<ステップS12>
階調数算出部202は、パターン情報取得部201により取得されたディザパターン情報を用いて、成長ステップ階調の数を算出する。階調数算出部202により算出された成長ステップ階調の数は、階調補正用パッチに含まれるパッチ数となる。そして、ステップS13へ移行する。
<ステップS13>
パッチサイズ算出部203は、印刷媒体である用紙のサイズまたは印刷可能範囲と、階調数算出部202により算出された成長ステップ階調の数とから、各成長ステップ階調に対応するパッチのサイズを算出する。そして、ステップS14へ移行する。
<ステップS14>
パッチ生成部204は、パッチサイズ算出部203により算出された各成長ステップ階調のパッチのサイズにより当該各成長ステップ階調の濃度のパッチを生成し、生成した各パッチを連結した階調補正用パッチの印刷データを生成する。また、パッチ生成部204は、階調補正用パッチから各成長ステップ階調のパッチを分離するために用いるダミーパッチを生成し、印刷データに含める。そして、ステップS15へ移行する。
<ステップS15>
パッチ印刷制御部205は、パッチ生成部204により生成された階調補正用パッチの印刷データにより、プリンタ装置120に対して用紙に印刷させる。そして、ステップS16へ移行する。
<ステップS16>
読込制御部206は、パッチ印刷制御部205の制御に基づいてプリンタ装置120により印刷された階調補正用パッチの用紙をスキャナ装置130により読み込まて、階調補正用パッチの読取画像を得る。そして、ステップS17へ移行する。
<ステップS17>
パッチ分離部207は、読込制御部206の制御に基づいてスキャナ装置130により読み込まれた階調補正用パッチの読取画像について、階調補正用パッチに隣接するダミーパッチを検出することによって分離開始位置を検出し、当該位置からパッチサイズ算出部203により算出されたサイズごとに各パッチに分離する。パッチ分離部207により分離されたパッチは、各成長ステップ階調に対応したパッチとなる。また、パッチ分離部207は、分離した各パッチにおける縦横の両端部分の数画素の領域を除去して、新たに分離後のパッチとする。そして、ステップS18へ移行する。
<ステップS18>
特性取得部208は、パッチ分離部207により分離された各成長ステップ階調に対応するパッチの画像から、特性値としての濃度を取得するなお、特性値としては濃度に限定されるものではなく、例えば、明度であったり、または、独自のデジタル値等であってもよい。または、最も濃度が高いパッチの値を100、紙白のパッチの値を0とした場合の濃度または明度の割合を特性値として取得するものとしてもよい。そして、ステップS19へ移行する。
<ステップS19>
ドット特性算出部209は、各成長ステップ階調のパッチの特性値と、1つ前の成長ステップ階調のパッチの特性値との差を算出し、当該差を、集約ディザマトリクスに含まれるベースマトリクスの数で割ることにより、各成長ステップ階調における1ドットの成長特性を算出する。そして、ステップS20へ移行する。
<ステップS20>
階調特性算出部210は、階調特性として、本実施形態に係る自動階調補正処理により補正する各階調の特性値(濃度等)についての目標値を満たす(目標値を超過する)成長ステップ階調、および、当該成長ステップ階調における必要なドット数を算出する。この算出動作について、図14を参照しながら具体的に説明する。
例えば、上述の(表2)に示した0~255階調のうち、10階調を例にして説明する。階調特性算出部210は、10階調の目標値は「0.108000」であるので、当該目標値を超過する成長ステップ階調は(表1)に示すように4ステップであり、その特性値は「0.1200」であることを特定する。そして、階調特性算出部210は、4ステップの1つ前のステップである3ステップに着目して当該ステップの特性値は、(表1)に示すように、「0.1000」であることを特定する。また、4ステップの成長ステップ階調における1ドットの成長特性は、ドット特性算出部209により「0.000625」と算出されている。ここで、成長ステップ階調が3ステップである場合の濃淡表現を示した画像(集約ディザマトリクスのサイズに対応する画像)を、図14(a)に示す。
次に、階調特性算出部210は、3ステップの特性値「0.1000」((表2)では「0.100000」と表記)に、4ステップの1ドットの成長特性である「0.000625」を加算していく。ここで、図14(b)に、3ステップの特性値「0.1000」に、4ステップにおける12ドット分の1ドットの成長特性を加算した状態の濃淡表現を示した画像を示す。この状態では、予想特性値(図14(b)では「予測値」と表記)が、0.1000+0000625×12=0.107500であるので、10階調の目標値「0.108000」に対して未達である。
そして、図14(c)に、図14(b)の状態からさらに1ドットの成長特性を加算、すなわち、3ステップの特性値「0.1000」に、4ステップにおける13ドット分の1ドットの成長特性を加算した状態の濃淡表現を示した画像を示す。この状態では、階調特性算出部210は、予想特性値を0.1000+0000625×13=0.108125と算出し、10階調の目標値「0.108000」に対して超過したことを検出する。そして、階調特性算出部210は、10階調における目標値を超過する成長ステップ階調である4ステップ、および、当該4ステップにおける必要なドット数としての13ドットを、10階調における階調特性として算出する。
階調特性算出部210は、各階調で算出した階調特性を、記憶部212に記憶させる。なお、階調特性に含まれる、補正する各階調の特性値についての目標値を満たす成長ステップ階調としては、目標値を超過する成長ステップ階調としたが、これに限定されるものではなく、目標値を超過する直前の成長ステップ階調であってもよい。そして、ステップS21へ移行する。
なお、図14(c)に示したように、予想特性値が目標値を超過した時のドット数を、目標値を超過する成長ステップ階調における必要なドット数としているが、これに限定されるものではなく、予想特性値が目標値を超過する直前のドット数としてもよく、または、超過した時の予想特性値と目標値との差、および、超過する直前の予想特性値と目標値との差のうち小さい方に対応するドット数としてもよい。
<ステップS21>
補正マトリクス生成部211は、階調特性算出部210により算出された階調特性、パターン情報取得部201により取得されたディザパターン情報に含まれる集約ディザマトリクスおよびベースマトリクス順位情報に基づいて、階調補正ディザマトリクスを生成する。
階調補正ディザマトリクスの具体的構成としては、例えば、図5に示した集約ディザマトリクス501と同様の構成とし、マトリクス内の各ドットは、単一の値ではなく、階層レベル数だけの要素を有するベクトル値を有するものとする。例えば、階層レベル数が3である場合、マトリクスの各ドットは、第1成分、第2成分、第3成分の3つの成分を有するベクトル値を含む。第1成分は、第1段階の階層レベルに対応し、第2成分は、第2段階の階層レベルに対応し、第3成分は、第3段階の階層レベルに対応する。そして、集約ディザマトリクス501が示すドットの成長順位、および、ベースマトリクス順位情報502が示すベースマトリクスの成長順位に従って、上述の(表2)に示す補正の各階調について、階調が1つ上がった場合に、どのドットがどの段階に成長するか示すために、当該上がった階調の番号を、該当するドットのベクトル値の、該当する成分に格納する。例えば、(表2)の例では、1階調の場合、「目標値超過成長ステップ階調」が1であり、「目標値超過成長ステップ必要ドット数」が27であるので、ベースマトリクス順位情報502におけるベースマトリクスの成長順位が0~26に対応する各ベースマトリクスにおける、ドットの成長順位が0に対応するベクトル値の第1成分に、階調の番号である「1」を格納する。
次に、1階調から階調が1つ上がった2階調になった場合、「目標値超過成長ステップ階調」が2であり、「目標値超過成長ステップ必要ドット数」が13であるので、ベースマトリクス順位情報502におけるベースマトリクスの成長順位が27~31に対応する各ベースマトリクスにおける、ドットの成長順位が0に対応するベクトル値の第1成分に、階調の番号である「2」を格納する。さらに、ベースマトリクス順位情報502におけるベースマトリクスの成長順位が0~13に対応する各ベースマトリクスにおける、ドットの成長順位が0に対応するベクトル値の第2成分にも、階調の番号である「2」を格納する。
また、例えば、20階調から階調が1つ上がった21階調になった場合、20階調での「目標値超過成長ステップ階調」が5であり、「目標値超過成長ステップ必要ドット数」が27であり、21階調での「目標値超過成長ステップ階調」が6であり、「目標値超過成長ステップ必要ドット数」が5であるので、以下のように階調の番号を格納する。「目標値超過成長ステップ階調」が5であるということは、ドットの成長順位が1であるドットが第2段階から第3段階への成長段階にあることが分かる。したがって、ベースマトリクス順位情報502におけるベースマトリクスの成長順位が27~31に対応する各ベースマトリクスにおける、ドットの成長順位が1に対応するベクトル値の第2成分に、階調の番号である「21」を格納する。さらに、ベースマトリクス順位情報502におけるベースマトリクスの成長順位が0~4に対応する各ベースマトリクスにおける、ドットの成長順位が1に対応するベクトル値の第3成分に、階調の番号である「21」を格納する。以上のようにして、階調補正ディザマトリクスの各ドットに対応するベクトル値の各成分には、各階調の番号(0~255)のいずれかが格納されることによって、階調補正ディザマトリクスが生成される。
そして、階調補正ディザマトリクスにより階調補正を行う場合、特定の階調で濃度表現をするとき、各ドットが有するベクトル値の各成分のうち、当該特性の階調以下の成分であってそのうちの最大の成分が示す階層レベルの濃度で表現するものとすればよい。例えば、特定のドットが有するベクトル値が(1,3,5)である場合に、4階調の濃度を表現するとき、4以下の成分である1、3のうちの最大の成分である3に対応する階層レベルである第2段階の濃度で当該特定のドットの濃度表現をするものとすればよい。また、210階調の濃度を表現するときは、210以下の成分である1、3、5のうちの最大の成分である5に対応する階層レベルである第3段階の濃度で当該特定のドットの濃度表現をするものとすればよい。
なお、以上のような階調補正ディザマトリクスの構成は一例であって、同様の趣旨で濃度を表現することができれば、どのような構成であってもよい。
以後、プリンタコントローラ100は、この階調補正ディザマトリクスを用いて印刷データに対する階調補正を行ったうえで、プリンタ装置120に印刷処理を行わせる。この階調補正ディザマトリクスによる階調補正によって、印刷の濃淡表現を所定の階調数(上述の例では256の階調数)で正規化して補正する。例えば、階調数を256に正規化する場合は、集約ディザマトリクス全体として表現可能な濃度の階調数は512以上であることが望ましい。
以上のステップS11~S21の流れで、画像形成装置1の自動階調補正処理が行われる。
以上のように、本実施形態に係る画像形成装置1は、各成長ステップ階調の濃度のパッチを連結した階調補正用パッチを生成して印刷出力し、印刷出力した階調補正用パッチを読み込んで、階調補正用パッチの画像を各成長ステップ階調に対応するパッチに分離する。そして、画像形成装置1は、分離した各成長ステップ階調のパッチの特性値を取得して、ペースマトリクスの数で割ることにより、各成長ステップ階調における1ドットの成長特性を算出する。そして、画像形成装置1は、補正する各階調の目標値に近似する成長ステップ階調、および当該成長ステップ階調での必要なドット数を算出して、これらに基づいて階調補正ディザマトリクスを生成するものとしている。これによって、特定の濃度で表現する場合に、限られた露光量(階層レベル)の範囲で、対応する成長ステップ階調から成長させるドット数の調整することによって、階調補正を行うことができる。この階調補正によって滑らかな階調性を保つことができ、かつ、各階調は階調特性によって区別されるので、補正後の階調数を維持することができる。また、階調の変化を露光量の調整だけで行う場合と比較して、ハード面でのコストを削減することができる。
なお、上述の実施形態において、画像形成装置1(プリンタコントローラ100)の各機能部の少なくともいずれかがプログラムの実行によって実現される場合、そのプログラムは、ROM等に予め組み込まれて提供される。また、上述の実施形態に係る画像形成装置1(プリンタコントローラ100)で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでCD-ROM(Compact Disc Read Only Memory)、フレキシブルディスク(FD)、CD-R(Compact Disk-Recordable)、またはDVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。また、上述の実施形態に係る画像形成装置1(プリンタコントローラ100)で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上述の実施形態に係る画像形成装置1(プリンタコントローラ100)で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、上述の実施形態の画像形成装置1(プリンタコントローラ100)で実行されるプログラムは、上述した各機能部のうち少なくともいずれかを含むモジュール構成となっており、実際のハードウェアとしてはCPU(CPU101)が上述の記憶装置(ROM102等)からプログラムを読み出して実行することにより、上述の各機能部が主記憶装置(RAM103等)上にロードされて生成されるようになっている。