(57)【要約】【課題】  カメラで撮像した撮像画像において、照明等の環境が変化する場合や、肌の色が異なる人物が撮像画像に含まれている場合であっても、人物の顔領域を抽出することを可能にした顔領域推定装置を提供する。【解決手段】  顔領域推定装置１は、撮像画像から移動体の輪郭を抽出するともに、移動体が存在する距離に対応する画素からなる対象距離画像を生成する移動体検出手段１０と、輪郭の上部の画素位置を基準とした予め定めた範囲に対応する対象距離画像の画素分布に基づいて、頭部領域を設定する頭部領域設定手段２０と、頭部領域に対応する撮像画像の色分布に基づいて、撮像画像から人物の顔領域を抽出する顔領域抽出手段３０と、を備える。【選択図】      図１
2006171929.tif 000002
【特許請求の範囲】
【請求項１】
複数のカメラで移動体を撮像した複数の撮像画像から、当該撮像画像内に含まれる人物の顔領域を推定する顔領域推定装置であって、
前記複数の撮像画像の視差に基づいて、前記移動体までの距離を距離情報として生成する距離情報生成手段と、
前記複数のカメラの中の少なくとも１つのカメラから、時系列に入力される撮像画像の差分に基づいて、前記移動体の動きを動き情報として生成する動き情報生成手段と、
前記距離情報及び前記動き情報に基づいて、前記移動体が存在する対象距離を設定する対象距離設定手段と、
前記距離情報に基づいて、前記対象距離に対応する画素からなる対象距離画像を生成する対象距離画像生成手段と、
前記対象距離画像内に、少なくとも前記対象距離設定手段で設定された対象距離に対応して、前記移動体の領域を含んだ対象領域を設定する対象領域設定手段と、
この対象領域設定手段で設定された対象領域から輪郭を抽出する輪郭抽出手段と、
この輪郭抽出手段で抽出された輪郭の上部の画素位置を基準とした予め定めた範囲に対応する前記対象距離画像の画素分布に基づいて、前記移動体を人物と仮定したときの頭部領域を設定する頭部領域設定手段と、
この頭部領域設定手段で設定された頭部領域に対応する前記撮像画像の色分布に基づいて、当該撮像画像から前記人物の顔領域を抽出する顔領域抽出手段と、
を備えていることを特徴とする顔領域推定装置。
【請求項２】
前記撮像画像の各画素の色情報又は濃淡情報に基づいて、その撮像画像のエッジを抽出したエッジ画像を生成するエッジ画像生成手段を備え、
前記距離画像生成手段が、前記距離情報に基づいて、前記対象距離に対応する前記エッジ画像の画素を抽出して、前記対象距離画像を生成することを特徴とする請求項１に記載の顔領域推定装置。
【請求項３】
前記頭部領域設定手段は、前記対象距離画像における前記輪郭の上部の画素位置を基準とした予め定めた範囲内において、垂直方向の座標毎に水平方向の画素を累計し、その水平方向の画素数に基づいて、前記頭部領域の垂直方向の範囲を設定することを特徴とする請求項１又は請求項２に記載の顔領域推定装置。
【請求項４】
前記顔領域抽出手段は、
前記頭部領域内において、色相、彩度及び明度の各値毎に、予め定めた範囲内で前記値に対応する画素の累計が最多となる色相範囲、彩度範囲及び明度範囲の上限値及び下限値を、それぞれ色相閾値、彩度閾値及び明度閾値として設定するＨＬＳ閾値設定手段を備え、
前記色相閾値、前記彩度閾値及び前記明度閾値の範囲内に含まれる画素からなる領域を前記顔領域とすることを特徴とする請求項１乃至請求項３のいずれか一項に記載の顔領域推定装置。
【請求項５】
前記顔領域抽出手段は、
前記頭部領域内において、光の３原色である赤色、緑色及び青色の各濃度値毎に、予め定めた範囲内で前記濃度値に対応する画素の累計が最多となる赤色範囲、緑色範囲及び青色範囲の上限値及び下限値を、それぞれ赤色閾値、緑色閾値及び青色閾値として設定するＲＧＢ閾値設定手段を備え、
前記彩度閾値が予め定めた値以下である場合に、前記赤色閾値、前記緑色閾値及び前記青色閾値の範囲内に含まれる画素からなる領域を前記顔領域とすることを特徴とする請求項４に記載の顔領域推定装置。
【請求項６】
複数のカメラで移動体を撮像した複数の撮像画像から、当該撮像画像内に含まれる人物の顔領域を推定する顔領域推定方法であって、
前記複数の撮像画像の視差に基づいて、前記移動体までの距離を距離情報として生成する距離情報生成ステップと、
前記複数のカメラの中の少なくとも１つのカメラから、時系列に入力される撮像画像の差分に基づいて、前記移動体の動きを動き情報として生成する動き情報生成ステップと、
前記距離情報及び前記動き情報に基づいて、前記移動体が存在する対象距離を設定する対象距離設定ステップと、
前記距離情報に基づいて、前記対象距離に対応する画素からなる対象距離画像を生成する対象距離画像生成ステップと、
前記対象距離画像内に、少なくとも前記対象距離設定ステップで設定された対象距離に対応して、前記移動体の領域を含んだ対象領域を設定する対象領域設定ステップと、
この対象領域設定ステップで設定された対象領域から輪郭を抽出する輪郭抽出ステップと、
この輪郭抽出ステップで抽出された輪郭の上部の画素位置を基準とした予め定めた範囲に対応する前記対象距離画像の画素分布に基づいて、前記移動体を人物と仮定したときの頭部領域を設定する頭部領域設定ステップと、
この頭部領域設定ステップで設定された頭部領域に対応する前記撮像画像の色分布に基づいて、当該撮像画像から前記人物の顔領域を抽出する顔領域抽出ステップと、
を含んでいることを特徴とする顔領域推定方法。
【請求項７】
複数のカメラで移動体を撮像した複数の撮像画像から、当該撮像画像内に含まれる人物の顔領域を推定するために、コンピュータを、
前記複数の撮像画像の視差に基づいて、前記移動体までの距離を距離情報として生成する距離情報生成手段、
前記複数のカメラの中の少なくとも１つのカメラから、時系列に入力される撮像画像の差分に基づいて、前記移動体の動きを動き情報として生成する動き情報生成手段、
前記距離情報及び前記動き情報に基づいて、前記移動体が存在する対象距離を設定する対象距離設定手段、
前記距離情報に基づいて、前記対象距離に対応する画素からなる対象距離画像を生成する対象距離画像生成手段、
前記対象距離画像内に、少なくとも前記対象距離設定手段で設定された対象距離に対応して、前記移動体の領域を含んだ対象領域を設定する対象領域設定手段、
この対象領域設定手段で設定された対象領域から輪郭を抽出する輪郭抽出手段、
この輪郭抽出手段で抽出された輪郭の上部の画素位置を基準とした予め定めた範囲に対応する前記対象距離画像の画素分布に基づいて、前記移動体を人物と仮定したときの頭部領域を設定する頭部領域設定手段、
この頭部領域設定手段で設定された頭部領域に対応する前記撮像画像の色分布に基づいて、当該撮像画像から前記人物の顔領域を抽出する顔領域抽出手段、
として機能させることを特徴とする顔領域推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラによって撮像された画像から、その画像上に存在する人物の顔の領域を推定する顔領域推定装置、顔領域推定方法及び顔領域推定プログラムに関する。
【背景技術】
【０００２】
従来、ＣＣＤ等のカメラによって撮像された画像から、その画像上に存在する人物の顔領域（肌色領域）を推定する技術としては、色空間における色相、彩度及び明度（輝度）で、固定的な肌色を示す値の範囲に含まれる領域を画像から抽出することで、顔領域（肌色領域）の推定を行う手法が一般的である。
また、他の手法として、画像における色相値のヒストグラムを生成し、そのヒストグラムの形状から肌色の色相値の範囲を定義することで、抽出対象となる人物の肌色に適合した顔領域を抽出する技術が開示されている（特許文献１参照）。
さらに、他の手法として、マンセル表色系において肌色を定義し、画像から肌色領域を抽出し、予め登録されている個人の顔の特徴量と照合することで、個人の顔を検出（識別）することで、肌色領域が人物の顔領域であると推定する技術が開示されている（特許文献２）。
【特許文献１】特開平９−４４６７０号公報（段落００１１〜００１５、図１〜３）
【特許文献２】特開２００４−１３７６８号公報（段落００２０〜００３１、図１〜８）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、前記従来の技術において、画像から、固定的な肌色を示す色相、彩度及び明度の値の範囲に含まれる領域を抽出する一般的な手法では、照明等の環境が変わる度に、カメラのホワイトバランスの調整を行ったり、色空間（色相、彩度及び明度）の閾値の変更を行ったりする必要がある。すなわち、固定的な色空間の閾値を設定するこの技術では、照明等の環境の変化によって、人物の顔領域（肌色領域）を抽出することができないという問題がある。また、この技術では、肌の色が異なる人物が画像に含まれている場合、同時に各人物の顔領域を抽出することができないという問題がある。
【０００４】
また、特許文献１で開示されている技術によれば、色相値のヒストグラムによって、照明等の環境が変化した場合であっても、肌の色が異なる人物が画像に含まれている場合であっても、各人物の顔領域を抽出することが可能である。しかし、この技術では、肌色と同様の色分布を持つ領域まで検出してしまうため、顔領域を誤検出してしまうという問題がある。
また、特許文献２で開示されている技術によれば、顔の特徴量を抽出可能な程度に画像の解像度が高くなければならず、高解像度のカメラ、高解像度の画像を記憶するための大容量のメモリ等、装置が高価になってしまうという問題がある。
【０００５】
本発明は、以上のような問題点に鑑みてなされたものであり、照明等の環境が変化する場合や、肌の色が異なる人物が画像に含まれている場合であっても、高解像度のカメラを用いることなく、カメラで撮像された画像から、各人物の顔領域を抽出することを可能にした顔領域推定装置、顔領域推定方法及び顔領域推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、前記目的を達成するために創案されたものであり、まず、請求項１に記載の顔領域推定装置は、複数のカメラで移動体を撮像した複数の撮像画像から、当該撮像画像内に含まれる人物の顔領域を推定する顔領域推定装置であって、前記複数の撮像画像の視差に基づいて、前記移動体までの距離を距離情報として生成する距離情報生成手段と、前記複数のカメラの中の少なくとも１つのカメラから、時系列に入力される撮像画像の差分に基づいて、前記移動体の動きを動き情報として生成する動き情報生成手段と、前記距離情報及び前記動き情報に基づいて、前記移動体が存在する対象距離を設定する対象距離設定手段と、前記距離情報に基づいて、前記対象距離に対応する画素からなる対象距離画像を生成する対象距離画像生成手段と、前記対象距離画像内に、少なくとも前記対象距離設定手段で設定された対象距離に対応して、前記移動体の領域を含んだ対象領域を設定する対象領域設定手段と、この対象領域設定手段で設定された対象領域から輪郭を抽出する輪郭抽出手段と、この輪郭抽出手段で抽出された輪郭の上部の画素位置を基準とした予め定めた範囲に対応する前記対象距離画像の画素分布に基づいて、前記移動体を人物と仮定したときの頭部領域を設定する頭部領域設定手段と、この頭部領域設定手段で設定された頭部領域に対応する前記撮像画像の色分布に基づいて、当該撮像画像から前記人物の顔領域を抽出する顔領域抽出手段と、を備える構成とした。
【０００７】
かかる構成によれば、顔領域推定装置は、距離情報生成手段によって、複数の撮像画像の視差に基づいて、移動体までの距離を距離情報として生成する。例えば、複数の撮像画像から視差が検出された画素において、その視差の大きさ（視差量）を、移動体までの視差（距離）として各画素毎に埋め込んだ距離画像（距離情報）を生成する。
【０００８】
また、顔領域推定装置は、動き情報生成手段によって、複数のカメラの中の少なくとも１つのカメラから、時系列に入力される撮像画像の差分に基づいて、移動体の動きを動き情報として生成する。例えば、時系列に入力される２枚の撮像画像の差分をとって、値が“０”でない画素値をすべて“１”にした差分画像を移動体の動き情報として生成する。
【０００９】
そして、顔領域推定装置は、対象距離設定手段によって、距離情報と動き情報とにより、最も動き量の多い視差（距離）を特定し、その視差（距離）を移動体が存在する対象距離として設定する。
また、顔領域推定装置は、対象距離画像生成手段によって、距離画像（距離情報）から対象距離に対応する画素を抽出して対象距離画像を生成する。例えば、対象距離にある程度の幅（例えば、数十ｃｍ等）を持たせ、その距離に対応する画素を距離画像から抽出する。さらに、対象領域設定手段によって、対象距離画像内に、少なくとも前記対象距離に対応して、移動体を検出する対象となる対象領域を設定する。例えば、対象距離に対応する画素で生成された対象距離画像で、画素が存在する領域を対象領域とする。これによって、対象距離画像の中で移動体が存在すると想定される領域を絞り込むことができる。そして、輪郭抽出手段によって、対象距離画像内の対象領域から移動体の輪郭を抽出する。
【００１０】
また、顔領域推定装置は、頭部領域設定手段によって、輪郭の上部の画素位置を基準とした予め定めた範囲内に対応する対象距離画像の画素分布に基づいて、移動体を人物と仮定したときの頭部領域を設定する。このように輪郭の上部に人物の頭部領域を設定することで、顔領域を推定するための領域を絞り込むことができる。
さらに、顔領域推定装置は、顔領域抽出手段によって、頭部領域内において、最も多く分布する色領域を人物の顔領域として抽出する。すなわち、顔領域推定装置は、頭部領域内において、肌色が最も多く含まれていると仮定し、その肌色の領域を人物の顔領域と推定する。これによって、照明等の環境が変化したり、肌の色が異なる人物が画像に含まれたりしている場合であっても、肌色の領域を抽出することができる。
【００１１】
また、請求項２に記載の顔領域推定装置は、請求項１に記載の顔領域推定装置において、前記撮像画像の各画素の色情報又は濃淡情報に基づいて、その撮像画像のエッジを抽出したエッジ画像を生成するエッジ画像生成手段を備え、前記対象距離画像生成手段が、前記距離情報に基づいて、前記対象距離に対応する前記エッジ画像の画素を抽出して、前記対象距離画像を生成する構成とした。
【００１２】
かかる構成によれば、顔領域推定装置は、エッジ画像生成手段によって、撮像画像の色情報又は濃淡情報から、撮像画像のエッジを抽出したエッジ画像を生成する。例えば、撮像画像の明るさ（輝度）に基づいて、その明るさが大きく変化する部分をエッジとして検出することで、エッジのみからなるエッジ画像を生成する。
そして、顔領域推定装置は、対象距離画像生成手段によって、エッジ画像から対象距離の範囲内に存在する対象距離画像を生成する。これによって、輪郭抽出手段が対象距離画像から輪郭を抽出する際に、エッジを検出する動作を省くことができる。
【００１３】
さらに、請求項３に記載の顔領域推定装置は、請求項１又は請求項２に記載の顔領域推定装置において、前記頭部領域設定手段が、前記対象距離画像における前記輪郭の上部の画素位置を基準とした予め定めた範囲内において、垂直方向の座標毎に水平方向の画素を累計し、その水平方向の画素数に基づいて、前記頭部領域の垂直方向の範囲を設定する構成とした。
【００１４】
かかる構成によれば、顔領域推定装置は、頭部領域設定手段によって、輪郭の上部の画素位置を基準とした予め定めた範囲内において、対象距離画像から水平方向の画素を累計する。この水平方向に存在する対象距離画像の画素は移動体が存在する位置を示している。そこで、頭部領域設定手段は、水平方向に画素が存在する中で、垂直方向の最上位の位置を頭部の上端とし、その上端から特定の長さ（例えば、０．３ｍ）分下の位置を頭部の下端とする。なお、頭部の上端は、ノイズ等を考慮し、水平方向の画素量が予め定めた閾値以上となる垂直方向の位置の最上位とすることが望ましい。
【００１５】
また、請求項４に記載の顔領域推定装置は、請求項１乃至請求項３のいずれか一項に記載の顔領域推定装置において、前記顔領域抽出手段が、前記頭部領域内において、色相、彩度及び明度の各値毎に、予め定めた範囲内で前記値に対応する画素の累計が最多となる色相範囲、彩度範囲及び明度範囲の上限値及び下限値を、それぞれ色相閾値、彩度閾値及び明度閾値として設定するＨＬＳ閾値設定手段を備え、前記色相閾値、前記彩度閾値及び前記明度閾値の範囲内に含まれる画素からなる領域を前記顔領域とする構成とした。
【００１６】
かかる構成によれば、顔領域推定装置は、ＨＬＳ閾値設定手段によって、撮像画像の頭部領域において、色相、彩度及び明度の各値（色相値、彩度値及び明度値）毎に画素を累計し、その累計した画素数が予め定めた範囲内で最多画素数となる上限値及び下限値を、それぞれ色相閾値、彩度閾値及び明度閾値とする。この色相閾値、彩度閾値及び明度閾値の範囲に含まれる色領域が、頭部領域に最も多く分布している。そこで、顔領域推定装置は、顔領域抽出手段によって、この色相閾値、彩度閾値及び明度閾値の範囲に含まれる画素からなる領域を顔領域とする。
【００１７】
さらに、請求項５に記載の顔領域推定装置は、請求項４に記載の顔領域推定装置において、前記顔領域抽出手段が、前記頭部領域内において、光の３原色である赤色、緑色及び青色の各濃度値毎に、予め定めた範囲内で前記濃度値に対応する画素の累計が最多となる赤色範囲、緑色範囲及び青色範囲の上限値及び下限値を、それぞれ赤色閾値、緑色閾値及び青色閾値として設定するＲＧＢ閾値設定手段を備え、前記彩度閾値が予め定めた値以下である場合に、前記赤色閾値、前記緑色閾値及び前記青色閾値の範囲内に含まれる画素からなる領域を前記顔領域とする構成とした。
【００１８】
かかる構成によれば、顔領域推定装置は、顔領域抽出手段において、撮像画像における頭部領域の彩度閾値（例えば、下限値）が予め定めた値以下である場合に、色相、彩度及び明度では、肌色を抽出することが困難であると判定し、ＲＧＢ閾値設定手段によって、赤色、緑色及び青色の各濃度値の分布から、最も多く分布する各色の範囲（赤色範囲、緑色範囲及び青色範囲）を設定する。これによって、彩度の低い撮像画像においても、肌色を抽出することが可能になる。
【００１９】
また、請求項６に記載の顔領域推定方法は、複数のカメラで移動体を撮像した複数の撮像画像から、当該撮像画像内に含まれる人物の顔領域を推定する顔領域推定方法であって、前記複数の撮像画像の視差に基づいて、前記移動体までの距離を距離情報として生成する距離情報生成ステップと、前記複数のカメラの中の少なくとも１つのカメラから、時系列に入力される撮像画像の差分に基づいて、前記移動体の動きを動き情報として生成する動き情報生成ステップと、前記距離情報及び前記動き情報に基づいて、前記移動体が存在する対象距離を設定する対象距離設定ステップと、前記距離情報に基づいて、前記対象距離に対応する画素からなる対象距離画像を生成する対象距離画像生成ステップと、前記対象距離画像内に、少なくとも前記対象距離設定ステップで設定された対象距離に対応して、前記移動体の領域を含んだ対象領域を設定する対象領域設定ステップと、この対象領域設定ステップで設定された対象領域から輪郭を抽出する輪郭抽出ステップと、この輪郭抽出ステップで抽出された輪郭の上部の画素位置を基準とした予め定めた範囲に対応する前記対象距離画像の画素分布に基づいて、前記移動体を人物と仮定したときの頭部領域を設定する頭部領域設定ステップと、この頭部領域設定ステップで設定された頭部領域に対応する前記撮像画像の色分布に基づいて、当該撮像画像から前記人物の顔領域を抽出する顔領域抽出ステップと、を含んでいることを特徴とする。
【００２０】
さらに、請求項７に記載の顔領域推定プログラムは、複数のカメラで移動体を撮像した複数の撮像画像から、当該撮像画像内に含まれる人物の顔領域を推定するために、コンピュータを、前記複数の撮像画像の視差に基づいて、前記移動体までの距離を距離情報として生成する距離情報生成手段、前記複数のカメラの中の少なくとも１つのカメラから、時系列に入力される撮像画像の差分に基づいて、前記移動体の動きを動き情報として生成する動き情報生成手段、前記距離情報及び前記動き情報に基づいて、前記移動体が存在する対象距離を設定する対象距離設定手段、前記距離情報に基づいて、前記対象距離に対応する画素からなる対象距離画像を生成する対象距離画像生成手段、前記対象距離画像内に、少なくとも前記対象距離設定手段で設定された対象距離に対応して、前記移動体の領域を含んだ対象領域を設定する対象領域設定手段、この対象領域設定手段で設定された対象領域から輪郭を抽出する輪郭抽出手段、この輪郭抽出手段で抽出された輪郭の上部の画素位置を基準とした予め定めた範囲に対応する前記対象距離画像の画素分布に基づいて、前記移動体を人物と仮定したときの頭部領域を設定する頭部領域設定手段、この頭部領域設定手段で設定された頭部領域に対応する前記撮像画像の色分布に基づいて、当該撮像画像から前記人物の顔領域を抽出する顔領域抽出手段、として機能させることを特徴とする。
【発明の効果】
【００２１】
本発明によれば、照明等の環境が変化する場合や、肌の色が異なる人物が画像に含まれている場合であっても、その画像から人物の顔領域を抽出することができる。また、本発明によれば、頭部領域を特定することで、顔領域を抽出するための演算量を減らすことができるとともに、肌色と同様の色分布を持つ領域を顔として認識することがなく、顔領域を適切に抽出することができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の実施の形態について図面を参照して説明する。
［顔領域推定装置の構成］
図１は、本発明に係る顔領域推定装置の全体構成を示したブロック図である。図１に示すように顔領域推定装置１は、複数のカメラ２で撮像された撮像画像から、人物の顔領域を推定するものである。ここでは、顔領域推定装置１は、移動体検出手段１０と、頭部領域設定手段２０と、顔領域抽出手段３０とを備えている。
【００２３】
移動体検出手段１０は、複数のカメラ２で撮像された撮像画像から、動きのある移動体を検出するものである。ここでは、移動体検出手段１０は、撮像画像から移動体の輪郭を抽出するともに、移動体が存在する距離に対応する画素からなる対象距離画像を生成し、その輪郭及び対象距離画像を、検出した移動体の情報として、頭部領域設定手段２０に出力する。
【００２４】
頭部領域設定手段２０は、移動体検出手段１０で検出された移動体の輪郭及び対象距離画像に基づいて、移動体を人物と仮定したときの頭部領域を設定するものである。ここでは、頭部領域設定手段２０は、輪郭の上部（例えば、最上端）の画素位置を基準とした予め定めた範囲内において、対象距離画像の画素分布に基づいて、移動体を人物と仮定したときの頭部領域を設定する。この頭部領域設定手段２０で設定された頭部領域は、顔領域抽出手段３０に出力される。
【００２５】
顔領域抽出手段３０は、頭部領域設定手段２０で設定された頭部領域において、最も多く分布する色相、彩度及び明度で示される色領域を、人物の顔（肌色）領域として仮定し抽出するものである。
このように、顔領域推定装置１は、移動体の輪郭の上部に人物の頭部があることと仮定することで、頭部領域を特定し、その頭部領域内で、色相、彩度及び明度の色分布によって肌色（顔領域）を抽出するため、撮像画像内に肌色と同様の色分布を持つ領域を、顔領域として推定することがない。また、照明等の環境が変化した場合であっても、肌の色が異なる人物が撮像画像に含まれている場合であっても、各人物の顔領域を抽出することが可能になる。
以下、移動体検出手段１０、頭部領域設定手段２０及び顔領域抽出手段３０の構成について詳細に説明する。
【００２６】
＜移動体検出手段１０＞
まず、図２を参照して、移動体検出手段１０の構成について説明する。図２は、本発明に係る顔領域推定装置に含まれる移動体検出手段の構成を示したブロック図である。図２に示すように、移動体検出手段１０は、２台のカメラ２で撮像された撮像画像から、動きを伴う物体（移動体）を検出することとする。なお、２台のカメラ２は、左右に距離Ｂだけ離れて配置されており、それぞれを右カメラ２ａ及び左カメラ２ｂとする。ここでは、移動体検出手段１０は、距離情報生成手段１１と、動き情報生成手段１２と、エッジ画像生成手段１３と、対象距離設定手段１４と、対象距離画像生成手段１５と、対象領域設定手段１６と、輪郭抽出手段１７とを備えている。
【００２７】
距離情報生成手段１１は、同時刻に右カメラ２ａと左カメラ２ｂとで撮影された２枚の撮像画像の視差を、カメラ２（より正確には、カメラ２の焦点位置）から撮像対象までの距離情報として埋め込み、距離画像として生成するものである。なお、この距離情報生成手段１１は、例えば１００ｍｓ間隔に１フレームの割合で撮像画像を入力する。
この距離情報生成手段１１では、右カメラ２ａを基準カメラとして、この基準カメラ（右カメラ２ａ）で撮像された基準撮像画像と、左カメラ２ｂで撮像された同時刻撮像画像とで、特定の大きさのブロック（例えば８×３画素）でブロックマッチングを行うことで、基準撮像画像からの視差を計測する。そして、その視差の大きさ（視差量）を基準撮像画像の各画素に対応付けた距離画像を生成する。
なお、視差をＺとしたとき、この視差Ｚに対応するカメラ２から物体までの距離Ｌ（図示せず）は、カメラ２の焦点距離をｆ（図示せず）、右カメラ２ａと左カメラ２ｂとの距離をＢとすると、（１）式で求めることができる。
【００２８】
Ｌ＝Ｂ×ｆ／Ｚ  …（１）
【００２９】
動き情報生成手段１２は、基準カメラ（右カメラ２ａ）で時系列に撮像された２枚の撮像画像の差分に基づいて、撮像画像内の移動体の動きを動き情報として埋め込んだ、差分画像を生成するものである。
この動き情報生成手段１２では、右カメラ２ａを基準カメラとして、この基準カメラ（右カメラ２ａ）で撮像された時刻の異なる２枚の撮像画像の差分をとる。例えば、１００ｍｓ間隔で撮像画像を入力したときに、その入力時刻からΔｔ（例えば３３ｍｓ）分遅れた撮像画像を入力し、その２枚の撮像画像の差分をとることとする。
そして、差のあった画素には動きのあった画素として画素値“１”を与え、差のなかった画素には動きのなかった画素として画素値“０”を与えた差分画像を生成する。なお、動き情報生成手段１２では、さらに差分画像に対して、メディアンフィルタ等のフィルタリング処理を行うことで、ノイズを除去しておく。
【００３０】
なお、カメラ２がロボットや自動車に搭載されたカメラ等、移動するカメラであって、撮像画像内の背景が変化する場合は、カメラ２から撮像画像毎のパン、チルト等のカメラ移動量を入力し、例えば、時刻ｔ＋Δｔの撮像画像をそのカメラ移動量分補正することで、時刻ｔ及び時刻ｔ＋Δｔにおいて、動きのあった画素のみを検出する。
【００３１】
エッジ画像生成手段１３は、カメラ２（２ａ）から撮像画像（基準撮像画像）を入力し、その撮像画像からエッジを抽出したエッジ画像を生成するものである。このエッジ画像生成手段１３では、カメラ２（２ａ）から入力された撮像画像の明るさ（輝度：濃淡情報）に基づいて、その明るさが大きく変化する部分をエッジとして検出し、そのエッジのみからなるエッジ画像を生成する。例えば、ある画素の近傍領域の画素に対して重み係数を持つオペレータ（係数行例：Ｓｏｂｅｌオペレータ、Ｋｉｒｓｃｈオペレータ等）を画素毎に乗算することで、エッジの検出を行う。
【００３２】
ここで、図１１を参照（適宜図２参照）して、距離情報生成手段１１で生成される距離画像、動き情報生成手段１２で生成される差分画像、及び、エッジ画像生成手段１３で生成されるエッジ画像について説明する。図１１は、時系列に入力される撮像画像に基づいて、各画像が生成される状態を示したものである。
【００３３】
図１１に示すように、距離画像Ｄは、同時刻の右カメラの撮像画像（右カメラ画像）と左カメラの撮像画像（左カメラ画像）との視差を画素値で表現することで生成される。この視差は、その値が大きいほど人物の位置がカメラ２に近いことを表し、値が小さいほど人物の位置がカメラ２から遠いことを表している。また、エッジ画像ＥＤは、右カメラ画像から生成された画像で、検出されたエッジのみからなる画像である。さらに、差分画像ＤＩは、Δｔ分だけ入力された時刻が異なる２枚の右カメラ画像（例えば、時刻ｔと時刻ｔ＋Δｔの右カメラ画像）の差分をとり、差のあった画素を画素値“１”、差のなかった画素を画素値“０”として表現することで生成される。この差のあった画素が、実際に人物が動いた領域を表している。
【００３４】
ここで、図１２を参照して、距離画像Ｄ及び差分画像ＤＩの内容について、さらに詳細に説明を行う。図１２（ａ）は、距離画像Ｄの画像内容と、その画素値（距離画像画素値ＤＢ）の一例を示したものである。図１２（ｂ）は、差分画像ＤＩの画像内容と、その画素値（差分画像画素値ＤＩＢ）の一例を示したものである。ここでは、カメラ２から約１ｍ、２ｍ及び３ｍ離れた位置に人物が存在しているものとする。
【００３５】
距離画像Ｄは、図１２（ａ）に示すように、同時刻の右カメラ画像と左カメラ画像との視差を画素値で表現したものであって、例えば、距離画像画素値ＤＢに示したように、距離画像Ｄの画素位置（０，０）は視差が０であり、カメラ２からの距離が無限大（∞）であることを意味している。また、距離画像Ｄの画素位置（３０，５０）は視差が２０であり、カメラ２からの距離が視差２０に対応する距離、例えば２．２ｍであることを意味している。このように、距離画像Ｄは、視差を画素値として表現するため、例えば、カメラ２に近いほど明るく、遠いほど暗い画像となる。
【００３６】
差分画像ＤＩは、図１２（ｂ）に示すように、時系列に入力される右カメラ画像の差の有無を表現したものであって、例えば、差分画像画素値ＤＩＢに示したように、差分画像ＤＩの画素位置（０，０）は“０”「停止」で、動きがなかったことを意味している。また、差分画像ＤＩの画素位置（３０，５０）は“１”「動き」で、動きがあったことを意味している。
図２に戻って、説明を続ける。
【００３７】
対象距離設定手段１４は、距離情報生成手段１１で生成された距離画像と、動き情報生成手段１２で生成された差分画像とに基づいて、最も動き量の多い移動体を特定し、対象となる移動体が存在する対象距離を設定するものである。この対象距離は、対象距離画像生成手段１５に出力される。
【００３８】
この対象距離設定手段１４では、距離画像で表された視差（距離）毎に、その視差に対応する画素と同じ位置にある差分画像の画素値を累計し（動きがある画素は画素値が“１”であるので、視差毎に画素数を累計することになる）、その累計が最も多くなる視差（以下、「最多視差」という。）に、最も動き量の多い移動体が存在していると判定する。例えば、１．０〜１．１ｍの視差（距離）では、画素値の累計が１１０、１．１〜１．２ｍの視差（距離）では、画素値の累計が９２、というように視差毎に累計を出し、この累計が最大の視差（距離）を最多視差とする。
【００３９】
また、ここでは、最多視差に対応する対象距離±α分の奥行きを、最も動き量の多い移動体が存在する距離の範囲とする。このαの値は、対象距離を基準とした奥行き方向の範囲を示すものである。ここでは、αの値を、距離情報生成手段１１から時系列に入力される距離画像の差分、例えば、時刻ｔ−１で生成した距離画像と、時刻ｔで生成した距離画像との差分とする。なお、このαの値は、人物を検出することと仮定して、数十ｃｍと固定した値を用いてもよい。
【００４０】
この対象距離設定手段１４では、距離情報生成手段１１で生成された距離画像と、動き情報生成手段１２で生成された差分画像とを、図示していないメモリ等の記憶手段に記憶することとする。
【００４１】
対象距離画像生成手段１５は、距離情報生成手段１１で生成された視差量を埋め込んだ距離画像に基づいて、対象距離設定手段１４で設定された対象距離に対応する画素を、エッジ画像生成手段１３で生成されたエッジ画像から抽出した対象距離画像を生成するものである。
例えば、最多視差におけるカメラ２から移動体までの距離Ｌを前記（１）式で算出したとすると、その視差の範囲Ｚｒは前記（１）式を変形することで、以下に示す（２）式を得る。ただし、カメラ２の焦点距離をｆ、右カメラ２ａと左カメラ２ｂとの距離をＢ、対象物体の奥行き方向の範囲をαとする。
【００４２】
Ｂ×ｆ／（Ｌ＋α）＜Ｚｒ＜Ｂ×ｆ／（Ｌ−α）  …（２）
【００４３】
この対象距離画像生成手段１５では、前記（２）式の範囲の視差に対応する画素をエッジ画像から抽出した対象距離画像を生成する。
なお、この対象距離画像の生成は、基準カメラ（右カメラ２ａ）で撮像された撮像画像（原画像）又は距離情報生成手段１１で生成された距離画像から、対象距離（視差の範囲）に対応する画素位置のみの画素を抽出することとしてもよい。
【００４４】
ここで、図１３を参照（適宜図２参照）して、対象距離設定手段１４及び対象距離画像生成手段１５で、検出対象となる移動体が存在する距離に対応する画像（対象距離画像）を生成する手順について説明する。図１３（ａ）は、距離画像Ｄ及び差分画像ＤＩ（図１２）に基づいて、視差（距離）と動きのある画素を累計した動き量（画素数）との関係を示したグラフである。図１３（ｂ）は、エッジ画像ＥＤ（図１１）から対象距離の画像のみを抽出した対象距離画像ＴＤを示している。
【００４５】
図１３（ａ）に示すように、距離画像Ｄ（図１２）の視差（距離）と動き量（画素数）との関係をグラフ化すると、視差（距離）が１ｍ、２．２ｍ、３ｍの位置で動き量がピークとなる。そこで、対象距離設定手段１４は、動き量が最大となる視差（２．２ｍ）に移動体が存在するものとし、その視差（２．２ｍ）の前後（±α）の奥行き範囲に移動体が存在すると判定する。このαは、距離情報生成手段１１から時系列に入力される距離画像の差分である。なお、このαの値は、移動体を人物と仮定して、カメラ２から２．２±αｍ（α＝０．５ｍ）の範囲に人物が存在すると判定することとしてもよい。
【００４６】
また、対象距離画像生成手段１５は、図１３（ｂ）に示すように、エッジ画像生成手段１３で生成されたエッジ画像から、距離情報生成手段１１で生成された距離画像に基づいて、対象となる画素位置を判定して、対象距離±αｍに存在する画素を抽出した対象距離画像ＴＤを生成する。これによって、カメラ２から１ｍ、３ｍ離れた位置に存在している人物の画像を削除し、２．２±αｍ離れた位置に存在している人物のみをエッジ画像として抽出した対象距離画像ＴＤを生成することができる。
図２に戻って、説明を続ける。
【００４７】
対象領域設定手段１６は、対象距離画像生成手段１５で生成された対象距離画像（対象距離に対応したエッジ画像）の垂直方向の画素数を累計し、その垂直方向の画素数の累計が最も多くなる位置を移動体の中心の水平位置であると特定して、その移動体を含んだ領域（対象領域）を設定するものである。ここでは、対象領域設定手段１６は、ヒストグラム生成手段１６ａと、水平範囲設定手段１６ｂと、垂直範囲設定手段１６ｃとを備えている。
【００４８】
ヒストグラム生成手段１６ａは、対象距離画像の垂直方向の画素数を計測し、累計するものである。ここでは、ヒストグラム生成手段１６ａは、計測した垂直方向の画素数を累計することで、ヒストグラムを生成することとする。このようにヒストグラムを生成することで、ヒストグラムが最大となる位置に移動体の中心の水平位置が存在すると判定することが可能になる。なお、ヒストグラム生成手段１６ａは、ヒストグラムに対して平滑化処理を行うこととする。
【００４９】
水平範囲設定手段１６ｂは、ヒストグラム生成手段１６ａで生成されたヒストグラムに基づいて、１つの移動体を含み、その移動体の輪郭を抽出するための対象となる領域（対象領域）の水平方向の範囲を設定するものである。ここでは、水平範囲設定手段１６ｂは、ヒストグラム生成手段１６ａで生成された（平滑化された）ヒストグラムで、画素数が最大となる水平位置から所定範囲を移動体の水平方向の範囲として設定する。
【００５０】
ここで、図１４及び図１５を参照（適宜図１参照）して、対象領域設定手段１６が、対象距離画像ＴＤにおいて、１つ（１人）の移動体の領域（対象領域）における水平方向の範囲を設定する手順について説明する。図１４は、対象距離画像における水平方向の座標毎に垂直方向へ画素数を計測した累計をヒストグラムで表した図である。なお、この図１４では、ヒストグラムＨＩを対象距離画像ＴＤに重畳させているが、これは、説明の都合上重畳させているだけである。図１５は、ヒストグラムの平滑化処理の例を示す図であり、（ａ）が平滑化前、（ｂ）が平滑化後のヒストグラムを示す。
【００５１】
まず、ヒストグラム生成手段１６ａは、図１４に示すように、水平方向の座標毎に垂直方向へ画素数を計測し累計することで、対象距離画像ＴＤに含まれる移動体が存在する領域において、水平方向の座標毎に画素数が累計されたヒストグラムＨＩを生成する。なお、図１４のヒストグラムＨＩでは、局所的にピークＰ１が現れているものとする。
【００５２】
そして、ヒストグラム生成手段１６ａは、図１５に示すように、ヒストグラムＨＩに対して平滑化処理を行う。
具体的には、ＳxをヒストグラムＨＩにおける注目している座標ｘの画素数、Ｓx′を平滑化後のヒストグラムＨＩ′の座標ｘの画素数、ｘ0を正の定数として、以下の（３）式により平滑化を行う。
【００５３】
【数１】
2006171929.tif 000003
【００５４】
ここで、ｆ（ｎ）はｎの関数であるが、定数としてもよい。そして、以下の（４）式のように、ｆ（ｎ）＝｜ｘ−ｎ｜とすれば、座標ｘから距離（座標）が近い座標ｎの画素数Ｓnほど重く扱うことになるので、もとのヒストグラムＨＩの特徴を残したまま平滑化後のヒストグラムＨＩ′を生成することができる。
【００５５】
【数２】
2006171929.tif 000004
【００５６】
この処理により、図１５（ａ）に示すようなヒストグラムＨＩは、図１５（ｂ）に示すような、平滑化されたヒストグラムＨＩ′とすることができる。このとき、ヒストグラムＨＩにおいて、局所的に現れていたピークＰ１は、ピークＰ１′のように低くなる。
また、前記した（３）式又は（４）式による平滑化処理において、以下の（５）式を条件とするのが望ましい。
【００５７】
【数３】
2006171929.tif 000005
【００５８】
この（５）式の条件によれば、注目している座標ｘの右側（ｘが大きい側）又は左側（ｘが小さい側）のヒストグラムＨＩの画素数Ｓxがすべて“０”の場合に、平滑化後の画素数Ｓｘ′を“０”にするので、ヒストグラムＨＩの左右端の裾が広がらないようにすることができる。例えば、図１５（ｂ）の破線のようにはヒストグラムＨＩの裾が広がらず、実線のようになる。
これにより、隣り合う人物のヒストグラムＨＩが、平滑化の処理によりつながってしまうことを防ぐことができる。
【００５９】
そして、水平範囲設定手段１６ｂは、ヒストグラム生成手段１６ａで生成されたヒストグラムに基づいて、１つの移動体を含んだ水平方向の範囲を設定する。
具体的には、図１５（ｂ）で説明した平滑化後のヒストグラムＨＩ′において、最も画素数Ｓx′が大きい座標ｘ（例えば、図１５（ｂ）におけるｘ1）を、１つの移動体の中心位置とし、その左右両側の一定範囲（例えば、図１５（ｂ）におけるβ）を対象領域の水平方向の範囲として設定する。このβは、人物が手を挙げた場合も含まれるように、人物の幅に相当する画素数か、それよりやや広めとすることができる。さらに、この範囲内で、ヒストグラムが最小となる水平位置（座標ｘ）を検出する。この最小となる水平位置を、一人の人物の左右端とする。
【００６０】
また、移動体を抽出する水平方向の範囲を設定する場合、移動体の移動方向を考慮することが望ましい。例えば、水平範囲設定手段１６ｂは、時刻ｔ−２の対象距離画像から生成したヒストグラムによって求められた移動体の中心位置と、時刻ｔ−１の対象距離画像から生成したヒストグラムによって求められた移動体の中心位置とに基づいて、移動体の移動ベクトルを求め、その移動ベクトルとカメラ２の視線方向とのなす角度が４５°未満の場合は、例えば、中心の位置±（０．５〜０．６）ｍを、人物を検出するための水平範囲とする。また、移動ベクトルとカメラ２の視線方向とのなす角度が４５°以上の場合は、例えば、中心位置±（０．２〜０．３）ｍを、人物を検出するための水平範囲とする。これは、角度が４５°以上の場合は、人物がカメラ２の前を横切っていると考えられるからである。
【００６１】
また、対象領域の水平方向の範囲は、例えば、図示していないが、カメラ２の水平画角をθh、カメラ２から対象とする移動体までの距離をＬ、対象距離画像の横方向の解像度をＸとすると、対象領域の幅の半分（移動体の中心からの距離）を０．５（ｍ）としたときの、対象距離画像上での水平画素数αHを、以下の（６）式で求めることで、水平方向の範囲を設定してもよい。
【００６２】
αH＝（Ｘ／θh）ｔａｎ-1（０．５／Ｌ）  …（６）
図２に戻って、説明を続ける。
【００６３】
垂直範囲設定手段１６ｃは、移動体の輪郭を抽出するための対象となる領域（対象領域）の垂直方向の範囲を設定するものである。ここでは、垂直範囲設定手段１６ｃは、特定の長さ（例えば２ｍ）を対象領域の垂直方向の範囲とする。
【００６４】
ここで、図１６を参照（適宜図２参照）して、対象領域設定手段１６（垂直範囲設定手段１６ｃ）が、対象距離画像において、１つ（１人）の移動体の領域（対象領域）における垂直方向の範囲を設定する手順について説明する。図１６は、移動体が対象距離画像上のどの高さに位置するかを算出する手順を説明するための説明図である。この図１６では、カメラ２が移動ロボット（図示せず）に組み込まれ、移動体Ｍと同じ床からある高さ（カメラ高）Ｈに位置しているときに、移動体Ｍが対象距離画像（ａ′、ｂ′）上のどの高さに位置するかを示している。なお、図１６（ａ）は、カメラ２のチルト角が０（°）の場合、図１６（ｂ）はカメラ２のチルト角がθT（≠０）の場合におけるカメラ２と移動体Ｍとの対応関係を示している。
まず、図１６（ａ）を参照して、チルト角が０（°）の場合において、移動体Ｍが対象距離画像（ａ′）上で垂直方向のどの位置に存在するかを特定する方法について説明する。
【００６５】
ここで、カメラ２の垂直画角をθv、カメラ２から移動体Ｍまでの距離をＬ、対象距離画像（ａ′）の垂直方向の解像度をＹ、カメラ２の床からの高さ（カメラ高）をＨ、移動体Ｍの床からの仮想の高さを２（ｍ）とする。このとき、カメラ２の光軸と、カメラ２から移動体Ｍの仮想の上端（床から２ｍ）までを結んだ直線との角度θHは、以下の（７）式で表すことができる。
【００６６】
θH＝ｔａｎ-1（（２−Ｈ）／Ｌ）  …（７）
【００６７】
これにより、移動体Ｍの対象距離画像（ａ′）上での上端ｙTは、以下の（８）式で求めることができる。
【００６８】
ｙT＝Ｙ／２−θHＹ／θv
＝Ｙ／２−（Ｙ／θv）ｔａｎ-1（（２−Ｈ）／Ｌ）  …（８）
【００６９】
また、カメラ２の光軸と、カメラ２から移動体Ｍの下端（床）までを結んだ直線との角度θLは、以下の（９）式で表すことができる。
【００７０】
θL＝ｔａｎ-1（Ｈ／Ｌ）  …（９）
【００７１】
これにより、移動体Ｍの対象距離画像（ａ′）上での下端ｙBは、以下の（１０）式で求めることができる。
【００７２】
ｙB＝Ｙ／２＋θLＹ／θv
＝Ｙ／２＋（Ｙ／θv）ｔａｎ-1（Ｈ／Ｌ）  …（１０）
【００７３】
次に、図１６（ｂ）を参照して、チルト角がθT（≠０）の場合において、移動体Ｍが対象距離画像（ｂ′）上で垂直方向のどの位置に存在するかを特定する方法について説明する。
【００７４】
ここで、カメラ２の垂直画角をθv、チルト角をθT、移動体Ｍまでの距離をＬ、対象距離画像の垂直方向の解像度をＹ、カメラ２の床からの高さ（カメラ高）をＨ、移動体Ｍの床からの仮想の高さを２（ｍ）とする。このとき、カメラ２の光軸とカメラ２から移動体Ｍの仮想の上端（床から２ｍ）までを結んだ直線との角度θHと、チルト角θTとの差分角度（θH−θT）は、以下の（１１）式で表すことができる。
【００７５】
θH−θT＝ｔａｎ-1（（２−Ｈ）／Ｌ）  …（１１）
【００７６】
これにより、移動体Ｍの対象距離画像（ｂ′）上での上端ｙTは、以下の（１２）式で求めることができる。
【００７７】
ｙT＝Ｙ／２−θTＹ／θv−（θH−θT）Ｙ／θv
＝Ｙ／２−θTＹ／θv−（Ｙ／θv）ｔａｎ-1（（２−Ｈ）／Ｌ）  …（１２）
【００７８】
また、カメラ２の光軸とカメラ２から移動体Ｍの下端（床）までを結んだ直線との角度θLと、チルト角θTとの加算角度（θL＋θT）は、以下の（１３）式で表すことができる。
【００７９】
θL＋θT＝ｔａｎ-1（Ｈ／Ｌ）  …（１３）
【００８０】
これにより、移動体Ｍの対象距離画像（ｂ′）上での下端ｙBは、以下の（１４）式で求めることができる。
【００８１】
ｙB＝Ｙ／２−θTＹ／θv＋（θL＋θT）Ｙ／θv
＝Ｙ／２−θTＹ／θv＋（Ｙ／θv）ｔａｎ-1（Ｈ／Ｌ）  …（１４）
【００８２】
このように求めた対象距離画像（ａ′又はｂ′）の上端ｙT及び下端ｙBによって、対象領域の垂直方向の範囲が設定される。
なお、移動ロボット（図示せず）が階段等を昇降し、移動体Ｍと同一の床に存在しない場合は、移動ロボット本体のエンコーダ等によって昇降量を検出し、その昇降量を移動体Ｍの床からの高さに対して加算又は減算することで、移動体Ｍの対象距離画像（ａ′又はｂ′）における垂直方向の位置を特定することができる。あるいは、移動ロボットに地図情報を保持しておき、移動体Ｍの方向及び距離で特定される床の高さを、その地図情報から取得することとしてもよい。
図２に戻って、説明を続ける。
【００８３】
輪郭抽出手段１７は、対象距離画像生成手段１５で生成された対象距離画像において、対象領域設定手段１６で設定した移動体の領域（対象領域）内で、既知の輪郭抽出技術を用いて移動体の輪郭の抽出を行うものである。
【００８４】
ここで、既知の輪郭抽出としては、例えば、ＳＮＡＫＥＳと呼ばれる動的輪郭モデルを用いることができる。ここで、ＳＮＡＫＥＳとは、閉曲線を予め定義したエネルギーを最小化するように収縮変形させることにより、物体の輪郭を抽出する手法である。ここでは、移動体の領域（対象領域）内で、エネルギーを算出するための初期値を設定できるため、輪郭抽出のための計算量を軽減させることができる。
この輪郭抽出手段１７は、抽出した輪郭（輪郭情報）を、頭部領域設定手段２０（図１参照）に出力する。これによって、例えば、図１７に示したように、対象距離画像ＴＤの中で移動体が１つ（１人）に限定された対象領域Ｔ内で輪郭Ｏを抽出することができ、移動体の概略の位置を特定することができる。
【００８５】
＜頭部領域設定手段２０＞
次に、図３を参照して、頭部領域設定手段２０の構成について説明する。図３は、本発明に係る顔領域推定装置に含まれる頭部領域設定手段の構成を示したブロック図である。図３に示すように、頭部領域設定手段２０は、移動体検出手段１０（図１参照）で検出された移動体の輪郭及び対象距離画像に基づいて、移動体を人物と仮定したときの頭部領域を設定する。ここでは、頭部領域設定手段２０は、頭部探索領域設定手段２１と、ヒストグラム生成手段２２と、垂直範囲設定手段２３と、水平範囲設定手段２４とを備えている。
【００８６】
頭部探索領域設定手段２１は、輪郭の上部の画素位置を基準として、予め定めた範囲の領域を人物の頭部を探索するための領域（頭部探索領域）として設定するものである。
この頭部探索領域設定手段２１は、例えば、図１８に示すように、対象距離画像ＴＤにおいて、輪郭Ｏにおける重心Ｇの座標を（ｘG，ｙG）とし、重心ＧのＸ座標における最上端の輪郭ＯのＹ座標をｙUとしたとき、頭部探索領域ＨＳの垂直方向の範囲として、下限をｙU又はｙUから所定距離（例えば、０．２ｍ）下方とし、上限を特定の大きさ（例えば２ｍ）に対応する位置に設定する。なお、この上限には、図１６で説明した対象距離画像（ａ′又はｂ′）上での上端ｙTの位置を用いることができる。
【００８７】
なお、頭部探索領域の下限は、輪郭の精度によって異なる。例えば、人物の頭部まで忠実に輪郭を抽出することができる場合であれば、重心ＧのＸ座標における最上端の輪郭ＯのＹ座標から、所定距離（例えば、０．２ｍ）下方とし、人物の頭部を輪郭として抽出できない場合は、重心ＧのＸ座標における最上端の輪郭ＯのＹ座標を下限とする。なお、輪郭の精度が不安定な場合は、最上端の輪郭ＯのＹ座標から、所定距離下方を下限とするのが望ましい。
また、頭部探索領域ＨＳの水平方向の範囲は、重心ＧのＹ座標を中心に、例えば、左右±０．２（ｍ）の範囲に設定する。
この頭部探索領域設定手段２１で設定された頭部探索領域ＨＳは、ヒストグラム生成手段２２に出力される。
【００８８】
ヒストグラム生成手段２２は、対象距離画像において、頭部探索領域設定手段２１で設定された頭部探索領域の範囲内で、垂直方向の座標毎に、水平方向の画素数を計測し、累計するものである。ここでは、ヒストグラム生成手段２２は、計測した水平方向の画素数を累計することで、ヒストグラムを生成することとする。このヒストグラムにおいて、画素数が累計されている垂直方向の座標には、人物が存在するとみなすことができる。
【００８９】
なお、ヒストグラム生成手段２２は、図２で説明したヒストグラム生成手段１６ａと同様、生成したヒストグラムを平滑化することが望ましい。
具体的には、Ｓyをヒストグラムにおける注目している座標ｙの画素数、Ｓy′を平滑化後のヒストグラムの座標ｙの画素数、ｙ0を正の定数として、以下の（１５）式により平滑化を行う。なお、ｆ（ｎ）はｎの関数であるが、定数としてもよい。
【００９０】
【数４】
2006171929.tif 000006
【００９１】
垂直範囲設定手段２３は、ヒストグラム生成手段２２で生成されたヒストグラム（水平方向の画素数）に基づいて、頭部領域の垂直方向の範囲を設定するものである。ここでは、垂直範囲設定手段２３は、水平方向の画素数が予め定めた閾値よりも多い垂直方向の座標において、最上点の座標を頭部領域の上端とする。また、垂直範囲設定手段２３は、頭部領域の上端から、特定の長さ（例えば０．３ｍ）だけ下の座標を頭部領域の下端とする。
【００９２】
水平範囲設定手段２４は、頭部探索領域の範囲内で頭部領域の水平方向の範囲を設定するものである。ここでは、水平範囲設定手段２４は、輪郭Ｏにおける重心ＧのＸ座標（図１８参照）を中心として、特定の長さ（例えば０．２ｍ）を頭部領域の水平方向の範囲とする。
【００９３】
ここで、図１９を参照（適宜図３参照）して、頭部探索領域において頭部領域を設定する手順について説明する。図１９は、頭部探索領域において頭部領域を設定する手順を説明するための説明図である。
まず、ヒストグラム生成手段２２は、図１９（ａ）に示すように、頭部探索領域ＨＳにおいて、水平方向の画素数を計測し累計したヒストグラムＨＩHSを生成する。そして、垂直範囲設定手段２３は、画素数が累計されている垂直方向の座標で、最上点の座標を頭部領域の上端とする。なお、ここでは、ノイズ等を考慮し、予め定めた閾値以上となる画素数が累計されている垂直方向の座標の最上点Ｔｏを、頭部領域の上端とする。
そして、垂直範囲設定手段２３は、図１９（ｂ）に示すように、最上点Ｔｏから０．３ｍだけ下の座標を頭部領域ＨＤの下端とする。
さらに、水平範囲設定手段２４は、輪郭の重心のＸ座標を中心に、０．２ｍの範囲を頭部領域ＨＤの水平方向の範囲とする。
このように設定された頭部領域ＨＤ（頭部領域の位置情報）は、顔領域抽出手段３０（図１参照）に出力される。
【００９４】
＜顔領域抽出手段３０＞
次に、図４を参照して、顔領域抽出手段３０の構成について説明する。図４は、本発明に係る顔領域推定装置に含まれる顔領域抽出手段の構成を示したブロック図である。図４に示すように、顔領域抽出手段３０は、カメラ２（図１参照）で撮像された撮像画像を参照して、頭部領域設定手段２０で設定された頭部領域において、肌色の領域である顔領域を抽出する。ここでは、顔領域抽出手段３０は、ＨＬＳ閾値設定手段３１と、ＲＧＢ閾値設定手段３２と、肌色領域抽出手段３３とを備えている。
【００９５】
ＨＬＳ閾値設定手段３１は、撮像画像の頭部領域内において、ＨＬＳ色空間で、最も多く分布する色領域における色相（Ｈｕｅ）、彩度（Ｓａｔｕｒａｔｉｏｎ）及び明度（Ｌｉｇｈｔｎｅｓｓ）のそれぞれの範囲を閾値として設定するものである。ここで設定された閾値は、後記する肌色領域抽出手段３３において、撮像画像から肌色領域を抽出する際の基準として使用される。
ここでは、ＨＬＳ閾値設定手段３１は、色相ヒストグラム生成手段３１１ａと、色相閾値設定手段３１１ｂと、彩度ヒストグラム生成手段３１２ａと、彩度閾値設定手段３１２ｂと、明度ヒストグラム生成手段３１３ａと、明度閾値設定手段３１３ｂと、彩度判定手段３１４とを備えている。
【００９６】
色相ヒストグラム生成手段３１１ａは、撮像画像の頭部領域内において、色の色合いを示す色相値毎に画素数を計測し、累計するものである。なお、色相は、色相環上で赤を基準として反時計回りに０〜３６０°の値で表すことができる。そこで、ここでは、色相ヒストグラム生成手段３１１ａは、色相値として、色相環における位置（０〜３６０°）毎に画素数を累計することで、ヒストグラム（色相ヒストグラム）を生成する。この色相ヒストグラムによって、頭部領域内において、どの色相値が多く分布しているのかを把握することができる。
【００９７】
色相閾値設定手段３１１ｂは、色相ヒストグラム生成手段３１１ａで累計された画素数が予め定めた範囲内で最多画素数となる色相範囲の上限値及び下限値を色相閾値として設定するものである。ここでは、色相閾値設定手段３１１ｂは、色相ヒストグラム生成手段３１１ａで生成された色相ヒストグラムにおいて、予め定めた範囲（色相閾値幅）内で、最も画素数が多くなる範囲を探索することで、色相閾値を設定する。ここで設定された色相閾値は、肌色領域抽出手段３３に出力される。
【００９８】
彩度ヒストグラム生成手段３１２ａは、撮像画像の頭部領域内において、色の鮮やかさを示す彩度値毎に画素数を計測し、累計するものである。なお、彩度は、色相で表した色合いの強弱のことで、彩度値が高ければ鮮やかに、低ければ濁った色（灰色）となる。また、彩度は、その強弱を０〜１００％の値で表すことができる。そこで、ここでは、彩度ヒストグラム生成手段３１２ａは、彩度値として、０〜１００％毎に画素数を累計することで、ヒストグラム（彩度ヒストグラム）を生成する。この彩度ヒストグラムによって、頭部領域内において、どの彩度値が多く分布しているのかを把握することができる。
なお、彩度ヒストグラム生成手段３１２ａは、ＨＬＳ肌色抽出手段３３ａから出力される、頭部領域内における色相閾値の範囲に含まれる画素（顔候補画素）において、彩度値毎に画素数を計測することとする。これによって、累計を行う画素数を減らし、演算速度を早めることができる。
【００９９】
彩度閾値設定手段３１２ｂは、彩度ヒストグラム生成手段３１２ａで累計された画素数が予め定めた範囲内で最多画素数となる彩度範囲の上限値及び下限値を彩度閾値として設定するものである。ここでは、彩度閾値設定手段３１２ｂは、彩度ヒストグラム生成手段３１２ａで生成された彩度ヒストグラムにおいて、予め定めた範囲（彩度閾値幅）内で、最も画素数が多くなる範囲を探索することで、彩度閾値を設定する。ここで設定された彩度閾値は、彩度判定手段３１４及び肌色領域抽出手段３３に出力される。
【０１００】
明度ヒストグラム生成手段３１３ａは、撮像画像の頭部領域内において、色の明暗を示す明度値毎に画素数を計測し、累計するものである。なお、明度は、最も明るい状態で白、最も暗い状態で黒となる。また、明度は、最も暗い状態から最も明るい状態までを０〜１００％の値で表すことができる。そこで、ここでは、明度ヒストグラム生成手段３１３ａは、明度値として、０〜１００％毎に画素数を累計することで、ヒストグラム（明度ヒストグラム）を生成する。この明度ヒストグラムによって、頭部領域内において、どの明度値が多く分布しているのかを把握することができる。
なお、明度ヒストグラム生成手段３１３ａは、ＨＬＳ肌色抽出手段３３ａから出力される、頭部領域内における色相閾値及び彩度閾値の範囲に含まれる画素（顔候補画素）において、明度値毎に画素数を計測することとする。これによって、累計を行う画素数を減らし、演算速度を早めることができる。
【０１０１】
明度閾値設定手段３１３ｂは、明度ヒストグラム生成手段３１３ａで累計された画素数が予め定めた範囲内で最多画素数となる明度範囲の上限値及び下限値を明度閾値として設定するものである。ここでは、明度閾値設定手段３１３ｂは、明度ヒストグラム生成手段３１３ａで生成された明度ヒストグラムにおいて、予め定めた範囲（明度閾値幅）内で、最も画素数が多くなる範囲を探索し、明度閾値を設定する。ここで設定された明度閾値は、肌色領域抽出手段３３に出力される。
【０１０２】
ここで図２０を参照（適宜図４を参照）して、ＨＬＳ閾値設定手段３１において、色相閾値、彩度閾値及び明度閾値を設定する手法について説明する。図２０は、色相、彩度及び明度の各ヒストグラムから色相閾値、彩度閾値及び明度閾値を設定する手法を示した図であって、（ａ）は色相閾値、（ｂ）は彩度閾値、（ｃ）は明度閾値を設定する手法を示している。
【０１０３】
まず、ＨＬＳ閾値設定手段３１は、色相ヒストグラム生成手段３１１ａによって、図２０（ａ）に示すように、頭部領域ＨＤ（図１９参照）内において、色相値毎に画素数を計測し、累計することで、色相ヒストグラムＨＩHを生成する。そして、色相閾値設定手段３１１ｂによって、０〜３６０°の範囲で、予め定めた範囲の閾値幅（色相閾値幅ＷH）でスライドさせながら、色相閾値幅ＷHにおける画素数が最多となる位置を探索する。そして、この画素数が最多となった色相閾値幅ＷHの下限値ＨL及び上限値ＨHを色相閾値として設定する。
【０１０４】
また、ＨＬＳ閾値設定手段３１は、彩度ヒストグラム生成手段３１２ａによって、図２０（ｂ）に示すように、頭部領域ＨＤ（図１９参照）内において、彩度値毎に画素数を計測し、累計することで、彩度ヒストグラムＨＩSを生成する。そして、彩度閾値設定手段３１２ｂによって、０〜１００％の範囲で、予め定めた範囲の閾値幅（彩度閾値幅ＷS）でスライドさせながら、彩度閾値幅ＷSにおける画素数が最多となる位置を探索する。そして、この画素数が最多となった彩度閾値幅ＷSの下限値ＳL及び上限値ＳHを彩度閾値として設定する。
また、明度閾値設定手段３１３ｂも、彩度閾値設定手段３１２ｂと同様に、図２０（ｃ）に示すように、明度閾値幅ＷLで最多画素数となる明度閾値幅ＷLの下限値ＬL及び上限値ＬHを明度閾値として設定する。
図４に戻って、説明を続ける。
【０１０５】
彩度判定手段３１４は、彩度閾値設定手段３１２ｂで設定された彩度閾値に基づいて、撮像画像の彩度の高低を判定するものである。
ここで、撮像画像が彩度の低い画像であったとすると、その画像は色相に関係なく灰色に近い色となってしまい、色相値によって肌色を抽出することは困難となる。そこで、彩度判定手段３１４は、彩度の高低に基づいて、ＨＬＳ色空間による色相閾値、彩度閾値及び明度閾値を、肌色を抽出するための閾値として使用することが適当であるかどうかを判定する。具体的には、彩度判定手段３１４は、彩度閾値の下限値ＳL（図２０参照）が、“０”であった場合、彩度が低いと判定する。
なお、ここでは、彩度閾値の下限値が、“０”であるかどうかで、彩度の高低を判定しているが、予め閾値を設け、下限値がその閾値以下であった場合に彩度が低いと判定することとしてもよい。この彩度判定手段３１４による彩度の判定結果は、ＲＧＢ閾値設定手段３２と、肌色領域抽出手段３３に出力される。
【０１０６】
ＲＧＢ閾値設定手段３２は、撮像画像の頭部領域内において、ＲＧＢ色空間で、最も多く分布する色領域における赤色（Ｒｅｄ）、緑色（Ｇｒｅｅｎ）及び青色（Ｂｌｕｅ）のそれぞれの濃度の範囲を閾値として設定するものである。なお、このＲＧＢ閾値設定手段３２は、ＨＬＳ閾値設定手段３１の彩度判定手段３１４における彩度の高低の判定結果で、彩度が低いと判定された場合に動作する。
ここでは、ＲＧＢ閾値設定手段３２は、赤色ヒストグラム生成手段３２１ａと、赤色閾値設定手段３２１ｂと、緑色ヒストグラム生成手段３２２ａと、緑色閾値設定手段３２２ｂと、青色ヒストグラム生成手段３２３ａと、青色閾値設定手段３２３ｂとを備えている。
【０１０７】
赤色ヒストグラム生成手段３２１ａは、撮像画像の頭部領域内において、赤色の濃度毎に画素数を計測し、累計するものである。なお、赤色の濃度値は、階調値（例えば、２５６階調）、又は、最多階調値を１００％としたときの相対値（０〜１００％）で表すことができる。そこで、ここでは、赤色ヒストグラム生成手段３２１ａは、赤色の相対値毎に画素数を累計することで、ヒストグラム（赤色ヒストグラム）を生成する。この赤色ヒストグラムによって、頭部領域内において、どの赤色の濃度値が多く分布しているのかを把握することができる。
【０１０８】
赤色閾値設定手段３２１ｂは、赤色ヒストグラム生成手段３２１ａで計測された画素数が予め定めた範囲内で最多画素数となる赤色範囲の上限値及び下限値を赤色閾値として設定するものである。ここでは、赤色閾値設定手段３２１ｂは、赤色ヒストグラム生成手段３２１ａで生成された赤色ヒストグラムにおいて、予め定めた範囲（赤色閾値幅）内で、最も画素数が多くなる範囲を探索することで、赤色閾値を設定する。ここで設定された赤色閾値は、肌色領域抽出手段３３に出力される。
【０１０９】
緑色ヒストグラム生成手段３２２ａ及び青色ヒストグラム生成手段３２３ａは、赤色ヒストグラム生成手段３２１ａにおいて、計測対象となる色が赤色から、緑色又は青色に代わっているだけであるので、説明を省略する。
また、緑色閾値設定手段３２２ｂ及び青色閾値設定手段３２３ｂも、赤色閾値設定手段３２１ｂにおいて、対象となる色が赤色から、緑色又は青色に代わっているだけであるので、説明を省略する。
なお、ＲＧＢ閾値設定手段３２は、ＨＬＳ閾値設定手段３１と同様に、各色の閾値を設定する段階で、頭部領域からその閾値の範囲に含まれる画素（顔候補画素）を抽出することで、ヒストグラムを生成する際の対象画素を限定することとしてもよい。
【０１１０】
肌色領域抽出手段３３は、ＨＬＳ閾値設定手段３１で設定された色相閾値、彩度閾値及び明度閾値、又は、ＲＧＢ閾値設定手段３２で設定された赤色閾値、緑色閾値及び青色閾値に基づいて、撮像画像の頭部領域において、各閾値の範囲に含まれる画素からなる肌色領域を抽出するものである。ここでは、肌色領域抽出手段３３は、ＨＬＳ肌色抽出手段３３ａと、ＲＧＢ肌色抽出手段３３ｂとを備えている。
【０１１１】
ＨＬＳ肌色抽出手段３３ａは、ＨＬＳ閾値設定手段３１で設定された色相閾値、彩度閾値及び明度閾値に基づいて、撮像画像の頭部領域内において、各閾値の下限値及び上限値の範囲に合致する画素を肌色の画素として抽出するものである。これによって、頭部領域内における肌色領域すなわち顔領域が抽出されたことになる。なお、ＨＬＳ肌色抽出手段３３ａは、ＨＬＳ閾値設定手段３１の彩度判定手段３１４における彩度の高低の判定結果で、彩度が低いと判定されなかった場合に動作する。
なお、ＨＬＳ肌色抽出手段３３ａは、ＨＬＳ閾値設定手段３１で、色相閾値、彩度閾値及び明度閾値が順次設定される段階で、順次撮像画像の頭部領域内において、対象となる画素（顔候補画素）を抽出し、ＨＬＳ閾値設定手段３１に出力することとする。これによって、ＨＬＳ閾値設定手段３１における閾値設定に要する演算コストを削減することができる。
【０１１２】
ＲＧＢ肌色抽出手段３３ｂは、ＲＧＢ閾値設定手段３２で設定された赤色閾値、緑色閾値及び青色閾値に基づいて、撮像画像の頭部領域内において、各閾値の下限値及び上限値の範囲に合致する画素を肌色の画素として抽出するものである。なお、ＲＧＢ肌色抽出手段３３ｂは、ＨＬＳ閾値設定手段３１の彩度判定手段３１４における彩度の高低の判定結果で、彩度が低いと判定された場合に動作する。
なお、ＲＧＢ肌色抽出手段３３ｂは、ＨＬＳ肌色抽出手段３３ａと同様に、赤色閾値、緑色閾値及び青色閾値が順次設定される段階で、順次撮像画像の頭部領域内において、対象となる画素（顔候補画素）を抽出し、ＲＧＢ閾値設定手段３２に出力することが望ましい。
【０１１３】
このように、顔領域推定装置１を構成することで、図２１に示すように、カメラ２が撮像した撮像画像ＣＩから、頭部領域ＨＤを設定し、その領域内で、肌色となる顔領域を抽出することができる。ここでは、その抽出された顔領域のみを抽出した顔領域画像ＦＩを示している。
以上、一実施の形態として顔領域推定装置１の構成について説明したが、顔領域推定装置１は、一般的なコンピュータにプログラム（顔領域推定プログラム）を実行させ、コンピュータ内の演算装置や記憶装置を動作させることにより実現される。
【０１１４】
また、ここでは、顔領域推定装置１の距離情報生成手段１１が、２台のカメラ２で撮像した撮像画像に基づいて距離画像を生成したが、３台以上のカメラを用いて距離画像を生成することとしてもよい。例えば、３行３列に配置した９台のカメラで、中央に配置したカメラを基準カメラとして、他のカメラとの視差に基づいて距離画像を生成することで、移動体までの距離をより正確に測定することもできる。
また、ここでは、顔領域推定装置１の顔領域抽出手段３０は、撮像画像の彩度が低い場合に、ＲＧＢ色空間上で、肌色領域を抽出する構成とした。しかし、彩度が低くならない環境に限定して動作させる場合には、顔領域抽出手段３０の彩度判定手段３１４、ＲＧＢ閾値設定手段３２及びＲＧＢ肌色抽出手段３３ｂを構成から省略することができる。
【０１１５】
［顔領域推定装置の動作］
次に、図５を参照（適宜図１参照）して、顔領域推定装置１の動作について説明する。図５は、本発明に係る顔領域推定装置の全体動作を示すフローチャートである。
まず、顔領域推定装置１は、移動体検出手段１０によって、複数のカメラ２で撮像された撮像画像から、動きのある移動体を検出する（ステップＳ１０；移動体検出ステップ）。なお、このステップＳ１０では、撮像画像から移動体の輪郭を抽出するとともに、移動体が存在する距離に対応する画素からなる対象距離画像を生成する。
【０１１６】
そして、顔領域推定装置１は、頭部領域設定手段２０によって、ステップＳ１０で抽出された移動体を人物とみなしたときの頭部領域を設定する（ステップＳ２０；頭部領域設定ステップ）。なお、このステップＳ２０では、輪郭の上部の画素位置を基準とした予め定めた範囲内において、対象距離画像の画素分布に基づいて、移動体を人物と仮定したときの頭部領域を設定する。
【０１１７】
そして、顔領域推定装置１は、顔領域抽出手段３０によって、ステップＳ２０で設定された頭部領域において、肌色の領域を人物の顔領域として抽出する（ステップＳ３０；顔領域抽出ステップ）。なお、このステップＳ３０では、頭部領域において、最も多く分布する色相、彩度及び明度で示される色領域を、人物の顔（肌色）領域として仮定し抽出する。
以下、ステップＳ１０の移動体（輪郭）検出処理、ステップＳ２０の頭部領域設定処理、及び、ステップＳ３０の顔領域抽出処理の動作について詳細に説明する。
【０１１８】
＜移動体（輪郭）検出処理＞
最初に、図６及び図７を参照（適宜図２参照）して、図５のステップＳ１０で説明した移動体（輪郭）検出処理の動作について説明する。図６及び図７は、移動体検出手段における移動体（輪郭）検出処理の動作を示すフローチャートである。
【０１１９】
（撮像画像入力ステップ）
まず、移動体検出手段１０は、２台のカメラ２から時系列に撮像画像を同期させて入力する（ステップＳ１０１）。ここでは、ある時刻ｔに右カメラ２ａ（基準カメラ）と左カメラ２ｂとから入力された撮像画像と、次の時刻ｔ＋Δｔに右カメラ２ａ（基準カメラ）と左カメラ２ｂとから入力された撮像画像とに基づいて、移動体を抽出する。なお、以下のステップで用いられている距離画像Ｄt-1及びＤt-2、対象距離画像ＴＤt-2及びＴＤt-1は、時刻ｔ−２及び時刻ｔ−１の段階で生成されたものである。
【０１２０】
（距離画像（距離情報）生成ステップ）
そして、移動体検出手段１０は、距離情報生成手段１１によって、時刻ｔに右カメラ２ａ（基準カメラ）と左カメラ２ｂとから入力された２枚の撮像画像から、移動体を含んだ撮像対象までの視差（距離）を埋め込んだ距離画像Ｄtを生成する（ステップＳ１０２）。
【０１２１】
（差分画像（動き情報）生成ステップ）
さらに、移動体検出手段１０は、動き情報生成手段１２によって、右カメラ２ａ（基準カメラ）で時刻ｔと時刻ｔ＋Δｔに撮像された２枚の撮像画像（基準撮像画像）の差分をとり、差のあった画素を画素値“１”、差のなかった画素を画素値“０”とした差分画像ＤＩtを生成する（ステップＳ１０３）。
【０１２２】
（エッジ画像生成ステップ）
また、移動体検出手段１０は、エッジ画像生成手段１３によって、右カメラ２ａ（基準カメラ）で時刻ｔに撮像された撮像画像（基準撮像画像）からエッジ画像ＥＤtを生成する（ステップＳ１０４）。
【０１２３】
（対象距離設定ステップ）
そして、移動体検出手段１０は、対象距離設定手段１４によって、ステップＳ１０２及びステップＳ１０３で生成した距離画像Ｄt及び差分画像ＤＩt（時刻ｔと時刻ｔ＋Δｔの差分画像）から、距離画像Ｄtで表された視差（距離）毎に、動きのあった画素数を累計し、その累計が最大となる距離を、距離画像Ｄtにおける検出対象となる移動体の対象距離ｄtとして設定する（ステップＳ１０５）。
【０１２４】
（対象距離画像生成ステップ）
そして、移動体検出手段１０は、対象距離画像生成手段１５によって、ステップＳ１０４で生成したエッジ画像ＥＤtから、対象距離ｄt±αの画素を抽出した対象距離画像ＴＤtを生成する（ステップＳ１０６）。
このステップＳ１０６によって、顔領域推定装置１は、時刻ｔにおける距離画像距離画像Ｄtにおいて、移動体が存在する奥行き方向の範囲を設定することができる。
【０１２５】
（対象領域設定ステップ）
そして、移動体検出手段１０は、対象領域設定手段１６のヒストグラム生成手段１６ａによって、ステップＳ１０６で生成した対象距離画像ＴＤtの垂直方向（縦方向）の画素数を計測し、ヒストグラム化する（ステップＳ１０７）。なお、このステップＳ１０７においては、ヒストグラムを平滑化することが望ましい。
【０１２６】
そして、移動体検出手段１０は、対象領域設定手段１６の水平範囲設定手段１６ｂによって、時刻ｔの対象距離画像ＴＤtにおいて、ヒストグラムが最大となる位置ｘ1（図１５参照）を中心に、所定左右領域を対象領域の水平範囲として設定する（ステップＳ１０８）。ここでは、人物を検出することとして、時刻ｔ−２の対象距離画像ＴＤt-2と、時刻ｔ−１の対象距離画像ＴＤt-1とでヒストグラムが最大となる位置を結んだ移動ベクトルを設定し、移動ベクトルとカメラ２の視線方向とのなす角度が４５°未満の場合は、中心の位置ｘ1±（０．５〜０．６）ｍを、人物を検出するための水平範囲とする。また、移動ベクトルとカメラ２の視線方向とのなす角度が４５°以上の場合は、中心の位置ｘ1±（０．２〜０．３）ｍを、人物を検出するための水平範囲とする。
【０１２７】
さらに、移動体検出手段１０は、対象領域設定手段１６の垂直範囲設定手段１６ｃによって、カメラ２から入力されるチルト角、床（設置面）からの高さ等のカメラパラメータに基づいて、対象距離画像ＴＤtで対象領域の垂直（上下）方向の範囲を設定する（ステップＳ１０９）。
【０１２８】
例えば、カメラ２のチルト角、床からの高さに基づいて、対象距離画像における画像中の床の位置（対象領域の下端）を求める。そして、カメラ２の画角と移動体までの距離とに基づいて、床から２ｍまでの範囲を画素数に換算することにより、対象領域の対象距離画像における床からの画素数を求める。これによって、対象距離画像における対象領域の上端を求めることができる。なお、この２ｍは、一例であって、他の長さ（高さ）であっても構わない。
【０１２９】
（輪郭抽出ステップ）
また、移動体検出手段１０は、輪郭抽出手段１７によって、ステップＳ１０６で生成した対象距離画像ＴＤtにおいて、ステップＳ１０８及びステップＳ１０９で設定した対象領域内で輪郭の抽出を行う（ステップＳ１１０）。例えば、対象領域内で動的輪郭モデル（ＳＮＡＫＥＳ）を適用することによって輪郭の抽出を行う。
以上の動作によって、カメラ２から入力された撮像画像から、移動体を検出することができる。
【０１３０】
＜頭部領域設定処理＞
次に、図８を参照（適宜図３参照）して、図５のステップＳ２０で説明した頭部領域設定処理の動作について説明する。図８は、頭部領域設定手段における頭部領域設定処理の動作を示すフローチャートである。
【０１３１】
（頭部探索領域設定ステップ）
まず、頭部領域設定手段２０は、頭部探索領域設定手段２１によって、輪郭の上部（上端）の画素位置を基準として、予め定めた範囲の領域を人物の頭部を探索するための領域（頭部探索領域）として設定する（ステップＳ２０１）。ここでは、頭部探索領域設定手段２１は、輪郭の重心のＸ座標をｘ、その座標ｘにおける輪郭の最上端のＹ座標をｙとした位置（ｘ，ｙ）を基準として、頭部探索領域の垂直方向の範囲を設定する。例えば、頭部探索領域の下限を、ｙから所定距離（例えば、０．２ｍ）下方とし、上限は、特定の大きさ（例えば２ｍ）に対応する位置に設定する。
【０１３２】
（頭部垂直範囲設定ステップ）
そして、頭部領域設定手段２０は、ヒストグラム生成手段２２によって、対象距離画像において、頭部探索領域設定手段２１で設定された頭部探索領域の範囲内で、垂直方向の座標毎に、水平方向の画素数を計測し、ヒストグラム化する（ステップＳ２０２）。なお、このステップＳ２０２においては、ヒストグラムを平滑化することが望ましい。
そして、頭部領域設定手段２０は、垂直範囲設定手段２３によって、ステップＳ２０２で生成されたヒストグラムにおいて、水平方向の画素数が予め定めた閾値よりも多い垂直方向の座標において、最上点の座標を頭部領域の上端とした所定の上下範囲を頭部領域の水平範囲とする。具体的には、上端から特定の長さ（例えば０．３ｍ）だけ下の座標を頭部領域の下端とすることで、頭部領域の垂直範囲を設定する（ステップＳ２０３）。
【０１３３】
（頭部水平範囲設定ステップ）
さらに、頭部領域設定手段２０は、水平範囲設定手段２４によって、輪郭における重心のＸ座標を中心として、所定の左右範囲を頭部領域の水平範囲とする。具体的には、重心のＸ座標を中心として、特定の長さ（例えば０．２ｍ）を頭部領域の水平範囲として設定する（ステップＳ２０４）。
以上の動作によって、カメラ２（図１）から入力された撮像画像のどこに人物の頭部領域が存在するかが特定されることになる。
【０１３４】
＜顔領域抽出処理＞
次に、図９及び図１０を参照（適宜図４参照）して、図５のステップＳ３０で説明した顔領域抽出処理の動作について説明する。図９及び図１０は、顔領域抽出手段における顔領域抽出処理の動作を示すフローチャートである。
【０１３５】
（色相閾値設定ステップ）
まず、顔領域抽出手段３０は、ＨＬＳ閾値設定手段３１の色相ヒストグラム生成手段３１１ａによって、撮像画像の頭部領域内において、色相値毎に画素数を計測し、ヒストグラム化することで、色相ヒストグラムを生成する（ステップＳ３０１）。
続けて、顔領域抽出手段３０は、色相閾値設定手段３１１ｂによって、色相ヒストグラムにおいて、予め定めた範囲（色相閾値幅）内で、最も画素数が多くなる範囲を探索し、その探索結果である範囲の上限値及び下限値を色相閾値として設定する（ステップＳ３０２）。
【０１３６】
（顔候補画素抽出ステップ）
そして、顔領域抽出手段３０は、肌色領域抽出手段３３のＨＬＳ肌色抽出手段３３ａによって、頭部領域内から、色相閾値の範囲に含まれる画素（顔候補画素）を抽出する（ステップＳ３０３）。
【０１３７】
（彩度閾値設定ステップ）
そして、顔領域抽出手段３０は、ＨＬＳ閾値設定手段３１の彩度ヒストグラム生成手段３１２ａによって、ステップＳ３０３で抽出された顔候補画素において、彩度値毎に画素数を計測し、ヒストグラム化することで、彩度ヒストグラムを生成する（ステップＳ３０４）。
続けて、顔領域抽出手段３０は、彩度閾値設定手段３１２ｂによって、彩度ヒストグラムにおいて、予め定めた範囲（彩度閾値幅）内で、最も画素数が多くなる範囲を探索し、その探索結果である範囲の上限値及び下限値を彩度閾値として設定する（ステップＳ３０５）。
【０１３８】
（顔候補画素更新ステップ）
そして、顔領域抽出手段３０は、ＨＬＳ肌色抽出手段３３ａによって、顔候補画素から、彩度閾値の範囲に含まれる画素を抽出し、顔候補画素を更新する（ステップＳ３０６）。
【０１３９】
（彩度判定ステップ）
ここで、顔領域抽出手段３０は、彩度判定手段３１４によって、ステップＳ３０５で設定された彩度閾値に基づいて、撮像画像の彩度の高低を判定する。ここでは、彩度閾値の下限値が“０”でないかどうかを判定する（ステップＳ３０７）。
そして、彩度閾値の下限値が“０”でない場合（ステップＳ３０７でＹｅｓ）、顔領域抽出手段３０は、ＨＬＳ色空間における肌色の抽出が可能であると判定し、ステップＳ３０８（図１０）の明度閾値設定ステップに進む。
一方、彩度閾値の下限値が“０”である場合（ステップＳ３０７でＮｏ）、顔領域抽出手段３０は、ＨＬＳ色空間における肌色の抽出が不可能であると判定し、ステップＳ３１１のＲＧＢ閾値設定ステップに進む。
【０１４０】
（明度閾値設定ステップ）
彩度閾値の下限値が“０”でない場合、顔領域抽出手段３０は、ＨＬＳ閾値設定手段３１の明度ヒストグラム生成手段３１３ａによって、ステップＳ３０６で抽出された顔候補画素において、明度値毎に画素数を計測し、ヒストグラム化することで、明度ヒストグラムを生成する（ステップＳ３０８）。
続けて、顔領域抽出手段３０は、明度閾値設定手段３１３ｂによって、明度ヒストグラムにおいて、予め定めた範囲（明度閾値幅）内で、最も画素数が多くなる範囲を探索し、その探索結果である範囲の上限値及び下限値を明度閾値として設定する（ステップＳ３０９）。
【０１４１】
（肌色領域抽出ステップ）
そして、顔領域抽出手段３０は、肌色領域抽出手段３３のＨＬＳ肌色抽出手段３３ａによって、ステップＳ３０９で設定された明度閾値の範囲内の画素を肌色領域（顔領域）として抽出する（ステップＳ３１０）。なお、このステップＳ３１０において、色相閾値、彩度閾値及び明度閾値の範囲内の画素を、頭部領域から抽出すれば、顔領域を抽出することになるし、撮像画像全体から抽出すれば、顔以外の手等の肌色領域を抽出することが可能になる。
【０１４２】
（ＲＧＢ閾値設定ステップ）
ステップＳ３０７で彩度閾値の下限値が“０”であった場合、顔領域抽出手段３０は、ＲＧＢ閾値設定手段３２によって、頭部領域内におけるＲＧＢそれぞれの画素数を計測し、ヒストグラム化することで、ＲＧＢそれぞれのヒストグラムを生成する（ステップＳ３１１）。
なお、詳細には、赤色ヒストグラム生成手段３２１ａによって、赤色の濃度毎に画素数を計測し、赤色ヒストグラムを生成する。また、緑色ヒストグラム生成手段３２２ａによって、緑色の濃度毎に画素数を計測し、緑色ヒストグラムを生成する。さらに、青色ヒストグラム生成手段３２３ａによって、青色の濃度毎に画素数を計測し、青色ヒストグラムを生成する。
【０１４３】
そして、顔領域抽出手段３０は、ＲＧＢ閾値設定手段３２によって、ステップＳ３１１で生成されたＲＧＢそれぞれのヒストグラムにおいて、予め定めた範囲内で最大画素数となる上限値及び下限値を閾値として設定する（ステップＳ３１２）。
なお、詳細には、赤色閾値設定手段３２１ｂによって、赤色ヒストグラムにおいて、予め定めた範囲（赤色閾値幅）内で、最も画素数が多くなる範囲を探索し、その探索結果である範囲の上限値及び下限値を赤色閾値として設定する。また、緑色閾値設定手段３２２ｂによって、緑色ヒストグラムにおいて、予め定めた範囲（緑色閾値幅）内で、最も画素数が多くなる範囲を探索し、その探索結果である範囲の上限値及び下限値を緑色閾値として設定する。さらに、青色閾値設定手段３２３ｂによって、青色ヒストグラムにおいて、予め定めた範囲（青色閾値幅）内で、最も画素数が多くなる範囲を探索し、その探索結果である範囲の上限値及び下限値を青色閾値として設定する。
【０１４４】
（肌色領域抽出ステップ）
そして、顔領域抽出手段３０は、肌色領域抽出手段３３のＲＧＢ肌色抽出手段３３ｂによって、ステップＳ３１２で設定された閾値（赤色閾値、緑色閾値及び青色閾値）の範囲内の画素を肌色領域（顔領域）として抽出する（ステップＳ３１３）。
【０１４５】
以上の各ステップによって、本実施の形態の顔領域推定装置１は、カメラから入力された撮像画像から、人物の顔の領域を推定して抽出することができる。なお、ここでは、ある時刻ｔにおいて人物の顔を推定したが、時々刻々と入力される撮像画像に基づいて、前記ステップ（ステップＳ１０〜ステップＳ３０）を動作させることで、例えば、顔領域推定装置１を備えた移動ロボット等が、人物の顔を検出し続けることができる。
【図面の簡単な説明】
【０１４６】
【図１】本発明に係る顔領域推定装置の全体構成を示したブロック図である。
【図２】本発明に係る顔領域推定装置に含まれる移動体検出手段の構成を示したブロック図である。
【図３】本発明に係る顔領域推定装置に含まれる頭部領域設定手段の構成を示したブロック図である。
【図４】本発明に係る顔領域推定装置に含まれる顔領域抽出手段の構成を示したブロック図である。
【図５】本発明に係る顔領域推定装置の全体動作を示すフローチャートである。
【図６】移動体検出手段における移動体（輪郭）検出処理の動作を示すフローチャート（１／２）である。
【図７】移動体検出手段における移動体（輪郭）検出処理の動作を示すフローチャート（２／２）である。
【図８】頭部領域設定手段における頭部領域設定処理の動作を示すフローチャートである。
【図９】顔領域抽出手段における顔領域抽出処理の動作を示すフローチャート（１／２）である。
【図１０】顔領域抽出手段における顔領域抽出処理の動作を示すフローチャート（２／２）である。
【図１１】距離画像、エッジ画像及び差分画像の内容の一例を示す図である。
【図１２】距離画像及び差分画像の内容の一例を示す図である。
【図１３】視差（距離）毎の動き量（画素値）に基づいて、対象距離画像を生成するための手順を説明するための説明図である。
【図１４】対象距離画像における水平方向の座標毎に垂直方向へ画素数を計測した累計をヒストグラムで表した図である。
【図１５】ヒストグラムの平滑化処理の例を示す図であり、（ａ）が平滑化前、（ｂ）が平滑化後のヒストグラムを示す。
【図１６】移動体が対象距離画像上のどの高さに位置するかを算出する手順を説明するための説明図である。
【図１７】対象距離画像の対象領域で輪郭を抽出した例を示す図である。
【図１８】対象距離画像に頭部探索領域を設定する例を示す図である。
【図１９】頭部探索領域において頭部領域を設定する手順を説明するための説明図である。
【図２０】色相、彩度、明度の各ヒストグラムから色相閾値、彩度閾値及び明度閾値を設定する手法を示した図であって、（ａ）は色相閾値、（ｂ）は彩度閾値、（ｃ）は明度閾値を設定する手法を示している。
【図２１】撮像画像から顔領域を抽出した例を示す図である。
【符号の説明】
【０１４７】
１      顔領域推定装置
２      カメラ
１０    移動体検出手段
１１    距離情報生成手段
１２    動き情報生成手段
１３    エッジ画像生成手段
１４    対象距離設定手段
１５    対象距離画像生成手段
１６    対象領域設定手段
１７    輪郭抽出手段
２０    頭部領域設定手段
３０    顔領域抽出手段
３１    ＨＬＳ閾値設定手段
３２    ＲＧＢ閾値設定手段
３３    肌色領域抽出手段
【図１】
2006171929.tif 000007
【図２】
2006171929.tif 000008
【図３】
2006171929.tif 000009
【図４】
2006171929.tif 000010
【図５】
2006171929.tif 000011
【図６】
2006171929.tif 000012
【図７】
2006171929.tif 000013
【図８】
2006171929.tif 000014
【図９】
2006171929.tif 000015
【図１０】
2006171929.tif 000016
【図１１】
2006171929.tif 000017
【図１２】
2006171929.tif 000018
【図１３】
2006171929.tif 000019
【図１４】
2006171929.tif 000020
【図１５】
2006171929.tif 000021
【図１６】
2006171929.tif 000022
【図１７】
2006171929.tif 000023
【図１８】
2006171929.tif 000024
【図１９】
2006171929.tif 000025
【図２０】
2006171929.tif 000026
【図２１】
2006171929.tif 000027