(57)【要約】【課題】画像の意味的シーンを判別する。【解決手段】入力された画像から、顔検出部１０２は顔の位置、大きさ、向きを検出し、パーツ検出部１０３は、顔の目や鼻といったパーツを検出し、属性検出部１０４は、性別やメガネをかけているといった属性を検出する。顔シーン特徴抽出部１０５は、顔の位置、向き、属性といった項目からなる特徴量を抽出する。シーン判別部１０６には、予め特徴量から算出された判別器が記憶されている。シーン判別部１０６は、判別器による判別を実行し、処理対象とされているシーンを特定する。本発明は、デジタルカメラなどに適用することができる。【選択図】図１１
2010092199.tif 000002
【特許請求の範囲】
【請求項１】
画像から顔を検出する顔検出手段と、
前記顔検出手段により検出された顔の属性を判別する判別手段と、
前記顔検出手段により検出された顔と、前記判別手段により判別された属性から、前記画像の特徴量を生成する生成手段と、
前記生成手段により生成された前記特徴量から、前記画像が所定のシーンに該当するか否かを判別するための情報を学習する学習手段と
を備える情報処理装置。
【請求項２】
前記顔検出手段は、前記画像内における顔の位置、顔の大きさ、顔の向き、顔の個数を少なくとも検出し、
前記生成手段は、前記顔の位置、顔の大きさを、前記画像の大きさに依存しない値に変換して前記特徴量を生成する
請求項１に記載の情報処理装置。
【請求項３】
前記属性は、表情、性別、年齢、人種、目を閉じているか否か、メガネ装着、カメラ目線、照明の均一性のうちの少なくとも１つである
請求項１に記載の情報処理装置。
【請求項４】
前記特徴量生成手段は、前記画像に写っているＭ個の顔毎に、Ｎ次元の情報を有し、総計で、Ｍ×Ｎ次元としたベクトルを前記特徴量とする
請求項１に記載の情報処理装置。
【請求項５】
前記学習手段は、ブースティングにより学習する
請求項１に記載の情報処理装置。
【請求項６】
前記学習手段により学習された情報に基づき、処理対象とされた画像のシーンを判別する
請求項１に記載の情報処理装置。
【請求項７】
画像から顔を検出し、
検出された顔の属性を判別し、
検出された顔と、判別された属性から、前記画像の特徴量を生成し、
その生成された前記特徴量から、前記画像が所定のシーンに該当するか否かを判別するための情報を学習する
ステップを含む情報処理方法。
【請求項８】
画像から顔を検出し、
検出された顔の属性を判別し、
検出された顔と、判別された属性から、前記画像の特徴量を生成し、
その生成された前記特徴量から、前記画像が所定のシーンに該当するか否かを判別するための情報を学習する
ステップを含む処理を実行するコンピュータが読み取り可能なプログラム。
【請求項９】
請求項８に記載のプログラムを記録している
記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置および方法、プログラム、並びに記録媒体に関し、特に、画像をシーン毎に分類することをできるようにした情報処理装置および方法、プログラム、並びに記録媒体に関する。
【背景技術】
【０００２】
近年、デジタルカメラなどが普及し、ユーザが画像を扱う機会が増えつつある。例えば、デジタルカメラなどで撮像された画像は、増加傾向にあるため、ユーザは、撮像した画像を何らかの条件のもと、分類し、管理できることを望んでいる。また、撮像される画像の大半には、人の顔が撮像されていることが多い。このようなことを考慮し、例えば、画像に人が写っているか否かで分類したり、さらに人が写っているときにはその人の顔を判別し分類したりすることが提案されている。そのようなことを実現するためには、人の顔や人の顔の向きなどを判別することが必要である。（例えば、特許文献１，２参照）
【特許文献１】特開２００５−２８４４８７号公報
【特許文献２】特開２００５−１５７６７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、画像に写っているシーンをさらに判別するための研究もされている。そのような研究のうち、性能の高い手法の多くは、画像中に現れる局所的な特徴パターン、例えば色、エッジといったパターンの出現頻度が用いられる。その出現頻度をベクトル化し、そのベクトル化した特徴空間を用いる。その特徴空間において、与えられたシーンのラベルとの関係を統計学習し識別器を得て、それに基づいて判別を行う。
【０００４】
このような手法では、風景、町並み、人物、料理、など全体の見た目が大きく違うシーンを大別することは可能であるかもしれないが、シーンの意味的理解をしたうえでのシーンの判別、例えば、旅行というシーンである、集合写真というシーンであるといったシーンの判別は困難である。
【０００５】
また、撮影される画像の７０％程度は人物写真であるという統計がある。よって、人物写真であるのと、人物写真でないのとを分類しただけでは、例えば画像検索などの用途のために分類としては、十分な機能を発揮していないことになる。よって、十分に機能させるためには、人物写真をさらに何らかの条件に基づいて分類する必要がある。
【０００６】
本発明は、このような状況に鑑みてなされたものであり、意味的理解をした画像のシーンを判別できるようにするものである。
【課題を解決するための手段】
【０００７】
本発明の一側面の情報処理装置は、画像から顔を検出する顔検出手段と、前記顔検出手段により検出された顔の属性を判別する判別手段と、前記顔検出手段により検出された顔と、前記判別手段により判別された属性から、前記画像の特徴量を生成する生成手段と、前記生成手段により生成された前記特徴量から、前記画像が所定のシーンに該当するか否かを判別するための情報を学習する学習手段とを備える。
【０００８】
前記顔検出手段は、前記画像内における顔の位置、顔の大きさ、顔の向き、顔の個数を少なくとも検出し、前記生成手段は、前記顔の位置、顔の大きさを、前記画像の大きさに依存しない値に変換して前記特徴量を生成するようにすることができる。
【０００９】
前記属性は、表情、性別、年齢、人種、目を閉じているか否か、メガネ装着、カメラ目線、照明の均一性のうちの少なくとも１つであるようにすることができる。
【００１０】
前記特徴量生成手段は、前記画像に写っているＭ個の顔毎に、Ｎ次元の情報を有し、総計で、Ｍ×Ｎ次元としたベクトルを前記特徴量とするようにすることができる。
【００１１】
前記学習手段は、ブースティングにより学習するようにすることができる。
【００１２】
前記学習手段により学習された情報に基づき、処理対象とされた画像のシーンを判別するようにすることができる。
【００１３】
本発明の一側面の情報処理方法は、画像から顔を検出し、検出された顔の属性を判別し、検出された顔と、判別された属性から、前記画像の特徴量を生成し、その生成された前記特徴量から、前記画像が所定のシーンに該当するか否かを判別するための情報を学習するステップを含む。
【００１４】
本発明の一側面のプログラムは、画像から顔を検出し、検出された顔の属性を判別し、検出された顔と、判別された属性から、前記画像の特徴量を生成し、その生成された前記特徴量から、前記画像が所定のシーンに該当するか否かを判別するための情報を学習するステップを含む処理を実行するコンピュータが読み取り可能なプログラム。
【００１５】
本発明の一側面の記録媒体は、前記プログラムを記録している。
【００１６】
本発明の一側面の情報処理装置および方法、並びにプログラムにおいは、画像から顔が検出され、その顔の属性が判別され、その検出された顔と判別された属性から、画像の特徴量が生成され、画像が所定のシーンに該当するか否かを判別するための情報が学習される。
【発明の効果】
【００１７】
本発明の一側面によれば、意味的理解をした画像のシーンを判別できるようにするものである。
【発明を実施するための最良の形態】
【００１８】
以下に、本発明の実施の形態について図面を参照して説明する。
【００１９】
まず本発明の概要を説明する。本発明を適用することで、例えば、デジタルカメラで撮像された画像を、シーン毎に分類するための学習を行い、その学習結果を用いて、画像をシーン毎に分類することが可能となる。本発明は、例えば、デジタルカメラに適用され、撮像された画像をシーン毎に分類したり、その分類結果に応じた加工を画像に施したりすることが可能となる。また、パーソナルコンピュータなどに適用され、蓄積されている画像をシーン毎に分類し、管理したり、その分類結果に応じた加工を画像に施したりすることが可能となる。
【００２０】
本実施の形態においては、シーン毎に画像を分類するための学習を、アンサンブル学習（集団学習）を利用する。集団学習によって得られる学習機械は、多数の弱仮説と、これらを組み合わせる結合機（combiner）とからなる。入力によらず、固定した重みで弱仮説の出力を統合する結合機の一例としてブースティングがある。ブースティングにおいては、前に生成した弱仮説の学習結果を使用して、間違いが発生した学習サンプル（例題）の重みを増すように、学習サンプルが従う分布が加工され、この分布に基づき新たな弱仮説の学習が行われる。これにより不正解が多く対象物として判別が難しい学習サンプルの重みが相対的に上昇し、結果的に重みが大きい、即ち判別が難しい学習サンプルを正解させるような弱判別器が逐次選択される。この場合、学習における弱仮説の生成は逐次的に行われ、後から生成された弱仮説はその前に生成された弱仮説に依存することになる。
【００２１】
対象物を検出する際には、上述のようにして学習により逐次生成された多数の弱仮説の判別結果が使用される。例えばAdaBoost（アダブースト）の場合は、この学習により生成された弱仮説（以下、弱判別器という。）全ての判別結果（対象物であれば１、非対象物であれば−１）が結合機に供給され、結合機は、全判別結果に対して、対応する弱判別器毎に学習時に算出された信頼度を重み付け加算し、その重み付き多数決の結果を出力し、結合機の出力値を評価することで、入力された画像が対象物か否かを選択する。
【００２２】
弱判別器は、なんらかの特徴量を使用して、対象物かまたは非対象物であるかの判定を行うものである。本実施の形態の場合、後述するように、所定のシーンに該当する画像であるか否かの判定を行うものである。
【００２３】
図１に本発明を適用した学習装置の一実施の形態の構成を示す。図１に示した学習装置１０は、画像入力部１１、顔検出部１２、パーツ検出部１３、属性判別部１４、顔シーン特徴抽出部１５、および学習部１６を含む構成とされる。
【００２４】
画像入力部１１は、所定のシーンであるとしてラベリングされた画像（ポジティブ画像を記述する）と、所定のシーンには該当しないとラベリングされた画像（ネガティブ画像と記述する）を入力する。画像入力部１１は、画像データを入力するインターフェースを含む構成とされる。
【００２５】
顔検出部１２は、画像入力部１１に入力された画像から、人の顔を検出する。パーツ検出部１３は、顔検出部１２により検出された顔から、目、鼻、口といった顔を構成するパーツを検出する。顔を検出し、さらにパーツを検出することで、顔の位置、画像内における顔の領域などを、より正確に検出することが可能となる。また、目の位置や鼻の位置などにより、その人が属している属性を判別することが可能である。そこで、属性判別部１４は、パーツ検出部１３により検出されたパーツ毎の位置関係などにより、その人の属性を判断する。属性としては、男、女、大人、子供、老人といった属性であり、詳細は後述する。
【００２６】
なお、ここでは、パーツ検出部１３を設け、検出された顔から、パーツをさらに検出し、その検出されたパーツの情報も用いて、属性の判別を行う場合を例に挙げて説明するが、パーツ検出部１３を設けない構成とすることも可能である。すなわち、パーツ検出部１３を設けずに、顔検出部１２により検出された顔から、属性判別部１４が属性を判別するように構成することも可能である。
【００２７】
ここまでの処理により、画像内の顔や、その顔の向きが検出され、それらの情報から属性が判別されている。このような種々の情報を用いて、顔シーン特徴抽出部１５は、画像から抽出された各種の特徴量を、顔シーン特徴量にまとめる。そのような顔シーン特徴量から、後述するような処理を行うことにより、学習部１６は、画像をシーン毎に分類するための情報（判別器）を学習する。
【００２８】
次に、図２のフローチャートを参照し、図１２に示した学習装置１０における学習について説明する。
【００２９】
ステップＳ１１において、学習装置１０の画像入力部１１は、画像を取得する。画像入力部１１に供給される画像は、予めユーザによりラベリングされている。例えば、パーティのシーンを判別するための学習を行わせる場合には、ユーザによりパーティのシーンであると判断される画像に対して、パーティというラベルが付けられる。パーティであるというラベルが付けられた画像は、ポジティブ画像として扱われる。一方、パーティのシーンではないとユーザによりラベルが付けられた画像は、ネガティブ画像として扱われる。
【００３０】
１つの画像に対して、複数のラベルが付けらることもある。例えば、パーティというラベルと、そのパーティが家族の誕生日パーティであるような場合には家族といったラベルも付けられる場合もある。
【００３１】
シーンとして判別される（学習される）のは、換言すれば、ラベルとして付けられるのは、例えば、パーティ、パーティ（立食）、パーティ（親睦会）、パーティ（結婚式）、パーティ（屋外、バーベキュー、キャンプ）、運動会、スポーツ、スポーツ観戦、オフィス、旅行、子供、家族、カップル、肖像写真、集合写真などである。これらのシーンのうち、学習させたいシーンに対応する画像と、そうでない画像とが、ユーザにより分類される。
【００３２】
ステップＳ１１において、ポジティブ画像またはネガティブ画像が画像入力部１１により入力されると、その画像は、顔検出部１２に供給される。ステップＳ１２において、顔検出部１２は、供給された画像から、顔を検出する。この時検出される顔の個数に制限はなく、複数の顔が検出されることがある。この顔検出部１２により、例えば、図３に示すように、画像から顔が検出される。
【００３３】
図３に示した画像３０には、３人が写っている。枠４１に、人３１の顔が検出され、枠４２に、人３２の顔が検出され、枠４３に、人３３の顔が検出されている。これらの検出された顔毎に、図４に示したようなテーブルが作成される。よって、図３に示した画像３０が処理されるときには、図４に示したテーブル５２が少なくとも３個作成される。ただし、後述するように、１画像から、５個のテーブルが作成されると設定されている場合には、５個のテーブルが作成される。そして、顔が３個までしか検出されなかった場合には、残りの２個のテーブル５２は、値が空のテーブルとされる。
【００３４】
図４に示したテーブル５１は、“顔の数”という項目が設けられている。単位は“個”であり、処理対象とされている画像から検出された顔の個数が書き込まれる。図４に示したテーブル５２について説明する。図４に示したテーブル５２には、“顔の位置”、“顔の大きさ”、“顔の向き”、“スコア”、“向きのクラス”といった項目が設けられている。“顔の位置”という項目には“Field”として“ｐｘ”と“ｐｙ”が設けられている。この“ｐｘ”には、画像の例えば、左上の一端を基準としたときの、検出された顔の位置の開始位置のｘ座標の値が書き込まれる。同様に、“ｐｙ”には、検出された顔の位置の開始位置のｙ座標の値が書き込まれる。
【００３５】
“顔の大きさ”という項目には“Field”として“ｓｘ”と“ｓｙ”が設けられている。この“ｓｘ”には、x軸方向の顔の大きさの値が書き込まれ、“ｓｙ”には、y軸方向の顔の大きさの値が入力される。“顔の位置”と“顔の大きさ”には、ピクセル単位の値が書き込まれる。
【００３６】
“顔の向き”という項目には“Field”として、“roll”、“pitch”、“yaw”が設けられている。“roll”、“pitch”、“yaw”により、検出された顔の上下左右方向の傾きが表される。 “roll”、“pitch”、“yaw”のそれぞれに値は、rad単位の値とされる。
【００３７】
“スコア”という項目には、検出された顔の位置、大きさ、向きに対する確からしさに関する値が書き込まれる。“向きのクラス”という項目には、顔の向きをクラスで分類するときに用いられる項目である。
【００３８】
このような項目を有するテーブル５２が、処理対処とされている画像から検出された顔毎に作成される。上記したように、予め検出される顔の最大数が設定されている場合には、その個数だけテーブル５２が作成される。
【００３９】
図２のフローチャートの説明に戻り、ステップＳ１２において、顔検出部１２により画像から顔が検出されると、ステップＳ１３に処理が進められる。ステップＳ１３において、パーツ検出部１３は、顔検出部１２により検出された顔から、パーツを検出する。顔検出部１２により、画像から顔であると判断される領域が検出されている。パーツ検出部１３は、その領域内を処理対象として、眉毛、目、鼻、口といった顔を構成するパーツを検索し、検出する。このパーツ検出部１３により、例えば、図５に示すように、画像から各パーツが検出される。
【００４０】
図５に示した画像３０は、図３と同じ画像であり、３人が写っている。枠４１に、人３１の顔が検出され、この枠４１内から、眉毛、目、鼻、口が検出される。枠４１内において、点で示した部分が検出されたパーツである。特徴点の集まりにより、各パーツが検出される。このような検出が、検出された顔毎に行われることで、パーツ毎に、図６に示すようなテーブルが作成される。
【００４１】
図６に示したテーブル７１には、“パーツの数”という項目が設けられている。単位は“個”であり、処理対象とされている画像から検出されたパーツの個数が書き込まれる。図６に示したテーブル７２について説明する。図６に示したテーブル７２には、“パーツの種類”、“パーツの位置”、および“スコア”とった項目が設けられている。“パーツの種類”という項目の“Field”には、パーツの種類に割り振られている固有のＩＤが書き込まれる。“パーツの位置”という項目の“Field”には、“ｐｘ”と“ｐｙ”が設けられている。この“パーツの位置”の“ｐｘ”と“ｐｙ”には、テーブル５２の“顔の位置”の“ｐｘ”と“ｐｙ”と同じく、ピクセル単位で、パーツの位置を規定するための値が書き込まれる。“スコア”という項目には、検出器のスコアが書き込まれる。
【００４２】
このような項目を有するテーブル７２が、処理対象とされている顔から検出されたパーツ毎に作成される。よって、例えば、１つの顔から、眉毛、目、鼻、口といった４つのパーツが検出されるように設定されている場合、４つのテーブル７２が作成される。
【００４３】
図２のフローチャートの説明に戻り、ステップＳ１３において、パーツが検出されると、ステップＳ１４に処理が進められる。ステップＳ１４において、属性判別部１４は、属性を判別する。
【００４４】
ここで判別される属性は、例えば、笑顔（Smile）、性別（Gender）、大人（Adult）、赤ちゃん（Baby）、老人（Elder）、黄色人種（Mongoloid）、白色人種（Caucasoid）、黒色人種（Nygroid）、目を閉じているか否か（Eye Close）、メガネ装着（Glasses）、カメラ目線（Eyes To Me）、照明の均一性（Uniform Light）などである。なおここでは、この１２個の属性が判別され、１２個の属性が用いられて処理が行われるとして説明を続けるが、これらの１２個の属性のうち、少なくとも１つが用いられるようにしても良い。また、これらの１２個以外の属性をさらに追加したり、また、これらの１２個の属性以外の属性を用いることも可能である。
【００４５】
また、これらの１２個の属性は、例えば笑顔といった情報は表情に関する情報であり、大人、赤ちゃん、老人といった情報は年齢に関する情報であり、黄色人種、白色人種、黒色人種といった情報は人種に関する情報である。よって、属性判別部１４は、表情、性別、年連、人種、目を閉じているか否か、メガネ装着、カメラ目線、照明の均一性といった属性のうちの少なくとも１つの属性を判別する処理を実行する。
【００４６】
属性判別部１４は、パーツ検出部１３から供給されるパーツに関する情報を参照し、例えば、目と目の位置関係や、目と鼻の位置関係などから、上記した属性を判別する。属性が判別されることにより、図７に示すようなテーブルが作成される。
【００４７】
図７に示したテーブル９１には、“属性の数”という項目が設けられている。単位は“個”であり、処理対象とされている画像から検出された、または検出される属性の個数が書き込まれる。図７に示したテーブル９２には、“属性の種類”、“スコア”という項目が設けられている。“属性の種類”という項目には、属性固有のＩＤが書き込まれる。例えば上記した属性毎に、予めＩＤが割り振られており、テーブル９２が作成されている時点で処理対象とされている属性に対応するＩＤが書き込まれる。よって、属性毎に、テーブル９２が作成される。上記した属性の全てを判別するとした場合、１２個の属性があるので、１つの顔から１２個のテーブル９２が作成される。“スコア”という項目には、判別器のスコアが書き込まれる。
【００４８】
このような項目を有するテーブル９２が、処理対処とされている画像から検出された属性毎に作成される。
【００４９】
ここまでの処理、すなわち、画像から顔を検出し、パーツを検出し、属性を判別するといった各処理は、本出願人が、先に出願した特開２００５−２８４４８７号公報や、特開２００５−１５７６７９号公報に開示されている手法を適用することができる。
【００５０】
図２のフローチャートの説明に戻り、ステップＳ１４において、属性判別部１４により属性が判別されると、ステップＳ１５に処理が進められる。ステップＳ１５において、顔シーン特徴抽出部１５により、特徴量が生成される。この生成される特徴量は、図８に示したような特徴量（テーブル）である。
【００５１】
図８に示したテーブル１１１は、属性判別部１４までの処理で検出された顔の位置、顔の大きさ、顔の向き、および属性をまとめたものである。すなわち、図８に示したテーブル１１１は、“顔の位置”、“顔の大きさ”、“顔の向き”、そして“属性”という項目が設けられている。なお、後述するように、このテーブル１１１の情報が、ベクトルとして扱われることで特徴量とされる。このテーブル１１１は、１つの顔に対して１個作成される。
【００５２】
“顔の位置”という項目には、“ｎｐｘ”と“ｎｐｙ”という情報が書き込まれる。この“ｎｐｘ”と“ｎｐｙ”は、図４に示したテーブル５２に書き込まれている“顔の位置”という項目の“ｐｘ”と“ｐｙ”という情報からそれぞれ生成される。“ｎｐｘ”と“ｎｐｙ”は、画像の解像度に因らず画像幅と高さを１としたときの画面上での顔の位置を表したときの情報である。例えば、画像の横幅が６４０ピクセルであり、顔の位置が、１６０ピクセルの位置にあった場合、“ｎｐｘ”の所に書き込まれる値は、０．２５（＝１６０／６４０）となる。
【００５３】
“顔の大きさ”という項目には、“ｎｓｘ”と“ｎｓｙ”という情報が書き込まれる。この“ｎｓｘ”と“ｎｓｙ”も、上記した“ｎｐｘ”と“ｎｐｙ”と同じく、画像の解像度に因らず画像幅と高さを１としたときの画面上での顔の大きさを表したときの情報である。
【００５４】
“属性”という項目には、“Smile”、“Gender”、“Adult”、“Baby”、“Elder”、“Mongoloid”、“Caucasoid”、“Nygroid”、“Eye Close”、“Glasses”、“Eyes To Me”、“Uniform Light”という情報が書き込まれる。この“属性”の項目には、それぞれの属性の確信度が書き込まれる。その値は、０．０から１．０までの範囲をとる。確信度の最小値が０で、最大値が１である。
【００５５】
例えば、“Smile”という笑顔の確信度が０．５であった場合、笑顔と非笑顔の中間の表情であると判別されたことを示す。また、“Gender”という性別に関する確信度は、０．０のときには女性、１．０のときは男性といったように割り当てられ、値が近い程、それぞれに対する確信度が高いことを示す。
【００５６】
このように、テーブル１１１は、“顔の位置”で“ｎｐｘ”と“ｎｐｙ”という２次元、“顔の大きさ”で“ｎｓｘ”と“ｎｓｙ”という２次元、“顔の向き”で“roll”、“pitch”、“yaw”という３次元、“属性”で“Smile”、“Gender”、“Adult”、“Baby”、“Elder”、“Mongoloid”、“Caucasoid”、“Nygroid”、“Eye Close”、“Glasses”、“Eyes To Me”、“Uniform Light”という１２次元の計１９次元で構成される。よって、このテーブル１１１に基づくベクトルは、１９次元のベクトルとなる。
【００５７】
１画像からは複数の顔が検出されるので、複数のテーブル１１１が作成される。具体的には、１画像から５つの顔が処理対象として最大で検出されると設定されている場合、換言すれば、デフォルトで、５つのテーブル１１１を作成すると設定されている場合、５つのテーブル１１１が作成される。ここでは、５つのテーブルが作成されるとする。また、この作成される５つのテーブル１１１は、１画像内に写っている顔の大きい順であるとする。このような場合、１番目に大きい顔の特徴量（テーブル１１１―１）、２番目に大きい顔の特徴量（テーブル１１１―２）、３番目に大きい顔の特徴量（テーブル１１１―３）、４番目に大きい顔の特徴量（テーブル１１１―４）、５番目に大きい顔の特徴量（テーブル１１１―５）が作成される。
【００５８】
よって、このように、５つのテーブル１１１−１乃至１１１−５が作成される場合、１９次元×５で、合計９５次元のベクトルとなる。さらに、１画像に写っている顔の数を、ベクトルを構成する１次元として加えると、９６次元となる。ここでは、９６次元のベクトルとして説明を続ける。テーブル１１１を作成すると記述したが、実際の処理は、これらの９６次元のベクトルを生成する処理が実行される。
【００５９】
また、ここでは、５つの顔毎に、テーブル１１１（特徴量）が作成され、それらの特徴量をまとめた特徴量を、最終的な特徴量として用いるとして説明するが、本発明は、５つの顔に限定されるわけではない。すなわち、本発明は、画像に写っているＭ個の顔毎にＮ次元を有し、総計でＭ×Ｎ次元のベクトルを特徴量とすることで処理を行い、そのようなＭ×Ｎ次元のベクトルを扱うときも適用できる。
【００６０】
このように、顔シーン特徴量は、顔検出部１２、パーツ検出部１３、属性判別部１４から構成される顔認識モジュールから出力された顔情報の１つの顔に対して、図８に示したようなテーブル１１１の各項目の情報を並べてベクトル化したものを単一顔特徴量とする。そして、画像全体に対して、顔数と大きい顔から順番に各顔シーン特徴量を最大で５つまで並べたものを、画像全体に対する顔シーン特徴量とする。すなわち、９６次元のベクトルとする。
【００６１】
単一顔特徴の顔位置は、画像の解像度に因らず画像幅と高さを１としたときの画像上での位置を表すようにしてある。また大きさも同様とする。このことにより、解像度に依存する顔の位置や大きさの違いを吸収し、さまざまな解像度の画像を均一的に扱うことが可能となる。
【００６２】
属性に関しては、笑顔、性別、大人、子供、赤ちゃん、老人、黄色人種、白色人種、黒色人種、メガネ装着、カメラ目線、照明の均一性の指標に対して、その度合いを与えている。これにより、単一顔特徴量は、１９次元のベクトルとなり、それらが５つ組み合わさった顔シーン特徴量は９６次元のベクトルとなる。なお、画像中の顔数が５つに満たない時には当該の単一顔特徴の次元には、不定のフラグが入るようにする。
【００６３】
このようにして顔シーン特徴中抽出部１５により、９６次元のベクトルで表される特徴量が生成される。図２のフローチャートの説明に戻り、ステップＳ１５において、特徴量が生成されると、ステップＳ１６に処理が進められる。ステップＳ１６において、学習が行われる。
【００６４】
ステップＳ１６において、学習部１６は、顔シーン特徴抽出部１５により抽出された特徴量を用いて、シーン判別に必要な学習を行う。ここでは、与えられた複数のカテゴリのラベル、例えば、パーティというシーンの画像であるか否かなどのラベルに対して、自身とそれ以外の２値判別問題にすることで学習を行うことにする。従って各ラベルに対して一つの判別器が学習される。
【００６５】
まず、ここまでの処理で、予め選別された学習サンプルに対して、上述のようなシーン毎にラベルが付けられ、ラベルが付けられたそれらの画像から前述の９６次元の顔シーン特徴量が抽出され、各サンプルの特徴量とされる。この特徴量とラベルを用いて判別器の学習が行われる。
【００６６】
その学習の方法として、例えばブースティングを用いることができる。ステップＳ１６において実行される学習に係わる処理の一例を、図９のフローチャートを参照し説明する。図９に示した学習に係わる処理は、AdaBoostの大まかな手順に基づいている。ブースティングは複数の弱仮説を求める事で、それらの多数決で最終的な判別結果を出す。
【００６７】
ステップＳ３１において、各弱仮説の判別器が初期化される。学習サンプル数がＮ個ある場合、１つの判別器の重みは、
Ｄ1（ｉ）＝１／Ｎ
と設定される。このように１つの判別器の重みが初期化されるので、判別器の重みの総和は１と設定されている。
【００６８】
ステップＳ３２において、ｔ＝１，２，・・・Ｔに対して分布Ｄｔに基づく弱仮説の学習が開始される。弱仮説の求め方として、スタンプクラシファイヤーを用いることができる。スタンプクラシファイヤーは、各サンプルの特徴量の次元の中から一つを抜き出して、所定の閾値の大小関係でそのサンプルの正負判定（ポジティブ-ネガティブ判定）を行う方式である。
【００６９】
これを特徴次元と閾値をパラメータとして、判別させた時の重み付き判別誤差を逐一求めて、もっともエラーの小さかった次元、閾値パラメータが取得される。なお選び出された特徴量が不定値だった場合（画像中の顔数が足りなかった場合）には、そのサンプルの判別は不能であるので判別間違いを起こしたものとみなして全体の誤差を計算する。
【００７０】
このような処理を実現するために、ステップＳ３３において、重み付き誤り率が次式（１）に基づいて算出される。
【数１】
2010092199.tif 000003
【００７１】
上記式（１）に示されるように、重み付き誤り率ｅtは、学習サンプルのうち、弱判別器の判別結果が誤っているもの（ｆt（ｘｉ）≠ｙi）である学習サンプル（ｙi＝１とラベリングされた学習サンプルであって、ｆ（ｘｉ）＝−１と判定された学習サンプル、およびｙi＝−１とラベリングされた学習サンプルであって、ｆ（ｘｉ）＝１と判定された学習サンプル）のデータ重みのみを加算したものとなる。データ重みＤt,iが大きい（判別が難しい）学習サンプルの判別を間違えると重み付き誤り率ｅｔが大きくなる。この式（１）で算出される重み付き誤り率ｅtを最小化するｈｔ：Ｘ→Ｙが取得される。
【００７２】
この処理により、Ｋ個の弱判別器のうちの、重み付き誤り率ｅtの値が最小の弱判別器が選択される（生成される）。ステップＳ３４において、多数決重みαtが算出される。この多数決重み（信頼度）αtは、式（２）に基づいて算出される。
【数２】
2010092199.tif 000004
【００７３】
上記式（２）から明らかなように、重み付き誤り率ｅtが小さいほど、その弱判別器の信頼度αtが大きくなる。
【００７４】
ステップＳ３５において、学習サンプルのデータ重みＤt,iが更新される。即ち、式（２）にて得られた信頼度αtを使用して、下記式（３）により学習サンプルのデータ重みＤt,iが更新される。データ重みＤt,iは、通常全部足し合わせると１によるように正規化する必要がある。そこでデータ重みＤt,iは、式（３）に示されるように正規化される。
【数３】
2010092199.tif 000005
【００７５】
ただし、Ｚｔは、
【数４】
2010092199.tif 000006
とするための規格化因子
【数５】
2010092199.tif 000007
である。
【００７６】
ステップＳ３６において、重み付き多数決Ｈ（ｘ）が更新される。この処理は次式（６）に基づいて行われる。また、式（６）により、全ての仮説を信頼度で重み付け多数決を行った最終仮説が求められる。
【数６】
2010092199.tif 000008
【００７７】
式（６）は、弱判別器の個数がｔ（＝１，・・・，Ｋ）、各弱判別器に対応する多数決の重み（信頼度）がαt、各弱判別器の出力がft(x)と設定されたとき、AdaBoostにおける重み付き多数決の値Ｈ(ｔ)である。また、式（６）は、ｓｇｎ関数であり、ｓｇｎ関数は、ｓｇｎ(<数値>)という形をとり、数値の符号を調べるときに用いられる関数である。（）内の数値が正のときの結果は「１」、負のときの結果は「−１」、０のときの結果は「０」となる関数である。
【００７８】
ステップＳ３３乃至３６の処理が繰り返されることで、エラーが十分に下がると定められた最大の弱仮説数に到達したら、学習が終了される。このようにして、最終仮説が求められることで、学習が行われる。
【００７９】
このような処理がポジティブ画像やネガティブ画像といった、学習サンプル画像毎に行われる。よって、サンプル数だけ、図２のフローチャートの処理および図９のフローチャートの処理が繰り返されることで、１つのシーンに対する学習が行われる。そして、全ての弱仮説に対して演算が終わったあとの統合判定値をこのラベルのスコアとする。全てのシーンラベルのスコアの中でもっとも高かったものもしくは、ある閾値を上回ったもの全てをその画像の出力ラベルとする。
【００８０】
なお、サンプルの特徴量である９６次元以外に、第１の顔と第２の顔の特徴量の差分値、第１と第３の顔の特徴量の差分など、全ての顔ペアの差分値も特徴量に加えて、スタンプクラシファイヤーを用いるようにして良い。このようにすることによって、顔の大きさが同じくらいであることや、性別が異なることなど２つの顔の関係性を判別に加えることができる。
【００８１】
なお、上記した学習手法の他に、マルチクラス識別器による学習を適用しても良い。上記した例では、２値判別の判別器を複数学習することでマルチクラスの判別を行っているが、ブースティングを多クラス問題に拡張した、AdaBoost.M2, AdaBoost.MHなどが提案されており、それらを使うこともできる。また、多クラス問題を各弱仮説を求める際に毎回異なる２値クラスにランダムに分割することで２クラス問題を解きながら、各クラスに判別結果を保持することで多クラス拡張したECOCブースティングなどの手法も適用できる。
【００８２】
このようにして、画像からその画像が撮像されたシーンを特定するための情報（判別器）が生成される。シーン毎に判別器が生成されるため、複数のシーンに対する判別器を生成するために、上述した学習処理が、シーン毎に繰り返し行われる。ここで、上記したように、画像に写っている顔、その顔の向き、大きさ、属性といった種々の情報から生成された情報で、画像をシーン毎に分類できる理由について説明を加える。
【００８３】
図１０Ａ乃至Ｆは、想定されるさまざまシーンのうちの６シーンを示した図である。図１０Ａ乃至Ｆ内の四角は、検出された顔の位置、大きさを表している。また、その四角内の矢印は、顔の向きを示している。
【００８４】
図１０Ａは、恋人同士が撮影されているシーンの画像を示している。恋人同士が撮影された画像には、大人の男性と女性が写っており、その男女は、笑顔で写っている可能性が高い。さらに、互いに向き合っている可能性も高く、顔が比較的大きく写っている可能性も高い。このようなことを考慮すると、１画像内に、属性が“男性”と判別される顔と、“女性”と判別される顔が検出され、その顔が“笑顔”で、その“大きさ”は比較的大きく、その顔の向きが、互いに向き合っていると判別される場合は、恋人同士のシーンであると判定できる。
【００８５】
図１０Ｂは、おじいちゃんと孫が撮影されているシーンの画像を示している。おじいちゃんと孫が撮影された画像には、老人と子供が写っており、その老人は男性であり、その子供は女の子もしくは男の子である場合が多い。また、例えば、おじいちゃんと孫が撮影されている画像は、おじいちゃんと孫が向き合っているが、おじいちゃんは笑顔なのに対して、孫は泣いているといった状況も考えられる。
【００８６】
このようなことから、１画像内から“男性”であり“老人”であるといった属性を有する顔と、“女性”であり“子供”であるという属性を有する顔が検出された場合、おじいちゃんと孫が撮影されているシーンであると判定できる。さらに、検出された顔の向きが互いに向き合っており、一方が笑顔で、他方が泣き顔であるという属性が検出された場合、あやしているシーンであるといった、さらに突っ込んだシーンの意味解析を行うことが可能である。
【００８７】
図１０Ｃは、パーティ（親睦会）のシーンの画像を示している。パーティ（親睦会）のシーンの画像には、大人の男性と女性が複数写っている場合が多い。１画像内に、複数の顔が検出され、属性が“男性”であると判別された顔と“女性”であると判別された顔が検出された場合、パーティ（親睦会）のシーンの画像であると判定できる。
【００８８】
図１０Ｄは、旅行のシーンの画像を示している。旅行のシーンの画像には、人と建物などのラウンドマークが一緒に写っていることが多い。よって、人の顔がメインとならず、例えば、画像の端の方で、小さく写っていることが多い。このようなことから、“小さな”
顔が検出され、その顔の“位置”が画像の端の方であり、“正面”を向いているといったことが判別された場合、旅行のシーンの画像であると判定できる。
【００８９】
図１０Ｅは、集合写真のシーンの画像を示している。集合写真のシーンの画像には、多くの小さな顔が写っていることが多い。１画像内の顔の“個数”が多く、“大きさ”が小さく、それらの顔の“位置”的な関係が接近しているといったことが判別された場合、集合写真のシーンの画像であると判定できる。
【００９０】
図１０Ｆは、赤ちゃんが撮影されたシーンの画像を示している。赤ちゃんが撮影されたシーンの画像は、赤ちゃんが中央に大きく写っていることが多い。よって、比較的“大きな”顔が検出され、“赤ちゃん”という属性が判別された場合、赤ちゃん（子供）が写っているシーンの画像であると判定できる。
【００９１】
このように、顔の大きさ、向き、顔の数、複数の属性といった情報を組み合わせることにより、シーンを判別することは可能である。よって、上記したように、９６次元の特徴量を生成し、その特徴量から、アダブーストなどの手法で、シーンを特定する情報を生成する（判別器を生成する）ことができる。
【００９２】
次に、学習の結果得られた情報を用いて、画像をシーン毎に分類することについて説明する。
【００９３】
図１１は、画像のシーンを判別する判定装置の構成を示す図である。図１１に示した判別装置１００は、画像入力部１０１、顔検出部１０２、パーツ検出部１０３、属性判別部１０４、顔シーン特徴抽出部１０５、およびシーン判別部１０６を含む構成とされる。
【００９４】
画像入力部１０１、顔検出部１０２、パーツ検出部１０３、属性判別部１０４、顔シーン特徴抽出部１０５は、それぞれ、図１に示した学習装置１０の画像入力部１１、顔検出部１２、パーツ検出部１３、属性判別部１４、顔シーン特徴抽出部１５と同様の機能を有する。よって、その詳細な説明は省略する。
【００９５】
画像入力部１０１、顔検出部１０２、パーツ検出部１０３、属性判別部１０４、顔シーン特徴抽出部１０５の各部の処理により、シーン判別の処理対象とされている画像から、９６次元のベクトルで表される顔シーンの特徴量が抽出される。この特徴量を用いて、シーン判別部１０６は、処理対象とされている画像のシーンを判別する。
【００９６】
シーン判別器１０６には、学習装置１０で学習された結果、すなわち、複数の判別器が記憶されている。各判別器は、学習の結果、式（６）で表される関数である。ここで、図１２のフローチャートを参照し、判別装置１００における処理について説明する。
【００９７】
ステップＳ５１において、特徴量が算出される。この処理は、画像入力部１０１、顔検出部１０２、パーツ検出部１０３、属性判別部１０４、顔シーン特徴抽出部１０５の各部が処理を実行することで算出される。この算出までの処理は、既に説明したので、その説明は省略する。この処理で、９６次元の顔シーン特徴量が算出される。
【００９８】
ステップＳ５２において、判別器による演算が実行される。シーン判別器１０６は、顔シーン特徴抽出部１０５から抽出される特徴量を、各判別器に代入し、判別器毎に値を算出する。このような演算がシーン判別器１０６において実行されることで、各判別器から、算出結果が得られる。
【００９９】
ステップＳ５３において、シーン判別器１０６は、各判別器からの算出結果のうち、所定の閾値を超えた判別器を特定する。この特定された判別器に割り振られているシーンが、処理対象とされている画像のシーンとされる。仮に、複数の判別器からの算出結果が、閾値を超えていた場合、その処理対象とされた画像は、複数のシーンに該当することを意味する。例えば、家族写真の場合、“家族”でとったシーン、家族で行った“旅行”のシーン、さらにその旅行先でとった“子供”のシーンなど、複数のシーンに該当することがあり、そのようなときには、複数のシーンに該当するといった判別結果が得られる。
【０１００】
このように、１つの画像に複数のシーンが該当する場合であっても、本発明を適用することで、的確にそれらのシーンを判別することが可能となる。
【０１０１】
このように本発明によれば、顔画像認識を行ったあとに得られる幾つかの顔情報を使うことで、シーン全体の意味を理解した判別を行うことが可能となる。また、写真などの中で顔が含まれる画像は多く、本発明を適用することで、顔画像をさらに細分化されたカテゴリに分類できるようになり、その効果は顕著であると考えられる。
【０１０２】
また、顔情報の意味を組み合わせることで、画素単位の処理ではできない、より高次のシーンの意味理解が可能となる。さらに、顔画像情報を使うことで、画像を画素単位で処理することなく、シーン判別を行うことができ、既存の局所特徴量を用いたシーン判別よりも高速にかつ、少ないメモリで演算することが可能となる。
【０１０３】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１０４】
図１３は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータのハードウェアの構成の例を示すブロック図である。
【０１０５】
コンピュータにおいて、ＣＰＵ（Central Processing Unit）２０１、ＲＯＭ（Read Only Memory）２０２、ＲＡＭ（Random Access Memory）２０３は、バス２０４により相互に接続されている。
【０１０６】
バス２０４には、さらに、入出力インターフェース２０５が接続されている。入出力インターフェース２０５には、キーボード、マウス、マイクロホンなどよりなる入力部２０６、ディスプレイ、スピーカなどよりなる出力部２０７、ハードディスクや不揮発性のメモリなどよりなる記憶部２０８、ネットワークインタフェースなどよりなる通信部２０９、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどのリムーバブルメディア２１１を駆動するドライブ２１０が接続されている。
【０１０７】
以上のように構成されるコンピュータでは、ＣＰＵ２０１が、例えば、記憶部２０８に記憶されているプログラムを、入出力インターフェース２０５及びバス２０４を介して、ＲＡＭ２０３にロードして実行することにより、上述した一連の処理が行われる。
【０１０８】
コンピュータ（ＣＰＵ２０１）が実行するプログラムは、例えば、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア２１１に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【０１０９】
そして、プログラムは、リムーバブルメディア２１１をドライブ２１０に装着することにより、入出力インターフェース２０５を介して、記憶部２０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部２０９で受信し、記憶部２０８にインストールすることができる。その他、プログラムは、ＲＯＭ２０２や記憶部２０８に、あらかじめインストールしておくことができる。
【０１１０】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１１１】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０１１２】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０１１３】
【図１】本発明を適用した学習装置の一実施の形態の構成を示す図である。
【図２】学習について説明するためのフローチャートである。
【図３】顔検出について説明する図である。
【図４】顔検出の結果、得られる情報について説明する図である。
【図５】パーツ検出について説明する図である。
【図６】パーツ検出の結果、得られる情報について説明する図である。
【図７】属性について説明する図である。
【図８】特徴量について説明する図である。
【図９】学習に係わる処理について説明するフローチャートである。
【図１０】シーンについて説明する図である。
【図１１】判別装置の一実施の形態の構成を示す図である。
【図１２】判別処理について説明するためのフローチャートである。
【図１３】記録媒体について説明するための図である。
【符号の説明】
【０１１４】
１０  学習装置，  １１  画像入力部，  １２  顔検出部，  １３  パーツ検出部，  １４  属性判別部，  １５  顔シーン特徴抽出部，  １６  学習部，  １００  判別装置，  １０１  画像入力部，  １０２  顔検出部，  １０３  パーツ検出部，  １０４  属性判別部，  １０５  顔シーン特徴抽出部，  １０６  判別部
【図１】
2010092199.tif 000009
【図２】
2010092199.tif 000010
【図３】
2010092199.tif 000011
【図４】
2010092199.tif 000012
【図５】
2010092199.tif 000013
【図６】
2010092199.tif 000014
【図７】
2010092199.tif 000015
【図８】
2010092199.tif 000016
【図９】
2010092199.tif 000017
【図１０】
2010092199.tif 000018
【図１１】
2010092199.tif 000019
【図１２】
2010092199.tif 000020
【図１３】
2010092199.tif 000021