(57)【要約】【課題】適切な対応関係を決定する。【解決手段】Ｎ個（Ｎは２以上の整数）のパッチを含むシートを読取部によって読み取ることによって得られるパッチ画像データを用いて、Ｎ個のパッチ色成分値を特定する。Ｎ個のパッチ色成分値をＮ個の基準目標値にそれぞれ近づける補正を行うための補正対応関係を決定する。パッチ画像データを補正対応関係に従って補正することによって、第１補正済画像データを生成する。第１補正済画像データを用いて、Ｎ個の補正済パッチ色成分値を特定する。補正済パッチ色成分値が許容範囲に含まれない場合に、更新目標値を用いて、新たな補正対応関係を決定する。補正済パッチ色成分値が下限値未満の範囲に含まれる場合、基準目標値よりも大きい更新目標値を用いる。補正済パッチ色成分値が上限値を超える範囲に含まれる場合、基準目標値よりも小さい更新目標値を用いる。【選択図】  図１
2020141344.tif 000002
【特許請求の範囲】
【請求項１】
読取部による読取によって得られる読取画像データによって示される色値で表される特定の色成分値の基準目標値と、前記基準目標値を含む許容範囲の上限値と下限値と、を特定する許容範囲データを格納する記憶部を備えるコンピュータのためのコンピュータプログラムであって、
明度が互いに異なるＮ個（Ｎは２以上の整数）のパッチを含むシートを前記読取部によって読み取ることによって得られるパッチ画像データによって示される前記Ｎ個のパッチのＮ個の前記色成分値であるＮ個のパッチ色成分値を特定するパッチ色成分値特定機能と、
前記Ｎ個のパッチ色成分値を、前記許容範囲データによって前記Ｎ個のパッチに対応付けられたＮ個の基準目標値にそれぞれ近づける補正を行うための、未補正色値の全範囲における前記未補正色値と補正済色値との対応関係である補正対応関係を決定する第１決定機能と、
前記パッチ画像データの複数の画素のそれぞれの色値を前記補正対応関係に従って補正することによって、第１補正済画像データを生成する第１補正機能と、
前記第１補正済画像データによって示される前記Ｎ個のパッチのＮ個の前記色成分値であるＮ個の補正済パッチ色成分値を特定する補正済パッチ色成分値特定機能と、
前記Ｎ個の補正済パッチ色成分値のそれぞれについて、前記補正済パッチ色成分値が、前記補正済パッチ色成分値に対応する前記許容範囲と前記下限値未満の範囲と前記上限値を超える範囲とのいずれに含まれるかを特定する範囲特定機能と、
前記補正済パッチ色成分値が前記許容範囲に含まれない場合に、前記許容範囲に含まれない前記補正済パッチ色成分値に対応する前記パッチ色成分値の目標値として前記基準目標値とは異なる更新目標値を用いて、新たな前記補正対応関係を決定する第２決定機能と、
をコンピュータに実現させ、
前記第２決定機能は、
前記補正済パッチ色成分値が前記下限値未満の範囲に含まれる場合、前記基準目標値よりも大きい前記更新目標値を用い、
前記補正済パッチ色成分値が前記上限値を超える範囲に含まれる場合、前記基準目標値よりも小さい前記更新目標値を用いる、
コンピュータプログラム。
【請求項２】
請求項１に記載のコンピュータプログラムであって、
前記第２決定機能は、
前記補正済パッチ色成分値を前記更新目標値に近づける補正を行うための仮対応関係を決定する仮対応関係決定処理と、
前記第１補正済画像データの複数の画素のそれぞれの色値を前記仮対応関係に従って補正することによって、仮補正済画像データを生成する仮補正済画像データ生成処理と、
前記仮補正済画像データによって示される前記Ｎ個のパッチのＮ個の前記色成分値であるＮ個の仮補正済パッチ色成分値を特定する仮補正済パッチ色成分値特定処理と、
を含む第１処理と、
前記Ｎ個の仮補正済パッチ色成分値のそれぞれが、前記仮補正済パッチ色成分値に対応する前記許容範囲に含まれる場合に、前記補正対応関係と前記仮対応関係とを用いて前記新たな補正対応関係を決定する決定処理と、
を実行する機能をコンピュータに実現させる、コンピュータプログラム。
【請求項３】
請求項２に記載のコンピュータプログラムであって、
前記第２決定機能は、前記第１処理を実行することによって特定される１以上の前記仮補正済パッチ色成分値が前記仮補正済パッチ色成分値に対応する前記許容範囲に含まれない場合、前記基準目標値と前記更新目標値との間の値である新たな前記更新目標値を用いて再び前記第１処理を実行する、
コンピュータプログラム。
【請求項４】
請求項１から３のいずれかに記載のコンピュータプログラムであって、
前記補正済パッチ色成分値が前記下限値未満の範囲に含まれる場合に、前記上限値が前記更新目標値として用いられ、
前記補正済パッチ色成分値が前記上限値を超える範囲に含まれる場合に、前記下限値が前記更新目標値として用いられる、
コンピュータプログラム。
【請求項５】
読取部による読取によって得られる読取画像データによって示される色値で表される特定の色成分値の基準目標値と、前記基準目標値を含む許容範囲の上限値と下限値と、を用いて、未補正色値と補正済色値との対応関係である補正対応関係を決定する方法であって、
明度が互いに異なるＮ個（Ｎは２以上の整数）のパッチを含むシートを前記読取部によって読み取ることによって得られるパッチ画像データによって示される前記Ｎ個のパッチのＮ個の前記色成分値であるＮ個のパッチ色成分値を特定するパッチ色成分値特定工程と、
前記Ｎ個のパッチ色成分値を、前記許容範囲データによって前記Ｎ個のパッチに対応付けられたＮ個の基準目標値にそれぞれ近づける補正を行うための、未補正色値の全範囲における前記未補正色値と補正済色値との対応関係である補正対応関係を決定する第１決定工程と、
前記パッチ画像データの複数の画素のそれぞれの色値を前記補正対応関係に従って補正することによって、第１補正済画像データを生成する第１補正工程と、
前記第１補正済画像データによって示される前記Ｎ個のパッチのＮ個の前記色成分値であるＮ個の補正済パッチ色成分値を特定する補正済パッチ色成分値特定工程と、
前記Ｎ個の補正済パッチ色成分値のそれぞれについて、前記補正済パッチ色成分値が、前記補正済パッチ色成分値に対応する前記許容範囲と前記下限値未満の範囲と前記上限値を超える範囲とのいずれに含まれるかを特定する範囲特定工程と、
前記補正済パッチ色成分値が前記許容範囲に含まれない場合に、前記許容範囲に含まれない前記補正済パッチ色成分値に対応する前記パッチ色成分値の目標値として前記基準目標値とは異なる更新目標値を用いて、新たな前記補正対応関係を決定する第２決定工程と、
を備え、
前記第２決定工程は、
前記補正済パッチ色成分値が前記下限値未満の範囲に含まれる場合、前記基準目標値よりも大きい前記更新目標値を用い、
前記補正済パッチ色成分値が前記上限値を超える範囲に含まれる場合、前記基準目標値よりも小さい前記更新目標値を用いる、
方法。
【請求項６】
読取部による読取によって得られる対象画像データを取得する機能と、
前記対象画像データによって示される複数の画素のそれぞれの複数の色成分のそれぞれを、請求項５に記載の方法によって決定された補正対応関係に従って補正することによって、補正済の対象画像データを生成する機能と、
をコンピュータに実現させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、読取部による読取によって得られる画像データを処理する技術に関する。
【背景技術】
【０００２】
従来から、スキャナなどの画像読取装置が利用されている。例えば特許文献１では、読み取った原稿などの対象物の画像データは、いわゆるガンマカーブを用いて補正される。ここで、解像度を落とさずに、補正によってノイズが目立つことを抑制するために、ガンマカーブの傾きによる色差に応じて各色ごとの画像データを補正する係数を変更する技術が、提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１５４０２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、画像読取装置によって読み取られる画像データに対して、ガンマカーブのような補正前の値と補正後の値との対応関係を適切に決定することは、容易ではなかった。
【０００５】
本明細書は、適切な対応関係を決定できる技術を開示する。
【課題を解決するための手段】
【０００６】
本明細書に開示された技術は、以下の適用例として実現することが可能である。
【０００７】
［適用例１］読取部による読取によって得られる読取画像データによって示される色値で表される特定の色成分値の基準目標値と、前記基準目標値を含む許容範囲の上限値と下限値と、を特定する許容範囲データを格納する記憶部を備えるコンピュータのためのコンピュータプログラムであって、明度が互いに異なるＮ個（Ｎは２以上の整数）のパッチを含むシートを前記読取部によって読み取ることによって得られるパッチ画像データによって示される前記Ｎ個のパッチのＮ個の前記色成分値であるＮ個のパッチ色成分値を特定するパッチ色成分値特定機能と、前記Ｎ個のパッチ色成分値を、前記許容範囲データによって前記Ｎ個のパッチに対応付けられたＮ個の基準目標値にそれぞれ近づける補正を行うための、未補正色値の全範囲における前記未補正色値と補正済色値との対応関係である補正対応関係を決定する第１決定機能と、前記パッチ画像データの複数の画素のそれぞれの色値を前記補正対応関係に従って補正することによって、第１補正済画像データを生成する第１補正機能と、前記第１補正済画像データによって示される前記Ｎ個のパッチのＮ個の前記色成分値であるＮ個の補正済パッチ色成分値を特定する補正済パッチ色成分値特定機能と、前記Ｎ個の補正済パッチ色成分値のそれぞれについて、前記補正済パッチ色成分値が、前記補正済パッチ色成分値に対応する前記許容範囲と前記下限値未満の範囲と前記上限値を超える範囲とのいずれに含まれるかを特定する範囲特定機能と、前記補正済パッチ色成分値が前記許容範囲に含まれない場合に、前記許容範囲に含まれない前記補正済パッチ色成分値に対応する前記パッチ色成分値の目標値として前記基準目標値とは異なる更新目標値を用いて、新たな前記補正対応関係を決定する第２決定機能と、をコンピュータに実現させ、前記第２決定機能は、前記補正済パッチ色成分値が前記下限値未満の範囲に含まれる場合、前記基準目標値よりも大きい前記更新目標値を用い、前記補正済パッチ色成分値が前記上限値を超える範囲に含まれる場合、前記基準目標値よりも小さい前記更新目標値を用いる、コンピュータプログラム。
【０００８】
この構成によれば、補正済パッチ色成分値が下限値未満の範囲に含まれる場合、基準目標値よりも大きい第１目標値を用いて、補正対応関係が決定され、補正済パッチ色成分値が上限値を超える範囲に含まれる場合、基準目標値よりも小さい第２目標値を用いて、補正対応関係が決定されるので、適切な補正対応関係を決定できる。
【０００９】
なお、本明細書に開示の技術は、種々の態様で実現することが可能であり、例えば、対応関係決定方法および対応関係決定装置、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体（例えば、一時的ではない記録媒体）、等の形態で実現することができる。
【図面の簡単な説明】
【００１０】
【図１】実施例の画像処理システム１０００を示す説明図である。
【図２】対応関係データ２３８の生成処理の例を示すフローチャートである。
【図３】対応関係データ２３８の生成処理の例を示すフローチャートである。
【図４】対応関係データ２３８の生成処理の例を示すフローチャートである。
【図５】（Ａ）は、シートの例を示す概略図である。（Ｂ）〜（Ｈ）は、明度値Ｌｐの分布例を示すヒストグラムである。
【図６】（Ａ）は、明度レベルＶとパッチ明度値Ｌとの関係の例を示すグラフである。（Ｂ）は、未補正の明度レベルＶｉと目標明度レベルＶｔとの対応関係の例を示すグラフである。
【図７】補正済パッチ明度値の例を示すグラフである。
【図８】（Ａ）は、新しい更新目標値の例を示すグラフである。（Ｂ）は、仮補正済明度値の例を示すグラフである。
【図９】（Ａ）は、新しい更新目標値の例を示すグラフである。（Ｂ）は、新しい仮補正済明度値の例を示すグラフである。
【図１０】読取処理の例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
Ａ．実施例：
Ａ−１．データ処理装置１００と複合機２００との構成：
図１は、実施例の画像処理システム１０００を示す説明図である。画像処理システム１０００は、データ処理装置１００と、データ処理装置１００に接続された複合機２００と、を含んでいる。後述するように、複合機２００は、原稿等の対象物を読み取るスキャナ部２８０と、画像を印刷するプリンタ部４００と、複合機２００の全体を制御する制御部２９９と、を有している。
【００１２】
データ処理装置１００は、例えば、パーソナルコンピュータである（例えば、デスクトップコンピュータ、タブレットコンピュータなど）。データ処理装置１００は、プロセッサ１１０と、記憶装置１１５と、画像を表示する表示部１４０と、ユーザによる操作を受け入れる操作部１５０と、通信インタフェース１７０と、を有している。これらの要素は、バスを介して互いに接続されている。記憶装置１１５は、揮発性記憶装置１２０と、不揮発性記憶装置１３０と、を含んでいる。
【００１３】
プロセッサ１１０は、データ処理を行う装置であり、例えば、ＣＰＵである。揮発性記憶装置１２０は、例えば、ＤＲＡＭであり、不揮発性記憶装置１３０は、例えば、フラッシュメモリである。
【００１４】
不揮発性記憶装置１３０は、プログラム１３２と、許容範囲データ２３６と、対応関係データ２３８と、を格納している。対応関係データ２３８は、後述する処理によって、生成される。プロセッサ１１０は、プログラム１３２を実行することによって、種々の機能を実現する。プログラム１３２によって実現される機能と、許容範囲データ２３６と、対応関係データ２３８と、の詳細については、後述する。プロセッサ１１０は、プログラム１３２の実行に利用される種々の中間データを、記憶装置１１５（例えば、揮発性記憶装置１２０、不揮発性記憶装置１３０のいずれか）に、一時的に格納する。
【００１５】
表示部１４０は、画像を表示する装置であり、例えば、液晶ディスプレイである。これに代えて、ＬＥＤディスプレイ、有機ＥＬディスプレイなどの、画像を表示する他の種類の装置が採用されてよい。操作部１５０は、ユーザによる操作を受け取る装置であり、例えば、表示部１４０上に重ねて配置されたタッチパネルである。これに代えて、ボタン、レバーなどの、ユーザによって操作される他の種類の装置が採用されてよい。ユーザは、操作部１５０を操作することによって、種々の指示をデータ処理装置１００に入力可能である。
【００１６】
通信インタフェース１７０は、他の装置と通信するためのインタフェースである（例えば、ＵＳＢインタフェース、有線ＬＡＮインタフェース、IEEE802.11の無線インタフェース）。通信インタフェース１７０には、複合機２００が接続されている。
【００１７】
複合機２００は、制御部２９９と、スキャナ部２８０と、プリンタ部４００と、を有している。制御部２９９は、プロセッサ２１０と、記憶装置２１５と、画像を表示する表示部２４０と、ユーザによる操作を受け入れる操作部２５０と、通信インタフェース２７０と、を有している。これらの要素は、バスを介して互いに接続されている。記憶装置２１５は、揮発性記憶装置２２０と、不揮発性記憶装置２３０と、を含んでいる。
【００１８】
プロセッサ２１０は、データ処理を行う装置であり、例えば、ＣＰＵである。揮発性記憶装置２２０は、例えば、ＤＲＡＭであり、不揮発性記憶装置２３０は、例えば、フラッシュメモリである。
【００１９】
不揮発性記憶装置２３０は、プログラム２３２と、対応関係データ２３８と、を格納している。プロセッサ２１０は、プログラム２３２を実行することによって、種々の機能を実現する（詳細は、後述）。対応関係データ２３８は、データ処理装置１００の不揮発性記憶装置１３０に格納されている対応関係データ２３８と同じである。プロセッサ２１０は、プログラム２３２の実行に利用される種々の中間データを、記憶装置（例えば、揮発性記憶装置２２０、不揮発性記憶装置２３０のいずれか）に、一時的に格納する。本実施例では、プログラム２３２は、複合機２００の製造者によって、ファームウェアとして、不揮発性記憶装置２３０に予め格納されている。
【００２０】
表示部２４０は、画像を表示する装置であり、例えば、液晶ディスプレイである。これに代えて、ＬＥＤディスプレイ、有機ＥＬディスプレイなどの、画像を表示する他の種類の装置が採用されてよい。操作部２５０は、ユーザによる操作を受け取る装置であり、例えば、表示部２４０上に重ねて配置されたタッチパネルである。これに代えて、ボタン、レバーなどの、ユーザによって操作される他の種類の装置が採用されてよい。ユーザは、操作部２５０を操作することによって、種々の指示を複合機２００に入力可能である。
【００２１】
通信インタフェース２７０は、他の装置と通信するためのインタフェースである。本実施例では、通信インタフェース２７０は、データ処理装置１００の通信インタフェース１７０に接続されている。
【００２２】
スキャナ部２８０は、ＣＣＤやＣＭＯＳなどの光電変換素子を用いて光学的に原稿等の対象物を読み取ることによって、読み取った画像を表す読取画像データを生成する。スキャナ部２８０は、対象物を読み取って対象物の画像データを生成する読取部の例である。以下、読取画像データをスキャンデータとも呼び、読取画像データの画像をスキャン画像とも呼ぶ。本実施例では、スキャンデータは、カラーのスキャン画像を表すＲＧＢのビットマップデータである。本実施例では、ＲＧＢのそれぞれの色値は、ゼロ以上、２５５以下の２５６階調で表されることとする。
【００２３】
プリンタ部４００は、所定の方式（例えば、レーザ方式や、インクジェット方式）で、用紙（印刷媒体の一例）上に画像を印刷する装置である。本実施例では、プリンタ部４００は、シアンＣ、マゼンタＭ、イエロＹ、ブラックＫの４種類のインクを用いてカラー画像を印刷可能なインクジェット方式の印刷装置である。
【００２４】
Ａ−２．対応関係決定処理
図２〜図４は、対応関係データ２３８（図１）の生成処理の例を示すフローチャートである。図３は、図２の続きの処理を示し、図４は、図３の続きの処理を示している。対応関係データ２３８は、スキャンデータの階調補正のための対応関係を示すデータである（トーンカーブとも呼ばれる）。後述するように、スキャンデータによって示される色値は、対応関係データ２３８に従って、補正される。本実施例では、予め準備されたパッチの未補正のスキャンデータを用いて、対応関係データ２３８が生成される。
【００２５】
Ｓ１１０では、複合機２００（図１）のプロセッサ２１０は、予め準備されたパッチを含むシートを、スキャナ部２８０に読み取らせる。図５（Ａ）は、シートの例を示す概略図である。シート９００上には、明度が互いに異なる複数のパッチＰ１０〜Ｐ７０が、設けられている。本実施例では、これらのパッチＰ１０〜Ｐ７０は、いずれも無彩色パッチである。図５（Ａ）の例では、パッチの暗い順は、パッチＰ１０〜Ｐ７０の順である。最も暗いパッチは、第１パッチＰ１０であり、最も明るいパッチは、第７パッチＰ７０である。また、本実施例では、一般的な印刷物と同様に、複数のパッチＰ１０〜Ｐ７０は、網点によって表現されている。
【００２６】
ユーザは、シート９００を、複合機２００（図１）のスキャナ部２８０のうちの読取の対象物を配置すべき位置（例えば、原稿台）に、配置する。ユーザは、複合機２００の操作部２５０を操作することによって、複合機２００にシート９００を読み取らせる。スキャナ部２８０は、シート９００の未補正のスキャンデータを生成する。スキャンデータは、複数のパッチＰ１０〜Ｐ７０を含むシート９００の画像データである。以下、シート９００のスキャンデータを、パッチ画像データとも呼ぶ。
【００２７】
Ｓ１２０（図２）では、複合機２００（図１）のプロセッサ２１０は、スキャナ部２８０によって生成されたパッチ画像データを、データ処理装置１００に送信する。データ処理装置１００のプロセッサ１１０は、複合機２００からのパッチ画像データを取得する。
【００２８】
Ｓ１３０では、データ処理装置１００（図１）のプロセッサ１１０は、未補正のパッチ画像データを用いて、各パッチの未補正の明度値を算出する。パッチ画像データによって示される色値と明度値との対応関係は、予め決められている。本実施例では、スキャンデータの色空間がｓＲＧＢ色空間であることとしている。そして、プロセッサ１１０は、明度値として、Ｌ＊ａ＊ｂ＊色空間のＬ＊値を算出する。プロセッサ１１０は、ｓＲＧＢ色空間の色値とＬ＊ａ＊ｂ＊色空間の色値と間の予め決められた対応関係に従って、パッチ画像データのＲＧＢ値からＬ＊値を算出する。
【００２９】
なお、１個のパッチは、パッチ画像データの複数の画素によって表される。図５（Ｂ）〜図５（Ｈ）は、パッチＰ１０〜Ｐ７０のそれぞれの複数の画素の明度値Ｌｐの分布例を示すヒストグラムである。本実施例では、パッチＰ１０〜Ｐ７０が網点によって表現されており、スキャナ部２８０の解像度は網点よりも精細である。従って、読み取られた画像上の１個のパッチの領域は、明るい画素と暗い画素とを含み得る。この結果、１個のパッチの複数の画素の明度値Ｌｐは、広い範囲に分布し得る。最も暗い第１パッチＰ１０（図５（Ｂ））と最も明るい第７パッチＰ７０（図５（Ｈ））とに関しては、明度値Ｌｐの分布の幅は比較的狭い。中間の明度の第４パッチＰ４０（図５（Ｅ））に関しては、明度値Ｌｐの分布の幅は比較的広い。
【００３０】
本実施例では、プロセッサ１１０は、１個のパッチに含まれる複数の画素の明度値Ｌｐの平均値を、１個のパッチの明度値Ｌとして算出する（以下、パッチ明度値Ｌとも呼ぶ）。図５（Ｂ）〜図５（Ｈ）の値Ｌａｖは、複数の画素の明度値Ｌｐの平均値を示している。なお、シート９００上の各パッチＰ１０〜Ｐ７０の位置は、予め決められている。従って、プロセッサ１１０は、パッチ画像データの複数の画素のうち、注目パッチに予め対応付けられた複数の画素を、注目パッチを示す画素として用いてよい。これに代えて、プロセッサ１１０は、パッチ画像データを解析することによって、各パッチＰ１０〜Ｐ７０の複数の画素を特定してもよい。
【００３１】
Ｓ１４０（図２）では、プロセッサ１１０（図１）は、パッチの明度レベルと、未補正のパッチ明度値と、基準目標値と、を用いて、目標明度レベルを特定する。図６（Ａ）は、明度レベルＶとパッチ明度値Ｌとの関係の例を示すグラフである。横軸は、明度レベルＶを示し、縦軸は、パッチ明度値Ｌを示している。明度レベルＶは、パッチＰ１０〜Ｐ７０の明度のレベルを示す指標値である。最小の明度レベルＶであるゼロは、最も暗い第１パッチＰ１０を示している。最大の明度レベルＶであるＶｍａｘは、予め決められており、最も明るい第７パッチＰ７０を示している。他のパッチＰ２０〜Ｐ６０の明度レベルＶは、ゼロと最大レベルＶｍａｘとの間で各パッチＰ２０〜Ｐ６０の明度の大きさを示す値に決定される。例えば、各パッチＰ１０〜Ｐ７０が測色器によって測色され、ＣＩＥＬＡＢ色空間のＬ＊値が特定される。そして、注目パッチの明度レベルＶは、注目パッチの明度レベルＶから第１パッチＰ１０の明度レベルＶ（＝ゼロ）を減算した差分が、注目パッチのＬ＊値から第１パッチＰ１０のＬ＊値を減算した差分に比例するように、決定される。ここで、比例係数は、第７パッチＰ７０の明度レベルＶが最大レベルＶｍａｘとなるように、決定される。このように、パッチの明度レベルＶは、パッチの明度（本実施例では、Ｌ＊値）の大きさを適切に示している。
【００３２】
図６（Ａ）のグラフには、パッチ毎の基準目標値ＭＴと上限値ＭＵと下限値ＭＬとが示されている。基準目標値ＭＴは、パッチ明度値Ｌの目標値の基準値であり、上限値ＭＵと下限値ＭＬとは、パッチ明度値Ｌの許容範囲の上限値と下限値とである。基準目標値ＭＴは、許容範囲内である。後述するように、対応関係データ２３８は、各パッチの補正済のパッチ明度値Ｌが許容範囲内となるように、決定される。基準目標値ＭＴと上限値ＭＵと下限値ＭＬとは、許容範囲データ２３６（図１）によって、予め決められている。許容範囲の幅、すなわち、１つのパッチに対応する上限値ＭＵと下限値ＭＬとの間の差は、人が目で観察する場合の上限値ＭＵの色と下限値ＭＬの色との間の差が目立たない程度であることが好ましい。例えば、上限値ＭＵと下限値ＭＬとの間の色差（ＣＩＥＬＡＢ色空間におけるユークリッド距離）が３以下であることが好ましい。
【００３３】
図示するように、ゼロの明度レベルＶに対応する基準目標値ＭＴは、ゼロである。最大レベルＶｍａｘに対応する基準目標値ＭＴは、予め決められた最大明度Ｌｍａｘである。そして、明度レベルＶが大きいほど、基準目標値ＭＴは大きい。図中のグラフ線ＬＴ、ＬＵ、ＬＬは、各パッチの値ＭＴ、ＭＵ、ＭＬを補間（ここでは、線形補間）することによって得られる対応関係を示している。以下、基準目標値ＭＴのグラフ線ＬＴによって特定される対応関係を、基準目標関係ＬＴとも呼び、上限値ＭＵのグラフ線ＬＵによって特定される対応関係を、上限関係ＬＵとも呼び、下限値ＭＬのグラフ線ＬＬによって特定される対応関係を、下限関係ＬＬとも呼ぶ。
【００３４】
図中の明度値ＭＭは、Ｓ１３０（図２）で特定された未補正のパッチ明度値Ｌである。グラフ線ＬＭは、各パッチの明度値ＭＭを補間（ここでは、線形補間）することによって得られる対応関係を示している。以下、グラフ線ＬＭによって特定される対応関係を未補正明度値関係ＬＭとも呼ぶ。
【００３５】
図示するように、本実施例では、明度レベルＶのゼロから最大レベルＶｍａｘまでの範囲のうちの殆どの範囲において、未補正明度値関係ＬＭの明度値Ｌは、基準目標関係ＬＴの明度値Ｌよりも小さい。また、ゼロ以上第１値Ｖａ以下の第１範囲Ｒ１において、未補正明度値関係ＬＭの明度値Ｌは、基準目標関係ＬＴの明度値Ｌよりも大きい。
【００３６】
図６（Ａ）には、第３パッチＰ３０に対応する明度レベルＶ３０と明度値ＭＭ３０と基準目標値ＭＴ３０とが示されている。図６（Ａ）の例では、明度値ＭＭ３０は、基準目標値ＭＴ３０よりも小さい。図中には、基準目標値ＭＴ３０に対応する基準目標明度レベルＶｔ３０が示されている（基準目標レベルＶｔ３０とも呼ぶ）。基準目標レベルＶｔ３０は、未補正明度値関係ＬＭによって基準目標値ＭＴ３０に対応付けられる明度レベルＶである。仮に、明度レベルＶが基準目標レベルＶｔ３０である場合、明度値Ｌは基準目標値ＭＴ３０である。仮に、第３パッチＰ３０の明度レベルＶが明度レベルＶ３０ではなく基準目標レベルＶｔ３０である場合に、目標の明度値ＭＴ３０が得られる。このように、明度レベルＶ３０を基準目標レベルＶｔ３０に変換するような対応関係を用いて階調補正を行うことによって、明度値Ｌを基準目標値ＭＴに近づけることができる。
【００３７】
図６（Ｂ）は、未補正の明度レベルＶｉと目標明度レベルＶｔとの対応関係の例を示すグラフである。横軸は、未補正明度レベルＶｉを示し、縦軸は、目標明度レベルＶｔを示している。図示するように、未補正明度レベルＶｉが明度レベルＶ３０である場合、目標明度レベルＶｔは基準目標レベルＶｔ３０である。この対応関係は、図６（Ａ）で説明したように、第３パッチＰ３０を用いて特定される。他のパッチについても、同様に、未補正明度レベルＶｉと目標明度レベルＶｔとの対応関係が特定される。図６（Ｂ）のグラフ線ＬＣは、複数のパッチから得られる複数の対応関係を補間（ここでは、線形補間）することによって得られる対応関係を示している。以下、グラフ線ＬＣによって特定される対応関係を、レベル対応関係ＬＣとも呼ぶ
【００３８】
なお、未補正明度レベルＶｉが第２値Ｖｂ以上の第２範囲Ｒ２内では、目標明度レベルＶｔは最大レベルＶｍａｘに設定されている。図６（Ａ）に示すように、第２値Ｖｂは、基準目標関係ＬＴによって最も明るい第７パッチＰ７０の明度値ＭＴ７０に対応付けられた明度レベルＶである。パッチの明度レベルＶが第２値Ｖｂを超える場合、そのパッチの基準目標値ＭＴに対応する基準目標レベルＶは、未補正明度値関係ＬＭを用いて表現することができない。従って、本実施例では、第２範囲Ｒ２内では、目標明度レベルＶｔは、最大レベルＶｍａｘに設定される。
【００３９】
また、未補正明度レベルＶｉが第１値Ｖａ以下の第１範囲Ｒ１内では、目標明度レベルＶｔはゼロに設定されている。図６（Ａ）に示すように、第１範囲Ｒ１内では、基準目標関係ＬＴの明度値Ｌは、未補正明度値関係ＬＭの明度値Ｌよりも小さい。パッチの明度レベルＶが第１範囲Ｒ１内である場合、そのパッチの基準目標値ＭＴに対応する基準目標レベルＶは、未補正明度値関係ＬＭを用いて表現することができない。従って、本実施例では、第１範囲Ｒ１内では、目標明度レベルＶｔは、ゼロに設定される。
【００４０】
Ｓ１４０（図２）では、以上のように、プロセッサ１１０は、各パッチＰ１０〜Ｐ７０の明度レベルＶと未補正の明度値ＭＭと基準目標値ＭＴとを用いて、未補正明度レベルＶｉと目標明度レベルＶｔとの対応関係を決定する。
【００４１】
Ｓ１５０では、プロセッサ１１０（図１）は、補正対応関係を決定する。補正対応関係は、未補正の色値と補正済の色値との対応関係である。本実施例では、補正対応関係は、パッチ画像データのＲＧＢ値の補正に用いられる。上述したように、パッチの明度レベルＶは、パッチの明度（本実施例では、Ｌ＊値）の大きさを適切に示すように、決定されている。従って、図６（Ｂ）のレベル対応関係ＬＣは、明度値Ｌ（ひいては、ｓＲＧＢ色空間のＲＧＢ値のそれぞれの色成分値）の補正用の対応関係として、利用可能である。このような対応関係は、ガンマカーブとも呼ばれる。本実施例では、プロセッサ１１０は、レベル対応関係ＬＣの入力値と出力値とのそれぞれのゼロから最大レベルＶｍａｘまでの範囲を、ＲＧＢ値のゼロから最大値ＲＧＢｍ（本実施例では、２５５）までの範囲として扱うことによって、レベル対応関係ＬＣと同様の補正対応関係ＬＣｃを決定する。補正対応関係ＬＣｃは、未補正のＲＧＢのそれぞれの色成分値Ｃｉと、補正済の色成分値Ｃｔと、の対応関係を示している。
【００４２】
Ｓ１６０（図２）では、プロセッサ１１０は、未補正のパッチ画像データの複数の画素のそれぞれの色値を補正対応関係に従って補正することによって、補正済画像データを生成する。本実施例では、赤Ｒの成分値と緑Ｇの成分値と青Ｂの成分値のそれぞれが、同じ補正対応関係によって補正される。以下、Ｓ１６０で生成された補正済画像データを、第１補正済画像データと呼ぶ。
【００４３】
Ｓ１７０では、プロセッサ１１０は、第１補正済画像データを用いて、各パッチの明度値を算出する。明度値の算出方法は、Ｓ１３０の各パッチの明度値の算出方法と、同じである。これにより、Ｓ１７０では、各パッチの補正済明度値が算出される。以下、Ｓ１６０で算出された補正済明度値を、補正済パッチ明度値と呼ぶ。
【００４４】
図７は、補正済パッチ明度値の例を示すグラフである。図７のグラフは、図６（Ａ）のグラフに、明度値ＭＭｂとグラフ線ＬＭｂとを追加して得られるグラフである。明度値ＭＭｂは、Ｓ１７０（図２）で特定された各パッチＰ１０〜Ｐ７０の補正済パッチ明度値Ｌである。グラフ線ＬＭｂは、各パッチの明度値ＭＭｂを補間（ここでは、線形補間）することによって得られる対応関係を示している。以下、グラフ線ＬＭｂによって特定される対応関係を補正済明度値関係ＬＭｂとも呼ぶ。図７の例では、パッチＰ１０、Ｐ２０、Ｐ６０、Ｐ７０の明度値ＭＭｂは、許容範囲内であるが、パッチＰ３０、Ｐ４０、Ｐ５０の明度値ＭＭｂは、下限値ＭＬ未満である。
【００４５】
Ｓ１８０では、プロセッサ１１０（図１）は、処理回数Ｑを１に初期化する。Ｓ１９０では、プロセッサ１１０は、各パッチの補正済パッチ明度値が、各パッチの許容範囲内であるか否かを判断する。全てのパッチの補正済パッチ明度値が、パッチに対応する許容範囲内である場合（Ｓ１９０：Ｙｅｓ）、プロセッサ１１０は、Ｓ２００で、補正対応関係を表すデータである対応関係データ２３８を生成し、対応関係データ２３８を記憶装置に格納する。本実施例では、対応関係データ２３８は、ルックアップテーブルである。また、プロセッサ１１０は、対応関係データ２３８を、不揮発性記憶装置１３０に格納する。また、対応関係データ２３８は、複合機２００の不揮発性記憶装置２３０にも格納される。複合機２００の不揮発性記憶装置２３０への対応関係データ２３８の格納は、ユーザによって手動で行われてよい。格納の完了によって、対応関係決定処理は終了する。
【００４６】
１個以上のパッチの補正済パッチ明度値が、パッチに対応する許容範囲外である場合（Ｓ１９０：Ｎｏ）、Ｓ２２０（図３）で、プロセッサ１１０（図１）は、複数のパッチの補正済パッチ明度値が、以下の２つの条件Ａ、Ｂのいずれを満たすかを判断する。
条件Ａ）パッチの明度値が下限値未満である。
条件Ｂ）パッチの明度値が上限値を超える。
補正対応関係による補正（図２：Ｓ１６０）は、全てのパッチに対して行われる。従って、通常は、２つの条件Ａ、Ｂのいずれか一方のみが、満たされる。
【００４７】
補正済パッチ明度値が下限値未満である場合、Ｓ２３０で、プロセッサ１１０は、処理回数Ｑが１であるか否かを判断する。処理回数Ｑが１である場合（Ｓ２３０：Ｙｅｓ）、Ｓ２４０で、プロセッサ１１０は、新しい更新目標値を上限値に設定する。
【００４８】
図８（Ａ）は、新しい更新目標値の例を示すグラフである。図８（Ａ）のグラフは、図７のグラフに、更新目標値ＭＴｂとグラフ線ＬＴｂとを追加して得られるグラフである。更新目標値ＭＴｂは、基準目標値ＭＴの代わりに利用すべき更新された目標値である。Ｓ２４０では、プロセッサ１１０は、更新目標値ＭＴｂを上限値ＭＵに決定する。従って、図８（Ａ）のグラフでは、更新目標値ＭＴｂは、上限値ＭＵと同じである。グラフ線ＬＴｂは、各パッチの更新目標値ＭＴｂを補間（ここでは、線形補間）することによって得られる対応関係を示している。以下、グラフ線ＬＴｂによって特定される対応関係を更新目標関係ＬＴｂとも呼ぶ。更新目標関係ＬＴｂは、上限関係ＬＵと同じである。
【００４９】
Ｓ３３０（図４）では、プロセッサ１１０（図１）は、処理回数Ｑに１を加算して、処理回数Ｑを更新する。Ｓ３４０では、プロセッサ１１０は、パッチの明度レベルと、補正済パッチ明度値と、更新目標値と、を用いて、更新目標明度レベルを特定する。Ｓ３４０の処理は、Ｓ１４０（図２）の処理と、同様に行われる。図８（Ａ）には、第３パッチＰ３０に対応する明度レベルＶ３０と補正済パッチ明度値ＭＭｂ３０と更新目標値ＭＴｂ３０とが示されている。また、図中には、更新目標値ＭＴｂ３０に対応する更新目標明度レベルＶｔｂ３０が示されている（更新目標レベルＶｔｂ３０とも呼ぶ）。更新目標レベルＶｔｂ３０は、補正済明度値関係ＬＭｂによって更新目標値ＭＴｂ３０に対応付けられる明度レベルＶである。このように、Ｓ３４０の処理は、Ｓ１４０の処理とは異なり、未補正のパッチ明度値ＭＭに代えて補正済パッチ明度値ＭＭｂが用いられ、基準目標値ＭＴに代えて更新目標値ＭＴｂが用いられ、未補正明度値関係ＬＭに代えて補正済明度値関係ＬＭｂが用いられる。
【００５０】
Ｓ３４０（図４）では、以上のように、プロセッサ１１０は、各パッチＰ１０〜Ｐ７０の明度レベルＶと補正済パッチ明度値ＭＭｂと更新目標値ＭＴｂとを用いて、未補正明度レベルＶｉと更新目標明度レベルＶｔｂとの対応関係を決定する（更新レベル対応関係と呼ぶ）。図示を省略するが、更新レベル対応関係は、図６（Ｂ）のレベル対応関係ＬＣと同様に、未補正明度レベルＶｉと更新目標明度レベルＶｔｂとを対応付ける。
【００５１】
Ｓ３５０では、プロセッサ１１０（図１）は、仮対応関係を決定する。Ｓ３５０の処理は、Ｓ１５０（図２）の処理と同様に行われる。プロセッサ１１０は、Ｓ３４０で決定された更新レベル対応関係を用いて、未補正のＲＧＢの色成分値Ｃｉと、補正済の色成分値Ｃｔと、の仮対応関係を決定する。
【００５２】
Ｓ３６０では、プロセッサ１１０は、Ｓ１６０（図２）で生成された第１補正済画像データの複数の画素のそれぞれの色値を仮対応関係に従って補正することによって、仮補正済画像データを生成する。Ｓ３６０の補正処理は、Ｓ１６０の補正処理と同様に、行われる。
【００５３】
Ｓ３７０では、プロセッサ１１０は、仮補正済画像データを用いて、各パッチの明度値を算出する。明度値の算出方法は、Ｓ１３０の各パッチの明度値の算出方法と、同じである。以下、仮対応関係で補正された画像データから得られるパッチの明度値を、仮補正済パッチ明度値、または、単に、仮補正済明度値と呼ぶ。
【００５４】
図８（Ｂ）は、仮補正済明度値の例を示すグラフである。図８（Ｂ）のグラフは、図８（Ａ）のグラフに、仮補正済明度値ＭＭｃとグラフ線ＬＭｃとを追加して得られるグラフである。仮補正済明度値ＭＭｃは、補正済パッチ明度値ＭＭｂと更新目標値ＭＴｂとを用いて決定された仮対応関係（Ｓ３５０）と、第１補正済画像データ（図２：Ｓ１６０）と、から算出された明度値である。図８（Ｂ）の例では、第４パッチＰ４０の仮補正済明度値ＭＭｃが、上限値ＭＵを超えている。他のパッチの仮補正済明度値ＭＭｃは、許容範囲内である。
【００５５】
Ｓ３８０（図４）では、プロセッサ１１０は、各パッチの仮補正済明度値が、各パッチの許容範囲内であるか否かを判断する。全てのパッチの仮補正済明度値が許容範囲内である場合については、後述する。
【００５６】
図８（Ｂ）のように、１個以上のパッチの仮補正済明度値が、パッチに対応する許容範囲外である場合（Ｓ３８０：Ｎｏ）、プロセッサ１１０は、Ｓ２２０（図３）へ移行する。処理回数Ｑが２以上である場合、Ｓ２２０では、プロセッサ１１０は、複数のパッチの仮補正済明度値が、上記の条件Ａ、Ｂのいずれを満たすかを判断する。仮対応関係による補正（図４：Ｓ３６０）は、全てのパッチに対して行われる。従って、通常は、２つの条件Ａ、Ｂのいずれか一方のみが、満たされる。
【００５７】
図８（Ｂ）の例では、第４パッチＰ４０の仮補正済明度値ＭＭｃが、上限値ＭＵを超えているので、条件Ｂが満たされる。この場合、Ｓ２６０で、プロセッサ１１０は、処理回数Ｑが１であるか否かを判断する。この段階では、Ｑ＝２であるので（Ｓ２６０：Ｎｏ）、プロセッサ１１０は、Ｓ２７５へ移行する。Ｓ２７５では、プロセッサ１１０は、処理回数Ｑが２であるか否かを判断する。Ｑ＝２である場合（Ｓ２７５：Ｙｅｓ）、Ｓ２８０で、プロセッサ１１０は、新しい更新目標値を、前回の更新目標値と基準目標値との間の値に設定する。本実施例では、プロセッサ１１０は、新しい更新目標値を、前回の更新目標値と基準目標値との平均値に設定する。
【００５８】
図９（Ａ）は、新しい更新目標値の例を示すグラフである。図９（Ａ）のグラフは、図７のグラフに、新しい更新目標値ＭＴｃとグラフ線ＬＴｃとを追加して得られるグラフである。更新目標値ＭＴｃは、更新目標値ＭＴｂ（図８（Ａ）の代わりに利用すべき新しく更新された目標値である。図示するように、更新目標値ＭＴｃは、基準目標値ＭＴと前回の更新目標値ＭＴｂ（図８（Ａ））との間の値である（なお、前回の更新目標値ＭＴｂ＝上限値ＭＵ）。グラフ線ＬＴｃは、各パッチの更新目標値ＭＴｃを補間（ここでは、線形補間）
することによって得られる対応関係を示している。以下、グラフ線ＬＴｃによって特定される対応関係を更新目標関係ＬＴｃとも呼ぶ。
【００５９】
Ｓ２８０の後、プロセッサ１１０は、図４のＳ３３０へ移行する。Ｓ３３０〜Ｓ３８０の処理は、上述した通りである。図９（Ｂ）は、新しい仮補正済明度値の例を示すグラフである。図９（Ｂ）のグラフは、図９（Ａ）のグラフに、新しい仮補正済明度値ＭＭｄとグラフ線ＬＭｄとを追加して得られるグラフである。仮補正済明度値ＭＭｄは、補正済パッチ明度値ＭＭｂと更新目標値ＭＴｃとを用いて決定された新しい仮対応関係（Ｓ３５０）と、第１補正済画像データ（図２：Ｓ１６０）と、から算出された明度値である。図９（Ａ）で説明したように、新しい更新目標値ＭＴｃは、基準目標値ＭＴと前回の更新目標値ＭＴｂ（図８（Ａ））との間の値である。従って、新しい仮補正済明度値ＭＭｄは、前回の仮補正済明度値ＭＭｃ（図８（Ｂ））よりも小さくなる。この結果、図９（Ｂ）の例では、全てのパッチＰ１０〜Ｐ７０の仮補正済明度値ＭＭｄは、パッチに対応する許容範囲内である。
【００６０】
全てのパッチの仮補正済明度値が、パッチに対応する許容範囲内である場合（Ｓ３８０：Ｙｅｓ）、Ｓ３９０で、プロセッサ１１０は、補正対応関係（図２：Ｓ１５０）と、仮対応関係（図４：Ｓ３５０）とを合成することによって、新しい補正対応関係を生成する。本実施例では、プロセッサ１１０は、補正対応関係によって未補正の値Ｃａに対応付けられる補正済の値Ｃｂを特定し、この補正済の値Ｃｂに仮対応関係によって対応付けられる更なる補正済の値Ｃｃを特定する。そして、プロセッサ１１０は、未補正の値Ｃａと２段階の補正済の値Ｃｃとの対応関係を、新しい補正対応関係として採用する。プロセッサ１１０は、未補正の値の全範囲において補正済の値を特定できるように、新しい補正対応関係を決定する。
【００６１】
Ｓ３９５では、プロセッサ１１０は、新しい補正対応関係を表すデータである対応関係データ２３８を、記憶装置に格納する。Ｓ３９５の処理は、図２のＳ２００の処理と同じである。格納の完了によって、対応関係決定処理は終了する。
【００６２】
以上のように、本実施例では、プロセッサ１１０は、未補正のパッチ明度値ＭＭ（図６）と基準目標値ＭＴを用いて補正対応関係を決定する（図２：Ｓ１５０）。そして、補正対応関係を用いる補正によって得られる補正済パッチ明度値ＭＭｂ（図７）が許容範囲外である場合（図２：Ｓ１９０：Ｎｏ）、図３、図４の処理によって、追加の対応関係である仮対応関係が決定される（図４：Ｓ３５０）。そして、補正対応関係を用いる補正（図２：Ｓ１６０）によって得られる第１補正済画像データに、さらに、仮対応関係を用いる補正が行われる（図４：Ｓ３６０）。これらの補正によって、各パッチの仮補正済明度値ＭＭｃ（図８（Ｂ））が算出される。この仮補正済明度値ＭＭｃが許容範囲外である場合（図４：Ｓ３８０：Ｎｏ）、補正対応関係は修正されずに、図３、図４の処理によって新しい仮対応関係が決定される（図４：Ｓ３５０）。そして、第１補正済画像データに、新しい仮対応関係を用いる補正が行われる（図４：Ｓ３６０）。この補正によって各パッチの新しい仮補正済明度値ＭＭｄ（図９（Ｂ））が算出される。この仮補正済明度値ＭＭｄが許容範囲内である場合（図４：Ｓ３８０：Ｙｅｓ）、補正対応関係と仮対応関係とを用いて新しい補正対応関係が生成される（図４：Ｓ３９０）。このように、補正対応関係は修正されずに、仮対応関係が修正されることによって、補正対応関係と仮対応関係とを用いて最終的な補正対応関係が決定される。
【００６３】
パッチ明度値は、スキャナ部２８０（図１）の特性に応じて、種々の値であり得る。本実施例の対応関係決定処理（図２〜図４）は、図６（Ａ）から図９（Ｂ）のようにパッチ明度値が補正される場合に限らず、他の種々の場合に適切な補正対応関係を決定できるように、構成されている。以下、他の種々の場合の処理について、説明する。
【００６４】
図３のＳ２２０で、第１補正済画像データ（図２：Ｓ１６０）から得られるパッチの補正済の明度値（例えば、図７の補正済パッチ明度値ＭＭｂ）が上限値ＭＵを超える場合には、プロセッサ１１０（図１）は、Ｓ２６０へ移行する。Ｓ２６０では、プロセッサ１１０は、処理回数Ｑが１であるか否かを判断する。処理回数Ｑが１である場合（Ｓ２６０：Ｙｅｓ）、Ｓ２７０で、プロセッサ１１０は、新しい更新目標値を下限値に設定する。そして、図４のＳ３３０へ移行する。このように、補正済パッチ明度値が上限値ＭＵを超える場合には、新しい更新目標値が下限値に設定されるので、仮対応関係を用いる補正によって、仮補正済パッチ明度値を基準目標値ＭＴに近づけることができる。
【００６５】
また、Ｓ２４５でＱ＝２である場合（Ｓ２４５：Ｙｅｓ）、プロセッサ１１０は、Ｓ２５０へ移行する。Ｓ２５０では、Ｓ２８０と同様に、プロセッサ１１０は、新しい更新目標値を、前回の更新目標値と基準目標値との間の値に設定する。本実施例では、プロセッサ１１０は、新しい更新目標値を、前回の更新目標値と基準目標値との平均値に設定する。そして、プロセッサ１１０は、図４のＳ３３０へ移行する。この場合、図９（Ａ）、図９（Ｂ）の例と同様に、最初の仮対応関係を用いる補正によって得られる仮補正済明度値が小さすぎる場合、新しい仮対応関係は、前回の更新目標値と基準目標値との間の新しい更新目標値を用いて決定される。従って、新しい仮対応関係を用いる補正によって、仮補正済明度値を基準目標値ＭＴに近づけることができる。
【００６６】
また、第１補正済画像データ（図２：Ｓ１６０）から得られるパッチの明度値（例えば、図７の補正済パッチ明度値ＭＭｂ）は、許容範囲から大きく外れ得る。ここで、プロセッサ１１０が仮対応関係の決定を２回繰り返しても、仮補正済明度値が許容範囲内にならない場合がある。この場合、プロセッサ１１０は、仮対応関係の決定を３回以上繰り返す。
【００６７】
仮補正済明度値が下限値ＭＬ未満である状態で処理回数Ｑ＞２である場合（図３：Ｓ２４５：Ｎｏ）、プロセッサ１１０は、Ｓ２５５で、新しい更新目標値を、前回の更新目標値よりも大きい値に設定する。ここで、更新目標値の変化量は、前回の更新目標値の変化量よりも小さい値に設定される（例えば、今回の変化量は、前回の変化量の半分である）。そして、プロセッサ１１０は、新しい更新目標値を用いて新しい仮対応関係を決定し（図４：Ｓ３３０〜Ｓ３５０）、新しい仮対応関係を用いて第１補正済画像データを補正して仮補正済画像データを生成し（Ｓ３６０）、仮補正済画像データからパッチの仮補正済明度値を取得する（Ｓ３７０）。Ｓ２５５で新しい更新目標値が前回の目標値よりも大きな値に設定されるので、新しい仮補正済明度値は、前回の仮補正済明度値から更に許容範囲に近づく。そして、プロセッサ１１０は、仮補正済明度値が許容範囲内となるまで、Ｓ２５５を含む処理を繰り返す。ここで、更新目標値の変化量が徐々に小さくなるので、新しい仮補正済明度値が、許容範囲を超えて大きくなることは、抑制される。
【００６８】
仮補正済明度値が上限値ＭＵを超えている状態で処理回数Ｑ＞２である場合（図３：Ｓ２７５：Ｎｏ）についても、同様である。プロセッサ１１０は、Ｓ２８５で、新しい更新目標値を、前回の更新目標値よりも小さい値に設定する。ここで、更新目標値の変化量は、前回の更新目標値の変化量よりも小さい値に設定される（例えば、今回の変化量は、前回の変化量の半分である）。そして、プロセッサ１１０は、新しい更新目標値を用いて新しい仮対応関係を決定し（図４：Ｓ３３０〜Ｓ３５０）、新しい仮対応関係を用いて第１補正済画像データを補正して仮補正済画像データを生成し（Ｓ３６０）、仮補正済画像データからパッチの仮補正済明度値を取得する（Ｓ３７０）。Ｓ２８５で新しい更新目標値が前回の目標値よりも小さな値に設定されるので、新しい仮補正済明度値は、前回の仮補正済明度値から更に許容範囲に近づく。そして、プロセッサ１１０は、仮補正済明度値が許容範囲内となるまで、Ｓ２５５を含む処理を繰り返す。ここで、更新目標値の変化量が徐々に小さくなるので、新しい仮補正済明度値が、許容範囲未満に小さくなることは、抑制される。
【００６９】
以上のように、プロセッサ１１０（図１）は、種々の場合に、適切な補正対応関係を決定できる。そして、複合機２００は、対応関係データ２３８によって示される適切な補正対応関係に従って、スキャンデータを生成できる。
【００７０】
図１０は、複合機２００（図１）によって実行される読取処理の例を示すフローチャートである。Ｓ４１０では、ユーザは、読取対象のシートを、スキャナ部２８０のうちの読取の対象物を配置すべき位置（例えば、原稿台）に、配置する。ユーザは、複合機２００の操作部２５０を操作することによって、読取処理を開始させる。プロセッサ２１０は、指示に応じて、スキャナ部２８０にシートを読み取らせる。
【００７１】
Ｓ４２０では、プロセッサ２１０は、スキャナ部２８０から未補正のスキャンデータを取得する（読取画像データとも呼ぶ）。Ｓ４３０では、プロセッサ２１０は、読取画像データの複数の画素のＲＧＢの各色成分値を、対応関係データ２３８を用いて補正することによって、補正済読取画像データを生成する。上述したように、対応関係データ２３８は、複数のパッチＰ１０〜Ｐ７０の補正済の明度値が許容範囲内となるように、決定されている。従って、プロセッサ２１０は、適切な明度の補正済読取画像データを生成できる。Ｓ４４０では、プロセッサ２１０は、補正済読取画像データを記憶装置２１５（例えば、不揮発性記憶装置２３０）に格納する。格納の完了によって、図１０の処理は終了する。
【００７２】
以上のように、許容範囲データ２３６（図１）は、基準目標値ＭＴ（図６）と、基準目標値ＭＴを含む許容範囲の上限値ＭＵと下限値ＭＬと、を示している。基準目標値ＭＴは、スキャナ部２８０による読取によって得られる読取画像データによって示される色値（ここでは、ＲＧＢ値）で表される特定の色成分値（ここでは、明度値）の目標値の基準である。データ処理装置１００は、許容範囲データ２３６を格納する記憶装置１１５（具体的には、不揮発性記憶装置１３０）を備えている。そして、データ処理装置１００のプロセッサ１１０は、プログラム１３２に従って図２〜図３の処理を実行することによって、対応関係データ２３８を生成する。
【００７３】
図５（Ａ）で説明したように、シート９００のＮ個（本実施例では、Ｎ＝７）のパッチＰ１０〜Ｐ７０の間では、明度が互いに異なっている。図２のＳ１１０、Ｓ１２０で説明したように、データ処理装置１００（図１）のプロセッサ１１０は、Ｎ個のパッチＰ１０〜Ｐ７０を含むシート９００をスキャナ部２８０によって読み取ることによって得られるパッチ画像データを取得する。Ｓ１３０では、プロセッサ１１０は、Ｎ個のパッチのＮ個の明度値であるＮ個のパッチ明度値ＭＭ（図６（Ａ））を特定する。Ｓ１４０、Ｓ１５０では、プロセッサ１１０は、Ｎ個の未補正のパッチ明度値を、Ｎ個のパッチに対応付けられたＮ個の基準目標値ＭＴにそれぞれ近づける補正を行うための補正対応関係を決定する（第１決定とも呼ぶ）。図６（Ｂ）で説明したように、補正対応関係ＬＣｃは、未補正のＲＧＢ値のそれぞれの色成分値Ｃｉの全範囲における未補正の色成分値Ｃｉと補正済の色成分値Ｃｔとの対応関係を示している。
【００７４】
Ｓ１６０では、プロセッサ１１０は、パッチ画像データの複数の画素のそれぞれの色値を補正対応関係に従って補正することによって、第１補正済画像データを生成する。Ｓ１７０では、プロセッサ１１０は、第１補正済画像データによって示されるＮ個のパッチのＮ個の明度値であるＮ個の補正済パッチ明度値を特定する（例えば、図７の補正済パッチ明度値ＭＭｂ）。Ｓ１９０（図２）、Ｓ２２０（図３）では、プロセッサ１１０は、Ｎ個の補正済パッチ明度値のそれぞれについて、補正済パッチ明度値が、補正済パッチ明度値に対応する許容範囲と下限値ＭＬ未満の範囲と上限値ＭＵを超える範囲とのいずれに含まれるかを特定する。補正済パッチ明度値が許容範囲に含まれない場合（図２：Ｓ１９０：Ｎｏ）、プロセッサ１１０は、図３の処理を実行して、許容範囲に含まれない補正済パッチ明度値に対応するパッチ明度値の目標値として基準目標値ＭＴとは異なる更新目標値を決定する（例えば、図８（Ａ）の更新目標値ＭＴｂ）。そして、プロセッサ１１０は、図４の処理を実行して、更新目標値を用いて新たな補正対応関係を決定する（第２決定とも呼ぶ）。
【００７５】
第２決定において、プロセッサ１１０は、補正済パッチ明度値が下限値ＭＬ未満の範囲に含まれる場合、基準目標値ＭＴよりも大きい更新目標値を用いる（図３：Ｓ２４０）。また、プロセッサ１１０は、補正済パッチ明度値が上限値ＭＵを超える範囲に含まれる場合、基準目標値ＭＴよりも小さい更新目標値を用いる（Ｓ２７０）。
【００７６】
以上のように、補正済パッチ明度値が下限値ＭＬ未満の範囲に含まれる場合、基準目標値ＭＴよりも大きい第１目標値（図３：Ｓ２４０、Ｓ２５０、Ｓ２５５）を用いて補正対応関係が決定される。補正済パッチ明度値が上限値ＭＵを超える範囲に含まれる場合、基準目標値ＭＴよりも小さい第２目標値（Ｓ２７０、Ｓ２８０、Ｓ２８５）を用いて、補正対応関係が決定される。これらの結果、適切な補正対応関係を決定できる。網点によって表現されるパッチは、複数の明度を有する複数の画素によって表される。従って、基準目標値に基づき補正値を決定しても、その補正済パッチ明度値を基準目標値に一致させることは困難である。本実施例では、補正済パッチ明度値が許容範囲のどちらに外れているかに応じて、基準目標値を変更して補正値を決定することで、少ないやり直し回数で適切な補正対応関係を決定できる。
【００７７】
また、第２決定のために、プロセッサ１１０は、Ｓ３４０〜Ｓ３７０（図４）を含む第１処理と、Ｓ３８０、Ｓ３９０と、を実行する。Ｓ３４０、Ｓ３５０では、プロセッサ１１０は、仮対応関係を決定する。仮対応関係は、補正済パッチ明度値を更新目標値に近づける補正を行うための対応関係である。Ｓ３６０では、プロセッサ１１０は、第１補正済画像データの複数の画素のそれぞれの色値を仮対応関係に従って補正することによって、仮補正済画像データを生成する。Ｓ３７０では、プロセッサ１１０は、仮補正済画像データによって示されるＮ個のパッチのＮ個の明度値であるＮ個の仮補正済パッチ明度値を特定する（例えば、図８（Ｂ）の仮補正済明度値ＭＭｃ）。Ｓ３８０で、プロセッサ１１０は、Ｎ個の仮補正済パッチ明度値のそれぞれが、仮補正済パッチ明度値に対応する許容範囲に含まれるか否か判断する。そして、Ｓ３８０の判断結果がＹｅｓである場合に、Ｓ３９０で、プロセッサ１１０は、補正対応関係と仮対応関係とを用いて新たな補正対応関係を決定する。このように、新たな補正対応関係は、補正対応関係と仮対応関係とを用いて決定されるので、適切に新たな補正対応関係を決定できる。
【００７８】
また、第１処理を実行することによって特定される１以上の仮補正済パッチ明度値が仮補正済パッチ明度値に対応する許容範囲に含まれない場合（Ｓ３８０：Ｎｏ）、図３のＳ２５０、Ｓ２８０では、プロセッサ１１０は、基準目標値と更新目標値との間の値である新たな更新目標値を決定する（例えば、図９（Ａ）の更新目標値ＭＴｃ）。そして、プロセッサ１１０は、新たな更新目標値を用いて、再び第１処理を実行する。プロセッサ１１０は、再び実行される第１処理によって、適切な補正対応関係を決定できる。
【００７９】
また、補正済パッチ明度値が下限値未満の範囲に含まれる場合に、Ｓ２４０では、プロセッサ１１０は、上限値を更新目標値として採用する。また、補正済パッチ明度値が上限値を超える範囲に含まれる場合に、Ｓ２７０では、プロセッサ１１０は、下限値を更新目標値として採用する。以上により、プロセッサ１１０は、適切な補正対応関係を決定できる。
【００８０】
また、本実施例では、仮対応関係による補正で得られる仮補正済明度値が許容範囲外である場合（図４：Ｓ３８０：Ｎｏ）、その仮対応関係は利用されずに、新たな仮対応関係が用いられる。即ち、図４のＳ３９０で合成される対応関係の総数は、２である。仮に、補正対応関係と、互いに更新目標値が異なる複数の仮対応関係とが合成される場合、合成される対応関係の総数は、３以上である。この場合、最終的に得られる対応関係に関して、入力値の小さい変化に対して出力値が局所的に大きく変化する場合がある。この理由は、３以上の対応関係のそれぞれの補間の歪みが蓄積するからだと推定される。本実施例では、合成される対応関係の総数の最大数が２であるので、最終的に得られる対応関係に関して、入力値変化に対して出力値は滑らかに変化する。
【００８１】
変形例：
（１）補正対応関係を決定する処理は、図２〜図４の処理に代えて、他の種々の処理であってよい。例えば、図３のＳ２２０で、１以上の補正済明度値が上限値ＭＵを超え、１以上の補正済明度値が下限値ＭＬ未満である場合、プロセッサ１１０は、より広い許容範囲を用いて、補正対応関係を決定してよい。これに代えて、プロセッサ１１０は、複数の更新目標値を用いて複数の補正対応関係を決定し、複数の補正対応関係の中から、許容範囲外の補正済明度値に対応する明度レベルＶの範囲が最小である補正対応関係を選択してよい。更新目標値が上限値ＭＵであっても補正済明度値が下限値ＭＬ未満である場合には、プロセッサ１１０は、上限値ＭＵよりも大きい更新目標値を採用してよい。更新目標値が下限値ＭＬであっても補正済明度値が上限値ＭＵを超える場合には、プロセッサ１１０は、下限値ＭＬよりも小さい更新目標値を採用してよい。
【００８２】
図３のＳ２４０では、プロセッサ１１０は、新しい更新目標値を、基準目標値ＭＴよりも大きく、かつ、上限値ＭＵとは異なる値に設定してよい。例えば、新しい更新目標値は、ＭＴ＋Ｆ（ＭＵ−ＭＴ）に設定されてよい（Ｆは、ゼロより大きい所定の係数）。また、図３のＳ２７０では、プロセッサ１１０は、新しい更新目標値を、基準目標値ＭＴよりも小さく、かつ、下限値ＭＬとは異なる値に設定してよい。例えば、新しい更新目標値は、ＭＴ−Ｊ（ＭＴ−ＭＬ）に設定されてよい（Ｊは、ゼロより大きい所定の係数）。
【００８３】
図３、図４の処理において、処理回数Ｑが予め決められた上限回数に到達した場合には、プロセッサ１１０は、その時点での最新の仮対応関係を用いて、新しい補正対応関係を決定することとしてもよい。また、図４のＳ３６０、Ｓ３７０、Ｓ３８０が省略されて、Ｓ３５０で決定された仮対応関係が、Ｓ３９０で新しい対応関係として用いられてもよい。
【００８４】
図３、図４の処理では、プロセッサ１１０は、更新目標値を用いて、第１補正済画像データを更に補正するための仮対応関係を決定する。これに代えて、プロセッサ１１０は、更新目標値を用いて、未補正のパッチ画像データを補正するための新たな補正対応関係を決定してよい。
【００８５】
図３、図４の処理では、プロセッサ１１０は、全てのパッチＰ１０〜Ｐ７０に関して、補正用の対応関係を新たに決定している。これに代えて、プロセッサ１１０は、許容範囲外の補正済パッチ明度値に対応するパッチに関してのみ、補正用の対応関係を新たに決定し、許容範囲内の補正済パッチ明度値に対応するパッチに関しては、Ｓ１５０（図２）で決定された対応関係を維持してもよい。但し、１以上のパッチの補正済パッチ明度値が許容範囲外である場合に、全てのパッチに関して補正用の対応関係を新たに決定することが好ましい。これにより、入力値の小さい変化に対して出力値が局所的に大きく変化することを、抑制できる。
【００８６】
補正前の値と補正後の値との対応関係を特定する方法は、明度レベルＶを用いる方法に代えて、他の種々の方法であってよい。例えば、パッチの明度値と目標値との割合を用いて、対応関係が特定されてよい。
【００８７】
（２）補正対応関係の決定に用いられるパッチであって明度が互いに異なるパッチの総数は、７に代えて、２以上の任意の数であってよい。また、基準目標値と比較される色成分値は、Ｓ１３０（図２）で説明した明度値に代えて、他の種々の色成分値であってよい。例えば、明度値に代えて、緑Ｇの色値が用いられてよい。一般的には、明度と相関を有する色成分値を用いることが好ましい。
【００８８】
（３）図２〜図４の処理は、データ処理装置１００に代えて、複合機２００のプロセッサ２１０によって実行されてよい。不揮発性記憶装置２３０には許容範囲データ２３６が格納されており、プロセッサ２１０は、不揮発性記憶装置２３０に格納されている許容範囲データ２３６を用いて対応関係データ２３８を生成し、生成した対応関係データ２３８を不揮発性記憶装置２３０に格納してよい。
【００８９】
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。例えば、図２のＳ１５０の処理を、専用のハードウェア回路によって実現してもよい。
【００９０】
また、本発明の機能の一部または全部がコンピュータプログラムで実現される場合には、そのプログラムは、コンピュータ読み取り可能な記録媒体（例えば、一時的ではない記録媒体）に格納された形で提供することができる。プログラムは、提供時と同一または異なる記録媒体（コンピュータ読み取り可能な記録媒体）に格納された状態で、使用され得る。「コンピュータ読み取り可能な記録媒体」は、メモリーカードやＣＤ−ＲＯＭのような携帯型の記録媒体に限らず、各種ＲＯＭ等のコンピュータ内の内部記憶装置や、ハードディスクドライブ等のコンピュータに接続されている外部記憶装置も含み得る。
【００９１】
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【符号の説明】
【００９２】
１００…データ処理装置、１１０…プロセッサ、１１５…記憶装置、１２０…揮発性記憶装置、１３０…不揮発性記憶装置、１３２…プログラム、１４０…表示部、１５０…操作部、１７０…通信インタフェース、２００…複合機、２１０…プロセッサ、２１５…記憶装置、２２０…揮発性記憶装置、２３０…不揮発性記憶装置、２３２…プログラム、２３６…許容範囲データ、２３８…対応関係データ、２４０…表示部、２５０…操作部、２７０…通信インタフェース、２８０…スキャナ部、２９９…制御部、４００…プリンタ部、９００…シート、１０００…画像処理システム
【図１】
2020141344.tif 000003
【図２】
2020141344.tif 000004
【図３】
2020141344.tif 000005
【図４】
2020141344.tif 000006
【図５】
2020141344.tif 000007
【図６】
2020141344.tif 000008
【図７】
2020141344.tif 000009
【図８】
2020141344.tif 000010
【図９】
2020141344.tif 000011
【図１０】
2020141344.tif 000012