(57)【特許請求の範囲】
【請求項１】
検出対象画像から、予め定義された所定対象物の複数の特徴点の各々の候補を検出するステップと、
前記複数の特徴点の中の２つの異なる特徴点からなる組合せ毎に統計的に求められた、一方の特徴点の位置を基準としたときの他方の特徴点の画像上の存在確率分布を用いて、
前記複数の特徴点のうち少なくとも１つの特徴点について、他の特徴点の前記検出された候補の位置を基準としたときの該１つの特徴点の存在確率分布を、該他の特徴点の候補毎にそれぞれ求め、該求められた存在確率分布を合成するステップと、
前記１つの特徴点について、該特徴点の前記合成された存在確率分布における存在確率の大小に基づいて、前記検出対象画像上で該特徴点の真の点を推定するステップとを有する特徴点検出方法において、
前記存在確率分布を合成するステップが、該存在確率分布を、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点との間の位置関係に応じて重み付けして合成するものであることを特徴とする特徴点検出方法。
【請求項２】
前記存在確率分布を合成するステップが、該存在確率分布を求めたときに位置の基準となった特徴点が同じである存在確率分布を、該存在確率分布の数で正規化して合成するものであることを特徴とする請求項１記載の特徴点検出方法。
【請求項３】
前記存在確率分布を合成するステップが、次式にしたがって合成するものであることを特徴とする請求項２記載の特徴点検出方法。
【数１】
0004532419.tif 000008
ここで、Ｐｉは特徴点Ｘｉの合成後の存在確率分布、ｘｉは特徴点Ｘｉの位置座標、ｑｊｔは特徴点Ｘｊのｔ番目の候補Ｑｊｔの位置座標、Ｐｉｊ（ｘｉ｜ｑｊｔ）は候補Ｑｊｔの位置座標ｑｊｔを基準としたときの特徴点Ｘｉの存在確率分布、ｋおよびｋ′は特徴点Ｘｊの候補の数、weight(i,j)は存在確率分布Ｐｉｊ（ｘｉ｜ｑｊｔ）に対する重み付け係数、ｎは定義した特徴点の数である。
【請求項４】
前記存在確率分布を合成するステップが、該存在確率分布を、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点との間の距離が大きいほど小さく重み付けして合成するものであることを特徴とする請求項１、２または３記載の特徴点検出方法。
【請求項５】
前記複数の特徴点が、該特徴点の前記所定対象物における位置に応じてグループ分けされたものであり、
前記存在確率分布を合成するステップが、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点とがそれぞれ異なる前記グループに属する存在確率分布のみを合成するものであることを特徴とする請求項１から４いずれか記載の特徴点検出方法。
【請求項６】
前記特徴点の真の点を推定するステップが、該特徴点の前記合成された存在確率分布における存在確率が最も高い位置の点を該特徴点の真の点として推定するものであることを特徴とする請求項１から５いずれか記載の特徴点検出方法。
【請求項７】
前記特徴点の候補を検出するステップが、前記画像における判定対象領域の画像に前記特徴点が含まれる蓋然性を示す確信度を算出し、該確信度が所定の閾値以上であるときに該判定対象領域の画像が表す対象を前記特徴点の候補と判定するものであり、
前記特徴点の真の点を推定するステップが、該特徴点の前記合成された存在確率分布における存在確率の大小に加え、該特徴点の候補の前記確信度の大小にも基づいて、該特徴点の真の点を推定するものであることを特徴とする請求項１から６いずれか記載の特徴点検出方法。
【請求項８】
前記特徴点の真の点を推定するステップが、該特徴点の前記合成された存在確率分布における存在確率が最も高い位置の点を代表とする所定領域に含まれる該特徴点の候補のうち前記確信度が最も高いものを、該特徴点の真の点として推定するものであることを特徴とする請求項７記載の特徴点検出方法。
【請求項９】
前記特徴点の真の点を推定するステップが、該特徴点の候補のうち該特徴点の前記合成された存在確率分布における該候補の位置に対応する存在確率が最も高いものを、該特徴点の真の点として推定するものであることを特徴とする請求項７記載の特徴点検出方法。
【請求項１０】
前記所定対象物が、人物の顔であることを特徴とする請求項１から９いずれか記載の特徴点検出方法。
【請求項１１】
検出対象画像から、予め定義された所定対象物の複数の特徴点の各々の候補を検出する特徴点候補検出手段と、
前記複数の特徴点の中の２つの異なる特徴点からなる組合せ毎に統計的に求められた、一方の特徴点の位置を基準としたときの他方の特徴点の画像上の存在確率分布を用いて、
前記複数の特徴点のうち少なくとも１つの特徴点について、他の特徴点の前記検出された候補の位置を基準としたときの該１つの特徴点の存在確率分布を、該他の特徴点の候補毎にそれぞれ求め、該求められた存在確率分布を合成する存在確率分布合成手段と、
前記１つの特徴点について、該特徴点の前記合成された存在確率分布における存在確率の大小に基づいて、前記検出対象画像上で該特徴点の真の点を推定する特徴点推定手段とを備えた特徴点検出装置において、
前記存在確率分布合成手段が、該存在確率分布を、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点との間の位置関係に応じて重み付けして合成するものであることを特徴とする特徴点検出装置。
【請求項１２】
前記存在確率分布合成手段が、該存在確率分布を求めたときに位置の基準となった特徴点が同じである存在確率分布を、該存在確率分布の数で正規化して合成するものであることを特徴とする請求項１１記載の特徴点検出装置。
【請求項１３】
前記存在確率分布合成手段が、次式にしたがって合成するものであることを特徴とする請求項１２記載の特徴点検出装置。
【数２】
0004532419.tif 000009
ここで、Ｐｉは特徴点Ｘｉの合成後の存在確率分布、ｘｉは特徴点Ｘｉの位置座標、ｑｊｔは特徴点Ｘｊのｔ番目の候補Ｑｊｔの位置座標、Ｐｉｊ（ｘｉ｜ｑｊｔ）は候補Ｑｊｔの位置座標ｑｊｔを基準としたときの特徴点Ｘｉの存在確率分布、ｋおよびｋ′は特徴点Ｘｊの候補の数、weight(i,j)は存在確率分布Ｐｉｊ（ｘｉ｜ｑｊｔ）に対する重み付け係数、ｎは定義した特徴点の数である。
【請求項１４】
前記存在確率分布合成手段が、該存在確率分布を、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点との間の距離が大きいほど小さく重み付けして合成するものであることを特徴とする請求項１１、１２または１３記載の特徴点検出装置。
【請求項１５】
前記複数の特徴点が、該特徴点の前記所定対象物における位置に応じてグループ分けされたものであり、
前記存在確率分布合成手段が、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点とがそれぞれ異なる前記グループに属する存在確率分布のみを合成するものであることを特徴とする請求項１１から１４いずれか記載の特徴点検出装置。
【請求項１６】
前記特徴点推定手段が、該特徴点の前記合成された存在確率分布における存在確率が最も高い位置の点を該特徴点の真の点として推定するものであることを特徴とする請求項１１から１５いずれか記載の特徴点検出装置。
【請求項１７】
前記特徴点候補検出手段が、前記画像における判定対象領域の画像に前記特徴点が含まれる蓋然性を示す確信度を算出し、該確信度が所定の閾値以上であるときに該判定対象領域の画像が表す対象を前記特徴点の候補と判定するものであり、
前記特徴点推定手段が、該特徴点の前記合成された存在確率分布における存在確率の大小に加え、該特徴点の候補の前記確信度の大小にも基づいて、該特徴点の真の点を推定するものであることを特徴とする請求項１１から１６いずれか記載の特徴点検出装置。
【請求項１８】
前記特徴点推定手段が、該特徴点の前記合成された存在確率分布における存在確率が最も高い位置の点を代表とする所定領域に含まれる該特徴点の候補のうち前記確信度が最も高いものを、該特徴点の真の点として推定するものであることを特徴とする請求項１７記載の特徴点検出装置。
【請求項１９】
前記特徴点推定手段が、該特徴点の候補のうち該特徴点の前記合成された存在確率分布における該候補の位置に対応する存在確率が最も高いものを、該特徴点の真の点として推定するものであることを特徴とする請求項１７記載の特徴点検出装置。
【請求項２０】
前記所定対象物が、人物の顔であることを特徴とする請求項１１から１９いずれか記載の特徴点検出装置。
【請求項２１】
検出対象画像から、予め定義された所定対象物の複数の特徴点の各々の候補を検出する処理と、
前記複数の特徴点の中の２つの異なる特徴点からなる組合せ毎に統計的に求められた、一方の特徴点の位置を基準としたときの他方の特徴点の画像上の存在確率分布を用いて、
前記複数の特徴点のうち少なくとも１つの特徴点について、他の特徴点の前記検出された候補の位置を基準としたときの該１つの特徴点の存在確率分布を、該他の特徴点の候補毎にそれぞれ求め、該求められた存在確率分布を合成する処理と、
前記１つの特徴点について、該特徴点の前記合成された存在確率分布における存在確率の大小に基づいて、前記検出対象画像上で該特徴点の真の点を推定する処理とをコンピュータに実行させるためのプログラムにおいて、
前記存在確率分布を合成する処理が、該存在確率分布を、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点との間の位置関係に応じて重み付けして合成するものであることを特徴とするプログラム。
【請求項２２】
前記存在確率分布を合成する処理が、該存在確率分布を求めたときに位置の基準となった特徴点が同じである存在確率分布を、該存在確率分布の数で正規化して合成するものであることを特徴とする請求項２１記載のプログラム。
【請求項２３】
前記存在確率分布を合成する処理が、次式にしたがって合成するものであることを特徴とする請求項２２記載のプログラム。
【数３】
0004532419.tif 000010
ここで、Ｐｉは特徴点Ｘｉの合成後の存在確率分布、ｘｉは特徴点Ｘｉの位置座標、ｑｊｔは特徴点Ｘｊのｔ番目の候補Ｑｊｔの位置座標、Ｐｉｊ（ｘｉ｜ｑｊｔ）は候補Ｑｊｔの位置座標ｑｊｔを基準としたときの特徴点Ｘｉの存在確率分布、ｋおよびｋ′は特徴点Ｘｊの候補の数、weight(i,j)は存在確率分布Ｐｉｊ（ｘｉ｜ｑｊｔ）に対する重み付け係数、ｎは定義した特徴点の数である。
【請求項２４】
前記存在確率分布を合成する処理が、該存在確率分布を、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点との間の距離が大きいほど小さく重み付けして合成するものであることを特徴とする請求項２１、２２または２３記載のプログラム。
【請求項２５】
前記複数の特徴点が、該特徴点の前記所定対象物における位置に応じてグループ分けされたものであり、
前記存在確率分布を合成する処理が、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点とがそれぞれ異なる前記グループに属する存在確率分布のみを合成するものであることを特徴とする請求項２１から２４いずれか記載のプログラム。
【請求項２６】
前記特徴点の真の点を推定する処理が、該特徴点の前記合成された存在確率分布における存在確率が最も高い位置の点を該特徴点の真の点として推定するものであることを特徴とする請求項２１から２５いずれか記載のプログラム。
【請求項２７】
前記特徴点の候補を検出する処理が、前記画像における判定対象領域の画像に前記特徴点が含まれる蓋然性を示す確信度を算出し、該確信度が所定の閾値以上であるときに該判定対象領域の画像が表す対象を前記特徴点の候補と判定するものであり、
前記特徴点の真の点を推定する処理が、該特徴点の前記合成された存在確率分布における存在確率の大小に加え、該特徴点の候補の前記確信度の大小にも基づいて、該特徴点の真の点を推定するものであることを特徴とする請求項２１から２６いずれか記載のプログラム。
【請求項２８】
前記特徴点の真の点を推定する処理が、該特徴点の前記合成された存在確率分布における存在確率が最も高い位置の点を代表とする所定領域に含まれる該特徴点の候補のうち前記確信度が最も高いものを、該特徴点の真の点として推定するものであることを特徴とする請求項２７記載のプログラム。
【請求項２９】
前記特徴点の真の点を推定する処理が、該特徴点の候補のうち該特徴点の前記合成された存在確率分布における該候補の位置に対応する存在確率が最も高いものを、該特徴点の真の点として推定するものであることを特徴とする請求項２７記載のプログラム。
【請求項３０】
前記所定対象物が、人物の顔であることを特徴とする請求項２１から２９いずれか記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像に含まれる所定対象物の特徴点を検出する特徴点検出方法および装置並びにそのためのプログラムに関するものである。
【背景技術】
【０００２】
画像に含まれる所定対象物（オブジェクト）の位置、姿勢、形態等を検出する方法が種々の分野において研究されているが、その１つの方法として、所定対象物の特徴的な部位を表す複数の特徴点を定義しておき、検出対象画像からこれら複数の特徴点を検出し、検出された特徴点の位置関係に基づいて所定対象物の位置、姿勢、形態等を検出する方法が種々提案されている。
【０００３】
例えば、特許文献１では、対象物を構成する基準特徴点（例えば、対象物が人物の顔である場合には、目、鼻、顔輪郭など）を複数定義し、それらの特徴点に特定のフィルタを適用したときのレスポンスを学習するとともに、特徴点同士の間の標準的な位置関係、すなわち特徴点毎の当該特徴点に対する対象物の中心点の画像上の存在確率分布を学習してこれらを記憶し、入力画像に対して学習時に用いたものと同じフィルタを適用してそのレスポンスから特徴点の候補を複数検出し、検出された候補と上記学習した特徴点同士の間の標準的な位置関係とを比較して、顔の中心点の画像上の存在確率分布を足し合わせ、その結果、最も存在確率が高い位置の点を目的の対象物の中心点とする対象物位置検出方法が提案されている。なお、ここでの確率分布はガウス関数で近似している。
【０００４】
また、非特許文献１では、特許文献１の方法に類似する物体位置検出方法が提案されている。この方法は、物体の中心点等、ある１点だけを検出するのではなく、複数の特徴点をセットで検出するものであり、また、「特徴点同士の間の標準的な位置関係」をより実際のデータに則して決定するため、存在確率分布を多数の学習サンプルから統計的に生成するようにしている。以下、この方法をより具体的に説明する。
【０００５】
（学習ステップ）
この方法では、ある特徴点検出器（AdaBoost学習アルゴリズムによって生成された識別器等を備えるもの）によって検出された特徴点の位置に対する他の特徴点の正解となる点の存在確率分布を、１つの特徴点と１つのその他の特徴点とからなる２つ１組の単位で各組毎に用意し、特徴点同士の間の位置関係をこれら複数組の存在確率分布を用いて表現する。ここで、特徴点Ｘｊの検出器の出力座標ｘｊに対する特徴点Ｘｉ（座標ｘｉ）の正解となる点の存在確率分布をＰｉｊ（ｘｉ｜ｘｊ）と定義する。なお、Ｐｉｊは、実装上、２次元のヒストグラムで表す。
【０００６】
この存在確率分布Ｐｉｊを求めるには、まずトレーニング画像セット（対象物の特徴点の正解座標が入力された数千枚の画像）に対して対象物の検出を行い、対象物が基準位置に位置するように画像を規格化する。図３は、対象物が人物の顔であるときに、画像から顔を検出し、その顔が画像の中心に所定の大きさで位置するように画像を規格化した場合の例を示すものである。
【０００７】
次に、規格化された画像から特徴点検出器Ｄｉにより特徴点Ｘｉを検出し、その特徴点の座標ｘｉとその他の特徴点Ｘｊの正解座標ｘｊとのずれを、１つの特徴点Ｘｉと１つのその他の特徴点Ｘｊとからなる２つ１組の単位で比較、集計する。このような学習によって得られた存在確率分布Ｐｉｊの例を図４に示す。図４は、対象物が人物の顔である場合の例であり、特徴点検出器によって検出された特徴点の位置を×で表し、対象の特徴点の存在確率分布を画像上の濃淡で表している。なお、ここでは、対象の特徴点の存在確率が高いほどその位置での濃度が濃くなるように表現してある。図４（ａ）は、左目頭検出器により検出された左目頭の点の位置に対する左目尻の点の存在確率分布を表す図であり、図４（ｂ）は、当該左目頭の点の位置に対する左小鼻の点の存在確率分布を表す図であり、図４（ｃ）は、当該左目頭の点の位置に対する右口角の点の存在確率分布を表す図である。
【０００８】
（検出ステップ）
検出対象画像から対象物を検出し、その対象物を含む規格化された画像を取得し、その規格化された画像に対して特徴点の候補を検出する処理を行い、各特徴点について他の特徴点の候補から推測される当該特徴点の画像上の存在確率分布の和を計算し、最も存在確率が高い位置の点をその特徴点の真の点と推定して選択する。特徴点の真の点として推定される点は、次式（１）で表される。
【数１】
0004532419.tif 000002
【０００９】
ここで、ｘ＾ｉ（左辺）は、特徴点の真の点として推定される点の位置座標、Ｐｉｊ（ｘｉ｜ｑｊｔ）は特徴点Ｘｊのｔ番目の候補の位置座標ｑｊｔを基準としたときの特徴点Ｘｉ（位置座標ｘｉ）の存在確率分布、ｋは特徴点Ｘｊの候補の数、ｎは定義した特徴点の数である。
【００１０】
この方法では、ある特徴点の位置を検出する際に、その特徴点を検出する単独の特徴点検出器の出力に頼るのではなく、複数の特徴点検出器が互いに他の特徴点の位置を推測し合うことにより、検出器単体の性能を上回る、より優れた検出能が得られるという利点がある。
【特許文献１】特開平６−３４８８５１号公報
【非特許文献１】David Cristinacce “A Multi-Stage Approach to Facial Feature Detection”, In Proc. of BMVC, Pages 231-240, 2004
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、非特許文献１の物体位置検出方法では、対象物について比較的大きな姿勢の変化があった場合には、基準となる特徴点の位置から遠い位置にある特徴点ほどその特徴点の平均的な位置からのずれが大きくなるため、特徴点の存在確率分布の信頼性が低くなる。図１４は、対象物が人物の顔である場合を例に、基準となる特徴点の位置から遠い位置にある特徴点ほど平均からのずれが大きくなる様子を示した図であり、図１４（ａ），（ｂ），（ｃ）は、それぞれ、顔の向きが正面、左向き、下向きである場合において、左目の特徴点の位置を基準として固定し、各特徴点の平均的な位置と実際の顔を構成する各部品の位置とを重ねて表したものである。この図を見ると、左目の特徴点の位置からの距離が遠い他の特徴点ほどその特徴点の平均的な位置からのずれが大きくなっているのが分かる。
【００１２】
また、対象物を構成するある部品については特徴点が３つあるのに、他の部品については特徴点が１つしかないなど、定義する特徴点の密度が偏っているような場合には、特定の決まった場所に位置する特徴点からの影響が大きくなるため、特徴点の存在確率分布の合成に寄与する他の特徴点の位置のバランスが悪くなり、実際には特徴点ではない候補をその特徴点の真の点として誤って選択しやすくなるという問題がある。図１５は、対象物が人物の顔である場合を例に、特定の顔部品に多数の特徴点が集中している様子を示した図である。この図を見ると、目における特徴点の数が他の顔部品における特徴点の数より多いため、「目」という特定の決まった場所に位置する特徴点からの影響が大きくなり、目の位置を基準に拘束力が強く働き、他の位置からの拘束力が弱くなるのが分かる。
【００１３】
本発明は、上記事情に鑑みなされたものであり、画像に含まれる所定対象物の特徴点を、１つの特徴点の位置を、他の特徴点の候補の位置から統計的に定まる当該１つの特徴点の存在確率分布を複数求めて合成し、合成後の存在確率分布上の存在確率の大小に基づいて当該１つの特徴点の位置を推定する特徴点検出処理において、対象物の姿勢の変化による影響を抑え、安定して精度よく特徴点の検出を行うことができる特徴点検出方法および装置並びにそのためのプログラムを提供することを目的とするものである。
【課題を解決するための手段】
【００１４】
本発明の特徴点検出方法は、検出対象画像から、予め定義された所定対象物の複数の特徴点の各々の候補を検出するステップと、
前記複数の特徴点の中の２つの異なる特徴点からなる組合せ毎に統計的に求められた、一方の特徴点の位置を基準としたときの他方の特徴点の画像上の存在確率分布を用いて、
前記複数の特徴点のうち少なくとも１つの特徴点について、他の特徴点の前記検出された候補の位置を基準としたときの該１つの特徴点の存在確率分布を、該他の特徴点の候補毎にそれぞれ求め、該求められた存在確率分布を合成するステップと、
前記１つの特徴点について、該特徴点の前記合成された存在確率分布における存在確率の大小に基づいて、前記検出対象画像上で該特徴点の真の点を推定するステップとを有する特徴点検出方法において、
前記存在確率分布を合成するステップが、該存在確率分布を、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点との間の位置関係に応じて重み付けして合成するものであることを特徴とするものである。
【００１５】
本発明の特徴点検出方法において、前記存在確率分布を合成するステップは、該存在確率分布を求めたときに位置の基準となった特徴点が同じである存在確率分布を、該存在確率分布の数で正規化して合成するものであることが望ましい。
【００１６】
本発明の特徴点検出方法において、前記存在確率分布を合成するステップは、次式にしたがって合成するものであってもよい。
【数２】
0004532419.tif 000003
【００１７】
ここで、Ｐｉは特徴点Ｘｉの合成後の存在確率分布、ｘｉは特徴点Ｘｉの位置座標、ｑｊｔは特徴点Ｘｊのｔ番目の候補Ｑｊｔの位置座標、Ｐｉｊ（ｘｉ｜ｑｊｔ）は候補Ｑｊｔの位置座標ｑｊｔを基準としたときの特徴点Ｘｉの存在確率分布、ｋおよびｋ′は特徴点Ｘｊの候補の数、weight(i,j)は存在確率分布Ｐｉｊ（ｘｉ｜ｑｊｔ）に対する重み付け係数、ｎは定義した特徴点の数である。
【００１８】
本発明の特徴点検出方法において、前記存在確率分布を合成するステップは、該存在確率分布を、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点との間の距離が大きいほど小さく重み付けして合成するものであることが望ましい。
【００１９】
また、本発明の特徴点検出方法において、前記複数の特徴点は、該特徴点の前記所定対象物における位置に応じてグループ分けされたものであり、
前記存在確率分布を合成するステップは、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点とがそれぞれ異なる前記グループに属する存在確率分布のみを合成するものであることが望ましい。
【００２０】
本発明の特徴点検出方法において、前記特徴点の真の点を推定するステップは、該特徴点の前記合成された存在確率分布における存在確率が最も高い位置の点を該特徴点の真の点として推定するものであってもよい。
【００２１】
また、本発明の特徴点検出方法において、前記特徴点の候補を検出するステップは、前記画像における判定対象領域の画像に前記特徴点が含まれる蓋然性を示す確信度を算出し、該確信度が所定の閾値以上であるときに該判定対象領域の画像が表す対象を前記特徴点の候補と判定するものであり、
前記特徴点の真の点を推定するステップは、該特徴点の前記合成された存在確率分布における存在確率の大小に加え、該特徴点の候補の前記確信度の大小にも基づいて、該特徴点の真の点を推定するものであってもよい。
【００２２】
この場合において、前記特徴点の真の点を推定するステップは、該特徴点の前記合成された存在確率分布における存在確率が最も高い位置の点を代表とする所定領域に含まれる該特徴点の候補のうち前記確信度が最も高いものを、該特徴点の真の点として推定するものであってもよいし、該特徴点の候補のうち該特徴点の前記合成された存在確率分布における該候補の位置に対応する存在確率が最も高いものを、該特徴点の真の点として推定するものであってもよい。
【００２３】
本発明の特徴点検出装置は、検出対象画像から、予め定義された所定対象物の複数の特徴点の各々の候補を検出する特徴点候補検出手段と、
前記複数の特徴点の中の２つの異なる特徴点からなる組合せ毎に統計的に求められた、一方の特徴点の位置を基準としたときの他方の特徴点の画像上の存在確率分布を用いて、
前記複数の特徴点のうち少なくとも１つの特徴点について、他の特徴点の前記検出された候補の位置を基準としたときの該１つの特徴点の存在確率分布を、該他の特徴点の候補毎にそれぞれ求め、該求められた存在確率分布を合成する存在確率分布合成手段と、
前記１つの特徴点について、該特徴点の前記合成された存在確率分布における存在確率の大小に基づいて、前記検出対象画像上で該特徴点の真の点を推定する特徴点推定手段とを備えた特徴点検出装置において、
前記存在確率分布合成手段が、該存在確率分布を、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点との間の位置関係に応じて重み付けして合成するものであることを特徴とするものである。
【００２４】
本発明の特徴点検出装置において、前記存在確率分布合成手段は、該存在確率分布を求めたときに位置の基準となった特徴点が同じである存在確率分布を、該存在確率分布の数で正規化して合成するものであることが望ましい。
【００２５】
本発明の特徴点検出装置において、前記存在確率分布合成手段は、次式にしたがって合成するものであってもよい。
【数３】
0004532419.tif 000004
【００２６】
ここで、Ｐｉは特徴点Ｘｉの合成後の存在確率分布、ｘｉは特徴点Ｘｉの位置座標、ｑｊｔは特徴点Ｘｊのｔ番目の候補Ｑｊｔの位置座標、Ｐｉｊ（ｘｉ｜ｑｊｔ）は候補Ｑｊｔの位置座標ｑｊｔを基準としたときの特徴点Ｘｉの存在確率分布、ｋおよびｋ′は特徴点Ｘｊの候補の数、weight(i,j)は存在確率分布Ｐｉｊ（ｘｉ｜ｑｊｔ）に対する重み付け係数、ｎは定義した特徴点の数である。
【００２７】
本発明の特徴点検出装置において、前記存在確率分布合成手段は、該存在確率分布を、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点との間の距離が大きいほど小さく重み付けして合成するものであることが望ましい。
【００２８】
また、本発明の特徴点検出装置において、前記複数の特徴点は、該特徴点の前記所定対象物における位置に応じてグループ分けされたものであり、
前記存在確率分布合成手段は、該存在確率分布を求めたときに位置の基準となった特徴点と、該存在確率を表す対象となる特徴点とがそれぞれ異なる前記グループに属する存在確率分布のみを合成するものであることが望ましい。
【００２９】
本発明の特徴点検出装置において、前記特徴点推定手段は、該特徴点の前記合成された存在確率分布における存在確率が最も高い位置の点を該特徴点の真の点として推定するものであってもよい。
【００３０】
また、本発明の特徴点検出装置において、前記特徴点候補検出手段は、前記画像における判定対象領域の画像に前記特徴点が含まれる蓋然性を示す確信度を算出し、該確信度が所定の閾値以上であるときに該判定対象領域の画像が表す対象を前記特徴点の候補と判定するものであり、
前記特徴点推定手段は、該特徴点の前記合成された存在確率分布における存在確率の大小に加え、該特徴点の候補の前記確信度の大小にも基づいて、該特徴点の真の点を推定するものであってもよい。
【００３１】
この場合において、前記特徴点推定手段は、該特徴点の前記合成された存在確率分布における存在確率が最も高い位置の点を代表とする所定領域に含まれる該特徴点の候補のうち前記確信度が最も高いものを、該特徴点の真の点として推定するものであってもよいし、該特徴点の候補のうち該特徴点の前記合成された存在確率分布における該候補の位置に対応する存在確率が最も高いものを、該特徴点の真の点として推定するものであってもよい。
【００３２】
本発明において、前記特徴点の存在確率分布とは、特徴点が画像上のある位置に存在する確率を当該画像上の複数の位置について表した分布のことを意味するものである。
【００３３】
本発明において、「存在確率分布を合成する」とは、画像上の互いに対応する位置毎にその位置における存在確率を合成して新たな存在確率の分布を得ることを意味するものである。ここで、前記合成は、加算であってもよいし、積算であってもよい。
【００３４】
なお、本発明において、前記特徴点の真の点の推定が、特徴点の候補のうちその特徴点の合成された存在確率分布上でその候補の位置における存在確率が最も高いものをその特徴点の真の点として推定するものである場合には、前記存在確率分布の合成は、その特徴点の候補の位置に対応する存在確率のみを合成し、その他の位置に対応する存在確率については合成しないようにすることが好ましい。
【００３５】
また、本発明において、「確率が最も高い位置の点を代表とする所定領域」とは、その点を略中心、略重心、あるいは略中央とした所定の大きさの範囲の領域のことを意味するものである。この領域は、円形であってもよいし矩形等の多角形であってもよい。
【００３６】
本発明において、前記所定対象物としては、例えば、人物の顔、自動車、動物等が考えられる。
【００３７】
なお、本発明の方法および装置により検出された所定対象物の特徴点は、所定対象物の姿勢認識のほか、特定の対象物であるか否かを判定する認証処理、また、所定対象物が人物の顔である場合には、表情判別等に用いることができる。
【００３８】
また、前記重み付け係数は、前記位置関係に応じて、連続する値であってもよいし、段階的に変化する値であってもよい。
【００３９】
本発明の特徴点検出方法を、コンピュータに実行させるプログラムとして提供するようにしてもよい。
【発明の効果】
【００４０】
本発明の特徴点検出方法および装置によれば、予め定義された所定対象物の複数の特徴点の中の２つの異なる特徴点からなる組合せ毎に、一方の特徴点の位置を基準としたときの他方の特徴点の画像上の存在確率分布を、複数のサンプルを用いるなどして統計的に求めておき、検出対象画像から複数の特徴点の各々の候補を検出し、先に求めた存在確率分布を用いて、複数の特徴点のうち少なくとも１つの特徴点について、その特徴点とは異なる他の特徴点の上記検出された候補の位置を基準としたときの、その特徴点の検出対象画像上の存在確率分布を、当該他の特徴点別や当該候補別にそれぞれ求め、求められた存在確率分布を合成し、上記少なくとも１つの特徴点について、その特徴点の合成された存在確率分布上の存在確率の大小に基づいて、検出対象画像上でその特徴点の真の点を推定する特徴点検出処理において、存在確率分布を合成する際に、合成対象となる存在確率分布の各々に対して、その存在確率分布を求めたときに位置の基準となった候補に対応する特徴点と、当該存在確率分布が存在確率を表す対象となる特徴点との間の位置関係に応じて重み付け係数を設定し、合成対象となる確率分布を当該重み付け係数を用いて合成するようにしているので、基準となる特徴点の位置から遠い位置にある特徴点ほどその特徴点の平均的な位置からのずれが大きくなりやすく、その特徴点の存在確率分布の信頼性が薄れることを考慮して、そのような存在確率分布の合成時の寄与率を低く設定することにより、検出対象画像に含まれる所定対象物の姿勢変化による影響を抑えることができ、安定して精度よく特徴点の検出を行うことができる。
【発明を実施するための最良の形態】
【００４１】
以下、図面を参照して、本発明の実施形態について説明する。
【００４２】
図１は、本発明の実施形態による顔特徴点検出システムの構成を示すブロック図である。なお、この顔特徴点検出システムは、画像の中から人物の顔を検出し、さらに検出された顔の特徴点を検出するシステムであり、補助記憶装置に読み込まれた処理プログラムをコンピュータ（たとえばパーソナルコンピュータ等）上で実行することにより実現される。また、この処理プログラムは、ＣＤ−ＲＯＭ等の情報記憶媒体に記憶され、もしくはインターネット等のネットワークを介して配布され、コンピュータにインストールされることになる。また、画像データは画像を表すものであり、以下、特に画像と画像データの区別をせずに説明を行う。
【００４３】
図１に示すように、本実施形態による顔特徴点検出システムは、顔の検出対象となる画像Ｓ０の入力を受け付ける画像入力部１０と（以下、画像Ｓ０を入力画像Ｓ０とも言う）、入力画像Ｓ０に含まれる顔Ｓ１をすべて検出し、顔Ｓ１の両目の位置の情報とその顔の向きｆの情報を取得する顔検出部（顔検出手段）２０と（以下、顔画像Ｓ１を検出顔画像Ｓ１とも言う）、入力画像Ｓ０から相対的な大きさや位置が正規化された顔Ｓ１を含む所定サイズの画像を切り出して正規化顔画像Ｓ１′を得る顔正規化部３０と、正規化顔画像Ｓ１′上で指定した判定対象領域の画像に対し、当該画像の略中心に特徴点が含まれる蓋然性を示す検出スコアＳＣＤを算出し、当該検出スコアＳＣＤの閾値判定により、顔の特徴点Ｘｉ毎にその特徴点の候補Ｑｉｔを検出する特徴点候補検出部（特徴点候補検出手段）４０と、予め統計的に求められた、顔の特徴点Ｘｉ毎の、当該特徴点Ｘｉの位置ｘｉを基準としたときの、当該特徴点Ｘｉとは異なる他の特徴点Ｘｊ（その位置座標をｘｊとする）のそれぞれの存在確率分布Ｐｉｊを記憶しているデータベース（記憶手段）５０と、データベース５０に記憶されている存在確率分布Ｐｉｊを用いて、特徴点Ｘｉ毎に、１つの特徴点Ｘｉとは異なる他の特徴点Ｘｊの各候補Ｑｊｔの位置座標ｑｊｔをそれぞれ基準としたときの、入力画像Ｓ０上での当該１つの特徴点Ｘｉの存在確率分布Ｐｉｊ（ｘｉ｜ｑｊｔ）を求めて当該確率分布をすべて合成し、合成された存在確率分布Ｐｉを得る特徴点存在確率分布合成部（存在確率分布合成手段）６０と、顔の特徴点Ｘｉ毎に、当該特徴点Ｘｉの合成された存在確率分布Ｐｉ上の存在確率の大小、および当該特徴点Ｘｉの候補Ｑｉｔが検出されたときの検出スコアＳＣＤの大小とに基づいて、当該特徴点Ｘｉの候補Ｑｉｔの中から当該特徴点の真の点を推定する特徴点推定部（特徴点推定手段）７０と、定義した特徴点Ｘｉのうち検出されなかった特徴点の位置を、検出された特徴点の位置に基づいて類推して補完し、全特徴点の情報Ｘを出力する未検出特徴点補完部８０とを備える。
【００４４】
画像入力部１０は、ユーザから入力された、顔の検出対象となる画像Ｓ０の入力を受け付け、これらの画像Ｓ０を不図示のメモリに保存するものであり、ユーザは、この画像入力部２０により、例えば、デジタルカメラ等により取得されたスナップ写真の画像を入力する。
【００４５】
顔検出部２０は、メモリに保存された入力画像Ｓ０を読み出して、その画像に含まれる顔Ｓ１をすべて検出するものであり、具体的には、入力画像Ｓ０に含まれる顔Ｓ１の両目の位置を検出するとともに、その顔の向きｆをも検出するものである。
【００４６】
ここでは、顔Ｓ１の両目の位置を検出する方法として、特開２００５−１０８１９７号公報に開示されている対象物識別方法を適用することにする。この方法は、入力画像Ｓ０における識別対象領域の画像について特徴量を算出し、目の位置を所定の許容度を持って正規化した複数の顔サンプル画像と複数の非顔サンプル画像の特徴量について学習を行った第１の参照データを参照して、識別対象領域の画像から算出した特徴量に基づいて、識別対象領域の画像に顔が含まれるか否かを識別し、顔が含まれる場合に、目の位置を所定の許容度よりも小さい許容度を持って正規化した複数の顔サンプル画像と複数の非顔サンプル画像の特徴量について学習を行った第２の参照データを参照して、顔に含まれる目の位置を識別する方法であり、いわゆるAdaBoostと呼ばれるマシンラーニングの手法により学習された識別器を用いて、顔を検出し、顔に含まれる目の位置を精度よく検出する方法である。
【００４７】
この識別器は、学習に用いた顔サンプル画像の顔の向きと略同じ向きの顔を識別するので、顔の向き毎に用意された複数種類の顔サンプル画像群をそれぞれ用いて学習して得られる複数種類の識別器を用意し、これら複数種類の識別器を用いて顔を検出するようにすれば、多方向の向きの顔Ｓ１を検出し、その顔の両目の位置とその顔の向きｆを同時に知ることができる。
【００４８】
なお、顔Ｓ１を検出する方法としては、上記のほか、テンプレートマッチングによる方法などを用いてもよい。この場合、顔の向きがそれぞれ異なる複数のテンプレート上で顔の両目の位置に相当する位置を予め定義しておくなどして、検出された顔Ｓ１の両目の位置を求めるようにすればよい。
【００４９】
顔正規化部３０は、入力画像Ｓ０（Gray画像）と、検出された顔Ｓ１の両目の位置の情報を用いて、入力画像Ｓ０から、両目の位置が所定の基準位置に位置するように正規化された顔Ｓ１を含む所定サイズの画像を切り出すことにより、正規化顔画像Ｓ１′を得るものである。図３は、入力画像Ｓ０を必要に応じて拡大・縮小したり回転したりした後に適切なトリミングを行って正規化顔画像Ｓ１′を得る様子を示した図である。本実施例では、画像サイズを２００×２００画素サイズとし、顔Ｓ１の両目の中心位置がそれぞれ、画像の最左上の画素を座標（０，０）、最右下の画素を座標（１９９，１９９）として、Ａ（７０，７０）およびＢ（１３０，７０）に位置するように顔を正規化する。なお、顔の向きｆが斜めの向き、例えば、斜め４５度の向きの場合には、顔Ｓ１の両目の中心位置がそれぞれ、Ａ（７０，５０）およびＢ（１３０，５０）となるように、顔の位置を２０画素分だけ上方にシフトして正規化する。
【００５０】
特徴点候補検出部４０は、正規化顔画像Ｓ１′上で指定した判定対象領域の画像に対して、当該画像の略中心に特徴点が含まれる蓋然性を示す検出スコアＳＣＤを算出し、当該検出スコアＳＣＤが所定の閾値以上であるときに、当該判定対象領域の画像が表す対象をその特徴点であると判定することにより、顔の特徴点Ｘｉ毎にその特徴点の候補Ｑｉｔを検出するものである。
【００５１】
図２は、特徴点候補検出部４０の構成を示した図である。特徴点候補検出部４０は、図示のように、多重解像度画像生成部４１と、照明正規化部４２と、特徴点検索範囲設定部４３と、特徴点検出器群４５を含む検出処理部４４と、特徴点検出器選択部４６とを備える。
【００５２】
特徴点検出器群４５は、検出する特徴点Ｘｉの種類別に用意された複数種類の特徴点検出器Ｄｉから構成されており、各特徴点検出器Ｄｉは、特開２００５−１０８１９７号公報等に開示されている、いわゆるAdaBoostと呼ばれるマシンラーニングの手法により学習された複数の識別器を用いて特徴点の位置を精度よく検出するものである。
【００５３】
この識別器は、ある特定の特徴点の位置が略中心となるように所定の許容度を持って正規化した複数の特徴点サンプル画像と複数の非特徴点サンプル画像の特徴量について学習を行った参照データを参照して、識別対象領域の画像から算出した特徴量に基づいて、当該画像がその特徴点を含む蓋然性を示す識別ポイントを算出するものであり、適当な閾値を設定することで、この識別ポイントの閾値判定により、識別対象の画像が特定の特徴点を略中心に含むか否かを識別できるようになる。
【００５４】
ここで、図１６を参照しながら、ある特定の特徴点の識別器の作成について簡単に説明する。まず、ある特定の特徴点を略中心に含むすべての特徴点サンプル画像について、ある複数種類の特徴量を算出してその特徴量の組合せを求め、そのヒストグラムを作成する。同様に、すべての非特徴点サンプル画像について、同じ複数種類の特徴量の組合せを求め、そのヒストグラムを作成する。これら２つのヒストグラムが示す頻度値の比の対数値等を取って新たにヒストグラムで表したものが、図１５の一番右側に示す、識別器として用いられるヒストグラムである。この識別器のヒストグラムが示す各縦軸（ビン）の値を、以下、識別ポイントと称する。この識別器によれば、正の識別ポイントに対応する特徴量の分布を示す画像は中心にその特定の特徴点を含む画像である可能性が高く、識別ポイントの絶対値が大きいほどその可能性は高まると言える。逆に、負の識別ポイントに対応する特徴量の分布を示す画像はその特定の特徴点でない可能性が高く、識別ポイントの絶対値が大きいほどその可能性は高まる。
【００５５】
このような識別器を、特徴量の組合せ毎に複数作成して用意し、作成した複数の識別器のうち、画像がその特定の特徴点を略中心に含むか否かを識別するのに有効な識別器が、所定のアルゴリズムにより選択される。所定のアルゴリズムとしては、例えば次のようなものが考えられる。はじめに、特徴点および非特徴点の各サンプル画像に予め重み１を等しく付しておき、各識別器に各サンプル画像が特定の特徴点を中心に含む画像であるか否かを識別させて各識別器の重み付き正答率を求め、この各識別器の重み付き正答率を比較して、重み付き正答率が相対的に最も高い識別器を選択するようにする。そして、正答率が悪かったサンプル画像の重みを現時点より大きく設定し直し、再度、各識別器に各サンプル画像の識別を行わせて各識別器の重み付き正答率を求め、重み付き正答率が相対的に最も高い識別器を選択する。このような処理を繰り返すことにより、識別に有効な識別器が順次選択されてゆくことになる。なお、このアルゴリズムの詳細については、特開２００５−１０８１９７号公報を参照されたい。
【００５６】
特徴点検出器Ｄｉは、後述の正規化済みの解像度画像Ｓ１″ｋ上で判定対象領域を指定し、指定された判定対象領域の画像を識別対象領域の画像として、上記の選択された有効な識別器を用いて識別ポイントをそれぞれ算出し、算出されたすべての識別ポイントを加算したものを検出スコアＳＣＤとして出力する。そして、その検出スコアＳＣＤが所定の閾値以上であるか否かを判定し、所定の閾値以上であるときに、その判定対象領域の画像の中心にその特定の特徴点が含まれると判定する。すなわち、その中心位置をその特定の特徴点の候補の位置として検出する。
【００５７】
なお、識別器の学習に用いる特徴点サンプル画像としては、例えば、数千パターンの異なる特徴点画像をベースに拡縮、回転、アスペクト変換のバリエーションを加え、合わせて数万サンプルを用意する。また、各パッチの解像度は２４×２４画素とし、Haar-likeフィルタの出力値を特徴量として、AdaBoost学習アルゴリズムにより学習を行う。
【００５８】
この識別器は、学習に用いた特徴点を含む画像の当該特徴点の種類と同じ種類の特徴点を識別するので、特徴点の種類がそれぞれ異なる複数種類の特徴点サンプル画像群を用いて学習した複数種類の識別器を用意し、これら複数種類の識別器を用いて特徴点を検出するようにすれば、各種類の特徴点Ｘｉ毎にその特徴点の候補Ｑｉｔの位置ｑｉｔを検出することができる。
【００５９】
本実施例では、検出された顔Ｓ１の顔の向きｆが正面に近い場合には、顔の各特徴点Ｘｉとして、左目尻（Ｘ１）、左目頭（Ｘ２）、右目頭（Ｘ３）、右目尻（Ｘ４）、左小鼻（Ｘ５）、右小鼻（Ｘ６）、左口角（Ｘ７）、右口角（Ｘ８）、上唇の中点（Ｘ９）、下唇の中点（Ｘ１０）の１０種類を用いることとし、一方、検出された顔Ｓ１の顔の向きｆが斜め４５度に近い顔の場合には、顔の各特徴点ｘｉとして、左目尻（Ｘ１）、左目頭（Ｘ２）、右目頭（Ｘ３）、右目尻（Ｘ４）、鼻先（Ｘ１１）、左口角（Ｘ７）、右口角（Ｘ８）の７種類を用いることにする。したがって、特徴点検出器は、左目尻、左目頭、右目頭、右目尻、左小鼻、右小鼻、左口角、右口角、上唇の中点、下唇の中点、鼻先の１１種類について用意しておく。
【００６０】
図６は、各特徴点検出器が備える識別器の学習に用いる特徴点サンプル画像の例を示す図であり、正面顔用として、左目尻（Ｘ１）、左目頭（Ｘ２）、右目頭（Ｘ３）、右目尻（Ｘ４）、左小鼻（Ｘ５）、右小鼻（Ｘ６）、左口角（Ｘ７）、右口角（Ｘ８）、上唇の中点（Ｘ９）、下唇の中点（Ｘ１０）の１０種類について示したものである。
【００６１】
なお、特徴点Ｘｉを検出する方法としては、上記のほか、テンプレートマッチングによる方法などを用いてもよい。この場合、特徴点の種類がそれぞれ異なる複数のテンプレート上で特徴点の位置に相当する位置を予め定義しておくなどして、特徴点の位置を求めるようにすればよい。
【００６２】
多重解像度画像生成部４１は、図５に示すように、２００×２００画素サイズの画像である正規化顔画像Ｓ１′を基準に、２の−１／５乗倍刻みで縮小画像（以下、解像度画像と称する）Ｓ１′ｋを生成するものである。このように正規化顔画像Ｓ１′を多重解像度化する理由は、生成された解像度が異なる複数の画像に対して特徴点の候補の検出を行うことにより、顔正規化時の目の位置の精度の良し悪しや顔の向き、個人差によって顔を構成する顔部品の大きさがばらついた場合であっても、顔部品の大きさを少しずつ段階的に変えた複数の画像で特徴点の候補の検出を試みることで、その顔部品のばらつきを吸収し、特徴点の候補を安定して検出することができるようするためである。
【００６３】
照明正規化部４２は、解像度画像のコントラストが特徴点の候補の検出に適した状態となるように、解像度画像の各々に対して正規化処理を施し、正規化済みの解像度画像Ｓ１″ｋを得るものである。
【００６４】
この正規化処理は、解像度画像のコントラストを特徴点の候補の検出に適した所定のレベル、すなわち、特徴点検出器の性能を引き出すのに適したレベルに近づけるべく、解像度画像全体の画素値をこの画像における被写体の輝度の対数を表す値に近づける変換曲線にしたがって変換する処理である。
【００６５】
図１７は、全体正規化処理に用いる変換曲線の一例を示した図である。全体正規化処理としては、図示のような、画素値をｓＲＧＢ空間におけるいわゆる逆ガンマ変換（＝２．２乗する）した後にさらに対数をとるような変換曲線（ルックアップテーブル）にしたがって、画像全体における画素値を変換する処理を考えることができる。これは、次のような理由による。
【００６６】
画像として観測される光強度Ｉは、通常、被写体の反射率Ｒと光源の強度Ｌの積として表現される（Ｉ＝Ｒ×Ｌ）。したがって、光源の強度Ｌが変化すると、画像として観測される光強度Ｉも変化することになるが、被写体の反射率Ｒのみを評価することができれば、光源の強度Ｌに依存しない、すなわち、画像の明るさ、すなわち、撮影時の照明の明るさの影響を受けない精度の高い特徴点候補検出を行うことができる。
【００６７】
ここで、光源の強度がＬの場合において、被写体上で反射率がＲ１の部分から観測される光強度をＩ１、被写体上で反射率がＲ２の部分から観測される光強度をＩ２としたとき、それぞれの対数をとった空間では、下記の式が成り立つ。
【数４】
0004532419.tif 000005
【００６８】
すなわち、画像における画素値を対数変換することは、反射率の比が差として表現された空間へ変換することとなり、このような空間では、光源の強度Ｌに依存しない被写体の反射率のみを評価することが可能となる。言い換えると、画像中の明るさによって異なるコントラスト（ここでは画素値の差分そのもの）を揃えることができる。
【００６９】
一方、一般的なデジタルカメラ等の機器で取得された画像の色空間はｓＲＧＢである。ｓＲＧＢとは、機器間の色再現の違いを統一するために、色彩、彩度等を規定・統一した国際標準の色空間のことであり、この色空間においては、ガンマ値（γout）が２．２の画像出力機器において適正な色再現を可能にするため、画像の画素値は、入力輝度を１／γout（＝０．４５）乗して得られる値となっている。
【００７０】
そこで、画像全体における画素値を、いわゆる逆ガンマ変換、すなわち、２．２乗した後にさらに対数をとるような変換曲線にしたがって変換することにより、光源の強度に依存しない被写体の反射率のみによる評価を適正に行うことができるようになる。
【００７１】
このような正規化処理は、別の言い方をすれば、画像全体における画素値を、特定の色空間を別の特性を有する色空間に変換する変換曲線にしたがって変換する処理ということができる。
【００７２】
このような処理を画像に施すことにより、画像中の明るさによって異なるコントラストを揃えることができ、特徴点の候補の検出の精度が向上することとなる。
【００７３】
なお、特徴点検出器が備える識別器は、このような正規化処理が施されたサンプル画像を用いて学習されたものである。
【００７４】
特徴点検索範囲設定部４３は、特徴点の候補の検出に要する時間を短縮するため、各特徴点が存在し得る領域でのみ特徴点の検索を行うように、解像度画像上で各特徴点Ｘｉの検索範囲ＳＲｉを設定するものである。この探索範囲は、後述する、顔を含むトレーニング画像セットにより統計的に求められた特徴点の存在確率分布に基づいて決定し、位置の変動が大きい特徴点ほどその検索範囲を広くして設定するようにする。なお、この特徴点の存在確率分布は前述の通りデータベース５０に記憶されており、特徴点検索範囲設定部４３は、この存在確率分布をデータベース５０から読み出して、解像度画像Ｓ１″ｋ毎に、また、特徴点ｘｉ毎に、検索範囲ＳＲｉを設定する。
【００７５】
図７は、探索範囲の一例として、左目尻（Ｘ１）、右小鼻（Ｘ６）および左口角（Ｘ７）の各特徴点それぞれの検索範囲ＳＲ１、ＳＲ６およびＳＲ７を示した図である。口角は個人差も多く比較的変動しやすい特徴点なので、図示のように、目尻や小鼻に比して検索範囲が広く設定される。
【００７６】
特徴点検出器選択部４６は、検出された顔Ｓ１の顔の向きｆが正面に近い場合には、使用する特徴点検出器の種類として、検出する特徴点を、左目尻（Ｘ１）、左目頭（Ｘ２）、右目頭（Ｘ３）、右目尻（Ｘ４）、左小鼻（Ｘ５）、右小鼻（Ｘ６）、左口角（Ｘ７）、右口角（Ｘ８）、上唇の中点（Ｘ９）、下唇の中点（Ｘ１０）とする１０種類の特徴点検出器を選択し、一方、検出された顔Ｓ１の顔の向きｆが斜め４５度に近い場合には、検出する特徴点を、左目尻（Ｘ１）、左目頭（Ｘ２）、右目頭（Ｘ３）、右目尻（Ｘ４）、鼻先（Ｘ１１）、左口角（Ｘ７）、右口角（Ｘ８）とする７種類の特徴点検出器を選択するものである。
【００７７】
検出処理部４４は、正規化済みの解像度画像Ｓ１″ｋの各々に対し、特徴点検出器群Ｄｉのうち選択された特徴点検出器を用いて、特徴点Ｘｉのうち決められた特徴点の種類毎に、設定された検索範囲内で、特徴点の候補を検出するものである。
【００７８】
データベース５０は、予め統計的に求められた、顔の特徴点Ｘｉ毎の、当該特徴点の位置座標ｘｉを基準としたときの、当該特徴点Ｘｉとは異なる他の特徴点Ｘｊのそれぞれの存在確率分布Ｐｉｊを記憶しているものである。
【００７９】
この存在確率分布Ｐｉｊは、ある特徴点検出器によって検出された特徴点の位置座標に対する他の特徴点の正解となる点の存在確率分布を、１つの特徴点Ｘｉと１つのその他の特徴点Ｘｊとからなる２つ１組の単位で各組毎に用意されたものであり、特徴点同士の間の位置関係をこれら複数組の確率分布を用いて表現することができるものである。ここで、特徴点検出器Ｄｊの出力座標ｘｊに対する、位置座標ｘｉにより規定される特徴点Ｘｉの存在確率分布をＰｉｊ（ｘｉ｜ｘｊ）と定義するものであり、Ｐｉｊは２次元のヒストグラムで表される。
【００８０】
この存在確率分布Ｐｉｊを求めるには、まずトレーニング画像セット（顔の特徴点の正解座標が入力された数千枚の画像）に対して顔の検出を行い、顔が基準位置に位置するように画像を規格化する。図３は、画像から顔を検出し、その顔が画像の中心に所定の大きさで所定の基準位置に位置するように画像を規格化した場合の例を示すものである。
【００８１】
次に、規格化された画像から特徴点検出器Ｄｉにより特徴点Ｘｉを検出し、その特徴点の座標ｘｉとその他の特徴点Ｘｊの正解座標ｘｊとのずれを、１つの特徴点Ｘｉと１つのその他の特徴点Ｘｊとからなる２つ１組の単位で比較、集計する。このような学習によって得られた存在確率分布Ｐｉｊの例を図１０に示す。なおここでは、特徴点検出器により検出された特徴点の位置を×で表し、対象の特徴点の存在確率分布を画像上の濃淡で表しており、対象の特徴点の存在確率が高いほどその位置における濃度が濃くなるように表現してある。図１０（ａ）は、左目頭検出器Ｄ２により検出された左目頭の点の位置座標ｘ２に対する左目尻の点（位置座標ｘ１）の存在確率分布Ｐ２１を表す図であり、図１０（ｂ）は、当該左目頭の点の位置座標ｘ２に対する左小鼻の点（位置座標ｘ５）の存在確率分布Ｐ２５を表す図であり、図１０（ｃ）は、当該左目頭の点の位置座標ｘ２に対する右口角の点（位置座標ｘ８）の存在確率分布Ｐ２８を表す図である。なお、この存在確率分布Ｐｉｊが表す２次元のヒストグラムの解像度は、正規化顔画像Ｓ１が２００×２００画素サイズである場合に、画像サイズをその１／４とする１００×１００画素サイズとし、学習の効率をよくするとともにデータベースに記憶させる情報量を低減している。
【００８２】
特徴点存在確率分布合成部６０は、データベース５０に記憶されている存在確率分布Ｐｉｊを用いて、特徴点Ｘｉ毎に、１つの特徴点Ｘｉとは異なる他の特徴点Ｘｊの各候補Ｑｊｔの位置をそれぞれ基準としたときの、入力画像Ｓ０上での当該１つの特徴点Ｘｉの存在確率分布Ｐｉｊ（ｘｉ｜ｑｊｔ）を求め、当該確率分布を次式にしたがって合成するものである。
【数５】
0004532419.tif 000006
【００８３】
ここで、Ｐｉは特徴点Ｘｉの合成された存在確率分布、Ｐｉｊ（ｘｉ｜ｑｊｔ）は特徴点Ｘｊのｔ番目の候補Ｑｊｔの位置座標ｑｊｔを基準としたときの特徴点Ｘｉ（位置座標ｘｉ）の存在確率分布、ｋおよびｋ′は特徴点Ｘｊの候補の数、weight(i,j)は存在確率分布Ｐｉｊ（ｘｉ｜ｑｊｔ）に対する重み付け係数、ｎは定義した特徴点の数である。
【００８４】
なお、上記式における１／ｋ′の項は、加算した確率を１つの特徴点の候補の数で割って、１つの特徴点からの寄与を正規化するための項である。
【００８５】
また、重み付け係数weight(i,j)は、合成対象となる存在確率分布Ｐｉｊの加算する比率を規定するものであり、合成対象となる存在確率分布Ｐｉｊの各々に対して、当該存在確率分布を求めたときに位置の基準となった特徴点Ｘｊと、当該存在確率分布が存在確率を表す対象となる特徴点Ｘｉとの間の構造上の標準的な距離が大きいほど小さい値となる重み付け係数weight(i,j)を設定する。
【００８６】
図８は、上記の重み付け係数weight(i,j)の一例を示したものである。この図から分かるように、例えば、左目尻と左目頭や、左口角と右口角の組合せについては、その組の特徴点の間の構造上の標準的な距離は比較的小さいので、これらの特徴点の組についての存在確率分布に対する重み付け係数は大きく設定し、一方、左目尻と左口角や、右目尻と右口角の組合せについては、その組の特徴点の間の構造上の標準的な距離は比較的大きいので、これらの特徴点の組についての存在確率分布に対する重み付け係数は小さく設定する。
【００８７】
このように、合成対象となる存在確率分布Ｐｉｊを同じ比率で加算するのではなく、対象となる２つの特徴点の間の構造上の標準的な距離に応じて重みを変えることにより、合成後の存在確率分布において、顔部品の大きさ・位置関係のばらつきや顔の向きの違いによる変動を抑えることができる。
【００８８】
なお、１つの特徴点について多数の候補が検出された場合には、上記式による計算量は増大し計算の所要時間が長くなるので、例えば、候補の数ｋが６つ以上の場合には、検出スコアＳＣＤの高いものから上位５つの候補についてのみ計算するようにしてもよい。
【００８９】
このようにして合成された存在確率分布Ｐｉは、ある特徴点が存在する位置の、その特徴点とは異なる他の特徴点の位置から見たときの推定結果として考えることができる。
【００９０】
特徴点推定部７０は、顔の特徴点Ｘｉ毎に、当該特徴点Ｘｉの合成された存在確率分布Ｐｉにおける確率を、顔部品の形状の尤度を表す形状スコアＳＣＧとして算出し、この形状スコアＳＣＧの大小、および当該特徴点Ｘｉの候補Ｑｉｔが検出されたときの検出スコアＳＣＤの大小とに基づいて、当該特徴点の候補Ｑｉｔの中からその特徴点の真の点を推定するものである。本実施例では、形状スコアＳＣＧ、すなわち、特徴点Ｘｉの合成された存在確率分布Ｐｉ上で存在確率が最も高い位置の点を代表点Ｃｉとし、その代表点Ｃｉを略中心とする所定範囲の領域内の候補のうち、検出されたときの検出スコアＳＣＤが最も高いものを、その特徴点の真の点として推定する。これは、大域的には合成された存在確率分布の信頼性が高く、局所的には特徴点検出器の信頼性が高いとの考え方に基づくものである。なお、上記の代表点Ｃｉは、次式にしたがって定義される。
【数６】
0004532419.tif 000007
【００９１】
また、特徴点の真の点の推定方法は本実施例に限定されるわけではなく、例えば、特徴点Ｘｉの合成された存在確率分布Ｐｉにおける存在確率である形状スコアＳＣＧが最も高い位置の点である代表点Ｃｉをそのままその特徴点の真の点として推定してもよい。また、特徴点Ｘｉの候補Ｑｉｔのうち、特徴点Ｘｉの合成された存在確率分布Ｐｉ上でその候補の位置における存在確率である形状スコアＳＣＧが最も高いものを、その特徴点の真の点として推定するようにしてもよい。あるいは、特徴点Ｘｉの候補Ｑｉｔのうち、特徴点Ｘｉの合成された存在確率分布Ｐｉ上でその候補の位置における存在確率である形状スコアＳＣＧと、候補が検出されたときの検出スコアＳＣＤとを加算してその値が最も高いものを、その特徴点の真の点として推定するようにしてもよい。
【００９２】
未検出特徴点補完部８０は、定義したｎ個の特徴点Ｘｉのうち検出されなかった特徴点の位置を、検出された特徴点の位置に基づいて類推して補完し、全特徴点の位置情報Ｘを出力するものである。本実施例では、特徴点存在確率分布合成部６０により合成された存在確率分布であって、検出されなかった特徴点について合成された存在確率分布を用いて、その存在確率分布上で存在確率が最も高い位置の点である代表点Ｃｉを特徴点として補完する。しかしながら、この補完方法は、合成された存在確率分布から単純に求めているだけなので、精度は比較的低く、精度をより上げたい場合には、ＡＳＭのように形状主成分を用いた補完方法の方がより精度の高い結果を期待することができる。
【００９３】
次に、本実施形態において行われる処理について説明する。図１１は、本実施形態において行われる処理を示すフローチャートである。まず、画像入力部１０が顔およびその特徴点の検出対象となる画像Ｓ０の入力を受け付ける（ステップＳＴ１）。この際、多数の一連の画像Ｓ０の入力を連続的に受け付けてもよい。次に、顔検出部２０が入力画像Ｓ０に含まれるすべての顔Ｓ１を検出し、その顔Ｓ１の両目の位置と顔の向きｆの情報を取得する（ステップＳＴ２）。顔正規化部３０は、検出された顔Ｓ１のうちの１つを選択し（ステップＳＴ３）、その選択した検出顔Ｓ１について、入力画像Ｓ０から相対的な大きさや位置が正規化された顔Ｓ１を含む所定サイズの画像を切り出して正規化顔画像Ｓ１′を得る（ステップＳＴ４）。特徴点候補検出部４０は、正規化顔画像Ｓ１′上で指定した判定対象領域の画像に対し、当該画像の略中心に特徴点が含まれる蓋然性を示す検出スコアＳＣＤを算出し、当該検出スコアＳＣＤの閾値判定により、顔の特徴点Ｘｉ毎にその特徴点の候補Ｑｉｔを検出する（ステップＳＴ５）。特徴点存在確率分布合成部６０は、データベース５０に記憶されている存在確率分布Ｐｉｊを用いて、特徴点Ｘｉ毎に、１つの特徴点Ｘｉとは異なる他の特徴点Ｘｊの各候補Ｑｊｔの位置座標ｑｊｔをそれぞれ基準としたときの、入力画像Ｓ０上での当該１つの特徴点Ｘｉ（位置座標ｘｉ）の存在確率分布Ｐｉｊ（ｘｉ｜ｑｊｔ）を求めて当該存在確率分布を合成し、合成した存在確率分布Ｐｉを得る（ステップＳＴ６）。特徴点推定部７０は、顔の特徴点Ｘｉ毎に、当該特徴点Ｘｉの合成された存在確率分布Ｐｉにおける存在確率を形状スコアＳＣＧとして算出し、その形状スコアが最も高い位置の点を代表点とする所定範囲の領域内の候補うち、検出されたときの検出スコアＳＣＤが最も高いものをその特徴点の真の点として推定する（ステップＳＴ７）。そして、未検出特徴点補完部８０が、定義した特徴点Ｘｉのうち検出されなかった特徴点の位置を、検出された特徴点の位置に基づいて類推して補完する（ステップＳＴ８）。ここで、未検出特徴点補完部８０は、検出されたすべての顔Ｓ１について、特徴点を検出する処理を行ったか否かを判定し（ステップＳＴ９）、すべての顔Ｓ１について処理が行われたと判定された場合には、検出顔Ｓ１毎に検出された顔の特徴点群Ｘの情報を出力して処理を終了する（ステップＳＴ１０）。一方、まだすべての顔Ｓ１を処理していないと判定された場合には、ステップＳＴ３に戻り、まだ処理が行われていない新たな検出顔Ｓ１を選択し、処理が続行される。
【００９４】
なお、特徴点候補検出部４０による特徴点の候補を検出する処理と、特徴点推定部７０による特徴点を推定する処理は、それぞれ、次のような処理からなる。
【００９５】
まず、特徴点の候補を検出する処理について説明する。図１２は、特徴点の候補を検出する処理を示したフローチャートである。特徴点候補検出部４０に正規化顔画像Ｓ１′がその顔の向きｆの情報とともに入力されると（ステップＳＴ５１）、特徴点検出器選択部４６は、その顔の向きｆに応じて使用する特徴点検出器の種類を選択する（ステップＳＴ５２）。また、多重解像度画像生成部４１は、入力された正規化顔画像Ｓ１′から複数の解像度画像Ｓ１′ｋを生成する（ステップＳＴ５３）。解像度画像Ｓ１′ｋが生成されると、照明正規化部４２は、その解像度画像Ｓ１′ｋに対して全体正規化処理を施し、画像の濃度のコントラストが正規化された正規化済み解像度画像Ｓ１″ｋを得る（ステップＳＴ５４）。また、特徴点検索範囲設定部４３は、正規化済みの解像度画像Ｓ１″ｋの各々に対する各特徴点Ｘｉ毎の検索範囲ＳＲｉを設定する（ステップＳＴ５５）。検出処理部４４は、特徴点検出器選択部４６により選択された特徴点検出器を用いて、正規化済みの解像度画像Ｓ１″ｋの各画像上で判定対象領域を設定しながら、判定対象領域の画像に対する検出スコアＳＣＤを算出し、その検出スコアＳＣＤの閾値判定により、特徴点Ｘｉ毎にその候補Ｑｉｔを検出する（ステップＳＴ５６）。ここで、候補が検出されなかった特徴点が存在するか否かを判定し（ステップＳＴ５７）、候補が未検出である特徴点が存在すると判定された場合には、その特徴点の検出スコアに対する閾値を下げて再設定し（ステップＳＴ５８）、再度、特徴点の候補の検出処理を行う（ステップＳＴ５６）。一方、候補が未検出である特徴点が存在しない、すなわち、すべての特徴点に対して候補が検出されたと判定された場合には、検出された特徴点の候補のリストを出力して処理を終了する（ステップＳＴ５９）。なお、ステップＳＴ５７の判定は１回のみ実行し、閾値の再設定が１度行われた後には、たとえ候補が検出されない特徴点が存在していても、検出された候補のみのリストを出力する。
【００９６】
次に、特徴点を推定する処理について説明する。図１３は、特徴点を推定する処理を示したフローチャートである。まず、候補が検出された特徴点のうちの１つの特徴点Ｘａを選択する（ステップＳＴ７１）。そして、その選択された特徴点Ｘａについて特徴点存在確率分布合成部６０により合成された存在確率分布Ｐａから形状スコアＳＣＧを算出する（ステップＳＴ７２）。そして、その形状スコアＳＣＧが最も高い位置の点（画素）を特定する（ステップＳＴ７３）。特定された点を代表とする所定範囲の領域内に存在する特徴点Ｘａの候補のうち検出スコアＳＣＤが最大のものをその特徴点の真の点と推定する（ステップＳＴ７４）。ここで、候補が検出された特徴点のうち、まだ推定されていない特徴点があるか否かを判定し（ステップＳＴ７５）、未推定の特徴点があると判定された場合には、ステップＳＴ７１に戻って、候補が検出された特徴点のうちから新たな特徴点を選択する。一方、未推定の特徴点がないと判定された場合には、推定した特徴点のリストを出力して処理を終了する（ステップＳＴ７６）。
【００９７】
このような本実施形態による顔特徴点検出システムによれば、予め定義された人物の顔の複数の特徴点の中の２つの異なる特徴点からなる組合せ毎に、一方の特徴点の位置を基準としたときの他方の特徴点の画像上の存在確率分布を、サンプルを用いて統計的に求めておき、検出対象画像から複数の特徴点の各々の候補を検出し、先に求めた存在確率分布を用いて、複数の特徴点のうち少なくとも１つの特徴点について、その特徴点とは異なる他の特徴点の上記検出された候補の位置を基準としたときの、その特徴点の検出対象画像上の存在確率分布を、当該他の特徴点別や当該候補別にそれぞれ求め、求められた存在確率分布を合成し、上記少なくとも１つの特徴点について、その特徴点の合成された存在確率分布上の存在確率の大小に基づいて、検出対象画像上でその特徴点の真の点を推定する顔特徴点検出処理において、存在確率分布を合成する際に、合成対象となる存在確率分布の各々に対して、その存在確率分布を求めたときに位置の基準となった候補に対応する特徴点と、当該存在確率分布が存在確率を表す対象となる特徴点との間の位置関係に応じて重み付け係数を設定し、合成対象となる確率分布を当該重み付け係数を用いて合成するようにしているので、基準となる特徴点の位置から遠い位置にある特徴点ほどその特徴点の平均的な位置からのずれが大きくなりやすく、その特徴点の存在確率分布の信頼性が薄れることを考慮して、そのような存在確率分布の合成時の寄与率を低く設定することにより、検出対象画像に含まれる人物の顔の向きや大きさ、顔部品の位置関係等のばらつきによる影響を抑えることができ、安定して精度よく特徴点の検出を行うことができる。
【００９８】
なお、本実施形態においては、特徴点の存在確率分布を合成する際に用いる、顔の特徴点の各組合せ毎の重み付け係数をすべて０（零）でない値としているが、例えば、比較的狭い特定の場所に密集して存在する特徴点同士が１つのグループに属するように特徴点をグループ分けし、同じグループに属する２つの特徴点の組合せに対する重み付け係数を０（零）に設定するようにしてもよい。
【００９９】
図９は、そのように設定した場合の重み付け係数weight(i,j)の一例を示した表である。この表は、左目尻と左目頭は左目のグループ、右目頭と右目尻は右目のグループ、左小鼻は右小鼻を鼻のグループ、左口角は左口角のグループ、右口角は右口角のグループに属するように顔の特徴点をグループ分けし、グループが異なる特徴点同士の組合せに対する重み付け係数をそれぞれ表したものであり、同じグループに属する特徴点同士の組合せに対する重み付け係数は０（零）である。
【０１００】
このようにすることで、定義する特徴点の密度が偏っている場合に、特定の決まった場所に位置する特徴点からの影響が大きくなって、ある特徴点の存在確率分布の合成に寄与する他の特徴点の位置のバランスが悪くなることを防ぎ、特徴点の誤検出を抑制することが可能となる。
【０１０１】
以上、本発明の望ましい実施形態について説明したが、本発明の方法および装置並びにそのためのプログラムは、上述した実施形態に限られることなく、本発明の主旨を逸脱しない限り、様々な増減、変化を加えることができる。
【図面の簡単な説明】
【０１０２】
【図１】本発明の実施形態となる顔特徴点検出システムの構成を示すブロック図
【図２】特徴点候補検出部４０の構成を示すブロック図
【図３】顔正規化処理の様子を示す図
【図４】１つの特徴点を基準としたときその他の特徴点の位置の確率分布の例を示す図
【図５】多重解像度化処理の様子を示す図
【図６】特徴点検出器が備える識別器の学習に用いる特徴点のサンプル画像の例を示す図
【図７】画像上で特徴点別に設定された検索範囲の例を示す図
【図８】特徴点の存在確率分布を合成する際に用いる重み付け係数の一例を示す図（その１）
【図９】特徴点の存在確率分布を合成する際に用いる重み付け係数の一例を示す図（その２）
【図１０】統計的に求められた特徴点の存在確率分布の例を示す図
【図１１】本実施形態における処理を示すフローチャート
【図１２】特徴点の候補を検出する処理を示すフローチャート
【図１３】特徴点を推定する処理を示すフローチャート
【図１４】顔の特徴点の平均的な位置と顔の向きが変化したときの実際の特徴点との差を示す図
【図１５】特定の顔部品に特徴点が偏っている様子を示す図
【図１６】識別器の導出方法を示す図
【図１７】照明正規化（全体正規化）処理に用いる画素値の変換曲線の一例を示す図
【符号の説明】
【０１０３】
１０  画像入力部
２０  顔検出部
３０  顔正規化部
４０  特徴点候補検出部
４１  多重解像度画像生成部
４２  照明正規化部
４３  特徴点検索範囲設定部
４４  特徴点検出器選択部
４５  特徴点検出器群
５０  データベース
６０  特徴点存在確率分布合成部
７０  特徴点推定部
８０  未検出特徴点補完部
【図１】
0004532419.tif 000011
【図２】
0004532419.tif 000012
【図３】
0004532419.tif 000013
【図５】
0004532419.tif 000014
【図６】
0004532419.tif 000015
【図７】
0004532419.tif 000016
【図８】
0004532419.tif 000017
【図９】
0004532419.tif 000018
【図１１】
0004532419.tif 000019
【図１２】
0004532419.tif 000020
【図１３】
0004532419.tif 000021
【図１４】
0004532419.tif 000022
【図１５】
0004532419.tif 000023
【図１６】
0004532419.tif 000024
【図１７】
0004532419.tif 000025
【図４】
0004532419.tif 000026
【図１０】
0004532419.tif 000027