JP4577410B2 - 画像処理装置、画像処理方法およびプログラム - Google Patents

画像処理装置、画像処理方法およびプログラム Download PDF

Info

Publication number
JP4577410B2
JP4577410B2 JP2008159782A JP2008159782A JP4577410B2 JP 4577410 B2 JP4577410 B2 JP 4577410B2 JP 2008159782 A JP2008159782 A JP 2008159782A JP 2008159782 A JP2008159782 A JP 2008159782A JP 4577410 B2 JP4577410 B2 JP 4577410B2
Authority
JP
Japan
Prior art keywords
face
image
unit
face image
images
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008159782A
Other languages
English (en)
Other versions
JP2010003021A (ja
Inventor
贇 孫
環 児嶋
智彦 後藤
誠 村田
雅友 倉田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2008159782A priority Critical patent/JP4577410B2/ja
Priority to US12/484,643 priority patent/US8027523B2/en
Priority to CN2009101424946A priority patent/CN101610341B/zh
Publication of JP2010003021A publication Critical patent/JP2010003021A/ja
Application granted granted Critical
Publication of JP4577410B2 publication Critical patent/JP4577410B2/ja
Priority to US13/216,983 priority patent/US8462998B2/en
Priority to US13/868,698 priority patent/US8761462B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • G06V40/173Classification, e.g. identification face re-identification, e.g. recognising unknown faces across different face tracks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/165Detection; Localisation; Normalisation using facial parts and geometric relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/174Facial expression recognition
    • G06V40/175Static expression

Description

この発明は、画像処理装置、画像処理方法およびプログラムに関する。詳しくは、この発明は、動画像ストリームから順次取り出された静止画フレームに含まれる顔画像(所定物体の画像)を検出し、現在フレームで検出された顔画像が過去フレームで検出されて保存されている顔画像と同一人物の顔画像であるか否かを双方の顔画像の顔特徴量に基づいて判断し、同一であると判断されるときいずれか一方のみを保存することにより、短い解析時間で登場人物の抽出を良好に行い得るようにした画像処理装置等に係るものである。
ハードディスクやメモリカード記録型のカムコーダやデジタルカメラの普及によって、動画を撮影する機会が増えている。撮りためた大量の動画ファイルから見たい動画ファイル、シーンをすばやく検索・閲覧するために、動画解析を用いたハイライト検出など様々な方法が提案されている。顔検出、顔識別技術を応用した動画ファイルの登場人物抽出技術も動画の検索・閲覧性を高めるための技術のひとつであり、いくつかの手法が提案されている。
例えば、特許文献1の手法では、動画ファイルをデコードして得られた静止画シーケンスの隣接フレーム間で顔トラッキングを行い、同じ人物の顔区間を求めておいて、最後に登場人物を分類するためにクラスタリングを行っている。
特開2008−77536号公報
特許文献1の手法では、精度の良い顔トラッキングを行うため、動画ファイルのフルフレーム、あるいはフルフレームに近い入力が必要である。撮影時に顔トラッキングを行うことができればよいが、撮影後の動画ファイルに対して処理を行う場合には、動画ファイルのフルデコードが必要になる。最近のハイビジョンの動画ファイルに対して、フルデコード処理を行うと、非常に長い解析時間がかかる。そのため、この特許文献1の手法は実用的ではない。
この発明の目的は、短い解析時間で登場人物の抽出を良好に行い得るようにすることにある。
この発明の概念は、
動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、上記静止画フレームに含まれる顔画像を検出する顔検出部と、
上記顔検出部で検出された顔画像の画像情報に基づいて、該顔画像の顔特徴量を算出する顔特徴量算出部と、
上記顔検出部で検出された顔画像の顔の向きを示す顔回転角度を検出する顔回転角度検出部と、
上記顔検出部で検出された顔画像の画像情報に基づいて、該顔画像のコントラストを示すコントラストスコアを算出するコントラスト算出部と、
上記顔検出部で検出された顔画像から、上記顔回転角度検出部で検出されたヨー方向の顔回転角度が閾値より大きな顔画像を除去すると共に、上記コントラスト算出部で算出されたコントラストスコアが閾値より小さな顔画像を除去するノイズ顔除去部と、
現在フレームで上記顔検出部により検出され、上記ノイズ顔除去部で除去されなかった第1の顔画像が、過去フレームで上記顔検出部により検出されて保存されている第2の顔画像と同一人物の顔画像であるか否かを、少なくとも上記顔特徴量算出部で算出された上記第1の顔画像および上記第2の顔画像の顔特徴量に基づいて判断する同一性判断部と、
上記同一性判断部で同一であると判断されるとき、上記第1の顔画像と上記第2の顔画像のいずれかを代表画像に決定し、該決定された代表画像が上記第1の顔画像であるときは上記第2の顔画像を破棄して該第1の顔画像を保存し、上記同一性判断部で同一でないと判断されるとき、上記第2の顔画像を破棄することなく上記第1の顔画像をさらに保存する結合処理部と
を備える画像処理装置にある。
この発明においては、顔検出部により、動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、静止画フレームに含まれる顔画像が検出される。なお、ここでは、顔画像として説明するが、一般的には、所定物体の画像として考えることができる。
例えば、動画像ストリームはイントラフレームを一定間隔で含み、このイントラフレームの画像情報にデータ伸長処理が施されることで、動画像ストリームから静止画フレームの画像情報が順次取り出される。
顔特徴量算出部により、顔検出部で検出された顔画像の顔特徴量が算出される。例えば、顔特徴量算出部では、顔画像から眉毛の両端、目の両端と中央等の顔特徴位置が検出され、各顔特徴位置における顔特徴量(局所特徴量ベクトル)が、ガボアフィルタ(Gabor Filter)などの畳み込み演算を用いて、算出される。
動画像ストリームには同一人物が何度も登場する。そのため、動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて検出される顔画像には同一人物の顔画像が含まれる。動画ストリームに登場する人物を抽出する場合、各登場人物に対して最終的に残る顔画像は1つで足りる。
同一性判断部により、現在フレームで検出された第1の顔画像が過去フレームで検出されて保存されている第2の顔画像と同一人物の顔画像であるか否かが、少なくとも顔特徴量算出部で算出された第1の顔画像および第2の顔画像の顔特徴量に基づいて判断される。例えば、同一性判断部では、第1の顔画像の顔特徴量および第2の顔画像の顔特徴量に基づいて第1の顔画像と第2の顔画像の類似度が求められ、この類似度と閾値とが比較され、第1の顔画像と第2の顔画像が同一人物の顔画像であるか否かが判断される。
また、例えば、同一性判断部では、第1の顔画像および第2の顔画像の顔特徴量と共に、少なくとも、第1の顔画像および第2の顔画像の検出枠情報、または第1の顔画像および第2の顔画像のフレーム間の時間情報に基づいて、第1の顔画像と第2の顔画像が同一人物の顔画像であるか否かが判断される。
この場合、例えば、同一性判断部では、第1の顔画像の顔特徴量および第2の顔画像の顔特徴量に基づいて、第1の顔画像と第2の顔画像の類似度が求められる。そして、類似度が第1の閾値以上であるとき第1の顔画像と第2の顔画像が同一人物の顔画像であると判断される。また、類似度が第1の閾値より小さく第2の閾値以上であるとき、第1の顔画像と第2の顔画像の検出枠およびフレーム間の時間が一定の条件を満たした場合には第1の顔画像と第2の顔画像が同一人物の顔画像であると判断される。
例えば、検出枠の一定条件は、第1の顔画像の検出枠と上記第2の顔画像の検出枠の重心間の距離が閾値より短いという第1の条件と、上記第1の顔画像の検出枠と上記第2の顔画像の検出枠の面積比が第1の閾値から第2の閾値の間にあるという第2の条件からなる。また、例えば、フレーム間の一定条件は、第1の顔画像と第2の顔画像のフレーム間の時間が閾値より短いという条件からなる。
結合処理部により、同一性判断部で同一であると判断されるとき、第1の顔画像と第2の顔画像のうち、いずれか一方のみが保存され、同一性判断部で同一でないと判断されるとき、第1の顔画像は第2の顔画像と共に保存される。
この発明においては、動画像ストリームから順次取り出された静止画フレームに含まれる顔画像が検出され、現在フレームで検出された顔画像と過去フレームで検出されて保存されている顔画像とが同一人物の顔画像であるか否かが双方の顔画像の顔特徴量に基づいて判断され、同一人物の顔画像であると判断されるときいずれか一方のみが保存される。
この場合、顔画像を検出する静止画フレームの取り出し間隔は例えば1秒間に1フレーム程度でよく、従って解析を行うフレーム数が少ないため、短い解析時間で登場人物の抽出が可能となる。例えば、MPEGあるいはAVCのストリームの場合、このストリームに一定間隔で含まれるイントラフレームだけをデコードして用いることができ、いわゆるフルデコードをする必要がなく、解析時間の短縮化が顕著となる。
また、この発明において、上述したように、同一性判断部で、第1の顔画像および第2の顔画像の顔特徴量と共に、少なくとも、第1の顔画像および第2の顔画像の検出枠情報、または第1の顔画像および第2の顔画像のフレーム間の時間情報に基づいて、第1の顔画像と第2の顔画像が同一人物の顔画像であるか否かが判断されることで、判断精度を高めることが可能となる。
例えば、照明条件などの変化により、第1の顔画像と第2の顔画像とが同一人物の顔画像であるにも拘わらず、第1の顔画像の顔特徴量および第2の顔画像の顔特徴量に基づいて算出される第1の顔画像と第2の顔画像の類似度が低くなった場合に、第1の顔画像および第2の顔画像の検出枠情報、または第1の顔画像および第2の顔画像のフレーム間の時間情報が一定の条件を満たしているか否かを考慮することで、第1の顔画像と第2の顔画像とが同一人物の顔画像であると判断することが可能となる。
この発明において、例えば、顔検出部で検出された顔画像の顔の向きを示す顔回転角度を検出する顔回転角度検出部と、顔検出部で検出された顔画像より、顔回転角度検出部で検出された顔の回転角度の情報に基づいて、正面から所定方向への顔回転角度が閾値より大きな顔画像を除去するノイズ顔除去部とをさらに備える、ようにされてもよい。
極端に横向き、上向き、下向きの顔画像にあっては、顔特徴量算出部において正確な顔特徴量の算出ができない可能性が高く、同一性判断部における判断精度を低下させるおそれがある。上述したように、正面から所定方向への顔回転角度が閾値より大きな顔画像を除去することで、極端に横向き、上向き、下向きの顔画像を予め除去でき、同一性判断部における判断精度の低下を抑制できる。
また、この発明において、例えば、顔検出部で検出された顔画像の画像情報に基づいて、この顔画像のコントラストを示すコントラストスコアを算出するコントラストスコア算出部と、顔検出部で検出された顔画像より、コントラストスコア算出部で算出されたコントラストスコアが閾値より小さな顔画像を除去するノイズ顔除去部とをさらに備える、ようにされてもよい。
極端にコントラストが低く、ぼけた顔画像にあっては、顔特徴量算出部において正確な顔特徴量の算出ができない可能性が高く、同一性判断部における判断精度を低下させるおそれがある。上述したように、コントラストスコアが閾値より小さな顔画像を除去することで、極端にコントラストが低く、ぼけた顔画像を予め除去でき、同一性判断部における判断精度の低下を抑制できる。
また、この発明において、例えば、結合処理部により保存された顔画像を、少なくとも、顔特徴量算出部で算出された顔特徴量に基づいて、同一人物の顔画像を1つのクラスタとする顔クラスタリング部をさらに備える、ようにされてもよい。
動画像ストリームの最後まで到達したとき、この動画像ストリームから順次取り出された静止画フレームの画像データに基づいて、上述の結合処理部により、所定数の顔画像が保存された状態におかれる。顔クラスタリング部により、結合処理部で保存された顔画像が、同一人物の顔画像が1つのクラスタとなるように、少なくとも、特徴量算出部で算出された特徴量に基づいて、クラスタリング処理が行われる。
上述したように結合処理部において、現在フレームで検出された顔画像が過去フレームで検出されて保存されている顔画像と同一人物の顔画像であるときいずれか一方のみが保存されることで、動画像ストリームの最後まで到達したときに、当該結合処理部により最終的に保存されている顔画像の個数が低減される。そのため、この顔クラスタリング部における処理時間の低減を図ることができる。
顔クラスタリング部は、例えば、類似度算出部、階層化クラスタリング部およびクラスタ決定部を有するものとされる。類似度算出部では、結合処理部で保存された顔画像から抽出される2つの顔画像の各組み合わせに対して、この顔画像の特徴量に基づいて、この顔画像の類似度が算出される。階層化クラスタリング部では、結合処理部で保存された顔画像のそれぞれが1つのクラスタとされ、その後に、類似度算出部で算出された各組み合わせの類似度に基づいて、この類似度の高い組み合わせの順番に、この組み合わせを構成する顔画像が含まれるクラスタが順次結合されて最終的に1つのクラスタとされる。
クラスタ決定部では、階層化クラスタリング部で得られたツリー状のクラスタ情報に基づいて、最上位層のクラスタから過結合の判断が行われ、過結合と判断されたクラスタが階層化クラスタリング部で結合する前の2つのクラスタに分割されてクラスタが決定される。
例えば、クラスタ決定部は、過結合判断対象のクラスタに含まれる顔画像の顔特徴量を平均した平均顔特徴量を算出する平均顔特徴量算出部と、この平均顔特徴量算出部で算出された平均顔特徴量と過結合判断対象のクラスタに含まれる顔画像の顔特徴量とから個別類似度を算出する個別類似度算出部とを有し、過結合判断対象のクラスタに含まれる顔画像のうち、少なくとも、いずれかの顔画像についての個別類似度が個別類似度比較閾値より小さいとき、過結合判断対象のクラスタは過結合であると判断する、ものとされる。例えば、ユーザが個別類似度比較閾値を設定するためのユーザ設定部が備えられる。
また、例えば、クラスタ決定部は、さらに、過結合判断対象のクラスタに含まれる顔画像についての個別類似度算出部で算出された個別類似度を平均した平均類似度を算出する平均類似度算出部をさらに有し、平均類似度算出部で算出された平均類似度が平均類似度比較閾値より小さいとき、過結合判断対象のクラスタは過結合であると判断する、ものとされる。例えば、ユーザが平均類似度比較閾値を設定するためのユーザ設定部が備えられる。
また、例えば、この発明において、顔クラスタリング部で得られたクラスタのうち、複数の顔画像を含むクラスタについて、この複数の顔画像から代表の顔画像を決定する代表画像決定部をさらに備える、ようにされてもよい。例えば、この代表画像決定部では、複数の顔画像を含むクラスタについて、この複数の顔画像の顔回転角度情報、表情情報およびコントラスト情報の少なくともいずれかに基づいて代表の顔画像が決定される。
例えば、代表の顔画像の決定処理は、以下の手順で行われる。すなわち、まず、複数の顔画像は、顔の回転角度が第1の閾値より小さな顔画像を含む第1の顔画像群に絞り込まれる。次に、この第1の顔画像群に含まれる顔画像は、特定の表情の程度を示すスコアが第2の閾値より大きな顔画像を含む第2の顔画像群に絞り込まれる。次に、この第2の顔画像群に含まれる顔画像のうち、コントラストの程度を示すスコアが最も高い顔画像が、代表の顔画像に決定される。例えば、ユーザが第1の閾値および第2の閾値を設定するためのユーザ設定部が備えられる。
このように、結合処理部で保存された顔画像に対して同一人物の顔画像を1つのクラスタとする処理が行われ、さらに、複数の顔画像を含むクラスタについては代表の顔画像が決定されることで、動画像ストリーム内の登場人物の顔画像を表示する閲覧アプリケーションにおいて、同一人物の顔画像が重複して表示されることを防止でき、しかも、最適な顔画像を表示できるようになる。
また、この発明の概念は、
複数の顔画像から抽出される2つの顔画像の各組み合わせに対して、該2つの顔画像の顔特徴量に基づいて該2つの顔画像の類似度を算出する類似度算出部と、
上記複数の顔画像のそれぞれを1つのクラスタとし、その後に、上記類似度算出部で算出された上記各組み合わせの類似度に基づいて、該類似度の高い組み合わせの順番に、該組み合わせを構成する顔画像が含まれるクラスタを順次結合して最終的に1つのクラスタとする階層化クラスタリング部と、
上記階層化クラスタリング部で得られたツリー状のクラスタ情報に基づいて、最上位層のクラスタから過結合の判断を行い、過結合と判断されたクラスタを上記階層化クラスタリング部で結合する前の2つのクラスタに分割してクラスタを決定するクラスタ決定部と
を備える画像処理装置にある。
この発明において、類似度算出部により、複数の顔画像から抽出される2つの顔画像の各組み合わせに対して、この2つの顔画像の顔特徴量に基づいて、この2つの顔画像の類似度が算出される。ここで、顔画像の顔特徴量は、外部から与えられてもよく、あるいは、複数の顔画像の画像情報に基づいて、算出されるようにしてもよい。
また、階層化クラスタリング部により、複数の顔画像のそれぞれが1つのクラスタとされ、その後に、類似度算出部で算出された各組み合わせの類似度に基づいて、この類似度の高い組み合わせの順番に、この組み合わせを構成する顔画像が含まれるクラスタが順次結合されて最終的に1つのクラスタとされる。
また、クラスタ決定部により、階層化クラスタリング部で得られたツリー状のクラスタ情報に基づいて、最上位層のクラスタから過結合の判断が行われ、過結合と判断されたクラスタが階層化クラスタリング部で結合する前の2つのクラスタに分割されてクラスタが決定される。
このように、類似度算出部、階層化クラスタリング部およびクラスタ決定部で順次処理されることで、複数の顔画像に対して同一人物の顔画像を1つのクラスタとするクラスタリングが良好に行われる。なお、ここでは、顔画像として説明するが、一般的には、所定物体の画像として考えることができる。
例えば、クラスタ決定部は、過結合判断対象のクラスタに含まれる顔画像の顔特徴量を平均した平均顔特徴量を算出する平均顔特徴量算出部と、この平均顔特徴量算出部で算出された平均顔特徴量と過結合判断対象のクラスタに含まれる顔画像の顔特徴量とから個別類似度を算出する個別類似度算出部とを有し、過結合判断対象のクラスタに含まれる顔画像のうち、少なくとも、いずれかの顔画像についての個別類似度が個別類似度比較閾値より小さいとき、過結合判断対象のクラスタは過結合であると判断する、ものとされる。例えば、ユーザが個別類似度比較閾値を設定するためのユーザ設定部が備えられる。
また、例えば、クラスタ決定部は、さらに、過結合判断対象のクラスタに含まれる顔画像についての個別類似度算出部で算出された個別類似度を平均した平均類似度を算出する平均類似度算出部をさらに有し、平均類似度算出部で算出された平均類似度が平均類似度比較閾値より小さいとき、過結合判断対象のクラスタは過結合であると判断する、ものとされる。例えば、ユーザが平均類似度比較閾値を設定するためのユーザ設定部が備えられる。
また、この発明において、例えば、クラスタリング部で得られたクラスタのうち、複数の顔画像を含むクラスタについて、この複数の顔画像から代表の顔画像を決定する代表画像決定部をさらに備える、ようにされてもよい。例えば、この代表画像決定部では、複数の顔画像を含むクラスタについて、この複数の顔画像の顔回転角度情報、表情情報およびコントラスト情報の少なくともいずれかに基づいて代表の顔画像が決定される。
例えば、代表の顔画像の決定処理は、以下の手順で行われる。すなわち、まず、複数の顔画像は、顔の回転角度が第1の閾値より小さな顔画像を含む第1の顔画像群に絞り込まれる。次に、この第1の顔画像群に含まれる顔画像は、特定の表情の程度を示すスコアが第2の閾値より大きな顔画像を含む第2の顔画像群に絞り込まれる。次に、この第2の顔画像群に含まれる顔画像のうち、コントラストの程度を示すスコアが最も高い顔画像が、代表の顔画像に決定される。例えば、ユーザが第1の閾値および第2の閾値を設定するためのユーザ設定部が備えられる。
このように、複数の顔画像に対して同一人物の顔画像を1つのクラスタとする処理が行われ、さらに、複数の顔画像を含むクラスタについては代表の顔画像が決定されることで、例えば、動画像ストリーム内の登場人物の顔画像を表示する閲覧アプリケーションにおいて、同一人物の顔画像が重複して表示されることを防止でき、しかも、最適な顔画像を表示できるようになる。
この発明によれば、動画像ストリームから順次取り出された静止画フレームに含まれる顔画像(所定物体の画像)を検出し、現在フレームで検出された顔画像が過去フレームで検出されて保存されている顔画像と同一人物の顔画像であるか否かを双方の顔画像の顔特徴量に基づいて判断し、同一であると判断されるときいずれか一方のみを保存するものであり、短い解析時間で登場人物の抽出を良好に行うことができる。
また、この発明によれば、類似度算出、階層化クラスタリングおよびクラスタ決定の順に処理されるものであり、複数の顔画像(所定物体の画像)に対して同一人物の顔画像を1つのクラスタとするクラスタリングを良好に行うことができる。
以下、図面を参照しながら、この発明の実施の形態について説明する。
「全体の説明」
図1は、実施の形態としての画像処理装置100の構成例を示している。この画像処理装置100は、デコード部101と、顔検出部102と、顔特徴量算出部103と、ノイズ顔除去部104と、同一顔結合処理部105と、顔クラスタリング部106とを有している。
デコード部101は、例えば、ハードディスク(HDD)、あるいはメモリカードに記録されている動画ファイルを読み出し、この動画ファイル内の動画像ストリームから、静止画フレームを、例えば1秒間に1フレーム程度の割合で取り出す。動画像ストリームが、例えばMPEG(Moving Picture Expert Group)、あるいはAVCHD(AdvancedVideo Codec High Definition)のビデオストリームである場合、デコード部101は、一定間隔で含まれるイントラフレームの画像情報にデータ伸長処理を施し、必要とする静止画フレームの画像情報を出力する。
顔検出部102は、デコード部101で順次取り出された静止画フレーム(静止画像)の画像情報に基づいて、静止画フレームに含まれる顔画像を検出する。この顔検出部102は、例えば、複数の解像度で検出枠をスライドさせながら静止画フレームをスキャンして顔画像の検出を行うが、この手法に限定されるものではない。この顔検出部102の詳細については後述する。
顔検出部102は、顔画像を検出する毎に、その顔画像を特定するユニークなID(identifier)を、顔IDとして付与する。この顔IDは、例えば、動画像ストリームのフレーム番号と、そのフレーム番号における検出順を示す番号とを用いて、生成できる。
顔検出部102は、検出された顔画像毎に、顔IDを付加して、顔画像情報(顔検出枠内の画像情報)および顔検出枠情報を、顔特徴量算出部103に送る。ここで、顔検出枠情報には、位置情報とサイズ情報が含まれる。位置情報は、例えば、図2に示すように、静止画フレーム上の検出枠DFの左上角のピクセル位置(x,y)を示す情報である。また、サイズ情報は、例えば、図2に示すように、静止画フレーム上の検出枠DFの水平サイズwidthおよび垂直サイズheightを示す情報である。サイズは、ピクセル数で表される。
なお、この実施の形態において、顔検出部102は、静止画フレーム(静止画像)から顔画像を検出する際に、その顔画像の顔の向きを示す顔回転角度を検出する。この意味で、顔検出部102は、顔回転角度検出部を構成している。顔検出部102は、例えば、アダブースト(AdaBoost)等の機械学習アルゴリズムにより学習された顔辞書を用いて顔画像の検出を行う。顔検出部102は、複数の顔回転角度に対応した顔辞書を備えることで、顔画像の検出と同時に顔回転角度の検出が可能となるが、この手法に限定されるものではない。例えば、検出された顔画像の左右の目、鼻、口等のパーツを検出し、これら各パーツの距離、位置の関係から、顔回転角度を検出する方法もある。
この顔回転角度の方向としては、ヨー(yaw)角、ロール(roll)角、ピッチ(pitch)角の3つの方向がある。ヨー(yaw)角は、図3(a)に示すように、人の左右の目を結んだ線と平行で、ほぼ人の頭の中心を通る軸201と垂直な軸であって、ほぼ頭の中心を垂直に通る軸202を中心とする角度であり、右方向が負、左方向が正となるように定義される。また、ロール(roll)角は、図3(b)に示すように、上述の軸201と軸202とに直交する軸203を中心として回転する角度であり、軸201が水平になる角度が0度とされる。また、ピッチ(pitch)角は、図3(a)に示すように、軸201を中心とする上下の角度であり、例えば上を向くと正、下を向くと負とされる。
顔検出部102は、検出された顔画像毎に、顔IDを付加して、顔画像情報および顔検出枠情報(x,y,width, height)と共に、顔回転角度情報(yaw,roll,pitch)も、顔特徴量算出部103に送る。
顔特徴量算出部103は、顔検出部102で検出された顔画像の画像情報、つまりこの顔画像の検出枠内の画像情報に基づいて、この顔画像の顔特徴量を算出する。この顔特徴量算出部103は、例えば、顔画像から眉毛の両端、目の両端と中央等の顔特徴位置を検出し、各顔特徴位置における局所特徴量ベクトル(識別特徴ベクトル)を、ガボアフィルタ(Gabor Filter)などの畳み込み演算を用いて算出するが、この手法に限定されるものではない。この顔特徴量算出部103の詳細については後述する。
なお、この実施の形態において、顔特徴量算出部103は、上述した顔画像の顔特徴量の他に、この顔画像の画像情報に基づいて、特定の表情、例えば笑顔の程度を示す笑顔スコア、およびコントラストの程度を示すコントラストスコアを算出する。この意味で、顔特量算出部103は、笑顔スコア算出部およびコントラストスコア算出部を構成している。
顔特徴量算出部103は、例えば、アダブースト(AdaBoost)等の機械学習アルゴリズムにより学習された笑顔辞書を用いて笑顔スコアを算出するが、この手法に限定されるものではない。また、顔特徴量算出部103は、顔画像の画像情報に基づいて、ピクセル毎に得られる隣接ピクセルとの輝度差分の二乗値を加算していくことで、コントラストスコアを算出するが、この手法に限定されるものではない。これら笑顔スコアおよびコントラストスコアの算出方法の詳細については後述する。
顔特徴量算出部103は、顔検出部102で検出された顔画像毎に、顔IDを付加して、顔検出部102から受け渡された顔検出枠情報、顔回転角度情報と共に、顔特徴量、笑顔スコアおよびコントラストスコアを、ノイズ顔除去部104に送る。
ノイズ顔除去部104は、後段の同一顔結合処理部105および顔クラスタリング部106の処理精度に悪影響を及ぼす可能性のある横顔やぼけ顔の顔画像を除去する。特に、個人が撮影した動画においては、手ぶれが大きかったり、被写体の人物が動いていたり、横顔になっているケースが多い。
ぼけ顔の顔画像については、上述の顔特徴量算出部103で正確な顔特徴量を算出できない可能性が高く、同一顔結合処理部105および顔クラスタリング部106の処理精度に悪影響を及ぼす可能性がある。そのため、ノイズ顔除去部104は、上述したように顔特徴量算出部103で算出されたコントラストスコアに対して閾値処理を行うことで、後段の処理には入力しない。
また、横顔の顔画像についても、同様に、上述の顔特徴量算出部103で正確な顔特徴量を算出できない可能性が高く、同一顔結合処理部105および顔クラスタリング部106の処理精度に悪影響を及ぼす可能性がある。そのため、上述したように顔検出部102で検出された顔回転角度に対して閾値処理を行うことで、後段の処理には入力しない。
ノイズ顔除去部104は、コントラストスコアが閾値(例えば150)より小さな顔画像を除去する。また、ノイズ顔除去部104は、正面から所定方向、例えばヨー(yaw)角方向およびピッチ(pitch)角方向への顔回転角度が閾値(例えば45度)より大きな顔画像を除去する。このノイズ顔除去部104の詳細については後述する。
ノイズ顔除去部104は、顔特徴量算出部103から受け渡された、各顔画像に対応したデータ(以下、「顔データ」という)のうち、除去した顔画像の顔データを除いて残ったものを、同一顔結合処理部105に送る。
ここで、顔データの構造について説明する。図4は、顔データの構造を示している。顔データは、顔ID、顔検出枠情報、顔回転角度情報、笑顔スコア、コントラストスコアおよび顔特徴量を含んでいる。上述したように、顔IDは顔検出部102で付与され、顔検出枠情報および顔回転角度情報は顔検出部102で得られる。また、上述したように、顔特徴量、笑顔スコアおよびコントラストスコアは、顔特徴量算出部103で得られる。
同一顔結合処理部105は、ノイズ顔除去部104から、現フレームの顔データが送られてくる毎に、同一の顔画像を結合する処理を行う。この同一顔結合処理部105は、同一性判断部および結合処理部を構成している。
同一顔結合処理部105は、この同一の顔画像の結合処理を行うことで、動画像ストリームの最後まで到達したときに最終的に保存されている顔画像の個数を低減でき、後段の登場人物の分類を行う顔クラスタリング部106における処理時間を短くできる。この同一顔結合処理を行わないと、同じ人物を撮り続けている長い動画像ストリームでは、同一人物の顔画像が数百〜数千のフレームで検出されることから、後段の顔クラスタリング部106における処理が破綻するおそれがある。
また、同一顔結合処理部105は、この同一の顔画像の結合処理を行うことで、動画像ストリームの最後まで到達したときに最終的に保存されている顔画像の個数を低減でき、後段の顔クラスタリング部106における登場人物の分類精度を上げることができる。一般的に、同じ人物の顔画像をまとめておき、顔クラスタリング部106に送る顔画像の数が少ないほど登場人物の分類精度は高くなる。顔クラスタリング部106に送る顔画像に同一人物の顔画像が多く含まれるほど、顔クラスタリング部106では、同じ人物なのに別のクラスタになってしまう過分割が起こり易くなる。
同一顔結合処理部105は、現在フレームで検出された第1の顔画像(現在顔画像)と過去フレームで検出されて保存されている第2の顔画像(過去顔画像)とが同一人物のものであるか否かを判断する。この場合、同一顔結合処理部105は、双方の顔画像の顔特徴量に基づいて算出された類似度、双方の顔画像の顔検出枠の位置、サイズ、双方の顔画像のフレームの時間(フレーム間隔)等にそれぞれ閾値を定めて判断する。
例えば、同一顔結合処理部105は、フレーム間隔が短く、顔検出枠の位置、サイズが近い場合は、同一人物である可能性が高いので、照明条件などにより双方の顔画像の類似度が低くても、同一人物と判断する。逆に、例えば、同一顔結合処理部105は、フレーム間隔が長いときは、双方の顔画像の類似度が低い場合は、違う人物と判断する。同一顔結合処理部105は、同一であると判断するとき、双方の顔画像のうちいずれか一方のみを保存し、同一でないと判断するとき、双方の顔画像を共に保存する。この同一顔結合処理部105の詳細については後述する。
同一顔結合処理部105は、動画像ストリームの最後まで到達したとき、最終的に保存されている顔画像の顔データ(図4参照)を顔クラスタリング部106に送る。
顔クラスタリング部106は、上述の動画像ストリームの最後まで到達したときに同一顔結合処理部105に最終的に保存されている顔画像に対して、同一人物の顔画像を1つのクラスタとするクラスタリング処理を行って、動画像ストリーム内に登場する人物の分類を行う。この顔クラスタリング部106は、少なくとも、各顔画像の顔特徴量に基づいて、クラスタリング処理を行う。
動画像ストリームの登場人物のリストを表示する閲覧アプリケーションにおいて、同一人物の顔画像は1枚にまとめた方がわかりやすい。そこで、顔クラスタリング部106は、上述のクラスタリング処理の結果、複数の顔画像を含むクラスタについて、その複数の顔画像から代表の顔画像を決定する。顔クラスタリング部106は、例えば、顔回転角度情報、表情情報およびコントラスト情報の少なくともいずれかに基づいて、複数の顔画像から代表の顔画像を決定する。この顔クラスタリング部106の詳細については後述する。
顔クラスタリング部106は、動画像ストリームに登場する人物を示す登場人物データとしての各クラスタのデータを出力する。図5は、登場人物データとしてのクラスタデータの構造を示している。クラスタデータは、ID、顔IDリストおよび代表顔IDを含んでいる。IDは、クラスタを識別するための識別子である。顔IDリストは、クラスタに含まれる各顔画像を示す顔IDのリストである。代表顔IDは、クラスタに複数の顔画像が含まれている場合に、上述したように決定された代表の顔画像を示す顔IDである。
次に、図1に示す画像処理装置100の動作を説明する。
デコード部101では、ハードディスク(HDD)、あるいはメモリカード等に記録されている動画ファイルが読み出される。そして、このデコード部101では、動画ファイル内の動画像ストリームから、静止画フレームが、例えば1秒間に1フレーム程度の割合で取り出される。例えば、動画像ストリームが、図6(a)、図7(a)に示すように、MPEGのビデオストリームである場合、デコード部101では、一定間隔で含まれるイントラフレーム(Iフレーム)の画像情報がデータ伸長処理されてデコードが行われ、図6(b)、図7(b)に示すように、静止画フレームの画像情報が順次取り出される。
このようにデコード部101で動画像ストリームから順次取り出された静止画フレーム(静止画像)の画像情報は、顔検出部102に送られる。この顔検出部102では、図6(c)に示すように、静止画フレームに含まれる顔画像が検出される。この顔検出部102では、顔画像が検出される毎に、その顔画像を特定するユニークなID(identifier)が、顔IDとして付与される。また、この顔検出部102では、検出された各顔画像の顔の向きを示す顔回転角度が検出される。この顔検出部102から顔特徴量算出部103には、検出された顔画像毎に、顔IDが付加されて、顔画像情報、顔検出枠情報(x,y,width, height)および顔回転角度情報(yaw,roll,pitch)が送られる。
顔特徴量算出部103では、顔検出部102で検出された顔画像の画像情報に基づいて、図6(c)に示すように、この顔画像の顔特徴量として局所特徴量ベクトル(識別特徴ベクトル)が算出される。また、顔特徴量算出部103では、顔検出部102で検出された顔画像の画像情報に基づいて、笑顔の程度を示す笑顔スコア、およびコントラストの程度を示すコントラストスコアが算出される。顔特徴量算出部103からノイズ顔除去部104には、顔検出部102で検出された顔画像毎に、顔IDが付加されて、顔検出部102から受け渡された顔検出枠情報、顔回転角度情報と共に、顔特徴量、笑顔スコアおよびコントラストスコアが送られる。
ノイズ顔除去部104では、同一顔結合処理部105および顔クラスタリング部106の処理精度に悪影響を及ぼす可能性のある横顔、ぼけ顔の顔画像が除去される。そのため、ノイズ顔除去部104では、上述の顔特徴量算出部103で算出されたコントラストスコアに対して閾値処理が施されて、ぼけた顔画像が除去される。また、ノイズ顔除去部104では、上述の顔検出部102で検出された顔回転角度に対して閾値処理が施されて、例えば横顔の顔画像が除去される。つまり、このノイズ顔除去部104では、ノイズ顔(ぼけ顔、横顔)の顔画像が除去される。ノイズ顔除去部104から同一顔結合処理部105には、顔検出部102で検出された顔画像からノイズ顔の顔画像の顔データが除かれて残った顔画像の顔データ(顔ID、顔検出枠情報、顔回転角度情報、笑顔スコア、コントラストスコアおよび顔特徴量が含まれている)が送られる。
同一顔結合処理部105では、ノイズ顔除去部104から、現フレームの顔データが送られてくる毎に、同一人物の顔画像を結合する処理が行われる。この場合、双方の顔画像が同一人物の顔画像であるか否かは、双方の顔画像の顔特徴量に基づいて算出された類似度、双方の顔画像の顔検出枠の位置、サイズ、双方の顔画像のフレーム間隔等にそれぞれ閾値を定めて判断すされる。同一顔結合処理部105では、同一人物の顔画像であると判断されるとき、双方の顔画像のうちいずれか一方のみが保存され、一方同一人物の顔画像でないと判断されるとき、双方の顔画像が共に保存される。
上述のノイズ顔除去部104および同一顔結合処理部105の処理により、顔検出部102で各静止画フレームから検出された顔画像に対し、動画像ストリームの最後まで到達したとき同一顔結合処理部105に最終的に保存されている顔画像は、図6(d)に示すように、ノイズ顔の顔画像が除去され、さらに、同一人物の顔画像が結合されたものとなる。
同一顔結合処理部105から顔クラスタリング部106には、動画像ストリームの最後まで到達したとき、この同一顔結合処理部105に最終的に保存されている顔画像の顔データが送られる。顔クラスタリング部106では、同一人物の顔画像が1つのクラスタとなるようにクラスタリング処理(分類処理)が行われる。また、この顔クラスタリング部106では、クラスタリング処理の結果、複数の顔画像を含むクラスタについて、その複数の顔画像から代表の顔画像を決定する代表画像決定処理が行われる。
このように顔クラスタリング部106でクラスタリング処理および代表画像決定処理が行われることで、この顔クラスタリング部106からは、図6(e)に示すように、動画像ストリームに登場する人物を重複少なく良好に表示し得る登場人物データ(各クラスタのデータ)が得られる。
図8のフローチャートは、図1に示す画像処理装置100の処理手順を示している。
画像処理装置100は、ステップST1において処理を開始し、その後にステップST2の処理に移る。このステップST2において、画像処理装置100は、デコード部101により、動画ファイルに含まれる動画像ストリームのイントラフレーム(Iフレーム)をデコードして、静止画フレーム(静止画像)の画像情報を取り出す。
次に、画像処理装置100は、ステップST3において、顔検出部102により、静止画フレーム内の顔画像を検出し、その後に、ステップST4の処理に移る。なお、画像処理装置100は、ステップST3において、顔画像を検出する際には、その顔回転角度も検出する。
次に、画像処理装置100は、ステップST4において、顔画像が検出されたか否かを判断する。顔画像が検出されないとき、画像処理装置100は、ステップST2の処理に戻り、デコード部101により、次のイントラフレーム(Iフレーム)のデコード処理に移る。一方、顔画像が検出されたとき、画像処理装置100は、ステップST5の処理に移る。
このステップST5において、画像処理装置100は、顔特徴量算出部103により、ステップST3で検出された顔画像の顔特徴量として局所特徴量ベクトルを算出する。なお、このステップST5において、画像処理装置100は、顔特徴量算出部103により、ステップST3で検出された顔画像の笑顔スコアおよびコントラストスコアも算出する。
次に、画像処理装置100は、ステップST6において、ステップST3で検出された顔回転角度およびステップST5で算出されたコントラストスコアに基づいて、ステップST3で検出された顔画像に、ノイズ顔(横顔またはぼけ顔)があるか否かを判断する。ノイズ顔があるとき、画像処理装置100は、ステップST7において、ステップST3で検出された顔画像からノイズ顔の顔画像を除去し、ステップST8の処理に移る。上述のステップST6でノイズ顔がないとき、画像処理装置100は、直ちに、ステップST8の処理に移る。
このステップST8において、画像処理装置100は、同一顔結合処理部105により、現在フレームで検出された顔画像のそれぞれに対して、過去フレームで検出されて保存されている顔画像との同一性を、双方の顔画像の顔特徴量に基づいて算出された類似度、双方の顔画像の検出枠の位置、サイズ、双方の顔画像のフレーム間隔等の情報に基づいて判定する。
次に、画像処理装置100は、ステップST9において、ステップST8の判定結果に基づいて、現在フレームで検出された顔画像を順次判断対象とし、判断対象の顔画像について過去フレームに保存されている顔画像の中に同じ人物のものがあるか否かを判断する。同じ人物のものがあるとき、画像処理装置100は、ステップST10において、同一顔結合処理部105により、同じ人物の顔画像を結合する処理、つまり、いずれか一方の顔画像のみを保存する処理を行い、その後に、ステップST11の処理に移る。一方、同じ人物のものがないとき、判断対象の顔画像を保存し、その後、ステップST11の処理に移る。
このステップST11において、画像処理装置100は、動画像ストリームの最後に達したか否かを判断する。最後に達していないとき、画像処理装置100は、ステップST2の処理に戻り、デコード部101により、次のイントラフレーム(Iフレーム)のデコード処理に移る。一方、最後に達したとき、画像処理装置100は、ステップST12の処理に移る。
このステップST12において、画像処理装置100は、顔クラスタリング部106により、顔クラスタリング処理を行う。すなわち、画像処理装置100は、同一人物の顔画像が1つのクラスタとなるようにクラスタリング処理(分類処理)を行うと共に、複数の顔画像を含むクラスタについては、さらに、その複数の顔画像から代表の顔画像を決定する代表画像決定処理を行って、登場人物データを生成する。画像処理装置100は、このステップST12の処理の後、ステップST13において、処理を終了する。
次に、図1に示す画像処理装置100における顔検出部102、顔特徴量算出部103、ノイズ顔除去部104、同一顔結合処理部105および顔クラスタリング部106の詳細を説明する。
「顔検出部」
顔検出部102は、デコード部101で順次取り出されて、図示しない記憶装置に一時的に記憶されている静止画フレーム(静止画像)の画像情報(グレースケール変換後の画像情報)に基づいて、静止画フレームに含まれる顔画像を検出する。また、顔検出部102は、静止画フレーム(静止画像)から顔画像を検出する際に、その顔画像の顔の向きを示す顔回転角度を検出する。
顔検出部102は、例えば、静止画フレームIM-0が、図9(a)に示すようであるとき、図9(b)に破線枠で囲んで示すように、静止画フレームIM-0に含まれている顔画像IM-1を検出する。顔検出部102は、顔画像が検出されるとき、当該顔画像を、顔特徴量算出部103における処理のために、図9(c)に示すように、所定のサイズ、この実施の形態では、水平サイズが80ピクセル、垂直サイズが80ピクセルとなるように正規化する。
顔検出部102は、検出された顔画像毎に、顔IDを付加して、顔画像情報(顔検出枠内の正規化された画像情報)、顔検出枠情報(位置情報、サイズ情報)、さらには、顔回転角度情報を、記憶装置に記憶する。そして、顔検出部102は、その記憶内容を適宜なタイミングで、後段の顔特徴量算出部103に送る。
顔検出部102における顔画像の検出処理の一例について説明する。この検出処理では、図10に示すように、静止画フレームIM-0上に、所定サイズ、例えば、水平サイズがSピクセル、垂直サイズがSピクセルである、検出枠FR-faが設定される。この実施の形態において、Sピクセルは、80ピクセル以上である。この検出枠FR-faは、図10に矢印で示すように、静止画フレームIM-0上を走査され、その位置が順次変化するようにされる。そして、各位置の検出枠FR-faで囲まれる画像に対し、顔辞書を用いて顔スコアSCORE_faの測定が行われ、当該顔スコアSCORE_faに基づいて、顔画像であるか否かの判定が行われる。
顔辞書は、図11(b)に示すように、t4組(数百ペア)の、pix_fa1(i),pix_fa2(i)、θ_fa(i)、およびα_fa(i)の組みあわせからなっている。ここで、pix_fa1(i),pix_fa2(i)は、図12に示すように、検出枠FR-faで囲まれる画像における2点の位置を示している。なお、図12には、図面の簡単化のため、3組だけを示している。θ_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の測定は、図11(a)に示すように、顔辞書のpix_fa1(i),pix_fa2(i)、θ_fa(i)、およびα_fa(i)の各組に対応して、(1)式を満たすか否かを判断し、満たす場合には(2)式の演算を行い、一方、満たさない場合には(3)式の演算を行うことで、行われる。なお、(1)式で、pix_fa1(i)はその位置の輝度値を示し、pix_fa2(i)はその位置の輝度値を示している。
pix_fa1(i)−pix_fa2(i)<θ_fa(i) ・・・(1)
SCORE_fa=SCORE_fa+α_fa(i) ・・・(2)
SCORE_fa=SCORE_fa−α_fa(i) ・・・(3)
検出枠FR-faで囲まれる画像が顔画像であるか否かの判定は、上述したように測定された顔スコアSCORE_faに基づいて行われる。なお、上述の顔スコアSCORE_faの測定において、(1)式を満たす場合はh(i)=1とし、逆に、(1)式を満たさない場合はh(i)=−1とするとき、測定された顔スコアSCORE_faは、(4)式で表される。
顔スコアSCORE_faが0より大きいとき、検出枠FR-faで囲まれる画像は顔画像であると判定される。一方、顔スコアSCORE_faが0以下であるとき、検出枠FR-faで囲まれる画像は顔画像ではないと判定される。なお、判定の基準を0ではなく、0以外の多少調整された値が用いられることもある。
なお、静止画フレームに含まれる顔画像には種々の大きさが考えられる。そのため、図10に示すように、静止画フレームIM-0上に所定サイズの検出枠FR-faを設定して顔画像を検出するものにあっては、当該静止画フレームIM-0に含まれる顔画像の内、当該検出枠FR-faのサイズに対応した顔画像だけしか検出できない。そこで、静止画フレームIM-0に含まれる種々の顔画像を検出可能とするために、上述した顔画像の検出処理は、図13に示すように、静止画フレームIM-0の他に、この静止画フレームIM-0を、適宜縮小した縮小画像IM-0a,IM-0b,・・・に対しても行われる。
図14のフローチャートは、顔検出部102における、顔画像検出処理の手順を示している。
まず、顔検出部102は、ステップST21において、顔画像検出処理を開始し、その後に、ステップST22に移る。このステップST22において、顔検出部102は、静止画フレームIM-0の縮小段階S_NOを1に設定する。そして、顔検出部102は、ステップST23において、記憶装置から静止画フレームIM-0の画像情報を読み出し、縮小段階S_NOのスケーリング(縮小処理)を施し、顔画像を検出するための縮小画像(縮小された静止画フレーム)を生成する。
なお、S_NO=1であるとき、縮小率は1とされ、顔画像を検出するための縮小画像は、静止画フレームIM-0と同じものとされる。また、縮小段階S_NOが大きくなるにつれて、縮小率は小さくなっていく。縮小率が小さな縮小画像で検出される顔画像ほど、静止画フレームIM-0上では大きな顔画像である。なお、顔検出枠情報(位置情報およびサイズ情報)は、静止画フレームIM-0におけるものとされる。
次に、顔検出部102は、ステップST24において、ステップST23で生成された縮小画像上の左上に検出枠FR-faを設定する。そして、顔検出部102は、ステップST25において、上述したように、顔辞書を用いて、顔スコアSCORE_faを測定する。
次に、顔検出部102は、ステップST26において、ステップST25で測定された顔スコアSCORE_faに基づいて、検出枠FR-faで囲まれた画像が顔画像であるか否かを判定する。この場合、顔検出部102は、SCORE_fa>0であるとき顔画像であると判定し、SCORE_fa>0でないとき顔画像ではないと判定する。
顔画像であると判定するとき、顔検出部102は、ステップST27に移る。このステップST27において、顔検出部102は、検出枠FR-faで囲まれている画像の情報(顔画像情報)を、顔IDを付加して、顔検出枠情報(位置情報およびサイズ情報)と共に記憶装置に記憶する。なお、顔検出部102は、上述したように、Sピクセル×Sピクセルの顔画像情報を、後段の顔特徴量算出部103における処理のために、80ピクセル×80ピクセルの大きさに正規化した後に記憶装置に記憶する。
顔検出部102は、ステップST27の処理の後、ステップST28に進む。ステップST26で顔画像でないと判定するとき、顔検出部102は、直ちに、ステップST28に移る。このステップST28において、顔検出部102は、検出枠FR-faが最後の位置まで移動したか否かを判定する。最後の位置まで移動していないとき、顔検出部102は、ステップST29において、検出枠FR-faを次の位置に移動し、その後に、ステップST25に戻って、上述したと同様の処理を繰り返す。なお、検出枠FR-faは、ある垂直位置においては水平方向に1ピクセルずつ移動していき、当該垂直位置における水平方向の移動が終わると、垂直方向に1ピクセル移動して、次の垂直位置に移る。
ステップST28で検出枠FR-faが最後の位置まで移動しているとき、顔検出部102は、ステップST30において、縮小段階S_NOが最後の段階S_NOmaxにあるか否かを判定する。S_NO=S_NOmaxでないとき、顔検出部102は、ステップST31において、縮小段階S_NO+1を次の段階とし、その後、ステップST23に移り、上述したと同様の処理を繰り返す。
また、ステップST30で、S_NO=S_NOmaxであるとき、全ての縮小段階S_NOでの顔画像の検出処理が終了したことを意味するので、顔検出部102は、ステップST32において、顔画像検出処理を終了する。
顔検出部102は、上述したように、静止画フレーム(静止画像)から顔画像を検出する際に、その顔画像の顔の向きを示す顔回転角度を検出する。顔検出部102は、上述したようにアダブースト(AdaBoost)等の機械学習アルゴリズムにより学習された顔辞書を用いて顔画像の検出を行う際に、複数の顔回転角度に対応した顔辞書を並行して使用する。
顔検出部102は、顔画像が検出されたとき、その検出で使用された顔辞書に対応付けられている顔回転角度を、検出された顔画像の顔の向きを示す顔回転角度とする。なお、顔検出部102は、複数の顔辞書で測定された顔スコアSCORE_faが0より大きくなった場合、最も大きな顔スコアSCORE_faが得られる顔辞書に対応付けられている顔回転角度を、検出された顔画像の顔の向きを示す顔回転角度とする。顔検出部102は、図10のステップST27において、この顔回転角度情報も、記憶装置に記憶する。
「顔特徴量算出部」
顔特徴量算出部103は、顔検出部102で検出された顔画像の画像情報(顔画像情報)に基づいて、この顔画像の顔特徴量を算出して、記憶装置に記憶する。また、顔特徴量算出部103は、この顔画像の画像情報に基づいて、笑顔の程度を示す笑顔スコア、およびコントラストの程度を示すコントラストスコアを算出して、記憶装置に記憶する。そして、顔特徴量算出部103は、その記憶内容を適宜なタイミングで、後段のノイズ顔除去部104に送る。
顔特徴量算出部103は、顔画像から眉毛の両端、目の両端と中央等の顔特徴位置を検出し、各顔特徴位置における局所特徴量ベクトル(識別特徴ベクトル)を、ガボアフィルタ(Gabor Filter)などの畳み込み演算を用いて算出する。顔特徴量算出部103は、顔画像情報および顔回転角度情報に基づいて、顔特徴位置を、例えば、AAM(Active Appearance Models)と呼ばれる方法を適用して検出する。このAAMについては、以下の文献に記載がある。
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
AAMの手法は、所定の限られた範囲内での方向の顔画像に対して、精度良く顔特徴位置を検出することが可能であるという特徴がある。そのため、AAMによる手法を用いて顔特徴位置を検出する場合、精度良く顔特徴位置を検出できる範囲内毎に、方向別の顔特徴位置を検出する仕組みが必要である。例えば、各方向別に、顔特徴位置を検出する複数の検出部(不図示)が設けられ、顔方向情報が示す方向により、それらの検出部が切り替えられて用いられる。
顔特徴量算出部103における顔特徴位置の検出をAAMの手法を用いて行う場合、顔特徴量算出部103は、顔回転角度情報が示す顔回転角度に適した検出部を選択し、その選択した検出部に顔画像情報を供給し、顔特徴位置の検出を行う。
顔特徴量算出部103で検出される顔特徴位置は、例えば、図15(a)や図15(b)に示した位置である。図15(a)は、正面から撮影された顔画像から検出される顔特徴位置を表している。図15(b)は、斜め45度から撮影された顔画像から検出される顔特徴位置を表している。図15(a)、図15(b)において、×印を付した部分が、顔特徴位置として検出される位置である。
図15(a)を参照するに、顔特徴位置として検出されるのは、眉毛の両端(右側の眉と左側の眉で、それぞれ2点、計4点)、目の両端と中央(黒目)(右目と左目で、それぞれ3点、計6点)、鼻の両端と中央(計3点)、口の両端と中央(両端で2点、上唇の中央で1点、下唇の中央で1点、計4点)の17点である。また、図15(b)を参照するに、顔特徴位置として検出されるのは、図15(a)に示した場合と同様に17点である。この実施の形態においては、顔画像から17点の顔特徴位置が検出されるものとして説明を続ける。
図15(a)と図15(b)に、それぞれ示した顔特徴位置(×印)のうち、対応する位置同士を、実線で結び、その対応がわかるように図示している(ただし、眉毛および目の部分のみ)。
顔特徴量算出部103は、顔検出部102で検出された顔画像毎に、上述した顔特徴位置を検出し、顔特徴位置情報および顔画像情報に基づいて、顔特徴位置毎に、顔特徴量としての局所特徴量ベクトル(識別特徴ベクトル)を算出する。顔特徴量算出部103における局所特徴量ベクトルの算出には、特徴位置近傍の画像を、そのまま用いて算出する方法や、ガボアフィルタ(Gabor Filter)やガルシアンデリバティブフィルタ(GaussianDerivative Filter )などの畳み込み演算を用いて抽出する方法を適用することができる。ここでは、ガボアフィルタにより局所特徴量が抽出されるとして説明を続ける。
ガボアフィルタの処理(ガボアフィルタリング)について説明する。人間の視覚細胞には、ある特定の方位に対して選択性を持つ細胞が存在することが既に判っている。人間の視覚細胞は、垂直の線に対して反応する細胞と、水平の線に反応する細胞で構成される。ガボアフィルタリングは、この人間の視覚細胞と同様に、方位選択性を持つ複数のフィルタで構成される空間フィルタである。
ガボアフィルタは、ガボア関数によって空間表現される。ガボア関数g(x,y)は、(5)式に示すように、コサイン成分からなるキャリアs(x,y)と、2次元ガウス分析状のエンベローブWr(x,y)とで構成される。
キャリアs(x,y)は、複数関数を用いて、(6)式のように表現される。ここで、座標値(u0,v0)は空間周波数を表し、またPはコサイン成分の位相を表す。
(6)式に示すキャリアは、(7)式に示すように、実数成分Re(s(x,y))と虚数成分Im(s(x,y))に分離することができる。
一方、2次元ガウス分布からなるエンベローブは、(8)式のように表現される。
ここで、座標軸(x0 ,y0 )はこの関数のピークであり、定数aおよびbはガウス分布のスケール・パラメータである。また、添字rは、(9)式に示すような回転操作を意味する。
従って、上述の(6)式および(8)式より、ガボアフィルタは、(10)式に示すような空間関数として表現される。
この実施の形態において、顔特徴量算出部103は、合計17個のガボアフィルタを用いて顔の目、口、鼻などの顔特徴位置毎に算出処理を行う。
ガボアフィルタのレスポンスは、Giをi番目のガボアフィルタとし、i番目のガボアフィルタの結果(Gabor Jet)をJiとし、入力イメージをIとすると、(11)式で表される。
この(11)式の演算は、実際には高速フーリエ変換を用いて高速化することができる。以下の説明においては、所定の顔特徴位置による、(11)式により算出される局所特徴量を局所特徴量ベクトル(識別特徴ベクトル)とし、以下のように(12)式のように定義する。
このように、顔特徴量算出部103は、特徴量としての局所特徴量ベクトル(識別特徴ベクトル)を、顔特徴位置毎に算出する。すなわち、顔特徴量算出部103は、1つの顔画像につき、17点の顔特徴位置に対応して、(13)式に示すように、17個の局所特徴量ベクトルの組を算出し、記憶装置に記憶する。
顔特徴量算出部103は、顔検出部102で検出された顔画像の画像情報(顔画像情報)に基づいて、笑顔の程度を示す笑顔スコアを算出する。顔特徴量算出部103は、図16に示すように、顔画像IM-2に対して、左目、右目の位置が所定座標になるように正規化(アフィン変換)を行って、所定サイズ、この実施の形態においては、水平サイズが48ピクセル、垂直サイズが48ピクセルの正規化顔画像IM-3を生成する。
なお、上述した正規化顔画像IM-2のピクセル数(80ピクセル×80ピクセル)に比べて、左目、右目の位置に基づいて正規化された正規化顔画像IM-3のピクセル数(48ピクセル×48ピクセル)が少なくされている。これは、以下の理由からである。すなわち、顔画像の顔特徴量を精度よく検出するために正規化顔画像IM-2はある程度のピクセル数(解像度)を持つ必要がある。しかし、正規化顔画像IM-3に関しては、顔全体に広がる特徴(笑顔スコア)を検出するためのものであり、少ないピクセル数でも十分である。このように正規化顔画像IM-3のピクセル数を少なくすることで、メモリ使用量を節約でき、また、特徴検出の処理を簡単、かつ高速に行うことができる。
顔特徴量算出部103は、図16に示すように、笑顔辞書を適用して、笑顔スコアSCORE_smを測定する。この笑顔スコアSCORE_smは、正規化顔画像IM-3の状態が笑顔であるか否かを判定するためのスコアである。
笑顔スコアSCORE_smの測定処理について説明する。笑顔辞書は、図17(b)に示すように、t3組(数百ペア)の、pix_sm1(i),pix_sm2(i)、θ_sm(i)、およびα_sm(i)の組み合わせからなっている。ここで、pix_sm1(i),pix_sm2(i)は、正規化画像IM-3における2点の位置を示している。θ_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の測定は、図17(a)に示すように、顔辞書のpix_sm1(i),pix_sm2(i)、θ_sm(i)、およびα_sm(i)の各組に対応して、(14)式を満たすか否かを判断し、満たす場合には(15)式の演算を行い、一方、満たさない場合には(16)式の演算を行うことで、行われる。なお、(14)式で、pix_sm1(i)はその位置の輝度値を示し、pix_sm2(i)はその位置の輝度値を示している。
pix_sm1(i)−pix_sm2(i)<θ_sm(i) ・・・(14)
SCORE_sm=SCORE_sm+α_sm(i) ・・・(15)
SCORE_sm=SCORE_sm−α_sm(i) ・・・(16)
図18のフローチャートは、笑顔スコアSCORE_smの測定処理の手順を示している。まず、顔特徴量算出部103は、ステップST71において、スコア測定処理を開始し、その後に、ステップST72に移る。このステップST72において、顔特徴量算出部103は、笑顔スコアSCORE_smを0に設定する。そして、顔特徴量算出部103は、ステップST73において、iを1に設定する。
次に、顔特徴量算出部103は、ステップST74において、pix_sm1(i)およびpix_sm2(i)に対応する輝度値を選択し、ステップST75において、pix_sm1(i)の輝度値からpix_sm2(i)の輝度値を差し引く演算を行う。そして、顔特徴量算出部103は、ステップST76において、演算結果であるpix_sm1(i)−pix_sm2(i)が閾値θ_sm(i)より小さいか否かを判定する((14)式参照))。
pix_sm1(i)−pix_sm2(i)<θ_sm(i)を満たすとき、顔特徴量算出部103は、ステップST77において、笑顔スコアSCORE_smに重みα_sm(i)を加算する((15)式参照)。一方、pix_sm1(i)−pix_sm2(i)<θ_sm(i)を満たさないとき、顔特徴量算出部103は、ステップST78において、笑顔スコアSCORE_smから重みα_sm(i)を減算する((16)式参照)。
顔特徴量算出部103は、ステップST77の処理の後、およびステップST78の処理の後、ステップST79に移る。このステップST79において、顔特徴量算出部103は、iをインクリメントする。そして、顔特徴量算出部103は、ステップST80において、iがt3より大きいか否かを判定する。iがt3より大きいとき、笑顔辞書のt3組の各組み合わせの処理を終了したことを意味する。顔特徴量算出部103は、i>t3でないときステップST74に戻って上述した処理を繰り返し、一方、i>t3であるとき、ステップST81において、笑顔スコア測定処理を終了する。
顔特徴量算出部103は、上述したように顔検出部102で検出された顔画像毎に笑顔スコアを算出して、記憶装置に記憶する。
また、顔特徴量算出部103は、顔検出部102で検出された顔画像の画像情報(顔画像情報)に基づいて、コントラストの程度を示すコントラストスコアを算出する。顔特徴量算出部103は、顔画像の画像情報に基づいて、ピクセル毎に得られる隣接ピクセルとの輝度差分の二乗値を加算していくことで、コントラストスコアContrastScoreを算出する。
このコントラストスコアContrastScoreの算出処理では、図19(a)に示すように、80ピクセル×80ピクセルの顔画像IM-2上に、2ピクセル×2ピクセルのブロックBLを設定する。このブロックBLを構成する4個のピクセルのうち、左上のピクセルの位置を(x,y)とし、左下のピクセルの位置を(x,y+1)とし、右上のピクセルの位置を(x+1,y)とし、右下のピクセルの位置を(x+1,y+1)とする。
顔特徴量算出部103は、x,yを0〜78の範囲で変化させてブロックBLの位置を順次移動し、各位置において隣接ピクセル間の輝度差分の二乗値を算出し、順次加算していき、コントラストスコアContrastScoreを算出する。
ここで、(x,y),(x+1,y)のピクセル間の輝度差分を[I(x,y)−I(x+1,y)] とし、(x,y),(x,y+1)のピクセル間の輝度差分を[I(x,y)−I(x,y+1)] とし、(x,y),(x+1,y+1)のピクセル間の輝度差分を[I(x,y)−I(x+1,y+1)] とし、(x,y+1),(x+1,y)のピクセル間の輝度差分を[I(x,y+1)−I(x+1,y)] とするとき、コントラストスコアContrastScoreは、(17)式で表される。なお、この(17)式において、Nが顔画像のピクセル数(画素数)を示しており、この実施の形態においては80×80である。
図20のフローチャートは、所定の顔画像IM-2のコントラストスコアContrastScoreを算出する処理手順を示している。まず、顔特徴量算出部103は、ステップST91において、コントラストスコア算出処理を開始し、その後に、ステップST92の処理に移る。このステップST92において、顔特徴量算出部103は、ブロック(2×2ピクセル)の各ピクセル間の輝度差分二乗値を求めて加算する。
次に、顔特徴量算出部103は、ステップST93において、次のブロックがあるか否かを判断する。顔特徴量算出部103は、x,yが0〜78の範囲で未だ移動していない位置があれば、次のブロックがあると判断する。次のブロックがあるとき、顔特徴量算出部103は、ステップST92に戻り、次のブロックの処理に移行する。
次のブロックがないとき、顔特徴量算出部103は、ステップST94において、総加算値を、顔画像IM-2のピクセル数(画素数)Nで除算して、コントラストスコアContrastScoreを得る。顔特徴量算出部103は、ステップST94の処理の後、ステップST95において、処理を終了する。
顔特徴量算出部103は、上述したように顔検出部102で検出された顔画像毎にコントラストスコアを算出して、記憶装置に記憶する。
図21のフローチャートは、デコード部101において、動画像ストリームから静止画フレーム(静止画像)が取り出される毎に、上述した顔検出部102および顔特徴量算出部103で行われる処理の手順を示している。
デコード部101で静止画フレームが取り出されるとき、顔検出部102および顔特徴量算出部103は、ステップST101において、処理を開始する。そして、顔検出部102は、ステップST102において、静止画フレームの画像情報をグレースケールに変換する。顔検出部102は、例えば、入力画像フォーマットがYUVの場合には、Y成分のみを抽出する。また、顔検出部102は、例えば、入力画像フォーマットがRGBの場合には、次式のように、Y成分を算出する。
Y=(0.299*R+0.587*G+0.114*B)
次に、顔検出部102は、ステップST103において、グレースケールに変換後の静止画フレームの画像情報に基づいて、顔画像を検出し、さらにその顔画像の顔の向きを示す顔回転角度を検出する(図9〜図14参照)。
次に、顔特徴量算出部103は、ステップST104において、顔検出部102で検出された顔画像の画像情報に基づいて、笑顔スコアSCORE_smを算出する(図16〜図18参照)。また、顔特徴量算出部103は、ステップST105において、顔検出部102で検出された顔画像の画像情報に基づいて、コントラストスコアContrastScoreを算出する(図19、図20参照)。また、顔特徴量算出部103は、ステップST106において、顔検出部102で検出された顔画像の画像情報に基づいて、顔特徴位置を検出して(図15参照)、顔特徴量(局所特徴量ベクトル)を算出する。
次に、顔特徴量算出部103は、ステップST107において、顔検出部102で検出された最後の顔画像であるか否かを判定する。最後の顔画像でないとき、顔特徴量算出部103は、ステップST104に戻り、次の顔画像の笑顔スコアSCORE_sm、コントラストスコアContrastScoreおよび顔特徴量の算出処理に移る。
ステップST107で最後の顔画像であるとき、顔特徴量算出部103は、ステップST108に進み、処理を終了する。
なお、図21に示すフローチャートにおいて、デコード部101から顔検出部102に送られる静止画フレーム(静止画像)の画像情報が既にグレースケールに変換されたものである場合には、顔検出部102で静止画フレーム(静止画像)の画像情報をグレースケールに変換する処理(ステップST102の処理)は不要となる。また、図21に示すフローチャートにおいて、ステップST104〜ステップST106の処理は、この順番でなくてもよい。
「ノイズ顔除去部」
ノイズ顔除去部104は、後段の同一顔結合処理部105および顔クラスタリング部106の処理精度に悪影響を及ぼす可能性のある横顔やぼけ顔の顔画像を除去する。ノイズ顔除去部104は、顔特徴量算出部103から送られる各顔画像に対応した顔データ(図4参照)に基づいて、ノイズ顔(横顔、ボケ顔)の顔画像を除去する。
図22のフローチャートは、ノイズ顔除去部104における、ノイズ顔除去処理の手順を示している。ノイズ顔除去部104は、顔特徴量算出部103から、顔検出部102で検出された各顔画像の顔データが送られてくるとき、各顔画像を順次処理対象として、図22のフローチャートに示すノイズ顔除去処理を行う。
ノイズ顔除去部104は、ステップST111において、処理を開始し、その後に、ステップST112の処理に移る。このステップST112において、ノイズ顔除去部104は、横顔のチェック、つまり、処理対象の顔画像の顔データに含まれる顔回転角度の情報をチェックする。
次に、ノイズ顔除去部104は、ステップST113において、ヨー(yaw)角が閾値以内にあるか否かを判断する。閾値は、例えば±45度とされる。例えば、図23(a)の顔画像はヨー(yaw)角が−5度で横顔でない例を示し、図23(b)はヨー(yaw)角が+50度で横顔(ノイズ顔)の例を示している。
ヨー(yaw)角が閾値以内にないとき(図23(b)参照)、ノイズ顔除去部104は、ステップST114において、処理対象の顔画像をノイズ顔(横顔)の顔画像であるとみなして除去する。ノイズ顔除去部104は、ステップST114の処理の後、ステップST115において、処理を終了する。
また、ステップST113でヨー(yaw)角が閾値以内であるとき、ノイズ顔除去部104は、ステップST116の処理に移る。このステップST116において、ノイズ顔除去部104は、ボケ顔のチェック、つまり、処理対象の顔画像の顔データに含まれるコントラストスコアをチェックする。
次に、ノイズ顔除去部104は、ステップST117において、コントラストスコアが閾値より大きいか否かを判断する。閾値は、例えば、150とされる。例えば、図24(a)はコントラストスコアが350でボケ顔でない例を示し、図24(b)はコントラストスコアが120でボケ顔(ノイズ顔)である例を示している。
コントラストスコアが閾値以下であるとき、ノイズ顔除去部104は、ステップST114において、処理対象の顔画像をノイズ顔(ボケ顔)の顔画像であるとみなして除去する。ノイズ顔除去部104は、ステップST114の処理の後、ステップST115において、処理を終了する。
また、ステップST117でコントラストスコアが閾値より大きいとき、ノイズ顔除去部104は、ステップST118において、処理対象の顔画像をノイズ顔ではないとみなして除去しないこととする。ノイズ顔除去部104は、ステップST118の処理の後、ステップST115において、処理を終了する。
なお、図22に示すフローチャートにおいては、処理対象の顔画像のヨー(yaw)角が閾値以内にないときは横顔(ノイズ顔)の顔画像であると見なして除去するようにしているが、さらにピッチ(pitch)角が閾値以内にないときは上向き顔あるいは下向き顔(ノイズ顔)と見なして除去するようにしてもよい。
「同一顔結合処理部」
同一顔結合処理部105は、ノイズ顔除去部104から、現フレームの顔データが送られてくる毎に、同一の顔画像を結合する処理を行う。同一顔結合処理部105は、現在フレームで検出された顔画像と過去フレームで検出されて保存されている顔画像とが同一人物のものであるか否かを判断する。この場合、同一顔結合処理部105は、双方の顔画像の特徴量に基づいて算出された類似度、双方の顔画像の顔検出枠の位置、サイズ、双方の顔画像のフレーム間隔等にそれぞれ閾値を定めて判断する。
図25のフローチャートは、同一顔結合処理部105における、同一顔結合処理の手順を示している。同一顔結合処理部105は、ノイズ顔除去部104から現在フレームの各顔画像(ノイズ顔の顔画像は除かれている)の顔データが送られてくるとき、各顔画像を順次処理対象として、図25のフローチャートに示す同一顔結合処理を行う。
同一顔結合処理部105は、ステップST121において、処理を開始し、その後に、ステップST122の処理に移る。このステップST122において、現在フレームの顔画像(現在顔画像)と過去フレームで検出されて保存されている顔画像(過去顔画像)の類似度を算出する。この場合、同一顔結合処理部105は、現在顔画像および過去顔画像の、上述した顔特徴量算出部103で算出された顔特徴量としての局所特徴量ベクトル((13)式参照)を用いて、類似度を求める。
ここで、類似度の求め方について説明する。現在顔画像と過去顔画像の類似度は、双方の顔画像の局所特徴量ベクトル(顔特徴量)を用いることで行われる。この場合、現在顔画像と過去顔画像の顔回転角度が異なる場合には(図15(a),(b)参照)、双方の顔画像の局所特徴量ベクトルをそのまま用いるときには、類似度の算出精度が低下する。そこで、顔特徴量算出部103は、双方の顔画像の顔回転角度が異なる場合、写像関数を用いて、例えば、過去顔画像の局所特徴量ベクトルを、現在顔画像の向きに合わせた局所特徴量ベクトルに変換した後に、類似度を求める。
ここで、現在顔画像の顔回転角度を0度(図15(a)参照)とし、過去顔画像の顔回転角度を45度(図15(b)参照)として、写像処理について説明する。この場合、現在顔画像の局所特徴量ベクトルは(18)式に示すようになり、過去顔画像の局所特徴量ベクトルは(19)式に示すようになる。なお、J,jの文字の上側の添え字は顔回転角度を示している。iは、顔特徴位置を識別するための数字であり、この実施の形態においては17点の顔特徴位置に対応した局所特徴量ベクトルが算出されるため、1〜17の数字である。
(19)式の45度の方向の顔画像から抽出された顔特徴ベクトルが、写像関数により、0度の方向の顔画像から抽出された顔特徴ベクトルとして扱えるように写像される。(20)式は、写像後の局所特徴量ベクトルを示している。この(20)式において、J,jの上の“〜”は、近似値であることを示している。
(20)式の各要素((20)式の右辺の{}内の各要素)は、(21)式により算出される。
すなわち、(20)式を構成する1つの要素jは、(19)式における全ての要素(i−1乃至i−nまでのn個の要素j)が用いられて、所定の写像関数fにより求められる。この場合、写像関数fとしては、過去顔画像の顔の向きに対応した写像関数が利用される。また、写像関数fは、顔特徴位置毎に用意されている。すなわち、この実施の形態において、顔特徴位置は17点であるので、1つの向きにつき、17個の写像関数fが用意されている。
写像処理に関する式を、一般的に記載すると以下のようになる。
(22)式は、θIの方向の過去顔画像の特徴位置iにおける局所特徴量ベクトルを表している。(23)式は、θRの方向の現在顔画像の特徴位置iにおける局所特徴量ベクトルを表している。(24)式は、(22)式の過去顔画像の特徴位置iにおける局所特徴量ベクトルを、θRの方向の顔画像から抽出された顔特徴ベクトルとして扱えるように写像した後の顔特徴ベクトルを表している。
また、(25)式は、(24)式の右辺の各要素を表している。すなわち、(25)式の左辺は、特徴位置iにおける局所特徴量ベクトルのk番目の要素の推定値であることを示している。(25)式の右辺のうち、
は、θRの方向の顔画像の特徴位置iにおける局所特徴量ベクトルのk番目の要素を、θI の方向の顔画像の特徴位置iにおける局所特徴量ベクトルの全ての要素を用いて写像を行う特徴量の写像関数である。
なお、ここでは、全ての要素を用いて写像を行っているが、全ての要素を用いなくてもよい。例えば、推定に必要な最低限の要素を決定し、その要素だけが用いられる(写像関数に代入される)ようにしてもよい。すなわち、入力される局所特徴量ベクトルと写像後の局所特徴量ベクトルとの間に明白な因果関係があるような場合、写像関数の入力変数として、入力された全ての局所特徴量ベクトルの要素を用いて写像処理が行われるのではなく、因果関係があると判断される要素のみが用いられるようにしてもよい。
次に、同一顔結合処理部105は、正規化相関演算を用いて、類似度を算出する。同一顔結合処理部105は、正規化相関演算を用いて類似度を算出する場合、(26)式と(27)式に基づいて類似度ベクトルを算出する。
(26)式に、(12)式と(20)式における各要素が順次代入され、正規化相関演算が行われることにより、(27)式における類似度ベクトルを構成する各要素が算出される。換言すれば、過去顔画像と現在顔画像の同じ顔特徴位置における類似度が、過去顔画像の局所特徴量ベクトル(写像変換された局所特徴量ベクトル)((20)式参照)と、現在顔画像の局所特徴量ベクトル((12)式参照)を用いて演算される((26)式参照)。
なお、(28)式、(29)式は、現在顔画像の向きがθRであるときの、上述の(26)式、(27)式に対応した式である。
同一顔結合処理部105は、上述したように算出された類似ベクトル((27)式、(29)式参照)の大きさを求め、この大きさを類似度として用いる。
図25のフローチャートの説明に戻って、同一顔結合処理部105は、ステップST122の処理の後、ステップST123の処理に移る。このステップST123において、同一顔結合処理部105は、ステップST122で求めた類似度と閾値Th1(第1の閾値)を比較する。ここで、ステップST122で求められる類似度の最大値は100であり、閾値Th1は例えば88とされる。
次に、同一顔結合処理部105は、ステップST124において、類似度が閾値Th1以上であるか否かを判断する。類似度が閾値Th1以上であるとき、同一顔結合処理部105は、ステップST125において、現在顔画像と過去顔画像とは同一人物の顔画像であると見なす。例えば、図26(a),(b)は過去顔画像、現在顔画像の一例であって、双方の顔画像の類似度は例えば88となり、これらの顔画像は同一人物の顔画像であると見なされる。
次に、同一顔結合処理部105は、ステップST126において、2つの顔画像のいずれかを代表顔として決定する。この場合、例えば、2つの顔画像のうち、最も正面に向いている顔画像、あるいは最もコントラストスコアが高い顔画像などを代表の顔画像とする。そして、同一顔結合処理部105は、ステップST127において、代表の顔画像の顔データを保存し、代表でない顔データを破棄する。同一顔結合処理部105は、ステップST127の処理の後、ステップST128において、処理を終了する。
ステップST124で類似度が閾値Th1より小さいとき、同一顔結合処理部105は、ステップST129において、ステップST122で求めた類似度と閾値Th2(第2の閾値)を比較する。ここで、ステップST122で求められる類似度の最大値は100であり、閾値Th2は例えば0とされる。
次に、同一顔結合処理部105は、ステップST1200において、類似度が閾値Th2以上であるか否かを判断する。類似度が閾値Th2以上であるとき、同一結合処理部105は、ステップST1201の処理に移る。例えば、図27(a),(b)は過去顔画像、現在顔画像の一例を示しており、双方の顔画像の類似度は例えば3となる。
このステップST1201において、同一顔結合処理部105は、双方の画像の顔検出枠情報とフレーム間の時間情報を比較する。そして、同一顔結合処理部105は、ステップST1202において、顔検出枠とフレーム間の時間が条件を満たすか否かを判断する。同一顔結合処理部105は、例えば、顔検出枠の重心間の距離が80ピクセルより短く、かつ、顔検出枠の面積比が0.5から1.5の間にあり、かつ、フレーム間の時間が5.0秒より短いときは、条件を満たすと判断する。ここで、80ピクセルは顔検出枠の重心間の距離の閾値の一例であり、面積比の0.5,1.5は顔検出枠の面積比の閾値の一例であり、5.0秒はフレーム間の時間の閾値の一例である。
同一顔結合処理部105は、条件を満たすとき、ステップST125において、現在顔画像と過去顔画像とは同一人物の顔画像であると見なす。これにより、照明条件などにより双方の顔画像の類似度が低くても、フレーム間隔が短く、顔検出枠の位置、サイズが近い場合は、同一人物の顔画像と見なされる。
例えば、図28(a)は過去顔画像(図27(a)参照)が顔検出枠DF1で検出された静止画フレーム(frame1)を示し、図28(b)は現在顔画像(図27(b)参照)が顔検出枠DF2で検出された静止画フレーム(frame3)を示しているものとする。この場合、検出枠DF1,DF2の重心間の距離が30ピクセルであり、検出DF1,DF2の面積比が1.05であり、フレーム間の時間が3.0秒であり、顔検出枠とフレーム間の時間の条件を満たしている。
同一顔結合処理部105は、ステップST125の処理の後、ステップST126の処理に移る。このステップST126における同一顔結合処理部105の処理については上述したと同様であるので、説明は省略する。
また、ステップST1200で類似度が閾値Th2より小さいとき、およびステップST1202で条件を満たさないとき、同一顔結合処理部105は、ステップST1203の処理に移る。このステップST1203において、同一顔結合処理部105は、最後の過去顔画像であるか否かを判断する。最後の過去顔画像でないとき、同一顔結合処理部105は、ステップST122の処理に戻り、処理対象の現在顔画像と次の過去顔画像の処理に移行する。
ステップST1203で最後の過去顔画像であるとき、同一顔結合処理部105は、ステップST1204において、処理対象の現在顔画像は異なる人物の顔画像であると見なす。そして、同一顔結合処理部105は、ステップST1205において、処理対象の現在顔画像の顔データを保存し、その後に、ステップST128において、処理を終了する。
なお、図25のフローチャートに示す同一顔結合処理では、現在顔画像と過去顔画像の顔特徴量から算出された類似度の他に、双方の顔画像の検出枠情報およびフレーム間の時間情報に基づいて、現在顔画像と過去顔画像とが同一人物の顔画像であるか否かを判断している。しかし、現在顔画像と過去顔画像の顔特徴量から算出された類似度だけで判断すすることも考えられる。その場合、同一顔結合処理部105は、図25のフローチャートで、ステップST124で類似度がTh1未満であるとき、直ちにステップST1203の処理に移ることになる。
また、同一顔結合処理部105は、図25のフローチャートのステップST1202の判断を、顔画像の検出枠情報あるいは顔画像のフレーム間の時間情報の一方だけで判断することも考えられる。
「顔クラスタリング部」
顔クラスタリング部106は、動画像ストリームの最後まで到達したときに同一顔結合処理部105に最終的に保存されている顔画像に対して、同一人物の顔画像を1つのクラスタとするクラスタリング処理を行って、動画像ストリーム内に登場する人物の分類を行う。また、顔クラスタリング処理部106は、上述のクラスタリング処理の結果、複数の顔画像を含むクラスタについて、その複数の顔画像から代表の顔画像を決定する。
図29のフローチャートは、顔クラスタリング部106における顔クラスタリング処理の手順を示している。
顔クラスタリング部106は、ステップST131において、処理を開始し、その後に、ステップST132の処理に移る。このステップST132において、顔クラスタリング処理部106は、類似度マトリックスを計算する。すなわち、顔クラスタリング部106は、上述の同一顔結合処理部105で最終的に保存された顔画像から抽出される2つの顔画像の各組み合わせに対して、この2つの顔画像の特徴量(局所特徴量ベクトル)に基づいて、この2つの顔画像の類似度を算出する。この意味で、顔クラスタリング部106は、類似度算出部を構成している。類似度の求め方は、上述の同一顔結合処理部105の部分で説明したと同様である。
ここで、同一顔結合処理部105で最終的に保存された顔画像がn個であって、それぞれの顔IDがf1〜fnであるとする。この場合、顔クラスタリング部106は、図30に斜線を付して示した箇所に該当する、2つの顔画像の組み合わせ毎に類似度を算出する。
また、顔クラスタリング部106は、上述の類似度マトリックスの計算結果に基づいて、図31に示すように、類似度の高い順にソーティングした顔ペアリストを作成して保存しておく。この顔ペアリストは、「順位」と、「ペア」と、「類似度」の項目からなっている。「ペア」の項目には、組み合わせ(ペア)を構成する2つの顔画像の顔IDが配置される。また、「類似度」の項目には、算出された類似度が配置される。
図32は、顔クラスタリング部106における、類似度マトリックス計算および顔ペアリスト作成の処理手順を示している。顔クラスタリング部106は、ステップST141において、処理を開始し、その後に、ステップST142の処理に移る。このステップST142において、顔クラスタリング部106は、2つの顔画像の類似度を計算する。そして、顔クラスタリング部106は、ステップST143において、次の組み合わせがあるか否かを判断する。次の組み合わせがあるときは、ステップST142に戻り、次の組み合わせの2つの顔画像の類似度を計算する。
次の組み合わせがないとき、図30に示す類似度マトリックスの完成を意味するので、顔クラスタリング部106は、ステップST144の処理に移る。このステップST144において、顔クラスタリング部106は、類似度マトリックスを用いて、類似度の高い順に、ソーティングして、顔ペアリスト(図31参照)を作成する。そして、顔クラスタリング部106は、ステップST144の処理の後、ステップST145において、処理を終了する。
図29のフローチャートに戻って、次に、顔クラスタリング部106は、ステップST133において、階層化クラスタリングの処理を行う。この場合、顔クラスタリング部106は、ステップST132で作成した顔ペアリスト(図31参照)に基づいて、階層化クラスタリングの処理を行う。この場合、顔クラスタリング部106は、SINGLE LINKAGEというクラスタリング方法を用いて、階層化構造を作る。この意味で、顔クラスタリング部106は、階層化クラスリング部を構成している。
すなわち、顔クラスタリング部106は、同一顔結合処理部105で最終的に保存された顔画像のそれぞれを1つのクラスタとし、最下層のリーフを顔画像の個数分だけ作成する。その後、顔クラスタリング部106は、ステップST132で作成した顔ペアリストを参照して、類似度の高い組み合わせの順番に、この組み合わせを構成する顔IDが含まれるクラスタを順次結合(マージ)して、最終的に1つのクラスタとする。
顔クラスタリング部106は、階層化構造を構成する各ノードのデータを保存する。図33は、ノードデータの構造を示している。ノードデータは、ノード番号、上層ノード情報、下層ノード情報、リーフリストを含んでいる。ノード番号は、ノード毎にユニークなIDである。上層ノード情報は、上層ノードへのポインタであり、最上位のノードのノードデータでは「NULL」となる。下層ノード情報は、下層ノードへのポインタであり、最下位のノードのノードデータでは「NULL」となる。リーフリストは、下位に保持する全てのリーフ(末端ノード)の顔IDリストであり、末端ノード(最下位)ノードのノードデータでは1つの顔IDが含まれる。
図34は、ノードの階層化構造の一例を示している。このノードの階層化構造の場合、同一顔結合処理部105で最終的に保存された顔画像が15個であり、各顔画像の顔IDがf1〜f15である場合を示している。この場合、最下層のリーフ(末端ノード)は15個だけ作成される。図34の例においては、便宜上、顔IDf1〜f15に対応した末端ノードのノード番号を1〜15としている。
図31の顔ペアリストを参照する。順位1のペアは(f1,f3)であるので、f1,f3の顔IDがリーフリストに含まれるノード番号1,3のノードの上位に、ノード番号16の親ノードが作られる。次に、順位2のペアは(f7,f12)であるので、f7,f12の顔IDがリーフリストに含まれるノード番号7,12のノードの上位に、ノード番号17の親ノードが作られる。
次に、順位3のペアは(f11,f9)であるので、f11,f9の顔IDがリーフリストに含まれるノード番号11,9のノードの上位に、ノード番号18の親ノードが作られる。次に、順位4のペアは(f15,f9)であるので、f15,f9の顔IDがリーフリストに含まれるノード番号15,18のノードの上位に、ノード番号19の親ノードが作られる。以下、同様にして、ノードの階層化構造が作成されていく。
図35は、図34のノードの階層化構造における19番ノードのデータを示している。ノード番号は、「19」となる。上層ノード情報は、26番ノードへのポインタとなる。下層ノード情報は、15番ノードへのポインタ、および18番ノードへのポインタとなる。リーフリストは、下位に保持する全てのリーブの顔IDであるf9,f11,f15となる。
図36のフローチャートは、顔クラスタリング部106における、階層化クラスタリング処理の処理手順を示している。顔クラスタリング部106は、ステップST151において、処理を開始し、その後に、ステップST152の処理に移る。このステップST152において、顔クラスタリング部106は、最下層のリーフを、顔IDの個数分作成する。そして、顔クラスタリング部106は、ステップST153において、顔ペアリストを参照する。
次に、顔クラスタリング部106は、ステップST154において、順位1のペアの顔IDをリーフリフトに含むノードが存在するか否かを判断する。ノードが存在するとき、顔クラスタリング部106は、ステップST155において、ペアの顔IDが属している2つのノードから、親ノードを作る。
顔クラスタリング部106は、ステップST155の処理の後、ステップST156の処理に移る。上述のステップST154でノードが存在しないとき、顔クラスタリング部106は、直ちに、ステップST156の処理に移る。このステップST156において、顔クラスタリング部106は、順位が最後のペアか否かを判断する。最後のペアでないとき、顔クラスタリング部106は、ステップST154の処理に戻り、次の順位のペアに対する処理に移行する。一方、最後のペアであるとき、顔クラスタリング処理部106は、ステップST157において、処理を終了する。
図29のフローチャートに戻って、次に、顔クラスタリング部106は、ステップST134において、クラスタ決定の処理を行う。この場合、顔クラスタリング部106は、過結合判断でクラスタを調整する。すなわち、顔クラスタリング部106は、ステップST133の階層化クラスタリング処理で得られたツリー状のクラスタ情報(ノードの階層化構造情報)に基づいて、最上位層のクラスタから過結合の判断を行い、過結合と判断されたクラスタを、ステップST133の階層化クラスタリング処理で結合する前の2つのクラスタに分割してクラスタを決定する。この意味で、顔クラスタリング部106は、クラスタ決定部を構成している。
顔クラスタリング部106は、図37に示すように、最上位ノードから順番にスタック(メモリスタック)に積み(プッシュ:push)、その後に、このスタックからノードを取り出し(ポップ:pop)して、ノード毎の過結合判断を行う。
図38のフローチャートは、顔クラスタリング部106における、クラスタ決定処理の処理手順を示している。顔クラスタリング部106は、ステップST161において、処理を開始し、その後に、ステップST162の処理に移る。このステップST162において、顔クラスタリング部106は、最上位ノードをスタック上にプッシュ(push)する。
次に、顔クラスタリング部106は、ステップST163において、スタックは空か否かを判断する。スタックが空でないとき、顔クラスタリング部106は、ステップST164において、スタックからノードをひとつポップ(pop)する。
次に、顔クラスタリング部106は、ステップST165において、ポップノードは過結合か否かを判断する。過結合であると判断するとき、顔クラスタリング部106は、ステップST166において、現在のノードの下層ノードをスタックにプッシュし、その後に、ステップST163に戻り、上述したと同様の動作を繰り返す。一方、過結合でないと判断するとき、顔クラスタリング部106は、ステップST167において、現在のノードを最終クラスタとしてクラスタリストに保存し、その後に、ステップST163に戻り、上述したと同様の動作を繰り返す。
上述のステップST163でスタックが空であるとき、顔クラスタリング部106は、直ちにステップST168に進み、処理を終了する。
ここで、上述のステップST165におけるクラスタ過結合判定処理の詳細を説明する。図39のフローチャートは、顔クラスタリング部106における、クラスタ過結合判定処理の処理手順を示している。顔クラスタリング部106は、ステップST171において、処理を開始し、その後に、ステップST172の処理に移る。このステップST172において、顔クラスタリング部106は、ノードに含まれるリーフリストに基づき、このリーフリスト内の顔IDを持つ各顔画像の顔特徴量の平均値を計算する。この意味で、顔クラスタリング部106は、平均特徴量算出部を構成している。
この実施の形態において、顔特徴量は上述したように顔特徴量算出部103で算出された局所特徴量ベクトル(識別特徴特徴ベクトル)である((12)式参照)。そのため、顔クラスタリング部106は、リーフリスト内の顔IDがN個であるとき、ステップST172において、図40に示すように、N個の顔画像に対応した局所特徴量ベクトルをそれぞれ対応する要素毎に加算平均して、平均局所特徴量ベクトルを求める。
次に、顔クラスタリング部106は、ステップST173において、ノード内の1番目の顔画像の顔特徴量を取得する。そして、顔クラスタリング部106は、ステップST174において、ステップST172で計算した平均顔特徴量とステップST173で取得した顔特徴量との類似度である個別類似度を算出する。また、顔クラスタリング部106は、ステップST174において、現在算出した個別類似度とそれまでに算出した個別類似度の平均をとって平均類似度を計算しておく。
次に、顔クラスタリング部106は、ステップST175において、ステップST174で算出された個別類似度が個別類似度比較閾値より大きいか否かを判断する。ここで、ステップST172で計算した平均顔特徴量をfaverageとし、ステップST173で取得した顔特徴量をfiとし、ステップST174で算出された個別類似度をSimilarity(fi,faverage)で表し、また、個別類似度比較閾値をThreshold2で表すとする。
この場合、顔クラスタリング部106は、ステップST175において、Similarity(fi,faverage)>Threshold2であるか否かを判断する。なお、fiの「i」は、この顔特徴量がノード内のi番目の顔画像の顔特徴量であることを示している。
Similarity(fi,faverage)>Threshold2を満足するとき、顔クラスタリング部106は、ステップST176において、最後の顔画像であるか否かを判断する。最後の顔画像でないとき、顔クラスタリング部106は、ステップST177において、ノード内の次の顔画像の顔特徴量を取得し、その後に、ステップST174に戻り、上述したと同様の処理を繰り返す。
また、ステップST176でノード内の最後の顔画像であるとき、顔クラスタリング部106は、ステップST178の処理に移る。このステップST178において、顔クラスタリング部106は、ノード内の最後の顔画像の処理時に上述のステップST174で計算された最終的な平均類似度が平均類似度比較閾値より大きいか否かを判断する。
ここで、最終的な平均類似度をAverage(Similarity(fi,faverage))で表し、また、平均類似度比較閾値をThreshold1で表すとする。この場合、顔クラスタリング部106は、ステップST178において、Average(Similarity(fi,faverage))>Threshold1であるか否かを判断する。
Average(Similarity(fi,faverage))>Threshold1を満足するとき、顔クラスタリング部106は、ステップST179において、処理対象のノード(ポップノード)は非過結合であると判断し、その後に、ステップST180において、処理を終了する。
上述のステップST175でSimilarity(fi,faverage)>Threshold2を満足しないとき、および上述のステップST178でAverage(Similarity(fi,faverage))>Threshold1を満足しないとき、顔クラスタリング部106は、ステップST181において、処理対象のノード(ポップノード)は過結合であると判断し、その後に、ステップST180において、処理を終了する。
図39に示すフローチャートのクラスタ過結合判定処理で使用される個別類似度比較閾値Threshold2(ST175)および平均類似度比較閾値Threshold1(ST178)は、クラスタリング設定パラメータである。上述せずも、顔クラスタリング部106にはユーザ設定部107が接続されている(図1参照)。ユーザは、個別類似度比較閾値Threshold2および平均類似度比較閾値Threshold1をユーザ設定部107から任意に設定できる。
図41は、図38のフローチャートで示すクラスタ決定処理によるクラスタ決定例を示している。このクラスタ決定例では、ノード番号25,19,4,20,13,23のノードが最終クラスタとしてクラスタリストに保存される。
図29のフローチャートに戻って、次に、顔クラスタリング部106は、ステップST135において、代表顔決定の処理を行う。この場合、顔クラスタリング部106は、クラスタリング処理の結果、複数の顔画像を含むクラスタについて、その複数の顔画像から代表の顔画像を決定する。この意味で、顔クラスタリング部106は、代表顔決定部を構成している。顔クラスタリング部106は、複数の顔画像を含むクラスタについて、この複数の顔画像の顔回転角度情報(roll.pitch,yaw)、笑顔スコアおよびコントラストスコアに基づいて、代表の顔画像を決定する。
図42のフローチャートは、顔クラスタリング部106における、代表顔決定処理の処理手順を示している。顔クラスタリング部106は、ステップST191において、処理を開始し、その後に、ステップST192の処理に移る。このステップST192において、顔クラスタリング部106は、処理対象のクラスタに含まれる複数の顔画像の角度スコアを算出する。各顔画像の角度スコアSfrontは、当該各画像の顔画像の顔回転角度情報であるロール(roll)角、ピッチ(pitch)角、ヨー(yaw)角を用いて、例えば、(30)式で算出される。この(30)式において、a,b,cは各方向に対する重み付けのための係数である。
Sfront=a|roll|+b|pitch|+c|yaw| ・・・(30)
また、顔クラスタリング部106は、ステップST192において、上述したように算出した各顔画像の角度スコアSfrontに基づいて、複数の顔画像を角度スコアが小さい順にソートする。ここで、角度スコアが小さい顔画像は、その顔の向きが正面に近いことを意味する。そして、顔クラスタリング部106は、ステップST193において、角度スコアが正面顔判定閾値より小さい顔画像を含む第1の顔画像群に絞り込む。
次に、顔クラスタリング部106は、ステップST194において、第1の画像群に含まれる顔画像を、笑顔スコアが大きい順にソートする。そして、顔クラスタリング部106は、ステップST195において、笑顔スコアが笑顔閾値より大きな顔画像を含む第2の顔画像群に絞り込む。
次に、顔クラスタリング部106は、ステップST197において、第2の顔画像群に含まれる顔画像のうち、コントラストスコアが最も大きな顔画像を代表の顔画像とする。顔クラスタリング部106は、ステップST197の処理の後、ステップST198において、処理を終了する。
図42のフローチャートで示す代表顔決定処理を行うことで、各クラスタリング部106は、複数の顔画像が含まれるクラスタにおいて、顔の向きが正面に近く、笑顔の程度が高く、しかもコントラストのよい顔画像を、代表の顔画像として決定できる。例えば、あるクラスタに、図43(a)〜(d)に示すように、正面でない顔画像、正面で均一照明の顔画像、正面で照明が悪い顔画像、ぶれている顔画像があった場合には、例えば、正面で均一照明の顔画像が代表の顔画像として決定される。
なお、図42に示すフローチャートの代表顔決定理で使用される正面顔判定閾値(ST193)および笑顔閾値(ST195)は、クラスタリング設定パラメータである。ユーザは、正面顔判定閾値および笑顔閾値をユーザ設定部107(図1参照)から任意に設定できる。
また、図42のフローチャートの代表顔決定処理では、顔画像の顔回転角度情報、笑顔スコアおよびコントラストスコアの全てを用いているが、これら全てを用いずに、一部の情報のみを用いて代表の顔画像を決定するようにしてもよい。また、図42のフローチャートでは、笑顔スコアを用いて笑顔の程度が高い顔画像を代表の顔画像として決定するようにしているが、他の表情の程度が高い顔画像を代表の顔画像として決定することも考えられる。その場合には、例えば、顔特徴量算出部103において笑顔スコアではなく他の表情のスコアを算出しておき、そのスコアを用いるようにすればよい。
顔クラスタリング部106は、クラスタ決定処理で最終クラスタとして決定された各クラスタのデータを出力する。この各クラスタのデータは、動画像ストリームに登場する人物を重複少なく良好に表示し得る登場人物データを構成する。
図29のフローチャートに戻って、顔クラスタリング部106は、ステップST135の処理を行った後に、ステップST136において、処理を終了する。
「顔クラスタリングの精度評価アルゴリズム」
顔クラスタリングの精度評価アルゴリズムについて説明する。上述の顔クラスタリング部106におけるクラスタ過結合判定処理で使用される個別類似度比較閾値Threshold2および平均類似度比較閾値Threshold1は、この顔クラスタリングの精度評価アルゴリズムに基づいて決めることができる。
図44は、「Aさん」〜「Kさん」の人物の顔画像が含まれる複数の顔画像に対して顔クラスタリング処理を行った場合における一般的な結果例を示している。この場合、所定の人物のクラスタに他の人物の顔画像が含まれることがある。例えば、図44の結果例においては、「Aさん」のクラスタに、他の人物である「Bさん」、「Cさん」および「Dさん」の顔画像が含まれている。このように違う人物が同じ人物と判断されている状態は、過結合状態を意味する。また、例えば、図44の結果例においては、「Bさん」の顔画像は、「Bさん」のクラスタの他に、「Aさん」および「Kさん」のクラスタにも含まれている。このように、同じ人物が違う人物と判断されている状態は、過分割状態を意味する。
図45は、予測結果と実結果との関係を示すコンフュージョンテーブル(Confusion Table)を示している。このコンフュージョンテーブルにおいて、c(i,j)は、人物jの顔画像が人物iのクラスタに含まれる数を表している。図46は、理想的な顔クラスタリング処理が行われた場合のコンフュージョンテーブルを示している。この場合、j≠iであるとき、c(i,j)=0となっている。つまり、人物jの顔画像が、他の人物iのクラスタに含まれる数は0となる。
ここで、エントロピー(平均情報量)について考える。図47に示すように、人物Aおよび人物Bの顔画像がクラスタAおよびクラスタBに正しく分類されるとき、エントロピーH(X)は0となる。また、図48に示すように、互いのクラスタに少しだけ他の人物の顔画像が含まれるように分類されるとき、エントロピーH(X)は0より大きくなる。さらに、図49に示すように、互いのクラスタに他の人物の顔画像が半分ずつ含まれるように分類されるとき、分類としては最悪であり、エントロピーH(X)は1となる。
顔クラスタリングの精度評価アルゴリズムでは、コンフュージョンテーブル(図45参照)と、エントロピーの二つの概念を結合して、過結合スコアおよび過分割スコアを算出する。
すなわち、過結合スコアSCRcは、各行のエントロピーEntropy(row(n))を求め、それらを各行の顔画像の個数で重み付けして加算することで算出する。また、過分割SCRdは、各列のエントロピーEntropy(column(m))を求め、それらを各列の顔画像の個数で重み付けして加算することで算出する。ここで、顔画像の個数で重み付けするのは、顔画像の数が大きい列ほどエントロピーに与える影響を大きくするためである。
(31)式はエントロピーEntropy(row(n))を示し、(32)式は過結合スコアSCRcを示している。また、(33)式はエントロピーEntropy(column(m))を示し、(34)式は過分割SCRdを示している。
また、(31)式〜(34)式におけるp(n,m),q(n,m),p(n),q(m)は、それぞれ(35)式、(36)式、(37)式、(38)式で表される。
上述の顔クラスタリング部106におけるクラスタ過結合判定処理で使用される個別類似度比較閾値Threshold2および平均類似度比較閾値Threshold1として、上述の過結合スコアSCRcおよび過分割SCRdが0に近づくような値が予め求められる。
以上説明したように、図1に示す画像処理装置100において、同一顔結合処理部105では、現在フレームで検出された顔画像と過去フレームで検出されて保存されている顔画像とが同一人物の顔画像であるか否かが双方の顔画像の顔特徴量に基づいて判断され、同一人物の顔画像であると判断されるときいずれか一方のみが保存される。そのため、デコード部101で顔画像を検出する静止画フレームの取り出し間隔は例えば1秒間に1フレーム程度でよく、従って解析を行うフレーム数が少ないため、短い解析時間で登場人物の抽出が可能となる。例えば、MPEGあるいはAVCのストリームの場合、このストリームに一定間隔で含まれるイントラフレームだけをデコードして用いることができ、いわゆるフルデコードをする必要がなく、解析時間の短縮化が顕著となる。
また、図1に示す画像処理装置100において、同一顔結合処理部105では、現在顔画像と過去顔画像の顔特徴量と共に、双方の顔画像の検出枠情報および双方の顔画像のフレーム間隔に基づいて、双方の顔画像が同一人物の顔画像であるか否かが判断されるため、判断精度を高めることができる。例えば、照明条件などの変化により、双方の顔画像が同一人物の顔画像であるにも拘わらず、双方の顔特徴量から求められた類似度が低くなった場合に、双方の顔画像の検出枠情報、双方の顔画像のフレーム間隔が一定の条件を満たしているか否かを考慮することで、双方の顔画像が同一人物の顔画像であると判断することが可能となる。
また、図1に示す画像処理装置100において、ノイズ顔除去部104では、正面から所定方向、例えばヨー(yaw)角、あるいはピッチ(pitch)角等が閾値以内にないとき顔画像が除去される。そのため、極端に横向き、上向き、下向きの顔画像を予め除去でき、同一顔結合処理部105、顔クラスタリング部106における判断精度の低下を抑制できる。
また、図1に示す画像処理装置100において、ノイズ顔除去部104では、顔特徴量算出部103で算出されたントラストスコアが閾値より小さな顔画像が除去される。そのため、極端にコントラストが低く、ぼけた顔画像を予め除去でき、同一顔結合処理部105、顔クラスタリング部106における判断精度の低下を抑制できる。
また、図1に示す画像処理装置100においては、同一顔結合処理部105の後段に顔クラスタリング部106が配置されている。そのため、顔クラスタリング部106により、同一顔結合処理部105で保存された動画ストリーム内の顔画像を、同一人物の顔画像が1つのクラスタとなるように分類でき、登場人物データを良好に得ることができる。
また、図1に示す画像処理装置100において、同一顔結合処理部105では、現在フレームで検出された顔画像が過去フレームで検出されて保存されている顔画像と同一人物の顔画像であるときいずれか一方のみが保存されることで、動画像ストリームの最後まで到達したときに、当該同一顔結合処理部105により最終的に保存されている顔画像の個数が低減される。そのため、顔クラスタリング部106における処理時間の低減を図ることができる。
また、図1に示す画像処理装置100において、顔クラスタリング部106では、類似度マトリックスの計算、階層化クラスタリング処理およびクラスタ決定処理が順次行われるものであり、複数の顔画像に対して同一人物の顔画像を1つのクラスタとするクラスタリングを良好に行うことができる。
また、図1に示す画像処理装置100において、顔クラスタリング部106では、同一顔結合処理部105で保存された顔画像に対して同一人物の顔画像を1つのクラスタとする処理が行われ、さらに、複数の顔画像を含むクラスタについては代表の顔画像が決定される。そのため、動画像ストリーム内の登場人物の顔画像を表示する閲覧アプリケーションにおいて、同一人物の顔画像が重複して表示されることを防止でき、しかも、最適な顔画像を表示できるようになる。
なお、図1に示す画像処理装置100においては、同一顔結合処理部105で最終的に保存された顔画像を全て顔クラスタリング部106の顔クラスタリング処理の対象とするものを示した。しかし、顔クラスタリング部106では、上述したように、最初に類似度マトリックスを計算する処理を行う。したがって、同一顔結合処理部105で最終的に保存された顔画像(登場人物候補)の数が増えすぎた場合、顔クラスタリング部106に入力する顔画像の数を制限するようにしてもよい。例えば、最大100人までなど、入力する顔画像の優先順位を検出枠の大きさ、笑顔スコア、コントラストスコアなどでソートして、最大100人まで入力する等の制限を行ってもよい。
また、図1に示す画像処理装置100においては、同一顔結合処理部105の前段にノイズ顔除去部104を備えるものを示したが、このノイズ顔除去部104が除かれた構成も考えられる。
また、図1に示す画像処理装置100においては、例えば、ハードディスク(HDD)、あるいはメモリカードに記録されている動画ファイルを読み出し、この動画ファイル内の動画像ストリームから登場人物を抽出する例を示したがが、この発明は、デジタルカメラレコーダ(カムコーダ)やデジタルカメラ等の動画撮影機器において、撮影時に得られる動画像ストリームから登場人物を抽出する際にも適用できる。
また、図1に示す画像処理装置100においては、静止画フレームから顔画像を検出するものを示したが、この発明は一般的に所定物体の画像を検出するものに、同様に適用できる。
また、上述実施の形態においては、デコード部101でイントラフレーム(I-Frame)のみデコードしているが、デジタルアーカイブシステムなど、長時間かけて解析をすることを許可するようなシステムなどの場合、MPEGビデオ信号などの動画像ストリームの全てのフレームをデコードし、後段の顔検出部102等に供給して処理を行うようにしてもよい。この場合、イントラフレームだけを用いる処理に比べて解析速度が遅くなるが、登場人物を検出し逃すケースを少なくできる。
なお、上述実施の形態における画像処理装置100の各機能部は、ハードウェアおよびソフトウェアのいずれによっても実現できる。ソフトウェアで実現する場合には、コンピュータが、ROMまたはハードディスクに格納されているプログラムに基づいて、各機能部の処理を実行する。
図50は、このような処理を実行するコンピュータ500の内部構成例を示す図である。CPU(Central Processing Unit)501は、ROM(Read OnlyMemory)502に記憶されているプログラムに従って各種の処理を実行する。RAM(Random AccessMemory)503には、CPU501が各種の処理を実行する上において必要なデータやプログラムなどが適宜記憶される。
入出力インタフェース505は、上述したCPU501、ROM502およびRAM503と共に、バス504に接続されている。入出力インタフェース505には、キーボードやマウスから構成される入力部506が接続されている。この入出力インタフェース505は、入力部506から入力された信号をCPU501に出力する。また、入出力インタフェース505には、ディスプレイやスピーカなどから構成される出力部507も接続されている。
また、入出力インタフェース505には、ハードディスクなどから構成される記憶部508、および、インターネットなどのネットワークを介して他の装置とデータの通信を行う通信部509も接続されている。ドライブ510は、磁気ディスク、光ディスク、光磁気ディスク、半導体メモリ等の記録媒体からデータを読み出し、あるいはそれにデータを書き込むときに用いられる。処理対象の動画ファイルは、例えば、通信部509あるいはドライブ510から取り込まれ、ハードディスクなどから構成される記憶部508に格納される。
この発明は、短い解析時間で登場人物の抽出を良好に行い得るものであり、動画ファイルに含まれる動画像ストリームあるいは撮影機器で撮影されて得られた動画像ストリームから登場人物(所定の物体)を抽出する際に適用できる。
実施の形態としての画像処理装置の構成例を示すブロック図である。 顔検出枠情報に含まれる顔検出枠の位置情報およびサイズ情報を説明するための図である。 顔回転角度の方向としてのヨー(yaw)角、ロール(roll)角、ピッチ(pitch)角を説明するための図である。 各顔画像に対応したデータ(顔データ)の構造を示す図である。 登場人物データとしてのクラスタデータの構造を示す図である。 画像処理装置の処理手順を概略的に示す図である。 動画像ストリームがMPEGのビデオストリームである場合に、一定間隔で含まれるイントラフレーム(Iフレーム)の画像情報がデータ伸長処理されてデコードが行われることを示す図である。 画像処理装置の処理手順を示すフローチャートである。 顔検出部における顔画像の検出動作を説明するための図である。 顔画像検出のために静止画フレーム(静止画像)上に設定される検出枠FR-faを説明するための図である。 顔画像検出時に用いる顔辞書と、この顔辞書を用いた顔スコアSCORE_faの測定を説明するための図である。 顔辞書の各組の位置情報と検出枠FR-faとの関係を説明するための図である。 顔画像検出時に使用する静止画フレーム(静止画像)IM-0と、その縮小画像IM-0a,IM-0b,・・・を示す図である。 顔検出部における顔画像検出処理の手順を示すフローチャートである。 顔特徴量算出部で顔特徴量(局所顔特徴量ベクトル)を算出する際に検出される顔特徴位置を説明するための図である。 顔特徴量算出部における笑顔スコアの算出時に行われる顔画像IM-2に対する正規化処理を説明するための図である。 笑顔辞書と、この笑顔辞書を用いた笑顔スコアSCORE_smの測定を説明するための図である。 笑顔辞書を用いた笑顔スコアSCORE_smの測定処理の手順を示すフローチャートである。 コントラストスコアContrastScoreをピクセル毎に得られる隣接ピクセルとの輝度差分の二乗値を加算して求めることを説明するための図である。 所定の顔画像IM-2のコントラストスコアContrastScoreを算出する処理手順を示すフローチャートである。 デコード部において動画像ストリームから静止画フレーム(静止画像)が取り出される毎に、顔検出部および顔特徴量算出部で行われる処理の手順を示すフローチャートである。 ノイズ顔除去部におけるノイズ顔除去処理の手順を示すフローチャートである。 ヨー(yaw)角が−5度で横顔でない顔画像例、およびはヨー(yaw)角が+50度で横顔(ノイズ顔)の顔画像例を示す図である。 コントラストスコアが350でボケ顔でない顔画像例、およびコントラストスコアが120でボケ顔(ノイズ顔)である顔画像例を示す図である。 同一顔結合処理部における同一顔結合処理の手順を示すフローチャートである。 類似度が高く同一人物の顔画像であると見なされる過去顔画像、現在顔画像の一例を示す図である。 類似度が低く、類似度だけでは同一人物の顔画像であると見なされない過去顔画像、現在顔画像の一例を示す図である。 過去顔画像、現在顔画像の類似度は低いが、顔検出枠とフレーム間の時間の条件を満たすことで同一人物の顔画像であると見なされる過去顔画像、現在顔画像の一例を示す図である。 顔クラスタリング部における顔クラスタリング処理の手順を示すフローチャートである。 顔クラスタリング部における類似度マトリックスの計算において、2つの顔画像の組み合わせ毎に類似度を算出することを説明するための図である。 類似度マトリックスの計算結果に基づいて、類似度の高い順にソーティングして作成した顔ペアリストの一例を示す図である。 顔クラスタリング部における類似度マトリックス計算および顔ペアリスト作成の処理手順を示すフローチャートである。 階層化構造を構成する各ノードのデータ(ノードデータ)の構造を示す図である。 階層化クラスタリング処理で作成されるノードの階層化構造の一例を示す図である。 ノードデータの具体例を示す図である。 顔クラスタリング部における階層化クラスタリング処理の処理手順を示す図である。 顔クラスタリング部のクラスタ決定処理において、最上位ノードから順番にスタックに積んでノード毎に過結合判断を行うことを示す図である。 顔クラスタリング部におけるクラスタ決定処理の処理手順を示すフローチャートである。 顔クラスタリング部におけるクラスタ過結合判定処理の処理手順を示すフローチャートである。 平均局所特徴量ベクトル(平均特徴量)の計算を説明するための図である。 クラスタ決定処理によるクラスタ決定例を示す図である。 顔クラスタリング部における代表顔決定処理の処理手順を示すフローチャートである。 正面でない顔画像、正面で均一照明の顔画像、正面で照明が悪い顔画像、ぶれている顔画像があった場合に、例えば、正面で均一照明の顔画像が代表の顔画像として決定されることを説明する図である。 「Aさん」〜「Kさん」の人物の顔画像が含まれる複数の顔画像に対して顔クラスタリング処理を行った場合における一般的な結果例を示す図である。 予測結果と実結果との関係を示すコンフュージョンテーブル(Confusion Table)を示す図である。 理想的な顔クラスタリング処理が行われた場合のコンフュージョンテーブルを示す図である。 クラスタリング(分類)結果とエントロピー(平均情報量)との関係を説明するための図(1/3)である。 クラスタリング(分類)結果とエントロピー(平均情報量)との関係を説明するための図(2/3)である。 クラスタリング(分類)結果とエントロピー(平均情報量)との関係を説明するための図(3/3)である。 画像処理装置の各機能部の処理を実行するコンピュータの内部構成例を示す図である。
符号の説明
100・・・画像処理装置、101・・・デコード部、102・・・顔検出部、103・・・顔特徴量算出部、104・・・ノイズ顔除去部、105・・・同一顔結合処理部、106・・・顔クラスタリング部、107・・・ユーザ設定部、500・・・コンピュータ

