(57)【特許請求の範囲】
【請求項１】
重力方向と略垂直な平面で走査範囲を走査して基準位置から前記走査範囲内の対象物までの距離を測定してレンジデータを出力する走査手段と、
前記レンジデータを所定周期でサンプリングして連続する２つのサンプリング点において所定条件を満たすレンジデータから前記対象物のエッジを形成するセグメントを形成し、前記対象物のエッジを形成する複数のセグメントのレンジデータの集合で形成されたクラスタに基づいて脚の特徴を抽出する抽出手段と、
抽出した特徴の運動特性及び幾何情報に基づいて人物を検出する検出手段を備え、
前記抽出手段は、１つのクラスタを形成する全てのレンジデータが包含される仮想円の最小半径が予め定義された最小値より大きく、且つ、予め定義された最大値の２倍より小さいという第１の条件、前記最小半径内のレンジデータの数が４個より大きいという第２の条件、及び前記１つのクラスタを形成するレンジデータが直線を形成しないという第３の条件を満たしていると、前記１つのクラスタが脚の特徴を有すると判断し、最短距離近傍法を用いて取得した前記脚の特徴を有すると判断された複数のクラスタに含まれる２つのセグメントペアの移動特性に基づいて、各セグメントペアが静止している静止セグメントを分類する静止特徴強分類器と、各セグメントペアが移動している移動セグメントを分類する移動特徴強分類器を含み、分類されたセグメントの特徴に基づいて前記２つのセグメントペアから脚ペアを抽出する、人物検出装置。
【請求項２】
前記抽出手段は、前記複数のセグメントの特徴の幾何相似度条件に基づいて作成された複数の静止特徴弱分類器を予め用意した学習サンプルで学習させ、学習した各静止特徴弱分類器の重みを用いて前記複数のセグメントを分類することで学習した静止特徴弱分類器を前記静止特徴強分類器として機能させ、前記複数のセグメントの特徴の移動情報に基づいて作成された複数の移動特徴弱分類器を予め用意した学習サンプルで学習させ、学習した各移動特徴弱分類器の重みを用いて前記複数のセグメントを分類することで学習した移動特徴弱分類器を移動特徴強分類器として機能させる、請求項１記載の人物検出装置。
【請求項３】
前記抽出手段は、前記２つのセグメントペアが脚の物理制限条件を満たしており、且つ、セグメントの移動状態を前記基準位置からの距離Ｒと角度θの極座標で表し、Ｘｉ（Ｒｔ，θｔ）で表される状態からＸｉ＋１（Ｒｔ＋１，θｔ＋１）で表される状態に変化した場合に前記走査手段の検出サイクル間の各セグメントの移動量dＸが距離Ｒと角度θの重みを調整するゲイン行列をＷで表され
【数９】
0005561066.tif 000011
前記移動量ｄＸが一定閾値未満であると前記２つのセグメントは静止セグメントであると判定し、一定閾値以上であると前記２つのセグメントは移動セグメントであると判定する、請求項１又は２記載の人物検出装置。
【請求項４】
前記抽出手段は、前記脚の特徴を有すると判断された複数のクラスタに含まれる静止セグメントペアを形成する２つのセグメント間の幾何特徴の相似度に基づいて前記脚の抽出を行い、
前記幾何特徴の相似度は、前記２つのセグメント間の幾何サイズ又は幅及び距離の相似度に基づいて有向バウンディングボックス（ＯＢＢ：Oriented Bounding Box）を用いて、或いは、前記２つのセグメント間の幾何形状の相似度を評価して、ハウスドルフ空間（Hausdorff Space）において最大となるハウスドルフ距離で定義される、前記２つのセグメント間の最大ハウスドルフ距離（Hausdorff Distance）を用いて判断される、請求項１乃至３のいずれか１項記載の人物検出装置。
【請求項５】
重力方向と略垂直な平面で走査範囲を走査部により走査して基準位置から前記走査範囲内の対象物までの距離を測定してレンジデータを出力する工程と、
前記レンジデータをプロセッサにより所定周期でサンプリングして連続する２つのサンプリング点において所定条件を満たすレンジデータから前記対象物のエッジを形成するセグメントを形成し、前記対象物のエッジを形成する複数のセグメントのレンジデータの集合で形成されたクラスタに基づいて脚の特徴を前記プロセッサにより抽出する工程と、
抽出した特徴の運動特性及び幾何情報に基づいて前記プロセッサにより人物を検出する工程を含み、
前記抽出する工程は、１つのクラスタを形成する全てのレンジデータが包含される仮想円の最小半径が予め定義された最小値より大きく、且つ、予め定義された最大値の２倍より小さいという第１の条件、前記最小半径内のレンジデータの数が４個より大きいという第２の条件、及び前記１つのクラスタを形成するレンジデータが直線を形成しないという第３の条件を満たしていると、前記１つのクラスタが脚の特徴を有すると判断し、最短距離近傍法を用いて取得した前記脚の特徴を有すると判断された複数のクラスタに含まれる２つのセグメントペアの移動特性に基づいて、各セグメントペアが静止している静止セグメントを分類する静止特徴強分類器と、各セグメントペアが移動している移動セグメントを分類する移動特徴強分類器を含み、分類されたセグメントの特徴に基づいて前記２つのセグメントペアから脚ペアを抽出する、人物検出方法。
【請求項６】
コンピュータに、
走査部に指示を出力して重力方向と略垂直な平面で走査範囲を走査して基準位置から前記走査範囲内の対象物までの距離を測定してレンジデータを出力させる走査手順と、
前記レンジデータを所定周期でサンプリングして連続する２つのサンプリング点において所定条件を満たすレンジデータから前記対象物のエッジを形成するセグメントを形成し、前記対象物のエッジを形成する複数のセグメントのレンジデータの集合で形成されたクラスタに基づいて脚の特徴を抽出させる抽出手順と、
抽出した特徴の運動特性及び幾何情報に基づいて人物を検出させる検出手順
を実行させるためのプログラムであって、
前記抽出手順は、１つのクラスタを形成する全てのレンジデータが包含される仮想円の最小半径が予め定義された最小値より大きく、且つ、予め定義された最大値の２倍より小さいという第１の条件、前記最小半径内のレンジデータの数が４個より大きいという第２の条件、及び前記１つのクラスタを形成するレンジデータが直線を形成しないという第３の条件を満たしていると、前記１つのクラスタが脚の特徴を有すると判断し、最短距離近傍法を用いて取得した前記脚の特徴を有すると判断された複数のクラスタに含まれる２つのセグメントペアの移動特性に基づいて、各セグメントペアが静止している静止セグメントを分類する静止特徴強分類器と、各セグメントペアが移動している移動セグメントを分類する移動特徴強分類器を含み、分類されたセグメントの特徴に基づいて前記２つのセグメントペアから脚ペアを抽出する、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人物検出装置、人物検出方法及びプログラムに関する。本発明は、人物検出装置を備えたロボット及び監視システム、並びにコンピュータに人物検出処理を実行させるプログラムが格納されたコンピュータ読み取り可能な記憶媒体にも関する。
【背景技術】
【０００２】
人物を正確、且つ、比較的簡単に検出する技術は、様々な分野で求められている。人物の検出が求められる一例としては、ユーザに各種サービスを提供するサービスロボットが挙げられる。サービスロボットは、商業施設、博物館、駅等の公共の空間で案内、搬送等のサービスを提供する際に、ユーザとのインタラクション（Interaction）を効率的に行うために、リアルタイムで人物を検出可能であることが望まれる。
【０００３】
従来、カメラが撮像した画像データに画像処理を施すことにより人物を検出する各種方法が提案されている。一例として、肌色を検出することで人物を検出する方法があるが、この方法では人物の顔等の肌色の部位が撮像されないと人物を検出することができないので、例えば後ろ向きの人物を検出することはできない。
【０００４】
カメラが撮像した画像データに画像処理を施すことにより人物を検出する方法では、扱う画像データの量が比較的多いため、リアルタイムで人物を検出したり、人物を検出した後のサービスへの連携動作を考慮して人物の移動方向や速度を検出することは難しい。更に、カメラが撮像した画像データは、照明や人物の周辺に位置する各種物体を含む環境（以下、人物検出環境と言う）に大きく影響される。例えば、非常に暗い照明のもとでは肌色が検出できなかったり、壁に人物のポスターが貼られているとポスターの人物のパターンを人物と誤検出しまう可能性がある。
【０００５】
他の例として、人物の形状に相当する二次元パターンを予め登録しておき、撮像された二次元パターンと比較することで人物を検出する方法があるが、人物の形状は姿勢により大きく異なり、全ての姿勢に対応する二次元パターンを登録しておくことはできないので、正確に人物を検出することは難しい。更に、人物のパターンを三次元モデルで形成する方法もあるが、二次元パターンを用いる場合と同様の理由で、正確に人物を検出することは難しい。
【０００６】
一方、センサにより人物の脚の特徴を抽出して人物を検出する方法も提案されている。脚の特徴を抽出して人物を検出する方法の場合、センサの出力データから背景差分により移動する脚を抽出できる。しかし、この方法では、検出対象となる人物の周辺に複数の物体等が存在する比較的混雑した空間において、静止或いは移動している人物の脚の特徴を抽出することは難しい。これは、このような空間では、人間の脚と似た多数の特徴が存在し、人のセグメントを正しく検知することが難しいことと、対象人物が移動する際には人のセグメントの幾何特徴が変動するため、静止時と移動時の脚の特徴が異なりシームレス（Seamless）に脚を抽出することが難しいこと等による。このように、上記の如き比較的混雑した空間では、人物の脚でない対象物（例えば、台車の脚等）を誤検出してしまったり、静止している脚を検出できない可能性がある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００６−２２１６１０号公報
【特許文献２】特開２０１０−９５１８号公報
【特許文献３】特開２００６−２５２５５９号公報
【特許文献４】特開２００８−３１０７９６号公報
【特許文献５】特開２００９−１７５９３２号公報
【非特許文献】
【０００８】
【非特許文献１】http://ja.wikipedia.org/wiki/%E6%9C%80%E8%BF%91%E5%82%8D%E6%8E%A2%E7%B4%A2
【非特許文献２】http://www.orsj.or.jp/~wiki/wiki/index.php/%E3%83%87%E3%83%BC%E3%82%BF%E3%83%9E%E3%82%A4%E3%83%8B%E3%83%B3%E3%82%B0
【非特許文献３】http://valis.cs.uiuc.edu/~sariel/research/papers/98/bbox.pdf
【非特許文献４】H. Freeman and R. Shapira, "Determining the Minimum-Area Encasing Rectangle for an Arbitrary Closed Curve", Comm. ACM, 1975, pp.409-413
【発明の概要】
【発明が解決しようとする課題】
【０００９】
脚の特徴を抽出して人物を検出する従来の人物検出方法では、人物の移動時及び静止時にかかわらず脚の特徴を抽出することが難しいため、人物を正確、且つ、比較的簡単に検出することは難しいという問題があった。
【００１０】
そこで、本発明は、人物の移動時及び静止時にかかわらず脚の特徴を抽出して人物を正確、且つ、比較的簡単に検出可能な人物検出装置、人物検出方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の一観点によれば、重力方向と略垂直な平面で走査範囲を走査して基準位置から前記走査範囲内の対象物までの距離を測定してレンジデータを出力する走査手段と、前記レンジデータを所定周期でサンプリングして連続する２つのサンプリング点において所定条件を満たすレンジデータから前記対象物のエッジを形成するセグメントを形成し、前記対象物のエッジを形成する複数のセグメントのレンジデータの集合で形成されたクラスタに基づいて脚の特徴を抽出する抽出手段と、抽出した特徴の運動特性及び幾何情報に基づいて人物を検出する検出手段を備え、前記抽出手段は、１つのクラスタを形成する全てのレンジデータが包含される仮想円の最小半径が予め定義された最小値より大きく、且つ、予め定義された最大値の２倍より小さいという第１の条件、前記最小半径内のレンジデータの数が４個より大きいという第２の条件、及び前記１つのクラスタを形成するレンジデータが直線を形成しないという第３の条件を満たしていると、前記１つのクラスタが脚の特徴を有すると判断し、最短距離近傍法を用いて取得した前記脚の特徴を有すると判断された複数のクラスタに含まれる２つのセグメントペアの移動特性に基づいて、各セグメントペアが静止している静止セグメントを分類する静止特徴強分類器と、各セグメントペアが移動している移動セグメントを分類する移動特徴強分類器を含み、分類されたセグメントの特徴に基づいて前記２つのセグメントペアから脚ペアを抽出する人物検出装置が提供される。
【００１２】
本発明の一観点によれば、重力方向と略垂直な平面で走査範囲を走査部により走査して基準位置から前記走査範囲内の対象物までの距離を測定してレンジデータを出力する工程と、前記レンジデータをプロセッサにより所定周期でサンプリングして連続する２つのサンプリング点において所定条件を満たすレンジデータから前記対象物のエッジを形成するセグメントを形成し、前記対象物のエッジを形成する複数のセグメントのレンジデータの集合で形成されたクラスタに基づいて脚の特徴を前記プロセッサにより抽出する工程と、抽出した特徴の運動特性及び幾何情報に基づいて前記プロセッサにより人物を検出する工程を含み、前記抽出する工程は、１つのクラスタを形成する全てのレンジデータが包含される仮想円の最小半径が予め定義された最小値より大きく、且つ、予め定義された最大値の２倍より小さいという第１の条件、前記最小半径内のレンジデータの数が４個より大きいという第２の条件、及び前記１つのクラスタを形成するレンジデータが直線を形成しないという第３の条件を満たしていると、前記１つのクラスタが脚の特徴を有すると判断し、最短距離近傍法を用いて取得した前記脚の特徴を有すると判断された複数のクラスタに含まれる２つのセグメントペアの移動特性に基づいて、各セグメントペアが静止している静止セグメントを分類する静止特徴強分類器と、各セグメントペアが移動している移動セグメントを分類する移動特徴強分類器を含み、分類されたセグメントの特徴に基づいて前記２つのセグメントペアから脚ペアを抽出する人物検出方法が提供される。
【００１３】
本発明の一観点によれば、コンピュータに、走査部に指示を出力して重力方向と略垂直な平面で走査範囲を走査して基準位置から前記走査範囲内の対象物までの距離を測定してレンジデータを出力させる走査手順と、前記レンジデータを所定周期でサンプリングして連続する２つのサンプリング点において所定条件を満たすレンジデータから前記対象物のエッジを形成するセグメントを形成し、前記対象物のエッジを形成する複数のセグメントのレンジデータの集合で形成されたクラスタに基づいて脚の特徴を抽出させる抽出手順と、抽出した特徴の運動特性及び幾何情報に基づいて人物を検出させる検出手順を実行させるためのプログラムであって、前記抽出手順は、１つのクラスタを形成する全てのレンジデータが包含される仮想円の最小半径が予め定義された最小値より大きく、且つ、予め定義された最大値の２倍より小さいという第１の条件、前記最小半径内のレンジデータの数が４個より大きいという第２の条件、及び前記１つのクラスタを形成するレンジデータが直線を形成しないという第３の条件を満たしていると、前記１つのクラスタが脚の特徴を有すると判断し、最短距離近傍法を用いて取得した前記脚の特徴を有すると判断された複数のクラスタに含まれる２つのセグメントペアの移動特性に基づいて、各セグメントペアが静止している静止セグメントを分類する静止特徴強分類器と、各セグメントペアが移動している移動セグメントを分類する移動特徴強分類器を含み、分類されたセグメントの特徴に基づいて前記２つのセグメントペアから脚ペアを抽出するプログラムが提供される。
【発明の効果】
【００１４】
開示の人物検出装置、人物検出方法及びプログラムによれば、人物の移動時及び静止時にかかわらず脚の特徴を抽出して人物を正確、且つ、比較的簡単に検出することが可能となる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１実施例におけるサービスロボットの一例を示す側面図である。
【図２】レーザレンジファインダの走査範囲を説明する図である。
【図３】人物検出装置の動作を説明するフローチャートである。
【図４】レンジデータのクラスタ化を説明する図である。
【図５】基準位置に対する人物の両脚のパターンを説明する図である。
【図６】人物検出装置の一例を示すブロック図である。
【図７】図３に示すステップＳ３の処理をより詳細に説明するフローチャートである。
【図８】パターン照合を説明するフローチャートである。
【図９】脚と人物との依存関係を説明する図である。
【図１０】図３に示すステップＳ４の処理をより詳細に説明するフローチャートである。
【図１１】人物定義リスト、脚定義リスト及び非関連脚定義リストの一例を説明する図である。
【図１２】本発明の第２実施例におけるサービスロボットの一例を示すブロック図である。
【図１３】脚抽出処理の一例を説明するフローチャートである。
【図１４】ＮＮ法を適用した場合のセグメント状態定義を説明する図である。
【図１５】静止セグメントペアの判定処理を説明するフローチャートである。
【図１６】セグメントの直線移動及び速度方向変化の条件を説明する図である。
【図１７】ＯＢＢの作成及びパラメータの定義を説明する図である。
【図１８】セグメントＯＢＢの指向性及び原点位置の調整方法を説明する図である。
【図１９】ハウスドルフ距離の計算例を説明する図である。
【図２０】AdaBoost分類器を用いた脚抽出処理の一例を説明するフローチャートである。
【図２１】AdaBoost分類器の学習及びオンライン分類を説明する図である。
【図２２】人間の二足歩行の一例を示す図である。
【図２３】ＳＳ期間とＤＳ期間の間の遷移に基づいてセグメントペアが静止セグメントであるか否かを判断する処理を説明するフローチャートである。
【図２４】ＤＳ期間とＳＳ期間の切り替えパターンを識別するための条件を説明する図である。
【図２５】作成方法が修正されたAdaBoost分類器を用いた脚抽出処理の一例を説明するフローチャートである。
【図２６】本発明の第３実施例におけるサービスロボットの一部の一例を示す側面図である。
【図２７】本発明の第４実施例におけるサービスロボットの一部の一例を示す側面図である。
【発明を実施するための形態】
【００１６】
開示の人物検出装置、人物検出方法及びプログラムでは、重力方向と略垂直な平面で走査範囲を走査して基準位置から走査範囲内の対象物までの距離を測定してレンジデータを出力し、レンジデータを所定周期でサンプリングしたセグメントに基づいて脚の特徴を抽出する。人物は、抽出した特徴の運動特性及び幾何情報に基づいて検出する。脚の特徴を抽出する抽出部は、最短距離近傍法を用いて取得した２つのセグメントペアの移動特性に基づいて、各セグメントペアが静止している静止セグメントを分類する静止特徴強分類器と、各セグメントペアが移動している移動セグメントを分類する移動特徴強分類器を含み、分類されたセグメントの特徴に基づいて２つのセグメントペアから脚ペアを抽出する。
【００１７】
基準位置から対象物までの距離の測定には、例えばレーザレンジファインダ等を用い、カメラ等の撮像手段を用いないので、人物検出環境に大きく影響されることなく距離を測定できる。又、人物を検出するためのデータ処理量は、カメラで撮像した画像データを処理する場合と比較すると非常に少ない。又、人物の移動時及び静止時にかかわらず人物の脚の特徴を正確、且つ、比較的簡単に抽出可能となる。このため、抽出した脚の特徴に基づいて人物を正確、且つ、比較的簡単に検出可能となる。
【００１８】
以下に、開示の人物検出装置、人物検出方法及びプログラムの各実施例を図面と共に説明する。
【実施例】
【００１９】
（第１実施例）
先ず、本発明の第１実施例における人物検出装置について説明する。本実施例では、説明の便宜上、人物検出装置がサービスロボットに適用されているものとする。尚、以下の説明では、人物の「脚」とは、足首から脛（スネ）、膝（ヒザ）、腿（タイ）までを含む。尚、「腿」は、膝から上を指す上腿（ジョウタイ）と、膝から下を指す下腿（カタイ）を含む。
【００２０】
図１は、本実施例におけるサービスロボットの一例を示す側面図であり、図２は、走査装置又は走査手段として機能するレーザレンジファインダ（ＬＲＦ：Laser Range Finder）の走査範囲を説明する図である。
【００２１】
図１に示すように、ユーザに各種サービスを提供するサービスロボット１は、例えば人型のロボット本体２と、ベース部３を有する。ロボット本体２は、ユーザに対する案内等のサービスをアーム等の動きで提供する可動部と、ユーザに対する案内等のサービスを音声で提供する音声出力部と、ユーザに対する案内等のサービスを表示で行う表示部等を含む。ベース部３は、ＬＲＦ４を含む人物検出装置、サービスロボット１をＸＹ平面と平行な平面（以下、説明の便宜上「移動面」と言う）上の任意の方向へ移動させる駆動部（図示せず）等を含む。ＬＲＦ４は、人物の脚を検出して脚との距離を測定するので、移動面に対して人物の脚を検出するのに適した高さ位置のＸＹ平面を走査する位置に設けられている。サービスロボット１は、商業施設、博物館、駅等の公共の空間で案内、搬送等のサービスを提供する際に、ユーザ（即ち、人物）とのインタラクション（Interaction）を効率的に行うために、リアルタイムで人物を検出するよう構成されている。尚、ロボット本体２自体の構成は、提供するサービスに応じて適切に周知の構成を採用可能であるため、その詳細な図示及び説明は省略する。又、ベース部３内の駆動部の構成や駆動方法等も、周知の構成及び駆動方法を採用可能であるため、その詳細な図示及び説明は省略する。
【００２２】
図２に示すように、ＬＲＦ４は、測定の開始、走査時間（又は、走査周期）、測定の終了等の指示に応答して、重力方向と平行な垂直面以外の任意平面の一例であるＸＹ平面で走査範囲９をレーザビームにより走査して基準位置から走査範囲９内の対象物までの距離を測定する。基準位置は、この例ではＬＲＦ４の位置である。走査範囲９は、ＬＲＦ４が距離の測定が可能な基準位置を中心とした所定の半径、且つ、所定の角度範囲で決まる扇状の領域である。この例では、走査範囲９は二次元に限定されている。走査時間（又は、走査周期）は、レーザビームが走査範囲９の一端から他端までを走査するのに要する時間である。ＬＲＦ４自体は周知であるため、その構成及び動作の説明は省略する。後述するように、人物検出装置は、ＬＲＦ４が測定した距離に基づいて対象物のＸＹ平面上の断面形状に相当するパターン（第１のパターン）を算出して人物検出に用いる。
【００２３】
図３は、人物検出装置の動作を説明するフローチャートである。図３において、ステップＳ１は、ＬＲＦ４が測定したレンジデータＤｒを所定周期でサンプリングする。又、ステップＳ２は、サンプリングされたレンジデータＤｒにフィルタ処理を施すと共に、レンジデータＤｒからセグメント（Segment）を形成してセグメントからクラスタ（Cluster）を形成する。
【００２４】
図４は、レンジデータＤｒのクラスタ化を説明する図である。図４において、ＬＲＦ４の走査範囲９で検出された対象物１１〜１３のレンジデータＤｒのうち、ステップＳ１において所定周期でサンプリングされたレンジデータＤｒを丸印で示す。又、各対象物１１〜１３の輪郭（又は、エッジ）は太線で示す。ｒｉはＬＲＦ４により測定されたｉ番目のレンジデータＤｒｉの基準位置からの距離、ｒｉ＋１はＬＲＦ４により測定されたｉ＋１番目のレンジデータＤｒｉ＋１の基準位置からの距離、ｒｊはＬＲＦ４により測定されたｊ番目のレンジデータＤｒｊの基準位置からの距離、ｒｊ＋１はＬＲＦ４により測定されたｊ＋１番目のレンジデータＤｒｊ＋１の基準位置からの距離を示す。
【００２５】
サンプリングされたレンジデータＤｒには、ステップＳ２においてスパイク（Spike）や反射によるノイズを減少させたり、細かい変動を無視させるためのフィルタ処理が施される。フィルタ処理は、例えばバウンドフィルタ（Bound Filter）、メディアンフィルタ（Median Filter）等の周知のフィルタにより施すことができる。
【００２６】
フィルタ処理を施された連続する２つのサンプリング点におけるレンジデータＤｒは、ステップＳ２において例えば２点の基準位置からの距離の差が第１の閾値以下であり、且つ、２点のＸＹ平面上の距離が第２の閾値以下であると、同じ対象物のエッジの１つのセグメントを形成するものとして抽出され、同じ対象物のセグメントから１つのクラスタが形成される。つまり、１つのクラスタは、１つの対象物のセグメントを形成するレンジデータＤｒの集合である。
【００２７】
尚、ＸＹ平面上における人物の脚の候補となる断面形状の半径、又は、半径の平均値、又は、半径の範囲は、予め経験値等から求めておくことができる。従って、例えば図４の例では、対象物１３の断面形状の半径が例えば人物の脚の候補と判定できる所定範囲外の値、或いは、対となる脚の候補の断面形状が後述する所定の位置関係になければ、対象物１３は人物の脚ではないと判定可能となる。尚、ＬＲＦ４の検出特性上、レンジデータＤｒは対象物の輪郭の約半分に対してのみ検出されるが、輪郭の約半分に対するレンジデータＤｒのＸＹ平面上の位置、隣接するレンジデータＤｒで形成されるセグメントのＸＹ平面上の曲率、１つのクラスタを形成する全てのレンジデータＤｒが包含される仮想円の最小半径等から対象物の半径を推定することができる。一方、対象物１１の断面形状の半径が人物の脚の候補と判定できる所定範囲内の値、且つ、対となる脚の候補の断面形状が後述する所定の位置関係にあれば、対象物１１は人物の脚であると判定可能となる。
【００２８】
例えばレンジデータＤｒｉを含む対象物１１とレンジデータＤｒｉ＋１を含む対象物１３の場合、基準位置からの距離ｒｉ，ｒｉ＋１の差が第１の閾値を超えており、対象物１１と対象物１３の断面形状が所定の位置関係を満たさないので、対象物１１と対象物１３は同じ人物の脚として検出されることはない。これに対し、レンジデータＤｒｉを含む対象物１１とレンジデータＤｒｊ＋１を含む対象物１２の場合、基準位置からの距離ｒｉ，ｒｊ＋１の差が第１の閾値以下であり、対象物１１と対象物１２の断面形状が所定の位置関係を満たすので、対象物１１と対象物１２は同じ人物の脚として検出される。
【００２９】
このようにして、ステップＳ２では、測定されたレンジデータＤｒから各クラスタを管理するクラスタリストを作成する。クラスタリストには、レンジデータＤｒの数（測定点の数）、クラスタの中心座標、クラスタの中心座標から基準位置までの距離、クラスタを形成する全てのレンジデータＤｒが包含される仮想円の最小半径、クラスタを形成するレンジデータＤｒが直線を形成しているか否かの情報等が含まれる。尚、レンジデータＤｒの数、クラスタの中心座標、クラスタの中心座標から基準位置までの距離、クラスタを形成する全てのレンジデータＤｒが包含される仮想円の最小半径、クラスタを形成するレンジデータＤｒが直線を形成しているか否かの情報等は、いずれも周知の方法で算出可能であるため、その説明は省略する。
【００３０】
図３の説明に戻るに、ステップＳ３は、ステップＳ２で形成されたクラスタリストに基づいてクラスタを選別して人物の脚の特徴を図５に示すパターン（第２のパターン）Ｐ１，Ｐ２，Ｐ３に基づいて抽出する。クラスタを選別して抽出される人物の脚の特徴とは、人物の脚に似ている特徴、或いは、人物の脚らしい（即ち、脚である可能性が高い）特徴である。図５は、基準位置に対する人物の両脚Ｌ１，Ｌ２のＸＹ平面上のパターンＰ１，Ｐ２，Ｐ３を説明する図である。パターンＰ１はＬＲＦ４が検出する両脚Ｌ１，Ｌ２が基準位置に対して前後しているパターン、パターンＰ２は両脚Ｌ１，Ｌ２が基準位置に対して並んで離間している（即ち、両脚Ｌ１，Ｌ２間に間隙が検出される）パターン、パターンＰ３は両脚Ｌ１，Ｌ２が基準位置に対して並んで接続している（即ち、両脚Ｌ１，Ｌ２間に間隙が検出されない）パターンである。図５では、説明の便宜上、パターンＰ１〜Ｐ３の移動方向の一例が太い矢印で示されている。
【００３１】
ステップＳ４では、ステップＳ３で抽出した特徴に基づいて対象物が人物であるか否かを判断して人物を検出する。この例では、ステップＳ４は、ステップＳ３で抽出した特徴の運動特性及び幾何情報に基づいて人物を検出する。特徴の運動特性は脚の候補の移動情報等を含み、特徴の幾何情報は同一人物の２脚の候補の情報等を含む。ステップＳ４の処理の詳細については後述する。
【００３２】
図６は、人物検出装置の一例を示すブロック図である。図６において、人物検出装置１１は、プログラムを実行するコンピュータを形成するＣＰＵ（Central Processing Unit）１２、メモリ１３、タイマ１４、他の装置とのインタフェースを形成する通信部１５、及びＬＲＦ４を有する。ＣＰＵ１２は、人物検出プログラムを実行することで上記ステップＳ１〜Ｓ４を含む人物検出処理の各手順を実行する。メモリ１３は、人物検出プログラム、及び、レンジデータＤｒ等の検出デーや上記クラスタリスト等の各種リストを含む各種データを格納する。タイマ１４は、リアルタイムクロック（ＲＴＣ：Real Time Clock）等で形成可能であり、レンジデータＤｒのサンプリング周期等の時間を管理する。タイマ１４は、ＣＰＵ１２内に設けられていても良い。通信部１５は、図１のサービスロボット１の場合であれば、ベース部３内の人物検出装置１１から見た外部装置（図示せず）に人物検出処理の結果等を通知したり、外部装置から人物検出処理を要求するコマンド等をＣＰＵ１２に入力したりする。この外部装置には、ロボット本体２内の可動部、音声出力部、表示部等が含まれる。
【００３３】
尚、コンピュータに人物検出処理の各手順を実行させる人物検出プログラムは、メモリ１３を含む適切なコンピュータ読み取り可能な記憶媒体に格納されていれば良く、人物検出プログラムを格納する記憶媒体は特に限定されない。
【００３４】
ＣＰＵ１２は、測定の開始、走査時間（又は、走査周期）、測定の終了等の指示をＬＲＦ４に出力する。ＣＰＵ１２は、これらの指示に応答してＬＲＦ４が測定した距離に基づいて対象物のＸＹ平面上の断面形状に相当する第１のパターンを算出する算出部又は算出手段として機能する。メモリ１３は、人物の両脚に相当するＸＹ平面上の断面形状の第２のパターンＰ１〜Ｐ３が予め複数登録されている記憶部又は記憶手段として機能する。ＣＰＵ１２は、第１及び第２のパターンを比較して、比較結果に基づいて対象物から人物の脚の特徴を抽出する抽出部又は抽出手段、及び、抽出した特徴に基づいて対象物が人物であるか否かを判断する判断部又は判断手段としても機能する。
【００３５】
図７は、図３に示すステップＳ３の処理をより詳細に説明するフローチャートである。図７において、ステップＳ１１では、図３のステップＳ２で形成されたクラスタの中から未処理であるｋ番目のクラスタＣｋを取得する。ｋの初期値は例えば１である。ステップＳ１２では、前処理を行いクラスタＣｋが脚である可能性があるか否か、即ち、クラスタＣｋが脚の候補であるか否かを判定する。この前処理では、例えばクラスタＣｋを形成する全てのレンジデータＤｒが包含される仮想円の最小半径ＲＣｋを求め、最小半径ＲＣｋが予め定義された最小値Ｒｍｉｎより大きく、且つ、予め定義された最大値Ｒｍａｘの２倍より小さいという第１の条件、最小半径ＲＣｋ内のレンジデータＤｒの数が４個より大きいという第２の条件、及びクラスタＣｋを形成するレンジデータＤｒが直線を形成しないという第３の条件の全てを満たしていると、クラスタＣｋが脚である可能性がありステップＳ１２の判定結果がＹＥＳであると判断する。ステップＳ１２の判定結果がＮＯであると、ステップＳ１３では、ｋをｋ＝ｋ＋１にインクリメントして処理をステップＳ１２へ戻すことで、ステップＳ２で形成されたクラスタの中から次の未処理クラスタＣｋ＋１を取得する。
【００３６】
ステップＳ１２の判定結果がＹＥＳであると、ステップＳ１４では、ｋをｋ＝ｋ＋１にインクリメントしてステップＳ２で形成されたクラスタの中から次の未処理クラスタＣｋ＋１を取得する。ステップＳ１５では、２個のクラスタＣｋ，Ｃｋ＋１がパターンＰ１に相当するか否かを判定し、判定結果がＹＥＳであると処理はステップＳ１６へ進み、判定結果がＮＯであると処理はステップＳ１７へ進む。ステップＳ１５の判定結果がＹＥＳの場合に実行されるステップＳ１６では、２個のクラスタＣｋ，Ｃｋ＋１を両脚の候補リストに追加し、処理はステップＳ１３へ進む。抽出された脚の特徴を表す両脚の候補リストには、クラスタＣｋの中心座標が脚Ｌ１の座標として登録され、クラスタＣｋ＋１の中心座標が脚Ｌ２の座標として登録される。ステップＳ１７では、ｋをｋ＝ｋ＋１にインクリメントしてステップＳ２で形成されたクラスタの中から次の未処理クラスタＣｋ＋２を取得する。
【００３７】
ステップＳ１８では、２個のクラスタＣｋ，Ｃｋ＋２がパターンＰ２に相当するか否かを判定し、判定結果がＹＥＳであると処理はステップＳ１６へ進み、判定結果がＮＯであると処理はステップＳ１９へ進む。ステップＳ１８の判定結果がＹＥＳの場合に実行されるステップＳ１６では、２個のクラスタＣｋ，Ｃｋ＋２を両脚の候補リストに追加し、処理はステップＳ１３へ進む。ステップＳ１９では、２個のクラスタＣｋ，Ｃｋ＋２がパターンＰ３に相当するか否かを判定し、判定結果がＹＥＳであると処理はステップＳ２０へ進み、判定結果がＮＯであると処理はステップＳ１３へ進む。ステップＳ２０では、２個のクラスタＣｋ，Ｃｋ＋２を単脚の候補リストに追加し、処理はステップＳ１３へ進む。抽出された脚の特徴を表す単脚の候補リストには、例えばクラスタＣｋの中心座標とクラスタＣｋ＋２の中心座標の中間点が単脚（接続状態の脚Ｌ１，Ｌ２）の座標として登録される。
【００３８】
図８は、パターン照合を説明するフローチャートである。図８に示す処理は、図７のステップＳ１５において２個のクラスタがパターンＰ１に相当するか否か、或いは、図７のステップＳ１８において２個のクラスタがパターンＰ２に相当するか否かを判断する際に実行される。予め定義した閾値α、β、γ、Ｌｒｍｉｎの値を適切に設定することにより、パターンＰ１或いはパターンＰ２との照合が可能となる。説明の便宜上、以下の説明ではパターンＰ１との照合を行うものとする。
【００３９】
図８において、ステップＳ３１では、２個のクラスタＣｋ，Ｃｋ＋１のクラスタリストを参照してこれらのクラスタリストに登録された情報を取得する。ステップＳ３２では、クラスタＣｋを形成する全てのレンジデータＤｒが包含される仮想円ＲｃｋとクラスタＣｋ＋１を形成する全てのレンジデータＤｒが包含される仮想円Ｒｃｋ＋１の相似度Ｓｒ＝Ｒｃｋ／Ｒｃｋ＋１を算出する。ステップＳ３３では、クラスタＣｋの中心座標から基準位置までの距離ＤｋとクラスタＣｋ＋１の中心座標から基準位置までの距離Ｄｋ＋１の相似度Ｓｄ＝｜Ｄｋ−Ｄｋ＋１｜を算出する。又、ステップＳ３４では、クラスタＣｋの中心座標からクラスタＣｋ＋１の中心座標までの距離Ｄｃｋ，ｋ＋１を算出する。
【００４０】
ステップＳ３５では、Ｓｒ＜α、Ｓｄ＜β、Ｄｃｋ，ｋ＋１＜γ、Ｒｃｋ＜Ｌｒｍｉｎ、Ｒｃｋ＋１＜Ｌｒｍｉｎの全ての条件を満足しているか否かを判定する。ここで、αは仮想円の相似度Ｓｒに対する閾値、βはクラスタ中心座標から基準位置までの距離の相似度Ｓｄに対する閾値、γはクラスタの中心座標間の距離に対する閾値、Ｌｒｍｉｎは人体の脚とみなす最小半径を示す閾値である。ステップＳ３５の判定結果がＮＯであると、ステップＳ３６は照合失敗、即ち、クラスタＣｋ，Ｃｋ＋１がパターンＰ１に相当しないと判断し、図７のステップＳ１５の判定結果はＮＯとなる。一方、ステップＳ３５の判定結果がＹＥＳであると、ステップＳ３７は照合成功、即ち、クラスタＣｋ，Ｃｋ＋１がパターンＰ１に相当すると判断し、図７のステップＳ１５の判定結果はＹＥＳとなる。
【００４１】
パターンＰ２との照合を行う場合には、予め定義した閾値α、β、γ、Ｌｒｍｉｎの値をパターンＰ２との照合用の値に変更するだけで、ステップＳ３１〜Ｓ３７が上記パターンＰ１との照合の場合と同様に行われる。この場合、ステップＳ３５の判定結果がＮＯであると、ステップＳ３６は照合失敗、即ち、クラスタＣｋ，Ｃｋ＋２がパターンＰ２に相当しないと判断し、図７のステップＳ１８の判定結果はＮＯとなる。一方、ステップＳ３５の判定結果がＹＥＳであると、ステップＳ３７は照合成功、即ち、クラスタＣｋ，Ｃｋ＋２がパターンＰ２に相当すると判断し、図７のステップＳ１８の判定結果はＹＥＳとなる。
【００４２】
図７のステップＳ１９において２個のクラスタがパターンＰ３に相当するか否かは、例えば２個のクラスタを形成する全てのレンジデータＤｒが包含される仮想円の最小半径が予め定義された最小値Ｒｍｉｎより大きく、且つ、予め定義された最大値Ｒｍａｘより小さいか否かを判定することで判断可能である。この場合の仮想円は、２個のクラスタの中心座標の中間点を中心とするものであっても良い。
【００４３】
上記ステップＳ３で抽出した特徴は、人物の脚に似ている特徴、或いは、人物の脚らしい（即ち、脚である可能性が高い、脚の候補の）特徴である。従って、ステップＳ４では、抽出された脚の特徴を表す脚（両脚又は単脚）の候補リストから人物の脚を抽出する。ステップＳ４では更に、脚の候補リストから抽出した脚に基づいて人物の検出を行い、抽出した脚と検出結果となる人物との関連付けも行う。
【００４４】
例えば、人物の脚は、候補が脚と特定された時点（又は、初期状態）の候補の位置を示すＸＹ座標InitPos、タイマ１４で管理されており候補が脚と特定された時の時間（又は、時刻）を示すタイムスタンプInitTimestamp、脚と特定された候補の現在位置を示すＸＹ座標CurrentPos、脚と特定された候補の予測位置を示すＸＹ座標PredictPos、脚と特定された候補の現在速度を表すベクトルCurrentVel、脚と特定された候補を脚として持つ人物Human等の情報で定義する。
【００４５】
一方、脚と特定された候補に基づいて検出した人物は、唯一の人物を示す識別情報ID、人物の現在位置を示すＸＹ座標CurrentPos、人物の予測位置を示すＸＹ座標PredictPos、人物の現在速度を示すベクトルCurrentVel、人物の両脚を示すLeftLeg, RightLeg等の情報（即ち、要素）で定義する。
【００４６】
図９は、脚と人物との依存関係を説明する図である。図９において、実線は人物とこの人物を定義する情報の人物定義リストHuman、人物の左脚とこの人物の左脚を定義する情報の左脚定義リストLeftLeg、及び人物の右脚とこの人物の右脚を定義する右脚定義リストRightLegの関係を示す。又、破線は、人物定義リストHumanの情報、左脚定義リストLeftLegの情報、及び右脚定義リストRightLegの情報の依存関係を示す。
【００４７】
候補の脚への特定、脚と特定された候補とこの候補から検出された人物との関連付け、脚及び人物の状態更新等を含む処理は、上記の如き定義リストHuman, LeftLeg, RightLegに基づいて任意検出サイクルTiで実行される。このような処理に必要な情報には、直前の検出サイクル（以下、「前回検出サイクル」と言う）Ti-1の脚定義リストLegTi-1の情報、前回検出サイクルTi-1で検出された人物の人物定義リスト（前回検出サイクルTi-1の検出結果）HTi-1の情報、現在の検出サイクル（以下、「今回検出サイクル」と言う）Tiで抽出された候補が新たに脚と特定された脚定義リストLegTiの情報等が含まれる。
【００４８】
図１０は、図３に示すステップＳ４の処理をより詳細に説明するフローチャートである。図１０において、ステップＳ４１では、今回検出サイクルTiで抽出された候補が新たに脚と特定された新脚定義リストNLegTiを全てメモリ１３に登録する。又、ステップS４１では、今回検出サイクルTiで抽出された候補が新たに脚と特定された新脚定義リストNLegTi中の脚の現在位置を示すＸＹ座標CurrentPosと、前回検出サイクルTi-1の全ての脚定義リストLegTi-1中の脚の現在位置を示すＸＹ座標CurrentPosとを周知の最短距離近傍法（Nearest Neighborhood Algorithm）を用いて照合する。具体的には、新脚定義リストNLegTi中の脚の現在位置を示すＸＹ座標CurrentPosと、前回検出サイクルTi-1の全ての脚定義リストLegTi-1中の脚の現在位置を示すＸＹ座標CurrentPosとの最短距離を算出し、最短距離が閾値以下であれば最短距離近傍法により照合が成功した（以下、「照合成功」と言う）と判断して処理はステップ４２へ進む。一方、照合の結果最短距離が閾値以下である新脚定義リストNLegTi中の脚の現在位置を示すＸＹ座標CurrentPosが検出されないと、照合が不成功である（以下、「照合不成功」と言う）と判断して新脚定義リストNLegTiは他の脚又は人物と関連付けができていない非関連脚定義リストLegFeatureTiとしてメモリ１３に登録し、次の検出サイクル（以下、「次回検出サイクル」と言う）Ti+1で抽出された候補が新たに脚と特定された新脚定義リストNLegTi+1が作成されるまで待つ。ステップＳ４１で用いられる閾値は、新脚定義リストNLegTiが両脚に関するものであれば例えば人物の最大半径（例えば、１ｍ）に設定されて２脚と２脚の最短距離を算出し、新脚定義リストNLegTiが単脚に関するものであれば１脚と１脚の最短距離が算出される。２脚と２脚の最短距離とは、２脚の中心と２脚の中心との間の最短距離である。
【００４９】
図１１は、人物定義リストHuman、脚定義リストLeg及び非関連脚定義リストLegFeatureの一例を説明する図である。この例では、脚定義リストLeg1, Leg2が人物定義リストHuman1と関連付けられており、...、脚定義リストLegN, LegN+1が人物定義リストHumanMがと関連付けられているが、非関連脚定義リストLegFeature1, LegFeature2は他の脚又は人物と関連付けられていない。尚、新脚定義リストNLegの構成は、脚定義リストLegと同じ構成で良い。
【００５０】
ステップＳ４１において照合成功と判断されると、ステップＳ４２では、今回検出サイクルTiの脚定義リストLegTi中の脚の現在位置を示すＸＹ座標CurrentPosを新脚定義リストNLegTi中の対応するＸＹ座標CurrentPosで更新すると共に、脚定義リストLegTi中の現在速度を表すベクトルCurrentVelを更新してメモリ１３に登録する。現在速度を表すベクトルCurrentVelは、新脚定義リストNLegTi中の脚の現在位置を示すＸＹ座標CurrentPosと前回脚定義リストLegTi-1中の脚の現在位置を示すＸＹ座標CurrentPosの差分と、検出サイクルタイムDTから推定可能である。更に、ステップＳ４２では、今回検出サイクルTiまでに検出できていない脚の候補を更に抽出するため、照合できた候補を新脚定義リストNLegTiから削除すると共に、一定時間内に照合できない新脚定義リストNLegTiの要素も削除することで、新脚定義リストNLegTiを更新する。
【００５１】
ステップＳ４３では、他の脚又は人物と関連付けができていると判断され、且つ、更新した脚定義リストLegTiの要素を参照している人物定義リストHumanTiの要素を更新する。具体的には、人物定義リストHumanTiの対応するＸＹ座標CurrentPosと現在速度を表すベクトルCurrentVelを更新してメモリ１３に登録する。尚、例えば人物定義リストHumanTiの左脚要素LeftLeg又は右脚要素RightLegを無効（NULL）に更新することによって、この人物定義リストHumanTiが定義する人物に対して基準位置から見える脚の本数が変わる。
【００５２】
このように、ステップＳ４２により今回検出サイクルTiの脚定義リストLegTiの要素（即ち、脚の状態）が更新され、ステップＳ４３により今回検出サイクルTiの人物定義リストHumanTiの要素（即ち、人物の状態）が更新される。
【００５３】
ステップＳ４４では、メモリ１３に登録されている、前回検出サイクルTi-1の他の脚又は人物と関連付けができていない非関連脚定義リストLegFeatureTi-1中の脚の現在位置を示すＸＹ座標CurrentPosがあれば、更新された今回検出サイクルTiの新脚定義リストNLegTi中の脚の現在位置を示すＸＹ座標CurrentPosとの最短距離を算出する。又、ステップＳ４４では、この最短距離が閾値以下であれば最短距離近傍法により照合が成功した（「照合成功」）と判断して、照合が成功した非関連脚定義リストLegFeatureTi-1中のＸＹ座標CurrentPosを非関連脚定義リストLegFeatureTi-1から削除すると共に、新たに脚と特定された候補の現在位置として、即ち、検出サイクルTiの脚定義リストLegTiの要素としてメモリ１３に登録することで脚定義リストLegTiを更新する。このように、ステップＳ４４では、新脚定義リストNLegTiから、前回検出サイクルTi-1で検出されていない脚の候補を抽出する。つまり、上記ステップＳ４１〜Ｓ４３の処理が完了した時点で新脚定義リストNLegTiが要素が登録されていない空リスト以外の場合、前回検出サイクルTi-1で検出されていない脚の候補と新脚定義リストNLegTiの各要素との最短距離を計算し、最短距離近傍法で候補を照合する。最短距離が閾値以下であれば、今回検出サイクルTiの新脚定義リストNLegTiの要素で定義した位置を新位置とする新たな脚を作成し、脚定義リストLegTiに追加する。
【００５４】
ステップＳ４４の処理が完了した時点で、前回検出サイクルTi-1の脚定義リストLegTi-1と新脚定義リストNLegTiの要素の情報に基づいて、今回検出サイクルTiの脚定義リストLegTiの作成が完了する。この状態では、今回検出サイクルTiの脚定義リストLegTiを用いて人物の状態を更新することができる。
【００５５】
ステップＳ４５では、前回検出サイクルTi-1で検出されている人物の状態を更新する。つまり、上記如く更新した今回検出サイクルTiの脚定義リストLegTiと、この脚定義リストLegTiの要素を参照する人物定義リストHumanTiとの関連付けに基づいて、今回検出サイクルTiの人物の位置又は移動速度を以下のように更新する。先ず、人物の２脚を検出することができ、且つ、両脚の距離が人物の最大半径（例えば、１ｍ）以下の場合、両脚の中心で人物の位置を更新する。又、更新前後の脚の位置の差分とサイクルタイムDTで脚の移動速度を計算する。人物の２脚を検出することができ、且つ、両脚の距離が人物の最大半径を超える場合、両脚が同時に静止或いは移動する場合にはこの人物を人物定義リストHumanTiから削除する。この場合、両脚の静止或いは移動は、脚の移動速度から判断することが可能である。更に、人物の単脚しか検出できない場合、人物の位置をこの単脚の位置で更新し、上記の場合と同様に脚の速度も更新する。人物の脚が全て検出されない場合、脚が一時的に遮蔽されている可能性があるため、新たな脚の候補の全てに対し、人物の現在位置と最短距離を持つ２脚を選択する。この選択された２脚と人物との最短距離が探索半径Ｒｓ以内（例えば、Ｒｓ＝１．５×（人の最大半径））であれば、この２脚を使って人物の状態を更新し、上記の場合と同様に脚の移動速度も更新する。
【００５６】
尚、一定時間内（例えば、２検出サイクル）で人物定義リストHumanTi中の要素の更新がなければ、その人物定義リストHumanTiで表される人物は削除する。上記の如き処理が完了した時点で、前回検出サイクルTi-1で検出した人物の状態（位置、速度）、即ち、人今回検出サイクルTiの人物定義リストHumanTiの更新が全て完了する。
【００５７】
ステップＳ４６では、新たな人物を検出する。つまり、脚定義リストLegTiで表される、人物定義リストHumanTiへの参照がなく、且つ、前回検出サイクルTi-1で検出した人物との関連付けができていない各脚に対し、脚定義リストLegTiで表される他の脚との距離を算出する。又、算出された最短距離が人物の最大半径以内である脚と関連付けができていない脚とで形成される脚ペアのうち、少なくとも一方の脚が静止していない脚ペアを新たな人物の２脚とみなして今回サイクルTiで新たに検出した人物の脚として人物定義リストHumanTiに追加する。これにより、新たな人物を検出することができ、処理はステップＳ４１へ戻る。
【００５８】
尚、ステップＳ４において、ステップＳ３で抽出した人物の脚に似ている特徴（或いは、人物の脚らしい（即ち、脚である可能性が高い）特徴）に基づいて対象物が人物であるか否かを判断して人物を検出する方法は、図１０の手順を用いる方法に限定されるものではなく、人物の脚に似ている特徴に基づいて対象物が人物であるか否かを判断する方法であれば特に限定されない。
【００５９】
（第２実施例）
ところで、検出対象となる人物の周辺に複数の物体等が存在する比較的混雑した空間において、静止或いは移動している人物を検出することは難しい。これは、このような空間では、人間の脚と似た多数の特徴が存在し、人のセグメントを正しく検知することが難しいことと、対象人物が移動する際には人のセグメントの幾何特徴が変動するため、静止時と移動時の脚の特徴が異なりシームレス（Seamless）に脚を抽出することが難しいこと等による。このような比較的混雑した空間では、人の脚を抽出できない場合や、人の脚でない物体を脚と誤検出する場合もある。
【００６０】
そこで、静止している人の脚と移動している人の脚を確実に抽出可能な第２実施例を、以下に説明する。図１２は、本発明の第２実施例におけるサービスロボットの一例を示すブロック図である。図１２中、図６と同一部分には同一符号を付し、その説明は省略する。
【００６１】
図１２において、サービスロボット１１１は、駆動部１１７、通信及び制御部１１５、及びＣＰＵ１１２を有する。ＣＰＵ１１２は、脚抽出部１１２Ａ及び人検知部１１２Ｂを形成する。脚抽出部１１２Ａは、図３のステップＳ３に相当する処理を実行して人物の脚の特徴、即ち、人物の脚に似ている特徴、或いは、人物の脚らしい（即ち、脚である可能性が高い）特徴を抽出する。人検知部１１２Ｂは、図３のステップＳ４に相当する処理を実行して、脚抽出部１１２Ａで抽出した特徴に基づいて対象物が人物であるか否かを判断して人物を検出する。通信及び制御部１１５は、図６の通信部１５の機能を備えると共に、駆動部１１７を制御する機能を有する。尚、駆動部１１７を制御する機能は、ＣＰＵ１１２により実現しても良く、この場合、駆動部１１７はＣＰＵ１１２に接続すれば良い。
【００６２】
図１３は、脚抽出処理の一例を説明するフローチャートである。図１２に示すＣＰＵ１１２は、図１３に示す脚抽出処理を実行することで脚抽出部１１２Ａの機能を実現する。
【００６３】
図３に示すステップＳ２では、フィルタ処理を施された連続する２つのサンプリング点におけるレンジデータＤｒは、例えば２点の基準位置からの距離の差が第１の閾値以下であり、且つ、２点のＸＹ平面上の距離が第２の閾値以下であると、同じ対象物のエッジの１つのセグメントを形成するものとして抽出され、同じ対象物のセグメントから１つのクラスタが形成される。図１３に示すステップＳ５１は、ステップＳ２の一部を形成する。
【００６４】
ステップＳ５１では、ＬＲＦ４が測定したレンジデータＤｒから脚の特徴を抽出するために、レンジデータＤｒのエッジを抽出するセグメンテーションを行う。具体的には、２つの相隣サンプリング点（又は、レンジ点）の値、即ち、レンジ点同士の距離が一定閾値を超えると、セグメント（レンジ点の集合）の１つのエッジとして処理する。２つのエッジで、１つのセグメントを抽出する。
【００６５】
ステップＳ５２では、クラスタリストから任意の２つのセグメントペア（即ち、セグメントの対）を取得する。ステップＳ５３では、最短距離近傍法（Nearest Neighborhood Algorithm、以下ＮＮ法と言う）を用いて取得した２つのセグメントペアの移動特性を判断する。ＮＮ法は距離空間における最も近い点を探す最適化問題の一種、或いは、その解法である。ＮＮ法自体は、例えば非特許文献１等から周知である。ステップＳ５３では、人物検出環境の情報を使わずに、ＬＲＦ４が測定したレンジデータＤｒのフレーム間のセグメントの関連付けに基づいて各セグメントの移動状態を判別するために、極座標の状態ベクタ（Ｒ，θ）にＮＮ法を適用する。
【００６６】
図１４は、ＮＮ法を適用した場合のセグメント状態定義を説明する図である。図１４は、セグメントの移動状態を極座標で定義した場合を示し、各セグメントseg1,seg2の基準位置からの距離（レンジ）Ｒと角度θを状態とする。例えば、セグメントseg1の状態は、Ｘｉ（Ｒｔ，θｔ）で表される実線で示す状態からＸｉ＋１（Ｒｔ＋１，θｔ＋１）で表される破線で示す状態に変化する。ＬＲＦ４の検出サイクル間の各セグメントの移動量dＸは、距離Ｒと角度θの重みを調整するゲイン行列をＷで表すと、例えば次式のように定義される。
【００６７】
【数１】
0005561066.tif 000002
【００６８】
尚、人間の脚では、最大速度や、短時間内の移動軌跡に物理制限条件があり、これらの物理制限条件をフィルタとして用いることができる。
【００６９】
ステップＳ５４では、各セグメントペアが静止しているセグメント（以下、静止セグメントと言う）であるか否かを判定し、判定結果がＹＥＳであると処理はステップＳ５５−１へ進み、移動するセグメント（以下、移動セグメントと言う）であり判定結果がＮＯであると処理はステップＳ５５−２へ進む。ステップＳ５５−１，Ｓ５５−２は、ブースティング（Boosting）分類処理を行うブースティング分類ステップＳ５５を形成する。ブースティングとは、教師の有る学習を実行するための機械学習メタアルゴリズムの一種である。ステップＳ５５−１は静止特徴強分類器の機能を実現し、ステップＳ５５−２は移動特徴（又は、運動特性）強分類器の機能を実現する。弱分類器は真の分類と若干の相関のある学習機（learner）であるのに対し、強分類器は真の分類と良く相関する学習機である。分類ステップＳ５５は、例えば後述するアダブースト（Adaptive Boosting: AdaBoost）分類器の機能を実現するものであっても良い。AdaBoostは、前の分類器の間違いに応じて調整された次の分類器を作成する周知の機械学習アルゴリズムである。
【００７０】
尚、上記の如き分類器自体、或いは、データマイニング（Data Mining）自体は、例えば非特許文献２等から周知である。
【００７１】
ステップＳ５６では、ステップＳ５５−１又はステップＳ５５−２で分類されたセグメントの特徴に基づいて、セグメントペアを両脚として抽出するか否かを判定し、判定結果がＮＯであると処理はステップＳ５２へ戻る。一方、ステップＳ５６の判定結果がＹＥＳであると、ステップＳ５７では、抽出したセグメントペア、即ち、２つのセグメントを脚ペアとみなし、処理はステップＳ５８へ進む。ステップＳ５８では、未評価のセグメントペアが有るか否かを判定し、判定結果がＹＥＳであると処理はステップＳ５２へ戻る。ステップＳ５８の判定結果がＮＯであると、ステップＳ５９では、ＬＲＦ４の次の検出サイクルへ進み、処理はステップＳ５１へ戻る。
【００７２】
このように、本実施例では、脚の特徴を抽出する際に、背景との差分又はフレーム間差分等を使用しないので、サービスロボット１１１の移動時に背景の更新又は管理を行う必要はなく、セグメントのサイズ変更によるフレーム差分の誤差も発生しない。又、セグメントの状態ベクタを用いて脚の特徴を抽出するため、全レンジデータの差分を求める場合と比べると計算量を大幅に削減可能となる。更に、脚の物理制限条件を適用した脚の抽出を行うことにより、脚である可能性が低いセグメントを分離することができ、後述するAdaBoost分類器の学習サンプルの作成及びオンライン（Online）分類を効率的に行うことができる。
【００７３】
又、分類ステップＳ５５では、対象となるデータに対する既知の性質（移動、静止）を判別し、判別結果を利用してデータに対する選択操作を前処理として行う。更に、分類ステップＳ５５の処理結果を利用して、静止セグメントの特徴及び移動セグメントの特徴を別々で学習させることで、特徴データの次元を低減して分類器の作成及び訓練データの少量化が可能となる。オンライン分類の場合、各分類器に必要となる特徴のみを計算すれば良いため、計算量が比較的少なくて済み、ＣＰＵ１１２への負荷を小さく抑えることができる。
【００７４】
図１５は、ＮＮ法を用いた静止セグメントペアの判定処理を説明するフローチャートである。図１５において、ステップＳ６１は図１３に示すステップＳ５２に相当し、ステップＳ６２〜Ｓ６９は図１３に示すステップＳ５３，Ｓ５４に相当する。
【００７５】
ステップＳ６１では、クラスタリストから任意の２つのセグメントペアを取得する。ステップＳ６２では、ＮＮ法を用いて取得した２つのセグメントペアについて、現在のフレームと直前のフレームとの関連付けを行う。ステップＳ６３では、セグメントペアの移動量dＸを上記の式に基づいて取得する。
【００７６】
ステップＳ６４では、セグメントペアが脚の物理制限条件を満たしているか否かを判定する。例えば、セグメントの速度Ｖ又は加速度Ａが脚の物理制限条件を満たしていなければ、ステップＳ６４の判定結果はＮＯとなり処理はステップＳ６５へ進む。ステップＳ６５では、該当するセグメントペアの処理が完了したと判断するので、図１３においてステップＳ５６の判定結果がＮＯである場合と同様の処理となる。
【００７７】
セグメントの速度Ｖ及び加速度Ａの条件について見ると、人間の脚の最大速度及び加速度が物理制限条件により制限されることから、次のような関係が成立する。ここで、Ｖminはセグメントの最小速度、Ｖmaxはセグメントの最大速度、Ａmaxはセグメントの最大加速度を示す。
Ｖmin ＜ Ｖ ＜ Ｖmax
Ａ ＜ Ａmax 
従って、セグメントの速度Ｖ及び加速度Ａが上記の関係を満たしていなければ、脚の物理制限条件を満たしていないと判断できる。
【００７８】
尚、セグメントの直線移動及び速度方向変化の条件について見ると、通常、脚の短時間での速度方向の変化は少ないことから、次式で示すように、連続する２フレーム間の速度ベクタＶjを位置情報Ｐjと時間の差分dtで計算することができる。
Ｖji+1 ＝ (Ｐji＋１−Ｐji)/dt
Ｖji+2 ＝ (Ｐji＋２−Ｐji+1)/dt
【００７９】
上記２つの速度ベクタＶji+1，Ｖji+2の角度αjを以下に示す関係のように一定範囲βj内に限定することによって、セグメントが略直線移動したか、或いは、セグメントの移動方向（又は、進行方向）が変化したかを判断することができる。
｜αｊ｜ < βj
【００８０】
図１５は、セグメントの直線移動及び速度方向変化の条件を説明する図である。図１５は、直線移動及び移動方向変化の判断の概要と、セグメントが直線移動して移動方向が変化しない例と移動方向が変化する例を示す。あるフレームＦｉ＋１におけるセグメントの位置が次のフレームＦｉ＋２では図１５（ａ）に示す位置へ移動する際、太い実線で示す２βjの範囲内（即ち、速度ベクタの角度αｊが一定範囲βj内）で移動すれば図１５（ｂ）に示すようにセグメントは略直線移動したと判断し、２βjの範囲を超えて移動すれば図１５（ｃ）に示すようにセグメントの速度方向が変化したと判断することができる。
【００８１】
従って、ステップＳ６４では、セグメントの速度方向変化が脚では起こりえない短時間で起これば、脚の物理制限条件を満たしていないと判断することもできる。更に、ステップＳ６４における脚の物理制限条件を満たしているか否かの判定は、上記セグメントの速度Ｖ、加速度Ａ、及び速度方向変化の少なくとも１つのパラメータに基づいて行うようにしても良い。
【００８２】
一方、ステップＳ６４の判定結果がＹＥＳであると、ステップＳ６６では、セグメントペアが移動セグメントであるか否かを判定する。ステップＳ６６では、例えばセグメントの移動量dＸが一定閾値以上であるか否かを判定することで、セグメントペアが移動セグメントであるか否かを判定する。ステップＳ６６の判定結果がＹＥＳであると、ステップＳ６７ではセグメントが移動セグメントであると判断し、ステップＳ６９では対応する移動特徴強分類器の処理（図１３に示すステップＳ５５−２の処理）を実行する。一方、ステップＳ６６の判定結果がＮＯであると、ステップＳ６８ではセグメントが静止セグメントであると判断し、ステップＳ６９では対応する静止特徴強分類器の処理（図１３に示すステップＳ５５−１の処理）を実行する。
【００８３】
次に、図１３に示すステップＳ５６，Ｓ５７における静止セグメントペアからの脚の抽出を説明する。人間の両脚は同じ幾何情報を持つと仮定すれば、２つのセグメント間の幾何特徴の相似度を評価して両脚を特定することができる。幾何特徴の相似度の判断には、セグメント間の幾何サイズ又は幅及び距離の相似度に基づいて有向バウンディングボックス（ＯＢＢ：Oriented Bounding Box）を用いた判断を行っても、２つのセグメント間の幾何形状の相似度を評価して、２つのセグメント間の最大ハウスドルフ距離（Hausdorff Distance）を用いた判断を行うようにしても良い。最大ハウスドルフ距離は、ハウスドルフ空間（Hausdorff Space）において最大となるハウスドルフ距離である。
【００８４】
ＯＢＢは３つの要素、中心点の座標、各座標軸の傾きを表す方向ベクトル、ＯＢＢの各座標軸に沿った長さの半分を有し、３次元（又は、２次元）における任意の大きさと傾きを持った直方体（又は、長方形）を表現する。２次元又は３次元の点列を包囲するＯＢＢの作成方法自体は、例えば非特許文献３、非特許文献４等から周知である。
【００８５】
図１７は、ＯＢＢの作成及びパラメータの定義を説明する図である。図１７（ａ）はセグメントのＯＢＢ（以下、セグメントＯＢＢとも言う）とセグメント（レンジ点の集合）の関係を示し、図１７（ｂ）はＯＢＢのパラメータを示す。図１７中、黒い丸印はレンジ点を示す。
【００８６】
セグメント間の幾何サイズ又は幅及び距離の相似度は、例えば次のように評価することができる。先ず、周知のＯＢＢ作成方法よりセグメントＯＢＢを作成し、以下の如きＯＢＢのパラメータを抽出する。
・ＯＢＢの指向性θi
・ＯＢＢのＸ軸のサイズ（又は、長さ）ＤＸi
・ＯＢＢのＹ軸のサイズ（又は、長さ）ＤＹi
・ＯＢＢの中心から原点までの距離Ｒi
・ＯＢＢの中心座標Ｏ'
【００８７】
セグメントｉ，ｊ間の幾何サイズ又は幅及び距離の相似度を評価するために、任意のセグメントペアに対して以下の両脚静止条件ｃ１〜ｃ４を満足するか否かを計算により求める。
【００８８】
両脚幅条件ｃ１：
Ｗmin ＜ ＤＸi/ＤＸj ＜ Ｗmax,  Ｗmin ＜ ＤＹi/ＤＹj ＜ Ｗmax
両脚距離条件ｃ２：
Distance(O'i, O'j) ＜ Ｄmax
ＯＢＢの中心から原点までの距離条件ｃ３：
Ｒmin ＜ Ｒi/Ｒj ＜ Ｒmax
ＯＢＢの指向性条件ｃ４：
| |θi| − |θj| | ＜ θmax
【００８９】
上記両脚静止条件ｃ１〜ｃ４を満足する場合は、静止脚ペアを抽出することができる。又、上記両脚静止条件ｃ１〜ｃ４を弱分類器とし、後述するAdaBoost分類器による分類を行うこともできる。
【００９０】
セグメントｉ，ｊ間の幾何形状の相似度の評価は、例えば上記の如く作成したＯＢＢを利用し、最大ハウスドルフ距離でセグメントペアの幾何形状の相似度を評価し、相似度が閾値以上の場合は静止脚ペアを抽出するものであっても良い。最大ハウスドルフ距離を評価する場合、予めセグメントの位置と方位を調整しておく。
【００９１】
図１８は、セグメントＯＢＢの指向性及び原点位置の調整方法を説明する図である。図１８（ａ）は、第１セグメントｉ及び第２セグメントｊを示し、図１８（ｂ）は第１セグメントｉのＯＢＢｉと第２セグメントｊのＯＢＢｊを示す。又、図１８（ｃ）は、図１８（ｂ）のＯＢＢｉ，ＯＢＢｊに座標変換（即ち、回転及び移動）処理を施した結果を示す。図１８中、梨地の丸印はレンジ点を示し、破線は脚の輪郭を示し、大きな黒丸印は重心（ＣＯＧ：Center Of Gravity）を示す。
【００９２】
ＯＢＢの作成で取得した原点座標及び角度θより、計測点Ｐの座標を
【００９３】
【数２】
0005561066.tif 000003
に従って図１８（ｂ）の状態から図１８（ｃ）に示す状態に座標変換する。座標変換によりセグメントｉ，ｊの指向性及び原点位置が統一された状態でハウスドルフ距離を計算することにより、セグメント間の相似度を評価することができる。
【００９４】
調整したＯＢＢペアのハウスドルフ距離による形の相似度を評価することができる。図１９は、ハウスドルフ距離の計算例を説明する図である。図１９（ａ）はハウスドルフ距離による相似度の評価用データを示し、この例では評価用データは単純な２次元曲線である。一方、図１９（ｂ）は目標曲線とのハウスドルフ距離の変化を示し、この例では図１９（ａ）に示す各曲線の形をベースにしたハウスドルフ距離の計算結果である。図１９（ａ）中、太い実線で示す目標曲線との相似度が一番高い曲線を特定することで、調整したＯＢＢペアのハウスドルフ距離による形の相似度を評価することができる。図１９（ａ）中、縦軸はｙ軸を任意単位で示し、横軸はｘ軸を任意単位で示す。図１９（ｂ）中、縦軸は各曲線の目標の曲線とのハウスドルフ距離を示し、横軸は各曲線の識別番号を示す。この例では、図１９（ａ）中、便宜上一番下の曲線から目標曲線を除いて順に識別番号１，２，...，１０が付けられており、目標曲線との相似度は識別番号５の曲線が一番高い。
【００９５】
次に、図１３に示すステップＳ５６，Ｓ５７における移動セグメントペアからの脚の抽出を説明する。移動セグメントペアが脚であることを特定するために、次のような両脚移動条件（又は、両脚運動条件）ｃ５〜ｃ８を設定する。
【００９６】
両脚相隣条件ｃ５：
人間が両脚で移動するため、連続する３フレームにおけるセグメントペアの空間距離Ｄｓが全て一定閾値Ｄmax以下、即ち、Ｄ＜Ｄmaxである。
【００９７】
両脚移動方向条件ｃ６：
連続する３フレームでは脚は同じ方向へ移動する可能性が高いことから、連続する３フレームにおけるセグメントペアの平均速度の角度差が一定閾値ｄθmax 以下である。
【００９８】
両脚速度差条件ｃ７：
人間が両脚で移動するとき、片脚がサポート（Support）、片脚がスイング（Swing）するため、殆どの場合に両脚間に速度差があることから、ＬＲＦ４の３検出サイクルでの平均速度の比率が一定閾値ＶＲ以上である。
【００９９】
両脚垂直距離条件ｃ８：
人間が両脚で移動するとき、両脚の速度方向と垂直方向に沿った距離Ｄｖが一定閾値Ｄｖｔ以下である。
【０１００】
任意の連続する３フレームのセグメントペアに対し、両脚移動条件ｃ５〜ｃ８を満足する場合は、移動セグメントペアを抽出することができる。又、上記両脚移動条件ｃ５〜ｃ８を弱分類器とし、後述するAdaBoost分類器による分類を行うこともできる。
【０１０１】
次に、AdaBoost分類器による脚の分類及び選別を説明する。AdaBoost分類器による脚の分類及び選別は、次のように行うことができる。
【０１０２】
上記両脚静止条件ｃ１〜ｃ４及び両脚移動条件ｃ５〜ｃ８を予め用意したパラメータで判別することも可能であるが、各条件ｃ１〜ｃ８の重みを適切に決めることは難しい。そこで、AdaBoost分類器を利用し、上記条件ｃ１〜ｃ８を弱分類器とし、弱分類器を学習データで学習させることによって、強分類器を作成することもできる。
【０１０３】
AdaBoost分類器は、低精度の分類器、即ち、弱分類器を組み合わせて、高精度の分類器、即ち、強分類器を作成する。図２０は、AdaBoost分類器を用いた脚抽出処理の一例を説明するフローチャートである。図２０中、図１３と同一ステップには同一符号を付し、その説明は省略する。
【０１０４】
図２０において、ステップＳ１５３では、ＮＮ法を用いて取得した２つのセグメントペアの移動特性を上記条件ｃ１〜ｃ８を用いて判断し、処理はステップＳ５４へ進む。ステップＳ５４の判定結果がＹＥＳであると処理はステップＳ１５５−１へ進み、判定結果がＮＯであると処理はステップＳ１５５−２へ進む。ステップＳ１５５−１，Ｓ１５５−２は、AdaBoost分類処理を行うAdaBoost分類ステップＳ１５５を形成する。ステップＳ１５５−１は、両脚幅条件ｃ１を学習する両脚幅分類器、両脚距離条件ｃ２を学習する両脚距離分類器、ＯＢＢの中心から原点までの距離条件ｃ３を学習するＯＢＢの距離・指向性分類器、及びＯＢＢの指向性条件ｃ４を学習する幾何相似度分類器の機能を実現し、これらの分類器を学習させることで静止特徴強分類器の機能を実現する。一方、ステップＳ１５５−２は、両脚相隣条件ｃ５を学習する両脚相隣分類器、両脚移動方向条件ｃ６を学習する両脚移動方向分類器、両脚速度差条件ｃ７を学習する両脚速度差分類器、及び両脚垂直距離条件ｃ８を学習する両脚垂直距離分類器（又は、歩幅距離分類器）の機能を実現し、これらの分類器を学習させることで移動特徴強分類器の機能を実現する。
【０１０５】
図２１は、AdaBoost分類器の学習及びオンライン分類を説明する図である。図２１は、ｎ個の分類器５００−１〜５００−ｎが細い実線で示す学習用サンプルに基づいて細い破線で示すようにオフライン学習を行い、太い実線で示すオンライン入力に基づいて太い破線で示すようにオフライン学習した分類器５００−１〜５００ｎの重みを用いてオンライン分類を行い、分類結果として次式に従って出力Ｈ（ｘ）が計算される例を示す。分類器５００−１〜５００ｎは弱分類器として機能し、弱分類器をオフライン学習させることでオンライン分類を行う際は強分類器として機能させる。次式中、ｈt（ｘ）はオフライン学習用サンプルで示されるルール、αtはオンライン入力で示されるルールｈt（ｘ）の信頼度（confidence）である。オンライン入力は、サービスロボット１１１の通信及び制御部１１５が外部の装置（図示せず）から受信する学習用データである。このように、オンライン入力を用いた分類（又は、識別）を、オンライン分類（又は、オンライン識別）と言う。
【０１０６】
【数３】
0005561066.tif 000004
【０１０７】
説明の便宜上、弱分類器の一例として、両脚静止条件ｃ１〜ｃ４のうち両脚幅条件ｃ１を学習する両脚幅分類器を作成するものとする。この場合、静止しているセグメントペアのＯＢＢi,ＯＢＢjの座標軸に沿った長さ（幅）を計算し、上記の両脚幅条件ｃ１が成立の場合は例えば弱分類器の出力を「１」とし、成立しない場合は例えば弱分類器の出力を「０」とする。ＷminとＷmaxは予め定義しておく閾値であるため、例えばＷmin，ＷmaxをＷmin＝０．６，Ｗmax＝１．４に設定しておくことができる。静止特徴強分類器と移動特徴強分類器を別々学習させ、セグメント（脚の特徴）のオンライン分類を行うことで、学習時間を短縮、或いは、分類の性能を向上することができる。
【０１０８】
次に、人間の二足歩行を図２２と共に説明する。図２２は、人間の二足歩行の一例を示す図である。図２２では、人間の右側と左側が区別し易いように、左手と左脚を黒塗りで示す。又、ＬＲＦ４の床からの設置位置（即ち、高さ）Ｌｓを破線で示す。人間の二足歩行を分析することで、図１３に示すステップＳ５４においてセグメントペアが静止セグメントであるか、或いは、移動セグメントであるかを判別するようにしても良い。
【０１０９】
図２２に示すように、人間の二足歩行は、両脚が床に付いているＤＳ（Double Support）期間と片脚しか床に付いていない（ＳＳ）Single Support期間の繰り返しであることがわかる。二足歩行に特有なＤＳ期間とＳＳ期間の切り替えパターンを抽出することにより、人間の脚の移動状態を抽出することができる。具体的には、ＬＲＦ４の床からの高さＬｓを例えば１ｃｍ〜２ｃｍに設定することで、足首周辺を検出してＤＳ期間及びＳＳ期間の切り替えを観測することができる。ＬＲＦ４の高さＬｓが高すぎるとＳＳ期間の観測が難しくなるので、この例では高さＬｓはＬＲＦ４を配置可能な１ｃｍ〜２ｃｍの範囲に設定されるが、ＳＳ期間を観測可能であれば高さＬｓ（＞０）は１ｃｍより低くても良い。一定時間内（例えば、２秒）に検出される全セグメントを時刻を表すタイムスタンプ付でメモリ１３に保存し、極座標上の角度をインデックス（Index）としてセグメントを関連付けることで、以下に説明する時間及び空間の特徴を計算することができる。
【０１１０】
セグメントサイズの変化の有無は、例えば歩行中に脚（又は、靴）と床の角度に応じてセグメントサイズが変化することから検出可能である。又、ＳＳ→ＤＳ→ＳＳ、或いは、ＤＳ→ＳＳ→ＤＳの切り替えパターンの有無に応じてセグメントペアを分類可能である。例えば、セグメントサイズに変化が無く、ＤＳ期間しか存在しない場合には、セグメントペアが静止セグメントであると分類可能である。一方、例えばセグメントサイズに変化が有るか、或いは、二足歩行パターンが観測された場合には、セグメントペアを移動セグメントであると分類可能である。このようにセグメントペアを静止セグメントと移動セグメントに分類してAdaBoost分類器に渡すことができる。
【０１１１】
表１は、上記の如き二足歩行の判断に用いるセグメントに関するＬＲＦ４の２検出サイクル分のデータを示す。セグメントＩＤ（IDentifier）は、各セグメントを識別するための識別子である。
【０１１２】
【表１】
0005561066.tif 000005
【０１１３】
表１の如き時間列で管理されメモリ１３に保存されたデータより、一定時間内（例えば、０．５秒）観測されているセグメントを軸脚とし、一定範囲（例えば、１ｍ）内に存在する相隣セグメントの有無を判断することにより、ＤＳ期間にあるセグメントペアを静止セグメントとして抽出し、ＳＳ期間とＤＳ期間の間で遷移するセグメントペアを移動セグメントとして抽出することができる。
【０１１４】
従って、ステップＳ６４における脚の物理制限条件を満たしているか否かの判定は、上記セグメントの速度Ｖ、加速度Ａ、速度方向変化、及びＳＳ期間とＤＳ期間の間の遷移の少なくとも１つのパラメータに基づいて行うようにしても良い。
【０１１５】
図２３は、ＳＳ期間とＤＳ期間の間の遷移に基づいてセグメントペアが静止セグメント、或いは、移動セグメントであるかを判断する処理を説明するフローチャートである。
【０１１６】
図２３において、ステップＳ７１では、時刻Tiにおけるセグメントのリスト（以下、セグメントリストと言う）Siを作成し、ＮＮ法に基づいて極座標上の角度をインデックス（Index）としてセグメントを関連付けて新セグメントのセグメントＩＤを発行する。ステップＳ７２では、時刻TiよりTm秒前のセグメントリストSi-mの履歴から位置変動が一定値Dv以下のセグメントＩＤリストStを抽出する。ステップＳ７３では、セグメントＩＤリストStの各セグメントＩＤに対応するセグメント同士の距離Rcを計算する。ステップＳ７４では、計算した距離Rc以下のセグメントペアをＤＳ期間にある静止セグメントであると判断し、セグメントＩＤリストStから削除する。ステップＳ７５では、セグメントＩＤリストStの各セグメントＩＤに対応するセグメントサイズに変化があるセグメントを軸足候補とし、現在時刻の全セグメントリストと距離Rcを計算する。ステップＳ７６では、距離Rc以下のセグメントペアを移動セグメント（即ち、ＳＳ期間からＤＳ期間に遷移している)であると判断し、セグメントリストSiおよびセグメントＩＤリストStから削除する。
【０１１７】
このように、ＳＳ期間とＤＳ期間の間の遷移に基づいてセグメントペアが静止セグメント、或いは、移動セグメントであるかを判断する処理は、ＳＳ期間の脚同士の遮蔽に影響されず、且つ、服の影響（即ち、依存関係）も少ない。又、一歩行サイクル（ＤＳ→ＳＳ→ＤＳ又はＳＳ→ＤＳ→ＳＳ）を観測することで、歩幅及び速度を推定することができる。更に、非常に低速で移動して（歩いて）いる人、或いは、非常に高速で移動して（走って）いる人をフィルタして検出対象が除外することができる。
【０１１８】
図２３に示す処理でセグメントペアが静止セグメント、或いは、移動セグメントであるかを判断する場合、常に脚の連続移動速度を推定することができないため、AdaBoost分類器の移動特徴強分類器の作成方法を修正する必要である。図２４は、ＤＳ期間とＳＳ期間の切り替えパターンを識別するための条件を説明する図である。
【０１１９】
図２４では、説明の便宜上、最初のＤＳ期間ＤＳ１から片脚がスイングしてＳＳ期間ＳＳを経て、次の期間ＤＳ２又はＤｘへ遷移するものとする。図２４において、Ｄｗは脚幅又は両脚間の距離（図２４中、遊脚の着地位置と軸脚の横方向の距離）、Ｌｗは歩幅（図２４中、遊脚の着地位置と軸脚の縦方向の距離）を示す。ＳＳ期間ＳＳから片脚がスイングして次にＤＳ期間ＤＳ２へ遷移した場合は、次の歩幅条件ｃ９、脚幅条件ｃ１０及び着地位置条件ｃ１１が満足されるので、移動セグメントペアが脚であることを特定することができる。
【０１２０】
歩幅条件ｃ９：
最初のＤＳ期間ＤＳ１と、ＳＳ期間からの遷移先の期間とで歩幅Ｌｗの相似度が一定値以上である。
【０１２１】
脚幅条件ｃ１０：
最初のＤＳ期間ＤＳ１と、ＳＳ期間からの遷移先の期間とで脚幅Ｄｗの相似度が一定値以上である。
【０１２２】
着地位置条件ｃ１１：
ＳＳ期間における遊脚が遷移先の期間で着地する際に、ＳＳ期間と軸脚に対して同じ位置関係（例えば、軸脚が左脚であれば着地する遊脚はその右側に位置する右脚である関係）にある。
【０１２３】
一方、ＳＳ期間ＳＳから片脚がスイングして次に期間Ｄｘへ遷移した場合は、上記の歩幅条件ｃ９、脚幅条件ｃ１０及び着地位置条件ｃ１１のうち、着地位置条件ｃ１１が満足されることはないので、移動セグメントペアが脚ではないことを特定することができる。これは、移動セグメントペアが脚の場合、例えば軸脚が左脚であれば着地する遊脚はその左側に位置することはないからである。
【０１２４】
図２５は、作成方法が修正されたAdaBoost分類器を用いた脚抽出処理の一例を説明するフローチャートである。図２５中、図２０と同一ステップには同一符号を付し、その説明は省略する。
【０１２５】
図２５において、ステップＳ２５３では、ＤＳ期間とＳＳ期間の切り替えパターンを検出し、処理はステップＳ５４へ進む。ステップＳ５４の判定結果がＹＥＳであると処理はステップＳ１５５−１へ進み、判定結果がＮＯであると処理はステップＳ１５５−２Ａへ進む。ステップＳ１５５−１，Ｓ１５５−２Ａは、AdaBoost分類処理を行うAdaBoost分類ステップＳ１５５Ａを形成する。ステップＳ１５５−２Ａは、歩幅条件ｃ９を学習する歩幅相似度分類器、脚幅条件ｃ１０を学習する脚幅相似度分類器、及び着地位置条件ｃ１１を学習する着地位置判別分類器の機能を実現し、これらの分類器を学習させることで移動特徴強分類器の機能を実現する。
【０１２６】
このように、本実施例によれば、静止している脚を抽出するために、抽出対象の特徴、即ち、レンジデータのセグメントの特徴の幾何相似度に着目し、相似度条件に基づいた複数の静止特徴弱分類器を作成する。各静止特徴弱分類器を予め用意した学習サンプルで学習させ、学習した各静止特徴弱分類器の重みを用いてセグメントを分類することで、学習した静止特徴弱分類器を静止特徴強分類器として機能させる。
【０１２７】
又、移動している脚を抽出するために、例えば人間の二足走行の特性を分析し、抽出対象特徴、即ち、レンジデータのセグメントの特徴の移動情報に着目し、移動情報に基づいた複数の移動特徴弱分類器を作成する。各移動特徴弱分類器を予め用意した学習サンプルで学習させ、学習した各移動特徴弱分類器の重みを用いてセグメントを分類することで、学習した移動特徴弱分類器を移動特徴強分類器として機能させる。
【０１２８】
更に、上記の静止特徴強分類器と移動特徴強分類器の出力に基づいてセグメントの移動状態を判定することにより、同時に静止又は移動している脚ペアを判別することができる。セグメントの静止及び移動を判別する際には、背景との差分又はフレーム間差分等を使用することなく、計測フレーム間のセグメントの関連付けで各セグメントの移動状態を判別するので、例えば極座標の状態ベクタを利用したＮＮ法での関連付けを行い、移動特性を取得することができる。又、ＬＲＦを足首周辺を検出可能な位置に配置し、二足歩行のＤＳ期間とＳＳ起案の切り替えパターンを着目し、各セグメントの移動状態を判別することもできる。
【０１２９】
本実施例によれば、静止している人の脚と移動している人の脚を確実に抽出することができる。このため、検出対象となる人物の周辺に複数の物体等が存在する比較的混雑した空間においても、人のセグメントを正しく検知することができ、静止時と移動時の脚の特徴が異なってもシームレスに、且つ、安定に脚を抽出することができる。
【０１３０】
（第３実施例）
上記第１実施例では、ＬＲＦ４は、測定の開始、走査時間（又は、走査周期）、測定の終了等の指示に応答して、重力方向と平行な垂直面以外の任意平面の一例であるＸＹ平面を走査するが、本発明の第３実施例においては、ＬＲＦ４はＸＹ平面に対して９０°以外の任意の角度傾斜させた任意平面を走査する。
【０１３１】
尚、上記第１実施例及び以下に説明する第３実施例において、重力方向と平行な垂直面以外の任意平面を走査するのは、直立している人物の脚は概ね重力方向と平行であるため重力方向と平行な垂直面を走査しても人物の脚を検出することは極めて難しいからである。
【０１３２】
図２６は、本発明の第３実施例におけるサービスロボット１のベース部３の一例を示す図である。図２６中、図１と同一部分には同一符号を付し、その説明は省略する。図２６に示す例では、ＬＲＦ４はＸＹ平面に対して角度θ傾斜させた任意走査面を走査する。この例では、ＬＲＦ４の走査面はＸＹ平面に対して下向きに傾斜しているが、上向きに傾斜していても良い。又、角度調整機構６により角度θを可変設定（又は、チルト）可能な構成としても良い。
【０１３３】
任意平面で走査範囲を走査して基準位置から前記走査範囲内の対象物までの距離を測定可能な距離測定装置としてＬＲＦを用いる場合、ＬＲＦは人物の脚を検出するのに適した高さ位置に設けられる。上記角度θが０≦θ＜９０°の場合、ＬＲＦの高さ位置は人物の膝から下腿にかけての部位を検出するのに適した高さ位置に設けられることが望ましく、上記角度θが０＜θ＜９０°の場合、ＬＲＦの走査面はＸＹ平面に対して下向きに傾斜していることが望ましい。ＬＲＦの高さ位置が人物の膝や下腿を検出するのに適した高さ位置に設けられることが望ましい理由は、ＬＲＦから見て同一人物の膝対や下腿対の方が上腿対と比較すると互いを遮蔽する確率が低いからである。
【０１３４】
（第４実施例）
上記第１実施例では、ＬＲＦ４はサービスロボット１に１個設けられているが、ＬＲＦ４を複数設けても良い。本発明の第４実施例においては、ＬＲＦ４はサービスロボット１に２個設けられる。
【０１３５】
図２７は、本発明の第４実施例におけるサービスロボット１のベース部３の一例を示す図である。図２７中、図２６と同一部分には同一符号を付し、その説明は省略する。図２７に示す例では、ＬＲＦ４がサービスロボット１に２個設けられている。２個のＬＲＦ４は、互いに平行な任意平面を走査しても、互いに交差する任意平面を走査しても良い。例えば、図２７において上側のＬＲＦ４の走査角度を角度調整機構６により調整可能な構成とし、且つ、下側のＬＲＦ４は位置が固定されてＸＹ平面を走査する構成としても良い。尚、ＬＲＦ４が２個の場合、サービスロボット１の基準位置は、各々のＬＲＦ４の位置となる。
【０１３６】
２個以上のＬＲＦを用いてサービスロボットの基準位置から対象物までの距離を測定する場合、２個以上のＬＲＦによる２以上の平面における測定結果のマッチングを行うことにより測定結果の精度を向上させることができる。例えば、１個のＬＲＦでは遮蔽等により脚が測定しにくい場合であっても、２個以上のＬＲＦの測定結果のマッチングを行うことで、１個のＬＲＦの走査面では少なくとも一部が遮蔽されている脚であっても他のＬＲＦの走査面における測定結果から脚である確率を、周知のマッチング手法により正確に演算することができる。
【０１３７】
尚、２個以上のＬＲＦを用いる場合、少なくとも１個のＬＲＦはサービスロボットに設け、他のＬＲＦは壁等に固定的に設けても良い。又、少なくとも１個のＬＲＦを設けたサービスロボットを複数用いても良い。これらの場合、言うまでもなく、少なくとも１個のＬＲＦが設けられた１台のサービスロボットは、壁や他のサービスロボットに設けられたＬＲＦの測定結果を無線通信により図６に示す通信部１５等を介して受信すれば、２以上の平面での測定結果のマッチングを行うことができる。これらの場合、複数のＬＲＦで共通に用いるＸＹ座標の原点は、壁等の固定点であっても、基準となる１台のサービスロボットの基準点であっても良い。
【０１３８】
又、同じＸＹ平面を走査する１個のＬＲＦが設けられた２台以上のサービスロボットの測定結果のマッチングを行う場合であっても、２台以上のサービスロボットのＬＲＦは対象物に対して異なる位置から走査しているので、同じＸＹ平面上の異なる位置からの測定結果のマッチングを行うことで、測定結果の精度を向上させることができる。
【０１３９】
更に、第４実施例を上記第２実施例に適用しても良い。この場合、２個のＬＲＦは床と平行で互いに交差しない走査面、即ち、重力方向と略垂直な平面を走査すれば良いため、角度調整機構６は不要である。２個のＬＲＦの床から高さは、例えば１ｃｍ〜２ｃｍの範囲内に設定することで、検出対象となる人物の足首周辺を検出してＤＳ期間及びＳＳ期間の切り替えを観測するようにしても良い。
【０１４０】
（変形例）
言うまでもなく、上記各実施例による人物検出結果を、カメラを用いる人物検出方法等の他の人物検出方法による人物検出結果と組み合わせて人物検出の精度を向上することが可能である。この場合、人物検出環境によらず人物検出の精度を向上できる。
【０１４１】
上記各実施例では、サービスロボットの基準位置から対象物までの距離をＬＲＦを用いて測定しているが、任意平面で二次元に限定された走査範囲を走査して基準位置から前記走査範囲内の対象物までの距離を測定可能な距離測定装置 （ＤＭＥ：Distance Measuring Equipment）であれば、距離を測定する走査装置又は走査手段はＬＲＦ以外の距離測定装置を用いるものであっても良い。
【０１４２】
又、人物検出装置の適用はサービスロボットに限定されるものではなく、人物検出処理を要求するコマンドを人物検出装置に出力し、人物検出装置からの人物検出処理の結果の通知が入力される監視制御部（又は、コンピュータ）を備えた監視システム等へも適用可能である。
【０１４３】
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
重力方向と略垂直な平面で走査範囲を走査して基準位置から前記走査範囲内の対象物までの距離を測定してレンジデータを出力する走査手段と、
前記レンジデータを所定周期でサンプリングしてセグメントを形成し、前記セグメントに基づいて脚の特徴を抽出する抽出手段と、
抽出した特徴の運動特性及び幾何情報に基づいて人物を検出する検出手段を備え、
前記抽出手段は、最短距離近傍法を用いて取得した２つのセグメントペアの移動特性に基づいて、各セグメントペアが静止している静止セグメントを分類する静止特徴強分類器と、各セグメントペアが移動している移動セグメントを分類する移動特徴強分類器を含み、分類されたセグメントの特徴に基づいて前記２つのセグメントペアから脚ペアを抽出する、人物検出装置。
（付記２）
前記抽出手段は、セグメントの特徴の幾何相似度条件に基づいて作成された複数の静止特徴弱分類器を予め用意した学習サンプルで学習させ、学習した各静止特徴弱分類器の重みを用いてセグメントを分類することで学習した静止特徴弱分類器を前記静止特徴強分類器として機能させ、セグメントの特徴の移動情報に基づいて作成された複数の移動特徴弱分類器を予め用意した学習サンプルで学習させ、学習した各移動特徴弱分類器の重みを用いてセグメントを分類することで学習した移動特徴弱分類器を移動特徴強分類器として機能させる、付記１記載の人物検出装置。
（付記３）
前記抽出手段は、前記２つのセグメントペアが脚の物理制限条件を満たしており、且つ、セグメントの移動状態を前記基準位置からの距離Ｒと角度θの極座標で表し、Ｘｉ（Ｒｔ，θｔ）で表される状態からＸｉ＋１（Ｒｔ＋１，θｔ＋１）で表される状態に変化した場合に前記走査手段の検出サイクル間の各セグメントの移動量dＸが距離Ｒと角度θの重みを調整するゲイン行列をＷで表され
【数４】
0005561066.tif 000006
前記移動量ｄＸが一定閾値未満であると前記２つのセグメントは静止セグメントであると判定し、一定閾値以上であると前記２つのセグメントは移動セグメントであると判定する、付記１又は２記載の人物検出装置。
（付記４）
前記抽出手段は、
セグメントｉの有向バウンディングボックス（ＯＢＢ：Oriented Bounding Box）のパラメータとして、ＯＢＢの指向性θi、ＯＢＢのＸ軸のサイズＤＸi、ＯＢＢのＹ軸のサイズＤＹi、ＯＢＢの中心から原点までの距離Ｒi、及びＯＢＢの中心座標Ｏ'を抽出し、
セグメントペアｉ，ｊに対して以下の両脚静止条件ｃ１〜ｃ４を満足するか否かを計算により求め、
両脚幅条件ｃ１：
Ｗmin ＜ ＤＸi/ＤＸj ＜ Ｗmax,  Ｗmin ＜ ＤＹi/ＤＹj ＜ Ｗmax
両脚距離条件ｃ２：
Distance(O'i, O'j) ＜ Ｄmax
ＯＢＢの中心から原点までの距離条件ｃ３：
Ｒmin ＜ Ｒi/Ｒj ＜ Ｒmax
ＯＢＢの指向性条件ｃ４：
| |θi| − |θj| | ＜ θmax
前記両脚静止条件ｃ１〜ｃ４を満足する場合は静止脚ペアを抽出する、付記１乃至３のいずれか１項記載の人物検出装置。
（付記５）
前記抽出手段は、
セグメントの有向バウンディングボックス（ＯＢＢ：Oriented Bounding Box）の作成時に取得した原点座標及び角度θより、計測点Ｐの座標を
【数５】
0005561066.tif 000007
に従って座標変換し、セグメントの指向性及び原点位置が統一された状態でハウスドルフ距離を計算してセグメント間の相似度を評価し、相似度が閾値以上の場合は静止脚ペアを抽出する、付記１乃至３のいずれか１項記載の人物検出装置。
（付記６）
前記抽出手段は、任意の連続する３フレームのセグメントペアに対して以下の両脚移動条件ｃ５〜ｃ８を満足するか否かを計算により求め、
両脚相隣条件ｃ５：
連続する３フレームにおけるセグメントペアの空間距離Ｄｓが全て一定閾値Ｄmax以下
両脚移動方向条件ｃ６：
連続する３フレームにおけるセグメントペアの平均速度の角度差が一定閾値ｄθmax 以下
両脚速度差条件ｃ７：
前記走査手段の３検出サイクルでの平均速度の比率が一定閾値ＶＲ以上
両脚垂直距離条件ｃ８：
両脚の速度方向と垂直方向に沿った距離Ｄｖが一定閾値Ｄｖｔ以下
前記両脚移動条件ｃ５〜ｃ８を満足する場合は移動脚ペアを抽出する、付記４又は５記載の人物検出装置。
（付記７）
前記抽出手段は、両脚が床に付いているＤＳ（Double Support）期間と片脚しか床に付いていない（ＳＳ）Single Support期間の切り替えパターンに基づいて脚の移動状態を抽出する、付記４又は５記載の人物検出装置。
（付記８）
前記判断手段は、抽出した前記特徴の運動特性及び幾何情報に基づいて人物を検出する、付記１乃至７のいずれか１項記載の人物検出装置。
（付記９）
前記走査手段は、レーザレンジファインダ（ＬＲＦ）を有する、付記１乃至８のいずれか１項記載の人物検出装置。
（付記１０）
付記１乃至９のいずれか１項記載の人物検出装置と、
人物検出処理を要求するコマンドを前記人物検出装置に出力し、前記人物検出装置からの人物検出処理の結果の通知が入力されるロボット本体を備えた、サービスロボット。
（付記１１）
付記１乃至９のいずれか１項記載の人物検出装置と、
人物検出処理を要求するコマンドを前記人物検出装置に出力し、前記人物検出装置からの人物検出処理の結果の通知が入力される監視制御部を備えた、監視システム。
（付記１２）
重力方向と略垂直な平面で走査範囲を走査部により走査して基準位置から前記走査範囲内の対象物までの距離を測定してレンジデータを出力する工程と、
前記レンジデータをプロセッサにより所定周期でサンプリングしてセグメントを形成し、前記セグメントに基づいて脚の特徴を前記プロセッサにより抽出する工程と、
抽出した特徴の運動特性及び幾何情報に基づいて前記プロセッサにより人物を検出する工程を含み、
前記抽出する工程は、最短距離近傍法を用いて取得した２つのセグメントペアの移動特性に基づいて、各セグメントペアが静止している静止セグメントを分類する静止特徴強分類器と、各セグメントペアが移動している移動セグメントを分類する移動特徴強分類器を含み、分類されたセグメントの特徴に基づいて前記２つのセグメントペアから脚ペアを抽出する、人物検出方法。
（付記１３）
前記抽出する工程は、セグメントの特徴の幾何相似度条件に基づいて作成された複数の静止特徴弱分類器を予め用意した学習サンプルで学習させ、学習した各静止特徴弱分類器の重みを用いてセグメントを分類することで学習した静止特徴弱分類器を前記静止特徴強分類器として機能させ、セグメントの特徴の移動情報に基づいて作成された複数の移動特徴弱分類器を予め用意した学習サンプルで学習させ、学習した各移動特徴弱分類器の重みを用いてセグメントを分類することで学習した移動特徴弱分類器を移動特徴強分類器として機能させる、付記１２記載の人物検出方法。
（付記１４）
前記抽出する工程は、前記２つのセグメントペアが脚の物理制限条件を満たしており、且つ、セグメントの移動状態を前記基準位置からの距離Ｒと角度θの極座標で表し、Ｘｉ（Ｒｔ，θｔ）で表される状態からＸｉ＋１（Ｒｔ＋１，θｔ＋１）で表される状態に変化した場合に前記走査部の検出サイクル間の各セグメントの移動量dＸが距離Ｒと角度θの重みを調整するゲイン行列をＷで表され
【数６】
0005561066.tif 000008
前記移動量ｄＸが一定閾値未満であると前記２つのセグメントは静止セグメントであると判定し、一定閾値以上であると前記２つのセグメントは移動セグメントであると判定する、付記１２又は１３記載の人物検出方法。
（付記１５）
前記抽出する工程は、両脚が床に付いているＤＳ（Double Support）期間と片脚しか床に付いていない（ＳＳ）Single Support期間の切り替えパターンに基づいて脚の移動状態を抽出する、付記１２乃至１４のいずれか１項記載の人物検出方法。
（付記１６）
コンピュータに、
走査部に指示を出力して重力方向と略垂直な平面で走査範囲を走査して基準位置から前記走査範囲内の対象物までの距離を測定してレンジデータを出力させる走査手順と、
前記レンジデータを所定周期でサンプリングしてセグメントを形成し、前記セグメントに基づいて脚の特徴を抽出させる抽出手順と、
抽出した特徴の運動特性及び幾何情報に基づいて人物を検出させる検出手順
を実行させるためのプログラムであって、
前記抽出手順は、最短距離近傍法を用いて取得した２つのセグメントペアの移動特性に基づいて、各セグメントペアが静止している静止セグメントを分類する静止特徴強分類器と、各セグメントペアが移動している移動セグメントを分類する移動特徴強分類器を含み、分類されたセグメントの特徴に基づいて前記２つのセグメントペアから脚ペアを抽出する、プログラム。
（付記１７）
前記抽出手順は、セグメントの特徴の幾何相似度条件に基づいて作成された複数の静止特徴弱分類器を予め用意した学習サンプルで学習させ、学習した各静止特徴弱分類器の重みを用いてセグメントを分類することで学習した静止特徴弱分類器を前記静止特徴強分類器として機能させ、セグメントの特徴の移動情報に基づいて作成された複数の移動特徴弱分類器を予め用意した学習サンプルで学習させ、学習した各移動特徴弱分類器の重みを用いてセグメントを分類することで学習した移動特徴弱分類器を移動特徴強分類器として機能させる、付記１６記載のプログラム。
（付記１８）
前記抽出手順は、前記２つのセグメントペアが脚の物理制限条件を満たしており、且つ、セグメントの移動状態を前記基準位置からの距離Ｒと角度θの極座標で表し、Ｘｉ（Ｒｔ，θｔ）で表される状態からＸｉ＋１（Ｒｔ＋１，θｔ＋１）で表される状態に変化した場合に前記走査部の検出サイクル間の各セグメントの移動量dＸが距離Ｒと角度θの重みを調整するゲイン行列をＷで表され
【数７】
0005561066.tif 000009
前記移動量ｄＸが一定閾値未満であると前記２つのセグメントは静止セグメントであると判定し、一定閾値以上であると前記２つのセグメントは移動セグメントであると判定する、付記１６又は１７記載のプログラム。
（付記１９）
前記抽出手順は、
セグメントｉの有向バウンディングボックス（ＯＢＢ：Oriented Bounding Box）のパラメータとして、ＯＢＢの指向性θi、ＯＢＢのＸ軸のサイズＤＸi、ＯＢＢのＹ軸のサイズＤＹi、ＯＢＢの中心から原点までの距離Ｒi、及びＯＢＢの中心座標Ｏ'を抽出し、
セグメントペアｉ，ｊに対して以下の両脚静止条件ｃ１〜ｃ４を満足するか否かを計算により求め、
両脚幅条件ｃ１：
Ｗmin ＜ ＤＸi/ＤＸj ＜ Ｗmax,  Ｗmin ＜ ＤＹi/ＤＹj ＜ Ｗmax
両脚距離条件ｃ２：
Distance(O'i, O'j) ＜ Ｄmax
ＯＢＢの中心から原点までの距離条件ｃ３：
Ｒmin ＜ Ｒi/Ｒj ＜ Ｒmax
ＯＢＢの指向性条件ｃ４：
| |θi| − |θj| | ＜ θmax
前記両脚静止条件ｃ１〜ｃ４を満足する場合は静止脚ペアを抽出する、付記１６乃至１８のいずれか１項記載のプログラム。
（付記２０）
前記抽出手順は、
セグメントの有向バウンディングボックス（ＯＢＢ：Oriented Bounding Box）の作成時に取得した原点座標及び角度θより、計測点Ｐの座標を
【数８】
0005561066.tif 000010
に従って座標変換し、セグメントの指向性及び原点位置が統一された状態でハウスドルフ距離を計算してセグメント間の相似度を評価し、相似度が閾値以上の場合は静止脚ペアを抽出する、付記１６乃至１８のいずれか１項記載のプログラム。
（付記２１）
前記抽出手順は、任意の連続する３フレームのセグメントペアに対して以下の両脚移動条件ｃ５〜ｃ８を満足するか否かを計算により求め、
両脚相隣条件ｃ５：
連続する３フレームにおけるセグメントペアの空間距離Ｄｓが全て一定閾値Ｄmax以下
両脚移動方向条件ｃ６：
連続する３フレームにおけるセグメントペアの平均速度の角度差が一定閾値ｄθmax 以下
両脚速度差条件ｃ７：
前記走査部の３検出サイクルでの平均速度の比率が一定閾値ＶＲ以上
両脚垂直距離条件ｃ８：
両脚の速度方向と垂直方向に沿った距離Ｄｖが一定閾値Ｄｖｔ以下
前記両脚移動条件ｃ５〜ｃ８を満足する場合は移動脚ペアを抽出する、付記１９又は２０記載のプログラム。
（付記２２）
前記抽出手順は、両脚が床に付いているＤＳ（Double Support）期間と片脚しか床に付いていない（ＳＳ）Single Support期間の切り替えパターンに基づいて脚の移動状態を抽出する、付記１９又は２０記載のプログラム。
（付記２３）
付記１６乃至２２のいずれか１項記載のプログラムが格納された、コンピュータ読み取り可能な記憶媒体。
【０１４４】
以上、開示の人物検出装置、人物検出方法及びプログラムを実施例により説明したが、本発明は上記実施例に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能であることは言うまでもない。
【符号の説明】
【０１４５】
４      ＬＲＦ
１３      メモリ
１４      タイマ
１１１      サービスロボット
１１２      ＣＰＵ
１１２Ａ      脚抽出部
１１２Ｂ      人検知部
１１５      通信及び制御部
１１７      駆動部
【図１】
0005561066.tif 000012
【図２】
0005561066.tif 000013
【図３】
0005561066.tif 000014
【図４】
0005561066.tif 000015
【図５】
0005561066.tif 000016
【図６】
0005561066.tif 000017
【図７】
0005561066.tif 000018
【図８】
0005561066.tif 000019
【図９】
0005561066.tif 000020
【図１０】
0005561066.tif 000021
【図１１】
0005561066.tif 000022
【図１２】
0005561066.tif 000023
【図１３】
0005561066.tif 000024
【図１４】
0005561066.tif 000025
【図１５】
0005561066.tif 000026
【図１６】
0005561066.tif 000027
【図１７】
0005561066.tif 000028
【図１８】
0005561066.tif 000029
【図１９】
0005561066.tif 000030
【図２０】
0005561066.tif 000031
【図２１】
0005561066.tif 000032
【図２２】
0005561066.tif 000033
【図２３】
0005561066.tif 000034
【図２４】
0005561066.tif 000035
【図２５】
0005561066.tif 000036
【図２６】
0005561066.tif 000037
【図２７】
0005561066.tif 000038