特許第5728815号(P5728815)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社豊田中央研究所の特許一覧

<>
  • 特許5728815-物体検出装置 図000002
  • 特許5728815-物体検出装置 図000003
  • 特許5728815-物体検出装置 図000004
  • 特許5728815-物体検出装置 図000005
  • 特許5728815-物体検出装置 図000006
  • 特許5728815-物体検出装置 図000007
  • 特許5728815-物体検出装置 図000008
  • 特許5728815-物体検出装置 図000009
  • 特許5728815-物体検出装置 図000010
  • 特許5728815-物体検出装置 図000011
  • 特許5728815-物体検出装置 図000012
  • 特許5728815-物体検出装置 図000013
  • 特許5728815-物体検出装置 図000014
  • 特許5728815-物体検出装置 図000015
  • 特許5728815-物体検出装置 図000016
  • 特許5728815-物体検出装置 図000017
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5728815
(24)【登録日】2015年4月17日
(45)【発行日】2015年6月3日
(54)【発明の名称】物体検出装置
(51)【国際特許分類】
   G01S 17/66 20060101AFI20150514BHJP
   G01C 3/06 20060101ALI20150514BHJP
   G01V 8/12 20060101ALI20150514BHJP
【FI】
   G01S17/66
   G01C3/06 120Q
   G01C3/06 140
   G01V9/04 J