Claims (15)

  1. 動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、上記静止画フレームに含まれる顔画像を検出する顔検出部と、
    上記顔検出部で検出された顔画像の画像情報に基づいて、該顔画像の顔特徴量を算出する顔特徴量算出部と、
    上記顔検出部で検出された顔画像の顔の向きを示す顔回転角度を検出する顔回転角度検出部と、
    上記顔検出部で検出された顔画像の画像情報に基づいて、該顔画像のコントラストを示すコントラストスコアを算出するコントラスト算出部と、
    上記顔検出部で検出された顔画像から、上記顔回転角度検出部で検出されたヨー方向の顔回転角度が閾値より大きな顔画像を除去すると共に、上記コントラスト算出部で算出されたコントラストスコアが閾値より小さな顔画像を除去するノイズ顔除去部と、
    現在フレームで上記顔検出部により検出され、上記ノイズ顔除去部で除去されなかった第1の顔画像が、過去フレームで上記顔検出部により検出されて保存されている第2の顔画像と同一人物の顔画像であるか否かを、少なくとも上記顔特徴量算出部で算出された上記第1の顔画像および上記第2の顔画像の顔特徴量に基づいて判断する同一性判断部と、
    上記同一性判断部で同一であると判断されるとき、上記第1の顔画像と上記第2の顔画像のいずれかを代表画像に決定し、該決定された代表画像が上記第1の顔画像であるときは上記第2の顔画像を破棄して該第1の顔画像を保存し、上記同一性判断部で同一でないと判断されるとき、上記第2の顔画像を破棄することなく上記第1の顔画像をさらに保存する結合処理部と
    を備える画像処理装置。
  2. 上記同一性判断部は、上記第1の顔画像の顔特徴量および上記第2の顔画像の顔特徴量に基づいて該第1の顔画像と該第2の顔画像の類似度を求め、該類似度閾値以上であるとき、該第1の顔画像と該第2の顔画像が同一人物の顔画像であると判断する
    請求項1に記載の画像処理装置。
  3. 上記同一性判断部は、上記第1の顔画像の顔特徴量および上記第2の顔画像の顔特徴量に基づいて該第1の顔画像と該第2の顔画像の類似度を求め、
    上記類似度が第1の閾値以上であるとき、上記第1の顔画像と上記第2の顔画像が同一人物の顔画像であると判断し、
    上記類似度が上記第1の閾値より小さく第2の閾値以上であるとき、上記第1の顔画像の検出枠と上記第2の顔画像の検出枠の重心間の距離が閾値より短いという条件と、上記第1の顔画像の検出枠と上記第2の顔画像の検出枠の面積比が第1の閾値から第2の閾値の間にあるという条件と、上記第1の顔画像と上記第2の顔画像のフレーム間の時間が閾値より短いという条件を満たした場合には、上記第1の顔画像と上記第2の顔画像が同一人物の顔画像であると判断する
    請求項に記載の画像処理装置。
  4. 上記結合処理部により保存された顔画像を、少なくとも、上記顔特徴量算出部で算出された顔特徴量に基づいて、同一人物の顔画像を1つのクラスタとする顔クラスタリング部をさらに備える
    請求項1に記載の画像処理装置。
  5. 上記顔クラスタリング部は、
    上記結合処理部により保存された顔画像から抽出される2つの顔画像の各組み合わせに対して、該2つの顔画像の顔特徴量に基づいて該2つの顔画像の類似度を算出する類似度算出部と、
    上記結合処理部により保存された顔画像のそれぞれを1つのクラスタとし、その後に、上記類似度算出部で算出された上記各組み合わせの類似度に基づいて、該類似度の高い組み合わせの順番に、該組み合わせを構成する顔画像が含まれるクラスタを順次結合して最終的に1つのクラスタとする階層化クラスタリング部と、
    上記階層化クラスタリング部で得られたツリー状のクラスタ情報に基づいて、最上位層のクラスタから過結合の判断を行い、過結合と判断されたクラスタを上記階層化クラスタリング部で結合する前の2つのクラスタに分割してクラスタを決定するクラスタ決定部とを有する
    請求項に記載の画像処理装置。
  6. 上記クラスタ決定部は、
    過結合判断対象のクラスタに含まれる顔画像の顔特徴量を平均した平均顔特徴量を算出する平均顔特徴量算出部と、
    上記平均顔特徴量算出部で算出された平均顔特徴量と上記過結合判断対象のクラスタに含まれる顔画像の顔特徴量とから個別類似度を算出する個別類似度算出部とを有し、
    上記過結合判断対象のクラスタに含まれる顔画像のうち、少なくとも、いずれかの顔画像についての上記個別類似度が個別類似度比較閾値より小さいとき、上記過結合判断対象のクラスタは過結合であると判断する
    請求項に記載の画像処理装置。
  7. ユーザが上記個別類似度比較閾値を設定するためのユーザ設定部をさらに備える
    請求項に記載の画像処理装置。
  8. 上記クラスタ決定部は、
    上記過結合判断対象のクラスタに含まれる顔画像についての上記個別類似度算出部で算出された個別類似度を平均した平均類似度を算出する平均類似度算出部をさらに有し、
    上記平均類似度算出部で算出された平均類似度が平均類似度比較閾値より小さいとき、上記過結合判断対象のクラスタは過結合であると判断する
    請求項に記載の画像処理装置。
  9. ユーザが上記平均類似度比較閾値を設定するためのユーザ設定部をさらに備える
    請求項に記載の画像処理装置。
  10. 上記クラスタリング部で得られたクラスタのうち、複数の顔画像を含むクラスタについて、該複数の顔画像から代表の顔画像を決定する代表画像決定部をさらに備える
    請求項に記載の画像処理装置。
  11. 上記代表画像決定部は、上記複数の顔画像を含むクラスタについて、該複数の顔画像の顔回転角度情報、表情情報およびコントラスト情報の少なくともいずれかに基づいて代表の顔画像を決定する
    請求項10に記載の画像処理装置。
  12. 上記代表画像決定部は、上記複数の顔画像を含むクラスタについて、
    上記複数の顔画像を、上記顔回転角度情報に基づいて、顔の回転角度が第1の閾値より小さな顔画像を含む第1の顔画像群に絞り込み、
    上記第1の顔画像群に含まれる顔画像を、上記表情情報に基づいて、特定の表情の程度を示すスコアが第2の閾値より大きな顔画像を含む第2の顔画像群に絞り込み、
    上記第2の顔画像群に含まれる顔画像のうち、上記コントラスト情報に基づいて、コントラストの程度を示すスコアが最も高い顔画像を上記代表の顔画像に決定する
    請求項11に記載の画像処理装置。
  13. ユーザが上記第1の閾値および上記第2の閾値を設定するためのユーザ設定部をさらに備える
    請求項12に記載の画像処理装置。
  14. 動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、上記静止画フレームに含まれる顔画像を検出する顔検出ステップと、
    上記顔検出ステップで検出された顔画像の画像情報に基づいて、該顔画像の顔特徴量を算出する顔特徴量算出ステップと、
    上記顔検出ステップで検出された顔画像の顔の向きを示す顔回転角度を検出する顔回転角度検出ステップと、
    上記顔検出ステップで検出された顔画像の画像情報に基づいて、該顔画像のコントラストを示すコントラストスコアを算出するコントラスト算出ステップと、
    上記顔検出ステップで検出された顔画像から、上記顔回転角度検出ステップで検出されたヨー方向の顔回転角度が閾値より大きな顔画像を除去すると共に、上記コントラスト算出ステップで算出されたコントラストスコアが閾値より小さな顔画像を除去するノイズ顔除去ステップと、
    現在フレームで上記顔検出ステップにより検出され、上記ノイズ顔除去ステップで除去されなかった第1の顔画像が過去フレームで上記顔検出ステップにより検出されて保存されている第2の顔画像と同一人物の顔画像であるか否かを、少なくとも上記顔特徴量算出ステップで算出された上記第1の顔画像および上記第2の顔画像の顔特徴量に基づいて判断する同一性判断ステップと、
    上記同一性判断ステップで同一であると判断されるとき、上記第1の顔画像と上記第2の顔画像のいずれかを代表画像に決定し、該決定された代表画像が上記第1の顔画像であるときは上記第2の顔画像を破棄して該第1の顔画像を保存し、上記同一性判断ステップで同一でないと判断されるとき、上記第2の顔画像を破棄することなく上記第1の顔画像をさらに保存する結合処理ステップと
    を有する画像処理方法。
  15. コンピュータを、
    動画像ストリームから順次取り出された静止画フレームの画像情報に基づいて、上記静止画フレームに含まれる顔画像を検出する顔検出手段と、
    上記顔検出手段で検出された顔画像の画像情報に基づいて、該顔画像の顔特徴量を算出する顔特徴量算出手段と、
    上記顔検出手段で検出された顔画像の顔の向きを示す顔回転角度を検出する顔回転角度検出手段と、
    上記顔検出手段で検出された顔画像の画像情報に基づいて、該顔画像のコントラストを示すコントラストスコアを算出するコントラスト算出手段と、
    上記顔検出手段で検出された顔画像から、上記顔回転角度検出手段で検出されたヨー方向の顔回転角度が閾値より大きな顔画像を除去すると共に、上記コントラスト算出手段で算出されたコントラストスコアが閾値より小さな顔画像を除去するノイズ顔除去手段と、
    現在フレームで上記顔検出手段により検出され、上記ノイズ顔除去手段で除去されなかった第1の顔画像が、過去フレームで上記顔検出手段により検出されて保存されている第2の顔画像と同一人物の顔画像であるか否かを、少なくとも上記顔特徴量算出手段で算出された上記第1の顔画像および上記第2の顔画像の顔特徴量に基づいて判断する同一性判断手段と、
    上記同一性判断手段で同一であると判断されるとき、上記第1の顔画像と上記第2の顔画像のいずれかを代表画像に決定し、該決定された代表画像が上記第1の顔画像であるときは上記第2の顔画像を破棄して該第1の顔画像を保存し、上記同一性判断手段で同一でないと判断されるとき、上記第2の顔画像を破棄することなく上記第1の顔画像をさらに保存する結合処理部手段と
    して機能させるプログラム。
