(57)【要約】【課題】短い解析時間で登場人物の抽出を良好に行う。【解決手段】顔検出部１０２は、デコード部１０１で順次取り出された静止画フレームに含まれる顔画像を検出し、さらに顔回転角度を検出する。顔特徴量算出部１０３は、顔画像の画像情報に基づいて、顔特徴量、笑顔スコア、コントラストスコアを算出する。ノイズ顔除去部１０４は、後段の処理精度に悪影響を及ぼす可能性のある横顔、ぼけた顔画像を除去する。同一顔結合処理部１０５は、ノイズ顔除去部１０４から現フレームの顔データが送られてくる毎に、同一人物の顔画像を結合する処理を行う。同一顔結合処理部１０５は、動画ストリームの最後まで到達したとき、最終的に保存されている顔画像の顔データを、顔クラスタリング部１０６に送る。顔クラスタリング部１０６は、同一人物の顔画像が１つのクラスタとなるようにクラスタリング処理（分類処理）を行って、登場人物データを得る。【選択図】図１
2010003021.tif 000002
【特許請求の範囲】
【請求項１】
動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、上記静止画フレームに含まれる顔画像を検出する顔検出部と、
上記顔検出部で検出された顔画像の画像情報に基づいて、該顔画像の顔特徴量を算出する顔特徴量算出部と、
現在フレームで上記顔検出部により検出された第１の顔画像が過去フレームで上記顔検出部により検出されて保存されている第２の顔画像と同一人物の顔画像であるか否かを、少なくとも上記顔特徴量算出部で算出された上記第１の顔画像および上記第２の顔画像の顔特徴量に基づいて判断する同一性判断部と、
上記同一性判断部で同一であると判断されるとき、上記第１の顔画像と上記第２の顔画像のうち、いずれか一方のみを保存し、上記同一性判断部で同一でないと判断されるとき、上記第１の顔画像を上記第２の顔画像と共に保存する結合処理部と
を備える画像処理装置。
【請求項２】
上記動画像ストリームはイントラフレームを一定間隔で含み、該イントラフレームの画像情報にデータ伸長処理を施して上記静止画フレームの画像情報を順次取り出すデコード部をさらに備える
請求項１に記載の画像処理装置。
【請求項３】
上記同一性判断部は、上記第１の顔画像の顔特徴量および上記第２の顔画像の顔特徴量に基づいて該第１の顔画像と該第２の顔画像の類似度を求め、該類似度と閾値とを比較し、該第１の顔画像と該第２の顔画像が同一人物の顔画像であるか否かを判断する
請求項１に記載の画像処理装置。
【請求項４】
上記同一性判断部は、上記第１の顔画像および上記第２の顔画像の顔特徴量と共に、少なくとも、上記第１の顔画像および上記第２の顔画像の検出枠情報、または上記第１の顔画像および上記第２の顔画像のフレーム間の時間情報に基づいて、該第１の顔画像と該第２の顔画像が同一人物の顔画像であるか否かを判断する
請求項１に記載の画像処理装置。
【請求項５】
上記同一性判断部は、
上記第１の顔画像の顔特徴量および上記第２の顔画像の顔特徴量に基づいて、該第１の顔画像と該第２の顔画像の類似度を求め、
上記類似度が第１の閾値以上であるとき上記第１の顔画像と上記第２の顔画像が同一人物の顔画像であると判断し、
上記類似度が上記第１の閾値より小さく第２の閾値以上であるとき、上記第１の顔画像と上記第２の顔画像の検出枠およびフレーム間の時間が一定の条件を満たした場合には上記第１の顔画像と上記第２の顔画像が同一人物の顔画像であると判断する
請求項４に記載の画像処理装置。
【請求項６】
上記検出枠の一定条件は、上記第１の顔画像の検出枠と上記第２の顔画像の検出枠の重心間の距離が閾値より短いという第１の条件と、上記第１の顔画像の検出枠と上記第２の顔画像の検出枠の面積比が第１の閾値から第２の閾値の間にあるという第２の条件からなり、
上記フレーム間の一定条件は、上記第１の顔画像と上記第２の顔画像のフレーム間の時間が閾値より短いという条件からなる
請求項５に記載の画像処理装置。
【請求項７】
上記顔検出部で検出された顔画像の顔の向きを示す顔回転角度を検出する顔回転角度検出部と、
上記顔検出部で検出された顔画像より、上記顔回転角度検出部で検出された顔回転角度の情報に基づいて、正面から所定方向への顔回転角度が閾値より大きな顔画像を除去するノイズ顔除去部とをさらに備える
請求項１に記載の画像処理装置。
【請求項８】
上記顔検出部で検出された顔画像の画像情報に基づいて、該顔画像のコントラストを示すコントラストスコアを算出するコントラストスコア算出部と、
上記顔検出部で検出された顔画像より、上記コントラストスコア算出部で算出されたコントラストスコアが閾値より小さな顔画像を除去するノイズ顔除去部とをさらに備える
請求項１に記載の画像処理装置。
【請求項９】
上記結合処理部により保存された顔画像を、少なくとも、上記顔特徴量算出部で算出された顔特徴量に基づいて、同一人物の顔画像を１つのクラスタとする顔クラスタリング部をさらに備える
請求項１に記載の画像処理装置。
【請求項１０】
上記顔クラスタリング部は、
上記結合処理部により保存された顔画像から抽出される２つの顔画像の各組み合わせに対して、該２つの顔画像の顔特徴量に基づいて該２つの顔画像の類似度を算出する類似度算出部と、
上記結合処理部により保存された顔画像のそれぞれを１つのクラスタとし、その後に、上記類似度算出部で算出された上記各組み合わせの類似度に基づいて、該類似度の高い組み合わせの順番に、該組み合わせを構成する顔画像が含まれるクラスタを順次結合して最終的に１つのクラスタとする階層化クラスタリング部と、
上記階層化クラスタリング部で得られたツリー状のクラスタ情報に基づいて、最上位層のクラスタから過結合の判断を行い、過結合と判断されたクラスタを上記階層化クラスタリング部で結合する前の２つのクラスタに分割してクラスタを決定するクラスタ決定部とを有する
請求項９に記載の画像処理装置。
【請求項１１】
上記クラスタ決定部は、
過結合判断対象のクラスタに含まれる顔画像の顔特徴量を平均した平均顔特徴量を算出する平均顔特徴量算出部と、
上記平均顔特徴量算出部で算出された平均顔特徴量と上記過結合判断対象のクラスタに含まれる顔画像の顔特徴量とから個別類似度を算出する個別類似度算出部とを有し、
上記過結合判断対象のクラスタに含まれる顔画像のうち、少なくとも、いずれかの顔画像についての上記個別類似度が個別類似度比較閾値より小さいとき、上記過結合判断対象のクラスタは過結合であると判断する
請求項１０に記載の画像処理装置。
【請求項１２】
ユーザが上記個別類似度比較閾値を設定するためのユーザ設定部をさらに備える
請求項１１に記載の画像処理装置。
【請求項１３】
上記クラスタ決定部は、
上記過結合判断対象のクラスタに含まれる顔画像についての上記個別類似度算出部で算出された個別類似度を平均した平均類似度を算出する平均類似度算出部をさらに有し、
上記平均類似度算出部で算出された平均類似度が平均類似度比較閾値より小さいとき、上記過結合判断対象のクラスタは過結合であると判断する
請求項１１に記載の画像処理装置。
【請求項１４】
ユーザが上記平均類似度比較閾値を設定するためのユーザ設定部をさらに備える
請求項１３に記載の画像処理装置。
【請求項１５】
上記クラスタリング部で得られたクラスタのうち、複数の顔画像を含むクラスタについて、該複数の顔画像から代表の顔画像を決定する代表画像決定部をさらに備える
請求項９に記載の画像処理装置。
【請求項１６】
上記代表画像決定部は、上記複数の顔画像を含むクラスタについて、該複数の顔画像の顔回転角度情報、表情情報およびコントラスト情報の少なくともいずれかに基づいて代表の顔画像を決定する
請求項１５に記載の画像処理装置。
【請求項１７】
上記代表画像決定部は、上記複数の顔画像を含むクラスタについて、
上記複数の顔画像を、上記顔回転角度情報に基づいて、顔の回転角度が第１の閾値より小さな顔画像を含む第１の顔画像群に絞り込み、
上記第１の顔画像群に含まれる顔画像を、上記表情情報に基づいて、特定の表情の程度を示すスコアが第２の閾値より大きな顔画像を含む第２の顔画像群に絞り込み、
上記第２の顔画像群に含まれる顔画像のうち、上記コントラスト情報に基づいて、コントラストの程度を示すスコアが最も高い顔画像を上記代表の顔画像に決定する
請求項１６に記載の画像処理装置。
【請求項１８】
ユーザが上記第１の閾値および上記第２の閾値を設定するためのユーザ設定部をさらに備える
請求項１７に記載の画像処理装置。
【請求項１９】
動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、上記静止画フレームに含まれる顔画像を検出する顔検出ステップと、
上記顔検出ステップで検出された顔画像の画像情報に基づいて、該顔画像の顔特徴量を算出する顔特徴量算出ステップと、
現在フレームで上記顔検出ステップにより検出された第１の顔画像が過去フレームで上記顔検出ステップにより検出されて保存されている第２の顔画像と同一人物の顔画像であるか否かを、少なくとも上記顔特徴量算出ステップで算出された上記第１の顔画像および上記第２の顔画像の顔特徴量に基づいて判断する同一性判断ステップと、
上記同一性判断ステップで同一であると判断されるとき、上記第１の顔画像と上記第２の顔画像のうち、いずれか一方のみを保存し、上記同一性判断ステップで同一でないと判断されるとき、上記第１の顔画像を上記第２の顔画像と共に保存する結合処理ステップと
を有する画像処理方法。
【請求項２０】
コンピュータを、
動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、上記静止画フレームに含まれる顔画像を検出する顔検出手段と、
上記顔検出手段で検出された顔画像の画像情報に基づいて、該顔画像の顔特徴量を算出する顔特徴量算出手段と、
現在フレームで上記顔検出手段により検出された第１の顔画像が過去フレームで上記顔検出手段により検出されて保存されている第２の顔画像と同一人物の顔画像であるか否かを、少なくとも上記顔特徴量算出手段で算出された上記第１の顔画像および上記第２の顔画像の顔特徴量に基づいて判断する同一性判断手段と、
上記同一性判断手段で同一であると判断されるとき、上記第１の顔画像と上記第２の顔画像のうち、いずれか一方のみを保存し、上記同一性判断手段で同一でないと判断されるとき、上記第１の顔画像を上記第２の顔画像と共に保存する結合処理手段と
して機能させるプログラム。
【請求項２１】
動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、上記静止画フレームに含まれる所定物体の画像を検出する画像検出部と、
上記画像検出部で検出された所定物体の画像の画像情報に基づいて、該所定物体の画像の特徴量を算出する特徴量算出部と、
現在フレームで上記画像検出部により検出された第１の所定物体の画像が過去フレームで上記画像検出部により検出されて保存されている第２の所定物体の画像と同一物体の画像であるか否かを、少なくとも上記特徴量算出部で算出された上記第１の所定物体の画像および上記第２の所定物体の画像の特徴量に基づいて判断する同一性判断部と、
上記同一性判断部で同一であると判断されるとき、上記第１の所定物体の画像と上記第２の所定物体の画像のうち、いずれか一方のみを保存し、上記同一性判断部で同一でないと判断されるとき、上記第１の所定物体の画像を上記第２の所定物体の画像と共に保存する結合処理部と
を備える画像処理装置。
【請求項２２】
複数の顔画像から抽出される２つの顔画像の各組み合わせに対して、該２つの顔画像の顔特徴量に基づいて該２つの顔画像の類似度を算出する類似度算出部と、
上記複数の顔画像のそれぞれを１つのクラスタとし、その後に、上記類似度算出部で算出された上記各組み合わせの類似度に基づいて、該類似度の高い組み合わせの順番に、該組み合わせを構成する顔画像が含まれるクラスタを順次結合して最終的に１つのクラスタとする階層化クラスタリング部と、
上記階層化クラスタリング部で得られたツリー状のクラスタ情報に基づいて、最上位層のクラスタから過結合の判断を行い、過結合と判断されたクラスタを上記階層化クラスタリング部で結合する前の２つのクラスタに分割してクラスタを決定するクラスタ決定部と
を備える画像処理装置。
【請求項２３】
上記クラスタ決定部は、
過結合判断対象のクラスタに含まれる顔画像の顔特徴量を平均した平均顔特徴量を算出する平均顔特徴量算出部と、
上記平均顔特徴量算出部で算出された平均顔特徴量と上記過結合判断対象のクラスタに含まれる顔画像の顔特徴量とから個別類似度を算出する個別類似度算出部とを有し、
上記過結合判断対象のクラスタに含まれる顔画像のうち、少なくとも、いずれかの顔画像についての上記個別類似度が個別類似度比較閾値より小さいとき、上記過結合判断対象のクラスタは過結合であると判断する
請求項２２に記載の画像処理装置。
【請求項２４】
ユーザが上記個別類似度比較閾値を設定するためのユーザ設定部をさらに備える
請求項２３に記載の画像処理装置。
【請求項２５】
上記クラスタ決定部は、
上記過結合判断対処のクラスタに含まれる顔画像についての上記個別類似度算出部で算出された個別類似度を平均した平均類似度を算出する平均類似度算出部をさらに有し、
上記平類似度算出部で算出された平均類似度が平均類似度比較閾値より小さいとき、上記過結合判断対象のクラスタは過結合であると判断する
請求項２３に記載の画像処理装置。
【請求項２６】
ユーザが上記平均類似度比較閾値を設定するためのユーザ設定部をさらに備える
請求項２５に記載の画像処理装置。
【請求項２７】
上記クラスタ決定部で得られたクラスタのうち複数の顔画像を含むクラスタについて、該複数の顔画像から代表の顔画像を決定する代表画像決定部をさらに備える
請求項２２に記載の画像処理装置。
【請求項２８】
上記代表画像決定部は、上記複数の顔画像を含むクラスタについて、該複数の顔画像の顔回転角度情報、表情情報およびコントラスト情報の少なくともいずれかに基づいて代表の顔画像を決定する
請求項２７に記載の画像処理装置。
【請求項２９】
上記代表画像決定部は、上記複数の顔画像を含むクラスタについて、
上記複数の顔画像を、上記顔回転角度情報に基づいて、顔の回転角度が第１の閾値より小さな顔画像を含む第１の顔画像群に絞り込み、
上記第１の顔画像群に含まれる顔画像を、上記表情情報に基づいて、特定の表情の程度を示すスコアが第２の閾値より大きな顔画像を含む第２の顔画像群に絞り込み、
上記第２の顔画像群に含まれる顔画像のうち、上記コントラスト情報に基づいて、コントラストの程度を示すスコアが最も高い顔画像を上記代表の顔画像に決定する
請求項２８に記載の画像処理装置。
【請求項３０】
ユーザが上記第１の閾値および上記第２の閾値を設定するためのユーザ設定部をさらに備える
請求項２９に記載の画像処理装置。
【請求項３１】
複数の顔画像から抽出される２つの顔画像の各組み合わせに対して、該２つの顔画像の顔特徴量に基づいて該２つの顔画像の類似度を算出する類似度算出ステップと、
上記複数の顔画像のそれぞれを１つのクラスタとし、その後に、上記類似度算出ステップで算出された上記各組み合わせの類似度に基づいて、該類似度の高い組み合わせの順番に、該組み合わせを構成する顔画像が含まれるクラスタを順次結合して最終的に１つのクラスタとする階層化クラスタリングステップと、
上記階層化クラスタリングステップで得られたツリー状のクラスタ情報に基づいて、最上位層のクラスタから過結合の判断を行い、過結合と判断されたクラスタを上記階層化クラスタリングステップで結合する前の２つのクラスタに分割してクラスタを決定するクラスタ決定ステップと
を有する画像処理方法。
【請求項３２】
コンピュータを、
複数の顔画像から抽出される２つの顔画像の各組み合わせに対して、該２つの顔画像の顔特徴量に基づいて該２つの顔画像の類似度を算出する類似度算出手段と、
上記複数の顔画像のそれぞれを１つのクラスタとし、その後に、上記類似度算出手段で算出された上記各組み合わせの類似度に基づいて、該類似度の高い組み合わせの順番に、該組み合わせを構成する顔画像が含まれるクラスタを順次結合して最終的に１つのクラスタとする階層化クラスタリング手段と、
上記階層化クラスタリング手段で得られたツリー状のクラスタ情報に基づいて、最上位層のクラスタから過結合の判断を行い、過結合と判断されたクラスタを上記階層化クラスタリング部で結合する前の２つのクラスタに分割してクラスタを決定するクラスタ決定手段と
して機能させるプログラム。
【請求項３３】
複数の所定物体の画像から抽出される２つの所定物体の画像の各組み合わせに対して、該２つの所定物体の画像の特徴量に基づいて該２つの所定物体の画像の類似度を算出する類似度算出部と、
上記複数の所定物体の画像のそれぞれを１つのクラスタとし、その後に、上記類似度算出部で算出された上記各組み合わせの類似度に基づいて、該類似度の高い組み合わせの順番に、該組み合わせを構成する所定物体の画像が含まれるクラスタを順次結合して最終的に１つのクラスタとする階層化クラスタリング部と、
上記階層化クラスタリング部で得られたツリー状のクラスタ情報に基づいて、最上位層のクラスタから過結合の判断を行い、過結合と判断されたクラスタを上記階層化クラスタリング部で結合する前の２つのクラスタに分割してクラスタを決定するクラスタ決定部と
を備える画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像処理装置、画像処理方法およびプログラムに関する。詳しくは、この発明は、動画像ストリームから順次取り出された静止画フレームに含まれる顔画像（所定物体の画像）を検出し、現在フレームで検出された顔画像が過去フレームで検出されて保存されている顔画像と同一人物の顔画像であるか否かを双方の顔画像の顔特徴量に基づいて判断し、同一であると判断されるときいずれか一方のみを保存することにより、短い解析時間で登場人物の抽出を良好に行い得るようにした画像処理装置等に係るものである。
【背景技術】
【０００２】
ハードディスクやメモリカード記録型のカムコーダやデジタルカメラの普及によって、動画を撮影する機会が増えている。撮りためた大量の動画ファイルから見たい動画ファイル、シーンをすばやく検索・閲覧するために、動画解析を用いたハイライト検出など様々な方法が提案されている。顔検出、顔識別技術を応用した動画ファイルの登場人物抽出技術も動画の検索・閲覧性を高めるための技術のひとつであり、いくつかの手法が提案されている。
【０００３】
例えば、特許文献１の手法では、動画ファイルをデコードして得られた静止画シーケンスの隣接フレーム間で顔トラッキングを行い、同じ人物の顔区間を求めておいて、最後に登場人物を分類するためにクラスタリングを行っている。
【特許文献１】特開２００８−７７５３６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１の手法では、精度の良い顔トラッキングを行うため、動画ファイルのフルフレーム、あるいはフルフレームに近い入力が必要である。撮影時に顔トラッキングを行うことができればよいが、撮影後の動画ファイルに対して処理を行う場合には、動画ファイルのフルデコードが必要になる。最近のハイビジョンの動画ファイルに対して、フルデコード処理を行うと、非常に長い解析時間がかかる。そのため、この特許文献１の手法は実用的ではない。
【０００５】
この発明の目的は、短い解析時間で登場人物の抽出を良好に行い得るようにすることにある。
【課題を解決するための手段】
【０００６】
この発明の概念は、
動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、上記静止画フレームに含まれる顔画像を検出する顔検出部と、
上記顔検出部で検出された顔画像に対応した画像情報に基づいて、該顔画像の顔特徴量を算出する顔特徴量算出部と、
現在フレームで上記顔検出部により検出された第１の顔画像が過去フレームで上記顔検出部により検出されて保存されている第２の顔画像と同一人物の顔画像であるか否かを、少なくとも上記顔特徴量算出部で算出された上記第１の顔画像および上記第２の顔画像の顔特徴量に基づいて判断する同一性判断部と、
上記同一性判断部で同一であると判断されるとき、上記第１の顔画像と上記第２の顔画像のうち、いずれか一方のみを保存し、上記同一性判断部で同一でないと判断されるとき、上記第１の顔画像を上記第２の顔画像と共に保存する結合処理部と
を備える画像処理装置にある。
【０００７】
この発明においては、顔検出部により、動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、静止画フレームに含まれる顔画像が検出される。なお、ここでは、顔画像として説明するが、一般的には、所定物体の画像として考えることができる。
【０００８】
例えば、動画像ストリームはイントラフレームを一定間隔で含み、このイントラフレームの画像情報にデータ伸長処理が施されることで、動画像ストリームから静止画フレームの画像情報が順次取り出される。
【０００９】
顔特徴量算出部により、顔検出部で検出された顔画像の顔特徴量が算出される。例えば、顔特徴量算出部では、顔画像から眉毛の両端、目の両端と中央等の顔特徴位置が検出され、各顔特徴位置における顔特徴量（局所特徴量ベクトル）が、ガボアフィルタ（Gabor Filter）などの畳み込み演算を用いて、算出される。
【００１０】
動画像ストリームには同一人物が何度も登場する。そのため、動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて検出される顔画像には同一人物の顔画像が含まれる。動画ストリームに登場する人物を抽出する場合、各登場人物に対して最終的に残る顔画像は１つで足りる。
【００１１】
同一性判断部により、現在フレームで検出された第１の顔画像が過去フレームで検出されて保存されている第２の顔画像と同一人物の顔画像であるか否かが、少なくとも顔特徴量算出部で算出された第１の顔画像および第２の顔画像の顔特徴量に基づいて判断される。例えば、同一性判断部では、第１の顔画像の顔特徴量および第２の顔画像の顔特徴量に基づいて第１の顔画像と第２の顔画像の類似度が求められ、この類似度と閾値とが比較され、第１の顔画像と第２の顔画像が同一人物の顔画像であるか否かが判断される。
【００１２】
また、例えば、同一性判断部では、第１の顔画像および第２の顔画像の顔特徴量と共に、少なくとも、第１の顔画像および第２の顔画像の検出枠情報、または第１の顔画像および第２の顔画像のフレーム間の時間情報に基づいて、第１の顔画像と第２の顔画像が同一人物の顔画像であるか否かが判断される。
【００１３】
この場合、例えば、同一性判断部では、第１の顔画像の顔特徴量および第２の顔画像の顔特徴量に基づいて、第１の顔画像と第２の顔画像の類似度が求められる。そして、類似度が第１の閾値以上であるとき第１の顔画像と第２の顔画像が同一人物の顔画像であると判断される。また、類似度が第１の閾値より小さく第２の閾値以上であるとき、第１の顔画像と第２の顔画像の検出枠およびフレーム間の時間が一定の条件を満たした場合には第１の顔画像と第２の顔画像が同一人物の顔画像であると判断される。
【００１４】
例えば、検出枠の一定条件は、第１の顔画像の検出枠と上記第２の顔画像の検出枠の重心間の距離が閾値より短いという第１の条件と、上記第１の顔画像の検出枠と上記第２の顔画像の検出枠の面積比が第１の閾値から第２の閾値の間にあるという第２の条件からなる。また、例えば、フレーム間の一定条件は、第１の顔画像と第２の顔画像のフレーム間の時間が閾値より短いという条件からなる。
【００１５】
結合処理部により、同一性判断部で同一であると判断されるとき、第１の顔画像と第２の顔画像のうち、いずれか一方のみが保存され、同一性判断部で同一でないと判断されるとき、第１の顔画像は第２の顔画像と共に保存される。
【００１６】
この発明においては、動画像ストリームから順次取り出された静止画フレームに含まれる顔画像が検出され、現在フレームで検出された顔画像と過去フレームで検出されて保存されている顔画像とが同一人物の顔画像であるか否かが双方の顔画像の顔特徴量に基づいて判断され、同一人物の顔画像であると判断されるときいずれか一方のみが保存される。
【００１７】
この場合、顔画像を検出する静止画フレームの取り出し間隔は例えば１秒間に１フレーム程度でよく、従って解析を行うフレーム数が少ないため、短い解析時間で登場人物の抽出が可能となる。例えば、ＭＰＥＧあるいはＡＶＣのストリームの場合、このストリームに一定間隔で含まれるイントラフレームだけをデコードして用いることができ、いわゆるフルデコードをする必要がなく、解析時間の短縮化が顕著となる。
【００１８】
また、この発明において、上述したように、同一性判断部で、第１の顔画像および第２の顔画像の顔特徴量と共に、少なくとも、第１の顔画像および第２の顔画像の検出枠情報、または第１の顔画像および第２の顔画像のフレーム間の時間情報に基づいて、第１の顔画像と第２の顔画像が同一人物の顔画像であるか否かが判断されることで、判断精度を高めることが可能となる。
【００１９】
例えば、照明条件などの変化により、第１の顔画像と第２の顔画像とが同一人物の顔画像であるにも拘わらず、第１の顔画像の顔特徴量および第２の顔画像の顔特徴量に基づいて算出される第１の顔画像と第２の顔画像の類似度が低くなった場合に、第１の顔画像および第２の顔画像の検出枠情報、または第１の顔画像および第２の顔画像のフレーム間の時間情報が一定の条件を満たしているか否かを考慮することで、第１の顔画像と第２の顔画像とが同一人物の顔画像であると判断することが可能となる。
【００２０】
この発明において、例えば、顔検出部で検出された顔画像の顔の向きを示す顔回転角度を検出する顔回転角度検出部と、顔検出部で検出された顔画像より、顔回転角度検出部で検出された顔の回転角度の情報に基づいて、正面から所定方向への顔回転角度が閾値より大きな顔画像を除去するノイズ顔除去部とをさらに備える、ようにされてもよい。
【００２１】
極端に横向き、上向き、下向きの顔画像にあっては、顔特徴量算出部において正確な顔特徴量の算出ができない可能性が高く、同一性判断部における判断精度を低下させるおそれがある。上述したように、正面から所定方向への顔回転角度が閾値より大きな顔画像を除去することで、極端に横向き、上向き、下向きの顔画像を予め除去でき、同一性判断部における判断精度の低下を抑制できる。
【００２２】
また、この発明において、例えば、顔検出部で検出された顔画像の画像情報に基づいて、この顔画像のコントラストを示すコントラストスコアを算出するコントラストスコア算出部と、顔検出部で検出された顔画像より、コントラストスコア算出部で算出されたコントラストスコアが閾値より小さな顔画像を除去するノイズ顔除去部とをさらに備える、ようにされてもよい。
【００２３】
極端にコントラストが低く、ぼけた顔画像にあっては、顔特徴量算出部において正確な顔特徴量の算出ができない可能性が高く、同一性判断部における判断精度を低下させるおそれがある。上述したように、コントラストスコアが閾値より小さな顔画像を除去することで、極端にコントラストが低く、ぼけた顔画像を予め除去でき、同一性判断部における判断精度の低下を抑制できる。
【００２４】
また、この発明において、例えば、結合処理部により保存された顔画像を、少なくとも、顔特徴量算出部で算出された顔特徴量に基づいて、同一人物の顔画像を１つのクラスタとする顔クラスタリング部をさらに備える、ようにされてもよい。
【００２５】
動画像ストリームの最後まで到達したとき、この動画像ストリームから順次取り出された静止画フレームの画像データに基づいて、上述の結合処理部により、所定数の顔画像が保存された状態におかれる。顔クラスタリング部により、結合処理部で保存された顔画像が、同一人物の顔画像が１つのクラスタとなるように、少なくとも、特徴量算出部で算出された特徴量に基づいて、クラスタリング処理が行われる。
【００２６】
上述したように結合処理部において、現在フレームで検出された顔画像が過去フレームで検出されて保存されている顔画像と同一人物の顔画像であるときいずれか一方のみが保存されることで、動画像ストリームの最後まで到達したときに、当該結合処理部により最終的に保存されている顔画像の個数が低減される。そのため、この顔クラスタリング部における処理時間の低減を図ることができる。
【００２７】
顔クラスタリング部は、例えば、類似度算出部、階層化クラスタリング部およびクラスタ決定部を有するものとされる。類似度算出部では、結合処理部で保存された顔画像から抽出される２つの顔画像の各組み合わせに対して、この顔画像の特徴量に基づいて、この顔画像の類似度が算出される。階層化クラスタリング部では、結合処理部で保存された顔画像のそれぞれが１つのクラスタとされ、その後に、類似度算出部で算出された各組み合わせの類似度に基づいて、この類似度の高い組み合わせの順番に、この組み合わせを構成する顔画像が含まれるクラスタが順次結合されて最終的に１つのクラスタとされる。
【００２８】
クラスタ決定部では、階層化クラスタリング部で得られたツリー状のクラスタ情報に基づいて、最上位層のクラスタから過結合の判断が行われ、過結合と判断されたクラスタが階層化クラスタリング部で結合する前の２つのクラスタに分割されてクラスタが決定される。
【００２９】
例えば、クラスタ決定部は、過結合判断対象のクラスタに含まれる顔画像の顔特徴量を平均した平均顔特徴量を算出する平均顔特徴量算出部と、この平均顔特徴量算出部で算出された平均顔特徴量と過結合判断対象のクラスタに含まれる顔画像の顔特徴量とから個別類似度を算出する個別類似度算出部とを有し、過結合判断対象のクラスタに含まれる顔画像のうち、少なくとも、いずれかの顔画像についての個別類似度が個別類似度比較閾値より小さいとき、過結合判断対象のクラスタは過結合であると判断する、ものとされる。例えば、ユーザが個別類似度比較閾値を設定するためのユーザ設定部が備えられる。
【００３０】
また、例えば、クラスタ決定部は、さらに、過結合判断対象のクラスタに含まれる顔画像についての個別類似度算出部で算出された個別類似度を平均した平均類似度を算出する平均類似度算出部をさらに有し、平均類似度算出部で算出された平均類似度が平均類似度比較閾値より小さいとき、過結合判断対象のクラスタは過結合であると判断する、ものとされる。例えば、ユーザが平均類似度比較閾値を設定するためのユーザ設定部が備えられる。
【００３１】
また、例えば、この発明において、顔クラスタリング部で得られたクラスタのうち、複数の顔画像を含むクラスタについて、この複数の顔画像から代表の顔画像を決定する代表画像決定部をさらに備える、ようにされてもよい。例えば、この代表画像決定部では、複数の顔画像を含むクラスタについて、この複数の顔画像の顔回転角度情報、表情情報およびコントラスト情報の少なくともいずれかに基づいて代表の顔画像が決定される。
【００３２】
例えば、代表の顔画像の決定処理は、以下の手順で行われる。すなわち、まず、複数の顔画像は、顔の回転角度が第１の閾値より小さな顔画像を含む第１の顔画像群に絞り込まれる。次に、この第１の顔画像群に含まれる顔画像は、特定の表情の程度を示すスコアが第２の閾値より大きな顔画像を含む第２の顔画像群に絞り込まれる。次に、この第２の顔画像群に含まれる顔画像のうち、コントラストの程度を示すスコアが最も高い顔画像が、代表の顔画像に決定される。例えば、ユーザが第１の閾値および第２の閾値を設定するためのユーザ設定部が備えられる。
【００３３】
このように、結合処理部で保存された顔画像に対して同一人物の顔画像を１つのクラスタとする処理が行われ、さらに、複数の顔画像を含むクラスタについては代表の顔画像が決定されることで、動画像ストリーム内の登場人物の顔画像を表示する閲覧アプリケーションにおいて、同一人物の顔画像が重複して表示されることを防止でき、しかも、最適な顔画像を表示できるようになる。
【００３４】
また、この発明の概念は、
複数の顔画像から抽出される２つの顔画像の各組み合わせに対して、該２つの顔画像の顔特徴量に基づいて該２つの顔画像の類似度を算出する類似度算出部と、
上記複数の顔画像のそれぞれを１つのクラスタとし、その後に、上記類似度算出部で算出された上記各組み合わせの類似度に基づいて、該類似度の高い組み合わせの順番に、該組み合わせを構成する顔画像が含まれるクラスタを順次結合して最終的に１つのクラスタとする階層化クラスタリング部と、
上記階層化クラスタリング部で得られたツリー状のクラスタ情報に基づいて、最上位層のクラスタから過結合の判断を行い、過結合と判断されたクラスタを上記階層化クラスタリング部で結合する前の２つのクラスタに分割してクラスタを決定するクラスタ決定部と
を備える画像処理装置にある。
【００３５】
この発明において、類似度算出部により、複数の顔画像から抽出される２つの顔画像の各組み合わせに対して、この２つの顔画像の顔特徴量に基づいて、この２つの顔画像の類似度が算出される。ここで、顔画像の顔特徴量は、外部から与えられてもよく、あるいは、複数の顔画像の画像情報に基づいて、算出されるようにしてもよい。
【００３６】
また、階層化クラスタリング部により、複数の顔画像のそれぞれが１つのクラスタとされ、その後に、類似度算出部で算出された各組み合わせの類似度に基づいて、この類似度の高い組み合わせの順番に、この組み合わせを構成する顔画像が含まれるクラスタが順次結合されて最終的に１つのクラスタとされる。
【００３７】
また、クラスタ決定部により、階層化クラスタリング部で得られたツリー状のクラスタ情報に基づいて、最上位層のクラスタから過結合の判断が行われ、過結合と判断されたクラスタが階層化クラスタリング部で結合する前の２つのクラスタに分割されてクラスタが決定される。
【００３８】
このように、類似度算出部、階層化クラスタリング部およびクラスタ決定部で順次処理されることで、複数の顔画像に対して同一人物の顔画像を１つのクラスタとするクラスタリングが良好に行われる。なお、ここでは、顔画像として説明するが、一般的には、所定物体の画像として考えることができる。
【００３９】
例えば、クラスタ決定部は、過結合判断対象のクラスタに含まれる顔画像の顔特徴量を平均した平均顔特徴量を算出する平均顔特徴量算出部と、この平均顔特徴量算出部で算出された平均顔特徴量と過結合判断対象のクラスタに含まれる顔画像の顔特徴量とから個別類似度を算出する個別類似度算出部とを有し、過結合判断対象のクラスタに含まれる顔画像のうち、少なくとも、いずれかの顔画像についての個別類似度が個別類似度比較閾値より小さいとき、過結合判断対象のクラスタは過結合であると判断する、ものとされる。例えば、ユーザが個別類似度比較閾値を設定するためのユーザ設定部が備えられる。
【００４０】
また、例えば、クラスタ決定部は、さらに、過結合判断対象のクラスタに含まれる顔画像についての個別類似度算出部で算出された個別類似度を平均した平均類似度を算出する平均類似度算出部をさらに有し、平均類似度算出部で算出された平均類似度が平均類似度比較閾値より小さいとき、過結合判断対象のクラスタは過結合であると判断する、ものとされる。例えば、ユーザが平均類似度比較閾値を設定するためのユーザ設定部が備えられる。
【００４１】
また、この発明において、例えば、クラスタリング部で得られたクラスタのうち、複数の顔画像を含むクラスタについて、この複数の顔画像から代表の顔画像を決定する代表画像決定部をさらに備える、ようにされてもよい。例えば、この代表画像決定部では、複数の顔画像を含むクラスタについて、この複数の顔画像の顔回転角度情報、表情情報およびコントラスト情報の少なくともいずれかに基づいて代表の顔画像が決定される。
【００４２】
例えば、代表の顔画像の決定処理は、以下の手順で行われる。すなわち、まず、複数の顔画像は、顔の回転角度が第１の閾値より小さな顔画像を含む第１の顔画像群に絞り込まれる。次に、この第１の顔画像群に含まれる顔画像は、特定の表情の程度を示すスコアが第２の閾値より大きな顔画像を含む第２の顔画像群に絞り込まれる。次に、この第２の顔画像群に含まれる顔画像のうち、コントラストの程度を示すスコアが最も高い顔画像が、代表の顔画像に決定される。例えば、ユーザが第１の閾値および第２の閾値を設定するためのユーザ設定部が備えられる。
【００４３】
このように、複数の顔画像に対して同一人物の顔画像を１つのクラスタとする処理が行われ、さらに、複数の顔画像を含むクラスタについては代表の顔画像が決定されることで、例えば、動画像ストリーム内の登場人物の顔画像を表示する閲覧アプリケーションにおいて、同一人物の顔画像が重複して表示されることを防止でき、しかも、最適な顔画像を表示できるようになる。
【発明の効果】
【００４４】
この発明によれば、動画像ストリームから順次取り出された静止画フレームに含まれる顔画像（所定物体の画像）を検出し、現在フレームで検出された顔画像が過去フレームで検出されて保存されている顔画像と同一人物の顔画像であるか否かを双方の顔画像の顔特徴量に基づいて判断し、同一であると判断されるときいずれか一方のみを保存するものであり、短い解析時間で登場人物の抽出を良好に行うことができる。
【００４５】
また、この発明によれば、類似度算出、階層化クラスタリングおよびクラスタ決定の順に処理されるものであり、複数の顔画像（所定物体の画像）に対して同一人物の顔画像を１つのクラスタとするクラスタリングを良好に行うことができる。
【発明を実施するための最良の形態】
【００４６】
以下、図面を参照しながら、この発明の実施の形態について説明する。
【００４７】
「全体の説明」
図１は、実施の形態としての画像処理装置１００の構成例を示している。この画像処理装置１００は、デコード部１０１と、顔検出部１０２と、顔特徴量算出部１０３と、ノイズ顔除去部１０４と、同一顔結合処理部１０５と、顔クラスタリング部１０６とを有している。
【００４８】
デコード部１０１は、例えば、ハードディスク（ＨＤＤ）、あるいはメモリカードに記録されている動画ファイルを読み出し、この動画ファイル内の動画像ストリームから、静止画フレームを、例えば１秒間に１フレーム程度の割合で取り出す。動画像ストリームが、例えばＭＰＥＧ（Moving Picture Expert Group)、あるいはＡＶＣＨＤ（AdvancedVideo Codec High Definition）のビデオストリームである場合、デコード部１０１は、一定間隔で含まれるイントラフレームの画像情報にデータ伸長処理を施し、必要とする静止画フレームの画像情報を出力する。
【００４９】
顔検出部１０２は、デコード部１０１で順次取り出された静止画フレーム（静止画像）の画像情報に基づいて、静止画フレームに含まれる顔画像を検出する。この顔検出部１０２は、例えば、複数の解像度で検出枠をスライドさせながら静止画フレームをスキャンして顔画像の検出を行うが、この手法に限定されるものではない。この顔検出部１０２の詳細については後述する。
【００５０】
顔検出部１０２は、顔画像を検出する毎に、その顔画像を特定するユニークなＩＤ（identifier）を、顔ＩＤとして付与する。この顔ＩＤは、例えば、動画像ストリームのフレーム番号と、そのフレーム番号における検出順を示す番号とを用いて、生成できる。
【００５１】
顔検出部１０２は、検出された顔画像毎に、顔ＩＤを付加して、顔画像情報（顔検出枠内の画像情報）および顔検出枠情報を、顔特徴量算出部１０３に送る。ここで、顔検出枠情報には、位置情報とサイズ情報が含まれる。位置情報は、例えば、図２に示すように、静止画フレーム上の検出枠ＤＦの左上角のピクセル位置（ｘ，ｙ）を示す情報である。また、サイズ情報は、例えば、図２に示すように、静止画フレーム上の検出枠ＤＦの水平サイズwidthおよび垂直サイズheightを示す情報である。サイズは、ピクセル数で表される。
【００５２】
なお、この実施の形態において、顔検出部１０２は、静止画フレーム（静止画像）から顔画像を検出する際に、その顔画像の顔の向きを示す顔回転角度を検出する。この意味で、顔検出部１０２は、顔回転角度検出部を構成している。顔検出部１０２は、例えば、アダブースト（AdaBoost）等の機械学習アルゴリズムにより学習された顔辞書を用いて顔画像の検出を行う。顔検出部１０２は、複数の顔回転角度に対応した顔辞書を備えることで、顔画像の検出と同時に顔回転角度の検出が可能となるが、この手法に限定されるものではない。例えば、検出された顔画像の左右の目、鼻、口等のパーツを検出し、これら各パーツの距離、位置の関係から、顔回転角度を検出する方法もある。
【００５３】
この顔回転角度の方向としては、ヨー（yaw）角、ロール（roll）角、ピッチ（pitch）角の３つの方向がある。ヨー（yaw）角は、図３（ａ）に示すように、人の左右の目を結んだ線と平行で、ほぼ人の頭の中心を通る軸２０１と垂直な軸であって、ほぼ頭の中心を垂直に通る軸２０２を中心とする角度であり、右方向が負、左方向が正となるように定義される。また、ロール（roll）角は、図３（ｂ）に示すように、上述の軸２０１と軸２０２とに直交する軸２０３を中心として回転する角度であり、軸２０１が水平になる角度が０度とされる。また、ピッチ（pitch）角は、図３（ａ）に示すように、軸２０１を中心とする上下の角度であり、例えば上を向くと正、下を向くと負とされる。
【００５４】
顔検出部１０２は、検出された顔画像毎に、顔ＩＤを付加して、顔画像情報および顔検出枠情報（x,y,width, height）と共に、顔回転角度情報（yaw,roll,pitch）も、顔特徴量算出部１０３に送る。
【００５５】
顔特徴量算出部１０３は、顔検出部１０２で検出された顔画像の画像情報、つまりこの顔画像の検出枠内の画像情報に基づいて、この顔画像の顔特徴量を算出する。この顔特徴量算出部１０３は、例えば、顔画像から眉毛の両端、目の両端と中央等の顔特徴位置を検出し、各顔特徴位置における局所特徴量ベクトル（識別特徴ベクトル）を、ガボアフィルタ（Gabor Filter）などの畳み込み演算を用いて算出するが、この手法に限定されるものではない。この顔特徴量算出部１０３の詳細については後述する。
【００５６】
なお、この実施の形態において、顔特徴量算出部１０３は、上述した顔画像の顔特徴量の他に、この顔画像の画像情報に基づいて、特定の表情、例えば笑顔の程度を示す笑顔スコア、およびコントラストの程度を示すコントラストスコアを算出する。この意味で、顔特量算出部１０３は、笑顔スコア算出部およびコントラストスコア算出部を構成している。
【００５７】
顔特徴量算出部１０３は、例えば、アダブースト（AdaBoost）等の機械学習アルゴリズムにより学習された笑顔辞書を用いて笑顔スコアを算出するが、この手法に限定されるものではない。また、顔特徴量算出部１０３は、顔画像の画像情報に基づいて、ピクセル毎に得られる隣接ピクセルとの輝度差分の二乗値を加算していくことで、コントラストスコアを算出するが、この手法に限定されるものではない。これら笑顔スコアおよびコントラストスコアの算出方法の詳細については後述する。
【００５８】
顔特徴量算出部１０３は、顔検出部１０２で検出された顔画像毎に、顔ＩＤを付加して、顔検出部１０２から受け渡された顔検出枠情報、顔回転角度情報と共に、顔特徴量、笑顔スコアおよびコントラストスコアを、ノイズ顔除去部１０４に送る。
【００５９】
ノイズ顔除去部１０４は、後段の同一顔結合処理部１０５および顔クラスタリング部１０６の処理精度に悪影響を及ぼす可能性のある横顔やぼけ顔の顔画像を除去する。特に、個人が撮影した動画においては、手ぶれが大きかったり、被写体の人物が動いていたり、横顔になっているケースが多い。
【００６０】
ぼけ顔の顔画像については、上述の顔特徴量算出部１０３で正確な顔特徴量を算出できない可能性が高く、同一顔結合処理部１０５および顔クラスタリング部１０６の処理精度に悪影響を及ぼす可能性がある。そのため、ノイズ顔除去部１０４は、上述したように顔特徴量算出部１０３で算出されたコントラストスコアに対して閾値処理を行うことで、後段の処理には入力しない。
【００６１】
また、横顔の顔画像についても、同様に、上述の顔特徴量算出部１０３で正確な顔特徴量を算出できない可能性が高く、同一顔結合処理部１０５および顔クラスタリング部１０６の処理精度に悪影響を及ぼす可能性がある。そのため、上述したように顔検出部１０２で検出された顔回転角度に対して閾値処理を行うことで、後段の処理には入力しない。
【００６２】
ノイズ顔除去部１０４は、コントラストスコアが閾値（例えば１５０）より小さな顔画像を除去する。また、ノイズ顔除去部１０４は、正面から所定方向、例えばヨー（yaw）角方向およびピッチ（pitch）角方向への顔回転角度が閾値（例えば４５度）より大きな顔画像を除去する。このノイズ顔除去部１０４の詳細については後述する。
【００６３】
ノイズ顔除去部１０４は、顔特徴量算出部１０３から受け渡された、各顔画像に対応したデータ（以下、「顔データ」という）のうち、除去した顔画像の顔データを除いて残ったものを、同一顔結合処理部１０５に送る。
【００６４】
ここで、顔データの構造について説明する。図４は、顔データの構造を示している。顔データは、顔ＩＤ、顔検出枠情報、顔回転角度情報、笑顔スコア、コントラストスコアおよび顔特徴量を含んでいる。上述したように、顔ＩＤは顔検出部１０２で付与され、顔検出枠情報および顔回転角度情報は顔検出部１０２で得られる。また、上述したように、顔特徴量、笑顔スコアおよびコントラストスコアは、顔特徴量算出部１０３で得られる。
【００６５】
同一顔結合処理部１０５は、ノイズ顔除去部１０４から、現フレームの顔データが送られてくる毎に、同一の顔画像を結合する処理を行う。この同一顔結合処理部１０５は、同一性判断部および結合処理部を構成している。
【００６６】
同一顔結合処理部１０５は、この同一の顔画像の結合処理を行うことで、動画像ストリームの最後まで到達したときに最終的に保存されている顔画像の個数を低減でき、後段の登場人物の分類を行う顔クラスタリング部１０６における処理時間を短くできる。この同一顔結合処理を行わないと、同じ人物を撮り続けている長い動画像ストリームでは、同一人物の顔画像が数百〜数千のフレームで検出されることから、後段の顔クラスタリング部１０６における処理が破綻するおそれがある。
【００６７】
また、同一顔結合処理部１０５は、この同一の顔画像の結合処理を行うことで、動画像ストリームの最後まで到達したときに最終的に保存されている顔画像の個数を低減でき、後段の顔クラスタリング部１０６における登場人物の分類精度を上げることができる。一般的に、同じ人物の顔画像をまとめておき、顔クラスタリング部１０６に送る顔画像の数が少ないほど登場人物の分類精度は高くなる。顔クラスタリング部１０６に送る顔画像に同一人物の顔画像が多く含まれるほど、顔クラスタリング部１０６では、同じ人物なのに別のクラスタになってしまう過分割が起こり易くなる。
【００６８】
同一顔結合処理部１０５は、現在フレームで検出された第１の顔画像（現在顔画像）と過去フレームで検出されて保存されている第２の顔画像（過去顔画像）とが同一人物のものであるか否かを判断する。この場合、同一顔結合処理部１０５は、双方の顔画像の顔特徴量に基づいて算出された類似度、双方の顔画像の顔検出枠の位置、サイズ、双方の顔画像のフレームの時間（フレーム間隔）等にそれぞれ閾値を定めて判断する。
【００６９】
例えば、同一顔結合処理部１０５は、フレーム間隔が短く、顔検出枠の位置、サイズが近い場合は、同一人物である可能性が高いので、照明条件などにより双方の顔画像の類似度が低くても、同一人物と判断する。逆に、例えば、同一顔結合処理部１０５は、フレーム間隔が長いときは、双方の顔画像の類似度が低い場合は、違う人物と判断する。同一顔結合処理部１０５は、同一であると判断するとき、双方の顔画像のうちいずれか一方のみを保存し、同一でないと判断するとき、双方の顔画像を共に保存する。この同一顔結合処理部１０５の詳細については後述する。
【００７０】
同一顔結合処理部１０５は、動画像ストリームの最後まで到達したとき、最終的に保存されている顔画像の顔データ（図４参照）を顔クラスタリング部１０６に送る。
【００７１】
顔クラスタリング部１０６は、上述の動画像ストリームの最後まで到達したときに同一顔結合処理部１０５に最終的に保存されている顔画像に対して、同一人物の顔画像を１つのクラスタとするクラスタリング処理を行って、動画像ストリーム内に登場する人物の分類を行う。この顔クラスタリング部１０６は、少なくとも、各顔画像の顔特徴量に基づいて、クラスタリング処理を行う。
【００７２】
動画像ストリームの登場人物のリストを表示する閲覧アプリケーションにおいて、同一人物の顔画像は１枚にまとめた方がわかりやすい。そこで、顔クラスタリング部１０６は、上述のクラスタリング処理の結果、複数の顔画像を含むクラスタについて、その複数の顔画像から代表の顔画像を決定する。顔クラスタリング部１０６は、例えば、顔回転角度情報、表情情報およびコントラスト情報の少なくともいずれかに基づいて、複数の顔画像から代表の顔画像を決定する。この顔クラスタリング部１０６の詳細については後述する。
【００７３】
顔クラスタリング部１０６は、動画像ストリームに登場する人物を示す登場人物データとしての各クラスタのデータを出力する。図５は、登場人物データとしてのクラスタデータの構造を示している。クラスタデータは、ＩＤ、顔ＩＤリストおよび代表顔ＩＤを含んでいる。ＩＤは、クラスタを識別するための識別子である。顔ＩＤリストは、クラスタに含まれる各顔画像を示す顔ＩＤのリストである。代表顔ＩＤは、クラスタに複数の顔画像が含まれている場合に、上述したように決定された代表の顔画像を示す顔ＩＤである。
【００７４】
次に、図１に示す画像処理装置１００の動作を説明する。
【００７５】
デコード部１０１では、ハードディスク（ＨＤＤ）、あるいはメモリカード等に記録されている動画ファイルが読み出される。そして、このデコード部１０１では、動画ファイル内の動画像ストリームから、静止画フレームが、例えば１秒間に１フレーム程度の割合で取り出される。例えば、動画像ストリームが、図６（ａ）、図７（ａ）に示すように、ＭＰＥＧのビデオストリームである場合、デコード部１０１では、一定間隔で含まれるイントラフレーム（Ｉフレーム）の画像情報がデータ伸長処理されてデコードが行われ、図６（ｂ）、図７(ｂ)に示すように、静止画フレームの画像情報が順次取り出される。
【００７６】
このようにデコード部１０１で動画像ストリームから順次取り出された静止画フレーム（静止画像）の画像情報は、顔検出部１０２に送られる。この顔検出部１０２では、図６（ｃ）に示すように、静止画フレームに含まれる顔画像が検出される。この顔検出部１０２では、顔画像が検出される毎に、その顔画像を特定するユニークなＩＤ（identifier）が、顔ＩＤとして付与される。また、この顔検出部１０２では、検出された各顔画像の顔の向きを示す顔回転角度が検出される。この顔検出部１０２から顔特徴量算出部１０３には、検出された顔画像毎に、顔ＩＤが付加されて、顔画像情報、顔検出枠情報（x,y,width, height）および顔回転角度情報（yaw,roll,pitch）が送られる。
【００７７】
顔特徴量算出部１０３では、顔検出部１０２で検出された顔画像の画像情報に基づいて、図６（ｃ）に示すように、この顔画像の顔特徴量として局所特徴量ベクトル（識別特徴ベクトル）が算出される。また、顔特徴量算出部１０３では、顔検出部１０２で検出された顔画像の画像情報に基づいて、笑顔の程度を示す笑顔スコア、およびコントラストの程度を示すコントラストスコアが算出される。顔特徴量算出部１０３からノイズ顔除去部１０４には、顔検出部１０２で検出された顔画像毎に、顔ＩＤが付加されて、顔検出部１０２から受け渡された顔検出枠情報、顔回転角度情報と共に、顔特徴量、笑顔スコアおよびコントラストスコアが送られる。
【００７８】
ノイズ顔除去部１０４では、同一顔結合処理部１０５および顔クラスタリング部１０６の処理精度に悪影響を及ぼす可能性のある横顔、ぼけ顔の顔画像が除去される。そのため、ノイズ顔除去部１０４では、上述の顔特徴量算出部１０３で算出されたコントラストスコアに対して閾値処理が施されて、ぼけた顔画像が除去される。また、ノイズ顔除去部１０４では、上述の顔検出部１０２で検出された顔回転角度に対して閾値処理が施されて、例えば横顔の顔画像が除去される。つまり、このノイズ顔除去部１０４では、ノイズ顔（ぼけ顔、横顔）の顔画像が除去される。ノイズ顔除去部１０４から同一顔結合処理部１０５には、顔検出部１０２で検出された顔画像からノイズ顔の顔画像の顔データが除かれて残った顔画像の顔データ（顔ＩＤ、顔検出枠情報、顔回転角度情報、笑顔スコア、コントラストスコアおよび顔特徴量が含まれている）が送られる。
【００７９】
同一顔結合処理部１０５では、ノイズ顔除去部１０４から、現フレームの顔データが送られてくる毎に、同一人物の顔画像を結合する処理が行われる。この場合、双方の顔画像が同一人物の顔画像であるか否かは、双方の顔画像の顔特徴量に基づいて算出された類似度、双方の顔画像の顔検出枠の位置、サイズ、双方の顔画像のフレーム間隔等にそれぞれ閾値を定めて判断すされる。同一顔結合処理部１０５では、同一人物の顔画像であると判断されるとき、双方の顔画像のうちいずれか一方のみが保存され、一方同一人物の顔画像でないと判断されるとき、双方の顔画像が共に保存される。
【００８０】
上述のノイズ顔除去部１０４および同一顔結合処理部１０５の処理により、顔検出部１０２で各静止画フレームから検出された顔画像に対し、動画像ストリームの最後まで到達したとき同一顔結合処理部１０５に最終的に保存されている顔画像は、図６（ｄ）に示すように、ノイズ顔の顔画像が除去され、さらに、同一人物の顔画像が結合されたものとなる。
【００８１】
同一顔結合処理部１０５から顔クラスタリング部１０６には、動画像ストリームの最後まで到達したとき、この同一顔結合処理部１０５に最終的に保存されている顔画像の顔データが送られる。顔クラスタリング部１０６では、同一人物の顔画像が１つのクラスタとなるようにクラスタリング処理（分類処理）が行われる。また、この顔クラスタリング部１０６では、クラスタリング処理の結果、複数の顔画像を含むクラスタについて、その複数の顔画像から代表の顔画像を決定する代表画像決定処理が行われる。
【００８２】
このように顔クラスタリング部１０６でクラスタリング処理および代表画像決定処理が行われることで、この顔クラスタリング部１０６からは、図６（ｅ）に示すように、動画像ストリームに登場する人物を重複少なく良好に表示し得る登場人物データ（各クラスタのデータ）が得られる。
【００８３】
図８のフローチャートは、図１に示す画像処理装置１００の処理手順を示している。
【００８４】
画像処理装置１００は、ステップＳＴ１において処理を開始し、その後にステップＳＴ２の処理に移る。このステップＳＴ２において、画像処理装置１００は、デコード部１０１により、動画ファイルに含まれる動画像ストリームのイントラフレーム（Ｉフレーム）をデコードして、静止画フレーム（静止画像）の画像情報を取り出す。
【００８５】
次に、画像処理装置１００は、ステップＳＴ３において、顔検出部１０２により、静止画フレーム内の顔画像を検出し、その後に、ステップＳＴ４の処理に移る。なお、画像処理装置１００は、ステップＳＴ３において、顔画像を検出する際には、その顔回転角度も検出する。
【００８６】
次に、画像処理装置１００は、ステップＳＴ４において、顔画像が検出されたか否かを判断する。顔画像が検出されないとき、画像処理装置１００は、ステップＳＴ２の処理に戻り、デコード部１０１により、次のイントラフレーム（Ｉフレーム）のデコード処理に移る。一方、顔画像が検出されたとき、画像処理装置１００は、ステップＳＴ５の処理に移る。
【００８７】
このステップＳＴ５において、画像処理装置１００は、顔特徴量算出部１０３により、ステップＳＴ３で検出された顔画像の顔特徴量として局所特徴量ベクトルを算出する。なお、このステップＳＴ５において、画像処理装置１００は、顔特徴量算出部１０３により、ステップＳＴ３で検出された顔画像の笑顔スコアおよびコントラストスコアも算出する。
【００８８】
次に、画像処理装置１００は、ステップＳＴ６において、ステップＳＴ３で検出された顔回転角度およびステップＳＴ５で算出されたコントラストスコアに基づいて、ステップＳＴ３で検出された顔画像に、ノイズ顔（横顔またはぼけ顔）があるか否かを判断する。ノイズ顔があるとき、画像処理装置１００は、ステップＳＴ７において、ステップＳＴ３で検出された顔画像からノイズ顔の顔画像を除去し、ステップＳＴ８の処理に移る。上述のステップＳＴ６でノイズ顔がないとき、画像処理装置１００は、直ちに、ステップＳＴ８の処理に移る。
【００８９】
このステップＳＴ８において、画像処理装置１００は、同一顔結合処理部１０５により、現在フレームで検出された顔画像のそれぞれに対して、過去フレームで検出されて保存されている顔画像との同一性を、双方の顔画像の顔特徴量に基づいて算出された類似度、双方の顔画像の検出枠の位置、サイズ、双方の顔画像のフレーム間隔等の情報に基づいて判定する。
【００９０】
次に、画像処理装置１００は、ステップＳＴ９において、ステップＳＴ８の判定結果に基づいて、現在フレームで検出された顔画像を順次判断対象とし、判断対象の顔画像について過去フレームに保存されている顔画像の中に同じ人物のものがあるか否かを判断する。同じ人物のものがあるとき、画像処理装置１００は、ステップＳＴ１０において、同一顔結合処理部１０５により、同じ人物の顔画像を結合する処理、つまり、いずれか一方の顔画像のみを保存する処理を行い、その後に、ステップＳＴ１１の処理に移る。一方、同じ人物のものがないとき、判断対象の顔画像を保存し、その後、ステップＳＴ１１の処理に移る。
【００９１】
このステップＳＴ１１において、画像処理装置１００は、動画像ストリームの最後に達したか否かを判断する。最後に達していないとき、画像処理装置１００は、ステップＳＴ２の処理に戻り、デコード部１０１により、次のイントラフレーム（Ｉフレーム）のデコード処理に移る。一方、最後に達したとき、画像処理装置１００は、ステップＳＴ１２の処理に移る。
【００９２】
このステップＳＴ１２において、画像処理装置１００は、顔クラスタリング部１０６により、顔クラスタリング処理を行う。すなわち、画像処理装置１００は、同一人物の顔画像が１つのクラスタとなるようにクラスタリング処理（分類処理）を行うと共に、複数の顔画像を含むクラスタについては、さらに、その複数の顔画像から代表の顔画像を決定する代表画像決定処理を行って、登場人物データを生成する。画像処理装置１００は、このステップＳＴ１２の処理の後、ステップＳＴ１３において、処理を終了する。
【００９３】
次に、図１に示す画像処理装置１００における顔検出部１０２、顔特徴量算出部１０３、ノイズ顔除去部１０４、同一顔結合処理部１０５および顔クラスタリング部１０６の詳細を説明する。
【００９４】
「顔検出部」
顔検出部１０２は、デコード部１０１で順次取り出されて、図示しない記憶装置に一時的に記憶されている静止画フレーム（静止画像）の画像情報（グレースケール変換後の画像情報）に基づいて、静止画フレームに含まれる顔画像を検出する。また、顔検出部１０２は、静止画フレーム（静止画像）から顔画像を検出する際に、その顔画像の顔の向きを示す顔回転角度を検出する。
【００９５】
顔検出部１０２は、例えば、静止画フレームＩＭ-0が、図９（ａ）に示すようであるとき、図９（ｂ）に破線枠で囲んで示すように、静止画フレームＩＭ-0に含まれている顔画像ＩＭ-1を検出する。顔検出部１０２は、顔画像が検出されるとき、当該顔画像を、顔特徴量算出部１０３における処理のために、図９（ｃ）に示すように、所定のサイズ、この実施の形態では、水平サイズが８０ピクセル、垂直サイズが８０ピクセルとなるように正規化する。
【００９６】
顔検出部１０２は、検出された顔画像毎に、顔ＩＤを付加して、顔画像情報（顔検出枠内の正規化された画像情報）、顔検出枠情報（位置情報、サイズ情報）、さらには、顔回転角度情報を、記憶装置に記憶する。そして、顔検出部１０２は、その記憶内容を適宜なタイミングで、後段の顔特徴量算出部１０３に送る。
【００９７】
顔検出部１０２における顔画像の検出処理の一例について説明する。この検出処理では、図１０に示すように、静止画フレームＩＭ-0上に、所定サイズ、例えば、水平サイズがＳピクセル、垂直サイズがＳピクセルである、検出枠ＦＲ-faが設定される。この実施の形態において、Ｓピクセルは、８０ピクセル以上である。この検出枠ＦＲ-faは、図１０に矢印で示すように、静止画フレームＩＭ-0上を走査され、その位置が順次変化するようにされる。そして、各位置の検出枠ＦＲ-faで囲まれる画像に対し、顔辞書を用いて顔スコアSCORE_faの測定が行われ、当該顔スコアSCORE_faに基づいて、顔画像であるか否かの判定が行われる。
【００９８】
顔辞書は、図１１（ｂ）に示すように、ｔ４組（数百ペア）の、pix_fa1(i)，pix_fa2(i)、θ_fa(i)、およびα_fa(i)の組みあわせからなっている。ここで、pix_fa1(i)，pix_fa2(i)は、図１２に示すように、検出枠ＦＲ-faで囲まれる画像における２点の位置を示している。なお、図１２には、図面の簡単化のため、３組だけを示している。θ_fa(i)は、pix_fa1(i)の輝度値およびpix_fa2(i)の輝度値の差に関する閾値を示している。また、α_fa(i)は、pix_fa1(i)の輝度値およびpix_fa2(i)の輝度値の差と閾値θ_fa(i)の比較結果に基づいて加算または減算される重みを示している。これらpix_fa1(i)，pix_fa2(i)、θ_fa(i)、およびα_fa(i)の各値は、詳細説明は省略するが、アダブースト（AdaBoost）等の機械学習アルゴリズムにより学習されて取得されたものである。
【００９９】
顔スコアSCORE_faの測定は、図１１（ａ）に示すように、顔辞書のpix_fa1(i)，pix_fa2(i)、θ_fa(i)、およびα_fa(i)の各組に対応して、（１）式を満たすか否かを判断し、満たす場合には（２）式の演算を行い、一方、満たさない場合には（３）式の演算を行うことで、行われる。なお、（１）式で、pix_fa1(i)はその位置の輝度値を示し、pix_fa2(i)はその位置の輝度値を示している。
【０１００】
pix_fa1(i)−pix_fa2(i)＜θ_fa(i)      ・・・（１）
SCORE_fa＝SCORE_fa＋α_fa(i)          ・・・（２）
SCORE_fa＝SCORE_fa−α_fa(i)          ・・・（３）
【０１０１】
検出枠ＦＲ-faで囲まれる画像が顔画像であるか否かの判定は、上述したように測定された顔スコアSCORE_faに基づいて行われる。なお、上述の顔スコアSCORE_faの測定において、（１）式を満たす場合はｈ(i)＝１とし、逆に、（１）式を満たさない場合はｈ(i)＝−１とするとき、測定された顔スコアSCORE_faは、（４）式で表される。
【数１】
2010003021.tif 000003
【０１０２】
顔スコアSCORE_faが０より大きいとき、検出枠ＦＲ-faで囲まれる画像は顔画像であると判定される。一方、顔スコアSCORE_faが０以下であるとき、検出枠ＦＲ-faで囲まれる画像は顔画像ではないと判定される。なお、判定の基準を０ではなく、０以外の多少調整された値が用いられることもある。
【０１０３】
なお、静止画フレームに含まれる顔画像には種々の大きさが考えられる。そのため、図１０に示すように、静止画フレームＩＭ-0上に所定サイズの検出枠ＦＲ-faを設定して顔画像を検出するものにあっては、当該静止画フレームＩＭ-0に含まれる顔画像の内、当該検出枠ＦＲ-faのサイズに対応した顔画像だけしか検出できない。そこで、静止画フレームＩＭ-0に含まれる種々の顔画像を検出可能とするために、上述した顔画像の検出処理は、図１３に示すように、静止画フレームＩＭ-0の他に、この静止画フレームＩＭ-0を、適宜縮小した縮小画像ＩＭ-0a，ＩＭ-0b，・・・に対しても行われる。
【０１０４】
図１４のフローチャートは、顔検出部１０２における、顔画像検出処理の手順を示している。
【０１０５】
まず、顔検出部１０２は、ステップＳＴ２１において、顔画像検出処理を開始し、その後に、ステップＳＴ２２に移る。このステップＳＴ２２において、顔検出部１０２は、静止画フレームＩＭ-0の縮小段階Ｓ_NOを１に設定する。そして、顔検出部１０２は、ステップＳＴ２３において、記憶装置から静止画フレームＩＭ-0の画像情報を読み出し、縮小段階Ｓ_NOのスケーリング（縮小処理）を施し、顔画像を検出するための縮小画像（縮小された静止画フレーム）を生成する。
【０１０６】
なお、Ｓ_NO＝１であるとき、縮小率は１とされ、顔画像を検出するための縮小画像は、静止画フレームＩＭ-0と同じものとされる。また、縮小段階Ｓ_NOが大きくなるにつれて、縮小率は小さくなっていく。縮小率が小さな縮小画像で検出される顔画像ほど、静止画フレームＩＭ-0上では大きな顔画像である。なお、顔検出枠情報（位置情報およびサイズ情報）は、静止画フレームＩＭ-0におけるものとされる。
【０１０７】
次に、顔検出部１０２は、ステップＳＴ２４において、ステップＳＴ２３で生成された縮小画像上の左上に検出枠ＦＲ-faを設定する。そして、顔検出部１０２は、ステップＳＴ２５において、上述したように、顔辞書を用いて、顔スコアSCORE_faを測定する。
【０１０８】
次に、顔検出部１０２は、ステップＳＴ２６において、ステップＳＴ２５で測定された顔スコアSCORE_faに基づいて、検出枠ＦＲ-faで囲まれた画像が顔画像であるか否かを判定する。この場合、顔検出部１０２は、SCORE_fa＞０であるとき顔画像であると判定し、SCORE_fa＞０でないとき顔画像ではないと判定する。
【０１０９】
顔画像であると判定するとき、顔検出部１０２は、ステップＳＴ２７に移る。このステップＳＴ２７において、顔検出部１０２は、検出枠ＦＲ-faで囲まれている画像の情報（顔画像情報）を、顔ＩＤを付加して、顔検出枠情報（位置情報およびサイズ情報）と共に記憶装置に記憶する。なお、顔検出部１０２は、上述したように、Ｓピクセル×Ｓピクセルの顔画像情報を、後段の顔特徴量算出部１０３における処理のために、８０ピクセル×８０ピクセルの大きさに正規化した後に記憶装置に記憶する。
【０１１０】
顔検出部１０２は、ステップＳＴ２７の処理の後、ステップＳＴ２８に進む。ステップＳＴ２６で顔画像でないと判定するとき、顔検出部１０２は、直ちに、ステップＳＴ２８に移る。このステップＳＴ２８において、顔検出部１０２は、検出枠ＦＲ-faが最後の位置まで移動したか否かを判定する。最後の位置まで移動していないとき、顔検出部１０２は、ステップＳＴ２９において、検出枠ＦＲ-faを次の位置に移動し、その後に、ステップＳＴ２５に戻って、上述したと同様の処理を繰り返す。なお、検出枠ＦＲ-faは、ある垂直位置においては水平方向に１ピクセルずつ移動していき、当該垂直位置における水平方向の移動が終わると、垂直方向に１ピクセル移動して、次の垂直位置に移る。
【０１１１】
ステップＳＴ２８で検出枠ＦＲ-faが最後の位置まで移動しているとき、顔検出部１０２は、ステップＳＴ３０において、縮小段階Ｓ_NOが最後の段階Ｓ_NOmaxにあるか否かを判定する。Ｓ_NO＝Ｓ_NOmaxでないとき、顔検出部１０２は、ステップＳＴ３１において、縮小段階Ｓ_NOを次の段階とし、その後、ステップＳＴ２３に移り、上述したと同様の処理を繰り返す。
【０１１２】
また、ステップＳＴ３０で、Ｓ_NO＝Ｓ_NOmaxであるとき、全ての縮小段階Ｓ_NOでの顔画像の検出処理が終了したことを意味するので、顔検出部１０２は、ステップＳＴ３２において、顔画像検出処理を終了する。
【０１１３】
顔検出部１０２は、上述したように、静止画フレーム（静止画像）から顔画像を検出する際に、その顔画像の顔の向きを示す顔回転角度を検出する。顔検出部１０２は、上述したようにアダブースト（AdaBoost）等の機械学習アルゴリズムにより学習された顔辞書を用いて顔画像の検出を行う際に、複数の顔回転角度に対応した顔辞書を並行して使用する。
【０１１４】
顔検出部１０２は、顔画像が検出されたとき、その検出で使用された顔辞書に対応付けられている顔回転角度を、検出された顔画像の顔の向きを示す顔回転角度とする。なお、顔検出部１０２は、複数の顔辞書で測定された顔スコアSCORE_faが０より大きくなった場合、最も大きな顔スコアSCORE_faが得られる顔辞書に対応付けられている顔回転角度を、検出された顔画像の顔の向きを示す顔回転角度とする。顔検出部１０２は、図１０のステップＳＴ２７において、この顔回転角度情報も、記憶装置に記憶する。
【０１１５】
「顔特徴量算出部」
顔特徴量算出部１０３は、顔検出部１０２で検出された顔画像の画像情報（顔画像情報）に基づいて、この顔画像の顔特徴量を算出して、記憶装置に記憶する。また、顔特徴量算出部１０３は、この顔画像の画像情報に基づいて、笑顔の程度を示す笑顔スコア、およびコントラストの程度を示すコントラストスコアを算出して、記憶装置に記憶する。そして、顔特徴量算出部１０３は、その記憶内容を適宜なタイミングで、後段のノイズ顔除去部１０４に送る。
【０１１６】
顔特徴量算出部１０３は、顔画像から眉毛の両端、目の両端と中央等の顔特徴位置を検出し、各顔特徴位置における局所特徴量ベクトル（識別特徴ベクトル）を、ガボアフィルタ（Gabor Filter）などの畳み込み演算を用いて算出する。顔特徴量算出部１０３は、顔画像情報および顔回転角度情報に基づいて、顔特徴位置を、例えば、ＡＡＭ（Active Appearance Models）と呼ばれる方法を適用して検出する。このＡＡＡについては、以下の文献に記載がある。
【０１１７】
T.F.Cootes, G.J.Edwards, and C.J.Taylor, "Active AppearanceModels",Proc.Fift
h EuropeanConf. Computer Vision, H. Burkhardt and B. Neumann,eds, vol.2, pp.484
-498, 1998
【０１１８】
ＡＡＭの手法は、所定の限られた範囲内での方向の顔画像に対して、精度良く顔特徴位置を検出することが可能であるという特徴がある。そのため、ＡＡＭによる手法を用いて顔特徴位置を検出する場合、精度良く顔特徴位置を検出できる範囲内毎に、方向別の顔特徴位置を検出する仕組みが必要である。例えば、各方向別に、顔特徴位置を検出する複数の検出部（不図示）が設けられ、顔方向情報が示す方向により、それらの検出部が切り替えられて用いられる。
【０１１９】
顔特徴量算出部１０３における顔特徴位置の検出をＡＡＭの手法を用いて行う場合、顔特徴量算出部１０３は、顔回転角度情報が示す顔回転角度に適した検出部を選択し、その選択した検出部に顔画像情報を供給し、顔特徴位置の検出を行う。
【０１２０】
顔特徴量算出部１０３で検出される顔特徴位置は、例えば、図１５（ａ）や図１５（ｂ）に示した位置である。図１５（ａ）は、正面から撮影された顔画像から検出される顔特徴位置を表している。図１５（ｂ）は、斜め４５度から撮影された顔画像から検出される顔特徴位置を表している。図１５（ａ）、図１５（ｂ）において、×印を付した部分が、顔特徴位置として検出される位置である。
【０１２１】
図１５（ａ）を参照するに、顔特徴位置として検出されるのは、眉毛の両端（右側の眉と左側の眉で、それぞれ２点、計４点）、目の両端と中央（黒目）（右目と左目で、それぞれ３点、計６点）、鼻の両端と中央（計３点）、口の両端と中央（両端で２点、上唇の中央で１点、下唇の中央で１点、計４点）の１７点である。また、図１５（ｂ）を参照するに、顔特徴位置として検出されるのは、図１５（ａ）に示した場合と同様に１７点である。この実施の形態においては、顔画像から１７点の顔特徴位置が検出されるものとして説明を続ける。
【０１２２】
図１５（ａ）と図１５（ｂ）に、それぞれ示した顔特徴位置（×印）のうち、対応する位置同士を、実線で結び、その対応がわかるように図示している（ただし、眉毛および目の部分のみ）。
【０１２３】
顔特徴量算出部１０３は、顔検出部１０２で検出された顔画像毎に、上述した顔特徴位置を検出し、顔特徴位置情報および顔画像情報に基づいて、顔特徴位置毎に、顔特徴量としての局所特徴量ベクトル（識別特徴ベクトル）を算出する。顔特徴量算出部１０３における局所特徴量ベクトルの算出には、特徴位置近傍の画像を、そのまま用いて算出する方法や、ガボアフィルタ（Gabor Filter）やガルシアンデリバティブフィルタ（GaussianDerivative Filter ）などの畳み込み演算を用いて抽出する方法を適用することができる。ここでは、ガボアフィルタにより局所特徴量が抽出されるとして説明を続ける。
【０１２４】
ガボアフィルタの処理（ガボアフィルタリング）について説明する。人間の視覚細胞には、ある特定の方位に対して選択性を持つ細胞が存在することが既に判っている。人間の視覚細胞は、垂直の線に対して反応する細胞と、水平の線に反応する細胞で構成される。ガボアフィルタリングは、この人間の視覚細胞と同様に、方位選択性を持つ複数のフィルタで構成される空間フィルタである。
【０１２５】
ガボアフィルタは、ガボア関数によって空間表現される。ガボア関数ｇ（ｘ，ｙ）は、（５）式に示すように、コサイン成分からなるキャリアｓ（ｘ，ｙ）と、２次元ガウス分析状のエンベローブＷｒ（ｘ，ｙ）とで構成される。
【数２】
2010003021.tif 000004
【０１２６】
キャリアｓ（ｘ，ｙ）は、複数関数を用いて、（６）式のように表現される。ここで、座標値（ｕ0，ｖ0）は空間周波数を表し、またＰはコサイン成分の位相を表す。
【数３】
2010003021.tif 000005
【０１２７】
（６）式に示すキャリアは、（７）式に示すように、実数成分Ｒｅ（ｓ（ｘ，ｙ））と虚数成分Ｉｍ（ｓ（ｘ，ｙ））に分離することができる。
【数４】
2010003021.tif 000006
【０１２８】
一方、２次元ガウス分布からなるエンベローブは、（８）式のように表現される。
【数５】
2010003021.tif 000007
【０１２９】
ここで、座標軸（ｘ0 ，ｙ0 ）はこの関数のピークであり、定数ａおよびｂはガウス分布のスケール・パラメータである。また、添字ｒは、（９）式に示すような回転操作を意味する。
【数６】
2010003021.tif 000008
【０１３０】
従って、上述の（６）式および（８）式より、ガボアフィルタは、（１０）式に示すような空間関数として表現される。
【数７】
2010003021.tif 000009
【０１３１】
この実施の形態において、顔特徴量算出部１０３は、合計１７個のガボアフィルタを用いて顔の目、口、鼻などの顔特徴位置毎に算出処理を行う。
【０１３２】
ガボアフィルタのレスポンスは、Ｇiをｉ番目のガボアフィルタとし、ｉ番目のガボアフィルタの結果（Gabor Jet）をＪiとし、入力イメージをＩとすると、（１１）式で表される。
【数８】
2010003021.tif 000010
【０１３３】
この（１１）式の演算は、実際には高速フーリエ変換を用いて高速化することができる。以下の説明においては、所定の顔特徴位置による、（１１）式により算出される局所特徴量を局所特徴量ベクトル（識別特徴ベクトル）とし、以下のように（１２）式のように定義する。
【数９】
2010003021.tif 000011
【０１３４】
このように、顔特徴量算出部１０３は、特徴量としての局所特徴量ベクトル（識別特徴ベクトル）を、顔特徴位置毎に算出する。すなわち、顔特徴量算出部１０３は、１つの顔画像につき、１７点の顔特徴位置に対応して、（１３）式に示すように、１７個の局所特徴量ベクトルの組を算出し、記憶装置に記憶する。
【数１０】
2010003021.tif 000012
【０１３５】
顔特徴量算出部１０３は、顔検出部１０２で検出された顔画像の画像情報（顔画像情報）に基づいて、笑顔の程度を示す笑顔スコアを算出する。顔特徴量算出部１０３は、図１６に示すように、顔画像ＩＭ-2に対して、左目、右目の位置が所定座標になるように正規化（アフィン変換）を行って、所定サイズ、この実施の形態においては、水平サイズが４８ピクセル、垂直サイズが４８ピクセルの正規化顔画像ＩＭ-3を生成する。
【０１３６】
なお、上述した正規化顔画像ＩＭ-2のピクセル数（８０ピクセル×８０ピクセル）に比べて、左目、右目の位置に基づいて正規化された正規化顔画像ＩＭ-3のピクセル数（４８ピクセル×４８ピクセル）が少なくされている。これは、以下の理由からである。すなわち、顔画像の顔特徴量を精度よく検出するために正規化顔画像ＩＭ-2はある程度のピクセル数（解像度）を持つ必要がある。しかし、正規化顔画像ＩＭ-3に関しては、顔全体に広がる特徴（笑顔スコア）を検出するためのものであり、少ないピクセル数でも十分である。このように正規化顔画像ＩＭ-3のピクセル数を少なくすることで、メモリ使用量を節約でき、また、特徴検出の処理を簡単、かつ高速に行うことができる。
【０１３７】
顔特徴量算出部１０３は、図１６に示すように、笑顔辞書を適用して、笑顔スコアSCORE_smを測定する。この笑顔スコアSCORE_smは、正規化顔画像ＩＭ-3の状態が笑顔であるか否かを判定するためのスコアである。
【０１３８】
笑顔スコアSCORE_smの測定処理について説明する。笑顔辞書は、図１７（ｂ）に示すように、ｔ３組（数百ペア）の、pix_sm1(i)，pix_sm2(i)、θ_sm(i)、およびα_sm(i)の組み合わせからなっている。ここで、pix_sm1(i)，pix_sm2(i)は、正規化画像ＩＭ-3における２点の位置を示している。θ_sm(i)は、pix_sm1(i)の輝度値およびpix_sm2(i)の輝度値の差に関する閾値を示している。また、α_sm(i)は、pix_sm1(i)の輝度値およびpix_sm2(i)の輝度値の差と閾値θ_sm(i)の比較結果に基づいて加算または減算される重みを示している。これらpix_sm1(i)，pix_sm2(i)、θ_sm(i)、およびα_sm(i)の各値は、詳細説明は省略するが、アダブースト（AdaBoost）等の機械学習アルゴリズムにより学習されて取得されたものである。
【０１３９】
笑顔スコアSCORE_smの測定は、図１７（ａ）に示すように、顔辞書のpix_sm1(i)，pix_sm2(i)、θ_sm(i)、およびα_sm(i)の各組に対応して、（１４）式を満たすか否かを判断し、満たす場合には（１５）式の演算を行い、一方、満たさない場合には（１６）式の演算を行うことで、行われる。なお、（１４）式で、pix_sm1(i)はその位置の輝度値を示し、pix_sm2(i)はその位置の輝度値を示している。
【０１４０】
pix_sm1(i)−pix_sm2(i)＜θ_sm(i)      ・・・（１４）
SCORE_sm＝SCORE_sm＋α_sm(i)          ・・・（１５）
SCORE_sm＝SCORE_sm−α_sm(i)          ・・・（１６）
【０１４１】
図１８のフローチャートは、笑顔スコアSCORE_smの測定処理の手順を示している。まず、顔特徴量算出部１０３は、ステップＳＴ７１において、スコア測定処理を開始し、その後に、ステップＳＴ７２に移る。このステップＳＴ７２において、顔特徴量算出部１０３は、笑顔スコアSCORE_smを０に設定する。そして、顔特徴量算出部１０３は、ステップＳＴ７３において、ｉを１に設定する。
【０１４２】
次に、顔特徴量算出部１０３は、ステップＳＴ７４において、pix_sm1(i)およびpix_sm2(i)に対応する輝度値を選択し、ステップＳＴ７５において、pix_sm1(i)の輝度値からpix_sm2(i)の輝度値を差し引く演算を行う。そして、顔特徴量算出部１０３は、ステップＳＴ７６において、演算結果であるpix_sm1(i)−pix_sm2(i)が閾値θ_sm(i)より小さいか否かを判定する（（１４）式参照））。
【０１４３】
pix_sm1(i)−pix_sm2(i)＜θ_sm(i)を満たすとき、顔特徴量算出部１０３は、ステップＳＴ７７において、笑顔スコアSCORE_smに重みα_sm(i)を加算する（（１５）式参照）。一方、pix_sm1(i)−pix_sm2(i)＜θ_sm(i)を満たさないとき、顔特徴量算出部１０３は、ステップＳＴ７８において、笑顔スコアSCORE_smから重みα_sm(i)を減算する（（１６）式参照）。
【０１４４】
顔特徴量算出部１０３は、ステップＳＴ７７の処理の後、およびステップＳＴ７８の処理の後、ステップＳＴ７９に移る。このステップＳＴ７９において、顔特徴量算出部１０３は、ｉをインクリメントする。そして、顔特徴量算出部１０３は、ステップＳＴ８０において、ｉがｔ3より大きいか否かを判定する。ｉがｔ3より大きいとき、笑顔辞書のｔ3組の各組み合わせの処理を終了したことを意味する。顔特徴量算出部１０３は、ｉ＞ｔ3でないときステップＳＴ７４に戻って上述した処理を繰り返し、一方、ｉ＞ｔ3であるとき、ステップＳＴ８１において、笑顔スコア測定処理を終了する。
【０１４５】
顔特徴量算出部１０３は、上述したように顔検出部１０２で検出された顔画像毎に笑顔スコアを算出して、記憶装置に記憶する。
【０１４６】
また、顔特徴量算出部１０３は、顔検出部１０２で検出された顔画像の画像情報（顔画像情報）に基づいて、コントラストの程度を示すコントラストスコアを算出する。顔特徴量算出部１０３は、顔画像の画像情報に基づいて、ピクセル毎に得られる隣接ピクセルとの輝度差分の二乗値を加算していくことで、コントラストスコアContrastScoreを算出する。
【０１４７】
このコントラストスコアContrastScoreの算出処理では、図１９（ａ）に示すように、８０ピクセル×８０ピクセルの顔画像ＩＭ-2上に、２ピクセル×２ピクセルのブロックＢＬを設定する。このブロックＢＬを構成する４個のピクセルのうち、左上のピクセルの位置を（ｘ，ｙ）とし、左下のピクセルの位置を（ｘ，ｙ＋１）とし、右上のピクセルの位置を（ｘ＋１，ｙ）とし、右下のピクセルの位置を（ｘ＋１，ｙ＋１）とする。
【０１４８】
顔特徴量算出部１０３は、ｘ，ｙを０〜７８の範囲で変化させてブロックＢＬの位置を順次移動し、各位置において隣接ピクセル間の輝度差分の二乗値を算出し、順次加算していき、コントラストスコアContrastScoreを算出する。
【０１４９】
ここで、（ｘ，ｙ），（ｘ＋１，ｙ）のピクセル間の輝度差分を[I(x,y)−I(x+1,y)] とし、（ｘ，ｙ），（ｘ，ｙ＋１）のピクセル間の輝度差分を[I(x,y)−I(x,y+1)] とし、（ｘ，ｙ），（ｘ＋１，ｙ＋１）のピクセル間の輝度差分を[I(x,y)−I(x+1,y+1)] とし、（ｘ，ｙ＋１），（ｘ＋１，ｙ）のピクセル間の輝度差分を[I(x,y+1)−I(x+1,y)] とするとき、コントラストスコアContrastScoreは、（１７）式で表される。なお、この（１７）式において、Ｎが顔画像のピクセル数（画素数）を示しており、この実施の形態においては８０×８０である。
【数１１】
2010003021.tif 000013
【０１５０】
図２０のフローチャートは、所定の顔画像ＩＭ-2のコントラストスコアContrastScoreを算出する処理手順を示している。まず、顔特徴量算出部１０３は、ステップＳＴ９１において、コントラストスコア算出処理を開始し、その後に、ステップＳＴ９２の処理に移る。このステップＳＴ９２において、顔特徴量算出部１０３は、ブロック（２×２ピクセル）の各ピクセル間の輝度差分二乗値を求めて加算する。
【０１５１】
次に、顔特徴量算出部１０３は、ステップＳＴ９３において、次のブロックがあるか否かを判断する。顔特徴量算出部１０３は、ｘ，ｙが０〜７８の範囲で未だ移動していない位置があれば、次のブロックがあると判断する。次のブロックがあるとき、顔特徴量算出部１０３は、ステップＳＴ９２に戻り、次のブロックの処理に移行する。
【０１５２】
次のブロックがないとき、顔特徴量算出部１０３は、ステップＳＴ９４において、総加算値を、顔画像ＩＭ-2のピクセル数（画素数）Ｎで除算して、コントラストスコアContrastScoreを得る。顔特徴量算出部１０３は、ステップＳＴ９４の処理の後、ステップＳＴ９５において、処理を終了する。
【０１５３】
顔特徴量算出部１０３は、上述したように顔検出部１０２で検出された顔画像毎にコントラストスコアを算出して、記憶装置に記憶する。
【０１５４】
図２１のフローチャートは、デコード部１０１において、動画像ストリームから静止画フレーム（静止画像）が取り出される毎に、上述した顔検出部１０２および顔特徴量算出部１０３で行われる処理の手順を示している。
【０１５５】
デコード部１０１で静止画フレームが取り出されるとき、顔検出部１０２および顔特徴量算出部１０３は、ステップＳＴ１０１において、処理を開始する。そして、顔検出部１０２は、ステップＳＴ１０２において、静止画フレームの画像情報をグレースケールに変換する。顔検出部１０２は、例えば、入力画像フォーマットがＹＵＶの場合には、Ｙ成分のみを抽出する。また、顔検出部１０２は、例えば、入力画像フォーマットがＲＧＢの場合には、次式のように、Ｙ成分を算出する。
【０１５６】
Ｙ＝（０．２９９＊Ｒ＋０．５８７＊Ｇ＋０．１１４＊Ｂ）
【０１５７】
次に、顔検出部１０２は、ステップＳＴ１０３において、グレースケールに変換後の静止画フレームの画像情報に基づいて、顔画像を検出し、さらにその顔画像の顔の向きを示す顔回転角度を検出する（図９〜図１４参照）。
【０１５８】
次に、顔特徴量算出部１０３は、ステップＳＴ１０４において、顔検出部１０２で検出された顔画像の画像情報に基づいて、笑顔スコアSCORE_smを算出する（図１６〜図１８参照）。また、顔特徴量算出部１０３は、ステップＳＴ１０５において、顔検出部１０２で検出された顔画像の画像情報に基づいて、コントラストスコアContrastScoreを算出する（図１９、図２０参照）。また、顔特徴量算出部１０３は、ステップＳＴ１０６において、顔検出部１０２で検出された顔画像の画像情報に基づいて、顔特徴位置を検出して（図１５参照）、顔特徴量（局所特徴量ベクトル）を算出する。
【０１５９】
次に、顔特徴量算出部１０３は、ステップＳＴ１０７において、顔検出部１０２で検出された最後の顔画像であるか否かを判定する。最後の顔画像でないとき、顔特徴量算出部１０３は、ステップＳＴ１０４に戻り、次の顔画像の笑顔スコアSCORE_sm、コントラストスコアContrastScoreおよび顔特徴量の算出処理に移る。
【０１６０】
ステップＳＴ１０７で最後の顔画像であるとき、顔特徴量算出部１０３は、ステップＳＴ１０８に進み、処理を終了する。
【０１６１】
なお、図２１に示すフローチャートにおいて、デコード部１０１から顔検出部１０２に送られる静止画フレーム（静止画像）の画像情報が既にグレースケールに変換されたものである場合には、顔検出部１０２で静止画フレーム（静止画像）の画像情報をグレースケールに変換する処理（ステップＳＴ１０２の処理）は不要となる。また、図２１に示すフローチャートにおいて、ステップＳＴ１０４〜ステップＳＴ１０６の処理は、この順番でなくてもよい。
【０１６２】
「ノイズ顔除去部」
ノイズ顔除去部１０４は、後段の同一顔結合処理部１０５および顔クラスタリング部１０６の処理精度に悪影響を及ぼす可能性のある横顔やぼけ顔の顔画像を除去する。ノイズ顔除去部１０４は、顔特徴量算出部１０３から送られる各顔画像に対応した顔データ（図４参照）に基づいて、ノイズ顔（横顔、ボケ顔）の顔画像を除去する。
【０１６３】
図２２のフローチャートは、ノイズ顔除去部１０４における、ノイズ顔除去処理の手順を示している。ノイズ顔除去部１０４は、顔特徴量算出部１０３から、顔検出部１０２で検出された各顔画像の顔データが送られてくるとき、各顔画像を順次処理対象として、図２２のフローチャートに示すノイズ顔除去処理を行う。
【０１６４】
ノイズ顔除去部１０４は、ステップＳＴ１１１において、処理を開始し、その後に、ステップＳＴ１１２の処理に移る。このステップＳＴ１１２において、ノイズ顔除去部１０４は、横顔のチェック、つまり、処理対象の顔画像の顔データに含まれる顔回転角度の情報をチェックする。
【０１６５】
次に、ノイズ顔除去部１０４は、ステップＳＴ１１３において、ヨー（yaw）角が閾値以内にあるか否かを判断する。閾値は、例えば±４５度とされる。例えば、図２３（ａ）の顔画像はヨー（yaw）角が−５度で横顔でない例を示し、図２３（ｂ）はヨー（yaw）角が＋５０度で横顔（ノイズ顔）の例を示している。
【０１６６】
ヨー（yaw）角が閾値以内にないとき（図２３（ｂ）参照）、ノイズ顔除去部１０４は、ステップＳＴ１１４において、処理対象の顔画像をノイズ顔（横顔）の顔画像であるとみなして除去する。ノイズ顔除去部１０４は、ステップＳＴ１１４の処理の後、ステップＳＴ１１５において、処理を終了する。
【０１６７】
また、ステップＳＴ１１３でヨー（yaw）角が閾値以内であるとき、ノイズ顔除去部１０４は、ステップＳＴ１１６の処理に移る。このステップＳＴ１１６において、ノイズ顔除去部１０４は、ボケ顔のチェック、つまり、処理対象の顔画像の顔データに含まれるコントラストスコアをチェックする。
【０１６８】
次に、ノイズ顔除去部１０４は、ステップＳＴ１１７において、コントラストスコアが閾値より大きいか否かを判断する。閾値は、例えば、１５０とされる。例えば、図２４（ａ）はコントラストスコアが３５０でボケ顔でない例を示し、図２４（ｂ）はコントラストスコアが１２０でボケ顔（ノイズ顔）である例を示している。
【０１６９】
コントラストスコアが閾値以下であるとき、ノイズ顔除去部１０４は、ステップＳＴ１１４において、処理対象の顔画像をノイズ顔（ボケ顔）の顔画像であるとみなして除去する。ノイズ顔除去部１０４は、ステップＳＴ１１４の処理の後、ステップＳＴ１１５において、処理を終了する。
【０１７０】
また、ステップＳＴ１１７でコントラストスコアが閾値より大きいとき、ノイズ顔除去部１０４は、ステップＳＴ１１８において、処理対象の顔画像をノイズ顔ではないとみなして除去しないこととする。ノイズ顔除去部１０４は、ステップＳＴ１１８の処理の後、ステップＳＴ１１５において、処理を終了する。
【０１７１】
なお、図２２に示すフローチャートにおいては、処理対象の顔画像のヨー（yaw）角が閾値以内にないときは横顔（ノイズ顔）の顔画像であると見なして除去するようにしているが、さらにピッチ（pitch）角が閾値以内にないときは上向き顔あるいは下向き顔（ノイズ顔）と見なして除去するようにしてもよい。
【０１７２】
「同一顔結合処理部」
同一顔結合処理部１０５は、ノイズ顔除去部１０４から、現フレームの顔データが送られてくる毎に、同一の顔画像を結合する処理を行う。同一顔結合処理部１０５は、現在フレームで検出された顔画像と過去フレームで検出されて保存されている顔画像とが同一人物のものであるか否かを判断する。この場合、同一顔結合処理部１０５は、双方の顔画像の特徴量に基づいて算出された類似度、双方の顔画像の顔検出枠の位置、サイズ、双方の顔画像のフレーム間隔等にそれぞれ閾値を定めて判断する。
【０１７３】
図２５のフローチャートは、同一顔結合処理部１０５における、同一顔結合処理の手順を示している。同一顔結合処理部１０５は、ノイズ顔除去部１０４から現在フレームの各顔画像（ノイズ顔の顔画像は除かれている）の顔データが送られてくるとき、各顔画像を順次処理対象として、図２５のフローチャートに示す同一顔結合処理を行う。
【０１７４】
同一顔結合処理部１０５は、ステップＳＴ１２１において、処理を開始し、その後に、ステップＳＴ１２２の処理に移る。このステップＳＴ１２２において、現在フレームの顔画像（現在顔画像）と過去フレームで検出されて保存されている顔画像（顔顔画像）の類似度を算出する。この場合、同一顔結合処理部１０５は、現在顔画像および過去顔画像の、上述した顔特徴量算出部１０３で算出された顔特徴量としての局所特徴量ベクトル（（１３）式参照）を用いて、類似度を求める。
【０１７５】
ここで、類似度の求め方について説明する。現在顔画像と過去顔画像の類似度は、双方の顔画像の局所特徴量ベクトル（顔特徴量）を用いることで行われる。この場合、現在顔画像と過去顔画像の顔回転角度が異なる場合には（図１５（ａ），（ｂ）参照）、双方の顔画像の局所特徴量ベクトルをそのまま用いるときには、類似度の算出精度が低下する。そこで、顔特徴量算出部１０３は、双方の顔画像の顔回転角度が異なる場合、写像関数を用いて、例えば、過去顔画像の局所特徴量ベクトルを、現在顔画像の向きに合わせた局所特徴量ベクトルに変換した後に、類似度を求める。
【０１７６】
ここで、現在顔画像の顔回転角度を０度（図１５（ａ）参照）とし、過去顔画像の顔回転角度を４５度（図１５（ｂ）参照）として、写像処理について説明する。この場合、現在顔画像の局所特徴量ベクトルは（１８）式に示すようになり、過去顔画像の局所特徴量ベクトルは（１９）式に示すようになる。なお、Ｊ，ｊの文字の上側の添え字は顔回転角度を示している。ｉは、顔特徴位置を識別するための数字であり、この実施の形態においては１７点の顔特徴位置に対応した局所特徴量ベクトルが算出されるため、１〜１７の数字である。
【数１２】
2010003021.tif 000014
【０１７７】
（１９）式の４５度の方向の顔画像から抽出された顔特徴ベクトルが、写像関数により、０度の方向の顔画像から抽出された顔特徴ベクトルとして扱えるように写像される。（２０）式は、写像後の局所特徴量ベクトルを示している。この（２０）式において、Ｊ，ｊの上の“〜”は、近似値であることを示している。
【数１３】
2010003021.tif 000015
【０１７８】
（２０）式の各要素（（２０）式の右辺の｛｝内の各要素）は、（２１）式により算出される。
【数１４】
2010003021.tif 000016
【０１７９】
すなわち、（２０）式を構成する１つの要素ｊは、（１９）式における全ての要素（ｉ−１乃至ｉ−ｎまでのｎ個の要素ｊ）が用いられて、所定の写像関数ｆにより求められる。この場合、写像関数ｆとしては、過去顔画像の顔の向きに対応した写像関数が利用される。また、写像関数ｆは、顔特徴位置毎に用意されている。すなわち、この実施の形態において、顔特徴位置は１７点であるので、１つの向きにつき、１７個の写像関数ｆが用意されている。
【０１８０】
写像処理に関する式を、一般的に記載すると以下のようになる。
【数１５】
2010003021.tif 000017
【０１８１】
（２２）式は、θＩの方向の過去顔画像の特徴位置ｉにおける局所特徴量ベクトルを表している。（２３）式は、θＲの方向の現在顔画像の特徴位置ｉにおける局所特徴量ベクトルを表している。（２４）式は、（２２）式の過去顔画像の特徴位置ｉにおける局所特徴量ベクトルを、θＲの方向の顔画像から抽出された顔特徴ベクトルとして扱えるように写像した後の顔特徴ベクトルを表している。
【０１８２】
また、（２５）式は、（２４）式の右辺の各要素を表している。すなわち、（２５）式の左辺は、特徴位置ｉにおける局所特徴量ベクトルのｋ番目の要素の推定値であることを示している。（２５）式の右辺のうち、
【数１６】
2010003021.tif 000018
は、θRの方向の顔画像の特徴位置ｉにおける局所特徴量ベクトルのｋ番目の要素を、θI の方向の顔画像の特徴位置ｉにおける局所特徴量ベクトルの全ての要素を用いて写像を行う特徴量の写像関数である。
【０１８３】
なお、ここでは、全ての要素を用いて写像を行っているが、全ての要素を用いなくてもよい。例えば、推定に必要な最低限の要素を決定し、その要素だけが用いられる（写像関数に代入される）ようにしてもよい。すなわち、入力される局所特徴量ベクトルと写像後の局所特徴量ベクトルとの間に明白な因果関係があるような場合、写像関数の入力変数として、入力された全ての局所特徴量ベクトルの要素を用いて写像処理が行われるのではなく、因果関係があると判断される要素のみが用いられるようにしてもよい。
【０１８４】
次に、同一顔結合処理部１０５は、正規化相関演算を用いて、類似度を算出する。同一顔結合処理部１０５は、正規化相関演算を用いて類似度を算出する場合、（２６）式と（２７）式に基づいて類似度ベクトルを算出する。
【数１７】
2010003021.tif 000019
【０１８５】
（２６）式に、（１２）式と（２０）式における各要素が順次代入され、正規化相関演算が行われることにより、（２７）式における類似度ベクトルを構成する各要素が算出される。換言すれば、過去顔画像と現在顔画像の同じ顔特徴位置における類似度が、過去顔画像の局所特徴量ベクトル（写像変換された局所特徴量ベクトル）（（２０）式参照）と、現在顔画像の局所特徴量ベクトル（（１２）式参照）を用いて演算される（（２６）式参照）。
【０１８６】
なお、（２８）式、（２９）式は、現在顔画像の向きがθＲであるときの、上述の（２６）式、（２７）式に対応した式である。
【数１８】
2010003021.tif 000020
【０１８７】
同一顔結合処理部１０５は、上述したように算出された類似ベクトル（（２７）式、（２９）式参照）の大きさを求め、この大きさを類似度として用いる。
【０１８８】
図２５のフローチャートの説明に戻って、同一顔結合処理部１０５は、ステップＳＴ１２２の処理の後、ステップＳＴ１２３の処理に移る。このステップＳＴ１２３において、同一顔結合処理部１０５は、ステップＳＴ１２２で求めた類似度と閾値Ｔｈ１（第１の閾値）を比較する。ここで、ステップＳＴ１２２で求められる類似度の最大値は１００であり、閾値Ｔｈ１は例えば８８とされる。
【０１８９】
次に、同一顔結合処理部１０５は、ステップＳＴ１２４において、類似度が閾値Ｔｈ１以上であるか否かを判断する。類似度が閾値Ｔｈ１以上であるとき、同一顔結合処理部１０５は、ステップＳＴ１２５において、現在顔画像と過去顔画像とは同一人物の顔画像であると見なす。例えば、図２６（ａ），（ｂ）は過去顔画像、現在顔画像の一例であって、双方の顔画像の類似度は例えば８８となり、これらの顔画像は同一人物の顔画像であると見なされる。
【０１９０】
次に、同一顔結合処理部１０５は、ステップＳＴ１２６において、２つの顔画像のいずれかを代表顔として決定する。この場合、例えば、２つの顔画像のうち、最も正面に向いている顔画像、あるいは最もコントラストスコアが高い顔画像などを代表の顔画像とする。そして、同一顔結合処理部１０５は、ステップＳＴ１２７において、代表の顔画像の顔データを保存し、代表でない顔データを破棄する。同一顔結合処理部１０５は、ステップＳＴ１２７の処理の後、ステップＳＴ１２８において、処理を終了する。
【０１９１】
ステップＳＴ１２４で類似度が閾値Ｔｈ１より小さいとき、同一顔結合処理部１０５は、ステップＳＴ１２９において、ステップＳＴ１２２で求めた類似度と閾値Ｔｈ２（第２の閾値）を比較する。ここで、ステップＳＴ１２２で求められる類似度の最大値は１００であり、閾値Ｔｈ２は例えば０とされる。
【０１９２】
次に、同一顔結合処理部１０５は、ステップＳＴ１３０において、類似度が閾値Ｔｈ２以上であるか否かを判断する。類似度が閾値Ｔｈ２以上であるとき、同一結合処理部１０５は、ステップＳＴ１３１の処理に移る。例えば、図２７（ａ），（ｂ）は過去顔画像、現在顔画像の一例を示しており、双方の顔画像の類似度は例えば３となる。
【０１９３】
このステップＳＴ１３１において、同一顔結合処理部１０５は、双方の画像の顔検出枠情報とフレーム間の時間情報を比較する。そして、同一顔結合処理部１０５は、ステップＳＴ１３２において、顔検出枠とフレーム間の時間が条件を満たすか否かを判断する。同一顔結合処理部１０５は、例えば、顔検出枠の重心間の距離が８０ピクセルより短く、かつ、顔検出枠の面積比が０．５から１．５の間にあり、かつ、フレーム間の時間が５．０秒より短いときは、条件を満たすと判断する。ここで、８０ピクセルは顔検出枠の重心間の距離の閾値の一例であり、面積比の０．５，１．５は顔検出枠の面積比の閾値の一例であり、５．０秒はフレーム間の時間の閾値の一例である。
【０１９４】
同一顔結合処理部１０５は、条件を満たすとき、ステップＳＴ１２５において、現在顔画像と過去顔画像とは同一人物の顔画像であると見なす。これにより、照明条件などにより双方の顔画像の類似度が低くても、フレーム間隔が短く、顔検出枠の位置、サイズが近い場合は、同一人物の顔画像と見なされる。
【０１９５】
例えば、図２８（ａ）は過去顔画像（図２７（ａ）参照）が顔検出枠ＤＦ１で検出された静止画フレーム（frame1）を示し、図２８（ｂ）は現在顔画像（図２７（ｂ）参照）が顔検出枠ＤＦ２で検出された静止画フレーム（frame3）を示しているものとする。この場合、検出枠ＤＦ１，ＤＦ２の重心間の距離が３０ピクセルであり、検出ＤＦ１，ＤＦ２の面積比が１．０５であり、フレーム間の時間が３．０秒であり、顔検出枠とフレーム間の時間の条件を満たしている。
【０１９６】
同一顔結合処理部１０５は、ステップＳＴ１２５の処理の後、ステップＳＴ１２６の処理に移る。このステップＳＴ１２６における同一顔結合処理部１０５の処理については上述したと同様であるので、説明は省略する。
【０１９７】
また、ステップＳＴ１３０で類似度が閾値Ｔｈ２より小さいとき、およびステップＳＴ１３２で条件を満たさないとき、同一顔結合処理部１０５は、ステップＳＴ１３３の処理に移る。このステップＳＴ１３３において、同一顔結合処理部１０５は、最後の過去顔画像であるか否かを判断する。最後の過去顔画像でないとき、同一顔結合処理部１０５は、ステップＳＴ１２２の処理に戻り、処理対象の現在顔画像と次の過去顔画像の処理に移行する。
【０１９８】
ステップＳＴ１３３で最後の過去顔画像であるとき、同一顔結合処理部１０５は、ステップＳＴ１３４において、処理対象の現在顔画像は異なる人物の顔画像であると見なす。そして、同一顔結合処理部１０５は、ステップＳＴ１３５において、処理対象の現在顔画像の顔データを保存し、その後に、ステップＳＴ１２８において、処理を終了する。
【０１９９】
なお、図２５のフローチャートに示す同一顔結合処理では、現在顔画像と過去顔画像の顔特徴量から算出された類似度の他に、双方の顔画像の検出枠情報およびフレーム間の時間情報に基づいて、現在顔画像と過去顔画像とが同一人物の顔画像であるか否かを判断している。しかし、現在顔画像と過去顔画像の顔特徴量から算出された類似度だけで判断すすることも考えられる。その場合、同一顔結合処理部１０５は、図２５のフローチャートで、ステップＳＴ１２４で類似度がＴｈ１以下であるとき、直ちにステップＳＴ１３３の処理に移ることになる。
【０２００】
また、同一顔結合処理部１０５は、図２５のフローチャートのステップＳＴ１３２の判断を、顔画像の検出枠情報あるいは顔画像のフレーム間の時間情報の一方だけで判断することも考えられる。
【０２０１】
「顔クラスタリング部」
顔クラスタリング部１０６は、動画像ストリームの最後まで到達したときに同一顔結合処理部１０５に最終的に保存されている顔画像に対して、同一人物の顔画像を１つのクラスタとするクラスタリング処理を行って、動画像ストリーム内に登場する人物の分類を行う。また、顔クラスタリング処理部１０６は、上述のクラスタリング処理の結果、複数の顔画像を含むクラスタについて、その複数の顔画像から代表の顔画像を決定する。
【０２０２】
図２９のフローチャートは、顔クラスタリング部１０６における顔クラスタリング処理の手順を示している。
【０２０３】
顔クラスタリング部１０６は、ステップＳＴ１３１において、処理を開始し、その後に、ステップＳＴ１３２の処理に移る。このステップＳＴ１３２において、顔クラスタリング処理部１０６は、類似度マトリックスを計算する。すなわち、顔クラスタリング部１０６は、上述の同一顔結合処理部１０５で最終的に保存された顔画像から抽出される２つの顔画像の各組み合わせに対して、この２つの顔画像の特徴量（局所特徴量ベクトル）に基づいて、この２つの顔画像の類似度を算出する。この意味で、顔クラスタリング部１０６は、類似度算出部を構成している。類似度の求め方は、上述の同一顔結合処理部１０５の部分で説明したと同様である。
【０２０４】
ここで、同一顔結合処理部１０５で最終的に保存された顔画像がｎ個であって、それぞれの顔ＩＤがｆ１〜ｆｎであるとする。この場合、顔クラスタリング部１０６は、図３０に斜線を付して示した箇所に該当する、２つの顔画像の組み合わせ毎に類似度を算出する。
【０２０５】
また、顔クラスタリング部１０６は、上述の類似度マトリックスの計算結果に基づいて、図３１に示すように、類似度の高い順にソーティングした顔ペアリストを作成して保存しておく。この顔ペアリストは、「順位」と、「ペア」と、「類似度」の項目からなっている。「ペア」の項目には、組み合わせ（ペア）を構成する２つの顔画像の顔ＩＤが配置される。また、「類似度」の項目には、算出された類似度が配置される。
【０２０６】
図３２は、顔クラスタリング部１０６における、類似度マトリックス計算および顔ペアリスト作成の処理手順を示している。顔クラスタリング部１０６は、ステップＳＴ１４１において、処理を開始し、その後に、ステップＳＴ１４２の処理に移る。このステップＳＴ１４２において、顔クラスタリング部１０６は、２つの顔画像の類似度を計算する。そして、顔クラスタリング部１０６は、ステップＳＴ１４３において、次の組み合わせがあるか否かを判断する。次の組み合わせがあるときは、ステップＳＴ１４２に戻り、次の組み合わせの２つの顔画像の類似度を計算する。
【０２０７】
次の組み合わせがないとき、図３０に示す類似度マトリックスの完成を意味するので、顔クラスタリング部１０６は、ステップＳＴ１４４の処理に移る。このステップＳＴ１４４において、顔クラスタリング部１０６は、類似度マトリックスを用いて、類似度の高い順に、ソーティングして、顔ペアリスト（図３１参照）を作成する。そして、顔クラスタリング部１０６は、ステップＳＴ１４４の処理の後、ステップＳＴ１４５において、処理を終了する。
【０２０８】
図２９のフローチャートに戻って、次に、顔クラスタリング部１０６は、ステップＳＴ１３３において、階層化クラスタリングの処理を行う。この場合、顔クラスタリング部１０６は、ステップＳＴ１３２で作成した顔ペアリスト（図３１参照）に基づいて、階層化クラスタリングの処理を行う。この場合、顔クラスタリング部１０６は、SINGLE LINKAGEというクラスタリング方法を用いて、階層化構造を作る。この意味で、顔クラスタリング部１０６は、階層化クラスリング部を構成している。
【０２０９】
すなわち、顔クラスタリング部１０６は、同一顔結合処理部１０５で最終的に保存された顔画像のそれぞれを１つのクラスタとし、最下層のリーフを顔画像の個数分だけ作成する。その後、顔クラスタリング部１０６は、ステップＳＴ１３２で作成した顔ペアリストを参照して、類似度の高い組み合わせの順番に、この組み合わせを構成する顔ＩＤが含まれるクラスタを順次結合（マージ）して、最終的に１つのクラスタとする。
【０２１０】
顔クラスタリング部１０６は、階層化構造を構成する各ノードのデータを保存する。図３３は、ノードデータの構造を示している。ノードデータは、ノード番号、上層ノード情報、下層ノード情報、リーフリストを含んでいる。ノード番号は、ノード毎にユニークなＩＤである。上層ノード情報は、上層ノードへのポインタであり、最上位のノードのノードデータでは「ＮＵＬＬ」となる。下層ノード情報は、下層ノードへのポインタであり、最下位のノードのノードデータでは「ＮＵＬＬ」となる。リーフリストは、下位に保持する全てのリーフ（末端ノード）の顔ＩＤリストであり、末端ノード（最下位）ノードのノードデータでは１つの顔ＩＤが含まれる。
【０２１１】
図３４は、ノードの階層化構造の一例を示している。このノードの階層化構造の場合、同一顔結合処理部１０５で最終的に保存された顔画像が１５個であり、各顔画像の顔ＩＤがｆ１〜ｆ１５である場合を示している。この場合、最下層のリーフ（末端ノード）は１５個だけ作成される。図３４の例においては、便宜上、顔ＩＤｆ１〜ｆ１５に対応した末端ノードのノード番号を１〜１５としている。
【０２１２】
図３１の顔ペアリストを参照する。順位１のペアは（ｆ１，ｆ３）であるので、ｆ１，ｆ３の顔ＩＤがリーフリストに含まれるノード番号１，３のノードの上位に、ノード番号１６の親ノードが作られる。次に、順位２のペアは（ｆ７，ｆ１２）であるので、ｆ７，ｆ１２の顔ＩＤがリーフリストに含まれるノード番号７，１２のノードの上位に、ノード番号１７の親ノードが作られる。
【０２１３】
次に、順位３のペアは（ｆ１１，ｆ９）であるので、ｆ１１，ｆ９の顔ＩＤがリーフリストに含まれるノード番号１１，９のノードの上位に、ノード番号１８の親ノードが作られる。次に、順位４のペアは（ｆ１５，ｆ９）であるので、ｆ１５，ｆ９の顔ＩＤがリーフリストに含まれるノード番号１５，１８のノードの上位に、ノード番号１９の親ノードが作られる。以下、同様にして、ノードの階層化構造が作成されていく。
【０２１４】
図３５は、図３４のノードの階層化構造における１９番ノードのデータを示している。ノード番号は、「１９」となる。上層ノード情報は、２６番ノードへのポインタとなる。下層ノード情報は、１５番ノードへのポインタ、および１８番ノードへのポインタとなる。リーフリストは、下位に保持する全てのリーブの顔ＩＤであるｆ９，ｆ１１，ｆ１５となる。
【０２１５】
図３６のフローチャートは、顔クラスタリング部１０６における、階層化クラスタリング処理の処理手順を示している。顔クラスタリング部１０６は、ステップＳＴ１５１において、処理を開始し、その後に、ステップＳＴ１５２の処理に移る。このステップＳＴ１５２において、顔クラスタリング部１０６は、最下層のリーフを、顔ＩＤの個数分作成する。そして、顔クラスタリング部１０６は、ステップＳＴ１５３において、顔ペアリストを参照する。
【０２１６】
次に、顔クラスタリング部１０６は、ステップＳＴ１５４において、順位１のペアの顔ＩＤをリーフリフトに含むノードが存在するか否かを判断する。ノードが存在するとき、顔クラスタリング部１０６は、ステップＳＴ１５５において、ペアの顔ＩＤが属している２つのノードから、親ノードを作る。
【０２１７】
顔クラスタリング部１０６は、ステップＳＴ１５５の処理の後、ステップＳＴ１５６の処理に移る。上述のステップＳＴ１５４でノードが存在しないとき、顔クラスタリング部１０６は、直ちに、ステップＳＴ１５６の処理に移る。このステップＳＴ１５６において、顔クラスタリング部１０６は、順位が最後のペアか否かを判断する。最後のペアでないとき、顔クラスタリング部１０６は、ステップＳＴ１５４の処理に戻り、次の順位のペアに対する処理に移行する。一方、最後のペアであるとき、顔クラスタリング処理部１０６は、ステップＳＴ１５７において、処理を終了する。
【０２１８】
図２９のフローチャートに戻って、次に、顔クラスタリング部１０６は、ステップＳＴ１３４において、クラスタ決定の処理を行う。この場合、顔クラスタリング部１０６は、過結合判断でクラスタを調整する。すなわち、顔クラスタリング部１０６は、ステップＳＴ１３３の階層化クラスタリング処理で得られたツリー状のクラスタ情報（ノードの階層化構造情報）に基づいて、最上位層のクラスタから過結合の判断を行い、過結合と判断されたクラスタを、ステップＳＴ１３３の階層化クラスタリング処理で結合する前の２つのクラスタに分割してクラスタを決定する。この意味で、顔クラスタリング部１０６は、クラスタ決定部を構成している。
【０２１９】
顔クラスタリング部１０６は、図３７に示すように、最上位ノードから順番にスタック（メモリスタック）に積み（プッシュ：ｐｕｓｈ）、その後に、このスタックからノードを取り出し（ポップ：ｐｏｐ）して、ノード毎の過結合判断を行う。
【０２２０】
図３８のフローチャートは、顔クラスタリング部１０６における、クラスタ決定処理の処理手順を示している。顔クラスタリング部１０６は、ステップＳＴ１６１において、処理を開始し、その後に、ステップＳＴ１６２の処理に移る。このステップＳＴ１６２において、顔クラスタリング部１０６は、最上位ノードをスタック上にプッシュ（ｐｕｓｈ）する。
【０２２１】
次に、顔クラスタリング部１０６は、ステップＳＴ１６３において、スタックは空か否かを判断する。スタックが空でないとき、顔クラスタリング部１０６は、ステップＳＴ１６４において、スタックからノードをひとつポップ（ｐｏｐ）する。
【０２２２】
次に、顔クラスタリング部１０６は、ステップＳＴ１６５において、ポップノードは過結合か否かを判断する。過結合であると判断するとき、顔クラスタリング部１０６は、ステップＳＴ１６６において、現在のノードの下層ノードをスタックにプッシュし、その後に、ステップＳＴ１６３に戻り、上述したと同様の動作を繰り返す。一方、過結合でないと判断するとき、顔クラスタリング部１０６は、ステップＳＴ１５７において、現在のノードを最終クラスタとしてクラスタリストに保存し、その後に、ステップＳＴ１６３に戻り、上述したと同様の動作を繰り返す。
【０２２３】
上述のステップＳＴ１６３でスタックが空であるとき、顔クラスタリング部１０６は、直ちにステップＳＴ１６８に進み、処理を終了する。
【０２２４】
ここで、上述のステップＳＴ１６５におけるクラスタ過結合判定処理の詳細を説明する。図３９のフローチャートは、顔クラスタリング部１０６における、クラスタ過結合判定処理の処理手順を示している。顔クラスタリング部１０６は、ステップＳＴ１７１において、処理を開始し、その後に、ステップＳＴ１７２の処理に移る。このステップＳＴ１７２において、顔クラスタリング部１０６は、ノードに含まれるリーフリストに基づき、このリーフリスト内の顔ＩＤを持つ各顔画像の顔特徴量の平均値を計算する。この意味で、顔クラスタリング部１０６は、平均特徴量算出部を構成している。
【０２２５】
この実施の形態において、顔特徴量は上述したように顔特徴量算出部１０３で算出された局所特徴量ベクトル（識別特徴特徴ベクトル）である（（１２）式参照）。そのため、顔クラスタリング部１０６は、リーフリスト内の顔ＩＤがＮ個であるとき、ステップＳＴ１７２において、図４０に示すように、Ｎ個の顔画像に対応した局所特徴量ベクトルをそれぞれ対応する要素毎に加算平均して、平均局所特徴量ベクトルを求める。
【０２２６】
次に、顔クラスタリング部１０６は、ステップＳＴ１７３において、ノード内の１番目の顔画像の顔特徴量を取得する。そして、顔クラスタリング部１０６は、ステップＳＴ１７４において、ステップＳＴ１７２で計算した平均顔特徴量とステップＳＴ１７３で取得した顔特徴量との類似度である個別類似度を算出する。また、顔クラスタリング部１０６は、ステップＳＴ１７４において、現在算出した個別類似度とそれまでに算出した個別類似度の平均をとって平均類似度を計算しておく。
【０２２７】
次に、顔クラスタリング部１０６は、ステップＳＴ１７５において、ステップＳＴ１７４で算出された個別類似度が個別類似度比較閾値より大きいか否かを判断する。ここで、ステップＳＴ１７２で計算した平均顔特徴量をｆaverageとし、ステップＳＴ１７３で取得した顔特徴量をｆiとし、ステップＳＴ１７４で算出された個別類似度をSimilarity(ｆi,ｆaverage)で表し、また、個別類似度比較閾値をThreshold2で表すとする。
【０２２８】
この場合、顔クラスタリング部１０６は、ステップＳＴ１７５において、Similarity(ｆi,ｆaverage)＞Threshold2であるか否かを判断する。なお、ｆiの「ｉ」は、この顔特徴量がノード内のｉ番目の顔画像の顔特徴量であることを示している。
【０２２９】
Similarity(ｆi,ｆaverage)＞Threshold2を満足するとき、顔クラスタリング部１０６は、ステップＳＴ１７６において、最後の顔画像であるか否かを判断する。最後の顔画像でないとき、顔クラスタリング部１０６は、ステップＳＴ１７７において、ノード内の次の顔画像の顔特徴量を取得し、その後に、ステップＳＴ１７４に戻り、上述したと同様の処理を繰り返す。
【０２３０】
また、ステップＳＴ１７６でノード内の最後の顔画像であるとき、顔クラスタリング部１０６は、ステップＳＴ１７８の処理に移る。このステップＳＴ１７８において、顔クラスタリング部１０６は、ノード内の最後の顔画像の処理時に上述のステップＳＴ１７４で計算された最終的な平均類似度が平均類似度比較閾値より大きいか否かを判断する。
【０２３１】
ここで、最終的な平均類似度をAverage(Similarity(ｆi,ｆaverage))で表し、また、平均類似度比較閾値をThreshold1で表すとする。この場合、顔クラスタリング部１０６は、ステップＳＴ１７８において、Similarity(ｆi,ｆaverage)＞Threshold１であるか否かを判断する。
【０２３２】
Similarity(ｆi,ｆaverage)＞Threshold１を満足するとき、顔クラスタリング部１０６は、ステップＳＴ１７９において、処理対象のノード（ポップノード）は非過結合であると判断し、その後に、ステップＳＴ１８０において、処理を終了する。
【０２３３】
上述のステップＳＴ１７５でSimilarity(ｆi,ｆaverage)＞Threshold2を満足しないとき、および上述のステップＳＴ１７８でSimilarity(ｆi,ｆaverage)＞Threshold１を満足しないとき、顔クラスタリング部１０６は、ステップＳＴ１８１において、処理対象のノード（ポップノード）は過結合であると判断し、その後に、ステップＳＴ１８０において、処理を終了する。
【０２３４】
図３９に示すフローチャートのクラスタ過結合判定処理で使用される個別類似度比較閾値Threshold2（ＳＴ１７５）および平均類似度比較閾値Threshold1（ＳＴ１７８）は、クラスタリング設定パラメータである。上述せずも、顔クラスタリング部１０６にはユーザ設定部１０７が接続されている（図１参照）。ユーザは、個別類似度比較閾値Threshold2および平均類似度比較閾値Threshold1をユーザ設定部１０７から任意に設定できる。
【０２３５】
図４１は、図３０のフローチャートで示すクラスタ決定処理によるクラスタ決定例を示している。このクラスタ決定例では、ノード番号２５，１９，４，２０，１３，２３のノードが最終クラスタとしてクラスタリストに保存される。
【０２３６】
図２９のフローチャートに戻って、次に、顔クラスタリング部１０６は、ステップＳＴ１３５において、代表顔決定の処理を行う。この場合、顔クラスタリング部１０６は、クラスタリング処理の結果、複数の顔画像を含むクラスタについて、その複数の顔画像から代表の顔画像を決定する。この意味で、顔クラスタリング部１０６は、代表顔決定部を構成している。顔クラスタリング部１０６は、複数の顔画像を含むクラスタについて、この複数の顔画像の顔回転角度情報（roll.pitch,yaw）、笑顔スコアおよびコントラストスコアに基づいて、代表の顔画像を決定する。
【０２３７】
図４２のフローチャートは、顔クラスタリング部１０６における、代表顔決定処理の処理手順を示している。顔クラスタリング部１０６は、ステップＳＴ１９１において、処理を開始し、その後に、ステップＳＴ１９２の処理に移る。このステップＳＴ１９２において、顔クラスタリング部１０６は、処理対象のクラスタに含まれる複数の顔画像の角度スコアを算出する。各顔画像の角度スコアＳfrontは、当該各画像の顔画像の顔回転角度情報であるロール（roll）角、ピッチ（pitch）角、ヨー（yaw）角を用いて、例えば、（３０）式で算出される。この（３０）式において、ａ，ｂ，ｃは各方向に対する重み付けのための係数である。
【０２３８】
Ｓfront＝ａ｜roll｜＋ｂ｜pitch｜＋ｃ｜yaw｜      ・・・（３０）
【０２３９】
また、顔クラスタリング部１０６は、ステップＳＴ１９２において、上述したように算出した各顔画像の角度スコアＳfrontに基づいて、複数の顔画像を角度スコアが小さい順にソートする。ここで、角度スコアが小さい顔画像は、その顔の向きが正面に近いことを意味する。そして、顔クラスタリング部１０６は、ステップＳＴ１９３において、角度スコアが正面顔判定閾値より小さい顔画像を含む第１の顔画像群に絞り込む。
【０２４０】
次に、顔クラスタリング部１０６は、ステップＳＴ１９４において、第１の画像群に含まれる顔画像を、笑顔スコアが大きい順にソートする。そして、顔クラスタリング部１０６は、ステップＳＴ１９５において、笑顔スコアが笑顔閾値より大きな顔画像を含む第２の顔画像群に絞り込む。
【０２４１】
次に、顔クラスタリング部１０６は、ステップＳＴ１９７において、第２の顔画像群に含まれる顔画像のうち、コントラストスコアが最も大きな顔画像を代表の顔画像とする。顔クラスタリング部１０６は、ステップＳＴ１９７の処理の後、ステップＳＴ１９８において、処理を終了する。
【０２４２】
図４２のフローチャートで示す代表顔決定処理を行うことで、各クラスタリング部１０６は、複数の顔画像が含まれるクラスタにおいて、顔の向きが正面に近く、笑顔の程度が高く、しかもコントラストのよい顔画像を、代表の顔画像として決定できる。例えば、あるクラスタに、図４３（ａ）〜（ｄ）に示すように、正面でない顔画像、正面で均一照明の顔画像、正面で照明が悪い顔画像、ぶれている顔画像があった場合には、例えば、正面で均一照明の顔画像が代表の顔画像として決定される。
【０２４３】
なお、図４２に示すフローチャートの代表顔決定理で使用される正面顔判定閾値（ＳＴ１９３）および笑顔閾値（ＳＴ１９５）は、クラスタリング設定パラメータである。ユーザは、正面顔判定閾値および笑顔閾値をユーザ設定部１０７（図１参照）から任意に設定できる。
【０２４４】
また、図４２のフローチャートの代表顔決定処理では、顔画像の顔回転角度情報、笑顔スコアおよびコントラストスコアの全てを用いているが、これら全てを用いずに、一部の情報のみを用いて代表の顔画像を決定するようにしてもよい。また、図４２のフローチャートでは、笑顔スコアを用いて笑顔の程度が高い顔画像を代表の顔画像として決定するようにしているが、他の表情の程度が高い顔画像を代表の顔画像として決定することも考えられる。その場合には、例えば、顔特徴量算出部１０３において笑顔スコアではなく他の表情のスコアを算出しておき、そのスコアを用いるようにすればよい。
【０２４５】
顔クラスタリング部１０６は、クラスタ決定処理で最終クラスタとして決定された各クラスタのデータを出力する。この各クラスタのデータは、動画像ストリームに登場する人物を重複少なく良好に表示し得る登場人物データを構成する。
【０２４６】
図２９のフローチャートに戻って、顔クラスタリング部１０６は、ステップＳＴ１３５の処理を行った後に、ステップＳＴ１３６において、処理を終了する。
【０２４７】
「顔クラスタリングの精度評価アルゴリズム」
顔クラスタリングの精度評価アルゴリズムについて説明する。上述の顔クラスタリング部１０６におけるクラスタ過結合判定処理で使用される個別類似度比較閾値Threshold2および平均類似度比較閾値Threshold1は、この顔クラスタリングの精度評価アルゴリズムに基づいて決めることができる。
【０２４８】
図４４は、「Ａさん」〜「Ｋさん」の人物の顔画像が含まれる複数の顔画像に対して顔クラスタリング処理を行った場合における一般的な結果例を示している。この場合、所定の人物のクラスタに他の人物の顔画像が含まれることがある。例えば、図４４の結果例においては、「Ａさん」のクラスタに、他の人物である「Ｂさん」、「Ｃさん」および「Ｄさん」の顔画像が含まれている。このように違う人物が同じ人物と判断されている状態は、過結合状態を意味する。また、例えば、図４４の結果例においては、「Ｂさん」の顔画像は、「Ｂさん」のクラスタの他に、「Ａさん」および「Ｋさん」のクラスタにも含まれている。このように、同じ人物が違う人物と判断されている状態は、過分割状態を意味する。
【０２４９】
図４５は、予測結果と実結果との関係を示すコンフュージョンテーブル（Confusion Table）を示している。このコンフュージョンテーブルにおいて、ｃ（ｉ，ｊ）は、人物ｊの顔画像が人物ｉのクラスタに含まれる数を表している。図４６は、理想的な顔クラスタリング処理が行われた場合のコンフュージョンテーブルを示している。この場合、ｊ≠ｉであるとき、ｃ（ｉ，ｊ）＝０となっている。つまり、人物ｊの顔画像が、他の人物ｉのクラスタに含まれる数は０となる。
【０２５０】
ここで、エントロピー（平均情報量）について考える。図４７に示すように、人物Ａおよび人物Ｂの顔画像がクラスタＡおよびクラスタＢに正しく分類されるとき、エントロピーＨ（Ｘ）は０となる。また、図４８に示すように、互いのクラスタに少しだけ他の人物の顔画像が含まれるように分類されるとき、エントロピーＨ（Ｘ）は０より大きくなる。さらに、図４９に示すように、互いのクラスタに他の人物の顔画像が半分ずつ含まれるように分類されるとき、分類としては最悪であり、エントロピーＨ（Ｘ）は１となる。
【０２５１】
顔クラスタリングの精度評価アルゴリズムでは、コンフュージョンテーブル（図４５参照）と、エントロピーの二つの概念を結合して、過結合スコアおよび過分割スコアを算出する。
【０２５２】
すなわち、過結合スコアＳＣＲｃは、各行のエントロピーEntropy(row(n))を求め、それらを各行の顔画像の個数で重み付けして加算することで算出する。また、過分割ＳＣＲｄは、各列のエントロピーEntropy(column(m))を求め、それらを各列の顔画像の個数で重み付けして加算することで算出する。ここで、顔画像の個数で重み付けするのは、顔画像の数が大きい列ほどエントロピーに与える影響を大きくするためである。
【０２５３】
（３１）式はエントロピーEntropy(row(n))を示し、（３２）式は過結合スコアＳＣＲｃを示している。また、（３３）式はエントロピーEntropy(column(m))を示し、（３４）式は過分割ＳＣＲｄを示している。
【数１９】
2010003021.tif 000021
【０２５４】
また、（３１）式〜（３４）式におけるｐ（ｎ，ｍ），ｑ（ｎ，ｍ），ｐ（ｎ），ｑ（ｍ）は、それぞれ（３５）式、（３６）式、（３７）式、（３８）式で表される。
【数２０】
2010003021.tif 000022
【０２５５】
上述の顔クラスタリング部１０６におけるクラスタ過結合判定処理で使用される個別類似度比較閾値Threshold2および平均類似度比較閾値Threshold1として、上述の過結合スコアＳＣＲｃおよび過分割ＳＣＲｄが０に近づくような値が予め求められる。
【０２５６】
以上説明したように、図１に示す画像処理装置１００において、同一顔結合処理部１０５では、現在フレームで検出された顔画像と過去フレームで検出されて保存されている顔画像とが同一人物の顔画像であるか否かが双方の顔画像の顔特徴量に基づいて判断され、同一人物の顔画像であると判断されるときいずれか一方のみが保存される。そのため、デコード部１０１で顔画像を検出する静止画フレームの取り出し間隔は例えば１秒間に１フレーム程度でよく、従って解析を行うフレーム数が少ないため、短い解析時間で登場人物の抽出が可能となる。例えば、ＭＰＥＧあるいはＡＶＣのストリームの場合、このストリームに一定間隔で含まれるイントラフレームだけをデコードして用いることができ、いわゆるフルデコードをする必要がなく、解析時間の短縮化が顕著となる。
【０２５７】
また、図１に示す画像処理装置１００において、同一顔結合処理部１０５では、現在顔画像と過去顔画像の顔特徴量と共に、双方の顔画像の検出枠情報および双方の顔画像のフレーム間隔に基づいて、双方の顔画像が同一人物の顔画像であるか否かが判断されるため、判断精度を高めることができる。例えば、照明条件などの変化により、双方の顔画像が同一人物の顔画像であるにも拘わらず、双方の顔特徴量から求められた類似度が低くなった場合に、双方の顔画像の検出枠情報、双方の顔画像のフレーム間隔が一定の条件を満たしているか否かを考慮することで、双方の顔画像が同一人物の顔画像であると判断することが可能となる。
【０２５８】
また、図１に示す画像処理装置１００において、ノイズ顔除去部１０４では、正面から所定方向、例えばヨー（yaw）角、あるいはピッチ（pitch）角等が閾値以内にないとき顔画像が除去される。そのため、極端に横向き、上向き、下向きの顔画像を予め除去でき、同一顔結合処理部１０５、顔クラスタリング部１０６における判断精度の低下を抑制できる。
【０２５９】
また、図１に示す画像処理装置１００において、ノイズ顔除去部１０４では、顔特徴量算出部１０３で算出されたントラストスコアが閾値より小さな顔画像が除去される。そのため、極端にコントラストが低く、ぼけた顔画像を予め除去でき、同一顔結合処理部１０５、顔クラスタリング部１０６における判断精度の低下を抑制できる。
【０２６０】
また、図１に示す画像処理装置１００においては、同一顔結合処理部１０５の後段に顔クラスタリング部１０６が配置されている。そのため、顔クラスタリング部１０６により、同一顔結合処理部１０５で保存された動画ストリーム内の顔画像を、同一人物の顔画像が１つのクラスタとなるように分類でき、登場人物データを良好に得ることができる。
【０２６１】
また、図１に示す画像処理装置１００において、同一顔結合処理部１０５では、現在フレームで検出された顔画像が過去フレームで検出されて保存されている顔画像と同一人物の顔画像であるときいずれか一方のみが保存されることで、動画像ストリームの最後まで到達したときに、当該同一顔結合処理部１０５により最終的に保存されている顔画像の個数が低減される。そのため、顔クラスタリング部１０６における処理時間の低減を図ることができる。
【０２６２】
また、図１に示す画像処理装置１００において、顔クラスタリング部１０６では、類似度マトリックスの計算、階層化クラスタリング処理およびクラスタ決定処理が順次行われるものであり、複数の顔画像に対して同一人物の顔画像を１つのクラスタとするクラスタリングを良好に行うことができる。
【０２６３】
また、図１に示す画像処理装置１００において、顔クラスタリング部１０６では、同一顔結合処理部１０５で保存された顔画像に対して同一人物の顔画像を１つのクラスタとする処理が行われ、さらに、複数の顔画像を含むクラスタについては代表の顔画像が決定される。そのため、動画像ストリーム内の登場人物の顔画像を表示する閲覧アプリケーションにおいて、同一人物の顔画像が重複して表示されることを防止でき、しかも、最適な顔画像を表示できるようになる。
【０２６４】
なお、図１に示す画像処理装置１００においては、同一顔結合処理部１０５で最終的に保存された顔画像を全て顔クラスタリング部１０６の顔クラスタリング処理の対象とするものを示した。しかし、顔クラスタリング部１０６では、上述したように、最初に類似度マトリックスを計算する処理を行う。したがって、同一顔結合処理部１０５で最終的に保存された顔画像（登場人物候補）の数が増えすぎた場合、顔クラスタリング部１０６に入力する顔画像の数を制限するようにしてもよい。例えば、最大１００人までなど、入力する顔画像の優先順位を検出枠の大きさ、笑顔スコア、コントラストスコアなどでソートして、最大１００人まで入力する等の制限を行ってもよい。
【０２６５】
また、図１に示す画像処理装置１００においては、同一顔結合処理部１０５の前段にノイズ顔除去部１０４を備えるものを示したが、このノイズ顔除去部１０４が除かれた構成も考えられる。
【０２６６】
また、図１に示す画像処理装置１００においては、例えば、ハードディスク（ＨＤＤ）、あるいはメモリカードに記録されている動画ファイルを読み出し、この動画ファイル内の動画像ストリームから登場人物を抽出する例を示したがが、この発明は、デジタルカメラレコーダ（カムコーダ）やデジタルカメラ等の動画撮影機器において、撮影時に得られる動画像ストリームから登場人物を抽出する際にも適用できる。
【０２６７】
また、図１に示す画像処理装置１００においては、静止画フレームから顔画像を検出するものを示したが、この発明は一般的に所定物体の画像を検出するものに、同様に適用できる。
【０２６８】
また、上述実施の形態においては、デコード部１０１でイントラフレーム（I-Frame）のみデコードしているが、デジタルアーカイブシステムなど、長時間かけて解析をすることを許可するようなシステムなどの場合、ＭＰＥＧビデオ信号などの動画像ストリームの全てのフレームをデコードし、後段の顔検出部１０２等に供給して処理を行うようにしてもよい。この場合、イントラフレームだけを用いる処理に比べて解析速度が遅くなるが、登場人物を検出し逃すケースを少なくできる。
【０２６９】
なお、上述実施の形態における画像処理装置１００の各機能部は、ハードウェアおよびソフトウェアのいずれによっても実現できる。ソフトウェアで実現する場合には、コンピュータが、ＲＯＭまたはハードディスクに格納されているプログラムに基づいて、各機能部の処理を実行する。
【０２７０】
図５０は、このような処理を実行するコンピュータ５００の内部構成例を示す図である。ＣＰＵ（Central Processing Unit）５０１は、ＲＯＭ（Read OnlyMemory）５０２に記憶されているプログラムに従って各種の処理を実行する。ＲＡＭ（Random AccessMemory）５０３には、ＣＰＵ５０１が各種の処理を実行する上において必要なデータやプログラムなどが適宜記憶される。
【０２７１】
入出力インタフェース５０５は、上述したＣＰＵ５０１、ＲＯＭ５０２およびＲＡＭ５０３と共に、バス５０４に接続されている。入出力インタフェース５０５には、キーボードやマウスから構成される入力部５０６が接続されている。この入出力インタフェース５０５は、入力部５０６から入力された信号をＣＰＵ５０１に出力する。また、入出力インタフェース５０５には、ディスプレイやスピーカなどから構成される出力部５０７も接続されている。
【０２７２】
また、入出力インタフェース５０５には、ハードディスクなどから構成される記憶部５０８、および、インターネットなどのネットワークを介して他の装置とデータの通信を行う通信部５０９も接続されている。ドライブ５１０は、磁気ディスク、光ディスク、光磁気ディスク、半導体メモリ等の記録媒体からデータを読み出し、あるいはそれにデータを書き込むときに用いられる。処理対象の動画ファイルは、例えば、通信部５０９あるいはドライブ５１０から取り込まれ、ハードディスクなどから構成される記憶部５０８に格納される。
【産業上の利用可能性】
【０２７３】
この発明は、短い解析時間で登場人物の抽出を良好に行い得るものであり、動画ファイルに含まれる動画像ストリームあるいは撮影機器で撮影されて得られた動画像ストリームから登場人物（所定の物体）を抽出する際に適用できる。
【図面の簡単な説明】
【０２７４】
【図１】実施の形態としての画像処理装置の構成例を示すブロック図である。
【図２】顔検出枠情報に含まれる顔検出枠の位置情報およびサイズ情報を説明するための図である。
【図３】顔回転角度の方向としてのヨー（yaw）角、ロール（roll）角、ピッチ（pitch）角を説明するための図である。
【図４】各顔画像に対応したデータ（顔データ）の構造を示す図である。
【図５】登場人物データとしてのクラスタデータの構造を示す図である。
【図６】画像処理装置の処理手順を概略的に示す図である。
【図７】動画像ストリームがＭＰＥＧのビデオストリームである場合に、一定間隔で含まれるイントラフレーム（Ｉフレーム）の画像情報がデータ伸長処理されてデコードが行われることを示す図である。
【図８】画像処理装置の処理手順を示すフローチャートである。
【図９】顔検出部における顔画像の検出動作を説明するための図である。
【図１０】顔画像検出のために静止画フレーム（静止画像）上に設定される検出枠ＦＲ-faを説明するための図である。
【図１１】顔画像検出時に用いる顔辞書と、この顔辞書を用いた顔スコアSCORE_faの測定を説明するための図である。
【図１２】顔辞書の各組の位置情報と検出枠ＦＲ-faとの関係を説明するための図である。
【図１３】顔画像検出時に使用する静止画フレーム（静止画像）ＩＭ-0と、その縮小画像ＩＭ-0a，ＩＭ-0b，・・・を示す図である。
【図１４】顔検出部における顔画像検出処理の手順を示すフローチャートである。
【図１５】顔特徴量算出部で顔特徴量（局所顔特徴量ベクトル）を算出する際に検出される顔特徴位置を説明するための図である。
【図１６】顔特徴量算出部における笑顔スコアの算出時に行われる顔画像ＩＭ-2に対する正規化処理を説明するための図である。
【図１７】笑顔辞書と、この笑顔辞書を用いた笑顔スコアSCORE_smの測定を説明するための図である。
【図１８】笑顔辞書を用いた笑顔スコアSCORE_smの測定処理の手順を示すフローチャートである。
【図１９】コントラストスコアContrastScoreをピクセル毎に得られる隣接ピクセルとの輝度差分の二乗値を加算して求めることを説明するための図である。
【図２０】所定の顔画像ＩＭ-2のコントラストスコアContrastScoreを算出する処理手順を示すフローチャートである。
【図２１】デコード部において動画像ストリームから静止画フレーム（静止画像）が取り出される毎に、顔検出部および顔特徴量算出部で行われる処理の手順を示すフローチャートである。
【図２２】ノイズ顔除去部におけるノイズ顔除去処理の手順を示すフローチャートである。
【図２３】ヨー（yaw）角が−５度で横顔でない顔画像例、およびはヨー（yaw）角が＋５０度で横顔（ノイズ顔）の顔画像例を示す図である。
【図２４】コントラストスコアが３５０でボケ顔でない顔画像例、およびコントラストスコアが１２０でボケ顔（ノイズ顔）である顔画像例を示す図である。
【図２５】同一顔結合処理部における同一顔結合処理の手順を示すフローチャートである。
【図２６】類似度が高く同一人物の顔画像であると見なされる過去顔画像、現在顔画像の一例を示す図である。
【図２７】類似度が低く、類似度だけでは同一人物の顔画像であると見なされない過去顔画像、現在顔画像の一例を示す図である。
【図２８】過去顔画像、現在顔画像の類似度は低いが、顔検出枠とフレーム間の時間の条件を満たすことで同一人物の顔画像であると見なされる過去顔画像、現在顔画像の一例を示す図である。
【図２９】顔クラスタリング部における顔クラスタリング処理の手順を示すフローチャートである。
【図３０】顔クラスタリング部における類似度マトリックスの計算において、２つの顔画像の組み合わせ毎に類似度を算出することを説明するための図である。
【図３１】類似度マトリックスの計算結果に基づいて、類似度の高い順にソーティングして作成した顔ペアリストの一例を示す図である。
【図３２】顔クラスタリング部における類似度マトリックス計算および顔ペアリスト作成の処理手順を示すフローチャートである。
【図３３】階層化構造を構成する各ノードのデータ（ノードデータ）の構造を示す図である。
【図３４】階層化クラスタリング処理で作成されるノードの階層化構造の一例を示す図である。
【図３５】ノードデータの具体例を示す図である。
【図３６】顔クラスタリング部における階層化クラスタリング処理の処理手順を示す図である。
【図３７】顔クラスタリング部のクラスタ決定処理において、最上位ノードから順番にスタックに積んでノード毎に過結合判断を行うことを示す図である。
【図３８】顔クラスタリング部におけるクラスタ決定処理の処理手順を示すフローチャートである。
【図３９】顔クラスタリング部におけるクラスタ過結合判定処理の処理手順を示すフローチャートである。
【図４０】平均局所特徴量ベクトル（平均特徴量）の計算を説明するための図である。
【図４１】クラスタ決定処理によるクラスタ決定例を示す図である。
【図４２】顔クラスタリング部における代表顔決定処理の処理手順を示すフローチャートである。
【図４３】正面でない顔画像、正面で均一照明の顔画像、正面で照明が悪い顔画像、ぶれている顔画像があった場合に、例えば、正面で均一照明の顔画像が代表の顔画像として決定されることを説明する図である。
【図４４】「Ａさん」〜「Ｋさん」の人物の顔画像が含まれる複数の顔画像に対して顔クラスタリング処理を行った場合における一般的な結果例を示す図である。
【図４５】予測結果と実結果との関係を示すコンフュージョンテーブル（Confusion Table）を示す図である。
【図４６】理想的な顔クラスタリング処理が行われた場合のコンフュージョンテーブルを示す図である。
【図４７】クラスタリング（分類）結果とエントロピー（平均情報量）との関係を説明するための図（１／３）である。
【図４８】クラスタリング（分類）結果とエントロピー（平均情報量）との関係を説明するための図（２／３）である。
【図４９】クラスタリング（分類）結果とエントロピー（平均情報量）との関係を説明するための図（３／３）である。
【図５０】画像処理装置の各機能部の処理を実行するコンピュータの内部構成例を示す図である。
【符号の説明】
【０２７５】
１００・・・画像処理装置、１０１・・・デコード部、１０２・・・顔検出部、１０３・・・顔特徴量算出部、１０４・・・ノイズ顔除去部、１０５・・・同一顔結合処理部、１０６・・・顔クラスタリング部、１０７・・・ユーザ設定部、５００・・・コンピュータ
【図１】
2010003021.tif 000023
【図２】
2010003021.tif 000024
【図３】
2010003021.tif 000025
【図４】
2010003021.tif 000026
【図５】
2010003021.tif 000027
【図８】
2010003021.tif 000028
【図９】
2010003021.tif 000029
【図１０】
2010003021.tif 000030
【図１１】
2010003021.tif 000031
【図１２】
2010003021.tif 000032
【図１３】
2010003021.tif 000033
【図１４】
2010003021.tif 000034
【図１５】
2010003021.tif 000035
【図１６】
2010003021.tif 000036
【図１７】
2010003021.tif 000037
【図１８】
2010003021.tif 000038
【図２０】
2010003021.tif 000039
【図２１】
2010003021.tif 000040
【図２２】
2010003021.tif 000041
【図２５】
2010003021.tif 000042
【図２９】
2010003021.tif 000043
【図３０】
2010003021.tif 000044
【図３１】
2010003021.tif 000045
【図３２】
2010003021.tif 000046
【図３３】
2010003021.tif 000047
【図３４】
2010003021.tif 000048
【図３５】
2010003021.tif 000049
【図３６】
2010003021.tif 000050
【図３７】
2010003021.tif 000051
【図３８】
2010003021.tif 000052
【図３９】
2010003021.tif 000053
【図４０】
2010003021.tif 000054
【図４１】
2010003021.tif 000055
【図４２】
2010003021.tif 000056
【図４４】
2010003021.tif 000057
【図４５】
2010003021.tif 000058
【図４６】
2010003021.tif 000059
【図５０】
2010003021.tif 000060
【図６】
2010003021.tif 000061
【図７】
2010003021.tif 000062
【図１９】
2010003021.tif 000063
【図２３】
2010003021.tif 000064
【図２４】
2010003021.tif 000065
【図２６】
2010003021.tif 000066
【図２７】
2010003021.tif 000067
【図２８】
2010003021.tif 000068
【図４３】
2010003021.tif 000069
【図４７】
2010003021.tif 000070
【図４８】
2010003021.tif 000071
【図４９】
2010003021.tif 000072
【手続補正書】
【提出日】平成21年6月29日(2009.6.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、上記静止画フレームに含まれる顔画像を検出する顔検出部と、
上記顔検出部で検出された顔画像の画像情報に基づいて、該顔画像の顔特徴量を算出する顔特徴量算出部と、
現在フレームで上記顔検出部により検出された第１の顔画像が過去フレームで上記顔検出部により検出されて保存されている第２の顔画像と同一人物の顔画像であるか否かを、少なくとも上記顔特徴量算出部で算出された上記第１の顔画像および上記第２の顔画像の顔特徴量に基づいて判断する同一性判断部と、
上記同一性判断部で同一であると判断されるとき、上記第１の顔画像と上記第２の顔画像のうち、いずれか一方のみを保存し、上記同一性判断部で同一でないと判断されるとき、上記第１の顔画像を上記第２の顔画像と共に保存する結合処理部と
を備える画像処理装置。
【請求項２】
上記動画像ストリームはイントラフレームを一定間隔で含み、該イントラフレームの画像情報にデータ伸長処理を施して上記静止画フレームの画像情報を順次取り出すデコード部をさらに備える
請求項１に記載の画像処理装置。
【請求項３】
上記同一性判断部は、上記第１の顔画像の顔特徴量および上記第２の顔画像の顔特徴量に基づいて該第１の顔画像と該第２の顔画像の類似度を求め、該類似度と閾値とを比較し、該第１の顔画像と該第２の顔画像が同一人物の顔画像であるか否かを判断する
請求項１に記載の画像処理装置。
【請求項４】
上記同一性判断部は、上記第１の顔画像および上記第２の顔画像の顔特徴量と共に、少なくとも、上記第１の顔画像および上記第２の顔画像の検出枠情報、または上記第１の顔画像および上記第２の顔画像のフレーム間の時間情報に基づいて、該第１の顔画像と該第２の顔画像が同一人物の顔画像であるか否かを判断する
請求項１に記載の画像処理装置。
【請求項５】
上記同一性判断部は、
上記第１の顔画像の顔特徴量および上記第２の顔画像の顔特徴量に基づいて、該第１の顔画像と該第２の顔画像の類似度を求め、
上記類似度が第１の閾値以上であるとき上記第１の顔画像と上記第２の顔画像が同一人物の顔画像であると判断し、
上記類似度が上記第１の閾値より小さく第２の閾値以上であるとき、上記第１の顔画像と上記第２の顔画像の検出枠およびフレーム間の時間が一定の条件を満たした場合には上記第１の顔画像と上記第２の顔画像が同一人物の顔画像であると判断する
請求項４に記載の画像処理装置。
【請求項６】
上記検出枠の一定条件は、上記第１の顔画像の検出枠と上記第２の顔画像の検出枠の重心間の距離が閾値より短いという第１の条件と、上記第１の顔画像の検出枠と上記第２の顔画像の検出枠の面積比が第１の閾値から第２の閾値の間にあるという第２の条件からなり、
上記フレーム間の一定条件は、上記第１の顔画像と上記第２の顔画像のフレーム間の時間が閾値より短いという条件からなる
請求項５に記載の画像処理装置。
【請求項７】
上記顔検出部で検出された顔画像の顔の向きを示す顔回転角度を検出する顔回転角度検出部と、
上記顔検出部で検出された顔画像より、上記顔回転角度検出部で検出された顔回転角度の情報に基づいて、正面から所定方向への顔回転角度が閾値より大きな顔画像を除去するノイズ顔除去部とをさらに備える
請求項１に記載の画像処理装置。
【請求項８】
上記顔検出部で検出された顔画像の画像情報に基づいて、該顔画像のコントラストを示すコントラストスコアを算出するコントラストスコア算出部と、
上記顔検出部で検出された顔画像より、上記コントラストスコア算出部で算出されたコントラストスコアが閾値より小さな顔画像を除去するノイズ顔除去部とをさらに備える
請求項１に記載の画像処理装置。
【請求項９】
上記結合処理部により保存された顔画像を、少なくとも、上記顔特徴量算出部で算出された顔特徴量に基づいて、同一人物の顔画像を１つのクラスタとする顔クラスタリング部をさらに備える
請求項１に記載の画像処理装置。
【請求項１０】
上記顔クラスタリング部は、
上記結合処理部により保存された顔画像から抽出される２つの顔画像の各組み合わせに対して、該２つの顔画像の顔特徴量に基づいて該２つの顔画像の類似度を算出する類似度算出部と、
上記結合処理部により保存された顔画像のそれぞれを１つのクラスタとし、その後に、上記類似度算出部で算出された上記各組み合わせの類似度に基づいて、該類似度の高い組み合わせの順番に、該組み合わせを構成する顔画像が含まれるクラスタを順次結合して最終的に１つのクラスタとする階層化クラスタリング部と、
上記階層化クラスタリング部で得られたツリー状のクラスタ情報に基づいて、最上位層のクラスタから過結合の判断を行い、過結合と判断されたクラスタを上記階層化クラスタリング部で結合する前の２つのクラスタに分割してクラスタを決定するクラスタ決定部とを有する
請求項９に記載の画像処理装置。
【請求項１１】
上記クラスタ決定部は、
過結合判断対象のクラスタに含まれる顔画像の顔特徴量を平均した平均顔特徴量を算出する平均顔特徴量算出部と、
上記平均顔特徴量算出部で算出された平均顔特徴量と上記過結合判断対象のクラスタに含まれる顔画像の顔特徴量とから個別類似度を算出する個別類似度算出部とを有し、
上記過結合判断対象のクラスタに含まれる顔画像のうち、少なくとも、いずれかの顔画像についての上記個別類似度が個別類似度比較閾値より小さいとき、上記過結合判断対象のクラスタは過結合であると判断する
請求項１０に記載の画像処理装置。
【請求項１２】
ユーザが上記個別類似度比較閾値を設定するためのユーザ設定部をさらに備える
請求項１１に記載の画像処理装置。
【請求項１３】
上記クラスタ決定部は、
上記過結合判断対象のクラスタに含まれる顔画像についての上記個別類似度算出部で算出された個別類似度を平均した平均類似度を算出する平均類似度算出部をさらに有し、
上記平均類似度算出部で算出された平均類似度が平均類似度比較閾値より小さいとき、上記過結合判断対象のクラスタは過結合であると判断する
請求項１１に記載の画像処理装置。
【請求項１４】
ユーザが上記平均類似度比較閾値を設定するためのユーザ設定部をさらに備える
請求項１３に記載の画像処理装置。
【請求項１５】
上記クラスタリング部で得られたクラスタのうち、複数の顔画像を含むクラスタについて、該複数の顔画像から代表の顔画像を決定する代表画像決定部をさらに備える
請求項９に記載の画像処理装置。
【請求項１６】
上記代表画像決定部は、上記複数の顔画像を含むクラスタについて、該複数の顔画像の顔回転角度情報、表情情報およびコントラスト情報の少なくともいずれかに基づいて代表の顔画像を決定する
請求項１５に記載の画像処理装置。
【請求項１７】
上記代表画像決定部は、上記複数の顔画像を含むクラスタについて、
上記複数の顔画像を、上記顔回転角度情報に基づいて、顔の回転角度が第１の閾値より小さな顔画像を含む第１の顔画像群に絞り込み、
上記第１の顔画像群に含まれる顔画像を、上記表情情報に基づいて、特定の表情の程度を示すスコアが第２の閾値より大きな顔画像を含む第２の顔画像群に絞り込み、
上記第２の顔画像群に含まれる顔画像のうち、上記コントラスト情報に基づいて、コントラストの程度を示すスコアが最も高い顔画像を上記代表の顔画像に決定する
請求項１６に記載の画像処理装置。
【請求項１８】
ユーザが上記第１の閾値および上記第２の閾値を設定するためのユーザ設定部をさらに備える
請求項１７に記載の画像処理装置。
【請求項１９】
動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、上記静止画フレームに含まれる顔画像を検出する顔検出ステップと、
上記顔検出ステップで検出された顔画像の画像情報に基づいて、該顔画像の顔特徴量を算出する顔特徴量算出ステップと、
現在フレームで上記顔検出ステップにより検出された第１の顔画像が過去フレームで上記顔検出ステップにより検出されて保存されている第２の顔画像と同一人物の顔画像であるか否かを、少なくとも上記顔特徴量算出ステップで算出された上記第１の顔画像および上記第２の顔画像の顔特徴量に基づいて判断する同一性判断ステップと、
上記同一性判断ステップで同一であると判断されるとき、上記第１の顔画像と上記第２の顔画像のうち、いずれか一方のみを保存し、上記同一性判断ステップで同一でないと判断されるとき、上記第１の顔画像を上記第２の顔画像と共に保存する結合処理ステップと
を有する画像処理方法。
【請求項２０】
コンピュータを、
動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、上記静止画フレームに含まれる顔画像を検出する顔検出手段と、
上記顔検出手段で検出された顔画像の画像情報に基づいて、該顔画像の顔特徴量を算出する顔特徴量算出手段と、
現在フレームで上記顔検出手段により検出された第１の顔画像が過去フレームで上記顔検出手段により検出されて保存されている第２の顔画像と同一人物の顔画像であるか否かを、少なくとも上記顔特徴量算出手段で算出された上記第１の顔画像および上記第２の顔画像の顔特徴量に基づいて判断する同一性判断手段と、
上記同一性判断手段で同一であると判断されるとき、上記第１の顔画像と上記第２の顔画像のうち、いずれか一方のみを保存し、上記同一性判断手段で同一でないと判断されるとき、上記第１の顔画像を上記第２の顔画像と共に保存する結合処理手段と
して機能させるプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１１１
【補正方法】変更
【補正の内容】
【０１１１】
ステップＳＴ２８で検出枠ＦＲ-faが最後の位置まで移動しているとき、顔検出部１０２は、ステップＳＴ３０において、縮小段階Ｓ_NOが最後の段階Ｓ_NOmaxにあるか否かを判定する。Ｓ_NO＝Ｓ_NOmaxでないとき、顔検出部１０２は、ステップＳＴ３１において、縮小段階Ｓ_NO＋１を次の段階とし、その後、ステップＳＴ２３に移り、上述したと同様の処理を繰り返す。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０１１６
【補正方法】変更
【補正の内容】
【０１１６】
顔特徴量算出部１０３は、顔画像から眉毛の両端、目の両端と中央等の顔特徴位置を検出し、各顔特徴位置における局所特徴量ベクトル（識別特徴ベクトル）を、ガボアフィルタ（Gabor Filter）などの畳み込み演算を用いて算出する。顔特徴量算出部１０３は、顔画像情報および顔回転角度情報に基づいて、顔特徴位置を、例えば、ＡＡＭ（Active Appearance Models）と呼ばれる方法を適用して検出する。このＡＡＭについては、以下の文献に記載がある。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０１７４
【補正方法】変更
【補正の内容】
【０１７４】
同一顔結合処理部１０５は、ステップＳＴ１２１において、処理を開始し、その後に、ステップＳＴ１２２の処理に移る。このステップＳＴ１２２において、現在フレームの顔画像（現在顔画像）と過去フレームで検出されて保存されている顔画像（過去顔画像）の類似度を算出する。この場合、同一顔結合処理部１０５は、現在顔画像および過去顔画像の、上述した顔特徴量算出部１０３で算出された顔特徴量としての局所特徴量ベクトル（（１３）式参照）を用いて、類似度を求める。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０１９２
【補正方法】変更
【補正の内容】
【０１９２】
次に、同一顔結合処理部１０５は、ステップＳＴ１２００において、類似度が閾値Ｔｈ２以上であるか否かを判断する。類似度が閾値Ｔｈ２以上であるとき、同一結合処理部１０５は、ステップＳＴ１２０１の処理に移る。例えば、図２７（ａ），（ｂ）は過去顔画像、現在顔画像の一例を示しており、双方の顔画像の類似度は例えば３となる。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】０１９３
【補正方法】変更
【補正の内容】
【０１９３】
このステップＳＴ１２０１において、同一顔結合処理部１０５は、双方の画像の顔検出枠情報とフレーム間の時間情報を比較する。そして、同一顔結合処理部１０５は、ステップＳＴ１２０２において、顔検出枠とフレーム間の時間が条件を満たすか否かを判断する。同一顔結合処理部１０５は、例えば、顔検出枠の重心間の距離が８０ピクセルより短く、かつ、顔検出枠の面積比が０．５から１．５の間にあり、かつ、フレーム間の時間が５．０秒より短いときは、条件を満たすと判断する。ここで、８０ピクセルは顔検出枠の重心間の距離の閾値の一例であり、面積比の０．５，１．５は顔検出枠の面積比の閾値の一例であり、５．０秒はフレーム間の時間の閾値の一例である。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】０１９７
【補正方法】変更
【補正の内容】
【０１９７】
また、ステップＳＴ１２００で類似度が閾値Ｔｈ２より小さいとき、およびステップＳＴ１２０２で条件を満たさないとき、同一顔結合処理部１０５は、ステップＳＴ１２０３の処理に移る。このステップＳＴ１２０３において、同一顔結合処理部１０５は、最後の過去顔画像であるか否かを判断する。最後の過去顔画像でないとき、同一顔結合処理部１０５は、ステップＳＴ１２２の処理に戻り、処理対象の現在顔画像と次の過去顔画像の処理に移行する。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】０１９８
【補正方法】変更
【補正の内容】
【０１９８】
ステップＳＴ１２０３で最後の過去顔画像であるとき、同一顔結合処理部１０５は、ステップＳＴ１２０４において、処理対象の現在顔画像は異なる人物の顔画像であると見なす。そして、同一顔結合処理部１０５は、ステップＳＴ１２０５において、処理対象の現在顔画像の顔データを保存し、その後に、ステップＳＴ１２８において、処理を終了する。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】０１９９
【補正方法】変更
【補正の内容】
【０１９９】
なお、図２５のフローチャートに示す同一顔結合処理では、現在顔画像と過去顔画像の顔特徴量から算出された類似度の他に、双方の顔画像の検出枠情報およびフレーム間の時間情報に基づいて、現在顔画像と過去顔画像とが同一人物の顔画像であるか否かを判断している。しかし、現在顔画像と過去顔画像の顔特徴量から算出された類似度だけで判断すすることも考えられる。その場合、同一顔結合処理部１０５は、図２５のフローチャートで、ステップＳＴ１２４で類似度がＴｈ１未満であるとき、直ちにステップＳＴ１２０３の処理に移ることになる。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】０２００
【補正方法】変更
【補正の内容】
【０２００】
また、同一顔結合処理部１０５は、図２５のフローチャートのステップＳＴ１２０２の判断を、顔画像の検出枠情報あるいは顔画像のフレーム間の時間情報の一方だけで判断することも考えられる。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】０２２２
【補正方法】変更
【補正の内容】
【０２２２】
次に、顔クラスタリング部１０６は、ステップＳＴ１６５において、ポップノードは過結合か否かを判断する。過結合であると判断するとき、顔クラスタリング部１０６は、ステップＳＴ１６６において、現在のノードの下層ノードをスタックにプッシュし、その後に、ステップＳＴ１６３に戻り、上述したと同様の動作を繰り返す。一方、過結合でないと判断するとき、顔クラスタリング部１０６は、ステップＳＴ１６７において、現在のノードを最終クラスタとしてクラスタリストに保存し、その後に、ステップＳＴ１６３に戻り、上述したと同様の動作を繰り返す。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】０２３１
【補正方法】変更
【補正の内容】
【０２３１】
ここで、最終的な平均類似度をAverage(Similarity(ｆi,ｆaverage))で表し、また、平均類似度比較閾値をThreshold1で表すとする。この場合、顔クラスタリング部１０６は、ステップＳＴ１７８において、Average(Similarity(ｆi,ｆaverage))＞Threshold１であるか否かを判断する。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】０２３２
【補正方法】変更
【補正の内容】
【０２３２】
Average(Similarity(ｆi,ｆaverage))＞Threshold１を満足するとき、顔クラスタリング部１０６は、ステップＳＴ１７９において、処理対象のノード（ポップノード）は非過結合であると判断し、その後に、ステップＳＴ１８０において、処理を終了する。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】０２３３
【補正方法】変更
【補正の内容】
【０２３３】
上述のステップＳＴ１７５でSimilarity(ｆi,ｆaverage)＞Threshold2を満足しないとき、および上述のステップＳＴ１７８でAverage(Similarity(ｆi,ｆaverage))＞Threshold１を満足しないとき、顔クラスタリング部１０６は、ステップＳＴ１８１において、処理対象のノード（ポップノード）は過結合であると判断し、その後に、ステップＳＴ１８０において、処理を終了する。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】０２３５
【補正方法】変更
【補正の内容】
【０２３５】
図４１は、図３８のフローチャートで示すクラスタ決定処理によるクラスタ決定例を示している。このクラスタ決定例では、ノード番号２５，１９，４，２０，１３，２３のノードが最終クラスタとしてクラスタリストに保存される。
【手続補正１６】
【補正対象書類名】図面
【補正対象項目名】図６
【補正方法】変更
【補正の内容】
【図６】
2010003021.tif 000073
【手続補正１７】
【補正対象書類名】図面
【補正対象項目名】図２５
【補正方法】変更
【補正の内容】
【図２５】
2010003021.tif 000074