【請求項の数】6
【全頁数】18
(21)【出願番号】特願2010-62054(P2010-62054)
(22)【出願日】2010年3月18日
(65)【公開番号】特開2011-196749(P2011-196749A)
(43)【公開日】2011年10月6日
【審査請求日】2013年1月17日
(73)【特許権者】
【識別番号】000003609
【氏名又は名称】株式会社豊田中央研究所
(74)【代理人】
【識別番号】110000110
【氏名又は名称】特許業務法人快友国際特許事務所
(72)【発明者】
【氏名】田中 稔
(72)【発明者】
【氏名】寺澤 位好
(72)【発明者】
【氏名】久保田 文子
【審査官】 岸 智史
(56)【参考文献】
【文献】 特開2008−186375(JP,A)
【文献】 特開2007−193495(JP,A)
【文献】 特開2009−110124(JP,A)
【文献】 特開2010−151788(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01S 7/48−7/51
G01S 17/00−17/95
(57)【特許請求の範囲】
【請求項1】
2次元走査型の距離計測センサと、
距離計測センサの出力に基づいて物体を検出する演算装置と、を備えており、
距離計測センサが、計測対象となる物体に応じて設定された測定高さより低い位置に設置され、かつ、距離計測センサがセンサ正面を計測するときの距離計測方向が水平面に対して斜め上方を向くように設置されており、
距離計測センサは、周期的に1走査範囲の距離計測を行い、
演算装置は、
距離計測センサの出力に基づいて検出された物体を記憶する物体記憶部と、
距離計測センサの計測周期毎に実行され、当該計測周期における距離計測センサの出力から近接する計測点群を抽出する特徴抽出部と、
距離計測センサの計測周期毎に実行され、物体記憶部に記憶されている物体毎に、当該計測周期で抽出された計測点群のうち当該物体の推定存在領域内に存在する1又は複数の計測点群を組み合わせて生成される計測点群の組合せの中から、当該物体と対応付ける1又は複数の計測点群を特定する対応付け部と、
距離計測センサの計測周期毎に実行され、物体記憶部に記憶されている物体毎に、当該計測周期で当該物体に対応付けられた計測点群の位置を用いて、当該計測周期における当該物体の速度ベクトルを推定する運動推定部と、を有しており、
対応付け部は、前記推定存在領域内に複数の計測点群が存在するときは、これら複数の計測点群を組合せて複数の計測点群組合せ候補を作成し、
作成した複数の計測点群組合せ候補の中から一つの計測点群組合せ候補を、直前の計測周期において運動推定部で推定された当該物体の速度ベクトルの分散の逆数を考慮して選択し、
その選択した計測点群組合せ候補に含まれる1又は複数の計測点群を当該物体と対応付ける、物体検出装置。
【請求項2】
演算装置は、特徴抽出部によって抽出された計測点群であって、対応付け部によって物体記憶部に記憶されている物体と対応付けられなかった計測点群を、新規の物体として物体記憶部に記憶させるファイル登録部をさらに有することを特徴とする請求項1に記載の物体検出装置。
【請求項3】
対応付け部は、物体記憶部に記憶されている物体毎に、直前の計測周期で運動推定部によって推定された当該物体の速度ベクトルを用いて、当該物体の推定存在領域を算出することを特徴とする請求項1又は2に記載の物体検出装置。
【請求項4】
対応付け部は、運動推定部によって推定される当該物体の速度を平均化した速度を用いて、当該物体の推定存在領域を算出することを特徴とする請求項3に記載の物体検出装置。
【請求項5】
2次元走査型の距離計測センサと、
距離計測センサの出力に基づいて物体を検出する演算装置と、を備えており、
距離計測センサは、周期的に1走査範囲の距離計測を行い、
演算装置は、
距離計測センサの出力に基づいて検出された物体を記憶する物体記憶部と、
距離計測センサの計測周期毎に実行され、当該計測周期における距離計測センサの出力から近接する計測点群を抽出する特徴抽出部と、
距離計測センサの計測周期毎に実行され、物体記憶部に記憶されている物体毎に、当該計測周期で抽出された計測点群のうち当該物体の推定存在領域内に存在する1又は複数の計測点群を組み合わせて生成される計測点群の組合せの中から、当該物体と対応付ける1又は複数の計測点群を特定する対応付け部と、
距離計測センサの計測周期毎に実行され、物体記憶部に記憶されている物体毎に、当該計測周期で当該物体に対応付けられた計測点群の位置を用いて、当該計測周期における当該物体の速度ベクトルを推定する運動推定部と、を有しており、
対応付け部は、前記推定存在領域内に複数の計測点群が存在するときは、これら複数の計測点群を組合せて複数の計測点群組合せ候補を作成し、
作成した複数の計測点群組合せ候補の中から一つの計測点群組合せ候補を、直前の計測周期において運動推定部で推定された当該物体の速度ベクトルの分散の逆数を考慮して選択し、
その選択した計測点群組合せ候補に含まれる1又は複数の計測点群を当該物体と対応付ける、物体検出装置。
【請求項6】
請求項1〜5のいずれか一項に記載の物体検出装置を備えていることを特徴とする移動体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、物体を検出する物体検出装置に関する。
【背景技術】
【0002】
距離計測センサ(例えば、レーザレンジファインダ等)を利用して物体を検出する物体検出装置が開発されている。物体検出装置に係る従来技術が、例えば、特許文献1〜3に開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2004−191095号公報
【特許文献2】特開2009−168578号公報
【特許文献3】特開2008−65755号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
物体検出装置では、距離計測センサの出力から物体を検出し、その検出した物体を追跡する。しかしながら、従来の技術では、物体を精度良く検出できない場合があり、その結果、物体を追跡できない場合が生じるという問題があった。
【0005】
本発明は、上記した実情に鑑みてなされたものであり、物体を精度良く検出することができる物体検出装置を提供する。
【課題を解決するための手段】
【0006】
本願の第1の物体検出装置は、距離計測センサがセンサ正面を計測するときの距離計測方向を水平面に対して斜め上方を向くように設定することで、物体を精度良く検出することを可能とする。すなわち、この種の物体検出装置では、設置スペースの問題等から、距離計測センサを床面の近傍の高さに設置することが多い。例えば、物体検出装置で歩行者を検出する場合、歩行者は本質的に床面に足を付けて移動するため、歩行者を検出し損なうことを防止するためには、距離計測センサで足元の高さを計測することが多い。また、車輌に物体検出装置を装備する場合、構造的もしくは機能的な理由によって、距離計測センサを車体下部に取付けざるを得ないことがある。さらに、小型のロボットに物体検出装置を装備する場合、そもそも低い位置にしか距離計測センサを取付けられない。従来の技術では、距離計測センサがセンサ正面を計測するときの距離計測方向を水平面と平行としていた(すなわち、水平面内で物体の検出を行っていた。)。このため、距離計測センサで人体を計測すると、距離計測センサは人体の足元を計測することとなる。足元は胴体に比べて細く、また、距離計測センサは、センサから遠方になるほど計測点の間隔が広くなる。このため、従来の技術では、距離計測センサから遠方にある人体(物体)を検出し難いという問題があった。
【0007】
そこで、本願の第1の物体検出装置は、2次元走査型の距離計測センサと、距離計測センサの出力に基づいて物体を検出する演算装置を備える。そして、距離計測センサが、計測対象となる物体に応じて設定された測定高さより低い位置に設置され、かつ、距離計測センサがセンサ正面を計測するときの距離計測方向が水平面に対して斜め上方を向くように設置される。
【0008】
この物体検出装置では、距離計測センサがセンサ正面を計測するときの距離計測方向が水平面に対して斜め上方を向く。このため、距離計測センサからの距離が離れるのに伴って床面から高い位置にある部位が計測される。したがって、この物体検出装置で人体を検出すると、距離計測センサからの距離が離れるのに伴って胴体に近い部分が計測されることとなる。その結果、人体のような物体を検出し易くなり、物体の検出精度を向上することができる。
【0009】
上記の物体検出装置においては、距離計測センサがセンサ正面を計測するときの距離計測方向が水平面に対して斜め上方を向くため、距離計測センサで計測される部位が距離計測センサからの距離によって変わる。例えば、人体を検出する場合、距離計測センサの近傍では足元が計測され、距離計測センサの遠方では胴体に近い部分が計測される。このため、同一の物体(人体)であっても、計測された部位が足元であると、1個又は2個の計測点群(クラスタ)として測定され、計測された部位が腰付近であると、1個の胴体を示す計測点群(クラスタ)として測定されたり、胴体と腕などが2個又は3個の計測点群(クラスタ)として測定されたりして、状況によって、計測点群の数は不定となる。
【0010】
そこで、上記の物体検出装置においては、演算装置が、物体記憶部と、特徴抽出部と、対応付け部を有することが好ましい。物体記憶部は、距離計測センサの出力に基づいて検出された物体を記憶する。特徴抽出部は、距離計測センサの出力から近接する計測点群(クラスタ)を抽出する。対応付け部は、物体記憶部に記憶されている物体毎に、抽出された計測点群のうち当該物体の推定存在領域内に存在する1又は複数の計測点群を組み合わせて生成される計測点群の組合せの中から、当該物体と対応付ける1又は複数の計測点群を特定する。
【0011】
このような構成によると、物体記憶部に記憶されている各物体に対して、その物体の推定存在領域内に存在する1又は複数の計測点群(クラスタ)を種々に組合せ、それら組合せの中から物体と対応する計測点群(クラスタ)を特定する。このため、物体から検出される計測点群(クラスタ)の数が変化(例えば、1個→2個,2個→1個)しても、その変化に対応することができる。
【0012】
上記の物体検出装置においては、演算装置は、特徴抽出部によって抽出された計測点群であって、対応付け部によって物体記憶部に記憶されている物体と対応付けられなかった計測点群を、新規の物体として物体記憶部に記憶させるファイル登録部をさらに有することが好ましい。このような構成によると、新規に検出された計測点群が新たな物体として物体記憶部に登録され、その物体のその後の追跡が可能となる。
【0013】
上記の物体検出装置においては、演算装置は、物体記憶部に記憶されている物体毎に、当該物体に対応付けられた計測点群の位置を用いて、当該物体の運動状態(物体の位置や速度)を推定する運動推定部をさらに有することが好ましい。
【0014】
また、上記の物体検出装置においては、距離計測センサは、周期的に1走査範囲の距離計測を行い、演算装置は、距離計測センサの計測周期毎に、特徴抽出部による処理と、対応付け部による処理と、運動推定部による処理を実行するように構成することができる。この場合に、対応付け部は、物体記憶部に記憶されている物体毎に、直前の計測周期で運動推定部によって推定された当該物体の運動状態を用いて、当該物体の推定存在領域を算出することが好ましい。このような構成によると、直前の計測周期で得られた計測結果から現在の物体の推定存在領域を算出するため、物体を好適に追跡することができる。
【0015】
上記の第1の物体検出装置においては、対応付け部は、運動推定部によって推定される当該物体の速度を平均化した速度を用いて、当該物体の推定存在領域を算出することが好ましい。物体によっては、その移動速度が周期的に振動するものがある。例えば、人が歩行する場合、人の歩行速度は周期的に振動する。かかる場合に、周期的に振動する速度をそのまま用いて物体の推定存在領域を算出すると、算出された推定存在領域が実際の存在領域から大きくずれることがある。このため、推定される物体の速度を平均化した速度を用いて推定存在領域を算出することで、物体(人体)を精度良く追跡することができる。
【0016】
また、本願の第2の物体検出装置は、距離計測センサで計測される物体の計測点群(クラスタ)の数が変化する場合であっても、好適に物体を追跡することができる技術を提供する。すなわち、上述したように、観測する物体によっては、距離計測センサが計測する部位が変化すると、計測される計測点群(クラスタ)の数が変化することがある。従来の技術では、計測対象を「脚」や「胴」などの特定の部位でモデル化しているため、物体の計測する部位が途中で変化すると、物体を認識できなくなることがある。
【0017】
そこで、本願の第2の物体検出装置は、走査型の距離計測センサ(二次元走査型に限定されない。)と、距離計測センサの出力に基づいて検出された物体を記憶する物体記憶部と、距離計測センサの出力から近接する計測点群を抽出する特徴抽出部と、物体記憶部に記憶されている物体毎に、抽出された計測点群のうち当該物体の推定存在領域内に存在する1又は複数の計測点群を組み合わせて生成される計測点群の組合せの中から、当該物体と対応付ける1又は複数の計測点群を特定する対応付け部を有する。
【0018】
この物体検出装置では、物体記憶部に記憶されている物体に対して、その物体の推定存在領域内に存在する1又は複数の計測点群を種々に組合せ、それら組合せの中から物体と対応する計測点群を特定する。このため、物体から検出される計測点群(クラスタ)の数が変化しても、その変化に対応することができる。
【0019】
また、本願の第3の物体検出装置は、観測される物体の移動速度が周期的に振動する場合であっても、その物体を精度良く追跡することを可能とする。すなわち、観測される物体を追跡するためには、直前の計測周期で得られた物体の速度から、現在の物体の位置を推定する必要がある。人が歩行するときのように、計測される物体の移動速度が周期的に振動している場合、直前の計測周期で得られた速度をそのまま用いて物体の位置を推定すると、推定された位置が実際の位置から大きく異なることになる。
【0020】
そこで、本願の第3の物体検出装置は、走査型の距離計測センサ(二次元走査型に限定されない。)と、物体記憶部と、特徴抽出部と、対応付け部と、運動推定部を有している。物体記憶部は、距離計測センサの出力に基づいて検出された物体を記憶する。特徴抽出部は、距離計測センサの出力から近接する計測点群を抽出する。対応付け部は、物体記憶部に記憶されている物体毎に、抽出された計測点群の中から、当該物体と対応付ける1又は複数の計測点群を特定する。運動推定部は、物体記憶部に記憶されている物体毎に、当該物体に対応付けられた計測点群の位置から、当該物体の運動状態を推定する。距離計測センサは、周期的に1走査範囲の距離計測を行う。特徴抽出部と対応付け部と運動推定部は、計測周期毎に各処理を実行する。対応付け部は、物体記憶部に記憶されている物体毎に、直前の計測周期で運動推定部によって推定された当該物体の速度の平均値を用いて、当該物体の推定存在領域を算出する。
【0021】
この物体検出装置では、直前の計測周期で運動推定部によって推定された当該物体の速度の平均値を用いて、物体の推定存在領域を算出する。このため、計測される物体の移動速度が周期的に振動していても、その物体を精度良く追跡することができる。
【0022】
上述した物体検出装置は、移動体(例えば、車両、移動ロボット、移動台車等)に装備することができる。これによって、移動体は障害物等を検出しながら安全に移動することができる。
【図面の簡単な説明】
【0023】
図1】本発明の一実施例に係る物体検出装置の全体構成を示すブロック図。
図2】物体検出装置の全体の処理手順を示すフローチャート。
図3】対応付け処理(図2のステップS14)の手順を示すフローチャート。
図4】近接クラスタ候補抽出処理(図3のステップS22)の手順を示すフローチャート。
図5】対応付けクラスタ候補抽出処理(図3のステップS24)の手順を示すフローチャート。
図6】対応付けクラスタ決定処理(図3のステップS28)の手順を示すフローチャート。
図7】レーザレンジファインダの取付け状態を説明するための図。
図8】クラスタを抽出する処理を説明するための図。
図9】推定存在領域を算出する手順を説明するための図。
図10】2つのクラスタを統合した状態を示す図。
図11】2人の歩行者のすれ違う場合を例にして、対応付け部の処理を説明するための図(その1)。
図12】2人の歩行者のすれ違う場合を例にして、対応付け部の処理を説明するための図(その2)。
図13】複数の近接クラスタ候補から対応付ける近接クラスタ候補を選択する処理を説明するための図。
図14】レーザレンジファインダで人の歩行を計測した状態を示す図。
図15】レーザレンジファインダで測定される人の歩行速度と時間の関係を示すグラフ(その1)。
図16】レーザレンジファインダで測定された人の歩行速度と時間の関係を示すグラフ(その2)。
【発明を実施するための形態】
【0024】
本発明の一実施例に係る物体検出装置10について、図面を参照しながら説明する。図1に示すように、本実施例の物体検出装置10は、レーザレンジファインダ(以下、LRFという)12と、演算装置20によって構成されている。LRF12と演算装置20は、通信線によって接続されており、LRF12から出力される信号が演算装置20に入力されるようになっている。
【0025】
LRF12は、2次元走査型の距離計測センサである。LRF12は、レーザ発光部を回転させ、レーザ発光部から照射されるレーザ光が横切る平面(計測面)上に存在する物体との距離を測定する。具体的には、LRF12は、照射したレーザ光の反射光を検出し、レーザ光を照射してから反射光を検出するまでの時間で物体との距離を計測する。レーザ光を照射する平面(計測面)は一定とされ、レーザ光を照射する方向は設定された角度範囲内を一定の角速度で変化する。従って、LRF12は、計測面内の設定された角度範囲を所定の角度間隔で距離計測を行う。このため、LRF12からの距離が近いと隣接する計測点間の間隔は短く(計測密度が高く)、LRF12からの距離が遠くなると計測点間の間隔は長くなる(計測密度が低くなる)。このようなLRF12としては、例えば、SICK社製のLMS200や、北陽電機株式会社製のUTM−30LXを用いることができる。
【0026】
図7に示すように、LRF12は、計測対象36を計測するのに適した高さH(測定高さ)よりも低い高さHに設置される。測定高さHは、計測対象36に応じて設定される。例えば、計測対象36が人である場合、LRF12で人を計測した時に多くの計測点が得られる高さ(例えば、胴部、胸部、肩部等)に測定高さHが設定される。また、LRF12がその正面を計測するときの計測方向Sが水平面Pに対して上向きの角度θ(計測面Sと水平面Pとのなす角(以下、取付角度という))となるようにLRF12が設置される。取付角度θは、tanθ=(H−H)/Lを満足するように設定することができる。ここで、Lは、LRF12で測定したい最長測定距離(<LRF12の測定可能距離)である。このため、LRF12の取付角度θは、設置高さHが決まると、測定対象36の測定高さHと、LRF12で測定したい最長測定距離Lにより決定することができる。
【0027】
演算装置20は、LRF12の出力に基づいて、物体を検出する処理を実行する。演算装置20は、例えば、CPU,ROM,RAM等を備えたコンピュータによって構成することができる。演算装置20は、取付位置情報30と、クラスタ記憶部32と、物体記憶部34を記憶している。取付位置情報30は、LRF12の絶対座標系における取付位置(x,y,z)及び取付角度θを記憶している。クラスタ記憶部32は、LRF12を1走査することによって得られた計測点群の中から抽出された物体候補となる計測点群(以下、クラスタという)の絶対座標系の位置(x,y)を記憶する。物体記憶部34は、検出された物体の位置(x,y)と大きさdと速度(v,v)を記憶する。
【0028】
また、演算装置20は、座標変換部22と、特徴抽出部24と、対応付け部26と、運動推定部28を備えている。座標変換部22は、LRF12で計測された計測点までの距離と、記憶されている取付位置情報30に基づいて、計測点の絶対座標系の位置(x,y)を算出する。特徴抽出部24は、LRF12を1走査することによって得られた計測点群の中から、近接する計測点の塊りである「クラスタ」を抽出する。対応付け部26は、特徴抽出部24で抽出されたクラスタを、物体記憶部34に記憶されている物体と対応付ける。運動推定部28は、物体と対応付けられたクラスタの位置(x,y)を用いて、物体の速度(v,v)を推定する。なお、演算装置20で得られた検出結果は、外部装置に出力することができるようになっている。上述した演算装置20の各部22,24,26,28の処理については、後で詳述する。
【0029】
次に、上述した物体検出装置10で行われる処理を、図2〜6のフローチャートに従って説明する。物体検出装置10は、所定の計測周期毎に、図2に示すステップS10〜S16の処理を繰り返し実行する。これによって、観測領域内にある物体の検出と、検出された物体の追跡が行われる。
【0030】
図2に示すように、物体検出装置10は、まず、LRF12を1走査することで、計測面内に存在する物体までの距離を計測する(ステップS10)。すなわち、計測面内に物体が存在する場合は、その物体から反射されたレーザ光をLRF12で検出し、LRF12からその物体までの距離を計測する(すなわち、計測点までの距離を取得する。)。一方、計測面内に物体が存在しない場合は、反射光をLRF12で検出することができず、そのレーザ光を照射した方向については計測点なしとする。LRF12で計測された距離データは、演算装置20の座標変換部22に入力される。座標変換部22は、LRF12から入力された距離データと、取付位置情報30に記憶されている情報(すなわち、LRF12の絶対座標系における取付位置(x,y,z)及び取付角度θ)とから、LRF12で計測された計測点の絶対座標系における位置(x,y)を算出する。なお、本実施例では、計測点の位置を2次元データ(x,y)に変換することで、その後の計算量を少なくしている。
【0031】
次に、演算装置20は、ステップS10の処理で得られた計測点のデータから、物体の候補となるクラスタを抽出する(ステップS12)。クラスタを抽出する処理の一例を、図8を参照して説明する。図8に示すようなLRF12の走査によって計測点38a〜38gが得られた場合を考える。この場合、計測点38bと計測点38cとの距離と、計測点38eと計測点38fとの距離は、他の隣接する計測点間の距離(例えば、計測点38aと計測点38bとの距離等)よりも極めて大きい。このため、計測点38bと計測点38cの間に物体の境界があり、計測点38eと計測点38fの間に物体の境界があると判断することができる。その一方、他の計測点間の間には物体の境界がないと判断することができる。このため、計測点38a,38bで1つのクラスタと判断され、計測点38c〜38eで1つのクラスタと判断され、計測点38f,38gで1つのクラスタと判断される。なお、このようなクラスタ抽出処理は、例えば、「Local Minima法」などの名称で知られている。上記のクラスタ抽出処理をステップS10で得られた計測点群に対して行うことで、LRF12を1走査することによって得られた計測点群の中から、計測面内に存在する物体の候補となるクラスタが抽出される。抽出されたクラスタは、クラスタ記憶部32に記憶される。クラスタ記憶部32には、クラスタ毎に、そのクラスタを構成する各計測点の位置(x,y)が記憶される。
【0032】
クラスタが抽出されると、演算装置20は、抽出したクラスタと、物体記憶部34に記憶されている物体との対応付け処理を行う(ステップS14)。対応付け処理の詳細を、図3〜6に基づいて説明する。
【0033】
図3に示すように、演算装置20は、物体記憶部34に記憶されている物体の中から1つの物体を選択する(ステップS20)。すなわち、物体記憶部34には、前回の計測周期(ステップ)までの処理(図2のステップS10〜S18)によって検出されている物体が記憶されている。このため、ステップS20の処理では、物体記憶部34に記憶されている物体の中から一の物体を選択する。
【0034】
次に、演算装置20は、ステップS20で選択した物体と対応付ける候補となる近接クラスタ候補を抽出する処理を実行する(ステップS22)。ステップS22の近接クラスタ候補の抽出処理の詳細を、図4を参照して説明する。
【0035】
図4に示すように、演算装置20は、まず、ステップS20で選択した物体の推定存在領域を算出する(ステップS30)。すなわち、物体記憶部34には、直前の計測周期(ステップ)において推定した物体の位置(x,y)と速度(v,v)と大きさdが記憶されている。ステップS30では、これらの情報を用いて、今回の計測周期で物体が存在すると推定される存在領域を算出する。図9を参照して具体的に説明する。図9に示す例では、直前の計測周期において、物体が円形状領域40に存在し、その大きさはdであり、速度ベクトルvを有している。かかる場合に、現在の物体は、領域40を速度ベクトルvの方向に速度ベクトルvの大きさに応じた距離だけシフトした位置43を中心とし、その位置43の前後左右にある程度の幅を持った領域に存在していると考えられる。また、物体の位置は、進行方向に大きくぶれる可能性がある一方で、進行方向に垂直な方向のぶれは小さいと考えられる。このため、本実施例では、推定存在領域42は、速度ベクトルvと平行な方向に長軸dを有する楕円形状として算出される。すなわち、推定存在領域42は、物体の進行方向に大きな幅dを有する一方で、進行方向と垂直な方向に小さな幅dを有する。
【0036】
推定存在領域42を算出する具体的な方法としては、物体の速度ベクトルを用いてアドホックに楕円の大きさを決定する方法や、物体の速度とそのばらつき(すなわち、標準偏差)を用いて楕円を生成する方法がある。標準偏差を用いて推定存在領域42を決定する場合は、例えば、図9の長軸dをd+2×r+S×SDvxと決定し、短軸dをd+2×r+S×SDvyと決定することができる。ここで、dは物体の直径であり、rは推定存在領域を拡張するためのマージンを含んだ半径であり、Sは係数、SDvxは物体の進行方向の速度の標準偏差であり、SDvyは物体の進行方向と直交する方向の速度の標準偏差である。
【0037】
次に、演算装置20は、ステップS12で抽出したクラスタ(物体候補)の中から、一のクラスタを選択する(ステップS32)。すなわち、クラスタ記憶部23に記憶されているクラスタの中から、一のクラスタを選択する。
【0038】
一のクラスタを選択すると、演算装置20は、選択したクラスタの大きさが適切か否かを判断する(ステップS34)。すなわち、選択したクラスタが物体として適切な大きさでない場合(例えば、LRF12で壁が検出されている場合)は、そのクラスタを物体候補とすることは適切ではない。このため、まず、選択したクラスタの大きさを算出し、その算出した大きさからクラスタが過大であるかないかを判断する。クラスタの大きさの指標には、例えば、クラスタを構成する各計測点が包含される円領域又は楕円領域を決定し、その円領域の直径や楕円領域の長軸の長さを用いることができる。そして、これらの数値が設定値を超えているか否かで判断することができる。あるいは、クラスタを構成する各計測点が包含される円領域の直径又は楕円領域の長軸と、ステップS20で選択した物体の大きさとを比較し、その差が設定値を超える場合を、クラスタの大きさが適切でないと判断するようにしてもよい。
【0039】
選択したクラスタが大き過ぎる場合(ステップS34でNO)はステップS40に進み、選択したクラスタが大き過ぎない場合(ステップS34でYES)は、演算装置20は、ステップS30で算出した推定存在領域に、ステップS32で選択したクラスタの中心が位置するか否かを判断する(ステップS36)。すなわち、選択したクラスタを構成する各計測点が包含される円領域又は楕円領域の中心が、ステップS30で算出した推定存在領域内に位置するか否かを判断する。
【0040】
選択したクラスタの中心が推定存在領域内に位置しない場合(ステップS36でNO)は、その選択したクラスタはステップS20で選択した物体とは関係ないと判断されるため、対応付け部26はそのままステップS40に進む。一方、選択したクラスタの中心が推定存在領域内に位置する場合(ステップS36でYES)は、選択したクラスタがステップS20で選択した物体である可能性がある。このため、その選択したクラスタを、ステップS20で選択した物体の近接クラスタ候補として記憶する(ステップS38)。
【0041】
ステップS40に進むと、演算装置20は、ステップS12で抽出した全てのクラスタについて、上述したステップS34〜ステップS38までの処理を実行したか否かを判定する(ステップS40)。ステップS12で抽出した全てのクラスタについてステップS34〜ステップS38までの処理を実行していない場合(ステップS40でYES)は、ステップS32に戻ってステップS32からの処理を繰り返す。これによって、ステップS20で選択した物体に対して、ステップS12で抽出された全てのクラスタとの関連性が評価され、ステップS20で選択された物体である可能性のあるクラスタが抽出される。一方、ステップS12で抽出した全てのクラスタについてステップS34〜ステップS38までの処理を実行している場合(ステップS40でYES)は、そのままクラスタ候補抽出処理を終了し、図3のステップS24に進む。
【0042】
ステップS24に進むと、演算装置20は、ステップS22の処理で抽出された近接クラスタ候補の中から、ステップS20で選択された物体と対応付けられる可能性の高いクラスタ又はクラスタの組合せによる候補(すなわち、当該物体をLRF12によって観測した部位である可能性の高いクラスタ又はクラスタの組合せ)を抽出する処理を実行する。ステップS24の対応付けクラスタ候補抽出処理の詳細を、図5を参照して説明する。
【0043】
図5に示すように、まず、演算装置20は、ステップS20で選択された物体について、近接クラスタ候補が記憶されているか否かを判断する(ステップS50)。上述したステップS22の処理で近接クラスタ候補が抽出されていない場合(ステップS50でNO)は、演算装置20は、ステップS20で選択された物体が今回の計測周期(ステップ)で計測されなかったと判断し、ステップS66に進む。ステップS66では、演算装置20は、対応付けられるクラスタが複数周期に亘って検出されていなかったか否かを判断する。対応付けられるクラスタが検出されていないことが複数周期に亘って連続していない場合(ステップS66でNO)は、そのまま対応付けクラスタ候補抽出処理を終了する。対応付けられるクラスタが検出されていないことが複数周期に亘って連続する場合(ステップS66でYES)は、ステップS20で選択された物体がLRF12の観測領域から消えたと判断し、物体記憶部34よりその物体を削除し(ステップS68)、対応付けクラスタ候補抽出処理を終了する。これによって、LRF12の観測領域から消えた物体が、いつまでも物体記憶部34に記憶され続けることが防止される。
【0044】
一方、上述したステップS22の処理で近接クラスタ候補が抽出されている場合(ステップS50でYES)は、その抽出されている近接クラスタを種々に組合せて近接クラスタ組合せ候補を作成する(S52)。例えば、3個の近接クラスタが抽出されている場合、1個の近接クラスタによって構成される3通りの組合せと、2個の近接クラスタによって構成される3通りの組合せと、3個の近接クラスタによって構成される1通りの組合せを作成する。なお、近接クラスタ組合せ候補を作成する際には、各組合せ候補を構成する近接クラスタの最大値を制限しておくことができる。例えば、人の脚と胴を検出する場合であれば、最大値を2とすることができる。この場合は、1個の近接クラスタによって構成される組合せと、2個の近接クラスタによって構成される組合せが作成される。
【0045】
次いで、演算装置20は、ステップS52で作成した近接クラスタ組合せ候補の中から、一の近接クラスタ組合せ候補を選択する(S54)。そして、選択した近接クラスタ組合せ候補の大きさが適切か否かを判断する(S56)。すなわち、選択した近接クラスタ組合せ候補を構成する各クラスタを包含する円を決定し、その円の直径が設定値を超えるか否かで判断する。具体的には、図10に示すように、近接クラスタ組合せ候補が2つのクラスタ44,46で構成されている場合は、これらのクラスタ44,46を包含する円48を決定し、この円48の直径が設定値を超えるか否かを判断する。
【0046】
なお、本実施例では、近接クラスタ組合せ候補の大きさと設定値とを比較して、近接クラスタ組合せ候補の大きさが適切か否かを判断したが、これ以外の方法によって、近接クラスタ候補の大きさが適切か否かを判断するようにしてもよい。例えば、近接クラスタ組合せ候補の大きさと物体の大きさとを比較し、両者の差が大きい場合には、近接クラスタ組合せ候補の大きさが適切でないと判断するようにしてもよい。このような判断をすることで、誤った近接クラスタ組合せ候補が物体に対応付けられることを防止することができる。
【0047】
選択した近接クラスタ組合せ候補の大きさが適切でない場合(ステップS56でNO)は、ステップS60に進む。選択した近接クラスタ組合せ候補の大きさが適切である場合(ステップS56でYES)は、演算装置20は、ステップS20で選択した物体の推定存在領域の中心(図9に示す例では、楕円42の中心43)と、近接クラスタ組合せ候補の中心(図10に示す例では、円48の中心49)との距離(すなわち、評価指標)を算出する(ステップS58)。
【0048】
ステップS60に進むと、ステップS52で作成された全ての近接クラスタ組合せ候補について、上述したステップS56又はS58の処理(距離算出)を行っているか否かを判断する。そして、全ての近接クラスタ組合せ候補についてS56又はS58の処理を行っていない場合(ステップS60でNO)は、ステップS54に戻って、ステップS54からの処理を繰り返す。これによって、作成された全ての近接クラスタ組合せ候補に対して、その大きさが評価され、大きさが適切なものについては中心間の距離が算出される。
【0049】
全ての近接クラスタ組合せ候補についてS56又はS58の処理を行っている場合(ステップS60でYES)は、演算装置20は、ステップS58で算出した距離が最も小さくなる近接クラスタ組合せ候補を物体と対応付ける(ステップS62)。これによって、対応付けクラスタ候補抽出処理が終了する。
【0050】
なお、ステップS58及びS62の処理を行う際は、物体の速度ベクトルの分散の逆数を考慮して、対応付ける近接クラスタ組合せ候補を決めることができる。すなわち、物体の速度は、進行方向に対してはバラツキが大きく、進行方向と直交する方向に対してはバラツキが小さいことが多い。このため、進行方向の距離については、進行方向の速度の分散(バラツキ)の逆数を考慮することで、その値を小さく評価する。一方、進行方向と直交する方向の距離については、進行方向の速度の分散(バラツキ)の逆数を考慮することで、その値を大きく評価する。そして、両者を足し合わせて、その値がもっとも小さくなるものを選択すればよい。例えば、図13(a)は、歩行者の推定位置(楕円の中心)の前方に、踏み出した歩行者の足を計測したクラスタ68bが存在し、側方に何らかの障害物を計測したクラスタ68aが存在している状況を示している。この場合に、物体(歩行者)の速度ベクトルの分散を考慮しないと、物体66に対応付けるクラスタはクラスタ68aとなる。一方、図13(b)に示すように、物体の速度ベクトルの分散の逆数を考慮すると、物体66に対応付けるクラスタはクラスタ68bとなる。移動中の歩行者の速度を、観測されたクラスタの位置から求める場合、脚の踏み出し、踏み下ろしなどによって、進行方向の速度のバラツキが大きい。このため、このバラツキを考慮することで、ステップS58及びS62の判定精度を高めることができる。
【0051】
また、物体の大きさと近接クラスタ組合せ候補の大きさの相違を評価関数の一つに入れるようにしてもよい。すなわち、近接クラスタ組合せ候補を構成するクラスタの組合せによっては、推定存在領域の中心との距離が短くなる場合があり、その結果、誤った近接クラスタ組合せ候補が対応付けられることがある。このため、物体の大きさと近接クラスタ組合せ候補の大きさの相違を評価関数の一つに入れることで、誤った対応付けを防止することができる。
【0052】
ここで、図11,12を用いて、対応付けクラスタ候補の抽出処理を具体的に説明する。図11は、二人の人間がすれ違うときにLRF12で計測される計測点の状態を示している。図中、物体(歩行者)50,52は前回のステップで検出されたものであり、領域53内の4つのクラスタは今回のステップで検出されたものである。また、領域54は物体50の推定存在領域であり、領域56は物体52の推定存在領域である。
【0053】
図12に示すように、演算装置20は、物体50の推定存在領域54に存在する近接クラスタ候補から、近接クラスタ組合せ候補を作成する。推定存在領域54には3つの近接クラスタ候補が存在するため、近接クラスタ組合せ候補は(a)〜(g)の7通りとなる。近接クラスタ組合せ候補が作成されると、次いで、(a)〜(g)のそれぞれについて、その近接クラスタ候補の中心と推定存在領域54の中心との距離dが計算される。そして、最も距離dが小さくなる近接クラス組合せ候補(f)が物体50と対応付けられる。物体52については、物体50と同様に処理することができる。
【0054】
なお、上述した説明から明らかなように、物体50は、前回のステップでは1つのクラスタとして検出されているが、今回のステップでは2つのクラスタとして検出される。本実施例では、推定存在領域54内に存在する近接クラスタ候補からそれらの組合せを作成し、作成した組合せのそれぞれについて評価する。このため、物体から計測されるクラスタの数が変化しても、その変化に対応することができる。
【0055】
対応付けクラスタ候補抽出処理が終了すると、図3のステップS26に進んで、物体記憶部34に記憶されている物体の全てについて、ステップS22(近接クラスタ候補抽出処理)とステップS24(対応付けクラスタ候補抽出処理)を実行しているか否かを判定する(ステップS26)。全ての物体について処理を実行していない場合(ステップS26でNO)は、ステップS20に戻って、ステップS20からの処理が実行される。これによって、全ての物体について、対応付けられる近接クラスタ組合せ候補が存在するか否かが判定されることとなる。全ての物体について処理を実行している場合(ステップS26でYES)は、対応付けクラスタ決定処理を実行する(ステップS28)。
【0056】
ステップS28の対応付けクラスタ決定処理を、図6を参照して説明する。図6に示すように、まず、ステップS12でクラスタ記憶部32に記憶されたクラスタの中から1のクラスタを選択する(ステップS70)。次いで、ステップ70で選択したクラスタに、ステップS14の処理により対応付けられた物体が存在するか否かを判定する(ステップS72)。対応付けられた物体が存在しない場合(ステップS72でNO)は、ステップS70で選択されたクラスタを、新規の物体として物体記憶部34に登録し(ステップS76)、ステップS80に進む。
【0057】
一方、対応付けられた物体が存在する場合(ステップS72でYES)は、ステップS70で選択したクラスタに対応付けられている物体のリストを作成する(ステップS73)。すなわち、ステップS12,S14では、物体を選択して、その選択した物体にクラスタを対応付けていくため、一のクラスタが複数の物体に対応付けられている場合がある。このため、まず、クラスタ毎に、そのクラスタが対応付けられている物体をリストアップする。
【0058】
次いで、演算装置20は、リストアップされた物体の中から一の物体を、最終的に対応付ける物体として決定する(ステップS74)。対応付ける物体を最終的に決定する方法としては、例えば、リストアップされた物体に移動物体と固定物体とが含まれている場合、移動物体の方を、最終的に対応付ける物体として決定する。あるいは、対応付けられている物体がともに移動物体である場合は、長時間観測されている移動物体の方を、最終的に対応付ける物体として決定する。
【0059】
ステップS80に進むと、演算装置20は、クラスタ記憶部32に記憶されている全てのクラスタについて、ステップS72〜S78の処理を実行したか否かを判定する(ステップS80)。全てのクラスタについてステップS72〜S78の処理を実行していない場合(ステップS80でNO)は、ステップS70に戻って、ステップS70からの処理を繰り返す。これによって、全てのクラスタについて、物体記憶部34に記憶されている1の物体に対応付けられるか、新規に物体記憶部34に登録されることとなる。一方、全てのクラスタについてステップS72〜S78の処理を実行している場合(ステップS80でYES)は、対応付けクラスタ決定処理を終了し、図2のステップS16に進む。
【0060】
図2のステップS16に進むと、演算装置20は、物体記憶部34に記憶されている物体毎に、その物体と対応付けられたクラスタの位置(すなわち、計測された物体の現在の位置)と、その物体の前回のステップで推定された速度に基づいて、現在の物体の位置と速度を推定する(ステップS18)。そして、対応付けられたクラスタから決定される物体の大きさと、推定された物体の位置及び速度を、物体記憶部34に記憶する。これによって物体記憶部34が更新され、物体検出装置10で行われる1ステップ(1計測)の処理が終了する。以後は、ステップS10〜S18までの処理が繰り返される。
【0061】
なお、上記のステップS18の処理には、公知のカルマンフィルタやパーティクルフィルタを用いることができる。カルマンフィルタ等を用いて現在の物体の位置と速度を推定するのは、計測された位置のみを用いると正確な位置が得られない場合があるためである。例えば、脚を計測する場合、一方の脚が他方の脚に遮蔽される場合があり、このような場合は、計測された脚の位置の実に基づいて物体の位置を推定すると、物体の正確な位置を推定することができない。したがって、現在の計測された位置と、過去の推定された速度を用いて、現在の位置と速度を推定することで、物体の位置と速度を精度良く推定することができる。
【0062】
なお、ステップS18で推定される物体の速度は、次回のステップで物体の推定存在領域を決定するのに用いられる。このため、本実施例では、カルマンフィルタ等で推定された物体の速度を平均化し、その平均化した速度を次回のステップの推定存在領域の決定に利用する。すなわち、物体の中には、その移動速度が周期的に振動するものがある。例えば、人が歩行すると、その歩行速度は歩行メカニズムに起因して周期的に振動する。このような移動速度の振動(揺れ)をカルマンフィルタによって除去するためには、複雑なモデルの適用が必要となり、容易ではない。
仮に、移動速度の揺れを除去しないで、次回の物体の存在領域を推定すると、推定存在領域が移動速度の揺れと同期して揺れることとなる。その結果、誤ったクラスタと対応付けられる場合が生じる。例えば、物体(歩行者)の近傍に存在する壁や柱などから得られたクラスタと対応付けられる場合が生じる。その結果、物体の追跡に失敗してしまう。
このため、本実施例では、カルマンフィルタ等で推定された速度をさらに平均化して移動速度の揺れを除去し、その平均化した速度を次回のステップに用いる。これによって、次回のステップにおいて、物体の存在領域を精度良く推定することができる。その結果、クラスタとの対応付けを精度良く行うことができ、物体を精度良く追跡することが可能となる。
【0063】
また、平均化した速度を用いて物体の存在領域を推定することで、物体が一時的に遮蔽状態となっても、途切れることなく物体を追跡することができる。すなわち、物体が遮蔽状態となったときは、遮蔽前の物体の速度を用いて物体の位置を推定しなければならない。物体の速度が振動している場合において、遮蔽前の推定された物体の速度が偏っていると、偏った速度を用いて物体の位置を推定することとなる。その結果、誤ったクラスタと対応付けられてしまう場合が生じる。しかしながら、本実施例では、平均化した速度を用いて物体の存在領域を推定するため、物体とクラスタの対応付けを精度良く行うことができ、物体を途切れることなく追跡することができる。多くの物体が存在する環境下では、物体の一時的な遮蔽は避けられないため、本実施例の物体検出装置は、物体の一時的な遮蔽に対して頑健なシステムとすることができる。
【0064】
なお、速度の平均化には、ローパスフィルタや移動平均法等を用いることができる。図15は、人が歩行しているところをLRF12で測定(図14に示す状態)し、その測定結果をカルマンフィルタで処理することで得られた速度と、その速度をさらにローパスフィルタで処理した速度を示している。また、図16は、図15と同様、カルマンフィルタによって処理することで得られた速度と、その速度を移動平均法によって平均化した速度を示している。いずれの場合も、カルマンフィルタで処理された速度の揺れが除去されている。
【0065】
上述した説明から明らかなように、本実施例の物体検出装置10では、LRF12を水平面に対して斜め上方に向けて設置するため、LRF12から遠方の物体の検出を容易化することができる。また、本実施例の物体検出装置10では、計測対象のモデル形態を特定せず、物体の推定存在領域内にあるクラスタの組合せのそれぞれについて、当該物体と対応付けるか否かを評価する。このため、物体から計測されるクラスタの数が変化する場合(例えば、物体の一部が遮蔽される場合、物体の計測部位が変化する場合等)にも対応することができる。さらに、本実施例の物体検出装置10では、物体の推定速度を平均化し、その平均化した速度を用いて物体の推定存在領域を算出する。このため、精度良く物体の対応付けを行うことができ、また、物体が一時的に遮蔽状態となっても、物体と計測されたクラスタとの対応付けを行うことができる。これらによって、本実施例の物体検出装置10は、物体を精度良く検出することができ、また、検出した物体を精度良く追跡することができる。
【0066】
なお、上述した実施例では、物体検出装置10を所定の位置に設置(固定)する例について説明したが、本願の技術はこのような例に限られない。例えば、上述した物体検出装置10を移動体(例えば、車両、移動ロボット等)に設置し、移動体の進行方向に存在する障害物を検出するようにしてもよい。この場合、移動体の位置を検出するセンサ(例えば、オドメトリ)と移動体の姿勢を検出するセンサ(例えば、ジャイロセンサ)を移動体に装備し、これらのセンサの値からLRF12の絶対位置と計測方向を計算すればよい。これによって、LRF12で計測された計測点の絶対座標系における位置を算出することができる。なお、移動体の絶対位置を検出するセンサとして、GPSセンサを用いることもできる。車両等の移動体に物体検出装置を搭載する場合、移動体のピッチング等により計測対象物(例えば、人)の計測部位が変化し、計測されるクラスタの個数が変化することがある。このため、車両等の移動体に本実施例の物体検出装置10を搭載することによって、このような事態に対応することができる。また、計測対象のモデル形態を特定していないため、人間だけでなく自転車等も、同一のアルゴリズムで検出することができる。
【0067】
また、上述した実施例では、LRF12の距離計測方向が水平面に対して斜め上方に向くようにLRF12を設置したが、本願の技術はこのような形態に限られない。例えば、物体の推定存在領域内にあるクラスタの組合せのそれぞれについて物体と対応付けるか否かを評価する技術、物体の速度を平均化して物体の存在領域を推定する技術等は、LRFの取付角度に関係なく実施することができる。また、LRFの距離計測方式も、レーザ光に限られず、公知の種々の方式(例えば、電磁波等)を用いることができる。
【0068】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例をさまざまに変形、変更したものが含まれる。
本明細書または図面に説明した技術要素は、単独であるいは各種の組み合わせによって技術的有用性を発揮するものであり、出願時請求項記載の組み合わせに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【0069】
10:物体検出装置
12:LRF
20:演算装置
22:座標変換部
24:特徴抽出部
26:対応付け部
28:運動推定部
30:取付位置情報
32:クラスタ記憶部
34:物体記憶部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16