JP2008159782A 2008-06-18 2008-06-18 画像処理装置、画像処理方法およびプログラム Expired - Fee Related JP4577410B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2008159782A JP4577410B2 (ja) 2008-06-18 2008-06-18 画像処理装置、画像処理方法およびプログラム
US12/484,643 US8027523B2 (en) 2008-06-18 2009-06-15 Image processing apparatus, image processing method, and program
CN2009101424946A CN101610341B (zh) 2008-06-18 2009-06-18 图像处理设备和图像处理方法
US13/216,983 US8462998B2 (en) 2008-06-18 2011-08-24 Image processing apparatus, image processing method, and program
US13/868,698 US8761462B2 (en) 2008-06-18 2013-04-23 Image processing apparatus, image processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008159782A JP4577410B2 (ja) 2008-06-18 2008-06-18 画像処理装置、画像処理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2010003021A JP2010003021A (ja) 2010-01-07
JP4577410B2 true JP4577410B2 (ja) 2010-11-10

Family

ID=41431349

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008159782A Expired - Fee Related JP4577410B2 (ja) 2008-06-18 2008-06-18 画像処理装置、画像処理方法およびプログラム

Country Status (3)

Country Link
US (3) US8027523B2 (ja)
JP (1) JP4577410B2 (ja)
CN (1) CN101610341B (ja)

