(57)【要約】【課題】  本願は、物体を精度良く検出することができる物体検出装置を提供する。【解決手段】  本願の物体検出装置１０は、２次元走査型の距離計測センサ１２と、距離計測センサの出力に基づいて物体を検出する演算装置と、を備えている。距離計測センサ１２は、計測対象となる物体３６に応じて設定された測定高さＨ０より低い位置ＨＬに設置されている。また、距離計測センサ１２は、距離計測センサ１２がセンサ正面を計測するときの距離計測方向θが水平面Ｐに対して斜め上方を向くように設置されている。【選択図】図７
2011196749.tif 000002
【特許請求の範囲】
【請求項１】
２次元走査型の距離計測センサと、
距離計測センサの出力に基づいて物体を検出する演算装置と、を備えており、
距離計測センサが、計測対象となる物体に応じて設定された測定高さより低い位置に設置され、かつ、距離計測センサがセンサ正面を計測するときの距離計測方向が水平面に対して斜め上方を向くように設置されることを特徴とする物体検出装置。
【請求項２】
演算装置は、
距離計測センサの出力に基づいて検出された物体を記憶する物体記憶部と、
距離計測センサの出力から近接する計測点群を抽出する特徴抽出部と、
物体記憶部に記憶されている物体毎に、抽出された計測点群のうち当該物体の推定存在領域内に存在する１又は複数の計測点群を組み合わせて生成される計測点群の組合せの中から、当該物体と対応付ける１又は複数の計測点群を特定する対応付け部と、
を有することを特徴とする請求項１に記載の物体検出装置。
【請求項３】
演算装置は、特徴抽出部によって抽出された計測点群であって、対応付け部によって物体記憶部に記憶されている物体と対応付けられなかった計測点群を、新規の物体として物体記憶部に記憶させるファイル登録部をさらに有することを特徴とする請求項２に記載の物体検出装置。
【請求項４】
演算装置は、物体記憶部に記憶されている物体毎に、当該物体に対応付けられた計測点群の位置を用いて、当該物体の運動状態を推定する運動推定部をさらに有することを特徴とする請求項２又は３に記載の物体検出装置。
【請求項５】
距離計測センサは、周期的に１走査範囲の距離計測を行い、
演算装置は、距離計測センサの計測周期毎に、特徴抽出部による処理と、対応付け部による処理と、運動推定部による処理を実行し、
対応付け部は、物体記憶部に記憶されている物体毎に、直前の計測周期で運動推定部によって推定された当該物体の運動状態を用いて、当該物体の推定存在領域を算出することを特徴とする請求項４に記載の物体検出装置。
【請求項６】
対応付け部は、運動推定部によって推定される当該物体の速度を平均化した速度を用いて、当該物体の推定存在領域を算出することを特徴とする請求項５に記載の物体検出装置。
【請求項７】
請求項１〜６のいずれか一項に記載の物体検出装置を備えていることを特徴とする移動体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、物体を検出する物体検出装置に関する。
【背景技術】
【０００２】
距離計測センサ（例えば、レーザレンジファインダ等）を利用して物体を検出する物体検出装置が開発されている。物体検出装置に係る従来技術が、例えば、特許文献１〜３に開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−１９１０９５号公報
【特許文献２】特開２００９−１６８５７８号公報
【特許文献３】特開２００８−６５７５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
物体検出装置では、距離計測センサの出力から物体を検出し、その検出した物体を追跡する。しかしながら、従来の技術では、物体を精度良く検出できない場合があり、その結果、物体を追跡できない場合が生じるという問題があった。
【０００５】
本発明は、上記した実情に鑑みてなされたものであり、物体を精度良く検出することができる物体検出装置を提供する。
【課題を解決するための手段】
【０００６】
本願の第１の物体検出装置は、距離計測センサがセンサ正面を計測するときの距離計測方向を水平面に対して斜め上方を向くように設定することで、物体を精度良く検出することを可能とする。すなわち、この種の物体検出装置では、設置スペースの問題等から、距離計測センサを床面の近傍の高さに設置することが多い。例えば、物体検出装置で歩行者を検出する場合、歩行者は本質的に床面に足を付けて移動するため、歩行者を検出し損なうことを防止するためには、距離計測センサで足元の高さを計測することが多い。また、車輌に物体検出装置を装備する場合、構造的もしくは機能的な理由によって、距離計測センサを車体下部に取付けざるを得ないことがある。さらに、小型のロボットに物体検出装置を装備する場合、そもそも低い位置にしか距離計測センサを取付けられない。従来の技術では、距離計測センサがセンサ正面を計測するときの距離計測方向を水平面と平行としていた（すなわち、水平面内で物体の検出を行っていた。）。このため、距離計測センサで人体を計測すると、距離計測センサは人体の足元を計測することとなる。足元は胴体に比べて細く、また、距離計測センサは、センサから遠方になるほど計測点の間隔が広くなる。このため、従来の技術では、距離計測センサから遠方にある人体（物体）を検出し難いという問題があった。
【０００７】
そこで、本願の第１の物体検出装置は、２次元走査型の距離計測センサと、距離計測センサの出力に基づいて物体を検出する演算装置を備える。そして、距離計測センサが、計測対象となる物体に応じて設定された測定高さより低い位置に設置され、かつ、距離計測センサがセンサ正面を計測するときの距離計測方向が水平面に対して斜め上方を向くように設置される。
【０００８】
この物体検出装置では、距離計測センサがセンサ正面を計測するときの距離計測方向が水平面に対して斜め上方を向く。このため、距離計測センサからの距離が離れるのに伴って床面から高い位置にある部位が計測される。したがって、この物体検出装置で人体を検出すると、距離計測センサからの距離が離れるのに伴って胴体に近い部分が計測されることとなる。その結果、人体のような物体を検出し易くなり、物体の検出精度を向上することができる。
【０００９】
上記の物体検出装置においては、距離計測センサがセンサ正面を計測するときの距離計測方向が水平面に対して斜め上方を向くため、距離計測センサで計測される部位が距離計測センサからの距離によって変わる。例えば、人体を検出する場合、距離計測センサの近傍では足元が計測され、距離計測センサの遠方では胴体に近い部分が計測される。このため、同一の物体（人体）であっても、計測された部位が足元であると、１個又は２個の計測点群（クラスタ）として測定され、計測された部位が腰付近であると、１個の胴体を示す計測点群（クラスタ）として測定されたり、胴体と腕などが２個又は３個の計測点群（クラスタ）として測定されたりして、状況によって、計測点群の数は不定となる。
【００１０】
そこで、上記の物体検出装置においては、演算装置が、物体記憶部と、特徴抽出部と、対応付け部を有することが好ましい。物体記憶部は、距離計測センサの出力に基づいて検出された物体を記憶する。特徴抽出部は、距離計測センサの出力から近接する計測点群（クラスタ）を抽出する。対応付け部は、物体記憶部に記憶されている物体毎に、抽出された計測点群のうち当該物体の推定存在領域内に存在する１又は複数の計測点群を組み合わせて生成される計測点群の組合せの中から、当該物体と対応付ける１又は複数の計測点群を特定する。
【００１１】
このような構成によると、物体記憶部に記憶されている各物体に対して、その物体の推定存在領域内に存在する１又は複数の計測点群（クラスタ）を種々に組合せ、それら組合せの中から物体と対応する計測点群（クラスタ）を特定する。このため、物体から検出される計測点群（クラスタ）の数が変化（例えば、１個→２個，２個→１個）しても、その変化に対応することができる。
【００１２】
上記の物体検出装置においては、演算装置は、特徴抽出部によって抽出された計測点群であって、対応付け部によって物体記憶部に記憶されている物体と対応付けられなかった計測点群を、新規の物体として物体記憶部に記憶させるファイル登録部をさらに有することが好ましい。このような構成によると、新規に検出された計測点群が新たな物体として物体記憶部に登録され、その物体のその後の追跡が可能となる。
【００１３】
上記の物体検出装置においては、演算装置は、物体記憶部に記憶されている物体毎に、当該物体に対応付けられた計測点群の位置を用いて、当該物体の運動状態（物体の位置や速度）を推定する運動推定部をさらに有することが好ましい。
【００１４】
また、上記の物体検出装置においては、距離計測センサは、周期的に１走査範囲の距離計測を行い、演算装置は、距離計測センサの計測周期毎に、特徴抽出部による処理と、対応付け部による処理と、運動推定部による処理を実行するように構成することができる。この場合に、対応付け部は、物体記憶部に記憶されている物体毎に、直前の計測周期で運動推定部によって推定された当該物体の運動状態を用いて、当該物体の推定存在領域を算出することが好ましい。このような構成によると、直前の計測周期で得られた計測結果から現在の物体の推定存在領域を算出するため、物体を好適に追跡することができる。
【００１５】
上記の第１の物体検出装置においては、対応付け部は、運動推定部によって推定される当該物体の速度を平均化した速度を用いて、当該物体の推定存在領域を算出することが好ましい。物体によっては、その移動速度が周期的に振動するものがある。例えば、人が歩行する場合、人の歩行速度は周期的に振動する。かかる場合に、周期的に振動する速度をそのまま用いて物体の推定存在領域を算出すると、算出された推定存在領域が実際の存在領域から大きくずれることがある。このため、推定される物体の速度を平均化した速度を用いて推定存在領域を算出することで、物体（人体）を精度良く追跡することができる。
【００１６】
また、本願の第２の物体検出装置は、距離計測センサで計測される物体の計測点群（クラスタ）の数が変化する場合であっても、好適に物体を追跡することができる技術を提供する。すなわち、上述したように、観測する物体によっては、距離計測センサが計測する部位が変化すると、計測される計測点群（クラスタ）の数が変化することがある。従来の技術では、計測対象を「脚」や「胴」などの特定の部位でモデル化しているため、物体の計測する部位が途中で変化すると、物体を認識できなくなることがある。
【００１７】
そこで、本願の第２の物体検出装置は、走査型の距離計測センサ（二次元走査型に限定されない。）と、距離計測センサの出力に基づいて検出された物体を記憶する物体記憶部と、距離計測センサの出力から近接する計測点群を抽出する特徴抽出部と、物体記憶部に記憶されている物体毎に、抽出された計測点群のうち当該物体の推定存在領域内に存在する１又は複数の計測点群を組み合わせて生成される計測点群の組合せの中から、当該物体と対応付ける１又は複数の計測点群を特定する対応付け部を有する。
【００１８】
この物体検出装置では、物体記憶部に記憶されている物体に対して、その物体の推定存在領域内に存在する１又は複数の計測点群を種々に組合せ、それら組合せの中から物体と対応する計測点群を特定する。このため、物体から検出される計測点群（クラスタ）の数が変化しても、その変化に対応することができる。
【００１９】
また、本願の第３の物体検出装置は、観測される物体の移動速度が周期的に振動する場合であっても、その物体を精度良く追跡することを可能とする。すなわち、観測される物体を追跡するためには、直前の計測周期で得られた物体の速度から、現在の物体の位置を推定する必要がある。人が歩行するときのように、計測される物体の移動速度が周期的に振動している場合、直前の計測周期で得られた速度をそのまま用いて物体の位置を推定すると、推定された位置が実際の位置から大きく異なることになる。
【００２０】
そこで、本願の第３の物体検出装置は、走査型の距離計測センサ（二次元走査型に限定されない。）と、物体記憶部と、特徴抽出部と、対応付け部と、運動推定部を有している。物体記憶部は、距離計測センサの出力に基づいて検出された物体を記憶する。特徴抽出部は、距離計測センサの出力から近接する計測点群を抽出する。対応付け部は、物体記憶部に記憶されている物体毎に、抽出された計測点群の中から、当該物体と対応付ける１又は複数の計測点群を特定する。運動推定部は、物体記憶部に記憶されている物体毎に、当該物体に対応付けられた計測点群の位置から、当該物体の運動状態を推定する。距離計測センサは、周期的に１走査範囲の距離計測を行う。特徴抽出部と対応付け部と運動推定部は、計測周期毎に各処理を実行する。対応付け部は、物体記憶部に記憶されている物体毎に、直前の計測周期で運動推定部によって推定された当該物体の速度の平均値を用いて、当該物体の推定存在領域を算出する。
【００２１】
この物体検出装置では、直前の計測周期で運動推定部によって推定された当該物体の速度の平均値を用いて、物体の推定存在領域を算出する。このため、計測される物体の移動速度が周期的に振動していても、その物体を精度良く追跡することができる。
【００２２】
上述した物体検出装置は、移動体（例えば、車両、移動ロボット、移動台車等）に装備することができる。これによって、移動体は障害物等を検出しながら安全に移動することができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の一実施例に係る物体検出装置の全体構成を示すブロック図。
【図２】物体検出装置の全体の処理手順を示すフローチャート。
【図３】対応付け処理（図２のステップＳ１４）の手順を示すフローチャート。
【図４】近接クラスタ候補抽出処理（図３のステップＳ２２）の手順を示すフローチャート。
【図５】対応付けクラスタ候補抽出処理（図３のステップＳ２４）の手順を示すフローチャート。
【図６】対応付けクラスタ決定処理（図３のステップＳ２８）の手順を示すフローチャート。
【図７】レーザレンジファインダの取付け状態を説明するための図。
【図８】クラスタを抽出する処理を説明するための図。
【図９】推定存在領域を算出する手順を説明するための図。
【図１０】２つのクラスタを統合した状態を示す図。
【図１１】２人の歩行者のすれ違う場合を例にして、対応付け部の処理を説明するための図（その１）。
【図１２】２人の歩行者のすれ違う場合を例にして、対応付け部の処理を説明するための図（その２）。
【図１３】複数の近接クラスタ候補から対応付ける近接クラスタ候補を選択する処理を説明するための図。
【図１４】レーザレンジファインダで人の歩行を計測した状態を示す図。
【図１５】レーザレンジファインダで測定される人の歩行速度と時間の関係を示すグラフ（その１）。
【図１６】レーザレンジファインダで測定された人の歩行速度と時間の関係を示すグラフ（その２）。
【発明を実施するための形態】
【００２４】
本発明の一実施例に係る物体検出装置１０について、図面を参照しながら説明する。図１に示すように、本実施例の物体検出装置１０は、レーザレンジファインダ（以下、ＬＲＦという）１２と、演算装置２０によって構成されている。ＬＲＦ１２と演算装置２０は、通信線によって接続されており、ＬＲＦ１２から出力される信号が演算装置２０に入力されるようになっている。
【００２５】
ＬＲＦ１２は、２次元走査型の距離計測センサである。ＬＲＦ１２は、レーザ発光部を回転させ、レーザ発光部から照射されるレーザ光が横切る平面（計測面）上に存在する物体との距離を測定する。具体的には、ＬＲＦ１２は、照射したレーザ光の反射光を検出し、レーザ光を照射してから反射光を検出するまでの時間で物体との距離を計測する。レーザ光を照射する平面（計測面）は一定とされ、レーザ光を照射する方向は設定された角度範囲内を一定の角速度で変化する。従って、ＬＲＦ１２は、計測面内の設定された角度範囲を所定の角度間隔で距離計測を行う。このため、ＬＲＦ１２からの距離が近いと隣接する計測点間の間隔は短く（計測密度が高く）、ＬＲＦ１２からの距離が遠くなると計測点間の間隔は長くなる（計測密度が低くなる）。このようなＬＲＦ１２としては、例えば、ＳＩＣＫ社製のＬＭＳ２００や、北陽電機株式会社製のＵＴＭ−３０ＬＸを用いることができる。
【００２６】
図７に示すように、ＬＲＦ１２は、計測対象３６を計測するのに適した高さＨ０（測定高さ）よりも低い高さＨＬに設置される。測定高さＨ０は、計測対象３６に応じて設定される。例えば、計測対象３６が人である場合、ＬＲＦ１２で人を計測した時に多くの計測点が得られる高さ（例えば、胴部、胸部、肩部等）に測定高さＨ０が設定される。また、ＬＲＦ１２がその正面を計測するときの計測方向Ｓが水平面Ｐに対して上向きの角度θ（計測面Ｓと水平面Ｐとのなす角（以下、取付角度という））となるようにＬＲＦ１２が設置される。取付角度θは、ｔａｎθ＝（Ｈ０−ＨＬ）／Ｌを満足するように設定することができる。ここで、Ｌは、ＬＲＦ１２で測定したい最長測定距離（＜ＬＲＦ１２の測定可能距離）である。このため、ＬＲＦ１２の取付角度θは、設置高さＨＬが決まると、測定対象３６の測定高さＨ０と、ＬＲＦ１２で測定したい最長測定距離Ｌにより決定することができる。
【００２７】
演算装置２０は、ＬＲＦ１２の出力に基づいて、物体を検出する処理を実行する。演算装置２０は、例えば、ＣＰＵ，ＲＯＭ，ＲＡＭ等を備えたコンピュータによって構成することができる。演算装置２０は、取付位置情報３０と、クラスタ記憶部３２と、物体記憶部３４を記憶している。取付位置情報３０は、ＬＲＦ１２の絶対座標系における取付位置（ｘ，ｙ，ｚ）及び取付角度θを記憶している。クラスタ記憶部３２は、ＬＲＦ１２を１走査することによって得られた計測点群の中から抽出された物体候補となる計測点群（以下、クラスタという）の絶対座標系の位置（ｘ，ｙ）を記憶する。物体記憶部３４は、検出された物体の位置（ｘ，ｙ）と大きさｄ０と速度（ｖｘ，ｖｙ）を記憶する。
【００２８】
また、演算装置２０は、座標変換部２２と、特徴抽出部２４と、対応付け部２６と、運動推定部２８を備えている。座標変換部２２は、ＬＲＦ１２で計測された計測点までの距離と、記憶されている取付位置情報３０に基づいて、計測点の絶対座標系の位置（ｘ，ｙ）を算出する。特徴抽出部２４は、ＬＲＦ１２を１走査することによって得られた計測点群の中から、近接する計測点の塊りである「クラスタ」を抽出する。対応付け部２６は、特徴抽出部２４で抽出されたクラスタを、物体記憶部３４に記憶されている物体と対応付ける。運動推定部２８は、物体と対応付けられたクラスタの位置（ｘ，ｙ）を用いて、物体の速度（ｖｘ，ｖｙ）を推定する。なお、演算装置２０で得られた検出結果は、外部装置に出力することができるようになっている。上述した演算装置２０の各部２２，２４，２６，２８の処理については、後で詳述する。
【００２９】
次に、上述した物体検出装置１０で行われる処理を、図２〜６のフローチャートに従って説明する。物体検出装置１０は、所定の計測周期毎に、図２に示すステップＳ１０〜Ｓ１６の処理を繰り返し実行する。これによって、観測領域内にある物体の検出と、検出された物体の追跡が行われる。
【００３０】
図２に示すように、物体検出装置１０は、まず、ＬＲＦ１２を１走査することで、計測面内に存在する物体までの距離を計測する（ステップＳ１０）。すなわち、計測面内に物体が存在する場合は、その物体から反射されたレーザ光をＬＲＦ１２で検出し、ＬＲＦ１２からその物体までの距離を計測する（すなわち、計測点までの距離を取得する。）。一方、計測面内に物体が存在しない場合は、反射光をＬＲＦ１２で検出することができず、そのレーザ光を照射した方向については計測点なしとする。ＬＲＦ１２で計測された距離データは、演算装置２０の座標変換部２２に入力される。座標変換部２２は、ＬＲＦ１２から入力された距離データと、取付位置情報３０に記憶されている情報（すなわち、ＬＲＦ１２の絶対座標系における取付位置（ｘ，ｙ，ｚ）及び取付角度θ）とから、ＬＲＦ１２で計測された計測点の絶対座標系における位置（ｘ，ｙ）を算出する。なお、本実施例では、計測点の位置を２次元データ（ｘ，ｙ）に変換することで、その後の計算量を少なくしている。
【００３１】
次に、演算装置２０は、ステップＳ１０の処理で得られた計測点のデータから、物体の候補となるクラスタを抽出する（ステップＳ１２）。クラスタを抽出する処理の一例を、図８を参照して説明する。図８に示すようなＬＲＦ１２の走査によって計測点３８ａ〜３８ｇが得られた場合を考える。この場合、計測点３８ｂと計測点３８ｃとの距離と、計測点３８ｅと計測点３８ｆとの距離は、他の隣接する計測点間の距離（例えば、計測点３８ａと計測点３８ｂとの距離等）よりも極めて大きい。このため、計測点３８ｂと計測点３８ｃの間に物体の境界があり、計測点３８ｅと計測点３８ｆの間に物体の境界があると判断することができる。その一方、他の計測点間の間には物体の境界がないと判断することができる。このため、計測点３８ａ，３８ｂで１つのクラスタと判断され、計測点３８ｃ〜３８ｅで１つのクラスタと判断され、計測点３８ｆ，３８ｇで１つのクラスタと判断される。なお、このようなクラスタ抽出処理は、例えば、「Ｌｏｃａｌ  Ｍｉｎｉｍａ法」などの名称で知られている。上記のクラスタ抽出処理をステップＳ１０で得られた計測点群に対して行うことで、ＬＲＦ１２を１走査することによって得られた計測点群の中から、計測面内に存在する物体の候補となるクラスタが抽出される。抽出されたクラスタは、クラスタ記憶部３２に記憶される。クラスタ記憶部３２には、クラスタ毎に、そのクラスタを構成する各計測点の位置（ｘ，ｙ）が記憶される。
【００３２】
クラスタが抽出されると、演算装置２０は、抽出したクラスタと、物体記憶部３４に記憶されている物体との対応付け処理を行う（ステップＳ１４）。対応付け処理の詳細を、図３〜６に基づいて説明する。
【００３３】
図３に示すように、演算装置２０は、物体記憶部３４に記憶されている物体の中から１つの物体を選択する（ステップＳ２０）。すなわち、物体記憶部３４には、前回の計測周期（ステップ）までの処理（図２のステップＳ１０〜Ｓ１８）によって検出されている物体が記憶されている。このため、ステップＳ２０の処理では、物体記憶部３４に記憶されている物体の中から一の物体を選択する。
【００３４】
次に、演算装置２０は、ステップＳ２０で選択した物体と対応付ける候補となる近接クラスタ候補を抽出する処理を実行する（ステップＳ２２）。ステップＳ２２の近接クラスタ候補の抽出処理の詳細を、図４を参照して説明する。
【００３５】
図４に示すように、演算装置２０は、まず、ステップＳ２０で選択した物体の推定存在領域を算出する（ステップＳ３０）。すなわち、物体記憶部３４には、直前の計測周期（ステップ）において推定した物体の位置（ｘ，ｙ）と速度（ｖｘ，ｖｙ）と大きさｄ０が記憶されている。ステップＳ３０では、これらの情報を用いて、今回の計測周期で物体が存在すると推定される存在領域を算出する。図９を参照して具体的に説明する。図９に示す例では、直前の計測周期において、物体が円形状領域４０に存在し、その大きさはｄ０であり、速度ベクトルｖを有している。かかる場合に、現在の物体は、領域４０を速度ベクトルｖの方向に速度ベクトルｖの大きさに応じた距離だけシフトした位置４３を中心とし、その位置４３の前後左右にある程度の幅を持った領域に存在していると考えられる。また、物体の位置は、進行方向に大きくぶれる可能性がある一方で、進行方向に垂直な方向のぶれは小さいと考えられる。このため、本実施例では、推定存在領域４２は、速度ベクトルｖと平行な方向に長軸ｄＬを有する楕円形状として算出される。すなわち、推定存在領域４２は、物体の進行方向に大きな幅ｄＬを有する一方で、進行方向と垂直な方向に小さな幅ｄＳを有する。
【００３６】
推定存在領域４２を算出する具体的な方法としては、物体の速度ベクトルを用いてアドホックに楕円の大きさを決定する方法や、物体の速度とそのばらつき（すなわち、標準偏差）を用いて楕円を生成する方法がある。標準偏差を用いて推定存在領域４２を決定する場合は、例えば、図９の長軸ｄＬをｄ０＋２×ｒｍ＋Ｓ×ＳＤｖｘと決定し、短軸ｄＳをｄ０＋２×ｒｍ＋Ｓ×ＳＤｖｙと決定することができる。ここで、ｄ０は物体の直径であり、ｒｍは推定存在領域を拡張するためのマージンを含んだ半径であり、Ｓは係数、ＳＤｖｘは物体の進行方向の速度の標準偏差であり、ＳＤｖｙは物体の進行方向と直交する方向の速度の標準偏差である。
【００３７】
次に、演算装置２０は、ステップＳ１２で抽出したクラスタ（物体候補）の中から、一のクラスタを選択する（ステップＳ３２）。すなわち、クラスタ記憶部２３に記憶されているクラスタの中から、一のクラスタを選択する。
【００３８】
一のクラスタを選択すると、演算装置２０は、選択したクラスタの大きさが適切か否かを判断する（ステップＳ３４）。すなわち、選択したクラスタが物体として適切な大きさでない場合（例えば、ＬＲＦ１２で壁が検出されている場合）は、そのクラスタを物体候補とすることは適切ではない。このため、まず、選択したクラスタの大きさを算出し、その算出した大きさからクラスタが過大であるかないかを判断する。クラスタの大きさの指標には、例えば、クラスタを構成する各計測点が包含される円領域又は楕円領域を決定し、その円領域の直径や楕円領域の長軸の長さを用いることができる。そして、これらの数値が設定値を超えているか否かで判断することができる。あるいは、クラスタを構成する各計測点が包含される円領域の直径又は楕円領域の長軸と、ステップＳ２０で選択した物体の大きさとを比較し、その差が設定値を超える場合を、クラスタの大きさが適切でないと判断するようにしてもよい。
【００３９】
選択したクラスタが大き過ぎる場合（ステップＳ３４でＮＯ）はステップＳ４０に進み、選択したクラスタが大き過ぎない場合（ステップＳ３４でＹＥＳ）は、演算装置２０は、ステップＳ３０で算出した推定存在領域に、ステップＳ３２で選択したクラスタの中心が位置するか否かを判断する（ステップＳ３６）。すなわち、選択したクラスタを構成する各計測点が包含される円領域又は楕円領域の中心が、ステップＳ３０で算出した推定存在領域内に位置するか否かを判断する。
【００４０】
選択したクラスタの中心が推定存在領域内に位置しない場合（ステップＳ３６でＮＯ）は、その選択したクラスタはステップＳ２０で選択した物体とは関係ないと判断されるため、対応付け部２６はそのままステップＳ４０に進む。一方、選択したクラスタの中心が推定存在領域内に位置する場合（ステップＳ３６でＹＥＳ）は、選択したクラスタがステップＳ２０で選択した物体である可能性がある。このため、その選択したクラスタを、ステップＳ２０で選択した物体の近接クラスタ候補として記憶する（ステップＳ３８）。
【００４１】
ステップＳ４０に進むと、演算装置２０は、ステップＳ１２で抽出した全てのクラスタについて、上述したステップＳ３４〜ステップＳ３８までの処理を実行したか否かを判定する（ステップＳ４０）。ステップＳ１２で抽出した全てのクラスタについてステップＳ３４〜ステップＳ３８までの処理を実行していない場合（ステップＳ４０でＹＥＳ）は、ステップＳ３２に戻ってステップＳ３２からの処理を繰り返す。これによって、ステップＳ２０で選択した物体に対して、ステップＳ１２で抽出された全てのクラスタとの関連性が評価され、ステップＳ２０で選択された物体である可能性のあるクラスタが抽出される。一方、ステップＳ１２で抽出した全てのクラスタについてステップＳ３４〜ステップＳ３８までの処理を実行している場合（ステップＳ４０でＹＥＳ）は、そのままクラスタ候補抽出処理を終了し、図３のステップＳ２４に進む。
【００４２】
ステップＳ２４に進むと、演算装置２０は、ステップＳ２２の処理で抽出された近接クラスタ候補の中から、ステップＳ２０で選択された物体と対応付けられる可能性の高いクラスタ又はクラスタの組合せによる候補（すなわち、当該物体をＬＲＦ１２によって観測した部位である可能性の高いクラスタ又はクラスタの組合せ）を抽出する処理を実行する。ステップＳ２４の対応付けクラスタ候補抽出処理の詳細を、図５を参照して説明する。
【００４３】
図５に示すように、まず、演算装置２０は、ステップＳ２０で選択された物体について、近接クラスタ候補が記憶されているか否かを判断する（ステップＳ５０）。上述したステップＳ２２の処理で近接クラスタ候補が抽出されていない場合（ステップＳ５０でＮＯ）は、演算装置２０は、ステップＳ２０で選択された物体が今回の計測周期（ステップ）で計測されなかったと判断し、ステップＳ６６に進む。ステップＳ６６では、演算装置２０は、対応付けられるクラスタが複数周期に亘って検出されていなかったか否かを判断する。対応付けられるクラスタが検出されていないことが複数周期に亘って連続していない場合（ステップＳ６６でＮＯ）は、そのまま対応付けクラスタ候補抽出処理を終了する。対応付けられるクラスタが検出されていないことが複数周期に亘って連続する場合（ステップＳ６６でＹＥＳ）は、ステップＳ２０で選択された物体がＬＲＦ１２の観測領域から消えたと判断し、物体記憶部３４よりその物体を削除し（ステップＳ６８）、対応付けクラスタ候補抽出処理を終了する。これによって、ＬＲＦ１２の観測領域から消えた物体が、いつまでも物体記憶部３４に記憶され続けることが防止される。
【００４４】
一方、上述したステップＳ２２の処理で近接クラスタ候補が抽出されている場合（ステップＳ５０でＹＥＳ）は、その抽出されている近接クラスタを種々に組合せて近接クラスタ組合せ候補を作成する（Ｓ５２）。例えば、３個の近接クラスタが抽出されている場合、１個の近接クラスタによって構成される３通りの組合せと、２個の近接クラスタによって構成される３通りの組合せと、３個の近接クラスタによって構成される１通りの組合せを作成する。なお、近接クラスタ組合せ候補を作成する際には、各組合せ候補を構成する近接クラスタの最大値を制限しておくことができる。例えば、人の脚と胴を検出する場合であれば、最大値を２とすることができる。この場合は、１個の近接クラスタによって構成される組合せと、２個の近接クラスタによって構成される組合せが作成される。
【００４５】
次いで、演算装置２０は、ステップＳ５２で作成した近接クラスタ組合せ候補の中から、一の近接クラスタ組合せ候補を選択する（Ｓ５４）。そして、選択した近接クラスタ組合せ候補の大きさが適切か否かを判断する（Ｓ５６）。すなわち、選択した近接クラスタ組合せ候補を構成する各クラスタを包含する円を決定し、その円の直径が設定値を超えるか否かで判断する。具体的には、図１０に示すように、近接クラスタ組合せ候補が２つのクラスタ４４，４６で構成されている場合は、これらのクラスタ４４，４６を包含する円４８を決定し、この円４８の直径が設定値を超えるか否かを判断する。
【００４６】
なお、本実施例では、近接クラスタ組合せ候補の大きさと設定値とを比較して、近接クラスタ組合せ候補の大きさが適切か否かを判断したが、これ以外の方法によって、近接クラスタ候補の大きさが適切か否かを判断するようにしてもよい。例えば、近接クラスタ組合せ候補の大きさと物体の大きさとを比較し、両者の差が大きい場合には、近接クラスタ組合せ候補の大きさが適切でないと判断するようにしてもよい。このような判断をすることで、誤った近接クラスタ組合せ候補が物体に対応付けられることを防止することができる。
【００４７】
選択した近接クラスタ組合せ候補の大きさが適切でない場合（ステップＳ５６でＮＯ）は、ステップＳ６０に進む。選択した近接クラスタ組合せ候補の大きさが適切である場合（ステップＳ５６でＹＥＳ）は、演算装置２０は、ステップＳ２０で選択した物体の推定存在領域の中心（図９に示す例では、楕円４２の中心４３）と、近接クラスタ組合せ候補の中心（図１０に示す例では、円４８の中心４９）との距離（すなわち、評価指標）を算出する（ステップＳ５８）。
【００４８】
ステップＳ６０に進むと、ステップＳ５２で作成された全ての近接クラスタ組合せ候補について、上述したステップＳ５６又はＳ５８の処理（距離算出）を行っているか否かを判断する。そして、全ての近接クラスタ組合せ候補についてＳ５６又はＳ５８の処理を行っていない場合（ステップＳ６０でＮＯ）は、ステップＳ５４に戻って、ステップＳ５４からの処理を繰り返す。これによって、作成された全ての近接クラスタ組合せ候補に対して、その大きさが評価され、大きさが適切なものについては中心間の距離が算出される。
【００４９】
全ての近接クラスタ組合せ候補についてＳ５６又はＳ５８の処理を行っている場合（ステップＳ６０でＹＥＳ）は、演算装置２０は、ステップＳ５８で算出した距離が最も小さくなる近接クラスタ組合せ候補を物体と対応付ける（ステップＳ６２）。これによって、対応付けクラスタ候補抽出処理が終了する。
【００５０】
なお、ステップＳ５８及びＳ６２の処理を行う際は、物体の速度ベクトルの分散の逆数を考慮して、対応付ける近接クラスタ組合せ候補を決めることができる。すなわち、物体の速度は、進行方向に対してはバラツキが大きく、進行方向と直交する方向に対してはバラツキが小さいことが多い。このため、進行方向の距離については、進行方向の速度の分散（バラツキ）の逆数を考慮することで、その値を小さく評価する。一方、進行方向と直交する方向の距離については、進行方向の速度の分散（バラツキ）の逆数を考慮することで、その値を大きく評価する。そして、両者を足し合わせて、その値がもっとも小さくなるものを選択すればよい。例えば、図１３（ａ）は、歩行者の推定位置（楕円の中心）の前方に、踏み出した歩行者の足を計測したクラスタ６８ｂが存在し、側方に何らかの障害物を計測したクラスタ６８ａが存在している状況を示している。この場合に、物体（歩行者）の速度ベクトルの分散を考慮しないと、物体６６に対応付けるクラスタはクラスタ６８ａとなる。一方、図１３（ｂ）に示すように、物体の速度ベクトルの分散の逆数を考慮すると、物体６６に対応付けるクラスタはクラスタ６８ｂとなる。移動中の歩行者の速度を、観測されたクラスタの位置から求める場合、脚の踏み出し、踏み下ろしなどによって、進行方向の速度のバラツキが大きい。このため、このバラツキを考慮することで、ステップＳ５８及びＳ６２の判定精度を高めることができる。
【００５１】
また、物体の大きさと近接クラスタ組合せ候補の大きさの相違を評価関数の一つに入れるようにしてもよい。すなわち、近接クラスタ組合せ候補を構成するクラスタの組合せによっては、推定存在領域の中心との距離が短くなる場合があり、その結果、誤った近接クラスタ組合せ候補が対応付けられることがある。このため、物体の大きさと近接クラスタ組合せ候補の大きさの相違を評価関数の一つに入れることで、誤った対応付けを防止することができる。
【００５２】
ここで、図１１，１２を用いて、対応付けクラスタ候補の抽出処理を具体的に説明する。図１１は、二人の人間がすれ違うときにＬＲＦ１２で計測される計測点の状態を示している。図中、物体（歩行者）５０，５２は前回のステップで検出されたものであり、領域５３内の４つのクラスタは今回のステップで検出されたものである。また、領域５４は物体５０の推定存在領域であり、領域５６は物体５２の推定存在領域である。
【００５３】
図１２に示すように、演算装置２０は、物体５０の推定存在領域５４に存在する近接クラスタ候補から、近接クラスタ組合せ候補を作成する。推定存在領域５４には３つの近接クラスタ候補が存在するため、近接クラスタ組合せ候補は（ａ）〜（ｇ）の７通りとなる。近接クラスタ組合せ候補が作成されると、次いで、（ａ）〜（ｇ）のそれぞれについて、その近接クラスタ候補の中心と推定存在領域５４の中心との距離ｄが計算される。そして、最も距離ｄが小さくなる近接クラス組合せ候補（ｆ）が物体５０と対応付けられる。物体５２については、物体５０と同様に処理することができる。
【００５４】
なお、上述した説明から明らかなように、物体５０は、前回のステップでは１つのクラスタとして検出されているが、今回のステップでは２つのクラスタとして検出される。本実施例では、推定存在領域５４内に存在する近接クラスタ候補からそれらの組合せを作成し、作成した組合せのそれぞれについて評価する。このため、物体から計測されるクラスタの数が変化しても、その変化に対応することができる。
【００５５】
対応付けクラスタ候補抽出処理が終了すると、図３のステップＳ２６に進んで、物体記憶部３４に記憶されている物体の全てについて、ステップＳ２２（近接クラスタ候補抽出処理）とステップＳ２４（対応付けクラスタ候補抽出処理）を実行しているか否かを判定する（ステップＳ２６）。全ての物体について処理を実行していない場合（ステップＳ２６でＮＯ）は、ステップＳ２０に戻って、ステップＳ２０からの処理が実行される。これによって、全ての物体について、対応付けられる近接クラスタ組合せ候補が存在するか否かが判定されることとなる。全ての物体について処理を実行している場合（ステップＳ２６でＹＥＳ）は、対応付けクラスタ決定処理を実行する（ステップＳ２８）。
【００５６】
ステップＳ２８の対応付けクラスタ決定処理を、図６を参照して説明する。図６に示すように、まず、ステップＳ１２でクラスタ記憶部３２に記憶されたクラスタの中から１のクラスタを選択する（ステップＳ７０）。次いで、ステップ７０で選択したクラスタに、ステップＳ１４の処理により対応付けられた物体が存在するか否かを判定する（ステップＳ７２）。対応付けられた物体が存在しない場合（ステップＳ７２でＮＯ）は、ステップＳ７０で選択されたクラスタを、新規の物体として物体記憶部３４に登録し（ステップＳ７６）、ステップＳ８０に進む。
【００５７】
一方、対応付けられた物体が存在する場合（ステップＳ７２でＹＥＳ）は、ステップＳ７０で選択したクラスタに対応付けられている物体のリストを作成する（ステップＳ７３）。すなわち、ステップＳ１２，Ｓ１４では、物体を選択して、その選択した物体にクラスタを対応付けていくため、一のクラスタが複数の物体に対応付けられている場合がある。このため、まず、クラスタ毎に、そのクラスタが対応付けられている物体をリストアップする。
【００５８】
次いで、演算装置２０は、リストアップされた物体の中から一の物体を、最終的に対応付ける物体として決定する（ステップＳ７４）。対応付ける物体を最終的に決定する方法としては、例えば、リストアップされた物体に移動物体と固定物体とが含まれている場合、移動物体の方を、最終的に対応付ける物体として決定する。あるいは、対応付けられている物体がともに移動物体である場合は、長時間観測されている移動物体の方を、最終的に対応付ける物体として決定する。
【００５９】
ステップＳ８０に進むと、演算装置２０は、クラスタ記憶部３２に記憶されている全てのクラスタについて、ステップＳ７２〜Ｓ７８の処理を実行したか否かを判定する（ステップＳ８０）。全てのクラスタについてステップＳ７２〜Ｓ７８の処理を実行していない場合（ステップＳ８０でＮＯ）は、ステップＳ７０に戻って、ステップＳ７０からの処理を繰り返す。これによって、全てのクラスタについて、物体記憶部３４に記憶されている１の物体に対応付けられるか、新規に物体記憶部３４に登録されることとなる。一方、全てのクラスタについてステップＳ７２〜Ｓ７８の処理を実行している場合（ステップＳ８０でＹＥＳ）は、対応付けクラスタ決定処理を終了し、図２のステップＳ１６に進む。
【００６０】
図２のステップＳ１６に進むと、演算装置２０は、物体記憶部３４に記憶されている物体毎に、その物体と対応付けられたクラスタの位置（すなわち、計測された物体の現在の位置）と、その物体の前回のステップで推定された速度に基づいて、現在の物体の位置と速度を推定する（ステップＳ１８）。そして、対応付けられたクラスタから決定される物体の大きさと、推定された物体の位置及び速度を、物体記憶部３４に記憶する。これによって物体記憶部３４が更新され、物体検出装置１０で行われる１ステップ（１計測）の処理が終了する。以後は、ステップＳ１０〜Ｓ１８までの処理が繰り返される。
【００６１】
なお、上記のステップＳ１８の処理には、公知のカルマンフィルタやパーティクルフィルタを用いることができる。カルマンフィルタ等を用いて現在の物体の位置と速度を推定するのは、計測された位置のみを用いると正確な位置が得られない場合があるためである。例えば、脚を計測する場合、一方の脚が他方の脚に遮蔽される場合があり、このような場合は、計測された脚の位置の実に基づいて物体の位置を推定すると、物体の正確な位置を推定することができない。したがって、現在の計測された位置と、過去の推定された速度を用いて、現在の位置と速度を推定することで、物体の位置と速度を精度良く推定することができる。
【００６２】
なお、ステップＳ１８で推定される物体の速度は、次回のステップで物体の推定存在領域を決定するのに用いられる。このため、本実施例では、カルマンフィルタ等で推定された物体の速度を平均化し、その平均化した速度を次回のステップの推定存在領域の決定に利用する。すなわち、物体の中には、その移動速度が周期的に振動するものがある。例えば、人が歩行すると、その歩行速度は歩行メカニズムに起因して周期的に振動する。このような移動速度の振動（揺れ）をカルマンフィルタによって除去するためには、複雑なモデルの適用が必要となり、容易ではない。
仮に、移動速度の揺れを除去しないで、次回の物体の存在領域を推定すると、推定存在領域が移動速度の揺れと同期して揺れることとなる。その結果、誤ったクラスタと対応付けられる場合が生じる。例えば、物体（歩行者）の近傍に存在する壁や柱などから得られたクラスタと対応付けられる場合が生じる。その結果、物体の追跡に失敗してしまう。
このため、本実施例では、カルマンフィルタ等で推定された速度をさらに平均化して移動速度の揺れを除去し、その平均化した速度を次回のステップに用いる。これによって、次回のステップにおいて、物体の存在領域を精度良く推定することができる。その結果、クラスタとの対応付けを精度良く行うことができ、物体を精度良く追跡することが可能となる。
【００６３】
また、平均化した速度を用いて物体の存在領域を推定することで、物体が一時的に遮蔽状態となっても、途切れることなく物体を追跡することができる。すなわち、物体が遮蔽状態となったときは、遮蔽前の物体の速度を用いて物体の位置を推定しなければならない。物体の速度が振動している場合において、遮蔽前の推定された物体の速度が偏っていると、偏った速度を用いて物体の位置を推定することとなる。その結果、誤ったクラスタと対応付けられてしまう場合が生じる。しかしながら、本実施例では、平均化した速度を用いて物体の存在領域を推定するため、物体とクラスタの対応付けを精度良く行うことができ、物体を途切れることなく追跡することができる。多くの物体が存在する環境下では、物体の一時的な遮蔽は避けられないため、本実施例の物体検出装置は、物体の一時的な遮蔽に対して頑健なシステムとすることができる。
【００６４】
なお、速度の平均化には、ローパスフィルタや移動平均法等を用いることができる。図１５は、人が歩行しているところをＬＲＦ１２で測定（図１４に示す状態）し、その測定結果をカルマンフィルタで処理することで得られた速度と、その速度をさらにローパスフィルタで処理した速度を示している。また、図１６は、図１５と同様、カルマンフィルタによって処理することで得られた速度と、その速度を移動平均法によって平均化した速度を示している。いずれの場合も、カルマンフィルタで処理された速度の揺れが除去されている。
【００６５】
上述した説明から明らかなように、本実施例の物体検出装置１０では、ＬＲＦ１２を水平面に対して斜め上方に向けて設置するため、ＬＲＦ１２から遠方の物体の検出を容易化することができる。また、本実施例の物体検出装置１０では、計測対象のモデル形態を特定せず、物体の推定存在領域内にあるクラスタの組合せのそれぞれについて、当該物体と対応付けるか否かを評価する。このため、物体から計測されるクラスタの数が変化する場合（例えば、物体の一部が遮蔽される場合、物体の計測部位が変化する場合等）にも対応することができる。さらに、本実施例の物体検出装置１０では、物体の推定速度を平均化し、その平均化した速度を用いて物体の推定存在領域を算出する。このため、精度良く物体の対応付けを行うことができ、また、物体が一時的に遮蔽状態となっても、物体と計測されたクラスタとの対応付けを行うことができる。これらによって、本実施例の物体検出装置１０は、物体を精度良く検出することができ、また、検出した物体を精度良く追跡することができる。
【００６６】
なお、上述した実施例では、物体検出装置１０を所定の位置に設置（固定）する例について説明したが、本願の技術はこのような例に限られない。例えば、上述した物体検出装置１０を移動体（例えば、車両、移動ロボット等）に設置し、移動体の進行方向に存在する障害物を検出するようにしてもよい。この場合、移動体の位置を検出するセンサ（例えば、オドメトリ）と移動体の姿勢を検出するセンサ（例えば、ジャイロセンサ）を移動体に装備し、これらのセンサの値からＬＲＦ１２の絶対位置と計測方向を計算すればよい。これによって、ＬＲＦ１２で計測された計測点の絶対座標系における位置を算出することができる。なお、移動体の絶対位置を検出するセンサとして、ＧＰＳセンサを用いることもできる。車両等の移動体に物体検出装置を搭載する場合、移動体のピッチング等により計測対象物（例えば、人）の計測部位が変化し、計測されるクラスタの個数が変化することがある。このため、車両等の移動体に本実施例の物体検出装置１０を搭載することによって、このような事態に対応することができる。また、計測対象のモデル形態を特定していないため、人間だけでなく自転車等も、同一のアルゴリズムで検出することができる。
【００６７】
また、上述した実施例では、ＬＲＦ１２の距離計測方向が水平面に対して斜め上方に向くようにＬＲＦ１２を設置したが、本願の技術はこのような形態に限られない。例えば、物体の推定存在領域内にあるクラスタの組合せのそれぞれについて物体と対応付けるか否かを評価する技術、物体の速度を平均化して物体の存在領域を推定する技術等は、ＬＲＦの取付角度に関係なく実施することができる。また、ＬＲＦの距離計測方式も、レーザ光に限られず、公知の種々の方式（例えば、電磁波等）を用いることができる。
【００６８】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例をさまざまに変形、変更したものが含まれる。
本明細書または図面に説明した技術要素は、単独であるいは各種の組み合わせによって技術的有用性を発揮するものであり、出願時請求項記載の組み合わせに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【００６９】
１０：物体検出装置
１２：ＬＲＦ
２０：演算装置
２２：座標変換部
２４：特徴抽出部
２６：対応付け部
２８：運動推定部
３０：取付位置情報
３２：クラスタ記憶部
３４：物体記憶部
【図１】
2011196749.tif 000003
【図２】
2011196749.tif 000004
【図３】
2011196749.tif 000005
【図４】
2011196749.tif 000006
【図５】
2011196749.tif 000007
【図６】
2011196749.tif 000008
【図７】
2011196749.tif 000009
【図８】
2011196749.tif 000010
【図９】
2011196749.tif 000011
【図１０】
2011196749.tif 000012
【図１１】
2011196749.tif 000013
【図１２】
2011196749.tif 000014
【図１３】
2011196749.tif 000015
【図１４】
2011196749.tif 000016
【図１５】
2011196749.tif 000017
【図１６】
2011196749.tif 000018