(57)【要約】【課題】自律移動体のための物体認識装置を提供する。【解決手段】物体認識装置は、対象となる視野から障害物を検出し、その位置を計測する機能を有するセンサ装置および前記自律移動体の動きを制御する電子制御ユニットを備える。電子制御ユニットは、センサ装置から得られる複数の計測サイクルにわたる障害物の位置の変化に基づいて、該障害物の速度および移動方向を求める機能と、前記障害物の静止を判定する機能と、前記障害物の位置の今回計測値がそれまでに得られた前記移動方向から所定の角度を超える方向にあるとき、または前記静止を判定する機能で静止と判定されたとき、前記障害物が行動を変更したことを検出する機能と、前記障害物の行動の変更が検出されることに応じて、該行動の変更が検出された位置を起点として、新たに該障害物の速度または移動方向を算出する機能と、を実現するようプログラムされている。   【選択図】図７
2008275606.tif 000002
【特許請求の範囲】
【請求項１】
自律移動体に設けられた物体認識装置であって、
対象となる視野から障害物を検出し、その位置を計測する機能を有するセンサ装置および前記自律移動体の動きを制御する電子制御ユニットとを備え、該電子制御ユニットは、
前記センサ装置から得られる複数の計測サイクルにわたる前記障害物の位置の変化に基づいて、該障害物の速度および移動方向を求める機能と、
前記障害物の静止を判定する機能と、
前記障害物の位置の今回計測値がそれまでに得られた前記移動方向から所定の角度を超える方向にあるとき、または前記静止を判定する機能で静止と判定されたとき、前記障害物が行動を変更したことを検出する機能と、
前記障害物の行動の変更が検出されることに応じて、該行動の変更が検出された位置を起点として、新たに該障害物の速度または移動方向を算出する機能と、
を実現するようプログラムされている、物体認識装置。
【請求項２】
前記電子制御ユニットは、
前記センサ装置から得られる障害物の位置情報に基づいて、ある障害物の前回計測された位置から今回計測までの時間に該障害物が移動することができる移動範囲を求める機能と、
今回の計測において前記範囲内で障害物が検出されるとき、今回検出された障害物は前回検出された障害物と同一であると判定する機能と、
を実現するようプログラムされている、請求項１に記載の物体認識装置。
【請求項３】
前記電子制御ユニットは、
前記センサ装置から得られる前記障害物の位置情報に基づいて、該障害物の前回計測された位置と今回計測された位置との差が所定の値以下であるとき、該障害物は静止していると判定する機能を実現するようプログラムされている、請求項２に記載の物体認識装置。
【請求項４】
前記障害物の移動方向は、複数の計測サイクルにわたる移動方向の平均値である、請求項１に記載の物体認識装置。
【請求項５】
前記障害物が前記移動方向からプラスマイナス９０度の範囲外に移動したときに、前記急な方向転換を判定する、請求項４に記載の物体認識装置。
【請求項６】
前記障害物の位置が少なくとも２つの計測サイクルにわたって該２つの計測サイクルの前の位置に対して前記急な方向転換に該当するとき、該障害物の前記急な方向転換を判定する、請求項５に記載の物体認識装置。
【請求項７】
前記移動範囲を求める機能は、前記障害物の速度に計測時間間隔をかけることを含む請求項２に記載の物体認識装置。
【請求項８】
前記自律移動体は、二足歩行のロボットであり、前記障害物は人である、請求項７に記載の物体認識装置。
【請求項９】
前記障害物の速度は0から人のとりうる速度として、前記移動範囲を求める請求項８に記載の物体認識装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、自律移動体に備えられる物体認識装置に関する。
【背景技術】
【０００２】
特許文献１には、レーダーを用いて障害物との距離および相対速度情報を検出して危険判断を行う自動車の衝突防止装置において、障害物からの反射信号が低下して障害物を検出できなくなったとき、それまでに得られた情報を用いて障害物との距離および相対速度を推定し、この推定に基づいて危険判断を行うことが記載されている。
【０００３】
また、特許文献２には、車両周辺の障害物までの距離分布から立体物を識別し、車両との相対位置を求め、この相対位置が、車両を中心とするあらかじめ定めた領域の外に出たら、この障害物を消去し、新たに検出された障害物を記憶して、車両との接触可能性を判断する物体認識装置が記載されている。検出された障害物の位置を車両の移動に応じて更新するので、同じ障害物が複数回検出されると、複数個の障害物として演算され、車両の動きを制限することになる。
【０００４】
特許文献３には、自律移動装置において、複数の障害物が存在する場合においても各々の対応付けを行わず、自律移動装置に最も近い障害物の移動方向その他の移動状況を判断して回避判断を行うことが記載されている。自律移動装置の移動方向およびこれと直交する方向の２軸において、速度の方向成分を正、０、負の３つの値に離散化し、過去ｎフレームの値を前後、左右それぞれ加算して移動方向を判断する。
【０００５】
オフィス、家庭などで自律して移動するロボットは、人または人と似た行動をとる他のロボットなどの障害物と衝突することなく移動することが求められる。人は、移動速度は遅いが速度にむらがあり、急に立ち止まったり、急に方向を変えたりする性質をもっている。このような環境においてロボットは、人などの障害物との衝突を回避して移動経路を設定する必要がある。特許文献３のものは、人などの障害物のむらのある動きに対する対応が欠けている。
【特許文献１】特開昭53-16230号
【特許文献２】特許第3866328号
【特許文献３】特開2006-92253号
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記のような環境において、人などの障害物のむらのある動きに対応することができる自律移動体のための物体認識装置が必要とされている。
【課題を解決するための手段】
【０００７】
上記の課題を解決するため、この発明の物体認識装置は、対象となる視野から障害物を検出し、その位置を計測する機能を有するセンサ装置および前記自律移動体の動きを制御する電子制御ユニットを備える。この電子制御ユニットは、センサ装置から得られる複数の計測サイクルにわたる障害物の位置の変化に基づいて、該障害物の速度および移動方向を求める機能と、前記障害物の静止を判定する機能と、前記障害物の位置の今回計測値がそれまでに得られた前記移動方向から所定の角度を超える方向にあるとき、または前記静止を判定する機能で静止と判定されたとき、前記障害物が行動を変更したことを検出する機能と、前記障害物の行動の変更が検出されることに応じて、該行動の変更が検出された位置を起点として、新たに該障害物の速度または移動方向を算出する機能と、を実現するようプログラムされている。
【０００８】
この発明の一形態では、電子制御ユニットは、センサ装置から得られる障害物の位置情報に基づいて、ある障害物の前回計測された位置から今回計測までの時間に該障害物が移動することができる移動範囲を求める機能と、今回の計測において前記範囲内で障害物が検出されるとき、今回検出された障害物は前回検出された障害物と同一であると判定する機能と、を実現するようプログラムされている。
【０００９】
この発明のもう一つの形態では、電子制御ユニットは、センサ装置から得られる前記障害物の位置情報に基づいて、この障害物の前回計測された位置と今回計測された位置との差が所定の値以下であるとき、該障害物は静止していると判定する機能を実現するようプログラムされている。
【００１０】
さらにこの発明の一形態では、前記障害物の移動方向は、複数の計測サイクルにわたる移動方向の平均値である。
【００１１】
また、この発明の一形態では、前記障害物が前記移動方向からプラスマイナス９０度の範囲外に移動したときに、前記急な方向転換がなされたと判定する。
【００１２】
この発明のさらにもう一つの形態では、前記障害物の位置が少なくとも２つの計測サイクルにわたって該２つの計測サイクルの前の位置に対して前記急な方向転換に該当するとき、この障害物の急な方向転換を判定する。
【００１３】
この発明の一形態では、前記移動範囲は、前記障害物の速度に計測時間間隔をかけて求められる。
【００１４】
この発明のさらに一形態では、前記自律移動体は、二足歩行のロボットであり、前記障害物は人である。
【００１５】
この発明の一形態では、障害物の速度は0から人のとりうる速度として、前記移動範囲を求める。
【発明を実施するための最良の形態】
【００１６】
次に図面を参照しながら、この発明の実施の形態を説明する。この実施形態では自律移動体として２足歩行のロボットを用いる。このようなロボットは、電子制御ユニット(ECU)が組み込まれており、このECUにより行動が制御される。ECUは、基本的にはコンピュータであり、プロセッサ（CPU）、CPUの作業領域を提供するランダムアクセス・メモリ（RAM）、コンピュータ・プログラムおよびデータを格納する読み取り専用メモリ(ROM)、ロボットの諸々の箇所に設けられたセンサからの信号を受け取り処理する入力インターフェス、ならびにロボットの諸々の箇所のアクチュエータに駆動信号を送る出力インターフェスを備えている。この発明は、このような電子制御ユニットに新たな機能を追加する。
【００１７】
図１は、この発明によって、追加された機能を有するECU10の機能ブロック図である。ロボットに組み込まれた内界センサ１および外界センサからの信号は、入力インターフェス11でサンプリングおよびAD（アナログ/ディジタル）変換処理を受け、それぞれ自己位置認識部13および物体認識部15に送られる。
【００１８】
内界センサ1は、エンコーダ、ジャイロ、加速度センサなどで構成することができる。ロボットの分野では、これらで得られる信号から基準時間内の移動変化量を推定し、それを時間積分することにより初期位置からの総移動量を計算することが行われている。この手法は、デッドレコニング(Dead Reckoning)法と呼ばれている。自己位置認識部13は、内界センサ1からの信号に基づいてデッドレコニング法により絶対座標系における自己位置および自己の移動速度を推定する。自己位置認識部は、外界センサ3からの信号に基づいて外部環境内の特徴点（ランドマーク）を観測し、ロボットの保持している（ROMまたはRAMに記憶されている）環境地図と照合して自己位置を同定することもできる。
【００１９】
外界センサ3は、CCDカメラ、超音波センサ、レーザレンジファインダなどで構成することができる。この実施例では、外界センサ3は、ステレオカメラであり、物体認識部15は、ステレオカメラからの画像データを処理して、画像から障害物を検出し切り出す。検出した障害物は、矩形、楕円などの図形で近似してデータ処理を行う。この実施例では、ステレオカメラの視界は、幅90度、奥行き9メートルの扇形とした。ステレオカメラから得られる画像データから視界内のそれぞれの画素までの距離を計算、この距離に基づいて背景画像から障害物を切り出す手法はこの分野でよく知られている。また、時間差を有する２以上の画像からオプティカルフローを求め、オプティカルフローに基づいて移動する障害物を背景画像から切り出す技術もこの分野でよく知られている。物体認識部15は、これらの技術を用いてカメラの視界から障害物を切り出す。
【００２０】
移動推定部17は、物体認識部15から得られる検出された障害物の位置情報および自己位置認識部13から得られる自己の位置情報を用いて、絶対座標系における自己の位置および検出された障害物の位置を求める。このとき、前回の計測時(t-1)に得られた検出障害物の位置と今回の計測時(t0) で得られる位置とを比較し、その差が所定の範囲内であるとき、計測時(t-1)に検出した障害物と今回の計測時(t0)検出した障害物は同一であると判定する。
【００２１】
オフィス内に二足歩行ロボットを配置する場合、環境の中で移動する障害物は人間または他のロボットである。オフィス内で人がとりうる速度vは一般に、静止状態の0km/hから8km/hである。計測間隔Δt= t0 - t-1の時間に人が移動する範囲は、時間t-1におけるその人の位置から半径vΔtの範囲である。一実施例では、人の移動速度をvkm/h（たとえば、オフィスにおける人の平均的な移動速度である4km/h）とし、時間t0において検出される人の位置が時間t-1におけるその人の位置から半径vΔtの範囲内であるとき、同一障害物を検出していると判定する。
【００２２】
移動推定部17は、ロボットAの視野内の人に関し、前回の計測時(t-1)におけるこの位置と、今回の計測時(t0)における位置とから、この人の移動速度および移動方向を求める。静止している人については、その移動速度をゼロにセットする。
【００２３】
環境記述部19は、移動推定部17で認識された検出障害物に関する情報、すなわち、位置、形状、速度および移動方向、ならびに自己位置認識部13で得られた自己の位置情報、プログラムにより指示された移動速度および予め定められている自己の形状に基づいて、干渉判定領域および予測掃引領域を生成する。
【００２４】
図２を参照すると、ロボットAの現在位置を座標の原点とし、その形状を半径ｒの円で近似し、検出した障害物Bを矩形で近似して検出された位置を座標上に示す。障害物Bの干渉判定領域Cは、ロボットAを現す半径ｒの円と障害物Bを現す矩形とのミンコフスキー和によって求められる。ミンコフスキー和は、既知の論理であり、次の式で現される。
【数１】
2008275606.tif 000003
【００２５】
予測掃引領域Mは、干渉判定領域Cを検出障害物であるロボットまたは人などの障害物Bの移動方向に拡大（掃引）した領域である。図３を参照すると、予測掃引領域Mは、障害物Bが検出された移動方向に所定の時間内に移動する領域であり、干渉判定領域Cを障害物Bの移動方向に掃引して得られる。ここでの所定の時間は、ロボットAが障害物Bの位置に到達するまでの時間（予測到達時間）であり、予測掃引領域Mは、この時間の間に障害物Bが移動すると予測される領域である。予測到達時間Tは、次の式で求められる。
T＝（ロボットAから障害物Bまでの距離）/（AとBの相対速度）    (2)
【００２６】
また、予測掃引領域は、干渉判定領域を障害物Bの移動方向に（障害物Bの速度  ×  T）だけ拡大して求められる。
【００２７】
図４は、障害物Bに関する検出データが敏感すぎるときの予測掃引領域の振動を現している。
【００２８】
移動計画部21は、ロボットAが目的点まで移動する経路を生成する。図５を参照すると、ロボットAが既に設定済みの経路に沿って移動しているとき、計測時(t-1)に生成された干渉判定領域C1からC4と設定済みの経路とが干渉するかどうかを判定する。図５の例では、丸印で示すように干渉判定領域C3と経路とが干渉している。このような場合、移動計画部21は、図６に示すように障害物Bの予測掃引領域M1からM4と干渉しない経路を生成する。計測時(t-1)において経路が未設定のときは、初期設定されている目的地に向かう経路を同様の手法により生成する。
【００２９】
図７は、図１の物体認識部15および移動推定部17の詳細な機能ブロック図である。物体切り出し部31は、外界センサ3から得られる画像データから人またはロボットである障害物を切り出し、位置計測部33は、切り出された障害物の位置を計測する。計測された位置データは、物体データメモリ30に記憶される。同一判定部34は、今回の計測(t0)で検出された障害物が前回(t-1)検出された障害物の位置から半径vΔtの範囲内（vは障害物の移動速度、Δtは計測間隔： t0 - t-1）にあるときは、今回検出した障害物は前回検出した障害物と同一であると判定し、その障害物に関連づけて位置データを記憶する。図８(A)において、この円を実線で示す。P1を中心とする、障害物Bと同じ障害物Bとのミンコフスキー和の円を想定し、つまり、障害物Bの半径を２倍にした円を想定して、静止/移動判定部41は、P2がこのミンコフスキー和の円内にあるかどうかを判定し、円内にあるとき、位置P2の障害物は位置P1にあった障害物と同一と判定することもできる。
【００３０】
図８(A)を参照すると、静止/移動判定部41は、前回位置P1にあった障害物の今回計測された位置がP1から点線で示す円内にあるとき、この障害物は静止していると判定する（ブロック42）。
【００３１】
この判定の演算においては、統計的に位置の計測誤差を求め、この計測誤差を加えて上記の範囲を定めることができる。例えば、障害物の速度推定誤差、画像処理誤差などを加えて上記の範囲を定めることができる。一実施例では、計算誤差を16cmとする。ブロック42での判定がノーで、障害物が移動したと判定されると、速度・方向算出部35は、計測（サンプリング）ごとに障害物の速度および方向を算出する。
【００３２】
障害物の移動方向は、所定数の計測サイクルにわたる同一障害物の位置の変化から算出される。移動方向は、ロボットAのメモリ上に存在する環境マップ上の２次元座標上の方向として算出し、検出された障害物に関連づけて物体データメモリ30に記憶される。
【００３３】
ここで、図８(B)を参照して、平滑化部39の機能を説明しておく。平滑化部39は、所定数の計測サイクルにわたって計測ごとに速方向算出部35で算出された複数の速度値の移動平均として障害物の平滑化された移動速度および移動方向を算出する。こうして平滑化された速度および方向のデータが図１を参照して説明した環境記述部19に送られ、その障害物の干渉判定領域および予測掃引領域の算出に用いられる。平滑化は、たとえば次の式を使用して行われる。
V0= (… + a-2v-2 + a-1v-1 + a0v0)/N
【００３４】
ここで、V0は、平滑化された速度ベクトル、vは、計測時における障害物の速度ベクトル、aは重み付け係数で、新しいデータほど大きい値にすることができる。また、aはすべての時刻の速度に対して同じ値を用いてもよい。
【００３５】
図８（B）は、位置P０までのデータを用いて平滑化された速度ベクトルV0に対し、障害物が位置P+1に移動したときの速度ベクトルv0がずれている状態を示している。
【００３６】
図８(C)を参照すると、位置P+1における障害物の移動方向は平滑化された速度ベクトルV0の方向である。次のサンプリングにおいて、障害物がP+2に移動したことが検出されると、判定ブロック43においてP+1からP+2への速度ベクトルv+1が前回の位置において平滑化された速度ベクトルV0の方向に対しプラスマイナス９０度の範囲にあるかどうかを判定する。v+1がこの範囲にあれば、平滑化部39に進む。v+1がこの範囲にないときは、平滑化部39による平滑化ベクトルV+1の算出を保留し、次のP+3とP+2から算出される速度ベクトルv+2とv+1との角度差が所定の範囲（たとえば、プラスマイナス２０度）であれば、行動変更検出部38に進む。これにより、データの信頼性が高いことを確認知って処理を実行することができる。
【００３７】
行動変更検出部38は、判定ブロック43での判定がノーであることに応じて、障害物が移動方向を急角度に変更したことを検出し、位置P+1までのこの障害物の移動データを物体データメモリ30からリセットして、以後の速度および方向の演算に使用しないようにする。すなわち、この障害物の速度および方向は、位置P+1を起点として新たに演算される。この処理は、同じ位置におけるサンプリングを複数回行って、データの信頼性が高いことを確認して実行することができる。
【００３８】
障害物が急に方向を変えたとき、いわば逆方向に向かう速度を平滑化しても意味がなく、信頼性のないデータが作成されるので、このような処理を行う。
【００３９】
また、図８（D）を参照すると、位置P+2が位置P+1に対し、障害物静止の範囲にあるときは、速度・方向算出部35は、プロセスをブロック43に移すのを停止し、これにより平滑化部39が平滑化速度ベクトルV+1を算出するのを保留させる。その次の位置P+3が位置P+1に対し静止の範囲にあるかどうかを判定し、静止の範囲にあるときは、それまでのこの障害物の移動データをリセットし、P+3を起点としてそれ以後の速度ベクトルvを算出する。すなわち、障害物が静止したときは、その後の動きはそれ以前の動きとの関連性が薄いので、静止点を起点として以後の演算を行う。
【００４０】
行動変更検出部38は、ブロック43での判定に基づいて「急変」信号を環境記述部19に送る。図１の移動計画部21は、この急変情報に基づいてロボットの移動計画を立てる。次の計測サイクルにおいて、速度・方向算出部35は、計測時(t0) におけるその障害物の位置を起点として、それ以降における位置データを用いて新たにこの障害物の移動速度および移動方向の算出を開始する。
【００４１】
オフィスまたは家庭で人間は、ただぶらぶらと動いたり、振り返って停止したりする動きをする。このような場合、その人は、それまでの速度とは全く異なる速度や移動方向に動くことが多い。このため、この発明では、障害物の移動方向が急変したときは、急変した位置を起点として以後の移動速度および移動方向を算出する。
【００４２】
同一障害物の今回(t0)の移動方向が前回までの進行方向のプラスマイナス９０度の範囲にあるときは、その人の位置データは物体データメモリ30に記憶され、平滑化部39がそれまでの所定サイクルの位置データに今回の位置データを加えて平滑化したその障害物の速度および移動方向を算出する。
【００４３】
以上にこの発明を具体的な実施例について説明したが、この発明はこのような実施例に限定されるものではない。
【図面の簡単な説明】
【００４４】
【図１】この発明の物体認識装置の全体的な構成を示す機能ブロック図。
【図２】ミンコフスキー和の一例を示す図。
【図３】干渉判定領域Cを掃引して予測掃引領域Mを生成する態様を示す図。
【図４】予測掃引領域Mを生成する感度が高く、領域Mが振動する様子を示す図。
【図５】干渉判定領域C1―C4とロボットAの経路との関係の一例を示す図。
【図６】予測掃引領域M1―M4とロボットAの経路との関係の一例を示す図。
【図７】図１の物体認識部15および移動推定部17の詳細な機能ブロック図である。
【図８】ロボットAの移動、静止の状態を示す図
【符号の説明】
【００４５】
１      内界センサ
３      外界センサ
10      電子制御ユニット（ECU）
13      自己位置認識部
15      物体認識部
17      移動推定部
19      環境記述部
21      移動計画部
22      駆動制御部
【図１】
2008275606.tif 000004
【図２】
2008275606.tif 000005
【図３】
2008275606.tif 000006
【図４】
2008275606.tif 000007
【図５】
2008275606.tif 000008
【図６】
2008275606.tif 000009
【図７】
2008275606.tif 000010
【図８】
2008275606.tif 000011