Families Citing this family (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4636130B2 (ja) * 2008-06-27 2011-02-23 ソニー株式会社 画像処理装置、撮像装置、画像処理方法、およびプログラム
CN102150180A (zh) * 2008-10-14 2011-08-10 松下电器产业株式会社 人脸识别装置及人脸识别方法
TWI417811B (zh) * 2008-12-31 2013-12-01 Altek Corp The Method of Face Beautification in Digital Image
US10706601B2 (en) * 2009-02-17 2020-07-07 Ikorongo Technology, LLC Interface for receiving subject affinity information
US8121358B2 (en) * 2009-03-06 2012-02-21 Cyberlink Corp. Method of grouping images by face
US8531478B2 (en) 2009-03-19 2013-09-10 Cyberlink Corp. Method of browsing photos based on people
JP2011019192A (ja) * 2009-07-10 2011-01-27 Toshiba Corp 画像表示装置
JP5438419B2 (ja) * 2009-07-29 2014-03-12 富士フイルム株式会社 人物照合装置及び人物照合方法
JP4844670B2 (ja) * 2009-11-13 2011-12-28 日本ビクター株式会社 映像処理装置および映像処理方法
US8818034B2 (en) * 2009-11-30 2014-08-26 Hewlett-Packard Development Company, L.P. Face recognition apparatus and methods
JP5488076B2 (ja) * 2010-03-15 2014-05-14 オムロン株式会社 対象物追跡装置、対象物追跡方法、および制御プログラム
JP5526955B2 (ja) * 2010-04-09 2014-06-18 ソニー株式会社 顔クラスタリング装置、顔クラスタリング方法、及びプログラム
CN101916365B (zh) * 2010-07-06 2013-04-03 北京竞业达数码科技有限公司 对考试作弊事件进行智能视频识别的方法
US8675957B2 (en) 2010-11-18 2014-03-18 Ebay, Inc. Image quality assessment to merchandise an item
JP5510287B2 (ja) * 2010-11-22 2014-06-04 カシオ計算機株式会社 被写体検出装置、被写体検出方法及びプログラム
JP4893855B1 (ja) * 2010-12-21 2012-03-07 オムロン株式会社 画像認証装置、画像処理システム、画像認証装置制御プログラム、コンピュータ読み取り可能な記録媒体、および画像認証方法
KR101760258B1 (ko) * 2010-12-21 2017-07-21 삼성전자주식회사 얼굴 인식 장치 및 그 방법
EP2659429B1 (en) * 2010-12-30 2023-10-25 Nokia Technologies Oy Methods, apparatuses and computer program products for efficiently recognizing faces of images associated with various illumination conditions
US20130308829A1 (en) * 2011-01-24 2013-11-21 Adc Technology Inc. Still image extraction apparatus
US8588534B2 (en) * 2011-05-06 2013-11-19 Microsoft Corporation Staged element classification
JP5857450B2 (ja) 2011-05-30 2016-02-10 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
US9087273B2 (en) * 2011-11-15 2015-07-21 Facebook, Inc. Facial recognition using social networking information
US9740912B2 (en) 2011-12-20 2017-08-22 Definiens Ag Evaluation of co-registered images of differently stained tissue slices
JP5939705B2 (ja) * 2012-02-08 2016-06-22 カシオ計算機株式会社 被写体判定装置、被写体判定方法及びプログラム
US8605189B2 (en) 2012-05-01 2013-12-10 Xerox Corporation Product identification using mobile device
US9020212B2 (en) * 2012-07-31 2015-04-28 Hewlett-Packard Development Company, L.P. Automatically determining a name of a person appearing in an image
US9465813B1 (en) 2012-11-09 2016-10-11 Amazon Technologies, Inc. System and method for automatically generating albums
US9721292B2 (en) 2012-12-21 2017-08-01 Ebay Inc. System and method for image quality scoring
US9648297B1 (en) * 2012-12-28 2017-05-09 Google Inc. Systems and methods for assisting a user in capturing images for three-dimensional reconstruction
US9898661B2 (en) * 2013-01-31 2018-02-20 Beijing Lenovo Software Ltd. Electronic apparatus and method for storing data
CN103970782B (zh) * 2013-01-31 2017-11-28 联想(北京)有限公司 电子设备以及存储数据的方法
JP6013241B2 (ja) * 2013-03-18 2016-10-25 株式会社東芝 人物認識装置、及び方法
US9123111B2 (en) 2013-08-15 2015-09-01 Xerox Corporation Methods and systems for detecting patch panel ports from an image in which some ports are obscured
WO2015029982A1 (ja) * 2013-08-29 2015-03-05 日本電気株式会社 画像処理装置、画像処理方法、及びプログラム
JP6568476B2 (ja) * 2013-09-13 2019-08-28 エヌイーシー ホンコン リミテッド 情報処理装置、情報処理方法およびプログラム
JP6304999B2 (ja) * 2013-10-09 2018-04-04 アイシン精機株式会社 顔検出装置、方法およびプログラム
US20150317511A1 (en) * 2013-11-07 2015-11-05 Orbeus, Inc. System, method and apparatus for performing facial recognition
JP6287527B2 (ja) * 2014-04-17 2018-03-07 富士通株式会社 情報処理装置、方法及びプログラム
JP6544970B2 (ja) * 2015-04-02 2019-07-17 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
US10607063B2 (en) * 2015-07-28 2020-03-31 Sony Corporation Information processing system, information processing method, and recording medium for evaluating a target based on observers
CN105138962A (zh) * 2015-07-28 2015-12-09 小米科技有限责任公司 图像显示方法及装置
US9830727B2 (en) * 2015-07-30 2017-11-28 Google Inc. Personalizing image capture
WO2017175434A1 (ja) * 2016-04-06 2017-10-12 ソニー株式会社 情報処理装置、情報処理方法および情報提供方法
US11514526B1 (en) * 2016-05-17 2022-11-29 Liberty Mutual Insurance Company Systems and methods for property damage restoration predictions based upon processed digital images
KR102488516B1 (ko) * 2016-05-17 2023-01-13 케르퀘스트 피검물의 확장 인증 방법
JP6964234B2 (ja) * 2016-11-09 2021-11-10 パナソニックIpマネジメント株式会社 情報処理方法、情報処理装置およびプログラム
CN106682591B (zh) * 2016-12-08 2020-04-07 广州视源电子科技股份有限公司 人脸识别方法及装置
US10282592B2 (en) * 2017-01-12 2019-05-07 Icatch Technology Inc. Face detecting method and face detecting system
US10282598B2 (en) 2017-03-07 2019-05-07 Bank Of America Corporation Performing image analysis for dynamic personnel identification based on a combination of biometric features
JP6642523B2 (ja) * 2017-06-19 2020-02-05 カシオ計算機株式会社 表情判定装置、表情判定方法及びプログラム
CN108228871A (zh) * 2017-07-21 2018-06-29 北京市商汤科技开发有限公司 人脸图像动态入库方法和装置、电子设备、介质、程序
US10867161B2 (en) * 2017-09-06 2020-12-15 Pixart Imaging Inc. Auxiliary filtering device for face recognition and starting method for electronic device
US10803297B2 (en) 2017-09-27 2020-10-13 International Business Machines Corporation Determining quality of images for user identification
US10776467B2 (en) 2017-09-27 2020-09-15 International Business Machines Corporation Establishing personal identity using real time contextual data
US10839003B2 (en) 2017-09-27 2020-11-17 International Business Machines Corporation Passively managed loyalty program using customer images and behaviors
US10795979B2 (en) 2017-09-27 2020-10-06 International Business Machines Corporation Establishing personal identity and user behavior based on identity patterns
CN107909104B (zh) * 2017-11-13 2023-07-18 腾讯数码(天津)有限公司 一种图片的人脸聚类方法、装置及存储介质
US10565432B2 (en) * 2017-11-29 2020-02-18 International Business Machines Corporation Establishing personal identity based on multiple sub-optimal images
KR102433393B1 (ko) * 2017-12-12 2022-08-17 한국전자통신연구원 동영상 콘텐츠 내의 인물을 인식하는 장치 및 방법
CN110298212B (zh) * 2018-03-21 2023-04-07 腾讯科技(深圳)有限公司 模型训练方法、情绪识别方法、表情显示方法及相关设备
US11544965B1 (en) 2018-05-10 2023-01-03 Wicket, Llc System and method for access control using a plurality of images
US11132532B1 (en) 2018-05-10 2021-09-28 Ism Connect, Llc System and method for facial recognition accuracy
US11010597B1 (en) * 2018-05-10 2021-05-18 Ism Connect, Llc Entry prevention of persons of interest from venues and events using facial recognition
CN108985152A (zh) * 2018-06-04 2018-12-11 珠海格力电器股份有限公司 一种动态面部表情的识别方法及装置
CN109086697A (zh) * 2018-07-20 2018-12-25 腾讯科技(深圳)有限公司 一种人脸数据处理方法、装置及存储介质
US10963675B2 (en) * 2019-01-30 2021-03-30 Realnetworks, Inc. Method for selecting images in video of faces in the wild
CN110096958B (zh) * 2019-03-27 2023-05-12 深圳数联天下智能科技有限公司 一种识别正脸图像的方法、装置及计算设备
WO2020240727A1 (ja) * 2019-05-29 2020-12-03 日本電気株式会社 学習装置、推論装置、制御方法及び記憶媒体
CN110444148A (zh) * 2019-07-30 2019-11-12 广州健飞通信有限公司 基于256级灰度led显示屏幕的fpga实现方法、装置及计算机可读存储介质
CN111754415B (zh) 2019-08-28 2022-09-27 北京市商汤科技开发有限公司 人脸图像处理方法及装置、图像设备及存储介质
KR20210065447A (ko) * 2019-11-27 2021-06-04 삼성전자주식회사 전자장치와 그의 제어방법, 및 기록매체
CN111476104B (zh) * 2020-03-17 2022-07-01 重庆邮电大学 动态眼位下ar-hud图像畸变矫正方法、装置、系统
JP7419142B2 (ja) * 2020-04-01 2024-01-22 株式会社東芝 表示制御装置、表示制御方法及びプログラム
US11610436B2 (en) * 2020-04-08 2023-03-21 Nec Corporation Efficient watchlist searching with normalized similarity
US20210319226A1 (en) * 2020-04-14 2021-10-14 Nec Laboratories America, Inc. Face clustering in video streams
US11151390B1 (en) 2020-05-21 2021-10-19 Ism Connect, Llc Self-correcting face detection pipeline-based method and apparatus for censusing a crowd

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11175730A (ja) * 1997-12-05 1999-07-02 Omron Corp 人間検出追跡システム
JP2007179224A (ja) * 2005-12-27 2007-07-12 Omron Corp 情報処理装置および方法、並びにプログラム
JP2008017042A (ja) * 2006-07-04 2008-01-24 Sony Corp 情報処理装置および方法、並びにプログラム
JP2008077536A (ja) * 2006-09-25 2008-04-03 Sony Corp 画像処理装置および方法、並びにプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU4258897A (en) * 1996-09-04 1998-03-26 David A. Goldberg Method and system for obtaining person-specific images in a public venue
JP2003108984A (ja) * 2001-07-27 2003-04-11 Toshiba Corp 顔画像認識装置、通行制御装置、顔画像認識方法、及び通行制御方法
WO2006025185A1 (ja) * 2004-08-31 2006-03-09 Matsushita Electric Industrial Co., Ltd. 監視記録装置およびその方法
JP4267584B2 (ja) * 2005-02-28 2009-05-27 株式会社東芝 機器制御装置及びその方法
CN100426317C (zh) * 2006-09-27 2008-10-15 北京中星微电子有限公司 多姿态人脸检测与追踪系统及方法
US8116537B2 (en) * 2007-04-04 2012-02-14 Sony Corporation Image recording device, player device, imaging device, player system, method of recording image, and computer program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11175730A (ja) * 1997-12-05 1999-07-02 Omron Corp 人間検出追跡システム
JP2007179224A (ja) * 2005-12-27 2007-07-12 Omron Corp 情報処理装置および方法、並びにプログラム
JP2008017042A (ja) * 2006-07-04 2008-01-24 Sony Corp 情報処理装置および方法、並びにプログラム
JP2008077536A (ja) * 2006-09-25 2008-04-03 Sony Corp 画像処理装置および方法、並びにプログラム

Also Published As

Publication number Publication date
US8027523B2 (en) 2011-09-27
US20120039514A1 (en) 2012-02-16
CN101610341A (zh) 2009-12-23
US20090316962A1 (en) 2009-12-24
CN101610341B (zh) 2011-10-05
US8761462B2 (en) 2014-06-24
US20130236072A1 (en) 2013-09-12
US8462998B2 (en) 2013-06-11
JP2010003021A (ja) 2010-01-07

Similar Documents

Publication Publication Date Title
JP4577410B2 (ja) 画像処理装置、画像処理方法およびプログラム
Bansal et al. The do's and don'ts for cnn-based face verification
CN101027678B (zh) 基于单个图像的多生物统计系统及方法
Nishiyama et al. Facial deblur inference using subspace analysis for recognition of blurred faces
JP5174045B2 (ja) 分類器チェーンを用いた照明検出
Yin et al. Joint super-resolution and alignment of tiny faces
WO2009095168A1 (en) Detecting facial expressions in digital images
JP2012088787A (ja) 画像処理装置、画像処理方法
JP4788525B2 (ja) 物体識別パラメータ学習システム、物体識別パラメータ学習方法および物体識別パラメータ学習用プログラム
EP2270748A2 (en) Methods of representing images
US20100074479A1 (en) Hierarchical face recognition training method and hierarchical face recognition method thereof
CN109063626B (zh) 动态人脸识别方法和装置
CN111027377B (zh) 一种双流神经网络时序动作定位方法
Chung et al. Hand gesture recognition via image processing techniques and deep CNN
Parde et al. Face and image representation in deep CNN features
Parde et al. Deep convolutional neural network features and the original image
CN111950452A (zh) 一种人脸识别方法
Selim et al. Image Quality-aware Deep Networks Ensemble for Efficient Gender Recognition in the Wild.
Guha A report on automatic face recognition: Traditional to modern deep learning techniques
Fonseca et al. Face detection in the compressed domain
Dahirou et al. Motion Detection and Object Detection: Yolo (You Only Look Once)
CN115457620A (zh) 用户表情识别方法、装置、计算机设备及存储介质
CN111353353A (zh) 跨姿态的人脸识别方法及装置
Goyal et al. Online Attendance Management System Based on Face Recognition Using CNN
CN115100730B (zh) 虹膜活体检测模型的训练方法、虹膜活体检测方法及装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100405

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100420

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100614

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100727

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100809

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130903

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4577410

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130903

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees