(57)【要約】【課題】抽出された顔領域に最適な輝度変換特性を有する補正輝度特性を作成し、顔領域における擬似輪郭の発生等を防止する。【解決手段】画像中より顔領域を抽出し、顔領域のヒストグラムより顔の平均輝度値を算出し、この平均輝度値に対して適切な補正輝度値を設定する。また、顔領域の平均輝度値を含む所定の輝度範囲を顔輝度範囲として設定し、顔輝度範囲内において傾きが一定の直線を補正輝度特性として用いる。このような補正輝度特性により補正画像中の顔における擬似輪郭の発生を低減する。また、顔輝度範囲外の範囲については、顔輝度範囲の境界点で上記直線とつながる直線を定め、その境界点を平滑化することで、全ての輝度範囲にわたって擬似輪郭やノイズの発生を低減した弊害のない補正輝度特性を作成する。【選択図】  図８
2006018465.tif 000002
【特許請求の範囲】
【請求項１】
画像の輝度を補正する画像処理方法であって、
前記画像中より所定領域を抽出して、該所定領域に含まれる画素の輝度値に基づいて特定輝度値を取得する取得工程と、
前記特定輝度値を含む所定の輝度範囲における輝度の補正特性が所定の傾きの直線となるように補正特性情報を生成する生成工程と、
前記生成工程で生成された補正特性情報に基づいて、前記画像の輝度値を補正する補正工程とを備えることを特徴とする画像処理方法。
【請求項２】
前記特定輝度値は前記画像中から抽出した前記所定領域の平均輝度値とすることを特徴とする請求項１記載の画像処理方法。
【請求項３】
前記特定輝度値に対する補正後の特定輝度値を設定する設定工程を更に備え、
前記生成工程は、前記補正特性が前記特定輝度値を前記補正後の輝度値へ変換するように前記所定の傾きの直線を決定することを特徴とする請求項１に記載の画像処理方法。
【請求項４】
前記設定工程において、前記補正後の特定輝度値は、前記所定領域の平均輝度値と前記画像の全体の平均輝度値とに基づいて設定されることを特徴とする請求項３に記載の画像処理方法。
【請求項５】
前記生成工程は、前記所定の輝度範囲の外側の補正特性が、前記所定の輝度範囲の境界部分において前記所定の傾きの直線と接続する直線となる補正特性情報を生成することを特徴とする請求項１に記載の画像処理方法。
【請求項６】
前記生成工程は、前記所定の傾きの直線と前記所定の輝度範囲の外側に設定された直線との接続部分を曲線で補間した形状の補正特性を有するように補正特性情報を生成することを特徴とする請求項５に記載の画像処理方法。
【請求項７】
画像の輝度を補正する画像処理方法であって、
前記画像中より所定領域を抽出して、該所定領域に含まれる画素の輝度値に基づいて特定輝度値を取得する取得工程と、
前記特定輝度値を含む所定の輝度範囲における輝度の補正特性が所定の傾きの直線となる第１補正特性を含む複数種類の補正特性を合成することにより補正特性情報を生成する生成工程と、
前記生成工程で生成された補正特性情報に基づいて、前記画像の輝度値を補正する補正工程とを備えることを特徴とする画像処理方法。
【請求項８】
前記特定輝度値に対する補正後の特定輝度値を設定する設定工程を更に備え、
前記複数種類の補正特性の各々は、前記特定輝度値を前記補正後の輝度値へ変換することを特徴とする請求項７に記載の画像処理方法。
【請求項９】
前記第１補正特性は、前記所定の輝度範囲内とそれ以外の範囲において傾きの異なる直線からなることを特徴とする請求項７記載の画像処理方法。
【請求項１０】
前記複数種類の補正特性は、傾きが連続的に変化する曲線で示される補正特性を含むことを特徴とする請求項７記載の画像処理装置。
【請求項１１】
前記生成工程では、前記複数種類の補正特性の各々に重み付けをして合成することを特徴とする請求項６記載の画像処理装置。
【請求項１２】
全輝度範囲中に分割点を設定して複数の部分輝度範囲に分割し、部分輝度範囲毎に前記重み付けが変更されることを特徴とする請求項１１に記載の画像処理方法。
【請求項１３】
前記分割点が前記特定輝度値に設定されることを特徴とする請求項１２に記載の画像処理方法。
【請求項１４】
前記補正工程は、更に、前記補正後の輝度値への補正量に応じて当該画素の彩度を補正することを特徴とする請求項１乃至１３のいずれかに記載の画像処理方法。
【請求項１５】
補正前の輝度値をＹ、補正後の輝度値をＹ’、補正前の彩度値をＳとした場合に、補正後の彩度値をＳ’を
Ｓ’＝（Ｙ’／Ｙ×ａ＋（１−ａ））×Ｓ    （０≦ａ≦１）
により得ることを特徴とする請求項１３に記載の画像処理方法。
【請求項１６】
画像の輝度を補正する画像処理装置であって、
前記画像中より所定領域を抽出して、該所定領域に含まれる画素の輝度値に基づいて特定輝度値を取得する取得手段と、
前記特定輝度値を含む所定の輝度範囲における輝度の補正特性が所定の傾きの直線となるように補正特性情報を生成する生成手段と、
前記生成手段で生成された補正特性情報に基づいて、前記画像の輝度値を補正する補正手段とを備えることを特徴とする画像処理装置。
【請求項１７】
画像の輝度を補正する画像処理装置であって、
前記画像中より所定領域を抽出して、該所定領域に含まれる画素の輝度値に基づいて特定輝度値を取得する取得手段と、
前記特定輝度値を含む所定の輝度範囲における輝度の補正特性が所定の傾きの直線となる第１補正特性を含む複数種類の補正特性を合成することにより補正特性情報を生成する生成手段と、
前記生成手段で生成された補正特性情報に基づいて、前記画像の輝度値を補正する補正手段とを備えることを特徴とする画像処理装置。
【請求項１８】
前記補正手段は、更に、前記補正後の輝度値への補正量に応じて当該画素の彩度を補正することを特徴とする請求項１６または１７に記載の画像処理装置。
【請求項１９】
請求項１乃至１５のいずれかに記載の画像処理方法をコンピュータに実行させるための制御プログラム。
【請求項２０】
請求項１乃至１５のいずれかに記載の画像処理方法をコンピュータに実行させるための制御プログラムを格納した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像に対して輝度値補正を行う画像処理方法および画像処理装置およびコンピュータプログラムおよび記憶媒体に関するものである。
【背景技術】
【０００２】
近年では、例えば、ディジタルスチルカメラ（以下、単に「デジカメ」と言う）等の普及により、写真画像のディジタル化が手軽になり、特に、パーソナルコンピュータ（以下、単に「パソコン」と言う）上において、写真調の画像をディジタル画像データとして扱う機会が増えてきた。
【０００３】
また、画像を補正や加工できるアプリケーションソフトの普及により、パソコン上でユーザが自在に画像処理を行えるようになった。例えば、暗く写ってしまった画像を明るくする補正や、肌を美白にする加工といったものが上げられる。
【０００４】
このような背景から、画像の補正や加工処理においては、さらに高精度な画像処理の技術が必要となってくる。
【０００５】
近年では、オブジェクト抽出処理の技術開発が進歩し、画像の中から人物の顔を検出できるようになった。このため、顔領域を最適な明るさに補正するといった提案が数多くなされてきた。特に逆光画像の補正においては、顔抽出による輝度補正が有効となる。
【０００６】
例えば、特許文献１では、抽出した被写体の明度情報より補正特性を作成し、被写体のない領域より制御条件を求めて、輝度補正を行うことを提案している。また、特許文献２においては、肌色平均輝度値と画像全体平均輝度値よりガンマ補正を行うことを提案している。
【特許文献１】特開２００３−６９８２２号公報
【特許文献２】特許第３２０３９４６号明細書
【特許文献３】特開２０００−１０２０３３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１の輝度補正方法では、複数の領域（被写体の領域と被写体の無い領域）を処理するため処理の負荷が大きくなってしまう。また、特許文献１の輝度補正では、輝度の被写体中央値と被写体最大値の範囲に対して直線を用いた補正特性を作成している。このように顔領域内で変曲点を持つ補正特性に従って輝度補正を行うと、補正後の画像において顔に擬似輪郭が発生することがある。更に、特許文献２の輝度補正では、肌色を検出して顔抽出を行うとする場合、逆光画像のように顔が暗いとうまく肌色を検出することができず顔抽出することができない。従って、顔領域は目や鼻などの位置を検出して空間的に抽出することが好ましい。
【０００８】
本発明は、上記の課題に鑑みてなされたものであり、画像中から抽出された所定領域内における擬似輪郭の発生を抑え、該所定領域について適切な輝度補正を実現可能とすることを目的とする。
【０００９】
また、本発明は、画像より抽出した所定領域（例えば被写体の顔等の領域）から適切な補正特性を作成可能とし、画像から抽出された所定領域内において補正特性が変曲点を含まず、画像より空間的に抽出した所定領域（例えば顔領域）の情報を用いて適切な輝度補正を可能にすることを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するための本発明による画像処理方法は、
画像の輝度を補正する画像処理方法であって、
前記画像中より所定領域を抽出して、該所定領域に含まれる画素の輝度値に基づいて特定輝度値を取得する取得工程と、
前記特定輝度値を含む所定の輝度範囲における輝度の補正特性が所定の傾きの直線となるように補正特性情報を生成する生成工程と、
前記生成工程で生成された補正特性情報に基づいて、前記画像の輝度値を補正する補正工程とを備える。
【００１１】
また、上記の目的を達成するための本発明の他の態様による画像処理方法は、
画像の輝度を補正する画像処理方法であって、
前記画像中より所定領域を抽出して、該所定領域に含まれる画素の輝度値に基づいて特定輝度値を取得する取得工程と、
前記特定輝度値を含む所定の輝度範囲における輝度の補正特性が所定の傾きの直線となる第１補正特性を含む複数種類の補正特性を合成することにより補正特性情報を生成する生成工程と、
前記生成工程で生成された補正特性情報に基づいて、前記画像の輝度値を補正する補正工程とを備える。
また、本発明によれば、上記画像処理方法を実行する画像処理装置が提供される。
【発明の効果】
【００１２】
本発明によれば、画像中から抽出された所定領域内における擬似輪郭の発生を抑えつつ、該所定領域について適切輝度補正を実現することができる。
【発明を実施するための最良の形態】
【００１３】
以下、添付の図面を参照して本発明の好適な実施形態について説明する。
【００１４】
＜第１実施形態＞
第１実施形態による画像処理システムの概略の一例を図１に示す。ホストコンピュータ１００には、例えばデジカメ１０５とインクジェットプリンタなどのプリンタ１０６が接続されている。ホストコンピュータ１００は、画像処理ソフト、ワープロ、表計算、インターネットブラウザ等のアプリケーションソフトウエア１０１と、ＯＳ（Operating System）１０２、アプリケーションソフトウエア１０１によってＯＳ１０２に発行される各種描画命令群（イメージ描画命令、テキスト描画命令、グラフィックス描画命令）を処理して印刷データを作成するプリンタドライバ１０３、およびデジカメ内のデータをＯＳ１０２に転送するデジカメドライバ１０４をソフトウエアとして持つ。
【００１５】
ホストコンピュータ１００は、これらソフトウエアが動作可能な各種ハードウエアとして中央演算処理装置ＣＰＵ１０８、ハードディスクドライバＨＤ１０７、ランダムアクセスメモリ１０９、リードオンリーメモリＲＯＭ１１０、モニタ１１１等を備える。
【００１６】
図１で示されるホストコンピュータ１００の一例としては、一般的に普及しているＩＢＭ社のＡＴ互換機のパーソナルコンピュータにMicrosoft社のWindows（登録商標）XPをＯＳ１０２として使用し、任意の印刷可能なアプリケーションをインストールし、デジカメとプリンタを接続した形態が挙げられる。
【００１７】
ホストコンピュータ１００では、アプリケーション１０１により文字などのテキストに分類されるテキストデータ、図形などのグラフィックスに分類されるグラフィックスデータ、自然画などに分類されるイメージ画像データなどを用いて出力画像データが作成される。このような出力画像データはＯＳ１０２によりモニタ１１１に表示させることができる。この出力画像データを印刷出力するときには、アプリケーション１０１からＯＳ１０２に印刷出力要求を行い、グラフィックスデータ部分はグラフィックス描画命令で、イメージ画像データ部分はイメージ描画命令で構成される出力画像を示す描画命令群をＯＳ１０２に発行する。ＯＳ１０２はアプリケーションの出力要求を受け、印刷出力を行わせるプリンタに対応するプリンタドライバ１０３に描画命令群を発行する。プリンタドライバ１０３はＯＳ１０２から入力した印刷要求と描画命令群を処理し、プリンタ１０５で印刷可能な印刷データを作成してこれをプリンタ１０５に転送する。プリンタ１０５がラスタープリンタである場合は、プリンタドライバ１０３はＯＳ１０２からの描画命令に対して、順次画像補正処理を行い、そして順次ＲＧＢ２４ビットページメモリにラスタライズする。すべての描画命令をラスタライズした後にＲＧＢ２４ビットのページメモリの内容をプリンタ１０５が印刷可能なデータ形式、例えばＣＭＹＫデータに変換し、これをプリンタに転送する。
【００１８】
ホストコンピュータ１００によって実行される本実施形態の画像補正処理は、特に、デジカメ１０５で撮影して得られた画像データに対して好適である。このような画像データをパソコンに入力するため、デジカメ１０５からパソコン１０７へデータの送受信が可能な構成になっている。以下、本実施形態の画像補正処理について、図１３に示したフローチャートに沿って具体的に説明する。また、本実施形態の画像補正処理は図１のアプリケーション１０１において行われる。
【００１９】
デジカメ１０５で撮影された画像データは、一般にはＣＦカードやＳＤカードに代表されるＳＲＡＭに記録保存される。ユーザはそのデータを、デジカメドライバ１０４を通じて、パソコン内のＨＤ１０７に転送することができる。また、アプリケーション１０１のうち、画像処理ソフトを起動して該画像の輝度を補正加工処理する。
【００２０】
本実施形態ではＹＣｂＣｒ信号に対して補正加工処理を行うものとする。従って、デジカメドライバ１０４で取り込まれた画像をアプリケーション１０１によって画像補正する際、処理対象の画像がＹＣｂＣｒ信号で保存されているＪＰＥＧ画像であればそのまま処理を行うことが可能である。しかしビットマップ画像やＴＩＦＦ画像はＲＧＢ信号で保存されているため、図２に示すようにＲＧＢ信号をＹＣｂＣｒ信号に変換する必要がある（ステップＳ１１，Ｓ１２）。
【００２１】
次に、ＹＣｂＣｒ信号の画像において、輝度値Ｙによる画像を空間的に解析して顔領域を抽出する（ステップＳ１３）。なお、近年では、顔抽出技術が発達し、人物の写った画像の中から顔領域を自動的に抽出する技術が数多く提案されており、例えば、フィルタ解析を行って顔を抽出するものや、色差信号から肌色領域を抽出するものまで様々である。また、顔の輪郭に沿って顔領域を抽出するものや、顔の中心点を検出して所定の範囲を顔と定めるものまである。ステップＳ１３における顔抽出処理は周知の方法のいずれを用いてもかまわない。
【００２２】
次に、抽出された顔領域より、輝度のヒストグラムを算出して、顔領域の平均輝度値Y_avrを求める（ステップＳ１４）。本実施形態では、図３に示すように顔領域を矩形で設定し、図４に示すようにその顔領域中に含まれる画素値を集計してヒストグラムを作成し、平均輝度値Y_avrを求めている。図４では顔領域の平均輝度値Y_avrが１００となった状態が示されている。なお、本実施形態では、補正輝度特性を決定するための特定輝度値として所定領域（本実施形態では顔領域）の平均輝度値を用いるが、これに限られるものではない。例えば、顔領域のヒストグラムの中心値や、暗い画像を明るくする処理においては顔領域のヒストグラムの最大値、顔領域のヒストグラムが山型に分布していればヒストグラムのピーク値を特定輝度値として利用することが挙げられる。
【００２３】
次に、求めた平均輝度値Y_avrより、補正輝度値Y'_avrを算出する（ステップＳ１５）。なお、Y'_avrは平均輝度値Y_avrの補正後の値を表す。補正輝度値Y'_avrは、関数的にY'_avr＝ｆ(Y_avr)のように算出してもよいし、Y_avrの値に応じて場合分けし、ＬＵＴによりY'_avrを求めてもよい。本実施形態では画像全体の輝度値とのバランスを考慮すべく、例えば以下のようにしてY'_avrを求める。
【００２４】
まず、顔領域の平均輝度値Y_avrより、第１の補正倍率k1を算出する。これは例えば図５に示すような関数で求めてもよいし、ＬＵＴを参照して求めてもよい。次に、画像全体の平均輝度値より、第２の補正倍率k2を算出する。これも上記k1と同様、関数やＬＵＴで求めることができる。
【００２５】
２つの補正倍率k1、k2が得られたところで、Y'_avrを算出する。本実施形態では、k1、k2を掛け合わせたものをY_avrのY'_avrに対する倍率として、以下の（式１）により補正後の平均輝度値を算出する。
Y'_avr＝k1×k2×Y_avr        …（式１）
これにより、顔の平均輝度値と画像全体の平均輝度値の２つのパラメータから、顔平均輝度値に対する補正輝度値を得ることができる。
【００２６】
上記の補正輝度値の取得方法において、例えば顔が暗く写った画像のように顔平均輝度値が低ければk1の値を大きく設定して倍率を高め、ハイライト画像のように顔平均輝度値が高ければk1の値を小さく設定して倍率を下げるようにすれば、補正輝度値をうまく調整することができる。
【００２７】
また、露光アンダー画像のように顔も画像全体も暗い画像においては、k2の値を大きくすることでさらに補正輝度値を上げることができ、一方、逆光画像のように顔は暗いが画像全体が明るい場合は、k2の値を小さくすることで画像の背景部分が明るくなりすぎるのを抑えることができる。また、上述したように、顔の平均輝度値の変わりに、顔領域のヒストグラムの中心値や、暗い画像を明るくする処理においては顔領域のヒストグラムの最大値、顔領域のヒストグラムが山型に分布していればヒストグラムのピーク値などを用いることもできる。
【００２８】
なお、本実施形態では顔の平均輝度値と画像全体の平均輝度値の２つのパラメータから補正倍率を決定したが、さらに複数のパラメータを用いてもよい。例えば顔領域の最大輝度値や画像の最小輝度値といったパラメータを用いることが考えられる。また、本実施形態では算出された補正倍率k1とk2を掛け合わせたが、例えばこの２つの係数を足しあわせて用いるようにしてもよい。
【００２９】
以上のようにして平均輝度値Y_avrに対する補正輝度値Y'_avrを求めたら、この補正輝度値Y'_avrを用いて全輝度に対する補正輝度値を決定し、補正輝度特性を決定する（ステップＳ１６〜Ｓ１８）。第１実施形態では、以下に説明する方法で全輝度範囲にわたる補正輝度特性を作成して、全ての輝度値に対する補正輝度値を決定するものとする。なお補正輝度値Y'_avrはユーザが設定してもよい。なお、補正輝度特性は直線、曲線或いは直線と曲線の組み合わせによって表される。図６を用いて以下に説明を行う。
【００３０】
まず、全輝度範囲の中から顔輝度範囲を定める（ステップＳ１６）。これは、画像中の顔領域を構成する画素、主に肌色部分の輝度範囲を表すものである。一般に、顔輝度範囲を求める場合には、顔領域のヒストグラムから最大輝度値、最小輝度値を求め、その範囲内を顔輝度範囲とすることが考えられる。しかしこの方法では、抽出した顔領域内に髪の毛や目の領域が多く含まれると、顔の肌領域が例え中間調に分布していても、ヒストグラム中の最小輝度値が顔の肌領域の最小輝度値より極端に小さな値を取ってしまうことになる。また、顔の鼻部分などに白飛びがあると、ヒストグラム中の最大輝度値が極端に大きくなってしまう。つまり、この方法では、顔輝度範囲を求める際に誤差を生じる可能性が高くなってしまう。
【００３１】
そこで第１実施形態では、顔平均輝度Y_avrを含む固定範囲を顔輝度範囲として設定する。具体的には、所定の値をもつ顔輝度範囲定数Y_rangeを定め、図６に示すようにY_avr−Y_rangeからY_avr＋Y_rangeまでの範囲を顔輝度範囲とし、その範囲に顔領域の輝度値が分布するものとする。こうすることで、顔抽出の際に髪の毛や目などの暗い領域や、鼻などの白飛びが含まれてしまっても、大きな誤差を生じることなく顔の肌領域の輝度範囲を定めることができる。なお、顔輝度範囲定数Y_rangeは、複数の画像より顔のヒストグラムの統計を取り、分布範囲を調べて経験的に定めてもよいし、図４に示した顔領域のヒストグラムより標準偏差などを用いて分布を調べて決定してもよい。
【００３２】
次に、求められた顔輝度範囲Y_avr±Y_rangeにおける補正輝度特性を定める（ステップＳ１７）。この顔輝度範囲内において補正輝度特性が折れ線になってしまうと、その折れ点で傾き（つまりコントラスト）が変わるために、顔輝度範囲内で擬似輪郭が発生してしまう。そこで第１実施形態では、この顔輝度範囲内で補正輝度特性の傾きを一定とする。傾き値は予め定めてもよいし、顔輝度範囲の値に応じて可変にしてもよい。また、元の画像に対して明るさのみを補正したい場合は傾きを１とし、コントラストを強調したい場合は傾きを１以上に設定すればよい。こうして、設定された傾きを有し、平均輝度値Y_avrに対して補正輝度値Y'_avrを通る直線を定め、これを顔輝度範囲内の補正輝度特性とする。こうすることで、画像中の顔領域において擬似輪郭を発生させることなく、所定のコントラストを保って輝度補正することができる。
【００３３】
以上のようにして顔輝度範囲Y_avr−Y_range〜Y_avr＋Y_rangeにおける補正輝度特性が設定されると、次に顔輝度範囲よりも輝度の低い範囲０〜Y_avr−Y_rangeと、顔輝度より輝度の高い範囲Y_avr＋Y_range〜２５５に対して補正輝度特性を設定する（ステップＳ１８）。まず、顔輝度範囲より輝度の低い範囲について、輝度値０の点において所定の点を通り、さらに顔輝度範囲との境界点Y_avr−Y_rangeにおいて上記決定した顔輝度範囲の補正輝度特性とつながる直線を求める。本実施形態では、図６に示すように輝度値０においては（０，０）を通るよう定めた。次に、顔輝度範囲より輝度の高い範囲について、上記と同様に輝度値２５５の点において所定の点を通り、顔輝度範囲との境界点Y_avr＋Y_rangeにおいて顔輝度範囲の補正輝度特性とつながる直線を求める。本実施形態では、図６に示すように輝度値２５５においては（２５５，２５５）を通るよう定めた。
【００３４】
このようにして、輝度値０〜２５５の範囲を、顔輝度範囲、顔輝度範囲より輝度の低い範囲、顔輝度範囲より輝度の高い範囲の３つに分け、それぞれの輝度範囲における補正輝度特性が境界点でつながるよう定め、最終的に図６のように３つの直線から成る補正輝度特性が作成される。
【００３５】
以上のようにして得られた補正輝度特性を用いて輝度信号を補正してもよいが、この補正輝度特性には傾きの異なる２直線が接合する部分が境界点に存在する。よって、境界点において補正輝度特性の傾きが急激に変化してしまうと、前述したように擬似輪郭を発生してしまう。そこで、第１実施形態では、更に補正輝度特性の２つの境界点で平滑化を行う。平滑化の方法としては例えばスプライン法などが考えられる。本実施形態では図７に示すように、境界点付近の所定の範囲を平滑化範囲として、境界点を挟む２つの直線に接する円を算出し、その円弧を補正輝度特性に置き換えることで平滑化を行う。
【００３６】
こうして図６における２つの境界点を上記方法で平滑化した補正輝度特性を、図８に示す。この補正輝度特性により、顔の平均輝度値Y_avrを所定の補正輝度値Y'_avrに補正し、かつ顔輝度範囲内で傾きを一定に保つことで、顔領域に対して適切な輝度補正を実現するとともに擬似輪郭の発生を抑えることができる。
【００３７】
以上説明したように、第１実施形態によれば、画像中から顔を抽出し、その顔の輝度を適切に補正できるような補正輝度特性の作成方法が開示される。より具体的には、第1実施形態では顔領域の平均輝度値を算出し、平均輝度値を含む顔輝度範囲を設定し、その範囲内において傾きが一定の直線を補正輝度特性として用いることにより、補正画像中の顔に擬似輪郭を発生するのを抑えることができる。また、平均輝度値に対して適切な補正輝度値を算出し、平均輝度値を算出した補正輝度値へ変換するように上記顔範囲内の補正輝度特性を設定することにより、適切な輝度補正が実現できる。また、顔輝度範囲以外の範囲について、それぞれ（０，０）、（２５５，２５５）を通り、境界点で上記顔輝度範囲内の直線とつながる直線を定め、その境界点を平滑化することで、全ての輝度範囲にわたって擬似輪郭やノイズの発生といったような弊害のない補正輝度特性を作成することができる。
【００３８】
＜第２実施形態＞
第１実施形態の方法で補正特性を求めると、Y_avr−Y_rangeの値が０を下回る場合や、Y_avr＋Y_rangeの値が２５５を上回る場合には、補正特性を作成できなくなる。そこで第２実施形態では、このような場合における輝度補正方法について述べる。なお、以下ではY_avr−Y_rangeの値が０以下となる場合、つまり顔が極端に暗い画像について補正輝度特性を設定する場合を説明する。
【００３９】
第１実施形態では、Y_avr−Y_rangeの点と（０，０）とを結ぶ直線を補正特性の一部としていた。しかし、Y_avr−Y_rangeの値が０以下となる場合、この範囲の直線を作成することができなくなる。そこで第２実施形態では、まず点Ｐ１（Y_avr，Y'_avr）と（０，０）を結び、Y_avr＋Y_rangeまで延びる直線を作成する。ここで、当該直線とY_avr＋Y_rangeとの交点をＰ２とする。次に、Y_avr＋Y_range〜２５５の範囲においては、（２５５，２５５）を通り、Y_avr＋Y_rangeで上記直線と接続する直線（点Ｐ２で上記直線と接続する直線）を作成する。その後、上記同様に２つの直線の交点においてスムージングを行う。こうして、第１実施形態を踏まえた補正特性を１つ作成することができる。これは顔輝度範囲における補正輝度特性の直線の傾きが一定になるため、図９においてコントラスト重視特性９２と称する。
【００４０】
しかしながら、このコントラスト重視特性９２を用いると、０〜Y_avr＋Y_rangeの輝度範囲においてコントラストが非常に高い補正特性となり、画像中の顔領域において擬似輪郭やノイズが発生してしまう。そこで第２実施形態では、コントラスト重視特性９２の他に階調を重視した補正特性を作成し、これら２つの補正特性を合成することで１つの補正特性を作成する。
【００４１】
本実施形態では、階調を重視した補正特性として、（Y_avr，Y'_avr）と（０，０）、（２５５，２５５）を通るガンマ曲線を用いる。これを、図９に階調重視特性９１として示した。この階調重視特性９１はコントラスト重視特性９２に比べて、顔輝度範囲内での傾きが全体的に小さく、また、傾きが大きく変わる点もないので、階調重視の補正特性と言える。
【００４２】
コントラスト補正特性のみを用いると、輝度の高い部分では白トビを起してしまい、輝度の低い部分では黒っぽくなり顔の暗い部分が明るくならなくなってしまう。また、階調重視特性のみを用いると、輝度の高い部分では元画像と比べて極度に変化することはないが、顔の平均輝度周辺では、コントラスト重視特性に比べて画像にメリハリがなく、顔がのっぺりしたように仕上がってしまう。このことから、２つの補正特性を、合成して補正特性を生成する。複数の補正特性の合成においては、０〜２５５の全輝度範囲にわたって複数の補正特性を重み付け平均する方法が挙げられる。本実施形態では、更にその重み付けの仕方を輝度範囲に応じて異ならせる。すなわち、図９に示されるように、全輝度範囲を複数の範囲に分割し、それぞれの範囲に対して重み付け係数を設定して平均化するようにする。こうすることで、輝度値によって補正特性を調整することができる。図９においては、０〜Y_avrの範囲とY_avr〜２５５の２つの範囲に全輝度範囲を分割し、それぞれに重み付けの仕方を変えた様子が示されている。
【００４３】
以下に、逆光画像を例に取って重み付け係数を求める。まず、０〜Y_avrにおいては顔領域のうち暗い部分が分布するので、ノイズの発生を抑えつつもコントラストをつけて明るくする必要がある。よって、この範囲では２つの補正特性は１：１で合成する。ちなみにコントラスト重視の補正特性９１をｆ(Y)、階調重視の補正特性９２をｇ(Y)とすると、合成補正特性Ｙ’（９３）は、
Ｙ’＝(ｆ(Y)＋ｇ(Y))／２          …（式２）
と表される。
【００４４】
一方、Y_avr〜２５５の範囲においては、逆光画像のうち主に背景部分が分布するので、輝度をなるべく抑える必要がある。そこで図９のように、この範囲での補正特性の値が低い階調重視曲線に重み付けして合成する。例えば比率を１：３とすると、合成補正特性Ｙ’は、
Ｙ’＝(ｆ(Y)＋３×ｇ(Y))／４      …（式３）
と表すことができる。
【００４５】
第２実施形態では、逆光画像を例に取って合成比率を定めたが、露光アンダーの画像やフラッシュが強いハイライト画像など、画像の特性に応じて合成比率を変化させることにより、各画像に適した補正を行うことができる。また、第２実施形態では、合成比率を切り替える点をY_avrとしたが、Y_avr＋Y_rangeとしてもよいし、切り替える範囲を３つ以上（例えば、Y_avrとY_avr＋Y_rangeの両方で切り替える）を設定してもよい。
【００４６】
こうして、第１実施形態においては作成できなかった補正特性を作成することができる。なお、第２実施形態で説明した複数の特性の合成による補正特性の生成は、顔輝度範囲が全輝度範囲からはみ出さないような状態においても適用できる。すなわち、第１実施形態で生成した補正特性に対しても適用できる。この場合、例えば図８において（０，０）、（Y_avr，Y'_avr）と（２５５，２５５）を通るガンマ曲線を設定し、図８に示された補正特性とガンマ曲線とを合成して補正特性を得る。このとき、Y_avr等を境として重み付けを変更するようにする。
【００４７】
以上のように、第２実施形態によれば、コントラスト重視の曲線と階調重視の曲線を作成し、複数に分割した輝度範囲ごとに重み付け係数を定め、それにより２つの補正特性を合成することで、擬似輪郭やノイズの発生を抑えた補正輝度特性を作成することができる。
【００４８】
＜第３実施形態＞
第３実施形態では、第１および第２実施形態で上述した補正特性によって輝度を補正した後、次に彩度補正を行う。以下に本実施形態の彩度補正について述べる。
【００４９】
まず、第１或いは第２実施形態で説明した方法により補正輝度特性を求め、画像に対して輝度補正を行い、すべての画素において補正後の輝度値Ｙ’が得られたものとする。第３実施形態では、更に彩度補正（色差補正）を行う。ここで、彩度値Ｓは色差値Ｃｂ、Ｃｒを用いて、下記の式４、
Ｓ＝(Ｃｂ2＋Ｃｒ2)1/2  …（式４）
により求まる。
【００５０】
一般に彩度補正は輝度補正とは独立に画像全体に一律に施される。例えば、彩度値Ｓに対する補正彩度値Ｓ’を求める場合、Ｓ’＝１．３×Ｓという式で算出するのが一般的である。この場合、輝度補正がかからなかった画素（領域）まで彩度補正がかかってしまい、全体的に元の画像と色味が異なってします場合がある。または、特許文献３（特開２０００−１０２０３３号公報）に述べられているように、輝度値Ｙ、補正輝度値Ｙ’よりＳ’＝（Ｙ’／Ｙ）×Ｓとして該画素の輝度補正率Ｙ’／Ｙに応じて彩度補正を行う方法もある。一方で、画像内でオブジェクト抽出を行い、抽出領域にのみ一律に輝度補正をするといった方法もある。本実施形態では特許文献３の方法のように、輝度補正を行った後、輝度補正の変化の度合いに応じて、画素の彩度補正の度合いも変化させる。特許文献３の手法と異なる点は、下記のように輝度補正の変化の度合いに係数を乗算し、自由度の高い彩度補正を行う点である。
【００５１】
彩度補正において、まず輝度補正量を求める。輝度補正量は元の輝度値に対する補正後の輝度値の割合であり、Ｙ’／Ｙとする。また、０≦ａ≦１の範囲を取る、正規化された係数ａを設定し、輝度補正量Ｙ’／Ｙに乗算する。つまり、係数ａは輝度補正量Ｙ’／Ｙが彩度補正に及ぼす起因度を表す係数である。そして、Ｙ’／Ｙ×ａに（１−ａ）の項を足し合わせることで、補正彩度値Ｓ’を求める係数とする。以上より、彩度補正式は、
Ｓ’＝（（Ｙ’／Ｙ）×ａ＋１−ａ）×Ｓ    （０≦ａ≦１）    …（式５）
のようになる。
こうすることで、輝度補正量が大きいほど彩度補正も強調され、輝度補正が行われない場合は彩度補正も行われなくなる。
【００５２】
彩度補正では彩度値Ｓに対して上記補正処理を行うが、色相を補正しない場合は、
Ｃｂ’＝（（Ｙ’／Ｙ）×ａ＋１−ａ）×Ｃｂ
Ｃｒ’＝（（Ｙ’／Ｙ）×ａ＋１−ａ）×Ｃｒ
というように色差値Ｃｂ、Ｃｒに補正処理を行っても等価である。
【００５３】
上記の式５を見ると、Ｙ’の値がＹに比べて大きくなるにつれ、Ｓにかかる係数部分も大きくなる。つまり、輝度補正量が大きいときほど彩度補正も強くかかることになる。一方、Ｙ’＝Ｙのとき、つまり輝度補正がない場合は、Ｓ’＝Ｓとなり、彩度補正は行われない。
【００５４】
第３実施形態では、先に行った輝度補正量に応じて彩度補正を行った。つまり、輝度を補正した画素は彩度も補正し、輝度を補正しない画素は彩度も補正しないことになる。また、マウスなどで画像中の補正したい領域を選択し、選択された領域に対して第１或いは第２実施形態で説明した輝度補正特性を適用するようにすれば、選択された領域内の画素については輝度および彩度が補正され、選択された領域外の画素については輝度も彩度も補正させないようにすることができる。こうすることで、元画像に比べて補正したい画素に関しては、輝度補正をすることにより彩度補正も行い、元画像に比べて補正したくない画素は輝度補正を行わないことで彩度補正も行わないように制御することができる。
【００５５】
Ｙ’／Ｙに乗算した係数ａは、任意で設定することができる。ａの値を大きくすれば、Ｙ’／Ｙの起因度を上げることができ、逆にａの値を小さくすれば、起因度を下げることができる。また、ａ＝０では彩度補正が行われなくなることを意味する。これにより、自由度の高い彩度補正を行うことができる。
【００５６】
第３実施形態の用途例として、逆光補正処理が考えられる。まず、顔抽出処理によって、画像中から顔領域を抽出する。これは画像の周波数解析やフィルタリング処理、もしくは肌色検出法によるものでもよい。その後、図１０に示すような暗く写った顔領域の輝度補正を行う。
【００５７】
輝度補正が終了した後に、上記彩度補正を行う。逆光画像の場合、顔領域が元々暗く写っているために、その輝度値を上げても彩度値が非常に小さいままであることがある。そこで、輝度補正した後に彩度補正を行って、補正画像をさらに見栄え良くする必要がある。また、図１０に示すように、逆光画像は背景は明るく写っているため、その部分に関しては輝度補正や彩度補正をする必要がない。そこで、輝度補正した領域にのみ彩度補正を行えば良く、さらには輝度補正量に応じて彩度補正量を強めることで、より精度の高い逆光補正を行うことができる。
【００５８】
以上のように第３実施形態によれば、式５に示すように、輝度補正量に応じた彩度補正を行うことで、輝度を補正させた画素は彩度も補正させ、輝度を補正させない画素は彩度も補正させないように制御することができる。
【００５９】
＜第４実施形態＞
第3実施形態でも説明したように、ＹＣｂＣｒ空間において輝度値Ｙのみを補正した場合、見た目に彩度が低下したように見える場合がある。これはＹＣｂＣｒ空間を均等色空間（L*a*b*空間）に変換したときに、彩度が保持されないためである。そこで、輝度値Ｙを補正した後に彩度もそれに合わせて補正する必要がある。第４実施形態では、L*a*b*空間において色差を保つという観点から彩度補正を行う方法について説明する。
【００６０】
ｓＲＧＢ空間からL*a*b*空間へ変換する場合を考える。図１１に示すように、元のＹＣｂＣｒ空間内の値を、Y_orig、Cb_orig、Cr_orig、彩度値をS_origとする。それぞれの値をｓＲＧＢ空間に変換し、さらにｓＲＧＢ空間からL*a*b*空間へ変換した場合の、上記ＹＣｂＣｒ値に対応するL*a*b*値をL*_orig、a*_orig、b*_origとする。一方、Y_origの補正輝度値をY_corrとし、Y_corr、Cb_orig、Cr_origに対応するL*a*b*値をL*_corr、a*_corr、b*_corrとする。また、補正後の明度値L*_corrと、元の色差値a*_orig、b*_origからなるL*a*b*値に対応するＹＣｂＣｒ値をY_after、Cb_after、Cr_after、彩度値をS_afterとする。また、輝度と彩度の変化量として、dY、dSを用い、dY＝Y_corr−Y_orig、dS＝S_after−S_origとする。
【００６１】
第４実施形態において、肌色領域に特定して、ＹＣｂＣｒ値とL*a*b*値の変換を統計的に調べた。ここで、ＹＣｂＣｒ空間内で肌色領域を、輝度３０〜２００、色相１００〜１５０°、彩度１０〜８０とした。この肌色領域を、色相、彩度を一定のまま輝度のみを１０〜１００の範囲で１０刻みに上げた場合の統計を取り、ｓＲＧＢ空間からL*a*b*空間へ変換を行うと、図１２のようなグラフが得られた。ここで、横軸はdY／Y_origで、縦軸はdS／S_origである。
【００６２】
これより、輝度の上げ幅と彩度の上げ幅の間に相関関係があることが判る。つまり図１２のグラフにおいて、傾きをａとする直線の式、
dS／S_orig＝ａ×dY／Y_orig        …（式６）
に近似することができる。すなわち、式６を満足する場合、輝度補正の前後で色差が保たれることになる。式６はさらに、
S_after＝（Y_corr／Y_orig×ａ＋１−ａ）×S_orig    …（式７）
と書き換えることができる。これは、第３実施形態で記載した式５と等価である。
【００６３】
以上述べたように、ＹＣｂＣｒ空間において輝度のみを明るく補正した場合、モニタ上、もしくはプリント物で確認すると、肌色が元の画像に比べて彩度が低下して見える傾向にある。そのため、その彩度低下分を補正するような上記の式７を用いて、輝度の補正度合いに応じて彩度も補正すればよい。
【００６４】
式７に示す係数ａは、図１２のグラフから算出した値でも、補正前と補正後の画像をモニタやプリント物で見比べて経験的に求めた値でもよい。
【００６５】
一般に逆光画像では、顔が暗く写り、輝度値にして３０〜１３０の値を取ることが、統計的に判った。通常、逆光補正は顔領域の輝度を１０〜８０程度上げて、顔を明るく補正するのであるが、その場合、上記のように輝度値のみを補正しても見た目に彩度が低下してしまっていた。そこで本実施形態に基づき、輝度に応じた彩度補正をすることで、このような課題を解決することができる。
【００６６】
以上、第３、第４実施形態で述べてきたように、輝度の補正量に応じて彩度の補正量を調整することで、従来技術に比べてより精度の高い画像変換が行えるようになった。
【００６７】
例えば逆光補正においては、輝度補正を行った場合、暗く写った被写体が最も補正量が大きく、逆に背景は補正量が小さく補正される。そこで、彩度補正を行う場合、元画像と比べて補正したくない背景に関しては彩度補正をあまり行わず、補正を行いたい被写体において彩度補正をかけるよう、輝度の補正量に関連づける。
【００６８】
さらには、ＹＣｂＣｒ空間において、肌色を明るく変化させた場合、統計的に均等色空間において彩度低下の傾向が見られる。そこで、輝度の補正量に応じて、元の画像と比べて彩度が保たれるよう彩度補正を行う。
【００６９】
以上のように、ＹＣｂＣｒ空間において輝度のみを明るく補正した場合、図１２に示すようにモニタ上もしくはプリント物を見ると肌色が元の画像に比べて彩度が低下して見える傾向にある。第４実施形態によれば、式６を用いて輝度の補正度合いに応じて彩度も補正するように構成したので、その彩度低下分を補正することが可能となる。
【００７０】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【００７１】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００７２】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【００７３】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【００７４】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００７５】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００７６】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【００７７】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【００７８】
【図１】第１実施形態による画像処理システムの構成を示すブロック図である。
【図２】画像を構成するＲＧＢ信号とＹＣｂＣｒ信号の間の変換処理を示す図である。
【図３】矩形で抽出された顔領域を表す図である。
【図４】抽出された顔領域の輝度ヒストグラムを示す図である。
【図５】顔平均輝度値Y_avrより第１の補正倍率k1を算出する関数を表す図である。
【図６】第１実施形態における、平滑化する前の補正輝度特性を表す図である。
【図７】円を用いた２直線の交点における平滑化処理を説明する図である。
【図８】図６の補正輝度特性について図７の平滑化処理を行って得られた最終的な補正輝度特性を表す図である。
【図９】第２実施形態による補正輝度特性を表す図である。
【図１０】逆光画像において、輝度および彩度を補正する領域としない領域を表す図である。
【図１１】ＹＣｂＣｒ空間において輝度のみを補正した場合の、L*a*b*空間内の対応する値を示す変換図である。
【図１２】輝度変化率ｄＹ／Ｙと彩度変化率ｄＳ／Ｓの関係を表す図である。
【図１３】第１実施形態による補正処理を説明するフローチャートである。
【図１】
2006018465.tif 000003
【図２】
2006018465.tif 000004
【図３】
2006018465.tif 000005
【図４】
2006018465.tif 000006
【図５】
2006018465.tif 000007
【図６】
2006018465.tif 000008
【図７】
2006018465.tif 000009
【図８】
2006018465.tif 000010
【図９】
2006018465.tif 000011
【図１０】
2006018465.tif 000012
【図１１】
2006018465.tif 000013
【図１２】
2006018465.tif 000014
【図１３】
2006018465.tif 000015