(57)【要約】【課題】  レフ板やフラッシュを用いることなく、被写体の瞳に自然にキャッチライトを付加する画像補正技術を提供する。【解決手段】  画像から被写体の瞳領域を検出し、キャッチライト（アイキャッチ）と認められる新たな画像を作成し、この画像を検出された瞳の画像に対して合成する。このとき、キャッチライトの大きさ，色，合成位置などを、被写体の身体要素（例えば瞳の大きさ，白目の色，顔の向きなど）に応じて決定することにより、自然な画像補正を実現する。【選択図】  図１
2005222152.tif 000002
【特許請求の範囲】
【請求項１】
入力された画像から被写体の瞳を検出する瞳検出手段と、
前記瞳検出手段によって検出された瞳の領域よりも小さく、前記瞳の領域よりも輝度値の高い画素によって構成される輝点画像を生成する輝点画像生成手段と、
前記瞳検出手段によって検出された瞳の画像に対し、前記輝点画像生成手段によって生成された輝点画像を合成する合成手段と
を備える画像補正装置。
【請求項２】
前記入力された画像から被写体の白目を検出する白目検出手段と、
前記白目検出手段によって検出された白目の領域における輝度値の統計値を算出する統計値算出手段とをさらに備え、
前記輝点画像生成手段は、前記統計値算出手段によって算出された統計値に基づいた画素値を前記輝度値の高い画素として用いる
請求項１に記載の画像補正装置。
【請求項３】
前記入力された画像から被写体の顔の向きを推定する推定手段をさらに備え、
前記合成手段は、前記推定手段によって推定された被写体の顔の向きに応じて、前記瞳領域における前記輝点画像を合成する位置を決定する
請求項１又は２に記載の画像補正装置。
【請求項４】
前記入力された画像の被写体の顔に照射されている照明の位置する方向を推定する照明方向推定手段をさらに備え、
前記合成手段は、前記照明方向推定手段によって推定された照明の位置する方向に応じて、前記瞳領域における前記輝点画像を合成する位置を決定する
請求項１又は２に記載の画像補正装置。
【請求項５】
前記被写体の身体に関する大きさや長さを検出する身体値検出手段をさらに備え、
前記輝点画像生成手段は、前記身体値検出手段によって検出された大きさや長さに基づいて前記輝点画像の大きさを決定する請求項１〜４のいずれかに記載の画像補正装置。
【請求項６】
前記瞳検出手段によって検出された瞳の領域に既に存在する輝点画像の数を数える計数手段をさらに備え、
前記合成手段は、前記計数手段による計数結果が所定の数よりも多い場合には処理を実行せず、前記計数結果が所定の数以下の場合には処理を実行する
請求項１〜５のいずれかに記載の画像補正装置。
【請求項７】
前記瞳検出手段によって検出された瞳の領域に、不適切な輝点画像が既に存在しているか否か判断する不適切輝点判断手段をさらに備え、
前記不適切輝点判断手段によって不適切な輝点画像が存在していると判断された場合、前記合成手段は、前記瞳の画像において不適切な輝点画像を削除し、この瞳の画像に対して前記輝点画像生成手段によって生成された輝点画像を合成する
請求項１〜６のいずれかに記載の画像補正装置。
【請求項８】
入力された画像から被写体の瞳を検出するステップと、
検出された瞳の領域よりも小さく、前記瞳の領域よりも輝度値の高い画素によって構成される輝点画像を生成するステップと、
検出された瞳の画像に対し、前記生成された輝点画像を合成するステップと
を情報処理装置に実行させるためのプログラム。
【請求項９】
情報処理装置が、入力された画像から被写体の瞳を検出するステップと、
情報処理装置が、検出された瞳の領域よりも小さく、前記瞳の領域よりも輝度値の高い画素によって構成される輝点画像を生成するステップと、
情報処理装置が、検出された瞳の画像に対し、前記生成された輝点画像を合成するステップと
を含む画像補正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を撮像する撮像装置や、画像を扱う情報処理装置やソフトウェア等に適用されて有効な技術に関する。
【背景技術】
【０００２】
プロカメラマンの撮像手法として、被写体の瞳にキャッチライトと呼ばれる光の映り込み部分を発生させることにより、被写体の表情が豊かに生き生きとなるように撮像する方法が実施されている。このようなキャッチライトは、レフ板を用いることにより実現することができる。この場合、レフ板に反射した光が瞳に映り込むことにより、レフ板の形に応じたキャッチライトが被写体の瞳に発生する。また、キャッチライトは、撮像装置と連動したフラッシュを用いることによっても実現できる。
【０００３】
また、キャッチライトについて具体的に言及した画像補正技術ではないが、瞳の色を補正することによりカラーコンタクトをシミュレートする化粧シミュレーション技術など、瞳の画像に対して画像補正を行う技術もある（例えば特許文献１を参照）。
【特許文献１】特開２０００−１５１９８５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記した従来の技術にはそれぞれ問題があった。レフ板を用いる場合には、当然、撮像装置の他にレフ板が必要となっていた。さらに、被写体の瞳に対して適当なキャッチライトを実現させるためには、レフ板の大きさや形や位置など様々な要素を的確に設定する必要があった。このため、レフ板を用いることによりキャッチライトを実現させることは、ユーザが気軽に実施できるものではなかった。
【０００５】
フラッシュを用いる場合には、フラッシュの光源はレフ板に比べて小さいため、被写体の瞳に発生するキャッチライトの大きさが小さく、キャッチライトによる効果を十分に得られないという問題があった。また、フラッシュを用いる場合には、被写体に影ができる、画像が平面的になる、部分的に白飛びしてしまう、赤目現象が生じてしまう等の問題も発生してしまう。さらに、フラッシュを必要としない明るい場所であっても、キャッチライトのためにわざわざフラッシュをたかなくてはならないという問題もあった。
【０００６】
画像補正を行う場合には、レフ板やフラッシュを用いた場合の問題は生じない。しかし、上記のようにこれまでキャッチライトの画像補正について具体的に言及した技術はなく、自然なキャッチライトは表現できていなかった。
【０００７】
本発明では、レフ板やフラッシュを用いることなく、被写体の瞳に自然にキャッチライトを付加する画像補正技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記問題を解決するため、本発明は以下のような構成をとる。本発明の第一の態様は、入力された画像から被写体の瞳を検出する瞳検出手段，瞳検出手段によって検出された瞳の領域よりも小さく、瞳の領域よりも輝度値の高い画素によって構成される輝点画像を生成する輝点画像生成手段，及び瞳検出手段によって検出された瞳の画像に対し、輝点画像生成手段によって生成された輝点画像を合成する合成手段を備える。
【０００９】
「輝点画像」とは、被写体の瞳の画像に合成されることにより、この画像を見る者によ
ってキャッチライト（アイキャッチ）として認められる画像である。
【００１０】
本発明の第一の態様では、被写体の瞳に対して、キャッチライトとして認められる画像が合成される。このため、キャッチライトによる効果、即ち被写体の表情が豊かに生き生きと表現され、画像を見る者に対し良い印象を与える画像を生成することが可能となる。
【００１１】
また、本発明の第一の態様は、入力された画像から被写体の白目を検出する白目検出手段，及び白目検出手段によって検出された白目の領域における輝度値の統計値を算出する統計値算出手段をさらに備えるように構成されても良い。この場合、輝点画像生成手段は、統計値算出手段によって算出された統計値に基づいた画素値を輝度値の高い画素として用いる。
【００１２】
「統計値」とは、ここでは検出された白目の領域における輝度値の平均値，重心値，最頻値などを示す。また、統計値の代わりに、検出された白目の領域における画素値の中からランダムに選択された１以上の代表値が用いられても良い。
【００１３】
このように構成された本発明の第一の態様では、輝点画像の画素値は、被写体の白目の画素値に基づいて決定される。このため、被写体の目の色などに応じたより自然な画像を得ることが可能となる。
【００１４】
また、本発明の第一の態様は、入力された画像から被写体の顔の向きを推定する推定手段をさらに備えるように構成されても良い。この場合、合成手段は、推定手段によって推定された被写体の顔の向きに応じて、瞳領域における輝点画像を合成する位置を決定する。
【００１５】
合成手段は、例えば、瞳領域における輝点画像を合成する位置を、被写体の顔の向き方向に偏った位置として決定しても良い。このように構成されることにより、被写体の顔の向きと輝点画像の位置する方向が一致し、より自然な画像を得ることが可能となる。
【００１６】
また、本発明の第一の態様は、入力された画像の被写体の顔に照射されている照明の位置する方向を推定する照明方向推定手段をさらに備えるように構成されても良い。この場合、合成手段は、照明方向推定手段によって推定された照明の位置する方向に応じて、瞳領域における輝点画像を合成する位置を決定する。
【００１７】
照明方向推定手段は、例えば、被写体の顔における明度の分布を調べることにより推定を行うように構成されても良い。また、合成手段は、例えば、瞳領域における輝点画像を合成する位置を、照明が位置すると推定される方向に偏った位置として決定しても良い。このように構成されることにより、被写体の顔における明度分布の度合いと輝点画像の位置する方向が一致し、より自然な画像を得ることが可能となる。言い換えれば、このように構成されることにより、被写体の顔に光を照らしている照明が瞳で反射することにより輝点画像が生じたように見える画像を生成することができる。
【００１８】
また、本発明の第一の態様は、被写体の身体に関する大きさや長さなどを検出する身体値検出手段をさらに備えるように構成されても良い。この場合、輝点画像生成手段は、身体値検出手段によって検出された大きさや長さに基づいて輝点画像の大きさを決定する。
【００１９】
「被写体の身体」とは、被写体の身体全体のみを指すのではなく、被写体の身体の一部（例：頭，顔，首，手，脚，目，口，鼻，唇，瞳，鼻孔）又はその組み合わせも指す。よって、「被写体の身体に関する大きさや長さ」とは、被写体の身長や肩幅など身体全体における大きさや長さのみを指すのではなく、被写体の身体の一部の大きさ（例：頭の大き
さ，顔の大きさ，目の大きさ，口の大きさ，瞳の大きさ，鼻孔の大きさ）や長さ（首の長さ，手の長さ，脚の長さ，目と目の間隔，目の横幅，唇の幅，瞳の幅，鼻孔の間隔）も指す。
【００２０】
このように構成されることにより、被写体の身体に関する大きさや長さに対して不自然な大きさの輝点画像が合成されることを防止できる。従って、より自然な画像を得ることが可能となる。
【００２１】
また、本発明の第一の態様は、瞳検出手段によって検出された瞳の領域に既に存在する輝点画像の数を数える計数手段を備えるように構成されても良い。この場合、合成手段は、計数手段による計数結果が所定の数よりも多い場合には処理を実行せず、計数結果が所定の数以下の場合には処理を実行する。
【００２２】
このように構成されることにより、原画像において既に十分な数の輝点画像を有している瞳の画像に対し、無駄に新たな輝点画像を合成する処理を行うことを省くことが可能となる。
【００２３】
また、本発明の第一の態様は、瞳検出手段によって検出された瞳の領域に、不適切な輝点画像が既に存在しているか否か判断する不適切輝点判断手段をさらに備えるように構成されても良い。このとき、不適切輝点判断手段によって不適切な輝点画像が存在していると判断された場合、合成手段は、瞳の画像において不適切な輝点画像を削除し、この瞳の画像に対して輝点画像生成手段によって生成された輝点画像を合成する。
【００２４】
「不適切な輝点画像」とは、画像を見る者に対して不快な印象を与える可能性のある輝点画像を指す。例えば、被写体の瞳の中心に存在する輝点画像は、不適切な輝点画像である。また、例えば、赤色の輝点画像（いわゆる赤目現象により生じる赤色部分）も不適切な輝点画像である。
【００２５】
このように構成されることにより、見る者に対し悪い印象を与えず良い印象を与える自然な画像を得ることが可能となる。
【００２６】
また、第一の態様は、プログラムが情報処理装置によって実行されることによって実現されても良い。即ち、本発明は、上記した第一の態様における各手段が実行する処理を、情報処理装置に対して実行させるためのプログラム、或いは当該プログラムを記録した記録媒体として特定することができる。
【発明の効果】
【００２７】
本発明によれば、被写体の瞳に対して、キャッチライトとして認められる画像が合成される。キャッチライトによる効果、即ち被写体の表情が豊かに生き生きと表現され、画像を見る者に対し良い印象を与える画像を生成することが可能となる。
【発明を実施するための最良の形態】
【００２８】
次に、図を用いて本発明による画像補正装置について説明する。本発明による画像補正装置は、高輝度の小領域からなる画像（以下、「輝点画像」と呼ぶ）を、被写体の瞳の画像中に合成することにより、仮想的にキャッチライトを発生させる。また、以下の説明では、瞳の画像中に存在する高輝度の小領域を輝点領域と呼ぶ。
【００２９】
なお、画像補正装置についての以下の説明は例示であり、本発明の構成は以下の説明に限定されない。また、以下の説明において人物画像とは少なくとも一つの人の目を含む画像であり、人物の顔の一部または全部を含む画像である。従って、人物画像とは、人物全
体の画像を含んでも良いし、人物の顔だけや上半身だけの画像を含んでも良い。また、人物画像は複数の人物についての画像を含んでも良い。さらに、人物画像には、背景に人物以外の風景（背景：被写体として注目された物も含む）や模様などのいかなるパターンが含まれても良い。
【００３０】
〔システム構成〕
画像補正装置１は、ハードウェア的には、バスを介して接続されたＣＰＵ（中央演算処理装置），主記憶装置（ＲＡＭ），補助記憶装置などを備える。補助記憶装置は、不揮発性記憶装置を用いて構成される。ここで言う不揮発性記憶装置とは、いわゆるＲＯＭ（Read-Only Memory：ＥＰＲＯＭ（Erasable Programmable Read-Only Memory），ＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory），マスクＲＯＭ等を含む
），ＦＲＡＭ（Ferroelectric RAM），ハードディスク等を指す。
【００３１】
図１は、画像補正装置１の機能ブロックを示す図である。画像補正装置１は、補助記憶装置に記憶された各種のプログラム（ＯＳ，アプリケーション等）が主記憶装置にロードされＣＰＵにより実行されることによって、画像入力部２，顔検出部３，目検出部４，瞳状態判断部５，輝点作成部６，及び画像出力部７等を含む装置として機能する。顔検出部３，目検出部４，瞳状態判断部５，及び輝点作成部６は、プログラムがＣＰＵによって実行されることにより実現される。また、顔検出部３，目検出部４，瞳状態判断部５，及び輝点作成部６は、それぞれが専用のチップとして構成されても良い。以下、画像補正装置１に含まれる各機能部について説明する。
【００３２】
〈画像入力部〉
画像入力部２は、人物画像の原画像のデータ（以下、「原画像のデータ」と呼ぶ）を画像補正装置１へ入力するためのインタフェースとして機能する。画像入力部２によって、画像補正装置１の外部から、原画像のデータが画像補正装置１へ入力される。画像入力部２は、画像補正装置１へ原画像のデータを入力するためのどのような既存技術を用いて構成されても良い。
【００３３】
例えば、ネットワーク（例えばローカル・エリア・ネットワークやインターネット）を介して原画像のデータが画像補正装置１へ入力されても良い。この場合、画像入力部２はネットワークインタフェースを用いて構成される。また、デジタルカメラやパーソナルコンピュータや記録装置（例えばハードディスクドライブ）等から原画像のデータが画像補正装置１へ入力されても良い。この場合、画像入力部２は、デジタルカメラやパーソナルコンピュータや記録装置と画像補正装置１とをデータ通信可能に接続する規格（例えばＵＳＢ（Universal Serial Bus）やＳＣＳＩ（Small Computer System Interface）等の有
線接続やｂｌｕｅｔｏｏｔｈ等の無線接続の規格）に応じて構成される。また、記録媒体（例えば各種フラッシュメモリやフロッピー（登録商標）ディスクやＣＤ（Compact Disk）やＤＶＤ（Digital Versatile Disc、Digital Video Disc））に記録された原画像のデータが画像補正装置１へ入力されても良い。この場合、画像入力部２は、記録媒体からデータを読み出す装置（例えばフラッシュメモリリーダやフロッピーディスクドライブやＣＤドライブやＤＶＤドライブ）を用いて構成される。
【００３４】
また、画像補正装置１がデジタルカメラ等の撮像装置又はデジタルカメラ等の撮像装置を備える各種装置（例えばＰＤＡ（Personal Digital Assistant）や携帯電話機）の内部に含まれ、撮像された人物画像が原画像のデータとして画像補正装置１へ入力されても良い。この場合、画像入力部２は、ＣＣＤ（Charge-Coupled Devices）やＣＭＯＳ（Complementary Metal-Oxide Semiconductor）センサ等を用いて構成される。また、画像補正装
置１が、プリンタやディスプレイ等の画像出力装置の内部に含まれ、出力データとしてこの画像出力装置に入力された人物画像が原画像のデータとして画像補正装置１へ入力され
ても良い。この場合、画像入力部２は、これらの画像出力装置に入力された原画像のデータを画像補正装置１において取り扱い可能なデータに変換する装置（例えばＡ／Ｄ変換装置）などを用いて構成される。
【００３５】
また、入力部２は上記された複数の場合に応じることが可能となるように構成されても良い。例えば、上記された具体例のうち、複数の装置を用いて画像入力部２が構成されても良い。
【００３６】
〈顔検出部〉
顔検出部３は、画像入力部２から原画像のデータを受け取り、原画像から人の顔を検出し、検出された顔の位置や大きさ等を示す顔座標を特定する。顔検出部３は、例えば、顔全体の輪郭に対応した基準テンプレートを用いたテンプレートマッチングによって顔を検出するように構成されても良い。また、顔検出部３は、顔の構成要素（目，鼻，耳など）に基づくテンプレートマッチングによって顔を検出するように構成されても良い。また、顔検出部３は、クロマキー処理によって頭部などの頂点を検出し、この頂点に基づいて顔を検出するように構成されても良い。また、顔検出部３は、肌の色に近い領域を検出し、その領域を顔として検出するように構成されても良い。また、顔検出部３は、ニューラルネットワークを使って教師信号による学習を行い、画像の濃淡値に基づいて顔らしい領域を顔として検出するように構成されても良い。また、顔検出部３による顔検出処理は、その他、既存のどのような技術が適用されることによって実現されても良い。
【００３７】
また、顔検出部３は、原画像から複数の人の顔が検出された場合、特定の基準に従って処理の対象とする順番を決定する。所定の基準とは、例えば顔の大きさ、顔の向き、画像中における顔の位置などである。このとき、顔検出部３は、所定の基準から外れた顔を処理の対象外とするように構成されても良い。例えば、顔検出部３は、検出された複数の顔について大きいものから順に処理を行い、所定の大きさよりも小さい顔については処理を行わないように構成されても良い。
【００３８】
また、顔検出部３は、検出された顔の向きを推定する。顔の向きを推定する処理は、既存のどのような技術が適用されることにより実現されても良い。例えば以下に示す文献に記載の技術によって実現することができる。以下、被写体の顔の向きを示す場合、画像を見る者にとっての向きを記載する。即ち、被写体の顔の向きが被写体にとって右である場合は、その画像を見る者にとっての左方向に被写体の顔が向いているため、顔の向きを左と示す。
【００３９】
荒木祐一、島田伸敬、白井良明、"背景と顔の方向に依存しない顔の検出と顔方向の推
定"、信学技報 PRMU2001-217、pp.87-94(2000-01)、［平成15年11月28日検索］、インタ
ーネット＜URL : http://www-cv.mech.eng.osaka-u.ac.jp/~araki/research2/PRMU2002Jan.pdf＞
【００４０】
この文献に記載の技術が適用された場合、顔検出部３は、まず６種類の顔要素（右目，左目，右眉，左眉，鼻孔，口）の候補を抽出し、それぞれについて顔要素らしさを算出する。次に、顔検出部３は、一般化ハフ変換を用いて顔の候補領域を特定する。次に、顔検出部３は、弛緩法を用いて、顔の幾何学的関係を満たす顔特徴の組み合わせを顔として検出する。例えば、左向きの顔モデルに当てはまれば、顔検出部３はその顔の方向を左向きと推定し、右向きの顔モデルに当てはまれば、顔検出部３はその顔の方向を右向きと推定する。また、正面向きの顔モデルに当てはまる場合には、顔検出部３は顔の輪郭に対する両目の位置から顔の方向を推定する。
【００４１】
顔検出部３は、顔座標及び顔の向きの情報を含む顔情報を作成し、原画像のデータとと
もに顔情報を目検出部４へ渡す。
【００４２】
〈目検出部〉
目検出部４は、顔検出部３によって特定された顔座標に基づいて、顔検出部３によって検出された顔における目の領域を検出する。そして、目検出部４は、検出された目の領域から、白目の領域（以下、「白目領域」と呼ぶ）と瞳（黒目）の領域（以下、「瞳領域」と呼ぶ）とを特定する。このとき、目の領域を検出する処理や、検出された目の領域の中から白目領域や瞳領域を特定する処理は、既存のどのような技術を適用することにより実現されても良い。以下に、目の領域を特定する処理と、特定された目の領域の中から白目領域や瞳領域を特定する処理とについて、それぞれ例を説明する。
【００４３】
まず、目の領域を特定する処理の例について説明する。目検出部４は、目頭（目の領域のうち最も顔の内側に位置する点）、目尻（目の領域のうち顔の外側に最も近い点）、上瞼の上端、下瞼の下端の四点を検出する。このとき、目検出部４は、顔の領域について目のパターンマッチングを実施することで目のおよその領域を把握する。次に、目検出部４は、その領域においてエッジを検出することで上記四点を検出する。そして、目検出部４は、検出された四点を通る矩形によって囲まれる領域を目の領域として特定する。
【００４４】
また、目の領域の特定は以下のように実施されても良い。まず、目検出部４は、人物の目の中心位置を検出する。人物の目又は瞳の中心位置の検出法は、既存のどのような技術を適用することにより実現されても良い。具体的には、下記文献に記載の技術がある。
【００４５】
湯浅真由美、福井和広，山口修、「パターンとエッジの統合エネルギー最小化に基づく高精度な瞳検出」、信学技報、2000年、Vol.100、No.134、pp.79-84
【００４６】
なお、目検出部４は、目の領域を特定できない場合（例えば被写体の目が閉じてしまっている場合）、処理を終了するように構成されても良い。この場合、瞳状態判断部５や輝点作成部６は処理を実施せず、画像出力部７が原画像をそのまま出力するように構成されても良い。
【００４７】
次に、目検出部４は、検出された中心位置から所定の大きさ（例：人物の顔幅に基づいた大きさ，左右の目の中心位置の距離に基づいた大きさ）の領域を目の領域として特定する。
【００４８】
次に、特定された目の領域の中から白目領域や瞳領域を特定する処理の例について説明する。目検出部４は、目の領域から肌の色以外の領域を抽出する。そして、目検出部４は、抽出された領域から、白目領域や瞳領域を抽出する。具体的には、目検出部４では、目領域内で円のＨｏｕｇｈ変換を実施し、瞳候補となる円を抽出する。そして、目検出部４は、検出された瞳候補から、左右の目の領域内に存在する円同士の距離や傾きや円の半径が所定の条件を満たす場合に、その円の対を左右の目における瞳として特定する。所定の条件とは、検出された被写体の顔の大きさや顔の向きや目の領域の大きさや左右の目尻を結ぶ線分の長さやその傾きなどに基づいて決定される。
【００４９】
また、目検出部４は、抽出された白目領域における画素値の統計値を算出する。統計値とは、例えば平均値，重心値，最頻値などを示す。
【００５０】
目検出部４は、抽出された瞳領域を示す情報，算出された統計値，及び被写体の顔の向きの情報を含む目情報を作成する。そして、目検出部４は、目情報を原画像のデータとともに瞳状態判断部５へ渡す。
【００５１】
〈瞳状態判断部〉
瞳状態判断部５は、目検出部４によって生成された目情報に基づいて、瞳領域に対して輝点作成部６が実行すべき画像補正の内容を決定する。
【００５２】
まず、瞳状態判断部５は、目検出部４によって特定された瞳領域の画像（以下、「瞳画像」と呼ぶ）を、拡散反射成分の画像と鏡面反射成分の画像とに分ける。拡散反射成分とは、反射面に対して一方向から入射した光が多方向へ反射することにより生じる光の成分を示す。一方、鏡面反射成分とは、反射面に対して一方向から入射した光が、入射角とほとんど等しい反射角により与えられる（およそ）一方向へ反射することにより生じる光の成分を示す。また、拡散反射部分とは、拡散反射成分の占める割合が高い画素を示し、鏡面反射部分とは、鏡面反射成分の占める割合が高い画素を示す。
【００５３】
瞳状態判断部５は、例えば以下の論文に記載の技術に基づいて、原画像を拡散反射成分の画像と鏡面反射成分の画像とに分ける処理を行う。
【００５４】
Robby T. Tan, Katsushi Ikeuchi, “Separating Reflection Components of Textured
Surfaces using a Single Image”, IEEE International Conference in Computer Vision 2003 (ICCV’03) Nice, France - October 13-16, 2003
【００５５】
この文献に記載の技術が適用された場合、瞳状態判断部５は、Maximum Chromaticityという値を用いて、画像内における拡散反射成分と鏡面反射成分との分離を行う。ここで、Maximum Chromaticityとは数１の式によって得られる値（ｃ（ｘ））である。なお、数１では上記引用文献の記載に従って“ｃ”の上部にチルダ記号を付しているが、他の記載においては表記の都合上チルダ記号を用いることなく“ｃ”と表記する。
【００５６】
【数１】
2005222152.tif 000003
【００５７】
図２は、Maximum Chromaticityに基づいた輝度値（Intensity）の分布の例を示す図で
ある。図２において、ｙ軸方向に真っ直ぐ分布している部分の輝度値は、拡散反射部分の輝度値を示す。一方、Maximum Chromaticityの値に反比例するように曲線状に分布している部分の輝度値は、鏡面反射部分の輝度値を示す。瞳状態判断部５は、瞳領域の各画素についてMaximum Chromaticityを算出することにより、図２のようなグラフ上の分布を元に、拡散反射部分と鏡面反射部分とを区別する。
【００５８】
図３は、鏡面反射部分における拡散反射成分を取得する原理を説明するための図である。図３には、二つの画素（不図示の画素Ａ，Ｂ）それぞれについて、輝度値とMaximum Chromaticityとの関係が示されている。なお、画素Ａ，Ｂは鏡面反射成分を含む鏡面反射部分であり、そのMaximum Chromaticityの値は図３のＡ１，Ｂ１によって表される値である。瞳状態判断部５は、鏡面反射部分における拡散反射成分を取得するため、画素Ａ，Ｂに対応する点Ａ１，Ｂ１が、グラフ中の拡散反射部分における画素のMaximum Chromaticityの値と同値になるように、即ちＡ２，Ｂ２に位置するようにそれぞれの画素値を図示された曲線（Ａ１とＡ２，Ｂ１とＢ２を結ぶ曲線）に従って操作する。言い換えれば、拡散反射部分に従って形成されるｙ軸方向に真っ直ぐな直線Ｌ上の点Ａ２，Ｂ２に位置するように、Ａ，Ｂにおける輝度値が操作される。このような操作の後に画素Ａ，Ｂついて得られる点Ａ２，Ｂ２によって示される輝度値が、画素Ａ，Ｂにおける拡散反射成分の値となり、瞳状態判断部５はこの値を用いることにより拡散反射成分画像を取得する。
【００５９】
次に、鏡面反射成分画像の取得法について説明する。各画素について、以下の条件が判断される。
１．原画像における隣接画素との輝度変化が、拡散反射成分画像における隣接画素との輝度変化と異なる。
２．この画素の色相が隣接画素の色相と同じである。
３．この画素がノイズ成分ではない。即ち、この画素のMaximum Chromaticityと隣接画素のMaximum Chromaticityとが異なる。
【００６０】
瞳状態判断部５は、上記の三つの条件を満たす画素を鏡面反射部分であると判断する。そして、瞳状態判断部５は、鏡面反射部分と判断された画素の画素値を用いて鏡面反射成分画像を生成する。
【００６１】
次に、瞳状態判断部５は、鏡面反射成分画像を用いて、原画像の瞳領域に既に存在している輝点領域の数を数える。瞳状態判断部５は、鏡面反射成分画像において、鏡面反射部分の集合の数を輝点領域の数として数える。
【００６２】
まず、瞳状態判断部５は、鏡面反射成分画像について二値化を行う。二値化を行う際の閾値は、僅かな輝度しか有していない鏡面反射部分を輝点領域として数えることの無いように設計者によって適宜設定される。例えば、ＲＧＢ表色系の２５６階調の画像において、ＲＧＢ成分それぞれについて“６０”が閾値と設定されても良い。図４は、二値化された鏡面反射成分画像の例を示す図である。以下、図４を用いて、瞳状態判断部５が原画像における輝点領域の数を数える際に行う処理について説明する。
【００６３】
図４（ａ）は、二値化された直後の鏡面反射成分画像の例を示す図である。このような画像に対し、瞳状態判断部５は、以下の条件に従って、画像中の白画素にラベルを付す処理を行う。なお、ここでは、白画素とは鏡面反射部分として判断された画素、即ち二値化される際にその輝度値が閾値を超えた画素を示す。また、黒画素とは、二値化された鏡面反射成分画像において白画素以外の画素、及び画像枠より外側の画素を示す。
【００６４】
条件１：上隣も左隣も黒画素の場合：新しいラベルを付す。
条件２：上隣が黒画素で左隣が白画素の場合：左隣の画素と同じラベルを付す。
条件３：上隣が白画素で且つ左隣が白画素で且つ上隣と左隣とのラベルが異なる場合：上隣の画素と同じラベルを付し、左隣と上隣とのラベルの対応関係を記憶する。
条件４：上隣が白画素で且つ条件３を満たさない場合：上隣の画素と同じラベルを付す。
【００６５】
図４（ｂ）は、上記した四つの条件に従って各白画素にラベリングを行った場合の例を示す図である。このとき、瞳状態判断部５は、条件３に従って（Ａ，Ｂ，Ｃ）という対応関係、及び（Ｄ，Ｅ）という対応関係を記憶している。そして、上記四つの条件に従った処理の後、瞳状態判断部５は、条件３において記憶された対応関係に基づいて、白画素に付されたラベルの変更を行う。瞳状態判断部５は、記憶している対応関係に従って、関係するラベルの中から代表ラベルを一つ決定し、残るラベルを代表ラベルに変更する。図４（ｃ）は、ラベルの変更が実施された後の例を示す図である。この場合、Ａ及びＤが代表ラベルとなり、Ａとの対応関係が記憶されているＢ，ＣがＡに変更され、Ｄとの対応関係が記憶されているＥがＤに変更される。なお、Ｆについては対応関係が記憶されていないため変更が行われない。このような処理により、例えば図４（ｃ）の場合は、瞳状態判断部５は白画素により構成される領域が三つ存在すると判断できる。
【００６６】
次に、瞳状態判断部５は、この三つの領域それぞれについて面積（例えばそれぞれの領域に含まれる画素数や、外接する矩形の面積など）を求める。瞳状態判断部５は、各領域
についてその面積が閾値を超えるか否か判断し、閾値を超えなかった領域についてはノイズとみなす。そして、瞳状態判断部５は、その面積が閾値を超えた領域を輝点領域とみなし、その数を求める。例えば、面積の閾値が１０ピクセルである場合、図４に示される画像には二つの輝点領域が含まれると判断される。
【００６７】
瞳状態判断部５は、輝点領域の数に応じてその後の処理を決定する。輝点領域の数が“０”であった場合は、瞳状態判断部５は、補正情報を原画像のデータと共に輝点作成部６へ渡す。補正情報は、目検出部４によって抽出された瞳領域を示す情報，目検出部４によって算出された統計値，及び被写体の顔の向きの情報を含む。輝点領域の数が複数であった場合は、瞳状態判断部５は、原画像のデータを輝点作成部６へ渡す。この場合、瞳状態判断部５は補正情報を輝点作成部６へ渡さない。また、輝点領域の数が“１”であった場合は、瞳状態判断部５は輝点判定処理を行う。以下、輝点判定処理について説明する。
【００６８】
瞳状態判断部５は、瞳の中心Ｅと輝点領域の重心Ｇとを特定する。瞳の中心Ｅは、例えば瞳領域に外接する矩形の対角線の交点として特定される。輝点領域の重心Ｇは、例えば数２に示される式に基づいて特定される。
【００６９】
【数２】
2005222152.tif 000004
【００７０】
次に、瞳状態判断部５は、瞳の中心Ｅに対する輝点領域の重心Ｇの位置を特定する。例えば、瞳の中心Ｅに対し、輝点領域の重心Ｇが右／左／上／下／同位置のいずれに位置するか判断する。瞳状態判断部５は、例えば中心Ｅと重心Ｇとの距離Ｄを算出し、距離Ｄの値が閾値Ｔｈ＿Ｄよりも小さい場合に、中心Ｅと重心Ｇとは同位置にあると判断する。また、瞳状態判断部５は、距離Ｄの値が閾値Ｔｈ＿Ｄよりも大きい場合には、重心Ｇが中心Ｅに対して位置する方向（例：上下左右）について判断する。そして、顔が正面を向いておらず（斜めを向いており）且つ被写体の顔の向きと重心Ｇが中心Ｅに対して位置する方向とが一致する場合、又は顔が正面を向いており且つ重心Ｇと中心Ｅとが同位置にはないと認められる場合、瞳状態判断部５は、原画像のデータを輝点作成部６へ渡す。この場合、瞳状態判断部５は補正情報を輝点作成部６へ渡さない。一方、上記以外の場合には、瞳状態判断部５は、補正情報を原画像及び拡散反射成分画像と共に輝点作成部６へ渡す。
【００７１】
〈輝点作成部〉
輝点作成部６は、瞳状態判断部５から補正情報を受け取った場合に輝点作成処理を実施する。一方、輝点作成部６は、瞳状態判断部５から補正情報を受け取らなかった場合、瞳状態判断部５から受け取った原画像のデータを画像出力部７へ渡す。
【００７２】
輝点作成部６は、作成された新たな輝点画像を合成すべき瞳領域内における位置（以下、「輝点合成位置」と呼ぶ）を決定する。また、輝点作成部６は、補正情報の内容に応じて新たな輝点画像を作成する。次に、輝点作成部６は、拡散反射成分画像における瞳領域内の決定された位置に、作成された輝点画像を合成する。そして、輝点作成部６は、輝点画像が合成された拡散反射成分画像を原画像にさらに合成することにより補正画像を作成する。輝点作成部６は、このようにして作成された補正画像のデータを画像出力部７へ渡す。以下、輝点作成部６が行う処理について説明する。
【００７３】
図５は、輝点画像の合成位置の決定方法を示す図である。まず、輝点合成位置の決定方法について説明する。輝点作成部６は、新たに作成される輝点画像の重心と瞳領域の中心Ｅとの距離がＴｈ＿Ｄよりも大きくなるように、輝点合成位置を決定する。また、輝点作成部６は、被写体の顔の向きに応じて、瞳領域における輝点画像の合成位置を決定する。例えば輝点作成部６は、被写体の顔の向きと、瞳領域の中心Ｅに対する輝点画像の重心の位置とが同じ方向になるように輝点合成位置を決定する。以下に、輝点合成位置の具体的な決定方法を説明する。
【００７４】
まず、輝点作成部６は、瞳領域に外接する矩形Ａ１Ａ２Ａ３Ａ４を生成する。次に、輝点作成部６は、顔の向きに応じた処理を行う。顔の向きが正面，上，又は右の場合（図５（ａ）の場合）、輝点作成部６は、Ａ２とＡ３とを結ぶ線分（対角線）をひき、この線分の長さを四等分する。そして、輝点作成部６は、Ａ２と線分の中点との間の点ａ１を輝点合成位置として決定する。
【００７５】
顔の向きが下の場合（図５（ｂ）の場合）、輝点作成部６は、まずＡ１とＡ２との中点であるＡ１２，及びＡ３とＡ４との中点であるＡ３４を特定する。次に、輝点作成部６は、Ａ１２とＡ３４とを結ぶ線分をひき、この線分の長さを四等分する。そして、輝点作成部６は、Ａ３４と線分の中点との間の点ｂ１を輝点合成位置として決定する。
【００７６】
顔の向きが左の場合（図５（ｃ）の場合）、輝点作成部６は、Ａ１とＡ４とを結ぶ線分（対角線）をひき、この線分の長さを四等分する。そして、輝点作成部６は、Ａ１と線分の中点との間の点ｃ１を輝点合成位置として決定する。
【００７７】
次に、輝点画像の作成処理について説明する。輝点作成部６は、補正情報に含まれる情報をもとに、瞳領域よりも小さい輝点領域により構成される輝点画像を作成する。例えば、輝点作成部６は、所定の半径を有する円として輝点画像を作成しても良い。また、輝点作成部６は、テンプレートを用いて輝点画像を作成しても良い。図６は、輝点画像のテンプレートの例を示す図である。図６に示すように、テンプレートとして、円以外に、三日月形、幅を持つ曲線、楕円形などの形を適用することができる。テンプレートの形は、図６に示される形に限定される必要はなく、他の形（例：三角形や四角形などの多角形，幅を持つ輪，幅を持つ直線）が適用されても良い。以下、輝点画像を作成するための具体的な処理について説明する。
【００７８】
まず、輝点作成部６は輝点画像の大きさ、即ち輝点領域の大きさを決定する。輝点作成部６は、瞳領域の大きさに応じて輝点領域の大きさを決定する。例えば、輝点作成部６は、瞳領域を円と仮定した場合の半径に応じて輝点領域の大きさを決定しても良い。また、輝点作成部６は、瞳領域に外接する矩形の辺の長さに応じて輝点領域の大きさを決定しても良い。また、輝点作成部６は、瞳領域の面積や瞳領域に含まれる画素数に応じて輝点領域の大きさを決定しても良い。
【００７９】
輝点画像が所定の半径を有する円として作成される場合、輝点作成部６は、瞳領域の大きさに応じてこの円の半径を決定する。また、輝点画像がテンプレートとして与えられる場合、輝点作成部６は、瞳領域の大きさに応じてテンプレートを拡大又は縮小し、テンプレートの大きさ（例えばテンプレートの一辺の長さや面積など）を決定する。
【００８０】
次に、輝点作成部６は、決定された大きさの輝点領域の各画素に対し輝度値を与えることにより、輝点画像を作成する。輝点作成部６は、被写体の白目領域における画素値の統計値に基づいて、輝点画像に対して与えられる輝度値を決定する。以下、統計値が平均値である場合を例として、具体的な処理の説明をする。
【００８１】
輝点作成部６は、補正情報から白目領域の画素値平均を取得する。輝点作成部６は、取得された画素値平均又はこの画素値平均に類似した画素値を、輝点画像の画素毎にランダムに生成し、生成された画素値を各画素に与える。類似した画素値は、所定の表色系及び所定の閾値に基づいて決定される。例えば、所定の表色系がＲＧＢ表色系で閾値が“５”である場合、白目領域の画素値平均のＲＧＢ各値においてランダムにプラスマイナス５の値が決定される。また、ＲＧＢ表色系以外であっても、例えばＨＳＬ表色系やＨＳＶ表色系やＬａｂ表色系やＣＭＹ表色系など、どのような表色系に基づいて処理が行われても良い。ただし、各表色系に応じて閾値をそれぞれ設定する必要がある。
【００８２】
輝点作成部６は、作成された輝点画像を、原画像又は拡散反射成分画像の輝点合成位置に合成する。輝点作成部６は、瞳状態判断部５から拡散反射成分画像を受け取っている場合はこの拡散反射成分画像に輝点画像を合成する。一方、輝点作成部６は、瞳状態判断部５から拡散反射成分画像を受け取っていない場合には、瞳状態判断部５から受け取った原画像に輝点画像を合成することにより補正画像を生成する。合成位置は、例えば輝点画像が円として与えられる場合にはその中心位置と輝点合成位置とを合わせることにより決定される。また、例えば輝点画像がテンプレートとして与えられる場合には、合成位置は、テンプレートの中心位置や左端などの所定の位置と輝点合成位置とを合わせることにより決定される。
【００８３】
輝点作成部６は、輝点画像を拡散反射成分画像に対して合成した場合、さらに合成後の拡散反射成分画像を原画像に対して合成することにより補正画像を生成する。輝点作成部６は、補正画像を生成すると、この補正画像を画像出力部７へ渡す。
【００８４】
〈画像出力部〉
画像出力部７は、輝点作成部６によって作成された補正画像のデータを画像補正装置１の外部へ出力するためのインタフェースとして機能する。画像出力部７によって、画像補正装置１から、補正画像のデータが画像補正装置１の外部へ出力される。画像出力部７は、画像補正装置１から補正画像のデータを出力するためのどのような既存技術を用いて構成されても良い。
【００８５】
例えば、ネットワークを介して補正画像のデータが画像補正装置１から出力されても良い。この場合、画像出力部７はネットワークインタフェースを用いて構成される。また、パーソナルコンピュータ等の他の情報処理装置や記録装置へ補正画像のデータが出力されても良い。この場合、画像出力部７は、パーソナルコンピュータ等の他の情報処理装置や記録装置と画像補正装置１とをデータ通信可能に接続する規格に応じて構成される。また、記録媒体に対し補正画像のデータが出力（書き込み）されても良い。この場合、画像出力部７は、これらの記録装置又は記録媒体へデータを書き込む装置（例えばフラッシュメモリライタやフロッピーディスクドライブやＣＤ−ＲドライブやＤＶＤ−Ｒドライブ）を用いて構成される。
【００８６】
また、画像補正装置１が、プリンタやディスプレイ等の画像出力装置の内部に含まれ、プリントアウトされる画像のデータやディスプレイに表示される画像のデータとして補正画像のデータが出力されるように構成されても良い。この場合、画像出力部７は、画像補正装置１において生成された補正画像のデータをこれらの画像出力装置において取り扱い可能なデータに変換する装置（例えばＤ／Ａ変換装置）などを用いて構成される。
【００８７】
また、画像出力部７は上記された複数の場合に応じることが可能となるように構成されても良い。
【００８８】
〔動作例〕
図７は、画像補正装置１の動作例を示すフローチャートである。以下、図７を用いて、画像補正装置１の動作例について説明する。
【００８９】
まず、画像入力部２を介して、原画像が画像補正装置１に入力される（Ｓ０１）。次に、顔検出部３が原画像から被写体の顔を検出する（Ｓ０２）。また、顔検出部３は、検出された被写体の顔の向きを推定する（Ｓ０３）。顔検出部３は、検出された顔の位置や推定された顔の向き等の情報を含む顔情報を目検出部４へ渡す。
【００９０】
目検出部４は、顔検出部３によって検出された顔における瞳を検出する（Ｓ０４）。次に、目検出部４は、検出された瞳と同じ目における白目領域を検出し（Ｓ０５）、検出された白目領域内の画素値の統計値を取得する（Ｓ０６）。目検出部４は、顔検出部３によって推定された顔の向きや、目検出部４によって検出された瞳の位置や白目領域内の画素値の統計値などの情報を含む目情報を瞳状態判断部５へ渡す。そして、瞳状態判断部５及び輝点作成部６によって輝点補正処理が実行される（Ｓ０７）。
【００９１】
図８は輝点補正処理における画像補正装置１の動作例を示すフローチャートである。次に、図８を用いて輝点補正処理における画像補正装置１の動作例について説明する。
【００９２】
輝点補正処理において、まず、瞳状態判断部５は、瞳画像を拡散反射成分画像と鏡面反射成分画像とに分解する（Ｓ０８）。次に、瞳状態判断部５は、鏡面反射成分画像を用いることにより輝点領域の数を計数する（Ｓ０９）。計数の結果、輝点領域の数が１よりも多い場合（Ｓ１０−“＞１”）、瞳状態判断部５は原画像のデータを輝点作成部６へ渡す。このとき、瞳状態判断部５は補正情報を輝点作成部６へ渡さない。原画像データを受け取った輝点作成部６は、この原画像データをそのまま画像出力部７へ渡す。そして、画像出力部７は、この原画像のデータを出力し（Ｓ１３）、輝点補正処理を終了する。
【００９３】
Ｓ０９における計数の結果、輝点領域の数が０である場合（Ｓ１０−“＝０”）、瞳状態判断部５は、補正情報と共に原画像のデータを輝点作成部６へ渡す。そして、輝点作成部６は輝点作成処理を実行する（Ｓ１４）。
【００９４】
Ｓ０９における計数の結果、輝点領域の数が１である場合（Ｓ１０−“＝１”）、瞳状態判断部５は、さらに輝点判定処理を実行する（Ｓ１１）。図９は輝点判定処理における画像補正装置１の動作例を示すフローチャートである。以下、図９を用いて輝点判定処理における画像補正装置１の動作例について説明する。
【００９５】
輝点判定処理において、まず、瞳状態判断部５は、被写体の顔が斜めを向いていると推定されたか否か、即ち正面以外の方向（例えば上，下，左，右のいずれか）を向いていると推定されたか否か判断する。被写体の顔が斜めを向いていると推定された場合（Ｓ１６−Ｙｅｓ）、瞳状態判断部５は輝点位置判定処理を実行する（Ｓ１７）。図１０は輝点位置判定処理における画像補正装置１の動作例を示すフローチャートである。以下、図１０を用いて輝点位置判定処理における画像補正装置１の動作例について説明する。
【００９６】
輝点位置判定処理において、まず、瞳状態判断部５は、瞳の中心Ｅの位置を特定する（Ｓ２４）。次に、瞳状態判断部５は、輝点領域の重心Ｇの位置を特定する（Ｓ２５）。そして、瞳状態判断部５は、中心Ｅに対する重心Ｇの位置を特定し（Ｓ２６）、輝点位置判定処理を終了する。
【００９７】
図９を用いた説明に戻る。瞳状態判断部５は、中心Ｅに対する重心Ｇの位置と、被写体の顔の向きとが一致するか否か判断する。一致する場合（Ｓ１８−Ｙｅｓ）、瞳状態判断部５は、変数Ｆ（フラグＦ）を定義し、このフラグＦに“０”を代入する（Ｓ１９）。一
方、一致しない場合（Ｓ１８−Ｎｏ）、瞳状態判断部５は、フラグＦを定義し、このフラグＦに“１”を代入する（Ｓ２０）。
【００９８】
Ｓ１６における処理の説明に戻る。Ｓ１６において被写体の顔が斜めを向いていないと判断された場合（Ｓ１６−Ｎｏ）、瞳状態判断部５は、距離判定処理を実行する（Ｓ２１）。図１１は距離判定処理における画像補正装置１の動作例を示すフローチャートである。以下、図１１を用いて距離判定処理における画像補正装置１の動作例について説明する。
【００９９】
距離判定処理において、まず、瞳状態判断部５は、瞳の中心Ｅの位置を特定する（Ｓ２７）。次に、瞳状態判断部５は、輝点領域の重心Ｇの位置を特定する（Ｓ２８）。そして、瞳状態判断部５は、中心Ｅと重心Ｇとの距離Ｄを算出する（Ｓ２９）。算出された距離Ｄの値が閾値Ａよりも大きい場合（Ｓ３０−Ｙｅｓ）、瞳状態判断部５は、輝点の重心Ｇと瞳の中心Ｅとの位置が異なると判断する（Ｓ３１）。一方、算出された距離Ｄの値が閾値Ａよりも小さい場合（Ｓ３０−Ｎｏ）、瞳状態判断部５は、輝点の重心Ｇと瞳の中心Ｅとの位置が同じであると判断し（Ｓ３２）、距離判定処理を終了する。
【０１００】
図９を用いた説明に戻る。瞳状態判断部５は、中心Ｅと重心Ｇとの位置が同じと判断された場合（Ｓ２２−Ｙｅｓ）、フラグＦを定義し、このフラグＦに“１”を代入する（Ｓ２０）。一方、瞳状態判断部５は、中心Ｅと重心Ｇとの位置が異なると判断された場合（Ｓ２２−Ｎｏ）、フラグＦを定義し、このフラグＦに“０”を代入する（Ｓ２３）。
【０１０１】
図８を用いた説明に戻る。輝点判定処理において得られたフラグＦの値が“０”であった場合（Ｓ１２−“０”）、輝点領域の数が１よりも多い場合（Ｓ１０−“＞１”）と同じ処理が実行される（Ｓ１３）。一方、フラグＦの値が“１”であった場合（Ｓ１２−“１”）、瞳状態判断部５は、補正情報と共に原画像のデータ及び拡散反射成分画像のデータを輝点作成部６へ渡す。そして、輝点作成部６は輝点作成処理を実行する（Ｓ１４）。
【０１０２】
図１２は輝点作成処理における画像補正装置１の動作例を示すフローチャートである。以下、図１２を用いて、輝点作成処理における画像補正装置１の動作例について説明する。輝点作成処理において、まず、輝点作成部６は、顔検出部３において被写体の顔の向きがいずれの方向と推定されたか判断する。顔の向きが左と推定されていた場合（Ｓ３３−左）、輝点作成部６は、Ａ１とＡ４とを結ぶ線分を四分割し、Ａ１と線分の中点との間の点を輝点合成位置とする（Ｓ３４）。顔の向きが下と推定されていた場合（Ｓ３３−下）、輝点作成部６は、Ａ１２とＡ３４とを結ぶ線分を四分割し、Ａ３４と線分の中点との間の点を輝点合成位置とする（Ｓ３５）。また、顔の向きが正面，上，又は右と推定されていた場合（Ｓ３３−正面／上／右）、輝点作成部６は、Ａ２とＡ３とを結ぶ線分を四分割し、Ａ２と線分の中点との間の点を輝点合成位置とする（Ｓ３６）。
【０１０３】
Ｓ３４，Ｓ３５，Ｓ３６の処理の後、輝点作成部６は、輝点画像を作成する（Ｓ３７）。そして、輝点作成部６は、作成された輝点画像を原画像に対して合成し、又は拡散反射成分画像に合成し且つ合成後の拡散反射成分画像をさらに原画像に合成し（Ｓ３８）、輝点作成処理を終了する。
【０１０４】
図８を用いた説明に戻る。輝点作成処理（Ｓ１４）の後、輝点作成部６は、生成された補正画像を画像出力部７へ渡す。そして、画像出力部７は、補正画像を出力し（Ｓ１５）、輝点補正処理を終了する。
【０１０５】
〔作用／効果〕
画像補正装置１では、瞳状態判断部５によって、被写体の瞳の画像に対して輝点画像を
合成する処理（輝点作成処理）を実施するか否か判断される。このとき、瞳状態判断部５は、顔検出部３によって推定される被写体の顔の向き，瞳状態判断部５によって計数される輝点領域の数や輝点領域と瞳との位置関係（具体的には輝点領域の重心Ｇと瞳領域の中心Ｅとの位置関係）等に基づいて上記判断を行う。即ち、瞳状態判断部５は、被写体の顔や瞳の状態などに基づいて、輝点作成処理を行うか否か判断する。
【０１０６】
このため、画像補正装置１では、常に被写体の瞳に輝点画像を合成する処理が実施されるのではなく、被写体の状態に応じて処理を実施するか否か判断され、その結果に応じて輝点画像を合成する処理が実施される。このため、新たに輝点画像を合成する必要のない画像に対しては、輝点作成処理が実行されない。例えば既に複数の輝点が瞳に含まれているような画像に対しては、新たに輝点画像を作成し合成したとしても、あまり効果が得られない。このような画像については、むしろ輝点画像の作成や合成の処理に要する時間やハードウェア資源が無駄となってしまう。このため、画像補正装置１では、このような無駄を省くことが可能となる。
【０１０７】
また、画像補正装置１では、輝点画像の合成位置は、被写体の顔の向きに応じて決定される。例えば、被写体の瞳の右側に輝点画像を合成することにより、画像を見ている者に対し被写体の視線が右を向いているように印象づけることができる。即ち、被写体の瞳領域において輝点画像が偏った方向に存在する場合、その偏った方向へ被写体の視線が向いているように印象づけることができる。このため、画像補正装置１では、被写体の顔が向いている方向へ被写体の視線が向いているように印象づけることが可能となる。従って、被写体の顔の向きに応じたより自然な補正画像を得ることが可能となる。
【０１０８】
また、画像補正装置１では、輝点画像の画素値は、被写体の白目の画素値に基づいて決定される。このため、被写体の目の色などに応じたより自然な補正画像を得ることが可能となる。
【０１０９】
また、画像補正装置１では、輝点画像の大きさは、被写体の瞳の大きさ（瞳領域の大きさ）に基づいて決定される。このため、瞳の大きさに対して不自然な大きさの輝点画像が合成されることを防止し、より自然な補正画像を得ることが可能となる。
【０１１０】
また、画像補正装置１では、瞳の画像に既に輝点領域が存在する場合であっても、その輝点領域が瞳の中心に位置する場合には、不適切な輝点領域であると判断される。このような不適切な輝点は、例えば撮像装置のレンズのそばにある発光面積の小さいフラッシュを発光させることにより発生する場合がある。一般的に、瞳の中心に輝点画像がある場合、その画像を見る者に対して不愉快，不自然などの悪い印象を与える。従って、このような場合、輝点作成部６は、拡散反射成分画像に対して新たな輝点画像を合成することにより、不適切と判断された輝点画像を削除し、新たな輝点画像を与える。このため、瞳の中心に輝点画像が無く、他の位置に輝点画像がある瞳の画像、即ち見る者に対し悪い印象を与えず良い印象を与える自然な画像を得ることが可能となる。
【０１１１】
また、画像補正装置１は、デジタルビデオカメラのように動画像を撮像する機器に組み込まれることにより、動画像の各フレームに対して処理を行うように構成されても良い。
【０１１２】
〔変形例〕
顔検出部３は、まずユーザによって手動で顔の位置が指示され（このときユーザは不図示の入力インタフェースを用いて指示を行う）、その指示に基づいて顔座標を特定するように構成されても良い。例えば、ユーザによって画像内の１又は複数の点が指示された場合、指示された点を含む顔の画像についての顔座標を特定するように顔検出部３が構成されても良い。また、例えば、ユーザによって画像内の領域が指示された場合、この領域内
に含まれる顔の画像についての顔座標を特定するように顔検出部３が構成されても良い。例えば、顔検出部３が原画像から人の顔を検出できなかった場合や、複数の顔が検出されてしまった場合などに有効である。また、このように位置がユーザによって指示される処理は、顔の位置に限らず、目の領域の位置や白目領域の位置や瞳領域の位置などを特定するために用いられても良い。
【０１１３】
また、赤色の輝点領域（いわゆる赤目現象により生じる赤色部分）も不適切な輝点領域として判断されるように構成されても良い。
【０１１４】
また、輝点作成部６は、被写体の顔の向きに応じて輝点画像のテンプレートを選択しても良い。例えば、輝点作成部６は、被写体の顔の向きが正面，上，又は右である場合は図６（c），図６（f），又は図６（i）のいずれかを選択する。このとき、輝点作成部６は
、これら三つの中からランダムに一つのテンプレートを選択しても良い。同様に、輝点作成部６は、被写体の顔の向きが下である場合は図６（b），図６（e），又は図６（h）の
いずれかを選択し、被写体の顔の向きが左である場合は図６（a），図６（d），又は図６（g）のいずれかを選択するように構成されても良い。
【０１１５】
また、輝点画像のテンプレートは、図６に示すような単純な形状のみではなく、意味を持った記号（例：エクスクラメーション，アスタリスク，アルファベット，漢字，星形，ハート形）や複雑な形状を示すもの（例：商標，サービスマーク，キャラクター）であっても良い。
【０１１６】
また、輝点作成部６は、輝点画像の各画素に対して同一の画素値を与えるように構成されても良いし、グラデーションとして画素値を与えるように構成されても良い。また、輝点作成部６は、合成色と基本色とを反転したカラーを乗算する「スクリーン処理」を用いて画素値を与えるように構成されても良い。
【０１１７】
また、輝点作成部６は、輝点画像を生成することなく、原画像又は拡散反射成分画像に対して直接輝点画像を書き込むように構成されても良い。この場合、輝点画像を記憶するメモリや合成に要する時間などを省くことが可能となる。
【０１１８】
また、輝点作成部６は、白目領域の統計値に基づくのではなく、予め定められた輝度値を用いることによって輝点画像を作成するように構成されても良い。例えば、既に輝度値が与えられているテンプレートを用い、このテンプレートの大きさを変化させることにより輝点画像を作成するように構成されても良い。
【０１１９】
また、輝点作成部６は、被写体の瞳の大きさではなく、被写体の顔の大きさや両目の間隔や鼻孔の間隔など、被写体の身体に関する大きさ（長さ）であればどのような値に基づいて輝点画像の大きさを決定するように構成されても良い。
【０１２０】
また、輝点作成部６は、被写体の顔に照射されている照明の位置する方向を推定し、この推定結果に基づいて輝点合成位置を決定するように構成されても良い。図１３は、このように構成された場合の輝点作成処理部６による輝点作成処理の動作例を示すフローチャートである。以下に、このように構成された場合の輝点作成部６の処理について、図１３を用いて説明する。
【０１２１】
まず、輝点作成部６は、被写体の顔に照射されている照明の位置する方向を推定する。輝点作成部６は、例えば、被写体の顔における明度の分布を調べることによりこの推定を行う。言い換えれば、輝点作成部６は、例えば、被写体の顔において高い明度を有する画素が多く存在している方向から照明が照射されていると推定する。
【０１２２】
具体的には、輝点作成部６は、まず、被写体の顔を複数の部分領域に分割する（Ｓ３９）。図１４は、複数の部分領域の例を示す図である。図１４では、被写体の顔は左上領域８ａ，左下領域８ｂ，右下領域８ｃ，及び右上領域８ｄの四つの部分領域に分割される。次に、輝点作成部６は、それぞれの部分領域において肌色と認められる領域を特定し、この特定された各領域の明度の統計値（例：平均値，最頻値，重心）を算出する（Ｓ４０）。輝点作成部６は、各領域において算出された値を比較し、最も明度の高い領域を特定する。輝点作成部６は、最も明度の高い領域の存在する方向から、照明が照射されていると推定する。
【０１２３】
次に、輝点作成部６は、最も明度の高い領域の存在する方向と、瞳領域の中心Ｅに対する輝点画像の重心の位置とが同じ方向になるように輝点合成位置を決定する。例えば、図１３において最も明度の高い領域が右上領域８ｄであった場合（Ｓ４１−右上）、輝点作成部６は、瞳領域の中心Ｅに対して右上の方向に輝点画像の重心が位置するように輝点合成位置を決定する。具体的には、輝点作成部６は、図５におけるＡ２とＡ３とを結ぶ線分を四等分し、Ａ２と線分の中点との間の点を基点合成位置とする（Ｓ４５）。その他の部分領域が最も明度の高い領域だったとしても、それぞれに応じた処理が実行される（Ｓ４２〜Ｓ４４）。そして、輝点作成部６は、輝点画像を作成し（Ｓ４６）、作成された輝点画像を合成する（Ｓ４７）。
【０１２４】
また、輝点作成部６は、照明の位置する方向を推定する際に、その画像ファイルに照明の位置する方向に関する情報がＥｘｉｆ形式で記録されている場合、この情報を元に推定を行うように構成されても良い。
【図面の簡単な説明】
【０１２５】
【図１】画像補正装置の機能ブロックを示す図である。
【図２】Maximum Chromaticityに基づいた輝度値の分布の例を示す図である。
【図３】鏡面反射部分における拡散反射成分を取得する原理を説明するための図である。
【図４】二値化された鏡面反射成分画像の例を示す図である。
【図５】輝点画像の合成位置の決定方法を示すための図である。
【図６】輝点画像のテンプレートの例を示す図である。
【図７】画像補正装置の動作例を示す図である。
【図８】輝点補正処理における画像補正装置の動作例を示すフローチャートである。
【図９】輝点判定処理における画像補正装置の動作例を示すフローチャートである。
【図１０】輝点位置判定処理における画像補正装置の動作例を示すフローチャートである。
【図１１】距離判定処理における画像補正装置の動作例を示すフローチャートである。
【図１２】輝点作成処理における画像補正装置の動作例を示すフローチャートである。
【図１３】変形例の輝点作成処理における画像補正装置の動作例を示すフローチャートである。
【図１４】顔の部分領域の例を示す図である。
【符号の説明】
【０１２６】
１          画像補正装置
２          画像入力部
３          顔検出部
４          目検出部
５          瞳状態判断部
６          輝点作成部
７          画像出力部
８ａ，８ｂ，８ｃ，８ｄ    部分領域
【図１】
2005222152.tif 000005
【図２】
2005222152.tif 000006
【図３】
2005222152.tif 000007
【図４】
2005222152.tif 000008
【図５】
2005222152.tif 000009
【図６】
2005222152.tif 000010
【図７】
2005222152.tif 000011
【図８】
2005222152.tif 000012
【図９】
2005222152.tif 000013
【図１０】
2005222152.tif 000014
【図１１】
2005222152.tif 000015
【図１２】
2005222152.tif 000016
【図１３】
2005222152.tif 000017
【図１４】
2005222152.tif 000018