(57)【要約】【課題】  色空間の連続性を保った色補正を行うと、補正対象とする肌色などの所定の色領域においては、補正処理後に補正範囲内の画素間における色差が増大し、結果として色むらが発生してしまう。【解決手段】  画像から補正対象とする色を代表色として抽出し、前記代表色の補正後の色を目標色として設定し、前記画像内において前記代表色を含む色領域を設定し、前記代表色と前記目標色の差に基づいて、前記画像内における前記色領域内の色を前記目標色に近づくように補正する際に、前記色領域内の色について彩度を上げるように補正する場合には第１の補正方法による補正(S44)を行い、前記色領域内の色について彩度を下げるように補正する場合には第２の補正方法による補正(S45)を行う。【選択図】  図8
2006303708.tif 000002
【特許請求の範囲】
【請求項１】
画像から補正対象とする色を代表色として抽出する代表色抽出手段と、
前記代表色の補正後の色を目標色として設定する目標色設定手段と、
前記画像内において前記代表色を含む色領域を設定する色領域設定手段と、
前記代表色と前記目標色の差に基づいて、前記画像内における前記色領域内の色を前記目標色に近づくように補正する色補正手段と、を有し、
前記色補正手段は、前記色領域内の色について彩度を上げるように補正する場合には第１の補正方法による補正を行い、前記色領域内の色について彩度を下げるように補正する場合には第２の補正方法による補正を行うことを特徴とする画像処理装置。
【請求項２】
前記色補正手段は、前記第１の補正方法として色相を回転して彩度を伸縮するような補正を行い、前記第２の補正方法として色相を回転した後に色座標を平行移動するような補正を行うことを特徴とする請求項１記載の画像処理装置。
【請求項３】
画像から補正対象とする色を代表色として抽出する代表色抽出手段と、
前記代表色の補正後の色を目標色として設定する目標色設定手段と、
前記画像内において前記代表色を含む色領域を設定する色領域設定手段と、
前記目標色を含む色領域を目標色領域として設定する目標色領域設定手段と、
前記代表色と前記目標色の差に基づいて、前記色領域内の色を前記目標領域内の色に補正する色補正手段と、
を有することを特徴とする画像処理装置。
【請求項４】
前記色補正手段は、前記色領域における色相範囲が前記目標色領域における色相範囲よりも大きい場合、前記色領域における色相範囲を圧縮した後に、前記色領域内の色を前記目標領域内の色に補正することを特徴とする請求項３記載の画像処理装置。
【請求項５】
前記色補正手段は、色相を回転して彩度を伸縮するように補正を行うことを特徴とする請求項３または４記載の画像処理装置。
【請求項６】
さらに、前記目標色を含む色領域を目標色領域として設定する目標色領域設定手段を有し、
前記色補正手段は、前記色領域内の色を前記目標領域内の色に補正することを特徴とする請求項１または２記載の画像処理装置。
【請求項７】
前記色補正手段は、前記色領域における色相範囲が前記目標色領域における色相範囲よりも大きい場合、前記色領域における色相範囲を圧縮した後に、前記色領域内の色を前記目標領域内の色に補正することを特徴とする請求項６記載の画像処理装置。
【請求項８】
前記色補正手段は、前記色領域内の画素間の色差が補正前後で増大しないように色補正を行うことを特徴とする請求項１乃至７のいずれかに記載の画像処理装置
【請求項９】
さらに、前記画像内における前記色領域の位置情報を設定する位置情報設定手段を有し、
前記色補正手段は、前記代表色と前記目標色の差、および前記位置情報に基づいて、前記画像内における前記色領域内の色を前記目標色に近づくように補正することを特徴とする請求項１乃至８のいずれかに記載の画像処理装置。
【請求項１０】
前記代表色は人肌の色であることを特徴とする請求項１乃至９のいずれかに記載の画像処理装置。
【請求項１１】
画像から補正対象とする色を代表色として抽出する代表色抽出ステップと、
前記代表色の補正後の色を目標色として設定する目標色設定ステップと、
前記画像内において前記代表色を含む色領域を設定する色領域設定ステップと、
前記代表色と前記目標色の差に基づいて、前記画像内における前記色領域内の色を前記目標色に近づくように補正する色補正ステップと、を有し、
前記色補正ステップにおいては、前記色領域内の色について彩度を上げるように補正する場合には第１の補正方法による補正を行い、前記色領域内の色について彩度を下げるように補正する場合には第２の補正方法による補正を行うことを特徴とする画像処理方法。
【請求項１２】
前記色補正ステップにおいては、前記第１の補正方法として色相を回転して彩度を伸縮するような補正を行い、前記第２の補正方法として色相を回転した後に色座標を平行移動するような補正を行うことを特徴とする請求項１１記載の画像処理方法。
【請求項１３】
画像から補正対象とする色を代表色として抽出する代表色抽出ステップと、
前記代表色の補正後の色を目標色として設定する目標色設定ステップと、
前記画像内において前記代表色を含む色領域を設定する色領域設定ステップと、
前記目標色を含む色領域を目標色領域として設定する目標色領域設定ステップと、
前記代表色と前記目標色の差に基づいて、前記色領域内の色を前記目標領域内の色に補正する色補正ステップと、
を有することを特徴とする画像処理方法。
【請求項１４】
前記色補正ステップにおいては、前記色領域における色相範囲が前記目標色領域における色相範囲よりも大きい場合、前記色領域における色相範囲を圧縮した後に、前記色領域内の色を前記目標領域内の色に補正することを特徴とする請求項１３記載の画像処理方法。
【請求項１５】
前記色補正ステップにおいては、色相を回転して彩度を伸縮するように補正を行うことを特徴とする請求項１３または１４記載の画像処理方法。
【請求項１６】
さらに、前記目標色を含む色領域を目標色領域として設定する目標色領域設定ステップを有し、
前記色補正ステップにおいては、前記色領域内の色を前記目標領域内の色に補正することを特徴とする請求項１１または１２記載の画像処理方法。
【請求項１７】
前記色補正ステップにおいては、前記色領域における色相範囲が前記目標色領域における色相範囲よりも大きい場合、前記色領域における色相範囲を圧縮した後に、前記色領域内の色を前記目標領域内の色に補正することを特徴とする請求項１６記載の画像処理方法。
【請求項１８】
情報処理装置を制御することによって、該情報処理装置を請求項１乃至１０の何れかに記載された画像処理装置として動作させることを特徴とするプログラム。
【請求項１９】
請求項１８に記載されたプログラムが記録されたことを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置および画像処理方法に関し、特にカラー画像内の所定色に重点をおいた色補正処理を行う画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
カラー画像機器の色再現においては、元の色を忠実に再現することが要求される。一方、人間が好ましいと感じるような色再現を行うことも重要であり、特に肌色や空の青、草木の緑などにおいては、一般に好まれるような色再現が要求される。そのため、例えばデジタルカメラで被写体を撮影し、デジタル画像データとして記録する場合には、撮影時に画像が適正な明るさになるよう露出を制御するとともに、イメージセンサから出力されるカラー画像データに対してカラーバランス、色相、彩度、階調の補正が行われている。
【０００３】
しかしながら、これらの色変換に関する処理は、画像全体に対して明るさや色を補正するものであるため、補正したい色を個別に補正することはできない。これはすなわち、補正したい色を目標とする色に補正した場合には、別の色にまで影響が及んでしまい、画像全体としては好ましい色へ補正することはできないためである。
【０００４】
例えば、人物を撮影する際に人物の肌が陰になってしまった場合、肌を目標とする明るさまで明るくなるように補正すると、画像内において元々好ましい明るさであった他の領域が過剰に明るくなってしまう、という問題があった。また、部分的な照明の影響で人物の肌の色が青味を帯びたり、逆に黄色すぎたりした場合にも、肌の色を好ましい肌色に補正しようとすると、画像中において元々好ましい色であった他の領域の色が不自然になってしまう、という問題があった。
【０００５】
このような問題を解決するため、例えば選択的色調整を行うモデルが紹介されている。これは、色補正を行う色領域を指定し、指定した色領域内の色相および彩度を好ましい方向へと補正するものである（例えば、非特許文献１参照）。
【非特許文献１】ハードコピーのための画像信号処理、小寺、テレビジョン学会誌Vol.43,No.11（1989）,pp.1205-1212
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記モデルにおいては色相補正量および彩度倍率を用いて色調整値を獲得し、色相と彩度を知覚的に調整しているが、その調整の際には色空間の連続性を保つことが前提とされているため、補正対象とする肌色などの所定の色領域においては、補正処理後に補正範囲内の画素間における色差が増大してしまい、結果として補正画像全体において色むらが発生してしまうことが懸念される。
【０００７】
また、上記モデルにおいて指定する領域の色相範囲が広い場合には、補正処理後に好ましい色に近づく色相があると同時に、逆に好ましい色から遠ざかってしまう色相も発生し、結果として不自然な画像となるなど、期待した補正効果が得られないことが懸念される。
【０００８】
本発明は上述した問題に鑑みて成されたものであり、画像全体の明るさや色の変換では補正しきれない画像に対して、所望の色領域内での色相および彩度の補正を簡単かつ効果的に行い、且つ補正画像において色むら等の発生を防ぐことができる画像処理装置および画像処理方法を提供することを目的とする。
また、元々好ましい色であった画像中の補正対象領域の色が、補正処理によって好ましい色から遠ざかることにより不自然な画像となってしまう現象を回避することができる画像処理装置および画像処理方法を提供することを目的とする。  
【課題を解決するための手段】
【０００９】
上記目的を達成するための一手段として、本発明の画像処理装置は以下の構成を備える。
【００１０】
すなわち、画像から補正対象とする色を代表色として抽出する代表色抽出手段と、前記代表色の補正後の色を目標色として設定する目標色設定手段と、前記画像内において前記代表色を含む色領域を設定する色領域設定手段と、前記代表色と前記目標色の差に基づいて、前記画像内における前記色領域内の色を前記目標色に近づくように補正する色補正手段と、を有し、前記色補正手段は、前記色領域内の色について彩度を上げるように補正する場合には第１の補正方法による補正を行い、前記色領域内の色について彩度を下げるように補正する場合には第２の補正方法による補正を行うことを特徴とする。
【００１１】
例えば、前記色補正手段は、前記第１の補正方法として色相を回転して彩度を伸縮するような補正を行い、前記第２の補正方法として色相を回転した後に色座標を平行移動するような補正を行うことを特徴とする。
【００１２】
また、画像から補正対象とする色を代表色として抽出する代表色抽出手段と、前記代表色の補正後の色を目標色として設定する目標色設定手段と、前記画像内において前記代表色を含む色領域を設定する色領域設定手段と、前記目標色を含む色領域を目標色領域として設定する目標色領域設定手段と、前記代表色と前記目標色の差に基づいて、前記色領域内の色を前記目標領域内の色に補正する色補正手段と、を有し、前記色補正手段は、前記色領域における色相範囲が前記目標色領域における色相範囲よりも大きい場合、前記色領域における色相範囲を圧縮した後に、前記色領域内の色を前記目標領域内の色に補正することを特徴とする。
【発明の効果】
【００１３】
本発明の構成により、画像全体の明るさや色の変換では補正しきれない画像に対して、所望の色領域内での色相および彩度の補正を簡単かつ効果的に行い、且つ補正画像において色むら等の発生を防ぐことができる。
【００１４】
また、元々好ましい色であった画像中の補正対象領域の色が、補正処理によって好ましい色から遠ざかることにより不自然な画像となってしまう現象を防ぐことができる
【発明を実施するための最良の形態】
【００１５】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。
【００１６】
＜第１実施形態＞
本実施形態に係る画像処理装置は、PC(パーソナルコンピュータ)やWS(ワークステーション)等のコンピュータにより構成されており、デジタルカメラからの入力、インターネットからのダウンロード、CD-ROMやDVD-ROMなどの記憶媒体からの読み出し等により入力された画像において、所定の被写体を判別し、その領域を検出することを目的とするものである。
【００１７】
以下、このような処理を行う本実施形態に係る画像処理装置について、より詳細に説明する。特に、本実施形態ではカメラで撮影した画像中から人物の顔領域を検出する例について説明する。
【００１８】
●装置構成
図1は、本実施形態に係る画像処理装置の基本構成を示すブロック図である。
【００１９】
同図において、201はCPUであり、RAM202やROM203に格納されているプログラムやデータを用いて本装置全体の制御を行うと共に、後述する各処理を行う。202はRAMであり、外部記憶装置207や記憶媒体ドライブ装置208から読み出したプログラムやデータを一時的に記憶するためのエリアを備えると共に、CPU201が各種の処理を実行する為に用いるワークエリアも備える。203はROMであり、ここにブートプログラムや本装置の設定データなどが格納される。
【００２０】
204,205はそれぞれキーボード,マウスであり、それぞれCPU201に各種の指示を入力するためのものである。
【００２１】
206は表示部であり、CRTや液晶画面などにより構成され、CPU201による処理結果を文字や画像などにより表示する。207は外部記憶装置であり、例えばハードディスクドライブ装置等の大容量情報記憶装置であって、ここにOS(オペレーティングシステム)や、後述する各処理をCPU201に実行させるためのプログラムやデータが格納されており、これらは必要に応じて、CPU201の制御によりRAM202に読み出される。
【００２２】
208は記憶媒体ドライブ装置であり、CD-ROMやDVD-ROMなどの記憶媒体に記録されているプログラムやデータを読み出して、RAM202や外部記憶装置207に出力する。なお、外部記憶装置207に記憶されているプログラムやデータの一部を上記記憶媒体に記録しておいても良く、その場合には、これら記録媒体に記憶されているプログラムやデータの使用時に、記憶媒体ドライブ装置208が該記憶媒体からこれらを読み出して、RAM202に出力する。209はI/F(インタフェース)あり、ここにデジタルカメラやインターネットやLANのネットワーク回線等を接続することができる。また、210は上述した各部を繋ぐバスである。
【００２３】
図2は、本実施形態に係る画像処理装置として機能するコンピュータの機能構成を示すブロック図である。同図の各構成により、後述する図3のフローチャートに示す各処理が実現される。
【００２４】
図2において、10は画像入力部であり、ここを介して本装置に以下の処理対象の画像データが入力される。尚、ここで入力される画像(入力画像)には、被写体として人の顔が写っているとする。
【００２５】
20は画像補正部であり、内部のコントラスト調整部21やカラーバランス調整部22によって、入力画像のコントラストやカラーバランス等を調整する。なお、ここでの調整方法は特に限定されるものではなく、例えば、ヒストグラムやトーンカーブを利用した調整方法などが好適に例示される。本実施形態においては、画像補正部20により入力画像を調整したにも関わらず、肌色などの所定色が好ましい色に再現されていない画像に対して、後述する色補正部90により肌色などの所定色領域の色補正を行うことを特徴とする。
【００２６】
30は人肌領域抽出部であり、補正を行う人肌領域を画像から抽出する。ここでの抽出方法は特に限定されるものではなく、例えば、周知の顔検出法によって検出された顔の情報を利用する方法や、任意の色相や彩度を指定する方法、などが例示される。
【００２７】
40は代表色抽出部であり、人肌領域抽出部30で抽出した入力画像中の人肌領域の色情報から、補正対象とする色を代表色として抽出する。ここでは補正対象とする代表色として、例えば人肌領域内の画素の色相および彩度の平均値や中央値、あるいは最頻値などを抽出して設定する。なお本発明では、色補正を行う肌色などの所定色の補正目標色を、補正対象の色毎に目標色記憶部50に予め記憶しておく。補正係数設定部60では、代表色抽出部40で抽出された代表色と目標色記憶部50に記憶された補正目標色とに基づいて、色補正部90で用いる補正係数を設定する。
【００２８】
さらに、色領域設定部70において、人肌領域抽出部30で抽出した人肌領域の色情報から、上記代表色を含む、補正処理の対象とする色領域を設定する。また画像領域設定部80において、人肌領域の入力画像における位置の情報を用いて、補正対象とする人肌領域の補正処理における、位置による画像領域重みを設定する。
【００２９】
色補正部90は色相補正部91と彩度補正部92を有し、補正係数設定部60で設定された補正係数を用いて、色領域設定部70で設定された補正対象となる色領域および画像領域設定部80で設定された画像領域について、その色相および彩度を変換することによって色補正を行う。補正後の画像は画像出力部100から出力される。
【００３０】
●メイン処理
図3は、図2に示した構成において実行される画像処理を示すフローチャートである。なお本実施形態に係る画像処理装置においては、図3のフローチャートに従ったプログラムを外部記憶装置207や記憶媒体ドライブ装置208によってRAM202にロードし、これをCPU201が実行することにより、上述した図2に示す機能構成を実現し、図3に示す各処理が行われる。
【００３１】
先ずステップS1において、RAM202に処理対象となる画像(以下、処理対象画像)のデータをロードする。このロードの形態は特に限定するものではないが、例えばこの処理対象画像データを外部記憶装置207に予め保存しておき、キーボード204やマウス205を用いてこの処理対象画像データのファイル名を入力して、CPU201にRAM202へのロードを指示する方法が考えられる。また、I/F209に不図示のデジタルカメラを接続し、このデジタルカメラに対して(実際にはRAM202にロードされているこのデジタルカメラのドライバソフトに対して)、該デジタルカメラで撮像し、自身の内部メモリに保存している画像のデータを画像処理装置のRAM202に転送する旨の指示を送信することにより、RAM202にこの処理対象画像のデータが転送されるようにしても良い。
【００３２】
本実施形態における処理対象画像は、1画素が8ビットで表現されるRGB画像であって、且つそのサイズはM画素×N画素(但し、Mは水平画素数、Nは垂直画素数)であるとする。また、この処理対象画像は、R(赤)の画素値のみで構成されるプレーンと、G(緑)の画素値のみで構成されるプレーンと、B(青)の画素値のみで構成されるプレーンの計3つのプレーンで構成されるものであるが、このような画像構成に限定されるものではなく、例えば1プレーンからなる画像であっても良い。なお、この処理対象画像データがJPEGなどで圧縮されている場合には、CPU201はこれを伸張し、各画素がR,G,Bの各成分で表現される画像を生成するものとする。
【００３３】
次にステップS2において、ステップS1でRAM202にロードされた処理対象画像のコントラストを補正する。ステップS2におけるコントラスト補正方法については特に限定されるものではないが、輝度ヒストグラムや入出力関係を表すトーンカーブを用いて前記処理対象画像のコントラストを適切に補正する方法などが例示される。
【００３４】
さらに、ステップS3で画像のカラーバランスを適切に補正する。ステップS3におけるカラーバランス補正処理方法も特に限定されるものではないが、例えばヒストグラムや入出力関係を表すトーンカーブを用いたカラーバランス方法などが挙げられる。
【００３５】
本実施形態においては、ステップS2およびS3でコントラストやカラーバランスが適切に補正されたにも関わらず、肌色などの所定色について好ましい色再現がなされていない画像に対し、以下に示すステップS4〜S12において、肌色などの所定色領域の色補正を行うことを特徴とする。以下、本実施形態における所定色の補正処理について説明する。なお、本実施形態では人肌の色を所定色とする。
【００３６】
まず、ステップS4において肌色などの所定の色をもつ画素からなる人肌領域を抽出する。ステップS4の人肌領域抽出方法は特に限定されるものではないが、顔検出処理により検出された顔の情報を利用する方法や、任意の色相や彩度を指定する方法などが例示される。
【００３７】
本実施形態では、ステップS4で得られた入力画像中の人肌領域の色情報及び位置情報を利用して、肌色などの所望の色領域内での色相および彩度の補正を行う。すなわち、肌色など所定色に対して色補正を行うために、肌色などの所定色領域の代表色、代表色を含む補正処理の対象とする色領域、前記人肌領域の入力画像における位置の情報を、ステップS11の色補正処理において利用する。
【００３８】
そのために本実施形態では、肌色などの所定色領域の代表色を求める。ここで代表色は、領域を代表する画素の色相および彩度で表される。よってステップS5において、RGB色空間の各値で表現されている入力画像をLCH色空間上の値、すなわち明度L,彩度C,色相Hの各値に変換する。
【００３９】
ステップS6では、このように彩度C,色相Hで表された人肌領域内の画素について、領域内の代表色を求める。なお、ステップS6の代表色抽出処理の詳細については後述する。
【００４０】
そしてステップS7において、補正対象の色毎に予め設定されている補正目標色を取得し、次にステップS8において、ステップS6で抽出した補正対象とする代表色と、ステップS7で取得した補正目標色を利用して、色補正のための補正係数を設定する。
【００４１】
ステップS8の補正係数設定処理では、代表色と目標色の差に応じて補正係数を設定する。この補正係数は、ステップS11の色補正処理において使用される、色補正量を制御する所定係数である。本実施形態の色補正における補正量は色相と彩度毎に定められるため、補正係数も色相と彩度毎に設定する。本実施形態ではこれら色相補性係数及び彩度補正係数を、目標色と代表色の差が大きくなるにつれて減少するように、設定する。さらに、彩度補正係数については、彩度を下げるように補正する場合は、彩度を上げるように補正する場合に比べ、補正量が小さくなるように設定する。なお、ステップS8の補正係数設定処理の詳細については後述する。
【００４２】
一方、ステップS9においては、代表色を含む補正処理の対象とする色領域の設定処理を行う。本実施形態では、人肌領域内の画素の色相に注目して、補正対象とする代表色を含む色領域を設定し、その領域についての色補正を行う。これは、例えば入力画像の全領域に対して、肌の色を好ましい肌色にする補正を行うと、元々好ましい色であった画像中の他領域の色が不自然になってしまうといった問題が発生するためである。ステップS9で設定される補正対象の色領域は特定色相として示され、該特定色相で示される補正範囲と、補正対象とする色の代表色によって、色領域重みを設定し、ステップS11の色補正処理において用いられる。なお、ステップS9の色領域設定処理の詳細については後述する。
【００４３】
さらにステップS10においては、入力画像における人肌領域の位置情報に基づき、ステップS11の色補正処理で用いられる画像領域重みを設定する。ステップS10の画像領域設定処理の詳細については後述する。
【００４４】
なお、ステップS9の色領域設定処理およびステップS10の画像領域設定処理は、ステップS6〜S8による代表色抽出、目標色取得、補正係数設定の一連の処理と並行して行われても良いし、それぞれを順次行っても良い。すなわち、これらステップS6〜S8とステップS9、ステップS10の処理が全て終了してから、ステップS11の処理が開始されれば良い。
【００４５】
ステップS11では、上述したステップS6〜S10の処理で取得した、肌色などの所定色領域の代表色、代表色を含む補正処理の対象とする色領域および人肌領域の入力画像における位置情報を利用して、補正対象とする画像中の各画素の色相および彩度に対して色補正処理を実行し、肌色などの所定色を好ましい色に補正する。ステップS11の色補正処理の詳細については後述する。
【００４６】
そして最後に、LCH色空間上で彩度および色相が補正が施された画像が、ステップS12でRGB色空間に変換され、ステップS13で出力される。
【００４７】
以下、上述した各ステップにおける処理について、詳細に説明する。
【００４８】
●人肌領域抽出処理(S4)
ステップS4における人肌領域抽出処理の一例として、顔検出処理で検出された顔の情報を利用する方法を説明する。なお、画像中の顔領域を検出する処理としては、IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLINGENCE, VOL.24, No.1, January 2002に、" Detecting Faces in Images: A Survey "と題するYangらの報告に挙げられているような方式を用いて、顔矩形領域が検出される。
【００４９】
そして、顔検出処理により検出された両目の位置情報を取得し、両目を結ぶ線分とその線分に垂直な線分を辺とする所定の矩形領域を定め、前記矩形領域内画素のRGB値の平均値及び共分散行列を求める。このRGB平均値及び共分散行列と検出された顔矩形領域内の各画素のRGB値とのマハラノビス距離を計算し、閾値以下の画素を肌色画素とし、その集合を人肌領域とする。
【００５０】
●代表色抽出処理(S6)
以下、ステップS6の代表色抽出処理について、図4のフローチャートを用いて詳細に説明する。
【００５１】
まず、ステップS21においてステップS4で抽出された人肌領域のデータを取得し、ステップS22で人肌領域の画素の明度Lが、所定値LTH以上であるかを判断する。ここで、ステップS4で抽出された人肌領域内に目や眉、髭、あるいは陰影が含まれていると、人肌領域から抽出した補正対象とする色の代表色が適切に得られない場合がある。そこで本実施形態では、人肌領域内の陰影、あるいは目、眉、髭といった領域は補正対象とする肌色などの所定色よりも明度が低いと考えられるので、ステップS22のような条件判定を行うことによって、人肌領域内の陰影、あるいは目、眉、髭といった領域の画素を除外する。
【００５２】
ステップS22の条件を満たした画素について、ステップS23にてその彩度C及び色相Hの値を集計する。この集計方法は、補正対象の代表色をどのように決定するかによって変わってくるが、例えば、補正対象の代表色を人肌領域内の画素の平均値とする場合であれば、ステップS23の集計は彩度C及び色相Hの単純な加算を意味する。なおステップS23では同時に、画素数もカウントする。この後、ステップS24で対象画素を移動させ、ステップS25で全画素について走査を終了したと判断されるまで、上記集計処理を繰り返す。
【００５３】
入力画像の全画素について走査が終了したと判断された場合、ステップS26で補正対象とする色の代表色を算出する。補正対象の代表色を人肌領域内画素の彩度C及び色相Hの平均値で表す場合、ステップS26においては、上記集計処理による集計結果を集計画素数で除算した値を、代表色として設定する。
【００５４】
●補正係数設定処理(S8)
以下、ステップS8における補正係数設定処理について、詳細に説明する。
【００５５】
色相補正係数PHは、補正目標色の色相HTと代表色の色相HRの差Hdistが大きくなるにつれて減少するように設定する。色相補正係数の設定方法として、式(1)を用いる方法が例示される。式(1)において、K1およびt1は定数であり、これを制御することによって補正の強さを制御することができる。図5に式(1)を表したグラフを示す。図5において、横軸は補正目標色の色相HTと代表色の色相HRの差Hdist、縦軸は色相補正係数PHを示す。
【００５６】
PH(Hdist)=K1exp(-Hdist2/t1)      ・・・(1)
ただし、Hdist=HT-HR
つまり本実施形態においては、補正対象とする色の代表色相が補正目標色相に色空間上での距離が近いほど、代表色の色相を補正目標色の色相により近づけるような補正を行い、代表色相が補正目標色相から大きく離れている場合には、あまり補正を行わないように、補正係数を設定する。補正係数をこのように設定する理由として、補正対象とする色の代表色相が補正目標色相から大きく離れている場合に、代表色を補正目標色により近づけるような補正を行ってしまうと、入力画像全体のバランスが崩れてしまうということが挙げられる。
【００５７】
同様に、彩度補正係数PCは、補正目標色の彩度値CTと代表色の彩度値CRの差Cdistが大きくなるについれて減少するように設定する。つまり、補正対象とする色の代表彩度が補正目標彩度に近いほど、代表色の彩度を補正目標色の彩度により近づけるような補正を行い、代表彩度が補正目標彩度から大きく離れている場合には、あまり補正を行わないように、補正係数を設定する。
【００５８】
ただし、本実施形態における彩度補正係数は、彩度を下げるように補正する場合と、彩度を上げるように補正をする場合とで、その設定方法が異なる。彩度を下げるように補正する場合には、補正することで画像の印象が地味になってしまうという現象を防ぐように補正係数を設定する方が望ましく、逆に彩度を上げるように補正する場合には、たとえ補正対象とする色の代表彩度が補正目標彩度から離れていた場合であっても、目標彩度に近づけるような補正を行った方が画像の印象が良くなる、という効果が期待できるからである。
【００５９】
従って、本実施形態における彩度補正係数の設定方法として、彩度を下げる補正の場合は式(2)を、彩度を上げる補正の場合は式(3)を用いる方法が例示される。なお、式(2)のa1,b1および式(3)のK2,t2は定数であり、これを制御することで補正の強さを制御することができる。
【００６０】
PC(Cdist)=-a1・Cdist2+b1      (CR＞CT)    ・・・(2)
PC(Cdist)=K2exp(-Cdist2/t2)      (CR≦CT)    ・・・(3)
ただし、Cdist=CR-CT
図6に、式(2),(3)を表したグラフを示す。図6において、横軸は補正目標色の彩度値CTと代表色の彩度値CRの差Cdist、縦軸は彩度補正係数PCを示す。図6によれば、補正目標彩度と代表色の彩度の差(絶対値)が等しい場合でも、彩度を下げる補正における彩度補正係数と、彩度を上げる補正における彩度補正係数の値は異なり、彩度を下げる補正における補正係数がより小さくなっていることが分かる。これは、彩度を下げるように補正する場合は彩度を上げるように補正をする場合に比べ、補正量が小さくなるように制御されることを示している。
【００６１】
●色領域設定処理(S9)
以下、ステップS9の色領域設定処理について、図7のフローチャートを用いて詳細に説明する。
【００６２】
まず、上述した図4のステップS21,S22と同様に、ステップS31で人肌領域のデータを取得し、ステップS32で人肌領域の画素の明度Lが、所定値LTH以上であるかを判断することによって、人肌領域内の陰影、あるいは目、眉、髭といった領域の画素を除外する。
【００６３】
ステップS32の条件を満たした画素について、さらにステップS33において、その彩度Cが無彩色の彩度を示す所定値CTH以上であるかを判断する。ここで、画素の彩度が所定値以下であるということは、該画素は無彩色に限りなく近いことを意味し、本実施形態ではこのような画素を除外する。これは、無彩色領域においてはRGB値のわずかの差で色相が大きく変わり、人肌領域に対応する色相領域を高精度で求めることができなくなるためである。
【００６４】
なお本実施形態においては、色領域を特定色の色相と彩度によって設定する。そこでステップS33の条件を満たした画素について、ステップS34にてその色相Hおよび彩度Cの値を集計する。この集計方法は、色領域を示す特定色相および特定彩度をどのように決定するかによって変わってくるが、例えば特定色相については、人肌領域内に存在し、ステップS32及びS33の条件を満たした画素について、その色相分布を解析し、得られた最大色相Hmaxおよび最小色相Hminによって、補正対象とする色領域を示す方法が例示される。
【００６５】
この後、ステップS35で対象画素を移動させ、ステップS36で全画素について走査を終了したと判断されるまで、上記集計処理を繰り返す。
【００６６】
入力画像の全画素について走査が終了したと判断された場合、ステップS37で補正対象とする色領域を設定する。
【００６７】
ステップS37では、上述したように最大色相および最小色相によって補正対象とする色領域を示す場合、ステップS34における集計結果として得られる最大色相Hmaxおよび最小色相Hminを用いて、式(4)に示すように色領域を設定する。ここで、式(4)のΔHは補正対象とする色領域の色相範囲を示したものである。
【００６８】
ΔH = |Hmax - Hmin|    ・・・(4)
また、彩度においても同様に、補正対象とする色領域を最大彩度および最小彩度によって示す場合には、ステップS34における集計結果として得られる最大彩度Cmaxおよび最小彩度Cminを用いて、式(5)に示すように色領域を設定する。ここで、式(5)のΔCは補正対象とする色領域の彩度範囲を示したものである。
【００６９】
ΔC = |Cmax - Cmin|    ・・・(5)
このようにステップS37においては、補正対象とする色領域が、ステップS4で抽出された人肌領域を包含するような、色相および彩度範囲として設定される。
【００７０】
なお、本実施形態の色領域設定処理としては図7に示したように、補正対象とする色領域を示す特定色の色相と彩度として、人肌領域内に存在し、ステップS32及びS33の条件を満たした画素群の色相および彩度から、自動的に最大色相、最小色相および最大彩度、最小彩度を導出した。しかしながら、補正対象とする色領域を示す特定色相と特定彩度の設定方法はこれに限定されるものではなく、例えば任意の特定色相および彩度を手動で設定する方法なども挙げられる。この場合には、補正対象とする色領域は、ステップS4で抽出された人肌領域を包含するような、色相範囲および彩度範囲として設定されることが望ましい。
【００７１】
次にステップS38において、ステップS37で設定された色領域に対し、後述する色補正処理(S11)において使用する色領域重みを、色相範囲と彩度範囲毎に設定する。
【００７２】
色相における重みについては、補正対象とする色領域を示す色相範囲ΔHに基づき、補正対象とする画素の色相Hにおける重みWHが、補正対象とする色領域内では「1」、補正対象領域外では「0」となるように設定する。
【００７３】
ただし、補正対象とする色相領域の重みを設定する方法はこれに限らず、例えば、補正対象とする色領域を示す色相範囲ΔHおよび補正対象とする色の代表色HR、および任意の定数を用いて、非線形に変化するように設定する方法も挙げられる。
【００７４】
なお、このように補正対象とする色領域の重みをつける理由は、後述する色補間処理において補正対象とする画素の色相のみを変換するためである。
【００７５】
また、補正対象とする画素の彩度Cにおける重みWCについても同様に、補正対象とする色領域を示す彩度範囲ΔCに基づき、補正対象とする色領域内では「1」、補正対象領域外では「0」となるように設定する。
【００７６】
ただし、補正対象とする彩度領域の重みを設定する方法はこれに限らず、例えば、補正対象とする色の代表色の彩度CRおよび人肌領域を包含するような彩度範囲ΔCを、ステップS37における色相領域設定と同様な方法により求め、補正対象とする彩度領域の重みを設定する方法なども挙げられる。
【００７７】
●画像領域設定処理(S10)
以下、ステップS10における画像領域設定処理について、詳細に説明する。
【００７８】
後段のステップS11における色補正処理では、ステップS9で設定された特定色領域に対する重みを利用して、肌色などの所定色に対してのみ色補正を行うことによって、元々好ましい色であった画像中の他領域の色が不自然になる現象を回避している。しかしながら、補正対象として色領域のみを設定した場合、例えば入力画像において人肌領域外に、ステップS9で設定される色領域に含まれる、人肌以外の画素が存在すると、該画素は色補間の対象となってしまう。本実施形態ではこのような問題を解決するために、ステップS10で設定する画像領域重みを利用する。
【００７９】
本実施形態における画像領域重みWp(x,y)は、人肌領域内の画素を色補正対象とし、人肌領域に含まれない画素は色補正対象外となるように、0以上1以下の値をWp(x,y)として設定する（ただし、0≦x≦M-1，0≦y≦N-1)。なお画像領域重みは、ステップS11の色補正処理により人肌領域の境界付近で色の連続性が破綻してしまうのを防ぐように、設定されることが望ましい。
【００８０】
なお、画像領域重みの設定方法は限定されるものではないが、人肌領域における重心を求め、重心からの各画素の距離に応じて重みをつける方法などが例示される。この設定方法を用いると、後述する色補正処理において、人肌領域の境界付近の画素は人肌領域の中心付近の画素に比べて補正量が小さくなり、人肌領域の境界付近で色の連続性が破綻するのを防ぐことができる。また、人肌領域に対してガウシアンフィルタなどによるローパス処理を行い、人肌領域の境界付近をぼかすことで、人肌領域内外での色の連続性の破綻を和らげる方法なども挙げられる。
【００８１】
●色補正処理(S11)
本実施形態では、ステップS9で設定した補正範囲内にある各画素の色相と彩度を、後述する変換モデルによって、肌色などの所定色を補正目標色で指定されるような好ましい色に近づけるような色補正処理を実現する。ここで変換モデルとは、人肌領域内の代表色を補正目標色に近づける処理を、ステップS9で設定した補正範囲にある全ての画素について適用するために定義するものである。本実施形態では、色相Hおよび彩度Cを変換するモデルと、CIELAB表現によるa*b*色度値を変換するモデルについて説明するが、本発明はこれに限定されるものではなく、例えばRGB値を変換するものや、CIELUV表現のu*v*色度値について適用されるものも考えられる。
【００８２】
上述した色相Hと彩度Cの変換モデルでは、ステップS5〜S10の処理で取得した、肌色などの所定色領域の代表色、代表色を含む補正処理の対象とする色領域および人肌領域の入力画像における位置情報を利用し、以下に例示する変換1〜変換5のうち、色相のモデルと彩度のモデルを組み合わせて実行することによって、補正範囲内の画素の色相と彩度を補正する。例えば、色相回転モデル(変換1)と彩度伸縮モデル(変換3)の組み合わせを変換モデル1とし、該変換モデル1による色補正処理を実現する。なお、変換5の平行移動モデルは、色相または彩度の単独でも、色相と彩度の組合せでも使用することができる。
【００８３】
変換1：色相回転
変換2：色相圧縮
変換3：彩度伸縮
変換4：彩度差分
変換5：平行移動
なお、ここでは色相と彩度の変換方法として、変換1〜変換5の5つの例を示したが、色相と彩度の変換方法はこれに限定されるものではない。
【００８４】
このように、色相と彩度の変換モデルについては複数のモデルが考えられるが、本実施形態では、色補正処理前後における、補正範囲内の画素間の色差変化に注目して変換モデルを選出した。これは、特定色の見えの違いを表す色差が補正処理後に増加すると、補正範囲内の画素間の色の見えの違いが大きくなり、補正画像において色むらとして表現されてしまうためである。
【００８５】
本実施形態では、式(6)で示される、補正対象の代表色と補正範囲内の画素の色差の平均値が、補正処理前後で増加しないようなモデルを使用して、色補正処理を行う。ここで、式(6)においてL*R,a*R,b*Rは補正対象の代表色のCIELAB空間における明度および色度、L*i,a*i,b*i    は補正範囲内の各画素のCIELAB空間における明度および色度、nは補正範囲の補正対象画素数、さらにΔE*abは補正対象の代表色と補正範囲内の画素の色差の平均を示す。なお、補正範囲内の画素間の色差は、式(6)で算出されるものに限定されない。
【００８６】
ΔE*ab=1/S2・Σ(L*(i))2+(a*(i))2+(b*(i))2)1/2      ・・・(6)
ただし、ΔL*(i)=L*R-L*i
Δa*(i)=a*R-a*i
Δb*(i)=b*R-b*i
上述したように、補正範囲内の画素間の色差が補正処理後に増加しないように補正するために、本実施形態では補正対象の代表色の彩度が補正目標色の彩度よりも高いとき、つまり彩度を下げる補正処理を行う場合と、補正対象の代表色の彩度が補正目標色の彩度より低いとき、つまり彩度を上げる補正処理を行う場合とで、2種類の変換モデルを使い分けることを特徴とする。
【００８７】
以下、これら2種類の変換モデルによる色補正処理について、図8のフローチャートを用いて説明する。
【００８８】
本実施形態では、変換モデルを用いた色補正処理を実行するに先立ち、補正対象の代表色と補正目標色の関係より使用する変換モデルを選択する必要がある。そこでまず、ステップS41において目標色の彩度CTを取得し、ステップS42においてステップS4で取得した補正対象の代表色の彩度CRを取得する。次にステップS43において、補正対象の代表色の彩度CRおよび補正目標色の彩度CTの大小関係を比較する。ここで、補正対象の代表色の彩度CRが補正目標色の彩度CTよりも高いと判断した場合には、ステップS44において彩度を下げる補正(以下、補正処理I)を行う。
【００８９】
一方、ステップS43で補正対象の代表色の彩度CRが補正目標色の彩度CTよりも低いと判断した場合には、ステップS45において彩度を上げる補正(以下、補正処理II)を行う。
【００９０】
＜彩度を下げる補正処理I＞
ここで、補正範囲内の画素の彩度を下げる場合に行われる、補正処理Iについて説明する。
【００９１】
補正処理Iでは、色相を補正するために、色相を回転するモデル使用する。色相を回転した補正を行うモデルを式(7)に示す。このモデルを使用する色相補正処理においては、まず補正対象の代表色における色相補正量DHを算出する。補正対象とする色の代表色における色相補正量は式(8)に示すように、補正対象目標色相HTと補正対象とする色の代表色相HRの差、およびステップS8で設定された色相補正係数PHの積によって表される。そして次に式(7)に示すように、式(8)で算出された色相補正量DHに対して、ステップS9で設定した色相領域の重みWH、および彩度領域の重みWCと、ステップS10で設定した画像領域重みWPをかけた分(式(9))だけ、入力画像内の画素の色相を補正する。なお、式(7)においてHは色補正処理前の補正対象画素の色相、H'は色補正処理後の補正対象画素の色相を示す。
【００９２】
H'= H+W・DH        ・・・(7)
DH= PH(HT-HR)        ・・・(8)
W = WH・WC・WP        ・・・(9)
補正処理Iでは、次に彩度伸縮モデルを用いて補正範囲内の画素の彩度を補正する。この彩度補正処理においては、ステップS8で得られた彩度補正係数PCに基づいて代表色における彩度補正率KCを算出し、式(10)に示すように該彩度補正率KCに対して、ステップS9で設定した色相領域の重みWHおよび彩度領域の重みWCと、ステップS10で設定した画像領域重みWPおよび色補正処理前の補正対象画素の彩度Cをかけた分(式(12))だけ、入力画像内の画素の彩度を補正する。なお、彩度補正率KCは式(11)に示すように、補正目標彩度CTおよび補正対象の代表彩度CRの差と補正代表彩度CRの比と、補正彩度係数PCの積で表される。なお、式(10)においてC'は色補正処理後の補正対象画素の彩度を示す。
【００９３】
C'= C(W・KC+1) = C + W・KC・C        ・・・(10)
KC= PC{(CT-CR)/CR}    (CR ≠ 0)    ・・・(11)
W = WH・WC・WP        ・・・(12)
以上のように本実施形態によれば、補正範囲内の画素の彩度を下げるために補正処理Iを行う場合には、式(7)および式(10)で示すような変換モデルを使用することにより、補正処理後に、補正範囲内の画素間の色差が増加せず、ステップS13で得られる補正画像において色むらの発生を防ぐことができる。
【００９４】
＜彩度を上げる補正処理II＞
次に、補正範囲内の画素の彩度を上げる場合に行われる、補正処理IIについて説明する。
【００９５】
補正処理IIでは、色相を補正するために、まず色相を回転するモデル使用する。さらに、補正範囲内の画素の色相を回転した後、CIELAB表現のa*b*色度値をa*b*平面において平行移動することによって、彩度補正を行う。
【００９６】
まず、ステップS8の補正係数設定処理により得られた、色相補正係数PHおよび彩度補正係数PCに基づき、補正対象の代表色における色相補正量DHおよび彩度補正率KCを式(13),(14)より求める。すなわち、色相補正量DHは式(13)に示すように、補正対象目標色相HTと補正対象とする色の代表色相HRの差、およびステップS8で設定された色相補正係数PHの積で表される。また、補正対象とする色の代表色における彩度補正率KCは式(14)に示すように、補正対象目標彩度CTと補正対象とする色の代表彩度CRの差、およびステップS8で設定された彩度補正係数PCの積に、補正対象とする色の代表彩度CRを足し合わせたものとする。
【００９７】
DH = PH(HT - HR)    ・・・(13)
KC = PC(CT-CR)+CR    (CR≦CT)    ・・・(14)
式(13)により算出した色相補正量DHを用いて、補正範囲の画素の色相を式(15)により補正する。なお式(15)において、Hは変換前の画素の色相、H'は変換後の色相を表す。
【００９８】
H' = H + WH・DH      ・・・(15)
なお、ここでは補正範囲の画素の色相についての変換のみを行い、彩度については以後の平行移動によって変換される。
【００９９】
次に、色素回転後の補正対象の代表色の色相H'R、色度値(a'R*,b'R*)を、式(16),(17)および(18)により算出する。
【０１００】
H'R = HR + DH      ・・・(16)
a'R* = CR・cos(H'R)    ・・・(17)
b'R* = CR・sin(H'R)    ・・・(18)
さらに、CIELAB表現によるa*b*色度値をa*b*平面において平行移動することで、彩度補正を行う。すなわち、a*b*平面での平行移動における画素の移動量(Δa*,Δb*)を、式(19)および(20)により求める。
【０１０１】
Δa* = KC・cos(H'R) - a'R*      ・・・(19)
Δb* = KC・sin(H'R) - b'R*      ・・・(20)
最後に、式(21),(22)を補正範囲内の画素について適用し、移動量分だけ平行移動することによって補正を行い、式(23)および式(24)から補正処理後の補正範囲内の画素の色相と彩度を算出する。なお、式(21),(22)で(Δa1*,Δb1*)は変換前の画素の色度値、(Δa2*,Δb2*)は変換後の画素の色度値を示し、式(23),(24)においてH'',C''は補正処理後の画素の色相，彩度を表す。
【０１０２】
a2* = a1*+Δa* = a1*+(KC・cos(H'R) - a'R*)      ・・・(21)
b2* = b1*+Δb* = b1*+(KC・sin(H'R) - b'R*)      ・・・(22)
H'' = tan-1(b2*/a2*)    ・・・(23)
C'' = {(a2*)2+(b2*)2}1/2    ・・・(24)
以上のように本実施形態によれば、彩度の変換方向によって変換モデルを使い分けることで、補正処理後に補正範囲内の画素間の色差が増加しないような補正を行うことができる。これにより、補正画像における色むらの発生を防ぐことができる。
【０１０３】
以上のようにステップS11では、補正処理Iおよび補正処理IIを用いて、補正後に補正範囲内の画素間の色差が変化しないように、肌色などの所定色を補正目標色で指定されるような好ましい色に近づける色補正処理を実現する。
【０１０４】
なお、ステップS11において使用する色補正処理は、上述した2つの処理(補正処理I，補正処理II)に限らない。しかしながら、補正後に補正範囲内の画素間の色差が増加しないように、あるいは補正範囲内の画素の色相および彩度の標準偏差値が補正処理後に増加しないように、補正処理を行うことが望ましい。
【０１０５】
＜補正後の色差変化＞
以下、ステップS11の色補正処理による色差変化について、図9および図10を用いて説明する。
【０１０６】
図9は、補正対象の代表色を補正目標色(点304)で指定されるような好ましい色に補正するために、上述した補正処理I(色相回転、彩度伸縮)を利用した場合の、補正対象画像における所定色(肌色等)画素のa*b*色度図で指定される色空間での分布の変化を示している。なお、ここでの補正処理は、補正対象の代表色の彩度が補正目標色の彩度より低いため、彩度を上げる補正処理となる。
【０１０７】
まず、図9において補正対象の分布をa*b*色度図上で楕円300としたとき、補正対象の代表色は点301で示される。このとき、補正対象である楕円300内の画素の色相を上記式(7)を利用して変換すると、補正対象画素は楕円302で示す領域に分布する。そして、さらに式(10)を利用して楕円302内の画素の彩度を変換すると、補正対象画素は楕円303で示すようにa*b*色度図上で分布する。図9によればこのとき、補正対象画素の色空間における分布が補正後に拡がってしまうことが分かる。
【０１０８】
このように、補正範囲内の画素の分布が色空間において補正前後で拡がると、補正画像において色むら等が発生してしまう。この色空間での分布の拡がりは、上述した補正範囲内の画素の色差の値の変化により観測される。
【０１０９】
図9において補正範囲内の画素の色差は、補正前後で増加する補正範囲内の画素の色差の値の変化に限らず、式(25)および式(26)で示すような、補正対象画素の色相の標準偏差HSおよび彩度の標準偏差HSの補正処理前後での値の変化を用いて観測することも可能である。つまり、色相および彩度の標準偏差値が補正処理後に増加した時、補正対象画素の色空間での分布が拡がり、補正画像において色むらが発生する。なお、式(25)および式(26)においてnは補正範囲の補正対象画素数、Havは補正範囲内の画素の色相Hiの平均値、Cavは補正範囲内の画素の彩度Ciの平均値を示す。
【０１１０】
HS = [1/n・Σ(Hi-Hav)2]1/2        ・・・(25)
CS = [1/n・Σ(Ci-Cav)2]1/2        ・・・(26)
同様に図10は、上述した補正処理II(色相回転後に平行移動)を用いて彩度を上げる際の、補正対象画像における所定色(肌色等)画素のa*b*色度図で指定される色空間での分布の変化を示している。
【０１１１】
図10において、楕円305は補正範囲内の画素の分布を示し、楕円305内の×印で示される点306は補正対象の代表色、点309は補正目標値である。補正対象である楕円305内の画素の色相を上記式(15)を利用して変換すると、補正対象画素は楕円307で示す領域に分布する。さらに、式(21)および式(22)を利用して楕円307内の画素を変換すると、補正対象画素は楕円308で示すようにa*b*色度図上で分布する。図10によればこのとき、補正対象画素の色空間における分布は補正後に拡大せず、補正範囲内の画素の色差の値も変化しないことが分かる。その結果、補正画像において色むらは発生しない。さらに、式(25)および式(26)で示される補正対象画素の色相の標準偏差および彩度の標準偏差についても、補正処理後に増加しない。
【０１１２】
●本実施形態の効果
以上説明したように本実施形態によれば、画像全体の明るさや色の変換では補正しきれない画像に対して、所望の色領域内での色相および彩度の補正を簡単かつ効果的に行い、且つ補正画像において色むら等の発生を防ぐことができる。
【０１１３】
＜第2実施形態＞
以下、本発明に係る第2実施形態について説明する。
【０１１４】
第2実施形態における画像処理装置の基本構成は、上述した第1実施形態で示した図1と同様である。図11に、第2本実施形態に係る画像処理装置として機能するコンピュータの機能ブロック構成を示す。同図に示す構成は、上述した第1実施形態で図2に示した機能構成に対し、目標色領域記憶部110をさらに備えたことを特徴とする。すなわち、目標色領域記憶部110に、補正目標色を含む目標色領域を補正対象の色毎に記憶しておき、色補正部90で該目標色領域が参照される。
【０１１５】
第2実施形態では図11に示す各構成により画像処理が実行されるが、その主な流れは上述した第1実施形態で図3に示したフローチャートと同様であり、ステップS11における色補正処理が第1実施形態と異なる。従って、以下では第2実施形態におけるステップS11の色補正処理についてのみ、説明する。第2実施形態の色補正処理においては、適切な補正が可能となるように、補正対象となる色相範囲を圧縮することを特徴とする。
【０１１６】
●色補正処理(S11)
第2実施形態における色補正処理について、図12のフローチャートを用いて説明する。まずステップS61において補正対象の色毎に予め設定した補正目標色相範囲ΔHTを取得し、次にステップS62においてステップS9で設定した補正対象の色相範囲ΔHを取得する。次にステップS63において、補正目標色相範囲ΔHTと補正色相範囲ΔHの大小関係を比較し、色相範囲ΔHが目標色相範囲ΔHTより大きい場合に限り、ステップS64で色相圧縮処理を行う。その後、ステップS65およびS66において、補正対象領域画素の色相補正処理および彩度補正処理を行うことにより、補正対象領域の画素の色相と彩度を、補正目標色に近づけるように補正する。
【０１１７】
すなわち第2実施形態の色補正処理としては基本的に、補正対象とする画像中の各画素について、ステップS65で色相を補正し、さらにステップS66で彩度を補正するものであるが、その色補正処理に先立ちステップS61〜S64によって、必要に応じた色相の圧縮を行うことを特徴とする。
【０１１８】
以下、図12のフローチャートに示す各処理について、詳細に説明する。
【０１１９】
まず、ステップS65における色相補正処理について説明する。この色相補正処理は、上述した第1実施形態の色補正処理Iにおける色相補正処理と同様である。すなわち、式(7)（および式(8),(9)）による色相補正を行う。
【０１２０】
ここで図13に、式(7)により実現される色相補正処理による、補正範囲の画素のa*b*色度図で指定される色空間での分布の変化例を示す。同図において、補正対象の分布をa*b*色度図上で楕円401としたとき、補正対象の代表色は点402で示される。このとき、補正対象である楕円401内の画素の色相を式(7)を利用して、補正目標色(点403)で指定されるような好ましい色に補正すると、補正対象画素は楕円404で示す領域に分布する。
【０１２１】
この時、肌色などの所定の色に関する好ましい色の色相範囲が、補正目標色の色相HTを含む色相範囲ΔHT（目標色相範囲）であったとすると、補正対象の代表色付近の画素は色相補正処理によって補正目標色の色相に近い色に補正されるが、図13に示す斜線領域405のように、好ましい色の色相範囲の外に補正されてしまう画素が発生する。
【０１２２】
そこで第2実施形態においては、ステップS65の色相補正処理によって、補正対象が補正目標色に基づいて決定される好ましい色の色相範囲外へ補正されてしまうという不具合を防ぐために、ステップS61〜S64による色相の圧縮処理を行う。すなわち、ステップS9で算出した色相範囲ΔHが目標色相範囲ΔHTより大きい場合(S63)に、ステップS64で式(27)を用いて色相範囲を圧縮した後、ステップS65の色相補正処理を行う。なお、式(27)においてHは色相圧縮処理前の補正対象画素の色相を示し、H'は前記色相圧縮補正処理後の補正対象画素の色相を示す。
【０１２３】
【数１】
2006303708.tif 000003
【０１２４】
ここで図14に、式(27)を用いて補正範囲の色相を圧縮した様子を示す。同図において、補正対象領域の画素は楕円501内に存在する。式(27)を使用し、楕円501内の画素の色相を圧縮したとき、補正対象領域の画素の色相は楕円503で示される領域の色相値に変換される。この時、楕円503で示される領域の画素の色相は、は目標相範囲ΔHT内に存在する。なお、図14において点502は補正対象の代表色、点504は補正目標色を示す。
【０１２５】
なお、式(27)を用いて色相を圧縮する場合、その条件として補正目標色の色相HTを含む目標色相範囲ΔHTの関係を利用したが、補正対象領域の画素が目標色相範囲に含まれているか否かを判断する基準はこれに限らず、例えば、補正対象画素の色相の標準偏差および補正目標色相の標準偏差を利用してもよい。この場合、補正対象画素の色相の標準偏差HSRが補正目標色相の標準偏差HSTよりも大きい場合に、補正対象領域の色相を圧縮する。
【０１２６】
また、色相圧縮処理に用いる色相変換式としては式(27)に限らず、例えば、圧縮を行う色相範囲の境界部分の色の連続性に破綻が生じないように、スプライン近似等を用いて色相が滑らかに変換されるような方法を用いてもよい。
【０１２７】
このように第2実施形態においては、補正目標色に基づいて決定される好ましい色の色相範囲外への補正を防ぐために、ステップS61〜S64で補正対象領域の画素の色相を目標色相範囲ΔHT内へ圧縮した後に、ステップS65の色相補正処理を行って、補正目標色の色相に近づくように補正する。
【０１２８】
ここで図15に、補正範囲の画素のa*b*色度図で指定される色空間上の分布が、補正により変化する様子を示す。式(27)により楕円603で示す領域の色相に変換された、補正範囲(楕円601)の画素は、式(7)により、補正目標色(点604)に近づくように補正処理が施されることによって、楕円605で示す領域に分布する。
【０１２９】
以上のようにしてステップS65の色相補正処理が終了すると、次にステップS66において彩度補正処理が行われる。この彩度補正処理は、上述した第1実施形態の色補正処理Iにおける彩度補正処理と同様である。すなわち、式(10)（および式(11),(12)）による彩度補正を行う。
【０１３０】
●第2実施形態の効果
以上説明したように第2実施形態によれば、画像全体の明るさや色の変換では補正しきれない画像に対して、所望の色領域内での色相および彩度の補正を簡単かつ効果的に行い、且つ元々好ましい色であった画像中の補正対象領域の色が、補正処理によって好ましい色から遠ざかることにより不自然になる現象を回避することができる。
【０１３１】
＜第3実施形態＞
以下、本発明に係る第3実施形態について説明する。第3実施形態における装置構成は上述した第2実施形態と同様であるため、説明を省略する。
【０１３２】
第3実施形態における画像処理も第2実施形態と同様に、図3に示したフローチャートにおいて、ステップS11における色補正処理が第1実施形態と異なる。従って、以下では第3実施形態におけるステップS11の色補正処理についてのみ、説明する。第3実施形態の色補正処理においては、上述した第2実施形態に対してさらに第1実施形態を組み合わせたことを特徴とする。
【０１３３】
●色補正処理(S11)
第3実施形態における色補正処理について、図16のフローチャートを用いて説明する。まずステップS51〜S54の処理は、上述した第2実施形態における図12のステップS61〜64と同様であり、すなわち、色相補正を実行するに先立って、適切な色相の圧縮処理を行う。これにより第3実施形態においても、好ましい色から遠ざかってしまうような補正を防ぐことができる。
【０１３４】
その後、ステップS55〜S59の処理を実行するが、これは、上述した第1実施形態における図8のステップS41〜S45と同様であり、すなわち、彩度を補正する方向（彩度を上げる/下げる）に応じて、色補正処理Iと色補正処理IIを切り換える。これにより第3実施形態においても、画素間の色差の増加を回避して色むらの発生を軽減することができる。
【０１３５】
●第3実施形態の効果
以上説明したように第3実施形態によれば、上述した第1実施形態および第2実施形態によって得られる効果を、同時に得ることができる。すなわち、画像全体の明るさや色の変換では補正しきれない画像に対して、所望の色領域内での色相および彩度の補正を簡単かつ効果的に行い、且つ元々好ましい色であった画像中の補正対象領域の色が、補正処理によって好ましい色から遠ざかることにより不自然になる現象を回避するのみならず、さらに、補正画像において色むら等の発生を防ぐことができる。
【０１３６】
＜変形例＞
なお、上述した各実施形態では人物の肌色を好ましく補正する場合について説明したが、他の記憶色である空の青、草木の緑などを好ましく補正する場合についても、本発明が同様に適用できることは言うまでもない。
【０１３７】
また、上記各実施形態ではデジタルカメラで撮影した画像をコンピュータで処理する場合について説明したが、写真などをスキャナで入力した画像について本発明を適用してもよい。また、本発明をデジタルカメラ、スキャナ、ディスプレイ、プリンタなどのカラー画像機器本体に適用してもよい。
【０１３８】
＜他の実施形態＞
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体（記録媒体）等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１３９】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【０１４０】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１４１】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
【０１４２】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD-ROM，DVD-R)などがある。
【０１４３】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【０１４４】
また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１４５】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１４６】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０１４７】
【図１】本発明に係る一実施形態の画像処理装置の基本構成を示すブロック図である。
【図２】本実施形態における画像処理装置として機能するコンピュータの機能構成を示すブロック図である。
【図３】本実施形態における画像処理のメイン処理を示すフローチャートである。
【図４】本実施形態における代表色抽出処理を示すフローチャートである。
【図５】本実施形態における色相補正係数を説明する図である。
【図６】本実施形態における彩度補正係数を説明する図である。
【図７】本実施形態における色領域設定処理を示すフローチャートである。
【図８】本実施形態における色補正処理を示すフローチャートである。
【図９】本実施形態における補正処理Iによる画素分布を説明する図である。
【図１０】本実施形態における補正処理IIによる画素分布を説明する図である。
【図１１】第２実施形態に係る画像処理装置として機能するコンピュータの機能構成を示すブロック図である。
【図１２】第２実施形態における色補正処理を示すフローチャートである。
【図１３】第２実施形態における補正処理による画素分布を説明する図である。
【図１４】第２実施形態における色相圧縮処理による画素分布を説明する図である。
【図１５】第２実施形態における色相圧縮処理および補正処理による画素分布を説明する図である。
【図１６】第３実施形態における色補正処理を示すフローチャートである。
【図１】
2006303708.tif 000004
【図２】
2006303708.tif 000005
【図３】
2006303708.tif 000006
【図４】
2006303708.tif 000007
【図５】
2006303708.tif 000008
【図６】
2006303708.tif 000009
【図７】
2006303708.tif 000010
【図８】
2006303708.tif 000011
【図９】
2006303708.tif 000012
【図１０】
2006303708.tif 000013
【図１１】
2006303708.tif 000014
【図１２】
2006303708.tif 000015
【図１３】
2006303708.tif 000016
【図１４】
2006303708.tif 000017
【図１５】
2006303708.tif 000018
【図１６】
2006303708.tif 000019