(57)【要約】【課題】被写体が鮮明に写っているか否かを確実に評価できるようにする。【解決手段】被写体抽出部２１は、入力画像を用いて、入力画像における被写体の含まれる領域を示す被写体マップを生成し、判定部２２に供給する。判定部２２は、入力画像と、被写体抽出部２１からの被写体マップとを用いて、入力画像上の被写体の領域のぼけ具合を求め、そのぼけ具合に基づいて、入力画像のスコアを算出する。このスコアは、入力画像において、被写体が鮮明に写っている度合いを評価する指標とされる。本発明は、撮像装置に適用することができる。【選択図】図１
2010055194.tif 000002
【特許請求の範囲】
【請求項１】
入力画像に基づいて、前記入力画像上の被写体の領域を特定するための被写体特定情報を生成する生成手段と、
前記被写体特定情報および前記入力画像を用いて、前記入力画像における前記被写体の含まれる領域を処理対象として、前記被写体のぼけ具合を検出する検出手段と
を備える画像処理装置。
【請求項２】
前記生成手段は、
前記入力画像から前記被写体の領域が有する特徴の特徴量を抽出して、前記入力画像の各領域における前記特徴量を示す情報マップを生成する情報マップ生成手段と、
互いに異なる前記特徴の前記特徴量を示す複数の前記情報マップを重み付き加算することにより、前記被写体特定情報を生成する被写体特定情報生成手段と
を備える請求項１に記載の画像処理装置。
【請求項３】
前記検出手段は、前記被写体の領域内におけるエッジの強度を検出することにより、前記被写体のぼけ具合を検出する
請求項２に記載の画像処理装置。
【請求項４】
前記情報マップ生成手段は、前記入力画像から前記特徴量を抽出して、前記入力画像の各領域における前記特徴量を示す特徴画像を生成するとともに、前記特徴画像に基づいて互いに解像度の異なる複数の前記特徴画像を生成し、前記複数の前記特徴画像の差分を求めることにより、前記情報マップを生成する
請求項３に記載の画像処理装置。
【請求項５】
入力画像に基づいて、前記入力画像上の被写体の領域を特定するための被写体特定情報を生成する生成手段と、
前記被写体特定情報および前記入力画像を用いて、前記入力画像における前記被写体の含まれる領域を処理対象として、前記被写体のぼけ具合を検出する検出手段と
を備える画像処理装置の画像処理方法であって、
前記生成手段が、前記入力画像から前記被写体特定情報を生成し、
前記検出手段が、前記被写体特定情報および前記入力画像を用いて、前記被写体のぼけ具合を検出する
ステップを含む画像処理方法。
【請求項６】
入力画像に基づいて、前記入力画像上の被写体の領域を特定するための被写体特定情報を生成し、
前記被写体特定情報および前記入力画像を用いて、前記入力画像における前記被写体の含まれる領域を処理対象として、前記被写体のぼけ具合を検出する
ステップを含む処理をコンピュータに実行させるプログラム。
【請求項７】
画像上の被写体の領域を特定するための被写体マップを生成するために用いられる重みを、ニューラルネットワークによる学習により求める学習装置であって、
前記被写体が含まれ、前記学習に用いられる学習画像から、前記被写体の領域が有する特徴の特徴量を抽出して、前記学習画像の各領域における前記特徴量を示す情報マップを生成する情報マップ生成手段と、
互いに異なる前記特徴の前記特徴量を示す複数の前記情報マップを、前記重みを用いて重み付き加算することにより、前記被写体マップを生成する被写体マップ生成手段と、
前記被写体マップと、予め求められた前記学習画像における前記被写体の領域を示す画像ラベルとを用いて、前記重みを変化させるべき変化量を算出する重み変化量算出手段と、
前記変化量を前記重みに加算して、前記重みを更新する更新手段と
を備える学習装置。
【請求項８】
前記更新手段により更新された前記重みと、前記学習画像とが用いられて新たな前記変化量が求められ、前記重みが更新される処理が繰り返し行われる
請求項７に記載の学習装置。
【請求項９】
画像上の被写体の領域を特定するための被写体マップを生成するために用いられる重みを、ニューラルネットワークによる学習により求める学習装置であり、
前記被写体が含まれ、前記学習に用いられる学習画像から、前記被写体の領域が有する特徴の特徴量を抽出して、前記学習画像の各領域における前記特徴量を示す情報マップを生成する情報マップ生成手段と、
互いに異なる前記特徴の前記特徴量を示す複数の前記情報マップを、前記重みを用いて重み付き加算することにより、前記被写体マップを生成する被写体マップ生成手段と、
前記被写体マップと、予め求められた前記学習画像における前記被写体の領域を示す画像ラベルとを用いて、前記重みを変化させるべき変化量を算出する重み変化量算出手段と、
前記変化量を前記重みに加算して、前記重みを更新する更新手段と
を備える学習装置の学習方法において、
前記情報マップ生成手段が、前記学習画像から前記情報マップを生成し、
前記被写体マップ生成手段が、前記情報マップを重み付き加算して前記被写体マップを生成し、
前記重み変化量算出手段が、前記被写体マップおよび前記画像ラベルを用いて前記変化量を算出し、
前記更新手段が、前記変化量を前記重みに加算して前記重みを更新する
ステップを含む学習方法。
【請求項１０】
画像上の被写体の領域を特定するための被写体マップを生成するために用いられる重みを、ニューラルネットワークによる学習により求める学習方法であって、
前記被写体が含まれ、前記学習に用いられる学習画像から、前記被写体の領域が有する特徴の特徴量を抽出して、前記学習画像の各領域における前記特徴量を示す情報マップを生成し、
互いに異なる前記特徴の前記特徴量を示す複数の前記情報マップを、前記重みを用いて重み付き加算することにより、前記被写体マップを生成し、
前記被写体マップと、予め求められた前記学習画像における前記被写体の領域を示す画像ラベルとを用いて、前記重みを変化させるべき変化量を算出し、
前記変化量を前記重みに加算して、前記重みを更新する
ステップを含む処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置および方法、学習装置および方法、並びにプログラムに関し、特に、鑑賞に堪え得ると推定される画像を簡単に選択することができるようにした画像処理装置および方法、学習装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
撮像して得られた写真等の画像を整理するアルバム作成機能や、画像のスライドショー機能を利用する場合、ユーザは、保存させたり表示させたりする画像を選択する必要があるが、大量の画像の中から必要な画像を選ぶことは大変な作業である。
【０００３】
そこで、複数の画像の中から、いわゆるベストショット、つまりユーザの鑑賞に堪え得ると推定される画像を選択する技術として、連写された複数の画像からベストショットを選択する技術が知られている（例えば、特許文献１参照）。
【０００４】
また、画像に関連する技術として、画像のシャープネス、顔の画像の品質、およびフレアの有無に基づいて、写真としての画像の品質を評価する技術（例えば、特許文献２参照）や、画像から顔を検出し、その検出結果に応じて最適な構図を選択して切り出す技術（例えば、特許文献３参照）も知られている。
【０００５】
【特許文献１】特開２００６−３１１３４０号公報
【特許文献２】特表２００５−５２１９２７号公報
【特許文献３】特開２００７−２７９７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した技術では、評価対象の画像が、ユーザの鑑賞に堪え得ると推定される画像であるか否か、すなわち被写体が鮮明に写っている画像であるか否かを確実に評価することは困難であった。
【０００７】
例えば、連写された画像からベストショットを選択する技術では、画像全体のぼけ度合いおよび露出の評価が行われるが、一般的な、連写されて得られたものではない画像に対してぼけ度合いや露出の評価を行っても、必ずしも上手く撮像された画像の評価が高くなるとは限らない。
【０００８】
つまり、一般的には被写体にピントが合い、背景がぼけている写真は、被写体が鮮明に写るため上手く撮像された、いわゆるベストショットであることが多い。ところが、特許文献１に記載の技術を連写されたものではない画像に対して用いると、被写体にピントが合っているが、背景がぼけている画像よりも、画像全体にピントが合った画像がベストショットとして選択される可能性が高くなってしまう。
【０００９】
また、特許文献２に記載の技術では、被写体が人の顔であるとして画像の品質が評価されるため、画像から顔が検出できなかった場合には、シャープネスとフレアの有無により画像の品質が評価される。したがって、そのような場合には、被写体にピントが合っているが、背景がぼけている画像よりも、画像全体にピントが合った画像が、より高く評価されてしまうことになる。
【００１０】
さらに、特許文献３に記載の技術では、最適な構図を切り出すことはできるが、画像が上手く撮像されたものであるか否かを評価することはできない。また、この技術では、画像に被写体として人の顔がない場合には、最適な構図を切り出すことはできない。
【００１１】
本発明は、このような状況に鑑みてなされたものであり、評価対象の画像が、被写体が鮮明に写っている画像であるか否かを、より確実に評価することができるようにするものである。
【課題を解決するための手段】
【００１２】
本発明の第１の側面の画像処理装置は、入力画像に基づいて、前記入力画像上の被写体の領域を特定するための被写体特定情報を生成する生成手段と、前記被写体特定情報および前記入力画像を用いて、前記入力画像における前記被写体の含まれる領域を処理対象として、前記被写体のぼけ具合を検出する検出手段とを備える。
【００１３】
前記生成手段には、前記入力画像から前記被写体の領域が有する特徴の特徴量を抽出して、前記入力画像の各領域における前記特徴量を示す情報マップを生成する情報マップ生成手段と、互いに異なる前記特徴の前記特徴量を示す複数の前記情報マップを重み付き加算することにより、前記被写体特定情報を生成する被写体特定情報生成手段とを設けることができる。
【００１４】
前記検出手段には、前記被写体の領域内におけるエッジの強度を検出させることにより、前記被写体のぼけ具合を検出させることができる。
【００１５】
前記情報マップ生成手段には、前記入力画像から前記特徴量を抽出させて、前記入力画像の各領域における前記特徴量を示す特徴画像を生成させるとともに、前記特徴画像に基づいて互いに解像度の異なる複数の前記特徴画像を生成させ、前記複数の前記特徴画像の差分を求めさせることにより、前記情報マップを生成させることができる。
【００１６】
本発明の第１の側面の画像処理方法またはプログラムは、入力画像に基づいて、前記入力画像上の被写体の領域を特定するための被写体特定情報を生成し、前記被写体特定情報および前記入力画像を用いて、前記入力画像における前記被写体の含まれる領域を処理対象として、前記被写体のぼけ具合を検出するステップを含む。
【００１７】
本発明の第１の側面においては、入力画像に基づいて、前記入力画像上の被写体の領域を特定するための被写体特定情報が生成され、前記被写体特定情報および前記入力画像が用いられて、前記入力画像における前記被写体の含まれる領域を処理対象として、前記被写体のぼけ具合が検出される。
【００１８】
本発明の第２の側面の学習装置は、画像上の被写体の領域を特定するための被写体マップを生成するために用いられる重みを、ニューラルネットワークによる学習により求める学習装置であって、前記被写体が含まれ、前記学習に用いられる学習画像から、前記被写体の領域が有する特徴の特徴量を抽出して、前記学習画像の各領域における前記特徴量を示す情報マップを生成する情報マップ生成手段と、互いに異なる前記特徴の前記特徴量を示す複数の前記情報マップを、前記重みを用いて重み付き加算することにより、前記被写体マップを生成する被写体マップ生成手段と、前記被写体マップと、予め求められた前記学習画像における前記被写体の領域を示す画像ラベルとを用いて、前記重みを変化させるべき変化量を算出する重み変化量算出手段と、前記変化量を前記重みに加算して、前記重みを更新する更新手段とを備える。
【００１９】
本発明の第２の側面の学習方法またはプログラムは、画像上の被写体の領域を特定するための被写体マップを生成するために用いられる重みを、ニューラルネットワークによる学習により求める学習方法またはプログラムであって、前記被写体が含まれ、前記学習に用いられる学習画像から、前記被写体の領域が有する特徴の特徴量を抽出して、前記学習画像の各領域における前記特徴量を示す情報マップを生成し、互いに異なる前記特徴の前記特徴量を示す複数の前記情報マップを、前記重みを用いて重み付き加算することにより、前記被写体マップを生成し、前記被写体マップと、予め求められた前記学習画像における前記被写体の領域を示す画像ラベルとを用いて、前記重みを変化させるべき変化量を算出し、前記変化量を前記重みに加算して、前記重みを更新するステップを含む。
【００２０】
本発明の第２の側面においては、画像上の被写体の領域を特定するための被写体マップを生成するために用いられる重みを、ニューラルネットワークによる学習により求める学習処理において、前記被写体が含まれ、前記学習に用いられる学習画像から、前記被写体の領域が有する特徴の特徴量が抽出されて、前記学習画像の各領域における前記特徴量を示す情報マップが生成され、互いに異なる前記特徴の前記特徴量を示す複数の前記情報マップを、前記重みを用いて重み付き加算することにより、前記被写体マップが生成され、前記被写体マップと、予め求められた前記学習画像における前記被写体の領域を示す画像ラベルとが用いられて、前記重みを変化させるべき変化量が算出され、前記変化量が前記重みに加算されて、前記重みが更新される。
【発明の効果】
【００２１】
本発明の第１の側面によれば、画像を評価することができる。特に、本発明の第１の側面によれば、被写体が鮮明に写っていると推定される画像を、より確実に選択することができる。
【００２２】
また、本発明の第２の側面によれば、画像を評価するために用いられる重みを求めることができる。特に、本発明の第２の側面によれば、被写体が鮮明に写っていると推定される画像を、より確実に選択するために用いられる重みを提供することができる。
【発明を実施するための最良の形態】
【００２３】
以下、図面を参照して、本発明を適用した実施の形態について説明する。
【００２４】
［画像処理装置の構成］
図１は、本発明を適用した画像処理装置の一実施の形態の構成例を示すブロック図である。
【００２５】
画像処理装置１１は、例えば、カメラ等の撮像装置に搭載され、撮像された入力画像の評価を行う。入力画像の評価では、入力画像上の被写体がぼけたりぶれたりしておらず、鮮明に写っていると推定されるものが、上手く撮像された画像であるベストショットであるとされる。逆に、被写体がぼけていたり、露出オーバーしたりしているものは、上手く撮像されていない画像であるバッドショットであるとされる。
【００２６】
つまり、被写体がより鮮明に写っていると推定される入力画像ほど、よりユーザの鑑賞に堪え得る画像であるとされ、より高い評価値（スコア）が与えられる。そして、例えば、入力画像の評価値が所定の閾値以上である場合に、入力画像はベストショットとされる。
【００２７】
画像処理装置１１は、被写体抽出部２１および判定部２２から構成され、撮像により得られた入力画像は、被写体抽出部２１および判定部２２に供給される。
【００２８】
被写体抽出部２１は、供給された入力画像から被写体を検出し、入力画像における被写体の含まれる領域を特定するための情報である被写体マップを生成して判定部２２に供給する。ここで、被写体の検出は、ユーザが入力画像を一瞥した場合に、ユーザが注目すると推定される入力画像上の物体、つまりユーザが目を向けると推定される物体が被写体であるとして、行われる。したがって、被写体は必ずしも人に限られる訳ではない。
【００２９】
被写体抽出部２１は、輝度情報抽出部４１、色情報抽出部４２、エッジ情報抽出部４３、顔情報抽出部４４、動き情報抽出部４５、および被写体マップ生成部４６から構成される。
【００３０】
輝度情報抽出部４１は、供給された入力画像に基づいて、入力画像の各領域における、輝度に関する情報を示す輝度情報マップを生成し、被写体マップ生成部４６に供給する。色情報抽出部４２は、供給された入力画像に基づいて、入力画像の各領域における、色に関する情報を示す色情報マップを生成し、被写体マップ生成部４６に供給する。
【００３１】
エッジ情報抽出部４３は、供給された入力画像に基づいて、入力画像の各領域における、エッジに関する情報を示すエッジ情報マップを生成し、被写体マップ生成部４６に供給する。顔情報抽出部４４は、供給された入力画像に基づいて、入力画像の各領域における、被写体としての人の顔に関する情報を示す顔情報マップを生成し、被写体マップ生成部４６に供給する。動き情報抽出部４５は、供給された入力画像に基づいて、入力画像の各領域における、動きに関する情報を示す動き情報マップを生成し、被写体マップ生成部４６に供給する。
【００３２】
なお、以下、輝度情報抽出部４１乃至動き情報抽出部４５から出力される、輝度情報マップ乃至動き情報マップのそれぞれを個々に区別する必要のない場合、単に情報マップとも称する。これらの情報マップに含まれる情報は、被写体の含まれる領域により多く含まれる特徴の特徴量を示す情報とされ、その情報が入力画像の各領域に対応させて並べられたものが情報マップとされる。つまり、情報マップは、入力画像の各領域における特徴量を示す情報であるといえる。
【００３３】
したがって、各情報マップにおける、より情報量の多い領域、つまり特徴量の多い領域に対応する入力画像上の領域は、より被写体が含まれる可能性の高い領域となり、各情報マップにより入力画像における被写体の含まれる領域を特定することができる。
【００３４】
被写体マップ生成部４６は、輝度情報抽出部４１乃至動き情報抽出部４５から供給された輝度情報マップ、色情報マップ、エッジ情報マップ、顔情報マップ、および動き情報マップを線形結合し、被写体マップを生成する。すなわち、輝度情報マップ乃至動き情報マップの各領域の情報（特徴量）が、同じ位置にある領域ごとに重み付き加算されて被写体マップが生成される。被写体マップ生成部４６は、生成した被写体マップを判定部２２に供給する。
【００３５】
判定部２２は、供給された入力画像と、被写体抽出部２１の被写体マップ生成部４６から供給された被写体マップとを用いて、入力画像の評価の指標となるスコアを算出し、出力する。判定部２２は、ぼけ判定部５１、露出判定部５２、ホワイトバランス判定部５３、およびスコア算出部５４から構成される。
【００３６】
ぼけ判定部５１は、供給された入力画像と、被写体マップ生成部４６から供給された被写体マップとを用いて、入力画像における被写体の含まれる領域を処理対象として、被写体のぼけ具合（ぼけの度合い）を検出し、その検出結果をスコア算出部５４に供給する。
【００３７】
露出判定部５２は、供給された入力画像に基づいて、入力画像全体における露出の適正の度合いを検出し、その検出結果をスコア算出部５４に供給する。また、ホワイトバランス判定部５３は、供給された入力画像に基づいて、入力画像全体におけるホワイトバランスの適正さの度合いを検出し、その検出結果をスコア算出部５４に供給する。スコア算出部５４は、ぼけ判定部５１、露出判定部５２、およびホワイトバランス判定部５３のそれぞれから供給された検出結果に基づいて入力画像のスコアを算出し、出力する。
【００３８】
次に、図２乃至図７を参照して、図１の輝度情報抽出部４１乃至動き情報抽出部４５、およびぼけ判定部５１のより詳細な構成について説明する。
【００３９】
図２は、輝度情報抽出部４１の構成例を示すブロック図である。
【００４０】
輝度情報抽出部４１は、輝度画像生成部８１、ピラミッド画像生成部８２、差分算出部８３、および輝度情報マップ生成部８４から構成される。
【００４１】
輝度画像生成部８１は、供給された入力画像を用いて、入力画像の画素の輝度値を、画素の画素値とする輝度画像を生成し、ピラミッド画像生成部８２に供給する。ここで、輝度画像の任意の画素の画素値は、その画素と同じ位置にある入力画像の画素の輝度値を示している。
【００４２】
ピラミッド画像生成部８２は、輝度画像生成部８１から供給された輝度画像を用いて、互いに解像度の異なる複数の輝度画像を生成し、それらの輝度画像を輝度のピラミッド画像として差分算出部８３に供給する。
【００４３】
例えば、レベルＬ１乃至レベルＬ８までの８つの解像度の階層のピラミッド画像が生成され、レベルＬ１のピラミッド画像が最も解像度が高く、レベルＬ１からレベルＬ８まで順番にピラミッド画像の解像度が低くなるものとする。
【００４４】
この場合、輝度画像生成部８１により生成された輝度画像が、レベルＬ１のピラミッド画像とされる。また、レベルＬｉ（但し、１≦ｉ≦７）のピラミッド画像における、互いに隣接する４つの画素の画素値の平均値が、それらの画素と対応するレベルＬ（ｉ＋１）のピラミッド画像の１つの画素の画素値とされる。したがって、レベルＬ（ｉ＋１）のピラミッド画像は、レベルＬｉのピラミッド画像に対して縦横半分（割り切れない場合は切り捨て）の画像となる。
【００４５】
差分算出部８３は、ピラミッド画像生成部８２から供給された複数のピラミッド画像のうち、互いに階層の異なる２つのピラミッド画像を選択し、選択したピラミッド画像の差分を求めて輝度の差分画像を生成する。なお、各階層のピラミッド画像は、それぞれ大きさ（画素数）が異なるので、差分画像の生成時には、より小さい方のピラミッド画像が、より大きいピラミッド画像に合わせてアップコンバートされる。
【００４６】
差分算出部８３は、予め定められた数だけ輝度の差分画像を生成すると、生成したそれらの差分画像を正規化し、輝度情報マップ生成部８４に供給する。輝度情報マップ生成部８４は、差分算出部８３から供給された差分画像に基づいて輝度情報マップを生成し、被写体マップ生成部４６に供給する。
【００４７】
図３は、図１の色情報抽出部４２の構成例を示すブロック図である。
【００４８】
色情報抽出部４２は、ＲＧ差分画像生成部１１１、ＢＹ差分画像生成部１１２、ピラミッド画像生成部１１３、ピラミッド画像生成部１１４、差分算出部１１５、差分算出部１１６、色情報マップ生成部１１７、および色情報マップ生成部１１８から構成される。
【００４９】
ＲＧ差分画像生成部１１１は、供給された入力画像を用いて、入力画像の画素のＲ（赤）成分とＧ（緑）成分との差分を、画素の画素値とするＲＧ差分画像を生成し、ピラミッド画像生成部１１３に供給する。ＲＧ差分画像の任意の画素の画素値は、その画素と同じ位置にある入力画像の画素のＲの成分と、Ｇの成分との差分の値を示している。
【００５０】
ＢＹ差分画像生成部１１２は、供給された入力画像を用いて、入力画像の画素のＢ（青）成分とＹ（黄）成分との差分を、画素の画素値とするＢＹ差分画像を生成し、ピラミッド画像生成部１１４に供給する。ＢＹ差分画像の任意の画素の画素値は、その画素と同じ位置にある入力画像の画素のＢ（青）成分と、Ｙ（黄）成分との差分の値を示している。
【００５１】
ピラミッド画像生成部１１３およびピラミッド画像生成部１１４は、ＲＧ差分画像生成部１１１およびＢＹ差分画像生成部１１２から供給されたＲＧ差分画像およびＢＹ差分画像を用いて、互いに解像度の異なる複数のＲＧ差分画像およびＢＹ差分画像を生成する。そして、ピラミッド画像生成部１１３およびピラミッド画像生成部１１４は、生成したそれらのＲＧ差分画像およびＢＹ差分画像を、ＲＧの差分のピラミッド画像、およびＢＹの差分のピラミッド画像として差分算出部１１５および差分算出部１１６に供給する。
【００５２】
例えば、ＲＧの差分のピラミッド画像、およびＢＹの差分のピラミッド画像として、輝度のピラミッド画像の場合と同様に、それぞれレベルＬ１乃至レベルＬ８までの８つの解像度の階層のピラミッド画像が生成される。
【００５３】
差分算出部１１５および差分算出部１１６は、ピラミッド画像生成部１１３およびピラミッド画像生成部１１４から供給された複数のピラミッド画像のうち、互いに階層の異なる２つのピラミッド画像を選択し、選択したピラミッド画像の差分を求めてＲＧの差分の差分画像、およびＢＹの差分の差分画像を生成する。なお、各階層のピラミッド画像は、それぞれ大きさが異なるので、差分画像の生成時には、より小さい方のピラミッド画像がアップコンバートされて、より大きい方のピラミッド画像と同じ大きさとされる。
【００５４】
差分算出部１１５および差分算出部１１６は、予め定められた数だけＲＧの差分の差分画像、およびＢＹの差分の差分画像を生成すると、生成したそれらの差分画像を正規化し、色情報マップ生成部１１７および色情報マップ生成部１１８に供給する。色情報マップ生成部１１７および色情報マップ生成部１１８は、差分算出部１１５および差分算出部１１６から供給された差分画像に基づいて色情報マップを生成し、被写体マップ生成部４６に供給する。色情報マップ生成部１１７ではＲＧの差分の色情報マップが生成され、色情報マップ生成部１１８ではＢＹの差分の色情報マップが生成される。
【００５５】
図４は、図１のエッジ情報抽出部４３の構成例を示すブロック図である。
【００５６】
エッジ情報抽出部４３は、エッジ画像生成部１４１乃至エッジ画像生成部１４４、ピラミッド画像生成部１４５乃至ピラミッド画像生成部１４８、差分算出部１４９乃至差分算出部１５２、およびエッジ情報マップ生成部１５３乃至エッジ情報マップ生成部１５６から構成される。
【００５７】
エッジ画像生成部１４１乃至エッジ画像生成部１４４は、供給された入力画像に対して、ガボアフィルタを用いたフィルタ処理を施し、例えば０度、４５度、９０度、および１３５度の方向のエッジ強度を画素の画素値とするエッジ画像を生成し、ピラミッド画像生成部１４５乃至ピラミッド画像生成部１４８に供給する。
【００５８】
例えば、エッジ画像生成部１４１により生成されるエッジ画像の任意の画素の画素値は、その画素と同じ位置にある入力画像の画素における０度の方向のエッジ強度を示している。なお、各エッジの方向とは、ガボアフィルタを構成するガボア関数における角度成分により示される方向をいう。
【００５９】
ピラミッド画像生成部１４５乃至ピラミッド画像生成部１４８は、エッジ画像生成部１４１乃至エッジ画像生成部１４４から供給された各方向のエッジ画像を用いて、互いに解像度の異なる複数のエッジ画像を生成する。そして、ピラミッド画像生成部１４５乃至ピラミッド画像生成部１４８は、生成したそれらの各方向のエッジ画像を、エッジの各方向のピラミッド画像として差分算出部１４９乃至差分算出部１５２に供給する。
【００６０】
例えば、エッジの各方向のピラミッド画像として、輝度のピラミッド画像の場合と同様に、それぞれレベルＬ１乃至レベルＬ８までの８つの階層のピラミッド画像が生成される。
【００６１】
差分算出部１４９乃至差分算出部１５２は、ピラミッド画像生成部１４５乃至ピラミッド画像生成部１４８から供給された、複数のピラミッド画像のうち、互いに階層の異なる２つのピラミッド画像を選択し、選択したピラミッド画像の差分を求めてエッジの各方向の差分画像を生成する。なお、各階層のピラミッド画像は、それぞれ大きさが異なるので、差分画像の生成時には、より小さい方のピラミッド画像がアップコンバートされる。
【００６２】
差分算出部１４９乃至差分算出部１５２は、予め定められた数だけエッジの各方向の差分画像を生成すると、生成したそれらの差分画像を正規化し、エッジ情報マップ生成部１５３乃至エッジ情報マップ生成部１５６に供給する。エッジ情報マップ生成部１５３乃至エッジ情報マップ生成部１５６は、差分算出部１４９乃至差分算出部１５２から供給された差分画像に基づいて、各方向のエッジ情報マップを生成し、被写体マップ生成部４６に供給する。
【００６３】
図５は、図１の顔情報抽出部４４の構成例を示すブロック図である。
【００６４】
顔情報抽出部４４は、顔検出部１８１および顔情報マップ生成部１８２から構成される。
【００６５】
顔検出部１８１は、供給された入力画像から被写体としての人の顔の領域を検出し、その検出結果を顔情報マップ生成部１８２に供給する。顔情報マップ生成部１８２は、顔検出部１８１からの検出結果に基づいて顔情報マップを生成し、被写体マップ生成部４６に供給する。
【００６６】
図６は、図１の動き情報抽出部４５の構成例を示すブロック図である。
【００６７】
動き情報抽出部４５は、ローカルモーションベクタ抽出部２１１、グローバルモーションベクタ抽出部２１２、差分算出部２１３、および動き情報マップ生成部２１４から構成される。
【００６８】
ローカルモーションベクタ抽出部２１１は、供給された入力画像と、その入力画像とは撮像時刻の異なる他の入力画像とを用いて、入力画像の各画素の動きベクトルをローカルモーションベクタとして検出し、差分算出部２１３に供給する。グローバルモーションベクタ抽出部２１２は、供給された入力画像と、その入力画像とは撮像時刻の異なる他の入力画像とを用いて、入力画像の各画素の動きベクトルを求め、さらに例えば、それらの各画素の動きベクトルの平均値をグローバルモーションベクタとし、差分算出部２１３に供給する。このグローバルモーションベクタは、入力画像全体の動きの方向を示している。
【００６９】
差分算出部２１３は、ローカルモーションベクタ抽出部２１１からのローカルモーションベクタと、グローバルモーションベクタ抽出部２１２からのグローバルモーションベクタとの差分の絶対値を求めて動きの差分画像を生成し、動き情報マップ生成部２１４に供給する。ここで、動きの差分画像における任意の画素の画素値は、その画素と同じ位置にある入力画像の画素のローカルモーションベクタと、入力画像全体のグローバルモーションベクタとの差分の絶対値を示している。したがって、動きの差分画像の画素の画素値は、入力画像の画素に表示される物体（または背景）の入力画像全体に対する、つまり背景に対する相対的な動き量を示している。
【００７０】
動き情報マップ生成部２１４は、差分算出部２１３からの動きの差分画像に基づいて動き情報マップを生成し、被写体マップ生成部４６に供給する。なお、より詳細には、動き情報マップの生成は、入力画像として、時間的に連続して撮像されたものが供給された場合、例えば、入力画像が連写されたものや、動画像である場合に行われる。
【００７１】
図７は、図１のぼけ判定部５１の構成例を示すブロック図である。
【００７２】
ぼけ判定部５１は、エッジマップ生成部２４１、ダイナミックレンジ検出部２４２、演算パラメータ調整部２４３、ローカルマックス生成部２４４、エッジポイント抽出部２４５、抽出量判定部２４６、エッジ分析部２４７、およびぼけ度検出部２４８から構成される。
【００７３】
エッジマップ生成部２４１は、供給された入力画像と、被写体マップ生成部４６からの被写体マップとを用いて、入力画像から、被写体が含まれると推定される領域を被写体画像として抽出する。
【００７４】
また、エッジマップ生成部２４１は、被写体画像に基づいて、互いに大きさが異なる３種類のブロック単位で被写体画像のエッジの強度（エッジ強度）を検出し、検出したエッジ強度を画素値とするエッジマップを生成する。このエッジマップは、ブロックの大きさごとに生成され、ブロックの小さいものから順番に、スケールＳＣ１乃至スケールＳＣ３のエッジマップとされる。エッジマップ生成部２４１は、生成したこれらの３つのエッジマップを、ダイナミックレンジ検出部２４２およびローカルマックス生成部２４４に供給する。
【００７５】
ダイナミックレンジ検出部２４２は、エッジマップ生成部２４１からのエッジマップを用いて、被写体画像のエッジ強度の最大値と最小値の差であるダイナミックレンジを検出し、その検出結果を演算パラメータ調整部２４３に供給する。
【００７６】
演算パラメータ調整部２４３は、ダイナミックレンジ検出部２４２から供給された検出結果に基づいて、被写体画像のぼけ具合の検出に用いるエッジポイントの抽出量（以下、エッジポイント抽出量とも称する）が適切な値になるように、エッジポイントの抽出に用いる演算パラメータを調整する。ここで、エッジポイントとは、画像内のエッジを構成する画素をいう。
【００７７】
また、演算パラメータには、エッジポイントであるか否かの判定に用いるエッジ基準値、およびエッジポイント抽出量が適切であるか否かの判定に用いる抽出基準値が含まれる。演算パラメータ調整部２４３は、エッジ基準値をエッジポイント抽出部２４５および抽出量判定部２４６に供給し、抽出基準値を抽出量判定部２４６に供給する。
【００７８】
ローカルマックス生成部２４４は、エッジマップ生成部２４１から供給されたエッジマップを、それぞれ所定の大きさのブロックに分割し、各ブロックの画素値の最大値を抽出することによりローカルマックスを生成する。ローカルマックスは、エッジマップのスケールごとに生成され、ローカルマックス生成部２４４からエッジポイント抽出部２４５およびエッジ分析部２４７に供給される。以下、スケールＳＣ１乃至スケールＳＣ３のエッジマップから生成されたローカルマックスを、それぞれローカルマックスＬＭ１乃至ローカルマックスＬＭ３と称する。
【００７９】
エッジポイント抽出部２４５は、被写体マップ生成部４６からの被写体マップ、演算パラメータ調整部２４３からのエッジ基準値、およびローカルマックス生成部２４４からのローカルマックスに基づいて、被写体画像上の被写体の領域からエッジポイントを抽出する。また、エッジポイント抽出部２４５は、抽出したエッジポイントの情報を示すエッジポイントテーブルを生成し、抽出量判定部２４６に供給する。なお、以下、ローカルマックスＬＭ１乃至ローカルマックスＬＭ３のそれぞれから得られたエッジポイントテーブルを、エッジポイントテーブルＥＴ１乃至エッジポイントテーブルＥＴ３と称する。
【００８０】
抽出量判定部２４６は、エッジポイント抽出部２４５からのエッジポイントテーブル、および演算パラメータ調整部２４３からの抽出基準値に基づいて、エッジポイント抽出量が適切であるか否かを判定する。抽出量判定部２４６は、エッジポイント抽出量が適切でない場合、エッジポイント抽出量が適切でない旨を演算パラメータ調整部２４３に通知し、エッジポイント抽出量が適切である場合、そのときのエッジ基準値およびエッジポイントテーブルをエッジ分析部２４７に供給する。
【００８１】
エッジ分析部２４７は、抽出量判定部２４６からのエッジポイントテーブルに基づいて、被写体画像における被写体の領域のエッジポイントの分析を行い、その分析結果をぼけ度検出部２４８に供給する。ぼけ度検出部２４８は、エッジポイントの分析結果に基づいて、入力画像上の被写体のぼけ具合を示す指標であるぼけ度を検出し、そのぼけ度をスコア算出部５４に供給する。
【００８２】
［画像処理装置の動作］
ところで、画像処理装置１１に入力画像が供給されると、画像処理装置１１は、画像評価処理を開始して、入力画像に対する評価を示すスコアを求め、出力する。以下、図８のフローチャートを参照して、画像評価処理について説明する。
【００８３】
ステップＳ１１において、輝度情報抽出部４１は、輝度情報抽出処理を行って、供給された入力画像に基づいて輝度情報マップを生成し、被写体マップ生成部４６に供給する。そして、ステップＳ１２において、色情報抽出部４２は、色情報抽出処理を行って、供給された入力画像に基づいて色情報マップを生成し、被写体マップ生成部４６に供給する。
【００８４】
ステップＳ１３において、エッジ情報抽出部４３は、エッジ情報抽出処理を行って、供給された入力画像に基づいてエッジ情報マップを生成し、被写体マップ生成部４６に供給する。また、ステップＳ１４において、顔情報抽出部４４は、顔情報抽出処理を行って、供給された入力画像に基づいて顔情報マップを生成し、被写体マップ生成部４６に供給する。さらに、ステップＳ１５において、動き情報抽出部４５は、動き情報抽出処理を行って、供給された入力画像に基づいて動き情報マップを生成し、被写体マップ生成部４６に供給する。
【００８５】
なお、これらの輝度情報抽出処理、色情報抽出処理、エッジ情報抽出処理、顔情報抽出処理、および動き情報抽出処理の詳細は後述する。また、より詳細には、動き情報抽出処理は、時間的に連続して撮像された入力画像が、被写体抽出部２１に供給されなかった場合には行われない。
【００８６】
ステップＳ１６において、被写体マップ生成部４６は、輝度情報抽出部４１乃至動き情報抽出部４５から供給された輝度情報マップ乃至動き情報マップを用いて、被写体マップを生成し、ぼけ判定部５１に供給する。
【００８７】
例えば、被写体マップ生成部４６は、情報マップごとに予め求められている重みである、情報重みＷｂを用いて各情報マップを線形結合し、さらに、その結果得られたマップの画素値に、予め求められた重みである、被写体重みＷｃを乗算して正規化し、被写体マップとする。
【００８８】
つまり、これから求めようとする被写体マップ上の注目する位置（画素）を注目位置とすると、各情報マップの注目位置と同じ位置（画素）の画素値に、情報マップごとの情報重みＷｂが乗算され、情報重みＷｂの乗算された画素値の総和が、注目位置の画素値とされる。さらに、このようにして求められた被写体マップの各位置の画素値に、被写体マップに対して予め求められた被写体重みＷｃが乗算されて正規化され、最終的な被写体マップとされる。
【００８９】
なお、より詳細には、色情報マップとして、ＲＧの差分の色情報マップと、ＢＹの差分の色情報マップとが用いられ、エッジ情報マップとして、０度、４５度、９０度、１３５度のそれぞれの方向のエッジ情報マップが用いられて、被写体マップが生成される。また、被写体重みＷｃは予め学習により求められており、正規化は、被写体マップの各画素の画素値が、０から１までの間の値となるようになされる。
【００９０】
ステップＳ１７において、ぼけ判定部５１は、被写体マップ生成部４６からの被写体マップと、供給された入力画像とを用いてぼけ判定処理を行ってぼけ度を検出し、そのぼけ度をスコア算出部５４に供給する。なお、このぼけ判定処理の詳細は後述するが、ぼけ判定処理では、被写体マップが用いられて、入力画像における被写体の領域のぼけ具合が検出される。
【００９１】
ステップＳ１８において、露出判定部５２は、露出判定処理を行って、入力画像全体における露出の適正の度合いを検出し、その検出結果をスコア算出部５４に供給する。例えば、露出判定部５２は、供給された入力画像を用いて、横軸をＲ（赤）、Ｇ（緑）、およびＢ（青）の各成分の値とし、縦軸を度数（画素の出現頻度）とする入力画像全体における各成分の分布を求め、それらの成分の分布から露出の適正の度合いを示す値を求める。この露出の適正の度合いを示す値は、例えば、各成分の分布において、所定の横軸の値における各成分の度数と、予め定められた度数との差分に応じて定められる。
【００９２】
ステップＳ１９において、ホワイトバランス判定部５３は、ホワイトバランス判定処理を行って、入力画像全体におけるホワイトバランスの適正さの度合いを検出し、その検出結果をスコア算出部５４に供給する。例えば、ホワイトバランス判定部５３は、供給された入力画像に基づいて、入力画像全体の平均輝度を求め、その平均輝度に応じて定まる値を、ホワイトバランスの適正さの度合いを示す値とする。
【００９３】
なお、露出判定部５２およびホワイトバランス判定部５３に、被写体マップ生成部４６から被写体マップが供給され、被写体マップにより特定される、入力画像上の被写体の領域だけが処理対象とされて露出判定処理およびホワイトバランス判定処理が行われてもよい。
【００９４】
ステップＳ２０において、スコア算出部５４は、ぼけ判定部５１、露出判定部５２、およびホワイトバランス判定部５３のそれぞれから供給された検出結果に基づいて入力画像のスコアを算出し、出力する。
【００９５】
例えば、スコア算出部５４は、供給された検出結果としてのぼけ度を示す値、露出の適正の度合いを示す値、およびホワイトバランスの適正さの度合いを示す値を、予め求められた重みを用いて線形結合し、その結果得られた値を入力画像に対するスコアとする。
【００９６】
また、スコア算出部５４が、求められたスコアとともに、入力画像がベストショットであるか否かを示す情報を出力するようにしてもよい。そのような場合、求められたスコアの値が、予め定められた閾値以上であるときに入力画像がベストショットとされ、スコアの値が閾値未満のときに、入力画像がバッドショットとされる。このようにして、入力画像に対するスコアが出力されると、画像評価処理は終了する。
【００９７】
以上のようにして、画像処理装置１１は、入力画像から被写体マップを生成し、被写体マップを用いて、入力画像における被写体の領域のぼけ度を検出する。そして、画像処理装置１１は、被写体のぼけ度と、入力画像の露出の適正の度合い、およびホワイトバランスの適正さの度合いとから、入力画像に対する評価を行う。
【００９８】
このように、被写体マップを用いて、入力画像における被写体の領域のぼけ度を検出し、その検出結果に基づいて入力画像に対するスコアを求めることで、入力画像上の被写体がどの程度ぼけているか、すなわち被写体が鮮明に写っている度合いを、より確実に評価することができる。したがって、評価対象である入力画像が、ユーザの鑑賞に堪え得ると推定される画像であるか否か、つまりベストショットであるか否かをより確実に判定し、評価の高い入力画像のみを簡単かつ確実に選択することができる。
【００９９】
具体的には、入力画像のスコアには被写体のぼけ度が考慮されるため、入力画像上における被写体の領域がよりぼけていると推定される場合には、入力画像の被写体以外の領域（背景）がぼけているか否かによらず、入力画像のスコアは低くなる。つまり、入力画像における被写体の領域がぼけていなければ（被写体にピントが合っていれば）、入力画像のスコアは高くなる。したがって、入力画像の背景にピントが合っており、被写体がぼけている場合に、入力画像のスコアが高くなってしまい、ベストショットであると誤判定されることを防止することができる。
【０１００】
以上のようにして求めたスコアを用いれば、複数の入力画像のなかから、ベストショットとされる入力画像だけを簡単に選び出すことができるようになる。
【０１０１】
次に、図９乃至図１３のフローチャートを参照して、図８のステップＳ１１乃至ステップＳ１５の処理のそれぞれに対応する処理について説明する。
【０１０２】
まず、図９のフローチャートを参照して、図８のステップＳ１１の処理に対応する輝度情報抽出処理について説明する。
【０１０３】
ステップＳ５１において、輝度画像生成部８１は、供給された入力画像を用いて輝度画像を生成し、ピラミッド画像生成部８２に供給する。例えば、輝度画像生成部８１は、入力画像の画素のＲ、Ｇ、およびＢの各成分の値に、成分ごとに予め定められた係数を乗算し、係数の乗算された各成分の値の和を、入力画像の画素と同じ位置にある輝度画像の画素の画素値とする。つまり、輝度成分（Ｙ）および色差成分（Ｃｂ，Ｃｒ）からなるコンポーネント信号の輝度成分が求められる。なお、画素のＲ、Ｇ、およびＢの各成分の値の平均値が、輝度画像の画素の画素値とされてもよい。
【０１０４】
ステップＳ５２において、ピラミッド画像生成部８２は、輝度画像生成部８１から供給された輝度画像に基づいて、レベルＬ１乃至レベルＬ８の各階層のピラミッド画像を生成し、差分算出部８３に供給する。
【０１０５】
ステップＳ５３において、差分算出部８３は、ピラミッド画像生成部８２から供給されたピラミッド画像を用いて差分画像を生成して正規化し、輝度情報マップ生成部８４に供給する。正規化は、差分画像の画素の画素値が、例えば０乃至２５５の間の値となるように行われる。
【０１０６】
具体的には、差分算出部８３は、各階層の輝度のピラミッド画像のうち、レベルＬ６およびレベルＬ３、レベルＬ７およびレベルＬ３、レベルＬ７およびレベルＬ４、レベルＬ８およびレベルＬ４、並びにレベルＬ８およびレベルＬ５の各階層の組み合わせのピラミッド画像の差分を求める。これにより、合計５つの輝度の差分画像が得られる。
【０１０７】
例えば、レベルＬ６およびレベルＬ３の組み合わせの差分画像が生成される場合、レベルＬ６のピラミッド画像が、レベルＬ３のピラミッド画像の大きさに合わせてアップコンバートされる。つまり、アップコンバート前のレベルＬ６のピラミッド画像の１つの画素の画素値が、その画素に対応する、アップコンバート後のレベルＬ６のピラミッド画像の互いに隣接するいくつかの画素の画素値とされる。そして、レベルＬ６のピラミッド画像の画素の画素値と、その画素と同じ位置にあるレベルＬ３のピラミッド画像の画素の画素値との差分が求められ、その差分が差分画像の画素の画素値とされる。
【０１０８】
これらの差分画像を生成する処理は、輝度画像にバンドパスフィルタを用いたフィルタ処理を施して、輝度画像から所定の周波数成分を抽出することと等価である。このようにして得られた差分画像の画素の画素値は、各レベルのピラミッド画像の輝度値の差、つまり入力画像における所定の画素における輝度と、その画素の周囲の平均的な輝度との差分を示している。
【０１０９】
一般的に、画像において周囲との輝度の差分の大きい領域は、その画像を見る人の目を引く領域であるので、その領域は被写体の領域である可能性が高い。したがって、各差分画像において、より画素値の大きい画素が、より被写体の領域である可能性の高い領域であることを示しているということができる。
【０１１０】
ステップＳ５４において、輝度情報マップ生成部８４は、差分算出部８３から供給された差分画像に基づいて輝度情報マップを生成し、被写体マップ生成部４６に供給する。輝度情報マップが輝度情報マップ生成部８４から被写体マップ生成部４６に供給されると、輝度情報抽出処理は終了し、処理は図８のステップＳ１２に進む。
【０１１１】
例えば、輝度情報マップ生成部８４は、供給された５つの差分画像を、予め求められた差分画像ごとの重みである差分重みＷａにより重み付き加算し、１つの画像を求める。すなわち、各差分画像の同じ位置にある画素の画素値のそれぞれに差分重みＷａが乗算されて、差分重みＷａが乗算された画素値の総和が求められる。
【０１１２】
なお、輝度情報マップの生成時において、各差分画像が同じ大きさとなるように、差分画像のアップコンバートが行われる。
【０１１３】
このようにして、輝度情報抽出部４１は、入力画像から輝度画像を求め、その輝度画像から輝度情報マップを生成する。このようにして得られた輝度情報マップによれば、入力画像において、輝度の差の大きい領域、つまり入力画像を一瞥した観察者の目に付きやすい領域を簡単に検出することができる。
【０１１４】
次に、図１０のフローチャートを参照して、図８のステップＳ１２の処理に対応する色情報抽出処理について説明する。
【０１１５】
ステップＳ８１において、ＲＧ差分画像生成部１１１は、供給された入力画像を用いて、ＲＧ差分画像を生成し、ピラミッド画像生成部１１３に供給する。
【０１１６】
ステップＳ８２において、ＢＹ差分画像生成部１１２は、供給された入力画像を用いてＢＹ差分画像を生成し、ピラミッド画像生成部１１４に供給する。
【０１１７】
ステップＳ８３において、ピラミッド画像生成部１１３およびピラミッド画像生成部１１４は、ＲＧ差分画像生成部１１１からのＲＧ差分画像、およびＢＹ差分画像生成部１１２からのＢＹ差分画像を用いて、ピラミッド画像を生成する。
【０１１８】
例えば、ピラミッド画像生成部１１３は、解像度の異なる複数のＲＧ差分画像を生成することにより、レベルＬ１乃至レベルＬ８の各階層のピラミッド画像を生成し、差分算出部１１５に供給する。同様に、ピラミッド画像生成部１１４は、解像度の異なる複数のＢＹ差分画像を生成することにより、レベルＬ１乃至レベルＬ８の各階層のピラミッド画像を生成し、差分算出部１１６に供給する。
【０１１９】
ステップＳ８４において、差分算出部１１５および差分算出部１１６は、ピラミッド画像生成部１１３およびピラミッド画像生成部１１４から供給されたピラミッド画像に基づいて差分画像を生成して正規化し、色情報マップ生成部１１７および色情報マップ生成部１１８に供給する。差分画像の正規化では、例えば、画素の画素値が０乃至２５５の間の値となるようにされる。
【０１２０】
例えば、差分算出部１１５は、各階層のＲＧの差分のピラミッド画像のうち、レベルＬ６およびレベルＬ３、レベルＬ７およびレベルＬ３、レベルＬ７およびレベルＬ４、レベルＬ８およびレベルＬ４、並びにレベルＬ８およびレベルＬ５の各階層の組み合わせのピラミッド画像の差分を求める。これにより、合計５つのＲＧの差分の差分画像が得られる。
【０１２１】
同様に、差分算出部１１６は、各階層のＢＹの差分のピラミッド画像のうち、レベルＬ６およびレベルＬ３、レベルＬ７およびレベルＬ３、レベルＬ７およびレベルＬ４、レベルＬ８およびレベルＬ４、並びにレベルＬ８およびレベルＬ５の各階層の組み合わせのピラミッド画像の差分を求める。これにより、合計５つのＢＹの差分の差分画像が得られる。
【０１２２】
これらの差分画像を生成する処理は、ＲＧ差分画像またはＢＹ差分画像にバンドパスフィルタを用いたフィルタ処理を施して、ＲＧ差分画像またはＢＹ差分画像から所定の周波数成分を抽出することと等価である。このようにして得られた差分画像の画素の画素値は、各レベルのピラミッド画像の特定の色成分の差、つまり入力画像の画素における特定の色の成分と、その画素の周囲の平均的な特定の色の成分との差分を示している。
【０１２３】
一般的に、画像において周囲と比べて目立つ色の領域、つまり特定の色成分の周囲との差分の大きい領域は、その画像を見る人の目を引く領域であるので、その領域は被写体の領域である可能性が高い。したがって、各差分画像において、より画素値の大きい画素が、より被写体の領域である可能性の高い領域であることを示しているということができる。
【０１２４】
ステップＳ８５において、色情報マップ生成部１１７および色情報マップ生成部１１８は、差分算出部１１５からの差分画像、および差分算出部１１６からの差分画像を用いて色情報マップを生成し、被写体マップ生成部４６に供給する。
【０１２５】
例えば、色情報マップ生成部１１７は、差分算出部１１５から供給されたＲＧの差分の差分画像を、予め求められた差画像ごとの差分重みＷａにより重み付き加算して、１つのＲＧの差分の色情報マップとする。
【０１２６】
同様に、色情報マップ生成部１１８は、差分算出部１１６から供給されたＢＹの差分の差分画像を、予め求められた差分重みＷａにより重み付き加算して、１つのＢＹの差分の色情報マップとする。なお、色情報マップの生成時において、各差分画像が同じ大きさとなるように、差分画像のアップコンバートが行われる。
【０１２７】
色情報マップ生成部１１７および色情報マップ生成部１１８が、このようにして得られたＲＧの差分の色情報マップ、およびＢＹの差分の色情報マップを被写体マップ生成部４６に供給すると、色情報抽出処理は終了し、処理は図８のステップＳ１３に進む。
【０１２８】
このようにして、色情報抽出部４２は、入力画像から特定の色の成分の差分の画像を求め、その画像から色情報マップを生成する。このようにして得られた色情報マップによれば、入力画像において、特定の色成分の差の大きい領域、つまり入力画像を一瞥した観察者の目に付きやすい領域を簡単に検出することができる。
【０１２９】
なお、色情報抽出部４２では、入力画像から抽出される色の情報として、Ｒ（赤）の成分と、Ｇ（緑）の成分の差分、およびＢ（青）の成分と、Ｙ（黄）の成分との差分が抽出されると説明したが、色差成分Ｃｒと色差成分Ｃｂなどが抽出されるようにしてもよい。ここで、色差成分Ｃｒは、Ｒ成分と輝度成分との差分であり、色差成分Ｃｂは、Ｂ成分と輝度成分との差分である。
【０１３０】
図１１は、図８のステップＳ１３の処理に対応するエッジ情報抽出処理を説明するフローチャートである。以下、このエッジ情報抽出処理について説明する。
【０１３１】
ステップＳ１１１において、エッジ画像生成部１４１乃至エッジ画像生成部１４４は、供給された入力画像に対して、ガボアフィルタを用いたフィルタ処理を施し、０度、４５度、９０度、および１３５度の方向のエッジ強度を画素の画素値とするエッジ画像を生成する。そして、エッジ画像生成部１４１乃至エッジ画像生成部１４４は、生成されたエッジ画像をピラミッド画像生成部１４５乃至ピラミッド画像生成部１４８に供給する。
【０１３２】
ステップＳ１１２において、ピラミッド画像生成部１４５乃至ピラミッド画像生成部１４８は、エッジ画像生成部１４１乃至エッジ画像生成部１４４からのエッジ画像を用いて、ピラミッド画像を生成し、差分算出部１４９乃至差分算出部１５２に供給する。
【０１３３】
例えば、ピラミッド画像生成部１４５は、解像度の異なる複数の０度方向のエッジ画像を生成することにより、レベルＬ１乃至レベルＬ８の各階層のピラミッド画像を生成し、差分算出部１４９に供給する。同様に、ピラミッド画像生成部１４６乃至ピラミッド画像生成部１４８は、レベルＬ１乃至レベルＬ８の各階層のピラミッド画像を生成して差分算出部１５０乃至差分算出部１５２に供給する。
【０１３４】
ステップＳ１１３において、差分算出部１４９乃至差分算出部１５２は、ピラミッド画像生成部１４５乃至ピラミッド画像生成部１４８からのピラミッド画像を用いて差分画像を生成して正規化し、エッジ情報マップ生成部１５３乃至エッジ情報マップ生成部１５６に供給する。差分画像の正規化では、例えば、画素の画素値が０乃至２５５の間の値となるようにされる。
【０１３５】
例えば、差分算出部１４９は、ピラミッド画像生成部１４５から供給された、各階層の０度方向のエッジのピラミッド画像のうち、レベルＬ６およびレベルＬ３、レベルＬ７およびレベルＬ３、レベルＬ７およびレベルＬ４、レベルＬ８およびレベルＬ４、並びにレベルＬ８およびレベルＬ５の組み合わせのピラミッド画像の差分を求める。これにより、合計５つのエッジの差分画像が得られる。
【０１３６】
同様に、差分算出部１５０乃至差分算出部１５２は、各階層のピラミッド画像のうち、レベルＬ６およびレベルＬ３、レベルＬ７およびレベルＬ３、レベルＬ７およびレベルＬ４、レベルＬ８およびレベルＬ４、並びにレベルＬ８およびレベルＬ５の各階層の組み合わせのピラミッド画像の差分を求める。これにより、各方向のエッジについて、それぞれ合計５つの差分画像が得られる。
【０１３７】
これらの差分画像を生成する処理は、エッジ画像にバンドパスフィルタを用いたフィルタ処理を施して、エッジ画像から所定の周波数成分を抽出することと等価である。このようにして得られた差分画像の画素の画素値は、各レベルのピラミッド画像のエッジ強度の差、つまり入力画像の所定の位置のエッジ強度と、その位置の周囲の平均的なエッジ強度との差を示している。
【０１３８】
一般的に、画像において周囲と比べてエッジ強度の強い領域は、その画像を見る人の目を引く領域であるので、その領域は被写体の領域である可能性が高い。したがって、各差分画像において、より画素値の大きい画素が、より被写体の領域である可能性の高い領域であることを示しているということができる。
【０１３９】
ステップＳ１１４において、エッジ情報マップ生成部１５３乃至エッジ情報マップ生成部１５６は、差分算出部１４９乃至差分算出部１５２からの差分画像を用いて各方向のエッジ情報マップを生成し、被写体マップ生成部４６に供給する。
【０１４０】
例えば、エッジ情報マップ生成部１５３は、差分算出部１４９から供給された差分画像を、予め求められた差分重みＷａにより重み付き加算して０度方向のエッジ情報マップとする。
【０１４１】
同様に、エッジ情報マップ生成部１５４は差分算出部１５０からの差分画像を差分重みＷａにより重み付き加算し、エッジ情報マップ生成部１５５は差分算出部１５１からの差分画像を差分重みＷａにより重み付き加算し、エッジ情報マップ生成部１５６は差分算出部１５２からの差分画像を差分重みＷａにより重み付き加算する。これにより、４５度、９０度、および１３５度の各方向のエッジ情報マップが得られる。なお、エッジ情報マップの生成時において、各差分画像が同じ大きさとなるように、差分画像のアップコンバートが行われる。
【０１４２】
エッジ情報マップ生成部１５３乃至エッジ情報マップ生成部１５６が、このようにして得られた各方向の合計４つのエッジ情報マップを被写体マップ生成部４６に供給すると、エッジ情報抽出処理は終了し、処理は図８のステップＳ１４に進む。
【０１４３】
このようにして、エッジ情報抽出部４３は、入力画像から特定の方向のエッジの差分画像を求め、その差分画像からエッジ情報マップを生成する。このようにして得られた方向ごとのエッジ情報マップによれば、入力画像において、周囲の領域と比べて、特定の方向へのエッジ強度の大きい領域、つまり入力画像を一瞥した観察者の目に付きやすい領域を簡単に検出することができる。
【０１４４】
なお、エッジ情報抽出処理では、エッジの抽出にガボアフィルタが用いられると説明したが、その他、Sobelフィルタや、Robertsフィルタなどのエッジ抽出フィルタが用いられるようにしてもよい。
【０１４５】
また、図９乃至図１１を参照して説明した、画像から輝度、色、エッジなどの情報を抽出する方法は、例えば「Laurent Itti, Christof Koch, and Ernst Niebur, "A Model of Saliency-Based Visual Attention for Rapid Scene Analysis"」に詳細に記載されている。
【０１４６】
次に、図１２のフローチャートを参照して、図８のステップＳ１４の処理に対応する顔情報抽出処理について説明する。
【０１４７】
ステップＳ１４１において、顔検出部１８１は、供給された入力画像から、人の顔の領域を検出し、その検出結果を顔情報マップ生成部１８２に供給する。例えば、顔検出部１８１は、入力画像に対してガボアフィルタを用いたフィルタ処理を施し、入力画像から人の目、口、鼻などの特徴的な領域を抽出することにより、入力画像における顔の領域を検出する。
【０１４８】
ステップＳ１４２において、顔情報マップ生成部１８２は、顔検出部１８１からの検出結果を用いて顔情報マップを生成し、被写体マップ生成部４６に供給する。
【０１４９】
例えば、入力画像からの顔の検出結果として、顔が含まれると推定される入力画像上の矩形の領域（以下、候補領域と称する）が複数検出されたとする。ここで、入力画像上の所定の位置近傍に複数の候補領域が検出され、それらの候補領域の一部が互いに重なることもあることとする。すなわち、例えば、入力画像上の１つの顔の領域に対して、その顔を含む複数の領域が候補領域として得られた場合には、それらの候補領域の一部が互いに重なることになる。
【０１５０】
顔情報マップ生成部１８２は、顔の検出により得られた候補領域に対して、候補領域ごとに、入力画像と同じ大きさの検出画像を生成する。この検出画像は、検出画像上における処理対象の候補領域と同じ領域内の画素の画素値が、候補領域とは異なる領域内の画素の画素値よりも大きい値とされる。
【０１５１】
また、検出画像上の画素の画素値は、より人の顔が含まれる可能性が高いと推定された候補領域の画素と同じ位置の画素ほど、画素値が大きくなる。顔情報マップ生成部１８２は、このようにして得られた検出画像を足し合わせて、１つの画像を生成して正規化し、顔情報マップとする。したがって、顔情報マップ上において、入力画像上の複数の候補領域の一部が重なる領域と同じの領域の画素の画素値は大きくなり、より顔が含まれる可能性が高いことになる。なお、正規化は、顔情報マップの画素の画素値が、例えば０乃至２５５の間の値となるようにされる。
【０１５２】
顔情報マップが生成されると、顔情報抽出処理は終了し、処理は図８のステップＳ１５に進む。
【０１５３】
このようにして、顔情報抽出部４４は、入力画像から顔を検出し、その検出結果から顔情報マップを生成する。このようにして得られた顔情報マップによれば、入力画像において、被写体としての人の顔の領域を簡単に検出することができる。
【０１５４】
さらに、図１３のフローチャートを参照して、図８のステップＳ１５の処理に対応する動き情報抽出処理について説明する。
【０１５５】
ステップＳ１７１において、ローカルモーションベクタ抽出部２１１は、供給された入力画像を用いて、勾配法などにより入力画像の各画素のローカルモーションベクタを検出し、差分算出部２１３に供給する。
【０１５６】
ステップＳ１７２において、グローバルモーションベクタ抽出部２１２は、供給された入力画像を用いてグローバルモーションベクタを検出し、差分算出部２１３に供給する。
【０１５７】
ステップＳ１７３において、差分算出部２１３は、ローカルモーションベクタ抽出部２１１からのローカルモーションベクタと、グローバルモーションベクタ抽出部２１２からのグローバルモーションベクタとの差分の絶対値を求めて動きの差分画像を生成する。そして、差分算出部２１３は、生成した動きの差分画像を動き情報マップ生成部２１４に供給する。
【０１５８】
ステップＳ１７４において、動き情報マップ生成部２１４は、差分算出部２１３から供給された差分画像を正規化して動き情報マップとし、被写体マップ生成部４６に供給する。ここで、差分画像の正規化は、各画素の画素値が、例えば０乃至２５５の間の値となるようにされる。動き情報マップが生成されると、動き情報抽出処理は終了し、処理は図８のステップＳ１６に進む。
【０１５９】
このようにして、動き情報抽出部４５は、入力画像から動きを検出し、その検出結果から動き情報マップを生成する。このようにして得られた動き情報マップによれば、入力画像において、動きのある物体の領域を簡単に検出することができる。入力画像において、動きのある物体の領域は、入力画像を一瞥した観察者の目に付きやすい領域であり、被写体である可能性が高い。
【０１６０】
以上において説明した輝度情報抽出処理乃至動き情報抽出処理により、各情報マップが得られ、これらの情報マップから被写体マップが生成される。
【０１６１】
次に、図１４のフローチャートを参照して、図８のステップＳ１７の処理に対応するぼけ判定処理について説明する。
【０１６２】
ステップＳ２１１において、エッジマップ生成部２４１は、供給された入力画像と、被写体マップ生成部４６からの被写体マップとを用いてエッジマップを生成する。
【０１６３】
具体的には、エッジマップ生成部２４１は、被写体マップを用いて入力画像から被写体画像を抽出する。すなわち、入力画像において、画素値が所定の値以上である被写体マップの画素と同じ画素の領域が、入力画像上の被写体の領域とされ、その領域を含む入力画像上の所定の大きさの領域が、被写体画像とされる。
【０１６４】
また、エッジマップ生成部２４１は、被写体画像を２×２画素の大きさのブロックに分割して、次式（１）乃至式（６）により、各ブロック内の画素間の画素値の差分の絶対値ＭTL-TR乃至絶対値ＭBL-BRを算出する。
【０１６５】
【数１】
2010055194.tif 000003
【０１６６】
なお、式（１）乃至式（６）において、ａ，ｂ，ｃ，ｄのそれぞれは、被写体画像の２×２画素の大きさのブロック内の画素の画素値を示している。例えば、図１５に示すように、画素値ａはブロック内の図中、左上の画素の画素値を示している。また、画素値ｂは、図中、ブロック内の右上の画素の画素値を示しており、画素値ｃはブロック内の左下の画素の画素値を示しており、画素値ｄはブロック内の右下の画素の画素値を示している。
【０１６７】
次に、エッジマップ生成部２４１は、次式（７）により、絶対値ＭTL-TR乃至絶対値ＭBL-BRの平均値ＭAveを算出する。この平均値ＭAveは、ブロック内の上下、左右および斜め方向のエッジ強度の平均値を示している。
【０１６８】
【数２】
2010055194.tif 000004
【０１６９】
エッジマップ生成部２４１は、算出した平均値ＭAveを、被写体画像の対応するブロックと同じ順序に並べることにより、スケールＳＣ１のエッジマップを生成する。
【０１７０】
さらに、エッジマップ生成部２４１は、スケールＳＣ２およびスケールＳＣ３のエッジマップを生成するために、次式（８）により、スケールＳＣ２およびスケールＳＣ３の平均化画像を生成する。
【０１７１】
【数３】
2010055194.tif 000005
【０１７２】
なお、式（８）において、Ｐi（ｘ，ｙ）は、スケールＳＣｉ（但し、１≦ｉ≦３）の平均化画像における座標（ｘ，ｙ）に位置する画素の画素値を示している。また、Ｐi+1（ｘ，ｙ）は、スケールＳＣｉ＋１の平均化画像における座標（ｘ，ｙ）に位置する画素の画素値を示している。なお、スケールＳＣ１の平均化画像は被写体画像であるとする。したがって、スケールＳＣ２の平均化画像は、被写体画像を２×２画素の大きさのブロックに分割した各ブロック内の画素の画素値の平均値を、１つの画素の画素値とした画像である。また、スケールＳＣ３の平均化画像は、スケールＳＣ２の平均化画像を２×２画素の大きさのブロックに分割した各ブロック内の画素の画素値の平均値を、１つの画素の画素値とした画像である。
【０１７３】
エッジマップ生成部２４１は、スケールＳＣ２およびスケールＳＣ３の平均化画像に対して、それぞれ式（１）乃至式（７）を用いて被写体画像に対して行ったのと同様の処理を行い、スケールＳＣ２およびスケールＳＣ３のエッジマップを生成する。
【０１７４】
したがって、スケールＳＣ１乃至スケールＳＣ３のエッジマップは、それぞれ異なる周波数帯域のエッジ成分を入力画像から抽出して得られた画像となる。なお、スケールＳＣ１のエッジマップの画素数は被写体画像の１／４（縦1/2×横1/2）となり、スケールＳＣ２のエッジマップの画素数は被写体画像の１／１６（縦1/4×横1/4）となり、スケールＳＣ３のエッジマップの画素数は被写体画像の１／６４（縦1/8×横1/8）となる。
【０１７５】
エッジマップ生成部２４１は、生成したスケールＳＣ１乃至スケールＳＣ３のエッジマップをダイナミックレンジ検出部２４２およびローカルマックス生成部２４４に供給する。このように、異なる大きさのブロック単位で、異なるスケールのエッジマップを生成することにより、エッジ強度のばらつきを抑えることができる。
【０１７６】
ステップＳ２１２において、ダイナミックレンジ検出部２４２は、エッジマップ生成部２４１から供給されたエッジマップを用いて、被写体画像のダイナミックレンジを検出し、その検出結果を演算パラメータ調整部２４３に供給する。
【０１７７】
具体的には、ダイナミックレンジ検出部２４２は、スケールＳＣ１乃至スケールＳＣ３のエッジマップのなかから画素値の最大値と最小値を検出し、検出した画素値の最大値から最小値を引いた値を被写体画像のエッジ強度のダイナミックレンジとする。すなわち、被写体画像のエッジ強度の最大値と最小値の差がダイナミックレンジとして検出される。
【０１７８】
なお、上述した方法以外にも、例えば、エッジマップごとにダイナミックレンジを検出し、検出したダイナミックレンジの最大値や平均値などを実際に使用するダイナミックレンジとして採用することも考えられる。
【０１７９】
ステップＳ２１３において、演算パラメータ調整部２４３は、ダイナミックレンジ検出部２４２から供給されたダイナミックレンジに応じて、演算パラメータの初期値を設定する。
【０１８０】
すなわち、演算パラメータ調整部２４３は、ダイナミックレンジが所定の閾値未満である場合、被写体画像をローダイナミックレンジの画像とし、ダイナミックレンジが閾値以上である場合、被写体画像をハイダイナミックレンジの画像とする。
【０１８１】
そして、演算パラメータ調整部２４３は、被写体画像がローダイナミックレンジの画像である場合、演算パラメータにローダイナミックレンジの画像用の初期値を設定する。また、演算パラメータ調整部２４３は、被写体画像がハイダイナミックレンジの画像である場合、演算パラメータにハイダイナミックレンジの画像用の初期値を設定する。
【０１８２】
ここで、ローダイナミックレンジの画像は、ハイダイナミックレンジの画像と比較してエッジが少なく、抽出されるエッジポイントの量が少ないと推定される。したがって、被写体画像のぼけ度の検出精度を一定のレベル以上とするのに充分な量のエッジポイントを抽出できるように、ローダイナミックレンジの画像用のエッジ基準値の初期値は、ハイダイナミックレンジの画像用のエッジ基準値の初期値と比較して小さい値とされる。また、ローダイナミックレンジの画像用の抽出基準値の初期値は、ハイダイナミックレンジの画像用の抽出基準値の初期値と比較して小さい値とされる。
【０１８３】
演算パラメータ調整部２４３は、ダイナミックレンジに応じて設定したエッジ基準値をエッジポイント抽出部２４５に供給し、エッジ基準値および抽出基準値を抽出量判定部２４６に供給する。
【０１８４】
ステップＳ２１４において、ローカルマックス生成部２４４は、エッジマップ生成部２４１から供給されたエッジマップを用いてローカルマックスを生成し、エッジポイント抽出部２４５およびエッジ分析部２４７に供給する。
【０１８５】
例えば、ローカルマックス生成部２４４は、図１６の左側に示すように、スケールＳＣ１のエッジマップを２×２画素のブロックに分割する。そして、ローカルマックス生成部２４４は、エッジマップの各ブロックの最大値を抽出して、抽出した最大値を対応するブロックと同じ順序に並べることにより、スケールＳＣ１のローカルマックスＬＭ１を生成する。つまり、各ブロック内の画素の画素値の最大値が抽出される。
【０１８６】
また、ローカルマックス生成部２４４は、図中、中央に示すように、スケールＳＣ２のエッジマップを４×４画素のブロックに分割する。そして、ローカルマックス生成部２４４は、エッジマップの各ブロックの最大値を抽出して、抽出した最大値を対応するブロックと同じ順序に並べることにより、スケールＳＣ２のローカルマックスＬＭ２を生成する。
【０１８７】
さらにローカルマックス生成部２４４は、図中、右側に示すように、スケールＳＣ３のエッジマップを８×８画素のブロックに分割する。そして、ローカルマックス生成部２４４は、エッジマップの各ブロックの最大値を抽出して、抽出した最大値を対応するブロックと同じ順序に並べることにより、スケールＳＣ３のローカルマックスＬＭ３を生成する。
【０１８８】
ステップＳ２１５において、エッジポイント抽出部２４５は、ローカルマックス生成部２４４から供給されたローカルマックスと、被写体マップ生成部４６から供給された被写体マップとを用いて、被写体画像の被写体の領域から、エッジポイントを抽出する。
【０１８９】
具体的には、エッジポイント抽出部２４５は、被写体マップを参照して、被写体画像における被写体の領域内の画素を１つ選択し、注目画素とする。なお、被写体画像上の被写体の領域は、画素値が所定の値以上である被写体マップの画素と同じ位置にある、被写体画像上の画素からなる領域とされる。
【０１９０】
また、エッジポイント抽出部２４５は、選択した注目画素の被写体画像上におけるｘｙ座標系の座標を（ｘ，ｙ）として、次式（９）により、注目画素に対応するローカルマックスＬＭ１の画素の座標（ｘ１，ｙ１）を求める。
【０１９１】
（ｘ１，ｙ１）＝（ｘ／４，ｙ／４）                      ・・・（９）
【０１９２】
なお、式（９）において、ｘ／４およびｙ／４の値の小数点以下は切り捨てられるものとする。
【０１９３】
ローカルマックスＬＭ１の１つの画素は、被写体画像の４×４画素のブロックから生成されるため、被写体画像の注目画素に対応するローカルマックスＬＭ１の画素の座標は、注目画素のｘ座標およびｙ座標をそれぞれ１／４にした値となる。
【０１９４】
同様に、エッジポイント抽出部２４５は、次式（１０）および式（１１）により、注目画素に対応するローカルマックスＬＭ２の画素の座標（ｘ２，ｙ２）、および注目画素に対応するローカルマックスＬＭ３の画素の座標（ｘ３，ｙ３）を求める。
【０１９５】
（ｘ２，ｙ２）＝（ｘ／１６，ｙ／１６）          ・・・（１０）
【０１９６】
（ｘ３，ｙ３）＝（ｘ／６４，ｙ／６４）          ・・・（１１）
【０１９７】
なお、式（１０）および式（１１）において、ｘ／１６、ｙ／１６、ｘ／６４、およびｙ／６４の値の小数点以下は切り捨てられるものとする。
【０１９８】
さらに、エッジポイント抽出部２４５は、ローカルマックスＬＭ１の座標（ｘ１，ｙ１）の画素の画素値がエッジ基準値以上である場合、注目画素をローカルマックスＬＭ１におけるエッジポイントとして抽出する。そして、エッジポイント抽出部２４５は、注目画素の座標（ｘ，ｙ）とローカルマックスＬＭ１の座標（ｘ１，ｙ１）の画素値を対応づけて記憶する。
【０１９９】
同様に、エッジポイント抽出部２４５は、ローカルマックスＬＭ２の座標（ｘ２，ｙ２）の画素の画素値がエッジ基準値以上である場合、注目画素をローカルマックスＬＭ２におけるエッジポイントとして抽出し、注目画素の座標（ｘ，ｙ）とローカルマックスＬＭ２の座標（ｘ２，ｙ２）の画素値を対応づけて記憶する。また、エッジポイント抽出部２４５は、ローカルマックスＬＭ３の座標（ｘ３，ｙ３）の画素の画素値がエッジ基準値以上である場合、注目画素をローカルマックスＬＭ３におけるエッジポイントとして抽出し、注目画素の座標（ｘ，ｙ）とローカルマックスＬＭ３の座標（ｘ３，ｙ３）の画素値を対応づけて記憶する。
【０２００】
エッジポイント抽出部２４５は、被写体画像における被写体の領域内の全ての画素が注目画素とされるまで以上の処理を繰り返す。
【０２０１】
これにより、ローカルマックスＬＭ１に基づいて、被写体画像上の被写体の領域内の４×４画素のブロックのうち、エッジ強度がエッジ基準値以上となるブロックに含まれる画素がエッジポイントとして抽出される。
【０２０２】
同様に、ローカルマックスＬＭ２に基づいて、被写体画像上の被写体の領域内の１６×１６画素のブロックのうち、ブロック内のエッジ強度がエッジ基準値以上となるブロックに含まれる画素がエッジポイントとして抽出される。また、ローカルマックスＬＭ３に基づいて、被写体画像上の被写体の領域内の６４×６４画素のブロックのうち、ブロック内のエッジ強度がエッジ基準値以上となるブロックに含まれる画素がエッジポイントとして抽出される。
【０２０３】
したがって、エッジ強度がエッジ基準値以上となる被写体の領域の４×４画素、１６×１６画素、または６４×６４画素のブロックの少なくとも１つに含まれる画素がエッジポイントとして抽出される。
【０２０４】
エッジポイント抽出部２４５は、ローカルマックスＬＭ１に基づいて抽出したエッジポイントの座標（ｘ，ｙ）と、そのエッジポイントに対応するローカルマックスＬＭ１の画素の画素値とが対応づけられたテーブルであるエッジポイントテーブルＥＴ１を生成する。
【０２０５】
同様に、エッジポイント抽出部２４５は、ローカルマックスＬＭ２に基づいて抽出したエッジポイントの座標（ｘ，ｙ）と、そのエッジポイントに対応するローカルマックスＬＭ２の画素の画素値とが対応づけられたエッジポイントテーブルＥＴ２を生成する。また、エッジポイント抽出部２４５は、ローカルマックスＬＭ３に基づいて抽出したエッジポイントの座標（ｘ，ｙ）と、そのエッジポイントに対応するローカルマックスＬＭ３の画素の画素値とが対応づけられたエッジポイントテーブルＥＴ３も生成する。
【０２０６】
そして、エッジポイント抽出部２４５は、生成したそれらのエッジポイントテーブルを、抽出量判定部２４６に供給する。
【０２０７】
ステップＳ２１６において、抽出量判定部２４６は、エッジポイント抽出部２４５から供給されたエッジポイントテーブルを用いて、エッジポイント抽出量が適切であるか否かを判定する。例えば、抽出されたエッジポイントの合計数、すなわちエッジポイントテーブルＥＴ１乃至エッジポイントテーブルＥＴ３のデータ数の合計が、演算パラメータ調整部２４３から供給された抽出基準値未満である場合、エッジポイント抽出量が適切でないと判定される。
【０２０８】
ステップＳ２１６において、エッジポイント抽出量が適切でないと判定された場合、抽出量判定部２４６は、エッジポイント抽出量が適切でない旨を演算パラメータ調整部２４３に通知し、処理はステップＳ２１７に進む。
【０２０９】
ステップＳ２１７において、演算パラメータ調整部２４３は、抽出量判定部２４６からの通知に応じて演算パラメータを調整する。
【０２１０】
例えば、演算パラメータ調整部２４３は、現時点よりも、より多くのエッジポイントが抽出されるように、エッジ基準値を、現時点において設定されている値から所定の値だけ小さくする。演算パラメータ調整部２４３は、調整したエッジ基準値をエッジポイント抽出部２４５および抽出量判定部２４６に供給する。
【０２１１】
演算パラメータが調整されると、その後、処理は、ステップＳ２１５に戻り、エッジポイント抽出量が適切であると判定されるまで、上述した処理が繰り返される。
【０２１２】
また、ステップＳ２１６において、エッジポイント抽出量が適切であると判定された場合、抽出量判定部２４６は、演算パラメータ調整部２４３からのエッジ基準値と、エッジポイントテーブルとをエッジ分析部２４７に供給し、処理はステップＳ２１８に進む。
【０２１３】
以上の処理により、ぼけ度の検出精度を向上させるために、ローダイナミックレンジの被写体画像については、被写体のぼけ度の検出精度を一定のレベル以上とするのに充分な量のエッジポイントを確保できるよう、エッジ強度の弱いブロックからもエッジポイントが抽出される。一方、ハイダイナミックレンジの被写体画像については、より強いエッジを構成するエッジポイントが抽出されるように、できるだけエッジ強度の強いブロックからエッジポイントが抽出されるようになる。
【０２１４】
ステップＳ２１８において、エッジ分析部２４７は、抽出量判定部２４６から供給されたエッジ基準値およびエッジポイントテーブルと、ローカルマックス生成部２４４から供給されたローカルマックスとを用いて、エッジ分析を行う。
【０２１５】
具体的には、エッジ分析部２４７は、エッジポイントテーブルＥＴ１乃至エッジポイントテーブルＥＴ３に基づいて、被写体画像から抽出されたエッジポイントのうちの１つを注目画素とする。そして、エッジ分析部２４７は、注目画素のｘｙ座標系の座標を（ｘ，ｙ）とし、上述した式（９）乃至（１１）により、注目画素に対応するローカルマックスＬＭ１乃至ローカルマックスＬＭ３の画素の座標（ｘ１，ｙ１）乃至座標（ｘ３，ｙ３）を求める。
【０２１６】
エッジ分析部２４７は、ローカルマックスＬＭ１の座標（ｘ１，ｙ１）の画素を左上隅の画素とするｍ×ｍ画素（例えば、４×４画素）のローカルマックスＬＭ１上のブロック内の画素の画素値の最大値をLocal Max1(x1,y1)に設定する。また、エッジ分析部２４７は、ローカルマックスＬＭ２の座標（ｘ２，ｙ２）の画素を左上隅の画素とするｎ×ｎ画素（例えば、２×２画素）のブロック内の画素値の最大値をLocal Max2(x2,y2)に設定し、ローカルマックスＬＭ３の座標（ｘ３，ｙ３）の画素値をLocal Max3(x3,y3)に設定する。
【０２１７】
なお、Local Max1(x1,y1)の設定に用いるｍ×ｍ、および、Local Max2(x2,y2)の設定に用いるｎ×ｎのパラメータは、ローカルマックスＬＭ１乃至ローカルマックスＬＭ３の１画素に対応する被写体画像のブロックの大きさの差を調整するためのパラメータである。
【０２１８】
エッジ分析部２４７は、Local Max1(x1,y1)、Local Max2(x2,y2)およびLocal Max3(x3,y3)が以下の条件式（１２）を満足するか否かを判定する。Local Max1(x1,y1)、Local Max2(x2,y2)およびLocal Max3(x3,y3)が条件式（１２）を満足する場合、エッジ分析部２４７は、変数Nedgeの値を１つインクリメントする。
【０２１９】
【数４】
2010055194.tif 000006
【０２２０】
なお、条件式（１２）を満足するエッジポイントは、図１７Ａ乃至図１７Ｄに示すエッジなど、その構造に関わらず、一定以上の強度を有するエッジを構成するエッジポイントであると推定される。
【０２２１】
ここで、図１７Ａに示すエッジは、急峻なインパルス状のエッジとされ、図１７Ｂに示すエッジは、図１７Ａのエッジよりは傾きが緩やかなパルス状のエッジとされ、図１７Ｃに示すエッジは、傾きがほぼ垂直な階段状のエッジとされている。また、図１７Ｄに示すエッジは、図１７Ｃのエッジよりは傾きが緩やかな、階段状のエッジとされている。
【０２２２】
エッジ分析部２４７は、Local Max1(x1,y1)、Local Max2(x2,y2)およびLocal Max3(x3,y3)が条件式（１２）を満足する場合、さらに、以下の条件式（１３）または条件式（１４）を満足するか否かを判定する。Local Max1(x1,y1)、Local Max2(x2,y2)およびLocal Max3(x3,y3)が条件式（１３）または条件式（１４）を満足する場合、エッジ分析部２４７は、変数Nsmallblurの値を１つインクリメントする。
【０２２３】
【数５】
2010055194.tif 000007
【０２２４】
なお、条件式（１２）を満足し、かつ条件式（１３）または条件式（１４）を満足するエッジポイントは、一定以上の強度を有するが、図１７Ａまたは図１７Ｃのエッジと比較して強度の弱い、図１７Ｂまたは図１７Ｄの構造を有するエッジを構成するエッジポイントであると推定される。
【０２２５】
さらに、エッジ分析部２４７は、Local Max1(x1,y1)、Local Max2(x2,y2)およびLocal Max3(x3,y3)が条件式（１２）を満足し、かつ条件式（１３）または条件式（１４）を満足する場合、Local Max1(x1,y1)が、以下の条件式（１５）を満足するか否かを判定する。Local Max1(x1,y1)が条件式（１５）を満足する場合、エッジ分析部１７は、変数Nlargeblurの値を１つインクリメントする。
【０２２６】
【数６】
2010055194.tif 000008
【０２２７】
なお、条件式（１２）を満足し、かつ条件式（１３）または条件式（１４）を満足し、かつ条件式（１５）を満足するエッジポイントは、一定以上の強度の図１７Ｂまたは図１７Ｄの構造を有するエッジのうち、ぼけが発生し、鮮明さを失ったエッジを構成するエッジポイントであると推定される。換言すれば、そのエッジポイントにおいてぼけが発生していると推定される。
【０２２８】
エッジ分析部２４７は、被写体画像から抽出された全てのエッジポイントが注目画素とされるまで、以上の処理を繰り返す。これにより、抽出されたエッジポイントのうち、エッジポイントの数Nedge、エッジポイントの数Nsmallblur、およびエッジポイントの数Nlargeblurが求められる。
【０２２９】
ここで、数Nedgeは、条件式（１３）を満足するエッジポイントの数であり、数Nsmallblurは、条件式（１２）を満足し、かつ、条件式（１３）または条件式（１４）を満足するエッジポイントの数である。また、数Nlargeblurは、条件式（１２）を満足し、かつ、条件式（１３）または条件式（１４）を満足し、かつ、条件式（１５）を満足するエッジポイントの数である。
【０２３０】
エッジ分析部２４７は、算出した数Nsmallblurおよび数Nlargeblurをぼけ度検出部２４８に供給する。
【０２３１】
ステップＳ２１９において、ぼけ度検出部２４８は、エッジ分析部２４７からの数Nsmallblurおよび数Nlargeblurを用いて次式（１６）を計算し、入力画像における被写体のぼけ具合の指標となるぼけ度BlurEstimationを検出する。
【０２３２】
【数７】
2010055194.tif 000009
【０２３３】
すなわち、ぼけ度BlurEstimationは、一定以上の強度の図１７Ｂまたは図１７Ｄの構造を有するエッジを構成すると推定されるエッジポイントのうち、ぼけが発生しているエッジを構成すると推定されるエッジポイントが占める比率である。したがって、ぼけ度BlurEstimationが大きいほど、被写体のぼけ具合は大きく、ぼけ度BlurEstimationが小さいほど、被写体のぼけ具合は小さいと推定される。
【０２３４】
ぼけ度検出部２４８は、ぼけ度BlurEstimationを求めると、ぼけ度BlurEstimationに基づいて、被写体のぼけ具合がより小さいほど、より値が大きくなるぼけ度を、最終的なぼけ度として求める。そして、ぼけ度検出部２４８は、求められた最終的なぼけ度をスコア算出部５４に供給して、ぼけ判定処理は終了し、処理は、図８のステップＳ１８に進む。
【０２３５】
ここで、被写体のぼけ具合がより小さいほど、より値が大きくなるようなぼけ度を、最終的なぼけ度として求めるのは、入力画像のスコアは、被写体のぼけ具合がより小さいほど、より大きい値とされるからである。
【０２３６】
以上のようにして、ぼけ判定部５１は、入力画像および被写体マップから、入力画像上の被写体の領域のぼけ具合を示すぼけ度を算出する。ぼけ度の算出時には、被写体画像に応じて、エッジポイントを抽出する条件、およびエッジポイントの抽出量が適切に制御されるので、より高い精度で被写体のぼけ具合を検出することができる。
【０２３７】
また、被写体マップを用いて被写体の領域についてぼけ具合を検出することで、ポートレート、風景画など、被写体によらず確実に被写体のぼけ具合を検出することができる。しかも、ぼけ具合の検出対象を被写体の領域のみ行えばよいので、従来行われている、ウェーブレット変換を用いて被写体のぼけ具合を検出する方法と比べて、１．５倍程度の高速化を図ることができる。
【０２３８】
なお、以上においては、被写体マップを生成して、入力画像上の被写体の領域を特定すると説明したが、入力画像上における被写体の領域を特定する方法は、被写体マップに限らず、どのような方法であってもよい。例えば、入力画像における、いわゆる黄金線上にある物体が被写体として検出されてもよいし、入力画像から検出された人の顔が被写体とされてもよい。
【０２３９】
また、入力画像上の被写体の領域のぼけ度を求める処理も、どのような方法であってもよい。例えば、ウェーブレット変換により、入力画像の被写体の領域内のエッジを構成するエッジポイントを抽出し、そのエッジポイントのタイプを分析することにより、被写体のぼけ度を求めるようにしてもよい。
【０２４０】
このようなウェーブレット変換を利用して被写体のぼけ度を検出する方法は、例えば、「Hanghang Tong，Mingjing Li, Hongjiang Zhang and Changshui Zhang, "Blur Detection for Digital Images Using Wavelet Transform"」などに記載されている。
【０２４１】
さらに、入力画像上の被写体の領域を処理対象として、被写体のぼけ度を検出すると説明したが、入力画像から被写体が検出されなかった場合、例えば、被写体マップに所定の値以上の画素がない場合、入力画像全体が処理対処とされ、入力画像全体のぼけ度が求められてもよい。そのようにして求められた入力画像のぼけ度は、スコア算出部５４に供給されて、入力画像のスコアの算出に用いられる。
【０２４２】
［重みの学習の概要］
ところで、画像処理装置１１は、入力画像から被写体を検出し、入力画像の被写体の領域のぼけ度合いを考慮して、入力画像のスコアを求めている。
【０２４３】
従来、画像から被写体を検出する方法として、画像上の前景と背景を分離する方法（例えば、特開２００３−１６４４８号公報参照）が知られている。この方法では、画像を複数のブロックに分割し、色と輝度を用いて類似ブロックを繋げるセグメンテーション処理を行うことで、画像が前景と背景とに分離される。また、画像から被写体を検出する方法として、画像から顔または肌色の領域を被写体の領域として検出する方法（例えば、特開２００４−７２６５５号公報参照）もある。
【０２４４】
しかしながら、これらの技術では、画像から確実に被写体を検出することは困難であった。
【０２４５】
例えば、画像における顔または肌色の領域を被写体の領域とする方法では、人の顔または人の肌しか被写体として検出できないため、被写体が動物や植物、建物などである場合には、それらの被写体を画像から検出することはできなかった。
【０２４６】
また、画像を前景と背景とに分離する方法では、各ブロックの色や輝度の類似性により前景と背景との分離が行われるため、必ずしも前景とされた領域が被写体の領域となるとは限らない。さらに、ブロックごとにセグメンテーションが行われるため、画像上のテクスチャの有無を正確に判定することができない恐れがあり、被写体を確実に検出できなくなってしまう場合があった。
【０２４７】
これに対して、画像処理装置１１では、入力画像から被写体の領域がより多く有すると推定される複数の情報を抽出し、それらの情報を用いて被写体マップを生成することにより、入力画像からより確実に被写体の領域を検出することができる。しかも、被写体マップの画素値は、入力画像上において、入力画像を一瞥した観察者がより目を向けると推定される領域ほど大きくなるので、被写体が人である場合に限らず、動物や植物、建物などの一般的なものであっても、検出することができる。
【０２４８】
このような被写体マップは、入力画像から、輝度、色、エッジ、顔、動きなどの情報が抽出されて生成される。すなわち、それらの抽出された情報のピラミッド画像から得られた差分画像が、差分重みＷａにより重み付き加算されて情報マップとされ、それらの情報マップが、情報重みＷｂにより重み付き加算される。そして、さらに、その結果得られた画像（マップ）に被写体重みＷｃが乗算されて被写体マップとされる。
【０２４９】
被写体マップの生成時に用いられるこれらの差分重みＷａ、情報重みＷｂ、および被写体重みＷｃは、例えばニューラルネットワークによる学習により求められる。これらの重みの学習時に用いられる学習画像として、人に限らず、一般的な被写体が含まれる画像を用いれば、学習により得られた重みを用いて生成される被写体マップにより、入力画像から、一般的な被写体をより確実に検出することができるようになる。
【０２５０】
以下、被写体マップを生成するのに用いられる差分重みＷａ、情報重みＷｂ、および被写体重みＷｃの学習について説明する。
【０２５１】
まず、図１８および図１９を参照して、ニューラルネットワークによる学習の概要について説明する。
【０２５２】
学習時には、図１８に示すように、初期値が与えられた差分重みＷａ、情報重みＷｂ、および被写体重みＷｃと、被写体が含まれた学習画像とが用いられて、被写体マップが生成される。
【０２５３】
具体的には、学習画像から、被写体マップ生成時に抽出される情報ごとの差分画像Ａｎ（ｍ）（但し、１≦ｎ≦Ｎ，１≦ｍ≦６）が生成される。ここで、差分画像Ａｎ（１）乃至差分画像Ａｎ（６）は、学習画像から抽出された、１つの情報についての差分画像である。
【０２５４】
例えば、差分画像Ａ１（１）乃至差分画像Ａ１（６）は、学習画像から得られた輝度のピラミッド画像が用いられて生成された、輝度の差分画像とされる。また、例えば、差分画像ＡＮ（１）乃至差分画像ＡＮ（６）は、学習画像から得られた０度方向のエッジのピラミッド画像が用いられて生成された、０度方向の差分画像とされる。
【０２５５】
なお、図１８では、学習画像から抽出される情報ごとに、６つの差分画像が得られる例について示されているが、差分画像の数はいくつであってもよい。
【０２５６】
学習画像から情報ごとの差分画像Ａｎ（ｍ）が得られると、それらの差分画像と、差分画像ごとの差分重みＷａとから情報マップが生成される。なお、以下、差分画像Ａｎ（ｍ）に乗算される差分重みＷａを、差分重みＷａｎ（ｍ）とも称する。
【０２５７】
例えば、差分画像Ａ１（１）乃至差分画像Ａ１（６）のそれぞれが、差分画像ごとの差分重みＷａ１（１）乃至差分重みＷａ１（６）により重み付き加算されて、情報マップＢ１inとされる。さらに、この情報マップＢ１inに対して、予め定められた関数ｆ（ｘ）による演算が行われ、その結果として情報マップＢ１outが得られる。
【０２５８】
例えば、関数ｆ（ｘ）は、次式（１７）に示される双曲線余弦関数（ハイパボリックタンジェント関数）とされる。
【０２５９】
ｆ（ｘ）＝ａ×ｔａｎｈ（ｘ×ｂ）        ・・・（１７）
【０２６０】
なお、式（１７）において、ａおよびｂは、予め定められた定数を示しており、ｘは、画像上の画素の画素値を示している。したがって情報マップＢ１outを求める場合には、ｘは情報マップＢ１inの画素の画素値とされる。
【０２６１】
すなわち、情報マップＢ１inの画素の画素値ｘが、式（１７）に代入されて得られた値ｆ（ｘ）が、その画素と同じ位置にある情報マップＢ１outの画素の画素値とされる。このようにして得られた情報マップＢ１outは、画像処理装置１１において生成される情報マップ、例えば輝度情報マップに相当する。
【０２６２】
なお、関数ｆ（ｘ）は、双曲線余弦関数に限らず、どのような関数であってもよい。例えば、関数ｆ（ｘ）は、理想的なモデルでは、ｘ≧０である場合に値「１」を出力し、ｘ＜０である場合に値「−１」を出力するSigmoid関数とされる。
【０２６３】
以上のようにして、Ｎ個の情報マップＢ１out乃至情報マップＢＮoutが得られると、それらの情報マップＢｎout（但し、１≦ｎ≦Ｎ）が、情報マップごとの情報重みＷｂにより重み付き加算されて、被写体マップＣinとされる。そして、この被写体マップＣinに対して、予め定められた関数ｆ（ｘ）による演算が行われ、その結果として被写体マップＣoutが得られる。さらに、この被写体マップＣoutに被写体重みＷｃが乗算されて正規化され、最終的な被写体マップとされる。
【０２６４】
なお、より詳細には、被写体マップＣinの生成時には、差分画像を生成することなく得られる情報マップ、例えば、顔情報マップなどの情報マップも用いられて重み付き加算が行われる。また、以下では、情報マップＢｎoutに乗算される情報重みＷｂを、情報重みＷｂｎとも称する。
【０２６５】
このようにして、学習時に被写体マップを生成する処理は、Forward Propagationと呼ばれる。被写体マップが生成されると、続いて図１９に示すように、Back Propagationと呼ばれる処理が行われて、差分重みＷａ、情報重みＷｂ、および被写体重みＷｃが更新される。Back Propagationと呼ばれる処理では、生成された被写体マップと、学習画像に対して予め用意された、学習画像上における被写体の領域を示す情報である画像ラベルとが用いられて、各重みを増減させるべき値である重みの差分が求められる。
【０２６６】
ここで、画像ラベルは、学習画像と同じ大きさの画像であり、学習画像上の被写体の領域の画素と同じ位置にある画素の画素値が１とされ、学習画像上の被写体のない領域の画素と同じ位置にある画素の画素値が０とされる画像である。
【０２６７】
Back Propagationでは、まず、被写体マップと画像ラベルとの差分が求められ、その結果得られた画像が評価マップとされる。そして、評価マップと、被写体マップＣinとから、次式（１８）により、被写体重みＷｃを変化させるべき量である被写体重み差分△Ｗｃが求められる。
【０２６８】
△Ｗｃ＝η×Ｃin×△Ｃ                  ・・・（１８）
【０２６９】
式（１８）において、ηは、予め定められた定数である学習速度を示しており、Ｃinは、被写体マップＣinを示している。なお、より詳細には、式（１８）におけるＣinは、被写体マップＣinの１つの画素の画素値とされ、被写体重み差分△Ｗｃは画素ごとに求められる。また、△Ｃは、被写体マップの差分であり、次式（１９）により求められる。
【０２７０】
△Ｃ＝ＥＶ×ｆ’（Ｃin）                ・・・（１９）
【０２７１】
式（１９）において、ＥＶは評価マップを示しており、ｆ’（Ｃin）は、関数ｆ（ｘ）を微分して得られる関数に、被写体マップＣinを代入して得られる値である。関数ｆ（ｘ）を微分して得られる関数ｆ’（ｘ）は、具体的には「ａ×ｂ×ｓｅｃｈ（ｘ×ｂ）2」である。
【０２７２】
このようにして被写体重み差分△Ｗｃが得られると、被写体重み差分△Ｗｃが、これまでの被写体重みＷｃに加算されて更新され、新たな被写体重みＷｃが求められる。
【０２７３】
続いて、更新された被写体重みＷｃと、被写体マップ生成時に生成された情報マップＢｎinとが用いられて次式（２０）により、情報重みＷｂｎを変化させるべき量である情報重み差分△Ｗｂｎが求められる。
【０２７４】
△Ｗｂｎ＝η×Ｂｎin×△Ｂｎ                  ・・・（２０）
【０２７５】
式（２０）において、ηは、予め定められた定数である学習速度を示しており、Ｂｎinは、情報マップＢｎinを示している。なお、より詳細には、式（２０）におけるＢｎinは、情報マップＢｎinの１つの画素の画素値とされ、情報重み差分△Ｗｂｎは画素ごとに求められる。また、△Ｂｎは情報マップの差分であり、次式（２１）により求められる。
【０２７６】
△Ｂｎ＝△Ｃ×ｆ’（Ｂｎin）×Ｗｃ                ・・・（２１）
【０２７７】
式（２１）において、△Ｃは上述した式（１９）を計算して得られる値を示しており、ｆ’（Ｂｎin）は、関数ｆ（ｘ）を微分して得られる関数に、情報マップＢｎinを代入して得られる値である。また、Ｗｃは更新された被写体重みＷｃである。
【０２７８】
このようにして、情報マップＢｎinに対する情報重み差分△Ｗｂｎが得られると、情報重み差分△Ｗｂｎが、情報マップＢｎinの情報重みＷｂｎに加算されて更新され、新たな情報重みＷｂｎが求められる。
【０２７９】
さらに、更新された情報重みＷｂｎと、被写体マップ生成時に生成された差分画像Ａｎ（ｍ）とが用いられて次式（２２）により、差分重みＷａを変化させるべき量である差分重みの差分△Ｗａｎ（ｍ）が求められる。
【０２８０】
△Ｗａｎ（ｍ）＝η×Ａｎ（ｍ）×△Ａｎ（ｍ）              ・・・（２２）
【０２８１】
式（２２）において、ηは、予め定められた定数である学習速度を示しており、Ａｎ（ｍ）は差分画像Ａｎ（ｍ）を示している。なお、より詳細には、式（２２）におけるＡｎ（ｍ）は、差分画像Ａｎ（ｍ）の１つの画素の画素値とされ、差分△Ｗａｎ（ｍ）は画素ごとに求められる。また、△Ａｎ（ｍ）は差分画像の差分であり、次式（２３）により求められる。
【０２８２】
△Ａｎ（ｍ）＝△Ｂｎ×ｆ’（Ａｎ（ｍ））×Ｗｂｎ            ・・・（２３）
【０２８３】
式（２３）において、△Ｂｎは上述した式（２１）を計算して得られる値を示しており、ｆ’（Ａｎ（ｍ））は、関数ｆ（ｘ）を微分して得られる関数に、差分画像Ａｎ（ｍ）を代入して得られる値である。また、Ｗｂｎは更新された情報重みＷｂｎである。
【０２８４】
このようにして、差分画像Ａｎ（ｍ）に対する差分重みの差分△Ｗａｎ（ｍ）が得られると、差分重みの差分△Ｗａｎ（ｍ）が、差分画像Ａｎ（ｍ）の差分重みＷａｎ（ｍ）に加算されて更新され、新たな差分重みＷａｎ（ｍ）が求められる。
【０２８５】
そして、以上のようにして更新された差分重みＷａ、情報重みＷｂ、および被写体重みＷｃと、学習画像とが用いられて上述した処理が繰り返され、最終的な差分重みＷａ、情報重みＷｂ、および被写体重みＷｃが得られる。
【０２８６】
このようにして、ニューラルネットワークによる学習では、予め与えられた重みが用いられて生成された被写体マップと、画像ラベルとから評価マップが生成され、さらに評価マップから逆算により、各重みを変化させるべき変化量である重みの差分が求められる。
【０２８７】
ここで、画像ラベルは、学習画像上の被写体の領域を示す情報であるので、いわば被写体マップの正解を示す情報ということができる。したがって、被写体マップと、画像ラベルとの差分である評価マップは、理想的な被写体マップと、与えられた重みを用いて生成された被写体マップとの誤差を示しており、評価マップを用いて逆算すれば、与えられた重みと、理想的な重みとの誤差が求まる。
【０２８８】
そして、求められた誤差は、与えられた重みを変化させるべき変化量であり、この変化量を重みに加算すれば、現時点における理想的な重みが求まることになる。このようにして新たに求められた重みを用いて被写体マップを生成すれば、その被写体マップにより、画像からより確実に被写体を検出することができるようになる。ニューラルネットワークによる学習では、重みの変化量として、差分△Ｗａｎ（ｍ）、情報重み差分△Ｗｂｎ、および被写体重み差分△Ｗｃが求められ、各重みが更新される。
【０２８９】
［学習装置の構成］
次に、以上において説明した差分重みＷａ、情報重みＷｂ、および被写体重みＷｃを、ニューラルネットワークによる学習により求める学習装置について説明する。
【０２９０】
図２０は、本発明を適用した学習装置の一実施の形態の構成例を示す図である。
【０２９１】
学習装置３０１には、画像データベース３０２および画像ラベルデータベース３０３が接続されている。画像データベース３０２は、学習画像を記録しており、画像ラベルデータベース３０３は、画像データベース３０２に記録されている学習画像についての画像ラベルを記録している。学習装置３０１は、画像データベース３０２および画像ラベルデータベース３０３から取得した学習画像および画像ラベルを用いて学習を行う。
【０２９２】
学習装置３０１は、被写体抽出部３１１および重み算出部３１２から構成される。
【０２９３】
被写体抽出部３１１は、画像データベース３０２から取得した学習画像と、重み算出部３１２から供給された差分重みＷａ、情報重みＷｂ、および被写体重みＷｃとを用いて、学習画像から被写体マップを生成し、重み算出部３１２に供給する。重み算出部３１２は、画像ラベルデータベース３０３から取得した画像ラベルと、被写体抽出部３１１から供給された被写体マップとを用いて、差分重みＷａ、情報重みＷｂ、および被写体重みＷｃを更新し、被写体抽出部３１１に供給する。
【０２９４】
例えば、被写体抽出部３１１は、図２１に示すように構成される。すなわち、被写体抽出部３１１は、輝度情報抽出部３４１、色情報抽出部３４２、エッジ情報抽出部３４３、顔情報抽出部４４、動き情報抽出部４５、および被写体マップ生成部３４４から構成される。なお、図２１において、図１における場合と対応する部分には同一の符号を付してあり、その説明は適宜、省略する。
【０２９５】
輝度情報抽出部３４１は、画像データベース３０２からの学習画像と、重み算出部３１２からの差分重みＷａとを用いて輝度情報マップを生成し、被写体マップ生成部３４４に供給する。色情報抽出部３４２は、画像データベース３０２からの学習画像と、重み算出部３１２からの差分重みＷａとを用いて色情報マップを生成し、被写体マップ生成部３４４に供給する。また、エッジ情報抽出部３４３は、画像データベース３０２からの学習画像と、重み算出部３１２からの差分重みＷａとを用いてエッジ情報マップを生成し、被写体マップ生成部３４４に供給する。
【０２９６】
顔情報抽出部４４は、画像データベース３０２からの学習画像を用いて顔情報マップを生成し、被写体マップ生成部３４４に供給する。動き情報抽出部４５は、画像データベース３０２からの学習画像を用いて動き情報マップを生成し、被写体マップ生成部３４４に供給する。また、輝度情報抽出部３４１乃至エッジ情報抽出部３４３は、差分画像を被写体マップ生成部３４４に供給する。
【０２９７】
被写体マップ生成部３４４は、輝度情報抽出部３４１乃至動き情報抽出部４５からの輝度情報マップ乃至動き情報マップと、重み算出部３１２からの情報重みＷｂおよび被写体重みＷｃとを用いて被写体マップを生成する。また、被写体マップ生成部３４４は、生成した被写体マップと、輝度情報抽出部３４１乃至動き情報抽出部４５からの各情報マップおよび差分画像とを重み算出部３１２に供給する。
【０２９８】
図２１の輝度情報抽出部３４１乃至エッジ情報抽出部３４３は、より詳細には、図２２乃至図２４に示すように構成される。
【０２９９】
図２２は、輝度情報抽出部３４１の構成例を示す図である。
【０３００】
輝度情報抽出部３４１は、輝度画像生成部３７１、ピラミッド画像生成部３７２、差分算出部３７３、および輝度情報マップ生成部３７４から構成される。なお、輝度画像生成部３７１乃至差分算出部３７３のそれぞれは、図２の輝度画像生成部８１乃至差分算出部８３のそれぞれと同様であるので、その説明は省略する。
【０３０１】
輝度情報マップ生成部３７４は、重み算出部３１２からの差分重みＷａを用いて、差分算出部３７３からの差分画像（差分画像Ａｎ（ｍ）に相当する）を重み付き加算する。そして、輝度情報マップ生成部３７４は、重み付き加算により得られた画像（情報マップＢｎinに相当する）を関数ｆ（ｘ）に代入して演算を行うことにより輝度情報マップ（情報マップＢｎoutに相当する）を生成して、被写体マップ生成部３４４に供給する。
【０３０２】
図２３は、図２１の色情報抽出部３４２の構成例を示す図である。
【０３０３】
色情報抽出部３４２は、ＲＧ差分画像生成部４０１、ＢＹ差分画像生成部４０２、ピラミッド画像生成部４０３、ピラミッド画像生成部４０４、差分算出部４０５、差分算出部４０６、色情報マップ生成部４０７、および色情報マップ生成部４０８から構成される。なお、ＲＧ差分画像生成部４０１乃至差分算出部４０６のそれぞれは、図３のＲＧ差分画像生成部１１１乃至差分算出部１１６のそれぞれと同様であるため、その説明は省略する。
【０３０４】
色情報マップ生成部４０７は、重み算出部３１２からの差分重みＷａを用いて、差分算出部４０５からのＲＧの差分の差分画像（差分画像Ａｎ（ｍ）に相当する）を重み付き加算する。そして、色情報マップ生成部４０７は、重み付き加算により得られた画像（情報マップＢｎinに相当する）を関数ｆ（ｘ）に代入して演算を行うことによりＲＧの差分の色情報マップ（情報マップＢｎoutに相当する）を生成する。
【０３０５】
同様に、色情報マップ生成部４０８は、重み算出部３１２からの差分重みＷａを用いて、差分算出部４０６からのＢＹの差分の差分画像を重み付き加算することで得られた画像を関数ｆ（ｘ）に代入して演算を行い、ＢＹの差分の色情報マップを生成する。色情報マップ生成部４０７および色情報マップ生成部４０８は、生成したＲＧの差分の色情報マップおよびＢＹの差分の色情報マップを被写体マップ生成部３４４に供給する。
【０３０６】
図２４は、図２１のエッジ情報抽出部３４３の構成例を示す図である。
【０３０７】
エッジ情報抽出部３４３は、エッジ画像生成部４４１乃至エッジ画像生成部４４４、ピラミッド画像生成部４４５乃至ピラミッド画像生成部４４８、差分算出部４４９乃至差分算出部４５２、およびエッジ情報マップ生成部４５３乃至エッジ情報マップ生成部４５６から構成される。なお、エッジ画像生成部４４１乃至差分算出部４５２のそれぞれは、図４のエッジ画像生成部１４１乃至差分算出部１５２のそれぞれと同様であるので、その説明は省略する。
【０３０８】
エッジ情報マップ生成部４５３は、重み算出部３１２からの差分重みＷａを用いて、差分算出部４４９からの０度方向の差分画像（差分画像Ａｎ（ｍ）に相当する）を重み付き加算する。そして、エッジ情報マップ生成部４５３は、重み付き加算により得られた画像（情報マップＢｎinに相当する）を関数ｆ（ｘ）に代入して演算を行うことにより０度方向のエッジ情報マップ（情報マップＢｎoutに相当する）を生成する。
【０３０９】
同様に、エッジ情報マップ生成部４５４乃至エッジ情報マップ生成部４５６は、重み算出部３１２からの差分重みＷａを用いて、差分算出部４５０乃至差分算出部４５２から供給された各方向の差分画像を重み付き加算して関数ｆ（ｘ）の演算を行い、各方向のエッジ情報マップを生成する。エッジ情報マップ生成部４５３乃至エッジ情報マップ生成部４５６は、生成した各方向のエッジ情報マップを被写体マップ生成部３４４に供給する。
【０３１０】
また、図２０の重み算出部３１２は、より詳細には図２５に示すように構成される。すなわち、重み算出部３１２は、評価マップ生成部４８１、重み差分算出部４８２乃至重み差分算出部４８４、および重み更新部４８５から構成される。
【０３１１】
評価マップ生成部４８１は、被写体マップ生成部３４４からの被写体マップと、画像ラベルデータベース３０３からの画像ラベルとを用いて評価マップを生成し、重み差分算出部４８２に供給する。
【０３１２】
重み差分算出部４８２は、評価マップ生成部４８１からの評価マップと、被写体マップ生成部３４４からの被写体マップＣinとを用いて被写体重み差分△Ｗｃを生成し、重み更新部４８５に供給する。また、重み差分算出部４８２は、被写体重み差分△Ｗｃの算出時に求められた被写体マップの差分△Ｃを、重み差分算出部４８３に供給する。
【０３１３】
重み差分算出部４８３は、重み差分算出部４８２からの被写体マップの差分△Ｃ、被写体マップ生成部３４４からの情報マップＢｎin、および重み更新部４８５からの被写体重みＷｃを用いて情報重み差分△Ｗｂｎを生成し、重み更新部４８５に供給する。また、重み差分算出部４８３は、情報重み差分△Ｗｂｎの算出時に求められた情報マップの差分△Ｂｎを、重み差分算出部４８４に供給する。
【０３１４】
重み差分算出部４８４は、重み差分算出部４８３からの情報マップの差分△Ｂｎ、被写体マップ生成部３４４からの差分画像Ａｎ（ｍ）、および重み更新部４８５からの情報重みＷｂｎを用いて差分重みの差分△Ｗａｎ（ｍ）を生成し、重み更新部４８５に供給する。
【０３１５】
重み更新部４８５は、重み差分算出部４８２乃至重み差分算出部４８４からの被写体重み差分△Ｗｃ、情報重み差分△Ｗｂｎ、および差分重みの差分△Ｗａｎ（ｍ）を用いて、被写体重みＷｃ、情報重みＷｂ、および差分重みＷａを更新する。また、重み更新部４８５は、更新された被写体重みおよび情報重みを被写体マップ生成部３４４に供給するとともに、差分重みを輝度情報抽出部３４１乃至エッジ情報抽出部３４３に供給するか、または被写体重み、情報重み、および差分重みを学習により得られた最終的な重みとして出力する。
【０３１６】
［学習装置の動作］
次に、図２６のフローチャートを参照して、学習装置３０１が学習画像および画像ラベルを用いて被写体重みＷｃ、情報重みＷｂ、および差分重みＷａを学習により求める処理である学習処理を説明する。
【０３１７】
ステップＳ２５１において、輝度情報抽出部３４１は、輝度情報抽出処理を行って輝度情報マップを生成し、生成した輝度情報マップおよび差分画像を被写体マップ生成部３４４に供給する。なお、輝度情報抽出処理は、図９を参照して説明した輝度情報抽出処理と同様であるので、その説明は省略する。
【０３１８】
但し、ステップＳ２５１においては、画像データベース３０２からの学習画像が用いられて輝度画像が生成される。また、図９のステップＳ５４に対応する処理において、輝度情報マップ生成部３７４は、重み更新部４８５から供給された差分重みＷａを用いて、差分算出部３７３からの差分画像を重み付き加算し、輝度情報マップを生成する。
【０３１９】
すなわち、差分画像Ａｎ（ｍ）としての輝度の差分画像が差分重みＷａｎ（ｍ）により重み付き加算されて情報マップＢｎinとされ、さらに情報マップＢｎinに対して式（１７）の演算が行われて、情報マップＢｎoutとしての輝度情報マップが生成される。
【０３２０】
情報マップＢｎinの生成時には、輝度の各差分画像Ａｎ（ｍ）の画素の画素値に、差分画像ごとの差分重みＷａｎ（ｍ）が乗算されて、差分重みが乗算された、同じ位置にある各差分画像の画素の画素値の総和が、情報マップＢｎinの画素の画素値とされる。また、式（１７）の演算では、情報マップＢｎinの各画素の画素値ｘを式（１７）に代入して得られた値が、情報マップＢｎoutとしての輝度情報マップの画素の画素値とされる。
【０３２１】
輝度情報マップ生成部３７４は、差分算出部３７３からの差分画像と、生成した輝度情報マップ、および情報マップＢｎinとしての輝度情報マップとを被写体マップ生成部３４４に供給する。
【０３２２】
ステップＳ２５２において、色情報抽出部３４２は、色情報抽出処理を行って、色情報マップを生成し、生成した色情報マップおよび差分画像を被写体マップ生成部３４４に供給する。なお、色情報抽出処理は、図１０を参照して説明した色情報抽出処理と同様であるので、その説明は省略する。
【０３２３】
但し、ステップＳ２５２においては、画像データベース３０２からの学習画像が用いられてＲＧ差分画像およびＢＹ差分画像が生成される。また、図１０のステップＳ８５に対応する処理において、色情報マップ生成部４０７および色情報マップ生成部４０８は、重み更新部４８５からの差分重みＷａを用いて、差分算出部４０５および差分算出部４０６からの差分画像を重み付き加算し、色情報マップを生成する。
【０３２４】
すなわち、差分画像Ａｎ（ｍ）としてのＲＧの差分の差分画像、またはＢＹの差分の差分画像が差分重みＷａｎ（ｍ）により重み付き加算されて情報マップＢｎinとされる。さらに情報マップＢｎinに対して式（１７）の演算が行われて、情報マップＢｎoutとしてのＲＧの差分の色情報マップ、またはＢＹの差分の色情報マップが生成される。
【０３２５】
色情報マップ生成部４０７および色情報マップ生成部４０８は、差分算出部４０５および差分算出部４０６からの差分画像と、生成した色情報マップ、および情報マップＢｎinとしての色情報マップとを被写体マップ生成部３４４に供給する。
【０３２６】
ステップＳ２５３において、エッジ情報抽出部３４３は、エッジ情報抽出処理を行ってエッジ情報マップを生成し、生成したエッジ情報マップおよび差分画像を被写体マップ生成部３４４に供給する。なお、エッジ情報抽出処理は、図１１を参照して説明したエッジ情報抽出処理と同様であるので、その説明は省略する。
【０３２７】
但し、ステップＳ２５３においては、画像データベース３０２からの学習画像が用いられて各方向のエッジ画像が生成される。また、図１１のステップＳ１１４に対応する処理において、エッジ情報マップ生成部４５３乃至エッジ情報マップ生成部４５６は、重み更新部４８５からの差分重みＷａを用いて、差分算出部４４９乃至差分算出部４５２からの差分画像を重み付き加算し、エッジ情報マップを生成する。
【０３２８】
すなわち、差分画像Ａｎ（ｍ）としての各方向の差分画像が、それらの方向ごとに差分重みＷａｎ（ｍ）により重み付き加算されて情報マップＢｎinとされる。さらに情報マップＢｎinに対して式（１７）の演算が行われて、情報マップＢｎoutとして、０度、４５度、９０度、１３５度の各方向のエッジ情報マップが生成される。
【０３２９】
エッジ情報マップ生成部４５３乃至エッジ情報マップ生成部４５６は、差分算出部４４９乃至差分算出部４５２からの差分画像と、生成した各方向のエッジ情報マップ、および情報マップＢｎinとしての各方向のエッジ情報マップとを被写体マップ生成部３４４に供給する。
【０３３０】
ステップＳ２５４において、顔情報抽出部４４は、画像データベース３０２からの学習画像を用いて顔情報抽出処理を行って、情報マップＢｎoutとしての顔情報マップを生成し、被写体マップ生成部３４４に供給する。なお、この顔情報抽出処理は、図１２を参照して説明した顔情報抽出処理と同様であるので、その説明は省略する。
【０３３１】
ステップＳ２５５において、動き情報抽出部４５は、画像データベース３０２からの学習画像を用いて動き情報抽出処理を行って、情報マップＢｎoutとしての動き情報マップを生成し、被写体マップ生成部３４４に供給する。なお、この動き情報抽出処理は、図１３を参照して説明した動き情報抽出処理と同様であるので、その説明は省略する。
【０３３２】
ステップＳ２５６において、被写体マップ生成部３４４は、輝度情報抽出部３４１乃至動き情報抽出部４５からの輝度情報マップ乃至動き情報マップと、重み更新部４８５からの情報重みＷｂおよび被写体重みＷｃとを用いて、被写体マップを生成する。
【０３３３】
すなわち、被写体マップ生成部３４４は、情報マップＢｎoutとしての輝度情報マップ乃至動き情報マップに、情報マップごとの情報重みＷｂｎを乗算して重み付き加算し、被写体マップＣinを生成する。ここで、情報重みＷｂｎが乗算された、各情報マップの同じ位置の画素の画素値の総和が、被写体マップＣinの画素の画素値とされる。
【０３３４】
また、被写体マップ生成部３４４は、被写体マップＣinの各画素の画素値ｘを式（１７）に代入して得られた値を被写体マップＣoutの画素の画素値とし、さらに被写体マップＣoutの各画素の画素値に被写体重みＷｃを乗算して正規化し、最終的な被写体マップとする。
【０３３５】
被写体マップ生成部３４４は、生成した、最終的な被写体マップを評価マップ生成部４８１に供給するとともに、被写体マップＣinを重み差分算出部４８２に供給する。また、被写体マップ生成部３４４は、輝度情報抽出部３４１乃至動き情報抽出部４５からの各情報マップＢｎinを重み差分算出部４８３に供給し、輝度情報抽出部３４１乃エッジ情報抽出部３４３からの各差分画像を重み差分算出部４８４に供給する。なお、この場合、情報マップＢｎoutとして生成された、顔情報マップおよび動き情報マップは、情報マップＢｎinとして扱われ、重み差分算出部４８３に供給される。
【０３３６】
ステップＳ２５７において、評価マップ生成部４８１は、被写体マップ生成部３４４からの被写体マップと、画像ラベルデータベース３０３からの画像ラベルとの差分を求めることにより、評価マップを生成する。すなわち、被写体マップの所定の画素を注目画素とすると、注目画素の画素値と、注目画素と同じ位置にある画像ラベルの画素の画素値との差分が求められ、その差分が注目画素と同じ位置の評価マップの画素の画素値とされる。評価マップ生成部４８１は、生成した評価マップを重み差分算出部４８２に供給する。
【０３３７】
ステップＳ２５８において、重み更新部４８５は、被写体重みＷｃを更新する。すなわち、重み差分算出部４８２は、評価マップ生成部４８１から供給された評価マップＥＶと、被写体マップ生成部３４４からの被写体マップＣinとを用いて、上述した式（１８）および式（１９）を計算し、被写体重み差分△Ｗｃを求める。
【０３３８】
重み差分算出部４８２は、求めた被写体重み差分△Ｗｃを重み更新部４８５に供給するとともに、式（１９）の計算により求められた被写体マップの差分△Ｃを重み差分算出部４８３に供給する。そして、重み更新部４８５は、保持している被写体重みＷｃに重み差分算出部４８２からの被写体重み差分△Ｗｃを加算して、被写体重みＷｃを更新する。
【０３３９】
ステップＳ２５９において、重み更新部４８５は、情報重みＷｂｎを更新する。すなわち、重み差分算出部４８３は、重み差分算出部４８２から供給された被写体マップの差分△Ｃ、被写体マップ生成部３４４からの情報マップＢｎin、および重み更新部４８５からの更新された被写体重みＷｃを用いて、上述した式（２０）および式（２１）を計算し、情報重み差分△Ｗｂｎを求める。この情報重み差分△Ｗｂｎは、情報マップごと、つまり輝度情報マップ、ＲＧの差分の色情報マップ、ＢＹの差分の色情報マップ、０度方向乃至１３５度の各方向のエッジ情報マップ、顔情報マップ、および動き情報マップのそれぞれについて求められる。
【０３４０】
重み差分算出部４８３は、求めた情報重み差分△Ｗｂｎを重み更新部４８５に供給するとともに、式（２１）の計算により求められた情報マップの差分△Ｂｎを重み差分算出部４８４に供給する。そして、重み更新部４８５は、保持している情報重みＷｂｎに重み差分算出部４８３からの情報重み差分△Ｗｂｎを加算して、情報重みＷｂｎを更新する。
【０３４１】
これにより、輝度情報マップ、ＲＧの差分の色情報マップ、ＢＹの差分の色情報マップ、０度方向乃至１３５度の各方向のエッジ情報マップ、顔情報マップ、および動き情報マップのそれぞれの情報重みＷｂが更新される。
【０３４２】
ステップＳ２６０において、重み更新部４８５は、差分重みＷａを更新する。すなわち、重み差分算出部４８４は、重み差分算出部４８３から供給された情報マップの差分△Ｂｎ、被写体マップ生成部３４４からの差分画像Ａｎ（ｍ）、および重み更新部４８５からの更新された情報重みＷｂｎを用いて、上述した式（２２）および式（２３）を計算し、差分重みの差分△Ｗａｎ（ｍ）を求める。この差分重みの差分△Ｗａｎ（ｍ）は、各情報マップについて、差分画像ごとに求められる。例えば、上述したように、輝度情報マップは５つの輝度の差分画像から求められるので、輝度情報マップについて、それらの５つの差分画像ごとに差分重みの差分△Ｗａｎ（ｍ）が求められる。
【０３４３】
重み差分算出部４８４は、求めた差分△Ｗａｎ（ｍ）を重み更新部４８５に供給し、重み更新部４８５は、保持している差分重みＷａｎ（ｍ）に重み差分算出部４８４からの差分△Ｗａｎ（ｍ）を加算して、差分重みＷａｎ（ｍ）を更新する。
【０３４４】
以上の処理により、更新された差分重みＷａｎ（ｍ）、情報重みＷｂｎ、および被写体重みＷｃが得られる。
【０３４５】
ステップＳ２６１において、重み算出部３１２は、差分重みＷａｎ（ｍ）、情報重みＷｂｎ、および被写体重みＷｃを繰り返し更新する処理を終了するか否かを判定する。例えば、最後にステップＳ２５７において求められた評価マップの画素の画素値の最大値の絶対値が、予め定められた閾値以下であり、かつ予め定められた回数以上、差分重み、情報重み、および被写体重みの更新が行われた場合、処理を終了すると判定される。
【０３４６】
すなわち、画像から生成される情報マップと、求められた差分重みＷａｎ（ｍ）、情報重みＷｂｎ、および被写体重みＷｃとを用いて、画像から充分な精度で被写体が抽出される被写体マップが得られる場合に、処理を終了すると判定される。
【０３４７】
ステップＳ２６１において、処理を終了しないと判定された場合、重み更新部４８５は、更新された差分重みＷａｎ（ｍ）を輝度情報抽出部３４１乃至エッジ情報抽出部３４３に供給し、情報重みＷｂｎおよび被写体重みＷｃを被写体マップ生成部３４４に供給する。そして、その後、処理はステップＳ２５１に戻り、上述した処理が繰り返される。
【０３４８】
なお、繰り返し行われるステップＳ２５１乃至ステップＳ２５５の処理においては、これまで用いられていた学習画像と同じ画像が用いられて、各情報マップが生成される。したがって、ステップＳ２５１乃至ステップＳ２５３の処理では、前回用いられた差分画像がそのまま用いられて情報マップが生成されるようにしてもよい。また、ステップＳ２５４およびステップＳ２５５の処理においても、前回用いられた情報マップが、そのまま生成された情報マップとされてもよい。
【０３４９】
一方、ステップＳ２６１において、処理を終了すると判定された場合、画像から充分な精度で被写体が抽出される被写体マップを得るための重みが求められたので、処理はステップＳ２６２に進む。
【０３５０】
ステップＳ２６２において、重み更新部４８５は、更新された差分重みＷａｎ（ｍ）、情報重みＷｂｎ、および被写体重みＷｃを、学習により求められた最終的な重みとして出力し、学習処理は終了する。
【０３５１】
このようにして、学習装置３０１は、一般的な被写体が含まれる学習画像を用いて学習処理を行い、被写体マップを生成するのに用いる重みを生成する。したがって、学習により得られた重みを用いて被写体マップを生成すれば、その被写体マップにより、画像から一般的な被写体をより確実に検出することができるようになる。
【０３５２】
また、画像から、被写体が他の領域よりも多く有すると推定される情報を抽出して得られる情報マップと、重みとが用いられて被写体マップが生成される場合に、ニュートラルネットワークによる学習により重みを生成することで、簡単に重みを得ることができる。
【０３５３】
すなわち、差分画像から情報マップを生成し、情報マップから被写体マップを生成する構造は、ニュートラルネットワークのモデルによく似ており、ニュートラルネットワークと呼ばれる学習方法を、重みの学習に適用することにより、簡単な処理で重みを求めることができる。また、ニュートラルネットワークによる学習では、各情報マップの重みや、各差分画像の重みを並列処理により求めることができるので、より迅速に重みを生成することができる。
【０３５４】
なお、学習装置３０１では、最後に更新された差分重みＷａｎ（ｍ）、情報重みＷｂｎ、および被写体重みＷｃを、最終的な重みとして出力すると説明したが、更新により求められた重みのうち、最も評価の高い重みが最終的な重みとして出力されるようにしてもよい。そのような場合、重みが更新されるごとに、その重みと、その重みを用いて得られた評価マップとが記録され、所定の回数だけ重みが更新された後、記録されている重みのうち、評価マップの画素の画素値の絶対値から求まる評価値の最も高い重みが出力される。
【０３５５】
以上において説明した学習装置３０１は、例えば、上述した画像処理装置１１とともに画像評価システムを構成する装置として、撮像装置などに組み込まれるようにしてもよい。
【０３５６】
そのような場合、画像評価システムは、例えば、図２７に示すように構成される。すなわち、画像評価システムは、画像処理装置１１、学習装置３０１、画像データベース３０２、画像ラベルデータベース３０３、表示部５１１、および操作入力受付部５１２から構成される。なお、図２７において、図１および図２０における場合と対応する部分には、同一の符号を付してあり、その説明は適宜、省略する。
【０３５７】
この画像評価システムでは、撮像により得られた入力画像、または画像データベース３０２に予め記録されている画像が学習画像とされる。
【０３５８】
例えば、画像データベース３０２に記録されている画像が学習画像として用いられる場合、学習装置３０１は、画像データベース３０２から取得した学習画像と、画像ラベルデータベース３０３から取得した画像ラベルとを用いて学習処理を行う。そして、学習処理により得られた差分重みＷａｎ（ｍ）、情報重みＷｂｎ、および被写体重みＷｃは、学習装置３０１から画像処理装置１１に供給される。画像処理装置１１は、学習装置３０１から供給された重みと、入力された入力画像とを用いて図８を参照して説明した画像評価処理を行い、入力画像に対するスコアを求めて出力する。
【０３５９】
これに対して、入力画像が用いられて学習が行われる場合、入力画像は、表示部５１１、画像処理装置１１、および学習装置３０１に供給される。表示部５１１は、例えば、液晶ディスプレイなどからなり、入力された入力画像を表示する。
【０３６０】
また、表示部５１１には、例えば、タッチパネルなどからなる操作入力受付部５１２が重畳されており、ユーザは、操作入力受付部５１２に対する操作を行って、表示部５１１に表示された入力画像のうち、被写体とすべき領域を指定する。すると、操作入力受付部５１２は、ユーザの操作に応じて画像ラベルを生成し、学習装置３０１に供給する。
【０３６１】
例えば、操作入力受付部５１２は、これから生成しようとするラベル画像における、入力画像上のユーザにより指定された領域と同じ領域内の画素の画素値を１とし、それ以外の領域の画素の画素値を０とする。すなわち、ラベル画像における、入力画像上のユーザにより指定されていない領域と同じ領域の画素の画素値は０とされる。
【０３６２】
学習装置３０１は、入力された入力画像を学習画像として、学習画像と、操作入力受付部５１２から供給された画像ラベルとを用いて学習処理を行い、差分重みＷａｎ（ｍ）、情報重みＷｂｎ、および被写体重みＷｃを生成する。そして、学習装置３０１は、生成した重みを画像処理装置１１に供給し、画像処理装置１１は、学習装置３０１からの重みを用いて画像評価処理を行い、入力画像に対するスコアを求めて出力する。
【０３６３】
したがって、このような画像評価システムが撮像装置に内蔵されていれば、撮像装置は、画像処理装置１１から出力されたスコアに基づいて、撮像された入力画像がベストショットであるか否か、入力画像に対するスコアなどを表示することができる。
【０３６４】
なお、操作入力受付部５１２は、タッチパネルに限らず、ファインダを覗くユーザの視線の方向を、赤外線を利用して検出するセンサなどから構成されるようにしてもよい。そのような場合、操作入力受付部５１２には、入力画像が供給され、入力画像上における、センサにより検出された視線方向によって特定される領域に含まれる物体が被写体とされて、画像ラベルが生成される。
【０３６５】
また、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０３６６】
図２８は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０３６７】
コンピュータにおいて、CPU（Central Processing Unit）６０１，ROM（Read Only Memory）６０２，RAM（Random Access Memory）６０３は、バス６０４により相互に接続されている。
【０３６８】
バス６０４には、さらに、入出力インターフェース６０５が接続されている。入出力インターフェース６０５には、キーボード、マウス、マイクロホンなどよりなる入力部６０６、ディスプレイ、スピーカなどよりなる出力部６０７、ハードディスクや不揮発性のメモリなどよりなる記録部６０８、ネットワークインターフェースなどよりなる通信部６０９、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア６１１を駆動するドライブ６１０が接続されている。
【０３６９】
以上のように構成されるコンピュータでは、CPU６０１が、例えば、記録部６０８に記録されているプログラムを、入出力インターフェース６０５及びバス６０４を介して、RAM６０３にロードして実行することにより、上述した一連の処理が行われる。
【０３７０】
コンピュータ（CPU６０１）が実行するプログラムは、例えば、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア６１１に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【０３７１】
そして、プログラムは、リムーバブルメディア６１１をドライブ６１０に装着することにより、入出力インターフェース６０５を介して、記録部６０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部６０９で受信し、記録部６０８にインストールすることができる。その他、プログラムは、ROM６０２や記録部６０８に、あらかじめインストールしておくことができる。
【０３７２】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０３７３】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０３７４】
【図１】本発明を適用した画像処理装置の一実施の形態の構成例を示す図である。
【図２】輝度情報抽出部の構成例を示す図である。
【図３】色情報抽出部の構成例を示す図である。
【図４】エッジ情報抽出部の構成例を示す図である。
【図５】顔情報抽出部の構成例を示す図である。
【図６】動き情報抽出部の構成例を示す図である。
【図７】ぼけ判定部の構成例を示す図である。
【図８】画像評価処理を説明するフローチャートである。
【図９】輝度情報抽出処理を説明するフローチャートである。
【図１０】色情報抽出処理を説明するフローチャートである。
【図１１】エッジ情報抽出処理を説明するフローチャートである。
【図１２】顔情報抽出処理を説明するフローチャートである。
【図１３】動き情報抽出処理を説明するフローチャートである。
【図１４】ぼけ判定処理を説明するフローチャートである。
【図１５】エッジマップの生成について説明する図である。
【図１６】ローカルマックスの生成について説明する図である。
【図１７】エッジの構造の例を示す図である。
【図１８】ニューラルネットワークによる学習の概要を説明する図である。
【図１９】ニューラルネットワークによる学習の概要を説明する図である。
【図２０】本発明を適用した学習装置の一実施の形態の構成例を示す図である。
【図２１】被写体抽出部の構成例を示す図である。
【図２２】輝度情報抽出部の構成例を示す図である。
【図２３】色情報抽出部の構成例を示す図である。
【図２４】エッジ情報抽出部の構成例を示す図である。
【図２５】重み算出部の構成例を示す図である。
【図２６】学習処理を説明するフローチャートである。
【図２７】画像評価システムの構成例を示す図である。
【図２８】コンピュータの構成例を示す図である。
【符号の説明】
【０３７５】
１１  画像処理装置，  ４１  輝度情報抽出部，  ４２  色情報抽出部，  ４３  エッジ情報抽出部，  ４４  顔情報抽出部，  ４５  動き情報抽出部，  ４６  被写体マップ生成部，  ５１  ぼけ判定部，  ５４  スコア算出部，  ８４  輝度情報マップ生成部，  １１７  色情報マップ生成部，  １１８  色情報マップ生成部，  １５３乃至１５６  エッジ情報マップ生成部，  １８２  顔情報マップ生成部，  ２１４  動き情報マップ生成部，  ２４１  エッジマップ生成部，  ２４５  エッジポイント抽出部，  ２４６  抽出量判定部，  ２４７  エッジ分析部，  ２４８  ぼけ度検出部，  ３０１  学習装置，  ３１１  被写体抽出部，  ３１２  重み算出部
【図１】
2010055194.tif 000010
【図２】
2010055194.tif 000011
【図３】
2010055194.tif 000012
【図４】
2010055194.tif 000013
【図５】
2010055194.tif 000014
【図６】
2010055194.tif 000015
【図７】
2010055194.tif 000016
【図８】
2010055194.tif 000017
【図９】
2010055194.tif 000018
【図１０】
2010055194.tif 000019
【図１１】
2010055194.tif 000020
【図１２】
2010055194.tif 000021
【図１３】
2010055194.tif 000022
【図１４】
2010055194.tif 000023
【図１５】
2010055194.tif 000024
【図１６】
2010055194.tif 000025
【図１７】
2010055194.tif 000026
【図１８】
2010055194.tif 000027
【図１９】
2010055194.tif 000028
【図２０】
2010055194.tif 000029
【図２１】
2010055194.tif 000030
【図２２】
2010055194.tif 000031
【図２３】
2010055194.tif 000032
【図２４】
2010055194.tif 000033
【図２５】
2010055194.tif 000034
【図２６】
2010055194.tif 000035
【図２７】
2010055194.tif 000036
【図２８】
2010055194.tif 000037