(57)【要約】【課題】出力色空間の種別にかかわらず適切な補正量の取得を実現する。【解決手段】入力画像データの所定の統計値であって、所定の出力色空間によって表現された統計値を取得する統計値取得手段と、機器非依存色空間において定義された、上記統計値に対する目標値を取得するとともに、当該目標値を上記出力色空間における情報に変換する目標値変換手段と、上記統計値取得手段が取得した統計値と上記変換後の情報との比較に基づいて、上記入力画像データに対する補正量を決定する補正量決定手段とを備える構成とした。【選択図】図１０
2008245117.tif 000002
【特許請求の範囲】
【請求項１】
入力画像データの所定の統計値であって、所定の出力色空間によって表現された統計値を取得する統計値取得手段と、
機器非依存色空間において定義された、上記統計値に対する目標値を取得するとともに、当該目標値を上記出力色空間における情報に変換する目標値変換手段と、
上記統計値取得手段が取得した統計値と上記変換後の情報との比較に基づいて、上記入力画像データに対する補正量を決定する補正量決定手段とを備えることを特徴とする画像処理装置。
【請求項２】
上記統計値取得手段は、上記入力画像データを構成する各画素のうち特定の記憶色の色域に属する画素を抽出し、この抽出した画素群に基づいて生成した統計値を取得し、
上記目標値変換手段は、機器非依存色空間において定義された上記記憶色の目標値を上記出力色空間における情報に変換し、
上記補正量決定手段は、上記記憶色にかかる統計値と、上記記憶色の目標値の変換後の情報との比較に基づいて補正量を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
上記統計値取得手段は、上記記憶色の目標値に基づいて、記憶色の色域を機器非依存色空間において決定するとともに、当決定した色域を入力画像データの色空間に依存する色域に変換し、入力画像データを構成する各画素のうち当該変換後の色域に属する画素を抽出することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
上記統計値取得手段は、上記入力画像データ内に存在する人顔を検出し、人顔の領域内の画素群に基づいて生成した統計値を取得し、
上記目標値変換手段は、機器非依存色空間において定義された人顔の色の目標値を上記出力色空間における情報に変換し、
上記補正量決定手段は、上記人顔にかかる統計値と、上記人顔の目標値の変換後の情報との比較に基づいて補正量を決定することを特徴とする請求項１〜請求項３のいずれかに記載の画像処理装置。
【請求項５】
上記統計値取得手段は、上記入力画像データの明るさを表現する統計値を取得し、
上記目標値変換手段は、機器非依存色空間において定義された所定の明るさ目標値を上記出力色空間における情報に変換し、
上記補正量決定手段は、上記明るさを表現する統計値と、上記明るさ目標値の変換後の情報との比較に基づいて補正量を決定することを特徴とする請求項１〜請求項４のいずれかに記載の画像処理装置。
【請求項６】
上記決定した補正量に基づいて、上記出力色空間において入力画像データを補正する補正手段を更に備えることを特徴とする請求項１〜請求項５のいずれかに記載の画像処理装置。
【請求項７】
入力画像データの所定の統計値であって、所定の出力色空間によって表現された統計値を取得する統計値取得工程と、
機器非依存色空間において定義された、上記統計値に対する目標値を取得するとともに、当該目標値を上記出力色空間における情報に変換する目標値変換工程と、
上記統計値取得工程にて取得した統計値と上記変換後の情報との比較に基づいて、上記入力画像データに対する補正量を決定する補正量決定工程とを備えることを特徴とする画像処理方法。
【請求項８】
入力画像データの所定の統計値であって、所定の出力色空間によって表現された統計値を取得する統計値取得機能と、
機器非依存色空間において定義された、上記統計値に対する目標値を取得するとともに、当該目標値を上記出力色空間における情報に変換する目標値変換機能と、
上記統計値取得機能によって取得した統計値と上記変換後の情報との比較に基づいて、上記入力画像データに対する補正量を決定する補正量決定機能とをコンピュータに実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法および画像処理プログラムに関する。
【背景技術】
【０００２】
従来から画像処理の一種として、入力画像データの各画素の値に基づいて入力画像データの統計値を生成する処理が行なわれている。また、かかる統計値に基づいて入力画像データに対する補正量を求め、当該求めた補正量に応じて画像データの各画素の値を補正し、補正後の画像データを次の処理ステップに渡す処理が行なわれている。
【０００３】
この具体例として、入力画像データの各画素のうち、特定の記憶色（例えば、肌色）に該当する画素を集計し、集計した画素のＲＧＢ毎の平均値（統計値）を求め、この各平均値と、予め求めておいた肌色の画素の理想的なＲＧＢ毎の平均値（目標値）との差分に応じてＲＧＢそれぞれに対する修正量ΔＲ、ΔＧ、ΔＢ（補正量）を求め、この修正量ΔＲ、ΔＧ、ΔＢに応じてＲＧＢ毎のトーンカーブを生成し、このトーンカーブを利用して画像データの全画素の要素色を変換して画像データを補正する色修正装置が知られている（特許文献１参照。）。
【特許文献１】特開平１１‐８７７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記補正後の画像データは、補正後の処理を考慮して所定の色空間（出力色空間）で表現された画像データとして、上記次の処理ステップに出力される。従って、上記補正量の計算や補正処理も基本的に出力色空間上で実行される。そのため従来においては、補正量の計算のための上記目標値も、出力色空間上で表現された情報として所定の記憶媒体に保存されており、補正量の計算に際して適宜読み出して利用されていた。
しかし、このように目標値をある一つの出力色空間に依存した情報としてしまうと、出力色空間の設定を別の色空間に変更した場合に、それまでの目標値を補正量の計算に使用できないという問題があった。またその結果、出力色空間の設定が変り得る場合には、各出力色空間の種類に合わせて目標値も別々に予め用意しておく必要があり、メモリ容量の消費が激しかった。
【０００５】
本発明は上記課題に鑑みてなされたものであり、採用され得る出力色空間の違いによらず的確に補正処理のための補正量を取得し、目的の補正を実行することが可能な画像処理装置、画像処理方法および画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明にかかる画像処理装置では、統計値取得手段は、入力画像データの所定の統計値であって、所定の出力色空間によって表現された統計値を取得する。目標値変換手段は、機器非依存色空間において定義された、上記統計値に対する目標値を取得するとともに、当該目標値を上記出力色空間における情報に変換する。補正量決定手段は、上記統計値取得手段が取得した統計値と上記変換後の情報との比較に基づいて、上記入力画像データに対する補正量を決定する。
つまり本発明によれば、補正量決定のための基準となる目標値は機器非依存色空間において定義されており、補正量決定の際に、この目標値を出力色空間における情報に変換して補正量を計算する。よって、従来のように各出力色空間の種類に合わせて目標値を別々に予め用意しておく煩雑さが無くなり、メモリの消費を抑えることができる。
【０００７】
ここで統計値取得手段は、上記入力画像データを構成する各画素のうち特定の記憶色の色域に属する画素を抽出し、この抽出した画素群に基づいて生成した統計値を取得し、上記目標値変換手段は、機器非依存色空間において定義された上記記憶色の目標値を上記出力色空間における情報に変換するとしてもよい。そして、上記補正量決定手段は、上記記憶色にかかる統計値と、上記記憶色の目標値の変換後の情報との比較に基づいて補正量を決定する。かかる構成によれば、入力画像中の特定の記憶色を補正するために適した補正量を、機器非依存色空間において定義された目標値を用いて適切に得ることができる。
【０００８】
また統計値取得手段は、上記記憶色の目標値に基づいて、記憶色の色域を機器非依存色空間において決定するとともに、当決定した色域を入力画像データの色空間に依存する色域に変換し、入力画像データを構成する各画素のうち当該変換後の色域に属する画素を抽出するとしてもよい。このように、画素抽出を行なう際の判断基準となる記憶色の色域の設定を、上記機器非依存色空間において定義された記憶色の目標値に基準に行うことにより、入力画像データから記憶色の色域に属する画素群を正確に抽出することができる。
【０００９】
上記統計値取得手段は、上記入力画像データ内に存在する人顔を検出し、人顔の領域内の画素群に基づいて生成した統計値を取得し、上記目標値変換手段は、機器非依存色空間において定義された人顔の色の目標値を上記出力色空間における情報に変換するとしてもよい。そして上記補正量決定手段は、上記人顔にかかる統計値と、上記人顔の目標値の変換後の情報との比較に基づいて補正量を決定する。かかる構成によれば、入力画像中の人顔の色を補正するために適した補正量を、機器非依存色空間において定義された目標値を用いて適切に得ることができる。
【００１０】
また上記統計値取得手段は、上記入力画像データの明るさを表現する統計値を取得し、上記目標値変換手段は、機器非依存色空間において定義された所定の明るさ目標値を上記出力色空間における情報に変換するとしてもよい。そして上記補正量決定手段は、上記明るさを表現する統計値と、上記明るさ目標値の変換後の情報との比較に基づいて補正量を決定する。かかる構成によれば、入力画像の明るさを補正するために適した補正量を、機器非依存色空間において定義された目標値を用いて適切に得ることができる。
【００１１】
さらに画像処理装置は、上記決定した補正量に基づいて、上記出力色空間において入力画像データを補正する補正手段を備えるとしてもよい。かかる構成とすることで、記憶色や、人顔や、明るさ等をそれぞれ補正するための各補正量の全て或いは一部を用いて、出力色空間上で入力画像データを補正することができる。その結果、画像処理装置は、最適な補正が施されて上記出力画像空間において表現された画像データを、次の処理ステップに引き渡すことができる。
【００１２】
なおこれまでは、画像処理装置というカテゴリーで本発明にかかる技術的思想を説明したが、上記の画像処理装置が備える各手段にそれぞれ対応した処理工程を備える画像処理方法の発明や、画像処理装置が備える各手段にそれぞれ対応した機能をコンピュータに実行させる画像処理プログラムの発明をも把握可能であることは言うまでも無い。
【発明を実施するための最良の形態】
【００１３】
以下の順序に従って、本発明の実施形態を説明する。
（１）画像処理装置などの概略構成
（２）記憶色画素の抽出処理
（３）統計データの取得処理
（４）補正量の計算および補正処理
（５）変形例
（６）まとめ
【００１４】
（１）画像処理装置などの概略構成
図１は、本発明の一実施形態にかかる画像処理装置と、その周辺機器の概略構成をブロック図により示している。同図においては、画像処理の中心的な役割を果たす画像処理装置としてのコンピュータ２０を示している。コンピュータ２０は、ＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３、ハードディスク（ＨＤ）２４などを備える。コンピュータ２０には、各種の画像入力装置としてのスキャナ１１、デジタルスチルカメラ１２や、各種の画像出力装置としてのプリンタ３１、ディスプレイ３２が適宜接続される。
【００１５】
コンピュータ２０においては、ＣＰＵ２１がＲＡＭ２３をワークエリアとして使用しながら、ＲＯＭ２２やＨＤ２４等の所定の記憶媒体に保存されている各種プログラムを実行する。本実施形態では、ＣＰＵ２１はＨＤ２４に記憶されているアプリケーション（ＡＰＬ）２５を読み出して実行する。実行されるＡＰＬ２５は、概略、画像データ取得部２５ａと、画素抽出部２５ｂと、統計データ取得部２５ｃと、補正量取得部２５ｄと、補正部２５ｅといった各機能ブロックを構成する。
【００１６】
画像データ取得部２５ａは、上記画像入力装置から出力される画像データや、ＨＤ２４に予め保存されている画像データを、入力画像データとして取得する。
画素抽出部２５ｂは、入力画像データを構成する画素のうち所定の条件に該当する画素を抽出（サンプリング）する。本実施形態では、特定の記憶色の色域に該当する画素を抽出する。特定の記憶色とは、肌色や、空色や、緑色や、赤色等といった、画像の中でも特に重要とされる特定の色を意味する。
【００１７】
統計データ取得部２５ｃは、画素抽出部２５ｂによって抽出された画素群や、画像データ取得部２５ａから受け渡された入力画像データの画素群などに基づいて、各種統計値（統計データ）を生成し取得する。統計データ取得部２５ｃは、画素群に基づいてヒストグラムを生成し、ヒストグラムの集計結果から各統計データを生成する統計データ生成部２５ｃ１と、この生成された統計データを、所定の機器非依存色空間によって表現される色情報に変換し、当該変換後の色情報をＨＤ２４に統計データ２４ｃとして保存する統計データ変換部２５ｃ２とからなる。 
【００１８】
補正量取得部２５ｄは、ＨＤ２４から統計データ２４ｃを読み出すとともに、補正目標値２４ｂを取得して、入力画像データを補正するための補正量を決定する。補正目標値２４ｂとは、統計データ２４ｃの理想値であり、ＨＤ２４等の所定の記憶媒体に予め保存されていたり、外部から入力される。本実施形態では、補正目標値２４ｂは所定の機器非依存色空間において定義された情報としている。補正量取得部２５ｄは、補正目標値２４ｂを所定の出力色空間における情報に変換する目標値変換部２５ｄ１と、統計データ２４ｃを同所定の出力色空間における情報に変換する統計データ変換部２５ｄ２と、上記変換後の統計データと補正目標値との比較に基づいて補正量を計算する補正量決定部２５ｄ３とからなる。
【００１９】
補正部２５ｅは、画像データ取得部２５ａから入力画像データを受け取るとともに、上記決定された補正量に基づいて、入力画像データを画素単位で補正し、当該補正後の画像データを出力する。
画素抽出部２５ｂ、統計データ取得部２５ｃ、補正量取得部２５ｄ、補正部２５ｅそれぞれによる処理の詳細については後述する。
【００２０】
コンピュータ２０では、ＡＰＬ２５はオペレーティングシステム２６に組み込まれて実行され、オペレーティングシステム２６には、プリンタドライバ２７およびディスプレイドライバ２８も組み込まれている。ディスプレイドライバ２８はディスプレイ３２への画像表示を制御するドライバであり、ＡＰＬ２５の補正部２５ｅから出力された補正後の画像データに基づいて、画像をディスプレイ３２に表示させることが可能である。また、プリンタドライバ２７は、ＡＰＬ２５の補正部２５ｅから出力された補正後の画像データに対して、インク色（例えば、シアン、マゼンタ、イエロー、ブラック）表色系への色変換処理やハーフトーン処理やラスタライズ処理などを実行して印刷データを生成するとともに、この印刷データをプリンタ３１に出力することにより、プリンタ３１に印刷データに基づく画像の印刷を実行させることが可能である。
【００２１】
ここで、上記画像データ取得部２５ａが取得する入力画像データは、ＲＧＢの各要素色を複数階調（例えば、０〜２５５の２５６階調）で表現して各画素の色を規定したドットマトリクス状のデータである。ＲＧＢ色空間としては、ｓＲＧＢ色空間が一般的であるが、ＡｄｏｂｅＲＧＢ（ＡｄｏｂｅはＡｄｏｂｅ  ｓｙｓｔｅｍｓ社の登録商標。）色空間など、ｓＲＧＢ色空間よりも広い色再現範囲を有する色空間も存在する。従って、デジタルスチルカメラ１２などの画像入力装置から出力される入力画像データが採用する色空間（入力色空間）は、ｓＲＧＢ色空間であったり、ｓＲＧＢ色空間とは異なる色空間であったりする。一方、補正部２５ｅが出力する画像データ、つまりＡＰＬ２５がプリンタドライバ２７等の次の処理ステップに受け渡す画像データを表現するための色空間（出力色空間）の設定は、入力色空間と同じであることもあれば異なることもある。
【００２２】
本実施形態では、入力色空間が何であるか、また入力色空間と出力色空間とが同じであるか否か、に拘らず入力画像データに対する適切な補正を実行可能な構成を実現している。以下では説明を容易とするため、入力色空間、出力色空間のそれぞれは、ｓＲＧＢ色空間とｓＲＧＢ色空間よりも色再現範囲の広い特定の色空間（ｗＲＧＢ色空間）とのいずれかであるものとする。ｓＲＧＢ色空間とｗＲＧＢ色空間とはいずれも機器依存色空間である。
【００２３】
なお、本実施形態で説明するコンピュータ２０が実行する処理は、その全て或いは一部を、上記画像入力装置の側で実行するとしてもよいし、上記画像出力装置の側で実行するとしてもよい。例えば、補正部２５ｅの機能については、プリンタ３１やディスプレイ３２の側に備えさせ、プリンタ３１やディスプレイ３２が、上記ＡＰＬ２５から受け渡された画像データを補正し、補正後の画像データに基づいて印刷処理や画像表示処理を行なうとしてもよい。この場合、コンピュータ２０とプリンタ３１、ディスプレイ３２とによって画像処理システムが構築されると言える。
【００２４】
（２）記憶色画素の抽出処理
図２は、コンピュータ２０がＡＰＬ２５に従って実行する画像処理の一部であって、主に画素抽出部２５ｂに従って実行する処理をフローチャートにより示している。
ステップＳ（以下、ステップの記載を省略する）１００では、コンピュータ２０は、入力画像データがいずれの色空間によって表現されているかを判別する。画像データ取得部２５ａが取得する入力画像データには、その画像データに関する各種付属情報を記述したヘッダが付加されており、かかるヘッダに入力色空間の種別を示した情報が記述されている。コンピュータ２０は、このヘッダに記述された情報に基づいて、入力色空間の種別を判別する。
【００２５】
Ｓ１１０では、コンピュータ２０は、ＨＤ２４に予め保存されている色域定義情報２４ａを読み出す。ただし、コンピュータ２０は色域定義情報２４ａをコンピュータ２０外部から入力するようにしてもよい。色域定義情報２４ａは、機器非依存色空間において記憶色の範囲を定義した情報である。本実施形態では、機器非依存色空間として、国際照明委員会（ＣＩＥ）で規定されたＬ*ａ*ｂ*色空間を採用する。従って色域定義情報２４ａは、記憶色についてその明度（Ｌ*）、彩度（Ｃ*）、色相（ｈ*）の各範囲を定義したものである（以下、「*」は省略）。
【００２６】
図３は、ある記憶色（例えば、肌色）の色域定義情報２４ａによって定義された色域Ａの一例をＬａｂ色空間中に示している。同図に示すように、色域Ａは、明度Ｌ、彩度Ｃ、色相ｈの各範囲、
Ｌs≦Ｌ≦Ｌe
Ｃs≦Ｃ≦Ｃe
ｈs≦ｈ≦ｈe
によって区画された立体にて表現される。同図では、ａｂ平面上へ色域Ａの投影図もハッチングを施して併せて示している。
Ｓ１２０では、コンピュータ２０は、色域Ａの各面において変換基準点Ｐを設定する。変換基準点Ｐとは、色域Ａの外郭上の座標のうち入力画像データの色空間に依存する情報への変換対象となる座標値を意味する。
【００２７】
図４に示すように、コンピュータ２０は、色域Ａの各面において１つずつ変換基準点Ｐ（Ｐ１〜Ｐ６）を設定する。変換基準点Ｐの位置を各面のどこにするかは種々の考えを採用できるが、本実施形態では各面の中心位置をそれぞれ変換基準点Ｐ１〜Ｐ６としている。ここで、変換基準点Ｐ１は、色域Ａのうち色相角が最も小さい面上の点であり、変換基準点Ｐ２は、色域Ａのうち色相角が最も大きい面上の点であり、変換基準点Ｐ３は、色域Ａのうち彩度が最も低い面上の点であり、変換基準点Ｐ４は、色域Ａのうち彩度が最も高い面上の点であり、変換基準点Ｐ５は、色域Ａのうち明度が最も低い面上の点であり、変換基準点Ｐ６は、色域Ａのうち明度が最も高い面上の点である。
【００２８】
Ｓ１３０では、コンピュータ２０は、変換基準点Ｐの座標データＬａｂを入力色空間に依存する情報に変換する。まず、コンピュータ２０は上記Ｓ１００で判別済みの入力色空間の種別に応じたＩＣＣプロファイルをＨＤ２４等の所定の記憶媒体から取得し、当該ＩＣＣプロファイルを参照して各変換基準点Ｐの座標データＬａｂをＲＧＢデータに変換する。入力色空間がｓＲＧＢ色空間である場合には、Ｌａｂ色空間の複数の参照点についてそのＬａｂデータとｓＲＧＢ色空間におけるＲＧＢデータとの変換対応関係を規定したＩＣＣプロファイルを取得し、そのプロファイルを参照することにより、各変換基準点ＰのＬａｂデータをＲＧＢデータに変換する。
【００２９】
変換基準点Ｐの座標値を入力画色空間に依存する情報に変換すると言った場合、最も単純には、上記のように変換して得られたＲＧＢデータ自体が上記入力色空間に依存する情報に該当する。しかし本実施形態では、このように変換したＲＧＢデータを更にＨＳＶ形式の情報に変換する。Ｈ（Hue）は色相、Ｓ（Saturation）は彩度、Ｖ（Value）は明度を意味する。ＲＧＢからＨＳＶへの変換は、公知の変換式により実行可能である。
【００３０】
かかる処理の結果、図４に示した変換基準点Ｐ１〜Ｐ６は、
Ｐ１（Ｌ1，ａ1，ｂ1）→Ｐ１´（Ｈ1，Ｓ1，Ｖ1）
Ｐ２（Ｌ2，ａ2，ｂ2）→Ｐ２´（Ｈ2，Ｓ2，Ｖ2）
Ｐ３（Ｌ3，ａ3，ｂ3）→Ｐ３´（Ｈ3，Ｓ3，Ｖ3）
Ｐ４（Ｌ4，ａ4，ｂ4）→Ｐ４´（Ｈ4，Ｓ4，Ｖ4）
Ｐ５（Ｌ5，ａ5，ｂ5）→Ｐ５´（Ｈ5，Ｓ5，Ｖ5）
Ｐ６（Ｌ6，ａ6，ｂ6）→Ｐ６´（Ｈ6，Ｓ6，Ｖ6）
というように変換されたことになる。
【００３１】
このようなＨＳＶの値は変換元のＲＧＢの数値によって決まる値であるため、入力色空間に依存する情報と言える。むろん、入力色空間がｗＲＧＢ色空間である場合には、コンピュータ２０はＬａｂ色空間からｗＲＧＢ色空間への変換対応関係を規定したＩＣＣプロファイルを参照して各変換基準点ＰのＬａｂデータをＲＧＢデータに変換し、この変換後のＲＧＢデータをＨＳＶ形式で表現する。
【００３２】
なおコンピュータ２０は、上記のようにＬａｂデータをＲＧＢデータに変換し、これをＨＳＶデータに変換するという２段階の変換作業を行なうのではなく、入力色空間の種別毎にＬａｂデータとＨＳＶデータとの変換対応関係を規定したルックアップテーブル（ＬＵＴ）を予め生成してＨＤ２４等の所定の記憶媒体に保持しておくとしてもよい。つまり、Ｌａｂ色空間からｓＲＧＢ色空間（あるいはｗＲＧＢ色空間）への変換対応関係を規定するＩＣＣプロファイルにおける各ＲＧＢデータをＨＳＶデータに変換するとともに、この変換によって得た各ＨＳＶデータを、変換元のＲＧＢデータに対応するＬａｂデータに対応付けることにより、ＬａｂデータをｓＲＧＢ色空間（あるいはｗＲＧＢ色空間）に依存したＨＳＶデータに変換可能なＬＵＴを生成する。
【００３３】
上記Ｓ１３０では、コンピュータ２０は、このように生成した各ＬＵＴを入力色空間の種別に応じて選択して参照することにより、各変換基準点ＰのＬａｂデータをＨＳＶデータに変換するとしてもよい。
【００３４】
Ｓ１４０ではコンピュータ２０は、Ｓ１３０の変換処理によって得られた、入力色空間に依存する情報に基づいて、画素抽出のための色域を決定する。
本実施形態においては変換基準点Ｐ１〜Ｐ６の変換結果として、座標値Ｐ１´〜Ｐ６´が得られているので、コンピュータ２０はこれら座標値Ｐ１´〜Ｐ６´に基づいて画素抽出のための色域Ａ´を決定する。座標値Ｐ１´は上記色域Ａのうち色相角が最も小さい面上の変換基準点Ｐ１を変換した結果であり、座標値Ｐ２´は色域Ａのうち色相角が最も大きい面上の変換基準点Ｐ２を変換した結果であるため、座標値Ｐ１´の色相Ｈ1と座標値Ｐ２´の色相Ｈ2とによって挟まれる範囲を色域Ａ´の色相範囲とする。 
【００３５】
また、座標値Ｐ３´は色域Ａのうち彩度が最も低い面上の変換基準点Ｐ３を変換した結果であり、座標値Ｐ４´は色域Ａのうち彩度が最も高い面上の変換基準点Ｐ４を変換した結果であるため、座標値Ｐ３´の彩度Ｓ3と座標値Ｐ４´の彩度Ｓ4とによって挟まれる範囲を色域Ａ´の彩度範囲とする。
また、座標値Ｐ５´は色域Ａのうち明度が最も低い面上の変換基準点Ｐ５を変換した結果であり、座標値Ｐ６´は色域Ａのうち明度が最も高い面上の変換基準点Ｐ６を変換した結果であるため、座標値Ｐ５´の明度Ｖ5と座標値Ｐ６´の明度Ｖ6とによって挟まれる範囲を色域Ａ´の明度範囲とする。
【００３６】
図５は、色域Ａ´をＨＳＶ表色空間において示している。同図に示すように、色域Ａ´は、
Ｈ1≦Ｈ≦Ｈ2
Ｓ3≦Ｓ≦Ｓ4
Ｖ5≦Ｖ≦Ｖ6
によって区画された立体にて表現される。
このようにＳ１００〜Ｓ１４０の処理によって、色域定義情報２４ａが定義する色域（色域Ａ）を入力画像データの色空間に依存する色域（色域Ａ´）に変換することができる。また、変換後の色域についても明度と彩度と色相の各範囲によって定義することで、変換前の色域と変換後の色域との形状の類似性を保つことができる。
【００３７】
Ｓ１５０ではコンピュータ２０は、入力画像データを構成する画素のうち、上記変換後の色域に属する画素を抽出する。この場合、各画素についてそのＲＧＢデータをＨＳＶデータで表現した上で上記変換後の色域に属するか否かを判断し、属する画素のみ抽出する。抽出された画素群は上述の統計データ取得部２５ｃに受け渡され、統計データ２４ｃの算出元のデータとなる。
なお図３，４では、１つの色域定義情報２４ａにかかる色域のみを図示しているが、上述したような記憶色の種類毎に色域定義情報２４ａは存在する。本実施形態では、少なくとも肌色と、空色と、緑色と、赤色と、低彩度色との色域をそれぞれ定義した色域定義情報２４ａが存在するものとする。コンピュータ２０は、色域定義情報２４ａ毎にそれらの色域を入力色空間に依存する色域に変換し、変換後の色域毎に画素抽出を行なう。
【００３８】
（３）統計データの取得処理
図６は、コンピュータ２０がＡＰＬ２５に従って実行する画像処理の一部であって、主に統計データ取得部２５ｃに従って実行する処理をフローチャートにより示している。
Ｓ２００では、コンピュータ２０は、上述したように記憶色毎に抽出された画素群を対象として統計データを生成する。具体的には、一つの記憶色にかかる画素群に基づいて、要素色ＲＧＢ毎のヒストグラムを生成し、そのＲＧＢ毎のヒストグラムそれぞれにおける平均値Ｒav、Ｇav、Ｂavを算出する。
【００３９】
図７（ａ）〜（ｃ）は、ＲＧＢそれぞれのヒストグラムを例示している。各ヒストグラムは、縦軸に画素数、横軸に階調値（０〜２５５）を規定した頻度分布である。
平均値Ｒav、Ｇav、Ｂavの算出は、記憶色の種類毎に行なう。従ってＳ２００では、入力画像データに関して、記憶色毎かつＲＧＢ毎の平均値が生成される。ただし、上記Ｓ１５０において抽出された画素数が入力画像データの全画素数に対して所定割合以上存在しない記憶色に関しては、統計データの生成は行なわない。入力画像データ中に存在しないか存在しても極めて少数である色については、補正を行う必要性が低いからである。
【００４０】
Ｓ２１０では、コンピュータ２０は、入力画像データ全体を対象とした統計データを生成する。具体的には、入力画像データの全範囲の画素を対象としてＲＧＢ毎のヒストグラムを生成し、そのＲＧＢ毎のヒストグラムそれぞれにおける最大値Ｒmax、Ｇmax、Ｂmaxと、最小値Ｒmin、Ｇmin、Ｂminとを取得する。最大値および最小値を求める場合、単純にヒストグラム上の最も高階調側の階調値を最大値とし、最も低階調側の階調値を最小値としてもよい。しかし本実施形態では、最も高階調側の階調値と最も低階調側の階調値とからある分布割合（例えば、ヒストグラムの集計に用いた画像数の０．５％分）だけヒストグラムの内側に入った位置をそれぞれ最大値、最小値としている。このようにヒストグラムの上端と下端を所定割合だけカットすれば、高階調側や低階調側でノイズなどに起因して生じている白点や黒点の影響を無視した統計データを生成することができる。かかる上端と下端のカットは、他のヒストグラムに基づく統計データの生成時にも実行する。
【００４１】
Ｓ２２０では、コンピュータ２０は、入力画像データを複数の領域に分割するとともに、分割した領域毎の統計データを生成する。
図８は、入力画像データＤを複数の領域に分割した様子の一例を示している。同図では、入力画像データＤを縦横それぞれ５分割し、計２５個の領域Ｔを形成している。むろん、入力画像データＤの分割の仕方は同図に示した態様に限られない。コンピュータ２０は分割後の領域単位でＲＧＢ毎のヒスグラムを生成し、ＲＧＢ毎のヒストグラムそれぞれの平均値Ｒav、Ｇav、Ｂavを算出する。従ってＳ２２０では、入力画像データに関して、分割した領域毎かつＲＧＢ毎の平均値が生成される。またＳ２２０では、平均値以外にも、各ヒストグラムの中央値（メジアン）Ｒmed、Ｇmed、Ｂmedを生成してもよい。
【００４２】
Ｓ２３０では、コンピュータ２０は、入力画像データ中に存在する人物の顔（人顔）を検出するとともに、検出した人顔の領域内の画素群を対象とした統計データを生成する。人顔の検出処理は、公知の人顔検出用のプログラムを用いて実行可能である。ここでは、検出した人顔の範囲内の画素群に基づいてＲＧＢ毎のヒストグラムを生成し、そのＲＧＢ毎のヒストグラムそれぞれにおける平均値Ｒav、Ｇav、Ｂavを算出する。人顔が複数検出された場合は、検出した人顔毎に平均値Ｒav、Ｇav、Ｂavを算出する。むろん、人顔が検知されない場合は人顔に関する統計データは生成しない。
なお、上記各ヒストグラムを生成する場合、ヒストグラムの集計対象とした領域に属する全画素に基づいて生成してもよいが、同集計対象とした領域の中から所定の抽出率に基づいて抽出した画素に基づいて生成してもよい。
【００４３】
Ｓ２４０では、コンピュータ２０は、上記のように生成した各統計データを、Ｌａｂ色空間上の色情報に変換する。つまりＳ２００〜Ｓ２３０で生成した各統計データは入力色空間に依存する情報であるため、これを機器非依存色空間であるＬａｂ色空間の情報に変換することにより、後の補正量計算の際に用いられる色空間（出力色空間）がどのようなものであっても統計データを容易に利用できるようにしている。具体的にはＳ２４０では、上記Ｓ１００で判別済みの入力色空間に応じた変換プロファイル（入力デバイスプロファイルとも言う）をＨＤ２４等の所定の記憶媒体から取得し、当該変換プロファイルを参照して、統計データとしてのＲＧＢデータをＬａｂデータに変換する。入力色空間がｓＲＧＢ色空間である場合には、ｓＲＧＢ色空間をＬａｂ色空間に変換する変換プロファイルを使用し、入力色空間がｗＲＧＢ色空間である場合には、ｗＲＧＢ色空間をＬａｂ色空間に変換する変換プロファイルを使用する。
【００４４】
図９は、入力色空間に依存する情報としての各統計データをＬａｂデータに変換した一例を示している。同図では、入力色空間がｓＲＧＢ色空間である場合を示している。また同図および後述の図１１では、Ｌａｂデータについても０〜２５５の２５６階調にて表現している。
本実施形態では、要素色ＲＧＢ別の統計データであって同種の統計データの組み合わせを一つの色とみなし、この組み合わせをＬａｂデータに変換している。つまり、入力画像データ全体のヒストグラムの最大値Ｒmax、Ｇmax、Ｂmaxの組み合わせからなるＲＧＢデータや、ある記憶色についての平均値Ｒav、Ｇav、ＢavからなるＲＧＢデータや、ある分割後の領域についての平均値Ｒav、Ｇav、ＢavからなるＲＧＢデータや、人顔の色にかかる平均値Ｒav、Ｇav、ＢavからなるＲＧＢデータ等をそれぞれＬａｂデータに変換している。 
【００４５】
上記同種の統計データの組み合わせにおける一つ一つの値（例えば、ヒストグラムの最大値Ｒmax、Ｇmax、Ｂmax）は、必ずしもそれらが同じ画素に属していると言う訳ではないが、色味が互いに接近した画素に属していると言える。例えば、上記最大値Ｒmax、Ｇmax、Ｂmaxはいずれも白っぽい画素に属したものであろうし、上記最小値Ｒmin、Ｇmin、Ｂminはいずれも黒っぽい画素に属したものであると想定される。また、一つの記憶色についての平均値Ｒav、Ｇav、Ｂavや、分割後の一つの領域についての平均値Ｒav、Ｇav、Ｂavなども、その組み合わせを構成するＲＧＢは色味が似通った画素に属していると想定される。さらに上述したように、各ヒストグラムから統計データを求める場合には、ヒストグラムの上端および下端をそれぞれ所定分布割合だけカットした上で求めており、ノイズの影響が統計データに表れることを防止している。従って、上記同種の統計データの組み合わせを一つの色として扱っても大きな支障はなく、これをＬａｂデータに変換しても統計値としての情報が劣化することは殆ど無いと言える。また、上記同種の統計データの組み合わせをＬａｂデータに変換することにより、入力画像データの要素色ＲＧＢ毎に生成した各種統計データを効率的に、Ｌａｂ色空間上の情報に変換できる。
【００４６】
Ｓ２５０では、コンピュータ２０は、上記のようにＬａｂ色空間上の値に変換した後の統計データ２４ｃをＨＤ２４に保存する。
なお図６の各ステップで説明した統計データの生成処理の順序は、上述したＳ２００〜Ｓ２３０の順序に限られず、他の順序であってもよい。また、上述した各統計データの他にも、コンピュータ２０は入力画像データに関する様々な統計値を生成可能である。
【００４７】
（４）補正量の計算および補正処理
図１０は、コンピュータ２０がＡＰＬ２５に従って実行する画像処理の一部であって、主に補正量取得部２５ｄ及び補正部２５ｅに従って実行する処理をフローチャートにより示している。
Ｓ３００では、コンピュータ２０は出力色空間の種類を判別する。出力色空間は、補正量取得部２５ｄによる補正量計算および補正部２５ｅによる画像データの補正処理を実行するときに用いる色空間（作業用色空間）となる。よってコンピュータ２０は、補正量の計算に先立って、出力色空間が何であるかを判別する。
【００４８】
コンピュータ２０は、例えば所定のユーザーインターフェース（ＵＩ）を介して外部から出力色空間の指定を受付けることにより、出力色空間の種類を判別する。あるいは、出力色空間の種類を予めデフォルトとして規定した情報がＨＤ２４等の所定の記憶媒体に存在する場合には、かかる情報を読み出すことにより出力色空間の種類を判別する。あるいは、上記Ｓ１００と同様に、入力画像データのヘッダに記述されている付属情報を読み出し、付属情報中に出力色空間を指定する情報が存在する場合には、当該情報に基づいて出力色空間が何であるかを判別する。
【００４９】
Ｓ３１０では、コンピュータ２０は、入力画像データに適用する補正の種類を決定する。本実施形態においては、補正部２５ｅが実行可能な補正の種類として、記憶色補正、人顔補正、明るさ補正、カラーバランス補正、ホワイトバランス補正等（各補正の内容については後述）があり、コンピュータ２０は、例えばＵＩを介して外部から補正種類の指定を受付けることにより、入力画像データに対して施す補正種類を決定する。また、コンピュータ２０は、入力画像データのヘッダに撮影時のシーン情報（風景画、夜景画、人物画等）が記述されている場合には、当該シーン情報に応じて自動的に補正の種類を決定しても良いし、所定のシーン判別用のプログラムによって入力画像データの撮影シーンを判別し、この判別結果に応じて自動的に補正の種類を決定しても良い。また、上記ＵＩを介して外部から指定された入力画像データのシーンの種類に応じて自動的に補正の種類を決定しても良い。
【００５０】
Ｓ３２０では、コンピュータ２０は、上記Ｓ３１０で決定した種類にかかる補正を実現するために必要な補正目標値２４ｂを、ＨＤ２４等の所定の記憶媒体から読み出す。
Ｓ３３０では、コンピュータ２０は、上記読み出した補正目標値２４ｂを、上記Ｓ３００において判別した出力色空間上のデータに変換する。本実施形態では、補正目標値２４ｂは出力色空間によらずＬａｂデータとして保存しているため、補正量計算を出力色空間において行なうために補正目標値２４ｂについて色空間変換を行なう。
【００５１】
図１１は、補正目標値２４ｂの色空間を出力色空間へ変換した場合の一例を示している。同図では、上記Ｓ３１０において、記憶色（緑色）補正と、記憶色（空色）補正と、記憶色（肌色）補正と、記憶色（赤色）補正と、人顔補正と、明るさ補正とを実行することを決定した場合に行なう、補正目標値２４ｂの変換の様子を示している。この場合上記Ｓ３２０では、各種補正目標値２４ｂのうち、記憶色（緑色）補正の目標値と、記憶色（空色）補正の目標値と、記憶色（肌色）補正の目標値と、記憶色（赤色）補正の目標値と、人顔補正の目標値と、明るさ補正の目標値（明るさ目標値）とを読み出す。
【００５２】
同図は、出力色空間がｗＲＧＢ色空間に設定されている場合の変換処理の例であり、この場合上記Ｓ３３０では、コンピュータ２０は、上記読み出した目標値としての各Ｌａｂデータを、Ｌａｂ色空間からｗＲＧＢ色空間への変換対応関係を規定した既述のＩＣＣプロファイルを用いてＲＧＢデータに変換する。むろん、出力色空間がｓＲＧＢ色空間である場合には、Ｌａｂ色空間からｓＲＧＢ色空間への変換対応関係を規定した既述のＩＣＣプロファイルを用いて、目標値としての各ＬａｂデータをＲＧＢデータに変換する。
【００５３】
Ｓ３４０では、コンピュータ２０は、上記Ｓ３１０で決定した種類にかかる補正を実行するために必要な統計データ２４ｃをＨＤ２４から読み出す。図１１の例に対応した説明を行なうと、コンピュータ２０は、図９に示した統計データ２４ｃ（Ｌａｂデータ）のうち、記憶色（緑色）についての統計データと、記憶色（空色）についての統計データと、記憶色（肌色）についての統計データと、記憶色（赤色）についての統計データと、人顔についての統計データと、入力画像データの各領域についての統計データであって各領域の平均値Ｒav、Ｇav、Ｂavを変換したＬａｂデータと、を読み出す。
【００５４】
Ｓ３５０では、コンピュータ２０は、上記読み出した統計データ２４ｃを上記Ｓ３００において判別した出力色空間上のＲＧＢデータに変換する。ここでも、出力色空間がｗＲＧＢ色空間である場合には、Ｌａｂ色空間からｗＲＧＢ色空間への変換対応関係を規定した既述のＩＣＣプロファイルを用いて、統計データとしての各ＬａｂデータをＲＧＢデータに変換し、出力色空間がｓＲＧＢ色空間である場合には、Ｌａｂ色空間からｓＲＧＢ色空間への変換対応関係を規定した既述のＩＣＣプロファイルを用いて、統計データとしての各ＬａｂデータをＲＧＢデータに変換する。なお、上記Ｓ１００〜Ｓ３５０までの処理を実行する点で、コンピュータ２０はその一部の機能として、入力画像データの所定の統計値であって所定の出力色空間によって表現された統計値を取得する統計値取得手段を実現しているとも言える。
【００５５】
Ｓ３６０では、上記変換後の補正目標値と統計データとの比較結果に基づいて、補正量を計算する。
例えば、上記Ｓ３３０で変換した後の記憶色（緑色）補正の目標値がＲｇｓ、Ｇｇｓ、Ｂｇｓであり、上記Ｓ３５０で変換した後の記憶色（緑）についての統計データがＲｇ、Ｇｇ、Ｂｇである場合、入力画像データに対して記憶色（緑）補正を行うための補正量ΔＲｇ、ΔＧｇ、ΔＢｇを式（１）〜（３）のように求める。
ΔＲｇ＝αｇ（Ｒｇｓ−Ｒｇ）  …（１）
ΔＧｇ＝αｇ（Ｇｇｓ−Ｇｇ）  …（２）
ΔＢｇ＝αｇ（Ｂｇｓ−Ｂｇ）  …（３）
【００５６】
αｇは、記憶色（緑色）補正に対して設定された重み付け係数であり、入力画像データに対する記憶色（緑色）補正の適用度合いを規定した係数である。かかる重み付け係数も補正目標値２４ｂとともにＨＤ２４等の所定の記憶媒体に記録されている。
記憶色（空色）補正を行なうための補正量ΔＲｂ、ΔＧｂ、ΔＢｂと、記憶色（肌色）補正を行なうための補正量ΔＲｓ、ΔＧｓ、ΔＢｓと、記憶色（赤色）補正を行なうための補正量ΔＲｒ、ΔＧｒ、ΔＢｒと、人顔補正を行なうための補正量ΔＲｆ、ΔＧｆ、ΔＢｆとについても、上記補正量ΔＲｇ、ΔＧｇ、ΔＢｇと同様に、補正目標値としてのＲＧＢデータと、統計データとしてのＲＧＢデータとの要素色毎の差分に、その補正種類に応じて予め設定されている重み係数αを乗算することにより取得する。
【００５７】
また、コンピュータ２０は、明るさ補正のための補正量を次のように求める。図１１からも判るように、予めＬａｂデータとして保存されていた明るさ補正の目標値は、上記Ｓ３３０の処理によってＲＧＢデータに変換される。コンピュータ２０はまず、この明るさ補正の目標値としてのＲＧＢデータから輝度Ｙ（補正基準輝度Ｙｓと呼ぶ）を求める。一般に、輝度Ｙの算出は、ＲＧＢの重み付け積算の式（４）
Ｙ＝０．３０Ｒ＋０．５９Ｇ＋０．１１Ｂ  …（４）
等によって算出可能である。ただし本実施形態では、上記明るさ補正の目標値としてのＬａｂデータは、これをＲＧＢデータに変換したときにＲＧＢの各階調値が等値となるような値に設定してある。そのためコンピュータ２０は、上記変換後の明るさ補正の目標値のＲＧＢの階調値（Ｒ、Ｇ、Ｂいずれの階調値でも良い）を補正基準輝度Ｙｓとする。
【００５８】
次に、コンピュータ２０は、補正基準輝度Ｙｓとの比較に用いる入力画像データの明るさを、上記Ｓ３５０で変換した後の各領域についての統計データ（ＲＧＢデータ）に基づいて決定する。この場合まず、各領域についての統計データ（ＲＧＢデータ）からそれぞれに輝度Ｙｉを算出する。輝度の算出は上記式（４）により可能である。各領域についての統計データ（ＲＧＢデータ）は、入力画像データの各領域のＲＧＢ毎の平均値Ｒav、Ｇav、ＢavをＬａｂデータに変換し、このＬａｂデータを出力色空間に依存するＲＧＢデータに変換したものであるため、各輝度Ｙｉは、入力画像データを出力色空間上で表したときの各領域の輝度の略平均値をそれぞれ表していると言える。なお、各領域についての統計データは、入力画像データの明るさを表現する統計値に該当する。
各領域の輝度Ｙｉを得たら、次にコンピュータ２０は、輝度Ｙｉの全てあるいは一部に基づいて、入力画像データの輝度平均値Ｙav（入力画像データの明るさ）を算出する。ここでは一例として、輝度平均値Ｙavを画像の略中央領域の輝度Ｙｉを重視して算出する。
【００５９】
図１２は、輝度平均値Ｙavの算出処理を説明するための図である。同図では、上記図８と同様に入力画像データＤを複数の領域Ｔに分割した様子を示している。また上述したように、ここでは各領域Ｔについて輝度Ｙｉ（同図においては、ｉ＝１〜２５）が得られている。コンピュータ２０は、入力画像データを中央領域と、中央領域以外の領域（縁領域と呼ぶ）に分け、中央領域の輝度と縁領域の各領域Ｔの輝度との差を算出し、各差の大きさと所定のしきい値ＴＨとを比較する。一例として、２５個の領域のうち画像中央の９個の領域Ｔで形成される範囲を中央領域とし、中央領域の外側の１６個の領域Ｔを縁領域とする。
【００６０】
中央領域の輝度と言った場合には、中央領域中の各領域Ｔの輝度Ｙｉの平均値を指してもよいし、中央領域中の特定の領域Ｔの輝度Ｙｉを指しても良い。ここでは、中央領域内の一つの領域Ｔを注目ブロックＴ１とし、注目ブロックＴ１の輝度Ｙｎと、縁領域の各領域Ｔの輝度（Ｙ１，Ｙ２，Ｙ３…）との差をそれぞれ算出する。そして、縁領域の各領域Ｔのうち、上記算出された差の大きさがしきい値ＴＨを越えるものについては、輝度平均値Ｙavの算出対象からは除外し、除外しなかった縁領域の各領域Ｔの輝度Ｙｉおよび中央領域の各領域ＴのＹｉに基づいて平均値を算出し、この算出結果を輝度平均値Ｙavとする。
【００６１】
ただし、画像の略中央領域の輝度を重視して輝度平均値Ｙavを算出する手法は、上記手法に限られない。例えば、各領域Ｔの輝度Ｙｉに対して、各領域Ｔの画像内での位置に応じた重み係数（０〜１の値）を与えて積算し、この積算結果を入力画像データの輝度平均値Ｙavとしてもよい。この重み係数は、画像の中央に近い領域Ｔほど大きな値を与えるものとする。また、各領域Ｔに与える重み係数の総和が１になるようにする。
【００６２】
上記のように補正基準輝度Ｙｓと輝度平均値Ｙavとを算出したら、コンピュータ２０は、入力画像データに対して明るさ補正を行うための明るさ補正量ΔＹを式（５）のように求める。
ΔＹ＝αｙ（Ｙｓ−Ｙav）  …（５）
αｙは、明るさ補正に対して設定された重み付け係数であり、かかる重み付け係数も補正目標値２４ｂとともにＨＤ２４等の所定の記憶媒体に記録されている。
以上の処理によって、Ｓ３６０における補正量計算（記憶色（緑色）補正と、記憶色（空色）補正と、記憶色（肌色）補正と、記憶色（赤色）補正と、人顔補正と、明るさ補正とを行なう場合の各補正量の計算）が終了する。
【００６３】
ここで、入力画像データの輝度平均値Ｙavを求める際に画像の略中央領域の輝度を重視したのは以下の理由による。画像の略中央領域には、例えば人物の顔など画像の中でも特に重要なものが表されていることが多い。従って、重要な被写体が表されている可能性の高い略中央領域の輝度を縁領域の輝度よりも重視してその入力画像データの明るさ（輝度平均値Ｙav）を求めることで、補正対象の画像にとって最適な明るさ補正量ΔＹを得ることができる。また、逆光条件で撮影された画像のように、画像の中央部分が暗く中央部分の周囲が明るい画像の場合、中央部分の輝度を重視した補正量ΔＹを設定することにより、暗い中央部分の明るさを上昇させる最適な明るさ補正を行なうことができる。
【００６４】
Ｓ３７０では、コンピュータ２０は、補正量に応じた補正度合いを持つ補正用ＬＵＴを生成する。例えば補正用ＬＵＴとしてトーンカーブを生成する。上記Ｓ３６０においてＲＧＢ毎の補正量を算出している場合は、ＲＧＢ別のトーンカーブを生成する。上述した例では、ＲＧＢ毎の補正量として、記憶色（緑色）の補正量ΔＲｇ、ΔＧｇ、ΔＢｇ、記憶色（空色）の補正量ΔＲｂ、ΔＧｂ、ΔＢｂ、記憶色（肌色）の補正量ΔＲｓ、ΔＧｓ、ΔＢｓ、記憶色（赤色）の補正量ΔＲｒ、ΔＧｒ、ΔＢｒ、人顔補正を行なうための補正量ΔＲｆ、ΔＧｆ、ΔＢｆを算出した。その為、コンピュータ２０は、各補正量をＲＧＢ毎別に積算し、積算後の値をＲＧＢ毎の総合的な補正量ΔＲ、ΔＧ、ΔＢとする。つまりこの場合、ΔＲ＝ΔＲｇ＋ΔＲｂ＋ΔＲｓ＋ΔＲｒ＋ΔＲｆ、ΔＧ＝ΔＧｇ＋ΔＧｂ＋ΔＧｓ＋ΔＧｒ＋ΔＧｆ、ΔＢ＝ΔＢｇ＋ΔＢｂ＋ΔＢｓ＋ΔＢｒ＋ΔＢｆ、となる。そして、上記補正量ΔＲ、ΔＧ、ΔＢに応じたトーンカーブをそれぞれ生成する。
【００６５】
図１３はトーンカーブの一例を示している。同図に示したトーンカーブＣは、要素色Ｒについて入力階調値（０〜２５５）を出力階調値（０〜２５５）に補正するＬＵＴの例であり、そのカーブの度合いを、上記補正量ΔＲに応じて決定することにより生成されている。つまり、図中に示した入力階調値＝出力階調値となる直線グラフＦ上の所定のコントロールポイントＣＰに補正量ΔＲを加算する補正を施し、補正後のコントロールポイントＣＰ´と直線グラフＦの両端とを含むような曲線をスプライン補間を用いて算出し、算出した曲線をトーンカーブＣとしている。コントロールポイントＣＰの位置は特に限られないが、例えば、補正量が正の値である場合には、入力階調範囲の中間値（１２８）より低階調側の一の入力階調値に対応する直線グラフＦ上の位置をコントロールポイントＣＰとし、補正量が負の値である場合には、上記中間値よりも高階調側の一つの入力階調値に対応する直線グラフＦ上の位置をコントロールポイントＣＰとすることができる。むろん、上記Ｓ３５０で変換した後の統計データのＲＧＢの各階調値に基づいてコントロールポイントＣＰを決定してもよい。コンピュータ２０は、このようにして、要素色ＧおよびＢについてのトーンカーブもそれぞれ生成する。
また、上述したように明るさ補正のための補正量ΔＹをも算出済みである場合には、このΔＹに応じたトーンカーブも生成し、これを明るさ補正用ＬＵＴとする。
【００６６】
Ｓ３８０では、コンピュータ２０は、入力画像データの色空間を必要に応じて、出力色空間に変換する。かかる変換処理は、入力色空間と出力色空間とが異なる場合にのみ行い、入力色空間と出力色空間とが同じである場合には当該Ｓ３８０の処理はスキップする。コンピュータ２０は、上記Ｓ１００とＳ３００において入力色空間の種別と出力色空間の種類とをそれぞれ判別済みである。そのため、かかる判別結果を参考にして、例えば、入力色空間がｓＲＧＢ色空間で、出力色空間がｗＲＧＢ色空間である場合には、コンピュータ２０はｓＲＧＢ色空間をｗＲＧＢ色空間に変換する変換プロファイルをＨＤ２４等の所定の記憶媒体から読み出し、当該読み出した変換プロファイルを用いて入力画像データの各画素のＲＧＢデータを出力色空間におけるＲＧＢデータに変換する。逆に、入力色空間がｗＲＧＢ色空間で、出力色空間がｓＲＧＢ色空間である場合には、コンピュータ２０はｗＲＧＢ色空間をｓＲＧＢ色空間に変換する変換プロファイルをＨＤ２４等の所定の記憶媒体から読み出し、当該読み出した変換プロファイルを用いて入力画像データの各画素のＲＧＢデータを出力色空間におけるＲＧＢデータに変換する。
【００６７】
Ｓ３９０では、コンピュータ２０は、出力色空間において表現された入力画像データを対象として、各画素のＲＧＢの階調値を上記Ｓ３７０で生成したＲＧＢ毎の補正用ＬＵＴに入力することにより補正する。また、明るさ補正用ＬＵＴを生成済みの場合は、各画素の輝度Ｙを明るさ補正用ＬＵＴに入力することにより補正する。
Ｓ４００では、コンピュータ２０は、上記Ｓ３１０において決定した補正種類にかかる全ての補正を施した後の画像データを出力し、図１０の処理を終了する。
【００６８】
ここで、図９に示した各種統計データのうち、低彩度色についての統計データや、ヒストグラムの最大値を表した統計データ等についても、以下のように入力画像データの補正に用いることができる。
低彩度色についての統計データ（Ｌａｂデータ）は、黒色や白色など彩度が低い所定の色域に属する画素群に基づいて算出したＲＧＢ毎の平均値を変換したものである。従って、この低彩度色についての統計データ（Ｌａｂデータ）を出力色空間上のＲＧＢデータに変換したときに、そのＲＧＢ間にずれがある場合、入力画像データのカラーバランスにずれが生じていると言える。そこで、コンピュータ２０は、上記Ｓ３１０においてカラーバランス補正を行なうことを決定した場合には、低彩度色についての統計データ（Ｌａｂデータ）を出力色空間上のＲＧＢデータに変換し、当該変換後のＲＧＢデータにおけるＲＧＢ間のずれ量（例えば、Ｇに対するＲの差分、およびＧに対するＢの差分）を算出し、当該算出した差分を打ち消すように、入力画像データの各画素のＲＧＢをそれぞれ補正することにより、入力画像データのカラーバランスを整えるとしてもよい。
【００６９】
また、上記ヒストグラムの最大値を表した統計データ（Ｌａｂデータ）を出力色空間上のＲＧＢデータに変換したときに、そのＲＧＢ間にずれがある場合、入力画像データのＲＧＢの各最大値のずれ、つまりホワイトバランスにずれが生じていると言える。そこで、コンピュータ２０は、上記Ｓ３１０においてホワイトバランス補正を行なうことを決定した場合には、上記ヒストグラムの最大値を表した統計データ（Ｌａｂデータ）を出力色空間上のＲＧＢデータに変換し、当該変換後のＲＧＢデータにおけるＲＧＢ間のずれ（例えば、ＲＧＢ共通の最大値として設定した所定の基準階調値に対するＲＧＢ各々の差分）を求める。そして、かかる差分に基づいて、入力画像データのＲＧＢの各最大値が略一致するように補正を行なうことにより、入力画像データのホワイトバランスを整えるとしてもよい。
なお、カラーバランス補正およびホワイトバランス補正は、ＲＧＢ間のずれを是正する補正であるので、かかる補正に対する目標値というものは存在しない。
【００７０】
（５）変形例
ここで、上記色域定義情報２４ａの内容は、補正目標値２４ｂに基づいて生成するようにしてもよい。上述したように、コンピュータ２０は補正目標値２４ｂの一種として、各記憶色の目標値をＬａｂデータの形式でそれぞれ有している。そこで、コンピュータ２０は、各記憶色の目標値のＬａｂ空間における座標位置を中心として記憶色毎に図３に示すような所定大きさの立体を規定し、かかる立体を明度Ｌ、彩度Ｃ、色相ｈの各範囲によって定義した情報を各記憶色についての色域定義情報２４ａとしてＨＤ２４に保存するとしてもよい。このように色域定義情報２４ａを補正目標値２４ｂに基づいて生成すれば、入力画像データの画素のうち、記憶色補正のための統計データの生成元となる画素を正確に抽出することができる。
【００７１】
また、機器非依存色空間における情報として保存する統計データの利用方法は、上述した例以外にも種々考えられる。
例えばコンピュータ２０は、画像のシーンが共通する入力画像データ（例えば、風景画の画像データ）を複数画像分取得し、各入力画像データについての統計データをそれぞれ生成するとともに、各入力画像データから生成した統計データを要素色別かつ種類別にそれぞれ平均化し、当該平均化後の統計データを、風景画についての標準的な統計データとしてＨＤ２４等の所定の記憶媒体に保存してもよい。この風景画についての標準的な統計データは、風景画を補正するときの汎用的な統計データとなる。むろんコンピュータ２０は、風景画以外にも、人物画や夜景画など、各種シーン別の標準的な統計データをそれぞれ求めておくことが可能である。
【００７２】
そしてコンピュータ２０は、各シーン別の標準的な統計データの取得後は、補正対象となる入力画像データを入力した場合、当該入力画像データのシーンを判別し、該当するシーンに対応する標準的な統計データを読み出す。入力画像データのシーン判別は、上述したように、入力画像データのヘッダに記述された情報や、所定のシーン判別用のプログラムや、ＵＩを介したユーザによるシーンの指定によって行なうことが可能である。そして、読み出した標準的な統計データと上記補正目標値２４ｂとの比較結果に応じて補正量を計算し、この計算した補正量に応じた補正処理を行なう。この結果コンピュータ２０は、新たに補正対象とした入力画像データについて、記憶色画素の抽出や、統計データの生成を行なうことなく、そのシーンの種類に応じた最適な補正を行うことが可能となる。
【００７３】
さらにコンピュータ２０は、各シーン別の標準的な統計データを、持ち運び可能な各種記憶媒体や通信回線を介して、プリンタ３１やディスプレイ３２などの各画像出力装置に提供するとしてもよい。その結果、プリンタ３１やディスプレイ３２の側においても、各シーン別の標準的な統計データを用いて、各シーンに応じた適切な補正量の計算を行い、その補正量に応じた補正を施した後の画像データに基づく印刷や映像表示を行なうことができる。このような場合でも、統計データは機器非依存色空間の情報として提供されるため、各画像出力装置の側で必要に応じて色空間変換することにより容易に取り扱うことができ、汎用性が高い。
【００７４】
（６）まとめ
このように本発明によれば、記憶色の範囲を機器非依存色空間において定義した色域定義情報２４ａを保持しておき、入力画像データから記憶色画素の抽出を行なう際に、色域定義情報２４ａが定義する色域を入力画像データの色空間に依存する色域に変換する。つまり、入力画像データの色空間がｓＲＧＢ色空間やｗＲＧＢ色空間のように異なる状況においても、ある記憶色について定義された色域定義情報２４ａを入力画像データの色空間に合わせた色域に変換する。そのため、入力画像データの色空間の違いに依らず常に記憶色に該当する画素を正確に抽出することができる。また、従来のように入力画像データが採用し得る色空間毎に色域定義情報を予め用意しておく必要もなくなる。
【００７５】
また本発明による色域の変換処理は、色域定義情報２４ａが定義する色域の外郭上の所定数の座標を入力画像データの色空間に依存する情報に変換するだけなので、入力画像データについて全画素を色域定義情報の表色系への変換を行なっていた場合と比較して、演算処理量が格段に減少し、画素抽出に要する時間を大きく短縮することができる。特に、色域定義情報２４ａが定義する色域を構成する面毎に１つの座標点を入力画像データの色空間に依存する情報に変換するだけなので、演算処理量は非常に少ない。
また、ある色空間で定義した色域を他の色空間に変換して表現する場合、変換後の色域の形状が大きく歪んでしまうことが有り得るが、本実施形態では、変換対象となる変換基準点Ｐを、色域定義情報２４ａの色域を構成する面毎の中心位置としている。そのため、変換後の座標点によって区画される色域に大きな歪みが生じることが防止され、その結果、記憶色にかかる画素のより正確な抽出が実現できる。
【００７６】
また本発明では、入力画像データから各種統計データを算出する際は色空間を維持した状態で算出し、この算出した統計データを機器非依存色空間の情報に変換して所定の記憶媒体に保存するようにした。従って、この保存した統計データは、補正量計算の際に用いられる作業用色空間（出力色空間）がｓＲＧＢ色空間やｗＲＧＢ色空間のように異なっても必要に応じて色空間変換して使用可能な、汎用性の高い情報であると言える。また、統計データを取得するにあたり、従来のように前もって入力画像データそのものを作業用色空間の情報に変換する作業が不要となり、必要となる色空間変換作業は、限られた情報量である統計データを機器非依存色空間の情報に変換することだけである。そのため、統計データを得るまでに要する演算処理量および時間が従来と比較して大幅に削減される。また、統計データの取得過程で、作業用色空間（出力色空間）の種別を判断する手間が不要となるため、その分においても統計データの取得処理が迅速化される。
【００７７】
また、入力画像データを作業用色空間上の情報に変換すると、同じ入力画像データを同じ変換規則（変換プロファイル）に従って変換する場合であっても、変換処理を実行するＡＰＬ２５が動作するプラットフォーム等の違いによって、変換結果が異なり得る。このように変換結果が異なると、当然にその変換結果に基づいて得られる統計データの内容も異なる結果となってしまう。従って、統計データの取得に際してはできるだけ入力画像データの色空間を維持した状態で行なうことが望ましい。本発明によれば、入力画像データから統計データを算出する際は色空間を維持した状態で算出を行なうため、統計データを算出する前に入力画像データを作業用色空間に変換していたことにより生じ得た統計データの誤差が無くなる。
【００７８】
また本発明では、統計データとの比較対象となる補正目標値２４ｂを、機器非依存色空間において定義し、補正量計算の際には、補正目標値２４ｂを出力色空間上の情報に変換する。従って、出力色空間がｓＲＧＢ色空間やｗＲＧＢ色空間のように異なる状況においても、補正目標値２４ｂを出力色空間上の情報に変換することにより、正確な補正量計算を行うことが可能となる。また従来のように、採用し得る出力色空間毎に補正目標値２４ｂを予め用意しておく煩雑さが解消され、かつメモリ資源の節約にもつながる。
【図面の簡単な説明】
【００７９】
【図１】本発明の一実施形態にかかる画像処理装置などを示したブロック図。
【図２】画素抽出処理の内容を示したフローチャート。
【図３】色域定義情報が定義する色域をＬａｂ色空間に示した図。
【図４】色域定義情報が定義する色域に変換基準点を設定した様子を示した図。
【図５】変換後の色域をＨＳＶ表色空間において示した図。
【図６】統計データの取得処理の内容を示したフローチャート。
【図７】ＲＧＢ毎のヒストグラムの一例を示した図。
【図８】入力画像データを分割した様子の一例を示した図。
【図９】統計データをＬａｂデータに変換した場合の一例を示した図。
【図１０】補正量の計算および補正処理の内容を示したフローチャート。
【図１１】補正目標値を出力色空間上のデータに変換した場合の一例を示した図。
【図１２】入力画像データを分割した各領域の輝度を示した図。
【図１３】トーンカーブの一例を示した図。
【符号の説明】
【００８０】
２０…コンピュータ、２１…ＣＰＵ、２２…ＲＯＭ、２３…ＲＡＭ、２４…ハードディスク、２４ａ…色域定義情報、２４ｂ…補正目標値、２４ｃ…統計データ、２５…ＡＰＬ、２５ａ…画像データ取得部、２５ｂ…画素抽出部、２５ｃ…統計データ取得部、２５ｃ１…統計データ生成部、２５ｃ２，２５ｄ２…統計データ変換部、２５ｄ…補正量取得部、２５ｄ１…目標値変換部、２５ｄ３…補正量決定部、２５ｅ…補正部
【図１】
2008245117.tif 000003
【図２】
2008245117.tif 000004
【図３】
2008245117.tif 000005
【図４】
2008245117.tif 000006
【図５】
2008245117.tif 000007
【図６】
2008245117.tif 000008
【図７】
2008245117.tif 000009
【図８】
2008245117.tif 000010
【図９】
2008245117.tif 000011
【図１０】
2008245117.tif 000012
【図１１】
2008245117.tif 000013
【図１２】
2008245117.tif 000014
【図１３】
2008245117.tif 000015