(57)【特許請求の範囲】
【請求項１】
対象画像中の特定領域の色を前記特定領域に適した色に補正する画像処理装置であって、
前記対象画像を取得する対象画像取得部と、
明度指標値を有する第１の色空間において、前記特定領域を代表する明度代表値を取得するとともに、明度指標値を有さず複数の色成分値を有する第２の色空間において、前記特定領域を代表する複数の色成分代表値を取得する、代表値取得部と、
前記代表値取得部により取得された前記明度代表値と前記色成分代表値とに基づいて、前記特定領域の色を補正する特定領域色補正部と、
を備え、
前記特定領域色補正部は、
前記第１の色空間において前記明度指標値を変更することにより、前記特定領域の明度を補正する第１の明度補正部と、
前記第２の色空間において前記複数の色成分値を変更することにより、前記特定領域の明度を補正する第２の明度補正部と、
前記明度代表値に基づいて、前記第１の明度補正部における第１の明度補正量と、前記第２の明度補正部における第２の明度補正量と、のそれぞれを設定する明度補正量設定部とを有する、
画像処理装置。
【請求項２】
請求項１記載の画像処理装置であって、
前記明度補正量設定部は、
前記色成分代表値により表される代表色の前記第２の明度補正部による補正結果に応じた前記第１と第２の明度補正量の再調整を、前記補正による前記代表色のカラーバランスの変化量が予め定められた許容範囲内となるまで繰り返す、
画像処理装置。
【請求項３】
請求項２記載の画像処理装置であって、
前記明度補正量設定部は、前記再調整の最初の繰り返しにおいて、前記第１の明度補正量を０に設定する、画像処理装置。
【請求項４】
請求項１ないし３のいずれか記載の画像処理装置であって、
前記特定領域色補正部は、
前記明度代表値と前記色成分代表値とに基づいて、前記特定領域の明度の変化を抑制しつつカラーバランスを補正するためのカラーバランス補正量を取得するカラーバランス補正量取得部と、
前記第２の色空間において、前記カラーバランス補正量に基づいて前記複数の色成分値を変更することにより前記特定領域のカラーバランスを補正するカラーバランス補正部と、
を有する、画像処理装置。
【請求項５】
対象画像中の特定領域の色を前記特定領域に適した色に補正する画像処理方法であって、
（ａ）前記対象画像を取得する工程と、
（ｂ）明度指標値を有する第１の色空間において、前記特定領域を代表する明度代表値を取得する工程と、
（ｃ）明度指標値を有さず複数の色成分値を有する第２の色空間において、前記特定領域を代表する複数の色成分代表値を取得する工程と、
（ｄ）前記明度代表値と前記色成分代表値とに基づいて、前記特定領域の色を補正する工程と、
を備え、
前記工程（ｄ）は、
（ｄ１）前記第１の色空間において前記明度指標値を変更することにより、前記特定領域の明度を補正する工程と、
（ｄ２）前記第２の色空間において前記複数の色成分値を変更することにより、前記特定領域の明度を補正する工程と、
（ｄ３）前記明度代表値に基づいて、前記工程（ｄ１）における第１の明度補正量と、前記工程（ｄ２）における第２の明度補正量と、のそれぞれを設定する工程と、
を含む、画像処理方法。
【請求項６】
対象画像中の特定領域の色を前記特定領域に適した色に補正する画像処理をコンピュータに実行させるコンピュータプログラムであって、
（ａ）前記対象画像を取得する機能と、
（ｂ）明度指標値を有する第１の色空間において、前記特定領域を代表する明度代表値を取得する機能と、
（ｃ）明度指標値を有さず複数の色成分値を有する第２の色空間において、前記特定領域を代表する複数の色成分代表値を取得する機能と、
（ｄ）前記明度代表値と前記色成分代表値とに基づいて、前記特定領域の色を補正する機能と、
を前記コンピュータに実行させ、
前記機能（ｄ）は、
（ｄ１）前記第１の色空間において前記明度指標値を変更することにより、前記特定領域の明度を補正する機能と、
（ｄ２）前記第２の色空間において前記複数の色成分値を変更することにより、前記特定領域の明度を補正する機能と、
（ｄ３）前記明度代表値に基づいて、前記工程（ｄ１）における第１の明度補正量と、前記工程（ｄ２）における第２の明度補正量と、のそれぞれを設定する機能と、
を含む、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像中の特定領域の色をその特定領域に適した色に補正する画像処理技術に関する。
【背景技術】
【０００２】
プリンタやスキャナ・プリンタ・コピー複合機（「複合機」あるいは「ＭＦＰ」とも呼ばれる）等の画像印刷装置では、印刷対象の画像に対して画像処理を施して、印刷された画像をより好ましいものにすることが行われる。このような画像処理としては、画像処理の対象となる対象画像に対して、記憶色補正が行われる場合がある。ここで、記憶色補正とは、記憶色と呼ばれる「肌色」、「緑色」、「空色」、「夕陽の赤色」等の色を有する画像領域の色を、好ましいと思われる色になるようにする補正をいう。
【０００３】
【特許文献１】国際公開ＷＯ２００４／０３４７１１号パンフレット
【０００４】
しかしながら、記憶色補正において画像の明るさを補正する場合、明るさの補正量と明るさ補正を行う色空間によっては、明るさの補正により色相等のカラーバランスが変化し記憶色補正を行った領域の色が好ましいと思われる色にならない場合がある。この問題は、画像印刷装置のみならず、画像処理ソフトウェアが実行されるパーソナルコンピュータ等、画像処理を行う画像処理装置一般に共通する。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、上述した従来の課題を解決するためになされたものであり、記憶色補正において画像の明るさを補正する場合に補正後の記憶色をより好ましい色とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００７】
［適用例１］
対象画像中の特定領域の色を前記特定領域に適した色に補正する画像処理装置であって、
前記対象画像を取得する対象画像取得部と、
明度指標値を有する第１の色空間において、前記特定領域を代表する明度代表値を取得するとともに、明度指標値を有さず複数の色成分値を有する第２の色空間において、前記特定領域を代表する複数の色成分代表値を取得する、代表値取得部と、
前記代表値取得部により取得された前記明度代表値と前記色成分代表値とに基づいて、前記特定領域の色を補正する特定領域色補正部と、
を備え、
前記特定領域色補正部は、
前記第１の色空間において前記明度指標値を変更することにより、前記特定領域の明度を補正する第１の明度補正部と、
前記第２の色空間において前記複数の色成分値を変更することにより、前記特定領域の明度を補正する第２の明度補正部と、
前記明度代表値に基づいて、前記第１の明度補正部における第１の明度補正量と、前記第２の明度補正部における第２の明度補正量と、のそれぞれを設定する明度補正量設定部とを有する、
画像処理装置。
【０００８】
この適用例によれば、特定領域の明度の補正は、第１の色空間において明度指標値を変更する第１の明度補正部と、第２の色空間において複数の色成分値を変更する第２の明度補正部とにより行われる。一般に、明度を補正前後のカラーバランスの変化の特性は、明度の補正を行う色空間により異なっている。そのため、第１と第２の明度補正部との双方を用いて特定領域の明度の補正を行うことにより、明度を補正する際の特定領域のカラーバランスの変化を抑制でき、特定領域の色をより好ましい色にすることが可能となる。
【０００９】
［適用例２］
適用例１記載の画像処理装置であって、
前記明度補正量設定部は、
前記色成分代表値により表される代表色の前記第２の明度補正部による補正結果に応じた前記第１と第２の明度補正量の再調整を、前記補正による前記代表色のカラーバランスの変化量が予め定められた許容範囲内となるまで繰り返す、
画像処理装置。
【００１０】
この適用例によれば、代表色のカラーバランスの変化量が許容範囲内となるまで、第１と第２の明度補正量の再調整を繰り返すことにより第１と第２の明度補正量が設定される。そのため、第１と第２の明度補正量の設定がより容易となる。
【００１１】
［適用例３］
適用例２記載の画像処理装置であって、
前記明度補正量設定部は、前記再調整の最初の繰り返しにおいて、前記第１の明度補正量を０に設定する、画像処理装置。
【００１２】
一般に、対象画像は各画素の色が色成分値で与えられので、色成分値を変更する補正は、明度指標値を変更する補正よりも容易に行うことができる。そのため、第１の明度補正量を０に設定した際の代表色のカラーバランスの変化量が許容範囲内である場合、第１の明度補正部による補正を省略することができるので、補正をより容易に行うことができる。
【００１３】
［適用例４］
適用例１ないし３のいずれか記載の画像処理装置であって、
前記明度補正量設定部は、
前記色成分代表値により表される補正前代表色を前記第２の明度補正部により補正して補正後代表色を生成する補正後代表色生成部と、
前記補正前代表色と前記補正後代表色とのカラーバランスの変化量に応じて、前記第１の明度補正量と前記第２の明度補正量とを調整する、明度補正量調整部と、
を有する、画像処理装置。
【００１４】
この適用例によれば、補正前代表色と、補正前代表色を第２の明度補正部により補正した補正後代表色と、のカラーバランスの変化量に応じて、第１と第２の明度補正量が設定される。そのため、第１と第２の明度補正量をより適切に設定することができ、明度を補正する際の特定領域のカラーバランスの変化をより抑制することが可能となる。
【００１５】
［適用例５］
適用例１ないし４のいずれか記載の画像処理装置であって、
前記特定領域色補正部は、
前記明度代表値と前記色成分代表値とに基づいて、前記特定領域の明度の変化を抑制しつつカラーバランスを補正するためのカラーバランス補正量を取得するカラーバランス補正量取得部と、
前記第２の色空間において、前記カラーバランス補正量に基づいて前記複数の色成分値を変更することにより前記特定領域のカラーバランスを補正するカラーバランス補正部と、
を有する、画像処理装置。
【００１６】
この適用例によれば、カラーバランス補正部は、特定領域の明度の変化を抑制しつつカラーバランスを補正するためのカラーバランス補正量に基づいて複数の色成分値を変更することにより、特定領域のカラーバランスを補正する。上述の通り、明度の補正によるカラーバランスの変化が抑制されているので、特定領域のカラーバランスをより好ましい状態に維持したまま明度の補正を行うことができる。そのため、特定領域の明度とカラーバランスとをより好ましい状態にすることができる。
【００１７】
なお、本発明は、種々の態様で実現することが可能である。例えば、画像処理装置と画像処理方法、その画像処理装置や画像処理方法を利用した画像印刷装置、画像印刷方法、画像表示装置および画像表示方法、それらの画像処理装置、画像印刷装置および画像表示装置の制御装置と制御方法、それらの装置および方法の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の態様で実現することができる。
【発明を実施するための最良の形態】
【００１８】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．実施例：
Ｂ．変形例：
【００１９】
Ａ．実施例：
図１は、本発明の一実施例としてのスキャナ・プリンタ・コピー複合機ＭＦＰ（以下、単に「複合機ＭＦＰ」とも呼ぶ）の機能的な構成を示すブロック図である。複合機ＭＦＰは、制御部１００と、メモリカードスロット２００と、スキャンエンジン３００と、プリントエンジン４００と、操作パネル５００と、を備えている。
【００２０】
制御部１００は、メモリカード制御部１１０と、スキャン処理実行部１２０と、印刷処理実行部１３０と、操作パネル制御部１４０と、肌色補正処理部１５０と、を有している。制御部１００は、図示しない中央処理装置（ＣＰＵ）とメモリとを備えるコンピュータとして構成されている。制御部１００が有する各部の機能は、ＣＰＵがメモリに格納されたプログラムを実行することにより実現される。
【００２１】
メモリカードスロット２００は、メモリカードＭＣを受け入れ、メモリカードＭＣに格納されたファイルの読み書きを行う機構である。スキャンエンジン３００は、画像をスキャンして画像データを生成する機構である。プリントエンジン４００は、与えられた印刷データに応じて印刷を実行する印刷機構である。操作パネル５００は、複合機ＭＦＰが備えるマンマシンインターフェースである。
【００２２】
メモリカード制御部１１０、スキャン処理実行部１２０、印刷処理実行部１３０および操作パネル制御部１４０は、それぞれ、メモリカードスロット２００と、スキャンエンジン３００と、プリントエンジン４００と、操作パネル５００と、を制御して、複合機ＭＦＰが有する種々の機能を実現する。なお、本発明は、色の補正を行う色補正処理に関するものであり、これらの各部の構成や機能などには影響しないので、その説明を省略する。
【００２３】
肌色補正処理部１５０は、肌色画素検出部１５２と、肌色平均値取得部１５４と、トーンカーブ生成部１５６と、補正処理実行部１５８と、を備えている。肌色補正処理部１５０は、これらの各部の機能により、印刷対象となる画像（対象画像）に含まれる肌色補正処理を実行する。ここで、肌色補正処理とは、画像に含まれる人物の顔や体などの肌色部分の色を好ましいと思われる色となるように補正する処理をいう。
【００２４】
図２は、肌色補正処理部１５０により実行される肌色補正ルーチンを示すフローチャートである。この肌色補正ルーチンは、例えば、ユーザが操作パネル５００を用いて複合機ＭＦＰに肌色補正処理を施した画像の印刷を指示した際に実行される。肌色補正ルーチンにより肌色補正処理が施された画像は、印刷処理実行部１３０とプリントエンジン４００とで実現される印刷機能により、印刷媒体上に出力される。
【００２５】
ステップＳ１００において、肌色補正処理部１５０は、各画素の色がＲＧＢ色空間の色として表される対象画像を取得する。対象画像は、例えば、メモリカードＭＣ（図１）中の画像ファイルＧＦを読み込み、読み込んだ画像ファイルＧＦから画像を取り出すことにより取得される。画像ファイルＧＦに含まれる画像に圧縮処理等が施されている場合には、画像を圧縮処理前の状態に復元する処理（「展開処理」と呼ばれる）等が画像に施される。また、画像ファイルＧＦに含まれる画像が、各画素の色がＲＧＢ色空間とは異なる色空間（例えば、ＹＣｂＣｒ色空間）の色として表される画像である場合、取り出された画像に色変換が施される。なお、以下では、各画素の色がＲＧＢ色空間の色として表される画像を「ＲＧＢ画像」あるいは「ＲＧＢ色空間の画像」ともよぶ。また、各画素の色がＲＧＢ色空間とは異なる色空間の色として表される画像も同様に呼ぶ。
【００２６】
ステップＳ２００において、肌色画素検出部１５２は、対象画像中の肌色の画素を検出する。肌色画素の検出では、まず、顔の検出が行われる。そして、検出された顔の、鼻、口、および目の周辺の肌色に相当する色相と彩度とをもつ画素を肌色画素として検出する。なお、顔の検出には、テンプレートを利用したパターンマッチング法（特開２００４−３１８２０４参照）等の公知の顔検出方法を用いることができる。
【００２７】
ステップＳ３００において、肌色平均値取得部１５４は、ステップＳ２００において検出された肌色画素について、輝度値Ｙ（０〜２５５）の平均値Ｙａｖと、赤（Ｒ），緑（Ｇ），青（Ｂ）の各色成分値Ｒ，Ｇ，Ｂ（０〜２５５）の平均値を取得する。なお、以下では、これらの平均値Ｙａｖ，Ｒａｖ，Ｇａｖ，Ｂａｖを併せて「肌色平均値」とも呼ぶ。
【００２８】
ステップＳ４００において、トーンカーブ生成部１５６は、ステップＳ３００において取得した輝度平均値Ｙａｖに基づいて、輝度値Ｙの補正量ΔＹを算出する。輝度補正量ΔＹは、具体的には、輝度平均値Ｙａｖと、肌色の輝度値として好ましい輝度目標値Ｙｔｇ（例えば、１８０）と、に基づいて、例えば、以下の式（１）を用いて算出される。
【００２９】
ΔＹ＝Ｙｔｇ−Ｙａｖ      …（１）
【００３０】
ステップＳ５００において、トーンカーブ生成部１５６は、ステップＳ３００において取得した色成分平均値Ｒａｖ，Ｇａｖ，Ｂａｖに基づいて、カラーバランスの補正量を算出する。ここで、カラーバランスとは、各色成分値Ｒ，Ｇ，Ｂのバランスをいう。カラーバランス補正量は、具体的には、ＲＧＢ各色成分の補正量ΔＲ，ΔＧ，ΔＢとして算出される。なお、以下では、これらのカラーバランス補正量ΔＲ，ΔＧ，ΔＢをあわせて、カラーバランス補正量ΔＣとも呼ぶ。これらのカラーバランス補正量ΔＲ，ΔＧ，ΔＢは、色成分平均値Ｒａｖ，Ｇａｖ，Ｂａｖと、色成分目標値Ｒｔｇ，Ｇｔｇ，Ｂｔｇとを用いて、例えば、以下の式（２）〜（４）を用いて算出される。
【００３１】
ΔＲ＝Ｒｔｇ−Ｒａｖ      …（２）
ΔＧ＝Ｇｔｇ−Ｇａｖ      …（３）
ΔＲ＝Ｂｔｇ−Ｂａｖ      …（４）
【００３２】
ＲＧＢ各色成分の目標値Ｒｔｇ，Ｇｔｇ，Ｂｔｇは、輝度平均値Ｙａｖから算出される。具体的には、好ましい肌色について、その輝度値を輝度平均値Ｙａｖに変更した場合のＲＧＢの各色成分値が色成分目標値Ｒｔｇ，Ｇｔｇ，Ｂｔｇに設定される。なお、色成分目標値Ｒｔｇ，Ｇｔｇ，Ｂｔｇは、例えば、輝度平均値Ｙａｖを用いて、以下の式（５）〜（７）により算出することができる。
【００３３】
Ｒｔｇ＝ｋｒ×Ｙａｖ      …（５）
Ｇｔｇ＝ｋｇ×Ｙａｖ      …（６）
Ｂｔｇ＝ｋｂ×Ｙａｖ      …（７）
【００３４】
ここで、ｋｒ，ｋｇ，ｋｂは、ＲＧＢの各色成分毎に予め設定された比例係数であり、上記の式（５）〜（７）は、色成分目標値Ｒｔｇ，Ｇｔｇ，Ｂｔｇが、輝度平均値Ｙａｖに比例係数を乗ずることにより求められることを示している。これらの比例係数ｋｒ，ｋｇ，ｋｂは、色成分目標値Ｒｔｇ，Ｇｔｇ，Ｂｔｇから算出される輝度値が輝度平均値Ｙａｖとほぼ同じとなるように設定される。そのため、カラーバランスの補正を行っても、輝度平均値の変化は抑制され、補正前後の輝度平均値はほぼ同じ値となる。なお、これらの比例係数ｋｒ，ｋｇ，ｋｂは、必ずしも定数でなくてもよく、例えば、輝度平均値Ｙａｖをパラメータとする関数として与えるものとしてもよい。
【００３５】
ステップＳ６００において、トーンカーブ生成部１５６は、輝度補正量ΔＹ（以下、「全輝度補正量ΔＹ」とも呼ぶ）を、輝度トーンカーブ（Ｙトーンカーブ）による輝度値Ｙの補正量ΔＹａと、ＲＧＢの各色成分値のトーンカーブ（ＲＧＢトーンカーブ）による輝度値Ｙの補正量ΔＹｂと、に分配する。なお、以下では、Ｙトーンカーブによる輝度値Ｙの補正量ΔＹａを「Ｙ輝度補正量」とも呼び、ＲＧＢトーンカーブによる輝度値Ｙの補正量ΔＹｂを「ＲＧＢ輝度補正量」とも呼ぶ。
【００３６】
図３は、ステップＳ６００において実行される輝度補正量分配ルーチンを示すフローチャートである。図４は、図３に示す輝度補正量分配ルーチンにより、全輝度補正量ΔＹが分配される様子を示す説明図である。
【００３７】
ステップＳ６１０において、トーンカーブ生成部１５６は、色成分平均値Ｒａｖ，Ｇａｖ，Ｂａｖから肌色画素の色相Ｈ（０〜３６０°）の平均値Ｈａｖと、彩度Ｓ（０〜１００％）の平均値Ｓａｖと、を算出する。色成分平均値Ｒａｖ，Ｇａｖ，Ｂａｖからの色相平均値Ｈａｖおよび彩度平均値Ｓａｖの算出は、ＲＧＢ色空間からＨＳＢ色空間に変換する周知の色変換方法により行うことができる。なお、以下では、これらの平均値Ｈａｖ，Ｓａｖを肌色平均値の色相および彩度とも呼ぶ。図４の例では、図４（ａ）においてハッチングで示す顔領域の肌色平均値（色成分平均値Ｒａｖ，Ｇａｖ，Ｂａｖ）から、図４（ｂ）に示すように色相平均値Ｈａｖと彩度平均値Ｓａｖとが算出される。
【００３８】
ステップＳ６２０において、トーンカーブ生成部１５６は、全輝度補正量ΔＹをＲＧＢ輝度補正量ΔＹｂに割り当てる。すなわち、Ｙ輝度補正量ΔＹａを０に設定するとともに、ＲＧＢ輝度補正量ΔＹｂを全輝度補正量ΔＹに設定する。
【００３９】
ステップＳ６３０において、トーンカーブ生成部１５６は、カラーバランス補正量ΔＣを０として、ＲＧＢトーンカーブを生成する。図５は、Ｒトーンカーブの生成手順を示すフローチャートである。図６は、Ｒトーンカーブの生成の様子を示す説明図である。なお、ＧトーンカーブとＢトーンカーブとは、いずれもＲトーンカーブと同様に生成されるので、ここではその説明を省略する。
【００４０】
図５のステップＳ１２において、トーンカーブ生成部１５６は、図６に示すように、等間隔に配置された赤成分入力値Ｒｉの３つの基準値（赤成分基準値）Ｒｉ１〜Ｒｉ３を設定する。ただし、赤成分基準値の数は必ずしも３個でなくてもよく、一般に、１以上の任意の個数とすることができる。また、赤成分基準値Ｒｉ１〜Ｒｉ３の間隔も必ずしも等間隔でなくても良い。
【００４１】
３つの赤成分基準値Ｒｉ１〜Ｒｉ３の位置は、赤成分平均値Ｒａｖあるいは輝度平均値Ｙａｖに基づいて設定される。これらの赤成分基準値Ｒｉ１〜Ｒｉ３を赤成分平均値Ｒａｖに基づいて設定する場合、赤成分基準値Ｒｉ１〜Ｒｉ３は、例えば、以下のように設定することが可能である。
１．赤成分値Ｒの全範囲（０〜２５５）を所定数（例えば、１７）に等分割する分割点（赤成分値）を取得する。
２．赤成分平均値Ｒａｖに最も近い分割点を、中央の赤成分基準値Ｒｉ２に設定する。
３．赤成分基準値Ｒｉ２よりも赤成分値が１段階低い分割点を赤成分基準値Ｒｉ１に設定する。
４．赤成分基準値Ｒｉ２よりも赤成分値が１段階高い分割点を赤成分基準値Ｒｉ３に設定する。
【００４２】
ステップＳ１４において、トーンカーブ生成部１５６は、各赤成分基準値Ｒｉ１〜Ｒｉ３に対する赤成分出力値Ｒｏ１〜Ｒｏ３を決定する。赤成分出力値Ｒｏ１〜Ｒｏ３は、以下の式（８）〜（１０）を用いて算出される。
【００４３】
Ｒｏ１＝ｆｒ１（Ｒｉ１，ΔＲ，ΔＹｂ）      …（８）
Ｒｏ２＝ｆｒ２（Ｒｉ２，ΔＲ，ΔＹｂ）      …（９）
Ｒｏ３＝ｆｒ３（Ｒｉ３，ΔＲ，ΔＹｂ）      …（１０）
【００４４】
上記の式（８）は、赤成分基準値Ｒｉ１に対する赤成分出力値Ｒｏ１が、赤成分基準値Ｒｉ１と、赤成分補正量ΔＲと、ＲＧＢ輝度補正量ΔＹｂと、をパラメータとする赤成分補正関数ｆｒ１により求められることを示している。式（９）および（１０）は、赤成分基準値Ｒｉ２に対する赤成分出力値Ｒｏ２と、赤成分基準値Ｒｉ３に対する赤成分出力値Ｒｏ３とが、赤成分補正関数ｆｒ１と同様に、赤成分補正関数ｆｒ２，ｆｒ３により求められることを示している。
【００４５】
これらの赤成分補正関数ｆｒ１〜ｆｒ３は、赤成分補正量ΔＲと、ＲＧＢ輝度補正量ΔＹｂとがいずれも０である場合には、それぞれ赤成分基準値Ｒｉ１〜Ｒｉ３を返す。また、赤成分補正関数ｆｒ１〜ｆｒ３は、赤成分補正量ΔＲと、ＲＧＢ輝度補正量ΔＹｂとのそれぞれに対して単調増加する特性を有する関数である。このような特性を有する赤成分補正関数ｆｒ１〜ｆｒ３としては、例えば、以下の式（１１）〜（１３）で与えられる関数を使用することができる。
【００４６】
ｆｒ１（Ｒｉ１，ΔＲ，ΔＹｂ）＝Ｒｉ１＋ｂ１×ΔＲ＋ｃ１×ΔＹｂ      …（１１）
ｆｒ２（Ｒｉ２，ΔＲ，ΔＹｂ）＝Ｒｉ２＋ｂ２×ΔＲ＋ｃ２×ΔＹｂ      …（１２）
ｆｒ３（Ｒｉ３，ΔＲ，ΔＹｂ）＝Ｒｉ３＋ｂ３×ΔＲ＋ｃ３×ΔＹｂ      …（１３）
【００４７】
ここで、上記の式（１１）は、赤成分補正関数ｆｒ１が、赤成分補正量ΔＲに比例係数ｂ１を乗じた値と、ＲＧＢ輝度補正量ΔＹｂに比例係数ｃ１を乗じた値と、赤成分基準値Ｒｉ１と、の和として与えられることを示している。また、式（１２）および（１３）に示すように、赤成分補正関数ｆｒ２，ｆｒ３も、赤成分補正関数ｆｒ１と同様に与えられる。比例係数ｂ１〜ｂ３は、生成されたＲトーンカーブを用いて補正を行った場合の赤成分平均値の変化量等に基づいて決定することができる。また、比例係数ｃ１〜ｃ３は、生成されたＲトーンカーブを用いて補正を行った場合の輝度平均値の変化量等に基づいて決定することができる。
【００４８】
なお、図６の例では、赤成分補正量ΔＲが０に設定されている。そのため、赤成分補正関数ｆｒ１として上記の式（１１）を用いた場合、赤成分基準値Ｒｉ１に対する赤成分出力値Ｒｏ１は、図６に示すように以下の式（１４）により算出される。
【００４９】
Ｒｏ１＝Ｒｉ１＋ｃ１×ΔＹｂ      …（１４）
【００５０】
図５のステップＳ１６において、トーンカーブ生成部１５６は、スプライン補間を行うことによりトーンカーブを生成する。具体的には、図６の黒丸で示す３つの点（Ｒｉ１，Ｒｏ１），（Ｒｉ２，Ｒｏ２），（Ｒｉ３，Ｒｏ３）と、２つの端点（０，０），（２５５，２５５）とを通るスプライン曲線を生成する。これにより、Ｒトーンカーブが生成される。図６の例では、ＲＧＢ輝度補正量ΔＹｂ（＝ΔＹ）が正の値となっている。そのため、生成されたＲトーンカーブは、輝度値を高めるように、赤成分平均値Ｒａｖにおける赤成分出力値Ｒｏが赤成分入力値Ｒｉ（＝Ｒａｖ）よりも高いトーンカーブとなっている。
【００５１】
なお、本実施例において、Ｒトーンカーブは、赤成分入力値Ｒｉの全範囲（０〜２５５）を所定数（例えば、１７）に等分割した分割点（赤成分値）と、赤成分入力値Ｒｉの２つの端点０，２５５と、に対して赤成分出力Ｒｏを与えるルックアップテーブル（ＬＵＴ）として生成される（以下、分割点と端点とを併せて「格子点」とも呼ぶ）。この場合、格子点とは異なる赤成分入力値Ｒｉに対しては、赤成分入力値Ｒｉに最も近い２つの格子点の赤成分出力値を補間することによって、その赤成分入力値Ｒｉに対する赤成分出力値Ｒｏが算出される。ただし、Ｒトーンカーブは、必ずしもＬＵＴとして生成される必要はない。
【００５２】
図４（ｃ）は、このように生成され、赤成分値Ｒに適用されるＲトーンカーブを示している。なお、緑成分値と青成分値に適用されるＧトーンカーブおよびＢトーンカーブについては、Ｒトーンカーブと同様であるので、ここではその図示を省略している。
【００５３】
図３のステップＳ６４０において、トーンカーブ生成部１５６は、肌色平均値にステップＳ６３０で生成したトーンカーブを適用し、肌色平均値を補正した肌色補正値を生成する。具体的には、図４（ｃ）に示すように、ステップＳ６３０で生成したＲトーンカーブを用いて、赤成分平均値Ｒａｖを補正し赤成分補正値Ｒｍｄを生成する。同様に、緑成分平均値ＧａｖをＧトーンカーブを用いて補正し緑成分補正値Ｇｍｄを生成し、青成分平均値ＢａｖをＢトーンカーブを用いて補正し青成分補正値Ｂｍｄを生成する。
【００５４】
ステップＳ６５０において、トーンカーブ生成部１５６は、ステップＳ６１０と同様に、肌色補正値Ｒｍｄ，Ｇｍｄ，Ｂｍｄの色相Ｈｍｄ（色相補正値）と彩度Ｓｍｄ（彩度補正値）とを算出する。図４の例では、図４（ｄ）のハッチングで示す顔領域の肌色補正値（補正値Ｒｍｄ，Ｇｍｄ，Ｂｍｄ）から、色相補正値Ｈｍｄと彩度補正値Ｓｍｄとが算出される。このように算出された色相補正値Ｈｍｄおよび彩度補正値Ｓｍｄ（図４（ｅ）の白丸）は、黒丸で示す補正前の色相平均値Ｈａｖおよび彩度平均値Ｓａｖとは異なった値となっている。
【００５５】
ステップＳ６６０において、トーンカーブ生成部１５６は、ステップＳ６４０における肌色平均値の補正による色相と彩度の変化量が、許容範囲内であるか否かを判断する。そして、色相と彩度の変化量がいずれも許容範囲内であると判断された場合、輝度補正量分配ルーチンは終了し、制御は図２の肌色補正ルーチンに戻される。一方、色相と彩度の変化量の少なくとも一方が許容範囲外であると判断された場合、制御はステップＳ６７０に移される。トーンカーブ生成部１５６は、具体的には、色相補正値Ｈｍｄと色相平均値Ｈａｖとから色相変化量δＨを求め、彩度補正値Ｓｍｄと彩度平均値Ｓａｖとから彩度変化量δＳとを求める。そして、色相変化量δＨが所定の色相変化量許容値（例えば、２°）より小さく、かつ、彩度変化量δＳが所定の彩度変化量許容値（例えば、５％）よりも小さい場合、色相変化量と彩度変化量とがいずれも許容範囲内であると判断される。なお、色相変化量δＨと、彩度変化量δＳとは、例えば、以下の式（１５），（１６）を用いて算出される。
【００５６】
δＨ＝｜Ｈｍｄ−Ｈａｖ｜      …（１５）
δＳ＝｜Ｓｍｄ−Ｓａｖ｜      …（１６）
【００５７】
上記の式（１５）は、色相変化量δＨが、色相補正値Ｈｍｄと色相平均値Ｈａｖとの差分の絶対値として算出されることを示している。同様に、式（１６）は、彩度変化量δＳが、彩度補正値Ｓｍｄと彩度平均値Ｓａｖとの差分の絶対値として算出されることを示している。
【００５８】
図４の例では、図４（ｅ）の白丸で示す色相補正値Ｈｍｄおよび彩度補正値Ｓｍｄは、ハッチングで示す許容範囲から外れている。そのため、図３のステップＳ６６０では、色相と彩度の変化量が許容範囲外であると判断され、ステップＳ６７０に制御が移される。
【００５９】
ステップＳ６７０において、トーンカーブ生成部１５６は、輝度補正量ΔＹの分配の調整を行う。具体的には、全輝度補正量ΔＹが正の場合には、ＲＧＢ輝度補正量ΔＹｂを所定量α低減するとともに、Ｙ輝度補正量ΔＹａを所定量α増加させる。一方、全輝度補正量ΔＹが負の場合には、ＲＧＢ輝度補正量ΔＹｂを所定量α増加させるとともに、Ｙ輝度補正量ΔＹａを所定量α低減する。このように、ＲＧＢ輝度補正量ΔＹｂと、Ｙ輝度補正量ΔＹａと、のそれぞれの変更量αを同一とすることにより全輝度補正量ΔＹ（＝ΔＹａ＋ΔＹｂ）は、一定に保たれる。本実施例において、変更量αは、所定の値としているが、変更量αは、色相変化量δＨと彩度変化量δＳとの少なくとも一方をパラメータとする関数としても良い。
【００６０】
なお、本実施例では、色相変化量δＨと彩度変化量δＳとが許容範囲内であるか否かに応じて、輝度補正量ΔＹの分配を調整しているが、一般的には、輝度補正量ΔＹの分配を補正前後のカラーバランスの変化量に応じて調整することができる。カラーバランスの変化量としては、本実施例の色相変化量δＨおよび彩度変化量δＳのほか、色相変化量δＨのみを用いることができ、ＲＧＢ各色成分の比率の変化量を用いることもできる。
【００６１】
ステップＳ６７０における輝度補正量ΔＹの分配の調整の後、制御はステップＳ６３０に戻され、図４（ｆ）の実線で示すように、分配調整前のＲトーンカーブ（破線で示す）とは異なるＲトーンカーブが生成される。同様にＧトーンカーブと、Ｂトーンカーブとが生成される。そして、ステップＳ６６０において、色相と彩度の変化量が許容範囲内であると判断されるまで、ステップＳ６３０〜Ｓ６７０が繰り返し実行される。
【００６２】
図７は、ステップＳ６７０において、ＲＧＢ輝度補正量ΔＹｂの低減とＹ輝度補正量ΔＹａの増加が行われた後、ステップＳ６３０において、Ｒトーンカーブが生成される様子を示す説明図である。
【００６３】
上述のように、赤成分基準値Ｒｉ１〜Ｒｉ３に対して赤成分出力値Ｒｏ１〜Ｒｏ３を与える赤成分補正関数ｆｒ１〜ｆｒ３は、ＲＧＢ輝度補正量ΔＹｂに対して単調増加する特性を有している。そのため、図７に示すように、ＲＧＢ輝度補正量ΔＹｂを低減した分配調整後の赤成分出力値Ｒｏ１〜Ｒｏ３（図中白丸で示す）は、分配調整前の赤成分出力値Ｒｏ１〜Ｒｏ３（図中黒丸で示す）よりも低くなる。したがって、実線で示す分配調整後に生成されたＲトーンカーブは、破線で示す分配調整前に生成されたＲトーンカーブよりも、赤成分平均値Ｒａｖにおける赤成分出力値Ｒｏがより低いトーンカーブとなる。すなわち、分配調整後に生成されたＲトーンカーブは、分配調整前に生成されたＲトーンカーブよりも輝度値Ｙの補正量が小さいトーンカーブとなる。
【００６４】
図３の輝度補正量分配ルーチンから図２の肌色補正ルーチンに制御が戻されると、ステップＳ７００において、トーンカーブ生成部１５６は、Ｙトーンカーブを生成する。図８は、Ｙトーンカーブの生成手順を示すフローチャートであり、図９は、Ｙトーンカーブの生成の様子を示す説明図である。
【００６５】
図８のステップＳ２２において、トーンカーブ生成部１５６は、図９に示すように、等間隔に配置された輝度入力値Ｙｉの３つの基準値（輝度基準値）Ｙｉ１〜Ｙｉ３を設定する。３つの輝度基準値Ｙｉ１〜Ｙｉ３の設定は、図５のステップＳ１２における赤成分基準値Ｒｉ１〜Ｒｉ３と同様に、輝度平均値Ｙａｖに基づいて設定される。また、輝度基準値の数を１以上の任意の個数とすることができ、輝度基準値Ｙｉ１〜Ｙｉ３の間隔も必ずしも等間隔でなくても良い点も赤成分基準値Ｒｉ１〜Ｒｉ３と同様である。
【００６６】
次に、ステップＳ２４において、トーンカーブ生成部１５６は、各輝度基準値Ｙｉ１〜Ｙｉ３に対する輝度出力値Ｙｏ１〜Ｙｏ３を決定する。輝度出力値Ｙｏ１〜Ｙｏ３は、以下の式（１７）〜（１９）を用いて算出される。
【００６７】
Ｙｏ１＝ｆｙ１（Ｙｉ１，ΔＹａ）      …（１７）
Ｙｏ２＝ｆｙ２（Ｙｉ２，ΔＹａ）      …（１８）
Ｙｏ３＝ｆｙ３（Ｙｉ３，ΔＹａ）      …（１９）
【００６８】
上記の式（１７）は、輝度基準値Ｙｉ１に対する輝度出力値Ｙｏ１が、輝度基準値Ｙｉ１と、Ｙ輝度補正量ΔＹａと、をパラメータとする輝度補正関数ｆｙ１により与えられることを示している。式（１８）および（１９）は、輝度基準値Ｙｉ２に対する輝度出力値Ｙｏ２と、輝度基準値Ｙｉ３に対する輝度出力値Ｙｏ３とが、輝度補正関数ｆｙ１と同様の輝度補正関数ｆｙ２，ｆｙ３により与えられることを示している。
【００６９】
これらの輝度補正関数ｆｙ１〜ｆｙ３は、Ｙ輝度補正量ΔＹａが０である場合には、それぞれ輝度基準値Ｙｉ１〜Ｙｉ３を返し、Ｙ輝度補正量ΔＹａに対して単調増加する特性を有する関数である。このような特性を有する輝度補正関数ｆｙ１〜ｆｙ３としては、例えば、以下の式（２０）〜（２２）で与えられる関数を使用することができる。
【００７０】
ｆｙ１（Ｙｉ１，ΔＹａ）＝Ｙｉ１＋ａ１×ΔＹａ      …（２０）
ｆｙ２（Ｙｉ２，ΔＹａ）＝Ｙｉ２＋ａ２×ΔＹａ      …（２１）
ｆｙ３（Ｙｉ３，ΔＹａ）＝Ｙｉ３＋ａ３×ΔＹａ      …（２２）
【００７１】
ここで、上記の式（２０）は、輝度補正関数ｆｙ１が、Ｙ輝度補正量ΔＹａに比例係数ａ１を乗じた値と、輝度基準値Ｙｉ１と、の和として与えられることを示している。また、式（２１）および（２２）に示すように、輝度補正関数ｆｙ２，ｆｙ３も、輝度補正関数ｆｙ１と同様に与えられる。比例係数ａ１〜ａ３は、生成されたＹトーンカーブを用いて補正を行った場合の輝度平均値の変化量等に基づいて決定することができる。
【００７２】
図８のステップＳ２６において、トーンカーブ生成部１５６は、図５のステップＳ１６と同様に、スプライン補間を行うことによりトーンカーブを生成する。具体的には、図９に示すように、図中黒丸で示す３つの点（Ｙｉ１，Ｙｏ１），（Ｙｉ２，Ｙｏ２），（Ｙｉ３，Ｙｏ３）と、２つの端点（０，０），（２５５，２５５）を通るスプライン曲線を生成する。これにより、Ｙトーンカーブが生成される。なお、本実施例では、ＹトーンカーブもＬＵＴとして生成されるが、Ｙトーンカーブは、必ずしもＬＵＴとして生成される必要はない。
【００７３】
図２のステップＳ８００において、トーンカーブ生成部１５６は、ＲＧＢトーンカーブを生成する。図１０は、ＲＧＢトーンカーブの生成の様子を示す説明図である。なお、ステップＳ８００におけるＲＧＢトーンカーブの生成は、ステップＳ５００において取得した色補正値ΔＣを反映させている点を除いてステップＳ６３０と同じであるので、ここではその説明を省略する。
【００７４】
図１０（ａ）〜（ｃ）は、それぞれ、ＲＧＢの各色成分値Ｒ，Ｇ，Ｂとその度数（肌色画素中の画素数）の関係を表すヒストグラムである。図１０（ｄ）〜（ｆ）の実線は、ステップＳ８００において生成されるＲＧＢトーンカーブを示している。また、図１０（ｄ）〜（ｆ）の破線は、ステップＳ６３０において生成されるカラーバランス補正量ΔＣを０に設定した場合のＲＧＢトーンカーブを示している。
【００７５】
図１０の例では、図１０（ａ）に示すように、赤成分平均値Ｒａｖは赤成分目標値Ｒｔｇよりも低くなっているので、図２のステップＳ５００において算出される赤成分補正量ΔＲは正の値となる。上述のように、赤成分基準値Ｒｉ１〜Ｒｉ３に対する赤成分出力値Ｒｏ１〜Ｒｏ３を与える赤成分補正関数ｆｒ１〜ｆｒ３は、赤成分補正量ΔＲに対して単調増加する特性を有している。そのため、図１０（ｄ）に示すように、赤成分補正量ΔＲを反映した赤成分出力値Ｒｏ１〜Ｒｏ３（図中白丸で示す）は、赤成分補正量ΔＲを０とした場合の赤成分出力値Ｒｏ１〜Ｒｏ３（図中黒丸で示す）よりも高くなる。したがって、実線で示すステップＳ８００において生成されるＲトーンカーブは、破線で示すステップＳ６３０（図３）において生成されるＲトーンカーブよりも、赤成分値Ｒを高くするトーンカーブとなる。
【００７６】
なお、図１０の例において、赤成分補正関数ｆｒ１として上記の式（１１）を用いた場合、図１０（ｄ）に示すように、赤成分出力値Ｒｏ１は、ＲＧＢ輝度補正量ΔＹｂに応じたオフセット量（ｃ１×ΔＹｂ）と、赤成分補正量ΔＲに応じたオフセット量（ｂ１×ΔＲ）とを合わせた分、赤成分入力値（赤成分基準値）Ｒｉ１よりも赤成分値が高くなる。
【００７７】
一方、図１０（ｂ）および（ｃ）に示すように、緑成分平均値Ｇａｖと青成分平均値Ｂａｖとは、いずれも、緑成分目標値Ｇｔｇおよび青成分目標値Ｂｔｇよりも高くなっている。そのため、図２のステップＳ５００において算出される緑成分補正量ΔＧおよび青成分補正量ΔＢは、いずれも負の値となる。そのため、ステップＳ８００において生成されるＧトーンカーブ（図１０（ｅ）の実線）は、カラーバランス補正量ΔＣを０として生成されるＧトーンカーブ（図１０（ｅ）の破線）よりも緑成分値Ｇを低くするトーンカーブとなる。同様に、ステップＳ８００において生成されるＢトーンカーブ（図１０（ｆ）の実線）は、カラーバランス補正量ΔＣを０として生成されるＢトーンカーブ（図１０（ｆ）の破線）よりも青成分値Ｂを低くするトーンカーブとなる。
【００７８】
図２のステップＳ９００において、補正処理実行部１５８は、ステップＳ７００において生成されたＹトーンカーブと、ステップＳ８００において生成されたＲＧＢトーンカーブとを用いて対象画像の補正を行う。図１１は、図２のステップＳ９００において実行される画像補正ルーチンを示すフローチャートである。
【００７９】
ステップＳ９１０において、補正処理実行部１５８は、対象画像から第１中間画像を生成する。具体的には、ＲＧＢ色空間の対象画像に対して、ＲＧＢ色空間からＹＣｂＣｒ色空間への色変換処理を施し、ＹＣｂＣｒ色空間の第１中間画像を生成する。
【００８０】
ステップＳ９２０において、補正処理実行部１５８は、第１中間画像の各画素の輝度値Ｙに対してＹトーンカーブ（図９）を適用して、輝度値Ｙを補正する。このように、第１中間画像にＹトーンカーブを適用することにより第１中間画像の輝度値が補正され、肌色画素の輝度平均値は、Ｙ輝度補正量ΔＹａ変化する。通常、ＹＣｂＣｒ色空間における輝度値Ｙを変更する補正を行うと、補正前後の彩度の変化は、ＲＧＢ色成分値Ｒ，Ｇ，Ｂを変更して輝度値を補正する場合よりも大きくなる。一方、本実施例においては、Ｙ輝度補正量ΔＹａの絶対値｜ΔＹａ｜は、全輝度補正量ΔＹの絶対値｜ΔＹ｜以下に設定される。そのため、彩度の変化を抑制することができる。
【００８１】
ステップＳ９３０において、補正処理実行部１５８は、ステップＳ９２０においてＹトーンカーブが適用され、輝度値Ｙが補正された画像（Ｙトーンカーブ適用画像）から第２中間画像を生成する。具体的には、ＹＣｂＣｒ色空間のＹトーンカーブ適用画像に対して、ＹＣｂＣｒ色空間からＲＧＢ色空間への色変換処理を施し、ＲＧＢ色空間の第２中間画像を生成する。
【００８２】
ステップＳ９４０では、補正処理実行部１５８が、第２中間画像にステップＳ８００（図２）で生成されたＲＧＢトーンカーブ（図１０（ｄ）〜（ｆ）の実線）を適用し、ＲＧＢの各色成分値を補正する。このように、第２中間画像にＲＧＢトーンカーブを適用することにより、第２中間画像の各色成分値Ｒ，Ｇ，Ｂが補正され、肌色画素の輝度平均値がさらにＲＧＢ輝度補正量ΔＹｂ変化するとともに、カラーバランスが補正される。ＹＣｂＣｒ色空間における輝度値Ｙを変更しても色相の変化はほとんどないが、ＲＧＢ色成分値Ｒ，Ｇ，Ｂを変更して輝度値を補正すると、補正前後で色相の変化が生じる可能性がある。一方、本実施例においては、ＲＧＢ輝度補正量ΔＹｂの絶対値｜ΔＹｂ｜が全輝度補正量ΔＹの絶対値｜ΔＹ｜以下に設定されるので、色相の変化を抑制することができる。
【００８３】
このように、本実施例によれば、対象画像にＹトーンカーブとＲＧＢトーンカーブとを適用して輝度値を補正することにより、補正前後の色相と彩度の変化を抑制しつつ、肌色画素の輝度平均値が好ましい輝度値となるように対象画像の明るさを補正することができる。また、ＲＧＢトーンカーブにカラーバランス補正量ΔＣを反映させることにより、肌色画素のカラーバランスをより好ましい状態にすることができる。
【００８４】
Ｂ．変形例：
なお、この発明は上記実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【００８５】
Ｂ１．変形例１：
上記実施例では、対象画像全体にＹ・ＲＧＢトーンカーブを用いた肌色補正処理を行っているが、対象画像中の肌色の領域の色補正が可能であれば、対象画像全体の補正を行う必要はない。例えば、ステップＳ２００において検出された肌色画素に対して、Ｙ・ＲＧＢトーンカーブを用いた補正を行うものとしてもよい。ただし、肌色画素とその周辺画素との境界において、色の変化がより自然となる点で、対象画像全体に肌色補正処理を施すのが好ましい。
【００８６】
Ｂ２．変形例２：
上記実施例では、ＲＧＢ色空間において色成分値Ｒ，Ｇ，Ｂを変更する第２中間画像の補正を、ＲＧＢ輝度補正量ΔＹｂとカラーバランス補正量ΔＣとに基づいて生成されたＲＧＢトーンカーブにより変更しているが、必ずしも１種類のＲＧＢトーンカーブにより第２中間画像の補正を行う必要はない。例えば、ＲＧＢ輝度補正量ΔＹｂに基づいて生成されたＲＧＢトーンカーブと、カラーバランス補正量ΔＣに基づいて生成されたＲＧＢトーンカーブと、を別個に第２中間画像に適用して補正を行うことも可能である。
【００８７】
Ｂ３．変形例３：
上記実施例では、ＹＣｂＣｒ色空間において輝度値Ｙを変更する補正（図１１のステップＳ９１０〜９３０）を、ＲＧＢ色空間において色成分値Ｒ，Ｇ，Ｂを変更する補正（ステップＳ９４０）に先だって行っているが、これらの補正の順番はこの限りでない。具体的には、ＲＧＢ色空間において色成分値Ｒ，Ｇ，Ｂを変更する補正を、ＹＣｂＣｒ色空間において輝度値Ｙを変更する補正に先だって行うことも可能である。また、Ｙ輝度補正量ΔＹａが０である場合には、輝度値Ｙを変更する補正（図１１のステップＳ９１０〜９３０）を省略するものとしてもよい。この場合、輝度値の変更（ステップＳ９２０）に加え、色空間の変換（ステップＳ９１０，Ｓ９３０）を省略できるので、肌色補正に要する処理量をより低減することができる。
【００８８】
Ｂ４．変形例４：
上記実施例においては、肌色補正に用いるＹトーンカーブとＲＧＢトーンカーブとして、いずれも、トーンカーブの２つの端点（０，０），（２５５，２５５）が固定されたトーンカーブを使っているが、肌色補正に用いるトーンカーブはこの形状に限らない。肌色補正に用いるＹトーンカーブとＲＧＢトーンカーブとしては、入力値Ｙｉ，Ｒｉ，Ｇｉ，Ｂｉの端点０，２５５の少なくとも一方に対する出力値Ｙｏ，Ｒｏ，Ｇｏ，Ｂｏが入力値と異なるようなトーンカーブを用いることも可能である。
【００８９】
Ｂ５．変形例５：
上記実施例では、肌色画素の輝度値Ｙおよび色成分値Ｒ，Ｇ，Ｂの平均値Ｙａｖ，Ｒａｖ，Ｇａｖ，Ｂａｖを算出し、これらの肌色平均値に基づいて、輝度補正量ΔＹとカラーバランス補正量ΔＣとを算出しているが、一般的には、肌色画素に相当する特定の領域の色を代表する輝度値（輝度代表値）や色成分値（色成分代表値）を用いることも可能である。このような代表値（肌色代表値）としては、例えば、ステップＳ２００において検出された顔の特定の位置（例えば、額）の輝度値や色成分値を用いることができる。
【００９０】
Ｂ６．変形例６：
上記実施例では、肌色画素の明るさ（明度）の指標値として、ＹＣｂＣｒ色空間の輝度値Ｙを用いているが、肌色画素の明度指標値として、明度の指標値であれば、任意の色空間における明度指標値を用いることも可能である。明度指標値としては、例えば、Ｌ＊ａ＊ｂ＊色空間における輝度（Luminance）Ｌ＊や、ＨＳＢ色空間における明度Ｂを使用することが可能である。この場合、明度の補正量は、輝度値補正量ΔＹに換えて、輝度Ｌ＊の補正量や明度Ｂの補正量として与えられる。
【００９１】
Ｂ７．変形例７：
上記実施例では、ＲＧＢ色空間において各色成分値Ｒ，Ｇ，Ｂを変更することにより、カラーバランスの補正とＲＧＢ輝度補正量ΔＹｂに応じた明度の補正を行っているが、カラーバランスの補正と明度の補正とは、明度指標値を有さず複数の色成分値を有する色空間であれば、任意の色空間で行うことも可能である。これらの補正は、例えば、ＣＭＹ色空間で行うことも可能である。
【００９２】
Ｂ８．変形例８：
上記実施例では、本発明を、画像に含まれる人物の顔や体などの肌色部分の色を好ましいと思われる色となるように補正する肌色補正処理に適用しているが、本発明は肌色補正処理のほか、画像の特定の領域の色を記憶色に変換する記憶色補正処理一般に適用することが可能である。
【００９３】
Ｂ９．変形例９：
上記各実施例では、本発明を複合機ＭＦＰ（図１）に適用しているが、本発明は、記憶色補正を行う任意の画像処理装置に適用することが可能である。本発明は、例えば、パーソナルコンピュータを用いた画像処理装置や、画像表示装置にも適用することもできる。
【図面の簡単な説明】
【００９４】
【図１】本発明の一実施例としての複合機ＭＦＰの機能的な構成を示すブロック図。
【図２】肌色補正処理部１５０により実行される肌色補正ルーチンを示すフローチャート。
【図３】ステップＳ６００において実行される輝度補正量分配ルーチンを示すフローチャート。
【図４】図３の輝度補正量分配ルーチンにより、全輝度補正量ΔＹが分配される様子を示す説明図。
【図５】Ｒトーンカーブの生成手順を示すフローチャート。
【図６】Ｒトーンカーブの生成の様子を示す説明図。
【図７】輝度補正量ΔＹの分配調整後にＲトーンカーブが生成される様子を示す説明図。
【図８】Ｙトーンカーブの生成手順を示すフローチャート。
【図９】Ｙトーンカーブの生成の様子を示す説明図。
【図１０】ＲＧＢトーンカーブの生成の様子を示す説明図。
【図１１】図２のステップＳ９００において実行される画像補正ルーチンを示すフローチャート。
【符号の説明】
【００９５】
１００…制御部
１１０…メモリカード制御部
１２０…スキャン処理実行部
１３０…印刷処理実行部
１４０…操作パネル制御部
１５０…肌色補正処理部
１５２…肌色画素検出部
１５４…肌色平均値取得部
１５６…トーンカーブ生成部
１５８…補正処理実行部
２００…メモリカードスロット
３００…スキャンエンジン
４００…プリントエンジン
５００…操作パネル
ＧＦ…画像ファイル
ＭＣ…メモリカード
ＭＦＰ…複合機
【図１】
0004962224.tif 000002
【図２】
0004962224.tif 000003
【図３】
0004962224.tif 000004
【図４】
0004962224.tif 000005
【図５】
0004962224.tif 000006
【図６】
0004962224.tif 000007
【図７】
0004962224.tif 000008
【図８】
0004962224.tif 000009
【図９】
0004962224.tif 000010
【図１０】
0004962224.tif 000011
【図１１】
0004962224.tif 000012