(57)【特許請求の範囲】
【請求項１】
移動体に備えられた場合に、当該移動体の周囲の少なくとも一部を撮像して、画像を入手する撮像部と、
前記撮像部が撮像した画像に人の像が含まれる場合に、前記人の像から当該人の体幹を代表点に定める特定部と、
前記特定部が定めた前記代表点の前記画像内における位置に基づいて、前記移動体の移動を制御する制御部と、
前記制御部は、前記人が前記撮像部の視野外に所在することにより、前記特定部が前記人の像から前記代表点を定めることができない場合に、前記移動体を後退する制御をおこなうことを特徴とする移動体制御装置。
【請求項２】
前記特定部は、
前記撮像部が時系列に撮像した複数の画像ごとに、前記代表点をそれぞれ抽出し、
前記制御部は、
前記特定部が抽出した前記代表点の位置の時間変化に基づいて、前記移動体の移動を制御する
ことを特徴とする請求項１に記載の移動体制御装置。
【請求項３】
前記制御部は、
前記撮像部が撮像した画像に、前記特定部が、所定の姿勢の人の像が含まれると判定した場合、当該人の前記代表点に基づく前記移動体の移動の制御を開始する
ことを特徴とする請求項１又は請求項２のいずれか一項に記載の移動体制御装置。
【請求項４】
前記制御部は、前記代表点と前記移動体の基準点との間の距離を、所定の距離を目標として前記移動体の移動を制御する請求項１から請求項３のいずれか一項に記載の移動体制御装置。
【請求項５】
請求項１から請求項４のいずれか一項に記載の移動体制御装置を備え、
任意の方向に地面に沿って移動可能な移動体。
【請求項６】
請求項５に記載の移動体は、無人搬送車である移動体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動体制御装置及び移動体に関する。
【背景技術】
【０００２】
従来から、特定の追尾対象物の位置を検出し、その追尾対象物と離間して追尾を行う追尾方法が提案されている。
例えば、特許文献１に記載の追尾方法は、追尾対象物に第１の位置検出センサと第１の情報通信手段を設け、第１の位置検出センサによる位置検出情報を、時計手段からの時刻情報とともに記憶手段を有する。また、本追尾方法は、追尾装置に第２の位置検出センサと第２の情報通信手段を設け、追尾装置は記憶手段に記憶された情報に基づき、追尾対象物が過去に通過した経路を再現して追尾を行う。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１５５３４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、人は、車両や台車など、車輪の回転により移動する移動体よりも複雑な動作を行う。人の移動を取得するためには、種々のセンサを用い、それぞれのセンサが検出した情報を用いて複雑な演算を実時間で行うことが要求されるので、多くの部品や演算量が要求される。また、特許文献１に記載の追尾方法は、第１の位置検出センサと第１の情報通信手段を追尾対象者に装着させることを要する。
【０００５】
本発明は上記の点に鑑みてなされたものであり、簡素な構成で人に追従することができる移動体制御装置及び移動体を提供する。
【課題を解決するための手段】
【０００６】
（１）本発明は上記の課題を解決するためになされたものであり、本発明の一態様は、移動体に備えられた場合に、当該移動体の周囲の少なくとも一部を撮像して、画像を入手する撮像部と、前記撮像部が撮像した画像に人の像が含まれる場合に、前記人の像から当該人の体幹を代表点に定める特定部と、前記特定部が定めた前記代表点の前記画像内における位置に基づいて、前記移動体の移動を制御する制御部と、前記制御部は、前記人が前記撮像部の視野外に所在することにより、前記特定部が前記人の像から前記代表点を定めることができない場合に、前記移動体を後退する制御をおこなうことを特徴とする移動体制御装置である。
【０００７】
（２）本発明の一態様は、上述の移動体制御装置であって、前記特定部は、前記撮像部が時系列に撮像した複数の画像ごとに、前記代表点をそれぞれ抽出し、前記制御部は、前記特定部が抽出した前記代表点の位置の時間変化に基づいて、前記移動体の移動を制御することを特徴とする。
【０００８】
（３）本発明の一態様は、上述の移動体制御装置であって、前記制御部は、前記撮像部が撮像した画像に、前記特定部が、所定の姿勢の人の像が含まれると判定した場合、当該人の前記代表点に基づく前記移動体の移動の制御を開始することを特徴とする。
【０００９】
（４）本発明の一態様は、上述の移動体制御装置であって、前記制御部は、前記代表点と前記移動体の基準点との間の距離を、所定の距離を目標として前記移動体の移動を制御することを特徴とする。
【００１０】
（５）本発明の一態様は、上述の移動体制御装置を備え、任意の方向に地面に沿って移動
可能な移動体である。
【００１１】
（６）本発明の一態様は、上述の移動体であって、無人搬送車である。
【発明の効果】
【００１４】
本発明によれば、簡素な構成で人に追従することができる。
【図面の簡単な説明】
【００１５】
【図１】第１の実施形態に係る移動体の構成を示す概略図である。
【図２】画像データと座標系を説明するための図である。
【図３】第１の実施形態に係る移動体制御装置の構成を示すブロック図である。
【図４】人体モデルの例を示す図である。
【図５】第１の実施形態に係る移動制御を説明するための平面図である。
【図６】第１の実施形態に係る移動制御の例を示す平面図である。
【図７】第１の実施形態に係る移動体制御処理を示すフローチャートである。
【図８】第２の実施形態に係る方向変更処理の一例を説明するための平面図である。
【図９】第２の実施形態に係る方向変更処理の他の例を説明するための平面図である。
【図１０】第２の実施形態に係る移動体制御処理を示すフローチャートである。
【図１１】第２の実施形態の変形例に係る方向決定処理を説明するための平面図である。
【図１２】撮像された画像の例を示す図である。
【図１３】第２の実施形態の変形例に係る方向決定処理を示すフローチャートである。
【図１４】第２の実施形態の変形例に係る移動体の構成を示す平面図である。
【図１５】第２の実施形態の変形例に係る移動体制御装置のブロック図である。
【図１６】第３の実施形態に係る移動体制御装置の構成を示すブロック図である。
【図１７】第３の実施形態に係る移動体制御処理を示すフローチャートである。
【図１８】基準点から代表点までの距離に対する速度の目標値の例を示す図である。
【発明を実施するための形態】
【００１６】
（第１の実施形態）
以下、図面を参照しながら本発明の第１の実施形態について説明する。
図１は、本実施形態に係る移動体１の構成を示す概略図である。図１において、Ｘ、Ｙ、Ｚは、それぞれ３次元直交座標系のＸ軸、Ｙ軸、Ｚ軸を示す。図１（Ａ）、（Ｂ）は、それぞれ移動体１の平面図、側面図である。
移動体１は、駆動部１３−１、１３−２、車輪１４−１、１４−２、１４−３、及び基台１５を備える。移動体１は、例えば、無人搬送車である。
駆動部１３−１、１３−２は、車輪１４−１、１４−２を回転させる。車輪１４−１、１４−２及び１４−３は、基台１５の底面を支持し、回転することにより移動体１の全体を移動させる。車輪１４−３は、当該底面の一辺の中点に近い位置に配置されているのに対し、車輪１４−１、１４−２は、当該一辺に対向する辺に近接し、基台１５の両側面に近接した位置に配置されている。軸線Ａｒは、車輪１４−１、１４−２の回転中心をそれぞれ通る直線である。以下の説明では、車輪１４−３から車輪１４−１、１４−２の中点への方向を前方、車輪１４−１、１４−２の中点から車輪１４−３への方向を後方と呼ぶ。また、前方に向かって左方、右方を、それぞれ単に左方、右方と呼ぶ。
【００１７】
車輪１４−１、１４−２の車軸（図示せず）には、それぞれ回転センサ（図示せず）が取り付けられている。回転センサは、それぞれ車輪１４−１、１４−２の回転速度を検出し、検出した回転速度を示す回転信号を駆動部１３−１、１３−２に出力する。駆動部１３−１、１３−２は、それぞれ回転センサから受信した回転信号が示す回転速度に基づいて車輪１４−１、１４−２の回転量を算出する。駆動部１３−１、１３−２は、それぞれ回転量を制御量、移動体制御装置２０から入力された駆動量を制御目標量として車輪１４−１、１４−２の回転を制御する。駆動部１３−１、１３−２は、車輪１４−１、１４−２の回転の制御において、例えば、ＰＩＤ（Ｐｒｏｐｏｒｔｉｏｎａｌ−Ｉｎｔｅｇｒａｌ−Ｄｅｒｉｖａｔｉｖｅ）制御を用いる。
【００１８】
基台１５には、撮像部１１と移動体制御装置２０と、が設置されている。撮像部１１、移動体制御装置２０のいずれか一方又は両方は、基台１５から着脱可能であってもよい。
図１に示す例では、撮像部１１の光学軸が前方に向けられている。また、撮像部１１の光学中心は、軸線Ａｒ上の車輪１４−１、１４−２の回転中心間の中点に平面視で一致している。以下の説明では、撮像部１１の光学中心を基準点Ｏｐと呼ぶ。基準点Ｏｐは、移動体１の位置を代表する点である。
【００１９】
撮像部１１は、光学軸の方向を中心とした所定の視野内の被写体の像を所定時間（例えば、３０ｍｓ）ごとに撮像する。つまり、撮像部１１は、移動体１の周囲の一部を撮像し、画像を入手する。撮像部１１は、撮像面Ｉｅに形成された被写体の像を撮像する。撮像部１１は、例えば、距離画像センサ、ステレオカメラ、等である。撮像部１１が入手する画像を示す画像データは、深度マップである。深度マップは、１フレームの画像の領域に含まれる複数の２次元座標のそれぞれについて深度値を有するデータである。換言すれば、深度マップは、複数の２次元座標の深度値で被写体表面の３次元形状を示すデータである。深度マップは、デプスマップ（ｄｅｐｔｈ  ｍａｐ）又は距離画像とも呼ばれる。例えば、深度マップは、撮像部１１が撮像した画像及び距離画像センサにより生成する。または、深度マップは、ステレオカメラが撮像した２枚の画像により生成されてもよい。撮像部１１は、入手した画像を示す画像データを移動体制御装置２０に出力する。
【００２０】
次に、画像の領域に含まれる２次元座標と深度値について図２を用いて説明する。以下の説明では、画像の領域に含まれる２次元座標を画像内座標と呼ぶことがある。
図２は、画像内座標と深度値の関係を説明するための図である。図２に示す例では、撮像部１１の光学軸の方向Ｏｃは、Ｚ方向に向けられている。
撮像面Ｉｅは、撮像部１１において基準点Ｏｐから前方に所定の焦点距離ｆだけ離れた位置に設けられている。撮像面Ｉｅの法線方向は、光学軸の方向Ｏｃに向けられている。基準点Ｏｐを通る光学軸と撮像面Ｉｅは、撮像面Ｉｅの中心ｏｃと交わる。画像内座標（ｘ，ｙ）は、撮像面Ｉｅに配列された複数の画素のいずれかの位置を示す。画像内座標（ｘ，ｙ）は、中心ｏｃを原点とする２次元座標系で表される。ｘ、ｙは、それぞれ水平方向の座標値、垂直方向の座標値を示す。
【００２１】
ここで、ある被写体の代表点Ｏｈの位置を示す３次元座標（Ｘ，Ｙ，Ｚ）が与えられている場合を仮定する。基準点Ｏｐと代表点Ｏｈとを通過する直線と撮像面Ｉｅとの交点ｏｈに、代表点Ｏｈを表す像が形成される。深度マップは、交点ｏｈの画像内座標（ｘ，ｙ）について代表点ＯｈのＺ方向の座標値を深度値Ｚとして有する。このとき、代表点ＯｈのＸ方向の座標値Ｘと、Ｙ方向の座標値Ｙは、深度値Ｚと画像内座標（ｘ，ｙ）を用いて、式（１）で表される。従って、深度マップにおいて、画像内座標（ｘ，ｙ）を指定して、代表点Ｏｈの３次元座標（Ｘ，Ｙ，Ｚ）が定まる。
【００２２】
Ｘ＝ｘ・Ｚ／ｆ，  Ｙ＝ｙ・Ｚ／ｆ  …  （１）
【００２３】
移動体制御装置２０は、撮像部１１が出力した画像データが示す人の像を検出する。移動体制御装置２０は、検出した人の像から、その人の体幹を代表点に定める。移動体制御装置２０は、定めた代表点に基づいて駆動部１３−１、１３−２による車輪１４−１、１４−２の回転を制御する。この制御により、移動体１の移動が制御される。
【００２４】
（移動体制御装置の構成）
次に、本実施形態に係る移動体制御装置２０の構成について説明する。
図３は、本実施形態に係る移動体制御装置２０の構成を示すブロック図である。
移動体制御装置２０は、画像入力部２１、対象特定部２２、移動制御部２５、姿勢認識部２６、及び記憶部２７を含んで構成される。移動体制御装置２０は、さらに撮像部１１を備えてもよい。
【００２５】
画像入力部２１は、撮像部１１から入力された画像データを記憶部２７に逐次に記憶する。画像入力部２１は、例えば、データ入出力インタフェースである。
対象特定部２２は、人体判定部２３と、代表点特定部２４とを含んで構成される。
人体判定部２３は、記憶部２７に逐次に記憶された画像データを読み取り、読み取った画像データから人の像を検出する。人体判定部２３は、例えば、画像データを参照して互いに近接する座標間の深度値の差に基づいて像の輪郭を抽出する。人体判定部２３は、抽出した輪郭と人体モデルとを照合して人の像を検出する。人体判定部２３は、抽出した輪郭を示す輪郭データを記憶部２７に記憶する。
【００２６】
人体モデルは、複数の節点の画像内座標（ｘ，ｙ）と、複数の辺を示すデータである。節点は、人体を構成する各部位の位置または人体を構成する各部位の中間位置を示す点である。節点は、例えば、頭部の位置または上腕と前腕との間を示す点である。また、節点は、ジョイント又はノードとも呼ばれる。辺は、各２個の節点間を接続することを示す情報である。辺によって、部位間の連結の有無が表される。辺は、リンクとも呼ばれる。従って、人体モデルにより、人体の姿勢が表現される。次に、人体モデルの例について説明する。
【００２７】
図４は、人体モデルの例を示す図である。図４に示す人体モデルは、１５個の節点ｊｔ−１〜ｊｔ−１５と、１４本の辺とを有する。例えば、節点ｊｔ−１、ｊｔ−２、ｊｔ８、ｊｔ−９、ｊｔ−１５は、それぞれ、頭部、胸部、右手部、腰部、右足部の各位置を示す。また、腰部の位置を示す節点ｊｔ−９と接続される辺の数は、３本である。３本の辺は、それぞれ胸部の位置を示す節点ｊt−２、左腰部の位置を示す節点ｊｔ−１０、右腰部の位置を示す節点ｊｔ−１１に接続されている。このような人体モデルを用いることで、人体の姿勢モデルが限定されやすい。そのため、人体判定部２３における人の像の検出、及び代表点特定部２４における代表点を定める際に要する演算量を低減することができる。
【００２８】
図３を用いて、人体判定部２３が人の像を検出する処理について説明する。記憶部２７には、複数の人体モデルを予め記憶させておく。人体モデルのそれぞれが表す人体の姿勢は、複数の人体モデル間で相互に異なる。また、記憶部２７に記憶させた人体モデルのそれぞれを、相互に異なる識別番号と対応付けておく。
人体判定部２３は、記憶部２７から各１つの人体モデルを読み取る。人体判定部２３は、抽出した輪郭と読み取った人体モデルとを照合する。照合の際に、人体判定部２３は、読み取った人体モデルを形成する各節点の画像内座標（ｘ，ｙ）を、ある変位量（Δｘ、Δｙ）だけずらす。人体判定部２３は、抽出した輪郭と、ずらした各節点の画像内座標（ｘ＋Δｘ，ｙ＋Δｙ）とのスコアを算出する。スコアは、輪郭が表す形状と人体モデルが表す姿勢との適合度を示す指標値である。人体判定部２３は、各１つの人体モデルに対し複数の変位量のそれぞれについてスコアを算出する。そして、人体判定部２３は、算出したスコアのうち最大となるスコアを与える人体モデルと変位量を定める。以下の説明では、最大となるスコアを最大スコアと呼ぶ。
人体判定部２３は、最大スコアが予め定めたスコアの下限以上である場合、画像に人の像が含まれると判定する。これにより、画像に含まれる人の姿勢と位置が特定される。人体判定部２３は、定めた人体モデルの識別番号と変位量を記憶部２７に記憶する。
人体判定部２３は、最大スコアが予め定めたスコアの下限よりも小さい場合、画像に人の像が含まれないと判定する。
【００２９】
代表点特定部２４は、記憶部２７から現在までの所定時間内に記憶された識別番号に対応付けられた人体モデルと変位量とを読み取る。所定時間は、例えば、撮像部１１が被写体の像を撮像する時間間隔と等しい。
代表点特定部２４は、読み取った人体モデルの節点のうち、人体の体幹の位置を示す節点を特定する。すなわち、対象特定部２２は、人の体幹の位置を示す節点を代表点に定める。体幹とは、人体のうち四肢と頭部を除いた胴体である。体幹は人の日常動作において四肢及び頭部ほど頻繁に動作しない。従って、体幹の位置の時間変化を取得することによって、歩行に伴う人の全身の並進運動を安定的に検出することができる。なお、体幹は、胸部、肩部、及び腰部を含むが、そのうち腰部のみが用いられてもよい。腰部は、他の部位よりも四肢や頭部の動作の影響を受けにくい。
【００３０】
代表点特定部２４は、特定した節点の画像内座標を読み取った変位量を加算して代表点の画像内座標を定める。代表点特定部２４は、定めた画像内座標を示す代表点データを記憶部２７に記憶する。上述したように、代表点の画像内座標（ｘ，ｙ）と、画像データを形成する距離値のうち代表点の画像内座標（ｘ，ｙ）で指定される距離値は、代表点の３次元空間内の位置（Ｘ，Ｙ，Ｚ）を表す。
【００３１】
移動制御部２５は、記憶部２７から現在までの所定時間内に記憶された代表点データを読み取る。移動制御部２５は、読み取った代表点データに係る代表点からの距離が所定距離（例えば、１．０ｍ）となる移動目標点を定める。移動制御部２５は、現在の基準点から移動目標点への移動量を算出する。移動制御部２５は、算出した移動量で移動するための駆動量を算出し、算出した駆動量で駆動することを指示する制御信号を生成する。移動制御部２５は、生成した制御信号を駆動部１３−１、１３−２に出力する。駆動部１３−１、１３−２は、移動制御部２５から入力された制御信号が示す駆動量で車輪１４−１、１４−２を回転させる。これにより、移動制御部２５が算出した移動量に基づいて移動体１が移動する。移動制御部２５が行う移動制御の例については、後述する。
【００３２】
姿勢認識部２６は、記憶部２７に現在までの所定時間内に記憶された輪郭データと、予め記憶された姿勢モデルを読み取る。姿勢モデルは、所定の姿勢を表す人体モデルである。所定の姿勢は、例えば、人が撮像部１１に対向して直立し、右上腕を水平面に対して平行に右方に向け、左上腕を鉛直方向に向けている状態である。
姿勢認識部２６は、輪郭データが示す輪郭と姿勢モデルとを照合して、所定の姿勢を認識できたか否かを判定する。所定の姿勢を認識できたとは、輪郭データの生成に用いられた画像に所定の姿勢の人の像が含まれることを意味する。
【００３３】
抽出した輪郭と姿勢モデルとの照合において、姿勢認識部２６は、例えば、抽出した輪郭と、複数の変位量のそれぞれを用いてずらした各節点の画像内座標（ｘ＋Δｘ，ｙ＋Δｙ）とのスコアを算出する。人体判定部２３は、算出したスコアのうち最大となる最大スコアと定める。姿勢認識部２６は、算出した最大スコアが所定のスコアの下限以上である場合、所定の姿勢を認識できたと判定する。姿勢認識部２６は、算出した最大スコアが所定のスコアの下限よりも小さい場合、所定の姿勢の認識に失敗したと判定する。照合に成功した場合、姿勢認識部２６は、照合の成功を示す照合データを記憶部２７に記憶する。そして、移動体制御装置２０は、後述する移動体制御処理を開始する。移動体制御処理には、移動制御部２５による移動体１の位置及び向きの制御が含まれる。なお、姿勢認識部２６は、代表点特定部２４の一部として構成されてもよい。代表点特定部２４の機能を共用することで、移動体制御装置２０を簡素に構成することができる。
【００３４】
記憶部２７は、各種のデータを記憶する記憶媒体を含んで構成される。記憶部２７は、例えば、ＲＯＭ（Ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、等を含んで構成される。
【００３５】
（移動制御）
次に、移動制御部２５が行う移動制御について説明する。
図５は、本実施形態に係る移動制御を説明するための平面図である。実線の四角形は、ある時刻ｔにおける移動体１を示す。破線の四角形は、移動目標となる移動目標点Ｏｐ’に移動したときの移動体１を示す。以下の説明では、時刻ｔにおいて、代表点Ｏｈが定められた場合を例にする。Ｏｃは、時刻ｔにおける移動体１の方向を示し、撮像部１１の光学軸の方向に一致する。Δθは、代表点Ｏｈの水平面内の方向を示す。
【００３６】
次に、移動制御部２５は、代表点Ｏｈからの距離が所定距離ｄであって、方向Δθである位置を移動目標点Ｏｐ’と定め、基準点Ｏｐから移動目標点Ｏｐ’への移動量を算出する。具体的には、移動制御部２５は、基準点Ｏｐにおける接線方向が方向Ｏｃであって移動目標点Ｏｐ’を通る弧Ｔｒを定め、定めた弧Ｔｒの道程を平均駆動量として定める。平均駆動量は、車輪１４−１に対する駆動量と車輪１４−２に対する駆動量の算術平均値である。また、移動制御部２５は、定めた弧Ｔｒの中心Ｏａから車輪１４−１、１４−２までの距離ρ１、ρ２を算出する。移動制御部２５は、算出した距離ρ１、ρ２のそれぞれについて、弧の中心から基準点Ｏｐまでの距離ρに対する比ｒ１、ｒ２を算出する。移動制御部２５は、定めた平均移動量に比ｒ１、ｒ２をそれぞれ乗じて車輪１４−１、１４−２のそれぞれに対する駆動量を算出する。
移動制御部２５は、それぞれ算出した駆動量での駆動を指示する制御信号を生成する。移動制御部２５は、生成した制御信号をそれぞれ駆動部１３−１、１３−２に出力する。駆動部１３−１、１３−２は、移動制御部２５から入力された制御信号が示す駆動量で車輪１４−１、１４−２を回転させる。
【００３７】
移動制御部２５が定めた弧Ｔｒは、移動体１が基準点Ｏｐから移動目標点Ｏｐ’に向かう軌跡に相当する。距離ρは、弧Ｔｒの曲率半径に相当する。曲率半径が車輪１４−１、１４−２間の間隔に等しい場合には、移動制御部２５は、車輪１４−１、１４−２のいずれかを静止させて移動体１を移動させる。曲率半径が０（ゼロ）である場合には、移動目標点Ｏｐ’が基準点Ｏｐと一致するので、移動制御部２５は、車輪１４−１、１４−２を互いに等速で逆回転させて移動体１を地面に沿って回転させる。この場合には、移動制御部２５は、目標方向Δθと、車輪１４−１、１４−２の中点から車輪１４−１、１４−２の一方までの距離ρとに基づいて、車輪１４−１、１４−２の駆動量を定める。
【００３８】
なお、所定の角度の閾値が十分に０に近い値（例えば、１．０°）であって、方向Δθの絶対値が当該閾値よりも小さくなる場合がある。撮像部１１の視野は移動体１の前方に向けられ、画像に基づいて定めた移動目標点Ｏｐ’は基準点Ｏｐの前方にあるとみなすことができる。この場合には、移動制御部２５は、算出した距離ｄ’から所定距離ｄの差を基準点Ｏｐから移動目標点Ｏｐ’の移動量と定める。移動制御部２５は、定めた移動量を車輪１４−１、１４−２共通の駆動量と定める。移動制御部２５は、定めた駆動量での駆動を指示する制御信号を生成する。移動制御部２５は、生成した制御信号をそれぞれ駆動部１３−１、１３−２に出力する。なお、移動量が正の値である場合には、移動体１が前進し、当該移動量が負の値である場合には、移動体１が後退する。以上、説明したように、移動制御部２５は、移動体１を地面上の任意の方向に移動させることができる。
【００３９】
なお、移動制御部２５は、算出した距離ｄ’に応じて、予め設定された加減速時間Ｔに従って移動体１の進行速度を算出してもよい。進行速度には上限がある。例えば、移動開始時点の進行速度が０である場合、その時点から加減速時間Ｔだけ経過した時点における進行速度は上限になる。他方、進行速度が上限であって、ある時点において制動が開始される場合を仮定すると、その時点から加減速時間Ｔだけ経過した時点における進行速度は０になる。従って、横軸を時刻、縦軸を速度として表される速度のプロットの形状は、台形となる。但し、距離ｄ’によっては、移動開始時点から加減速時間Ｔが経過する前に、移動制御部２５が移動体１に対する制動を開始することがある。その場合には、速度のプロットの形状は、三角形となる。
【００４０】
また、撮像部１１から取得される画像データは、上述の深度マップに限られず、画像内座標（ｘ，ｙ）ごとの距離ｄ’を示す画像データも利用可能である。上述したように水平方向の座標ｘに基づいてＸ座標が一意に与えられる。Ｘ座標は、基準点Ｏｐを原点とした３次元空間内の水平方向の座標値である。移動制御部２５は、画像データに基づいて定めた代表点ＯｈのＸ座標および距離ｄ’から移動体１の目標方向Δθを算出する。
【００４１】
そして、移動制御部２５は、算出した目標方向Δθと上述した信号速度に基づいて、車輪１４−１、１４−２のそれぞれに対する速度減衰率を算出する。速度減衰率は、車輪１４−１、１４−２間の回転数の比率を示す係数である。例えば、目標方向Δθが１０°の場合、車輪１４−１の速度減衰率が１である場合に、車輪１４−２の速度減衰率は０．９となる。その結果、移動体１は、前進しながら右方もしくは左方に進む。また、距離ｄ’から所定距離ｄの差分、すなわち移動量Δｄが負である場合には、移動体１は、後退しながら右方もしくは左方に進む。
【００４２】
移動制御部２５は、以下に説明するように、移動量Δｄの値に応じて車輪１４−１、１４−２に対する駆動速度を定める。
（１）移動量Δｄが正である場合、移動制御部２５は、前述の進行速度に対して速度減衰率を乗算して車輪１４−１、１４−２に対する駆動速度を定める。
（２）移動量Δｄが０である場合、移動制御部２５は、予め設定した旋回上限速度に対して速度減衰率を乗算して車輪１４−１、１４−２に対する駆動速度を定める。
（３）移動量Δｄが負である場合、前述の進行速度も負となる。この場合、移動制御部２５は、前述の進行速度に対して速度減衰率を乗算して車輪１４−１、１４−２に対する駆動速度を定める。
移動制御部２５は、定めた駆動速度で車輪１４−１、１４−２を回転させることを指示する制御信号を生成し、生成した制御信号を駆動部１３−１、１３−２に出力する。
【００４３】
次に、本実施形態に係る移動制御の例について説明する。
図６は、本実施形態に係る移動制御の例を示す平面図である。
図６（Ａ）は、移動体１の動きの例を示す。矢印ｍ１は、代表点Ｏｈが移動体１の前方に移動することによって移動体１から遠ざかる場合を示す。この場合には、矢印ｍ１’に示すように、移動体１は前進することによって代表点Ｏｈに近づく。矢印ｍ２は、代表点Ｏｈが移動体１の後方に移動することによって移動体１に近づく場合を示す。この場合には、矢印ｍ２’に示すように、移動体１は後退することによって代表点Ｏｈから遠ざかる。
【００４４】
図６（Ｂ）は、移動体１の動きの他の例を示す。矢印ｍ３は、代表点Ｏｈが移動体１に対して右方に移動する場合を示す。この場合には、矢印ｍ３’に示すように、移動体１は右方に旋回することによって代表点Ｏｈに向く。矢印ｍ４は、代表点Ｏｈに対して左方に移動する場合を示す。この場合には、矢印ｍ４’に示すように、移動体１は左方に旋回することによって代表点Ｏｈに向く。
【００４５】
以上に説明したように、移動制御部２５は、移動体１を地面上の任意の方向に移動する人体に追従させることができる。追従において、基準点から代表点までの距離が所定距離に近づく。例えば、所定距離が１．０ｍである場合には、平均的な上肢の長さ（日本人男性の場合、約７２ｃｍ）を有する人が歩行せず上肢を伸ばしても、上肢は移動体１に接触しない。他方、人が歩行しながら上肢を伸ばせば上肢は移動体に接触する。つまり、１．０ｍは、平均的な寸法を有する人が直ちに接触しないが、上体を傾けるか下肢を動かしながら上肢を伸ばせば直ちに移動体１にアクセスできる距離である。また、１．０ｍは、人の平均的な歩行速度（約４ｋｍ／ｈ）で移動中の移動体１の制動距離よりも短くなる距離である。
【００４６】
従って、所定距離の１．０ｍは、人体に接触せず、人が直ちにアクセス可能な平均的な距離である。所定距離は、厳密に１．０ｍではなくてもよく、１．０ｍから所定の範囲、例えば、０．８ｍから１．２ｍまでの範囲でもよい。また、接触せず直ちにアクセス可能な距離は、利用者の寸法、歩行速度、移動体の移動速度、等の利用条件に応じて異なるので、かかる利用条件に応じて所定距離を変更してもよい。
【００４７】
（移動体制御処理）
次に、本実施形態に係る移動体制御処理について説明する。
図７は、本実施形態に係る移動体制御処理を示すフローチャートである。
（ステップＳ１０１）画像入力部２１には、撮像部１１から画像データが入力される。その後、ステップＳ１０２の処理に進む。
（ステップＳ１０２）姿勢認識部２６は、記憶部２７に記憶された姿勢モデルデータを参照して、入力された画像データが示す画像において所定の姿勢を認識できたか否かを判定する。姿勢認識部２６が認識できたと判定した場合には（ステップＳ１０２  ＹＥＳ）、ステップＳ１０３の処理に進む。姿勢認識部２６が認識できないと判定した場合には（ステップＳ１０２  ＮＯ）、ステップＳ１０１の処理を繰り返す。
【００４８】
（ステップＳ１０３）画像入力部２１には、撮像部１１から画像データが入力される。その後、ステップＳ１０４の処理に進む。
（ステップＳ１０４）人体判定部２３は、記憶部２７に記憶された人体モデルデータを参照して、入力された画像データが示す画像から人の像を検出する。その後、ステップＳ１０５の処理に進む。
（ステップＳ１０５）代表点特定部２４は、検出された人の像のうち体幹に係る節点を代表点と定める。その後、ステップＳ１０６の処理に進む。
【００４９】
（ステップＳ１０６）移動制御部２５は、代表点からの距離が所定距離となる移動目標点を定める。その後、ステップＳ１０７の処理に進む。
（ステップＳ１０７）移動制御部２５は、移動体１の基準点から移動目標点までの移動量を算出する。その後、ステップＳ１０８の処理に進む。
（ステップＳ１０８）移動制御部２５は、算出した移動量に基づいて駆動部１３−１、１３−２を駆動する。その後、ステップＳ１０３に進む。
【００５０】
（変形例）
上述では、代表点特定部２４が、一時点で取得した画像データを用いて、その時点の代表点を定める場合を例にしたが、代表点特定部２４は、撮像部１１が時系列に撮像した複数の画像ごとに代表点をそれぞれ定めてもよい。すなわち、代表点特定部２４は、撮像部１１が時系列に撮像した複数の画像ごとに、代表点をそれぞれ抽出する。そして、移動制御部２５は、代表点特定部２４が抽出した代表点の位置の時間変化に基づいて、移動体１の移動を制御する。
【００５１】
ここで、代表点特定部２４は、現在までの予め定めた期間内で取得した代表点を用いて、現在の代表点を追跡する。追跡は、トラッキングとも呼ばれる。追跡において、代表点特定部２４は、現在までの予め定めた期間内で取得した代表点を線形予測して現在の代表点を算出する。そして、代表点特定部２４は、上述した手法を用いて現在取得された画像データから現在の代表点を定める。但し、人体判定部２３は、抽出した輪郭と人体モデルとの照合を行う際、追跡によって定めた代表点に係る画像内座標を与える変位量を予測変位量と定める。そして、人体判定部２３は、定めた予測変位量から所定の探索範囲内の複数の変位量のそれぞれについてスコアを算出し、算出したスコアから最大スコアを定める。代表点特定部２４は、追跡により定めた代表点と画像データに基づいて定めた代表点との距離を算出する。そして、代表点特定部２４は、算出した距離に基づいて、例えば、最小二乗法を用いて線形予測係数を更新する。
これにより、抽出した輪郭と人体モデルとの照合において、人体判定部２３は、最大スコアを探索するための変位量の探索範囲を制限することができる。言い換えれば、画像に人の像が含まれるか否かを判定し、画像が示す人の像から人体の姿勢と位置を特定する処理が軽減される。すなわち、画像に人の像の全体が含まれる必要がない。また、移動体１の振動による代表点のずれが緩和されるので移動体１の並進運動に精度よく追従することができる。
【００５２】
なお、上述では、代表点特定部２４が、主に人体の体幹の位置を示す節点を代表点に定める場合を例にしたが、他の部位の位置を示す節点を代表点に定めてもよい。その場合、代表点特定部２４は、現在の代表点を追跡してもよい。追跡において、当該節点の運動の形態を表す運動モデルを用いて代表点を予測してもよい。例えば、左下肢部の位置を示す節点が用いられる場合には、運動モデルは歩行に伴う左下肢部の前後の動きを示す係数を含む。この運動モデルを用いることによって、歩行に伴う前後の動きによる代表点の変位を抑制し、並進運動に応じた代表点を推定することができる。
【００５３】
以上に説明したように、本実施形態に係る移動体制御装置２０は、移動体１に備えられた場合に、移動体１の周囲の少なくとも一部を撮像して、画像を入手する撮像部１１を備える。また、移動体制御装置２０は、撮像部１１が撮像した画像に人の像が含まれる場合に、人の像から人の体幹を代表点に定める代表点特定部２４を備える。また、移動体制御装置２０は、代表点特定部２４が定めた代表点の画像内における位置に基づいて、移動体の移動を制御する移動制御部２５を備える。
この構成により、移動体制御装置２０は、移動体の移動を制御する際に、撮像された画像から定められた人の体幹の位置を利用することができる。そのため、複雑な人の動きを画像により一元的に把握し、人の並進運動を捉えることができるので、簡素な構成で移動体を人に追従させることができる。
【００５４】
また、本実施形態に係る移動体制御装置２０において、代表点特定部２４は撮像部１１が時系列に撮像した複数の画像ごとに、代表点をそれぞれ抽出する。移動制御部２５は、代表点特定部２４が抽出した代表点の位置の時間変化に基づいて、移動体の移動を制御することができる。
この構成により、代表点の位置の時間変化に基づいて人の動きの傾向を推定することができる。推定した人の動きの傾向を利用することにより処理を軽減することができる。
【００５５】
また、本実施形態に係る移動体制御装置２０において、姿勢認識部２６は、撮像部１１が撮像した画像に、所定の姿勢の人の像が含まれると判定された場合、移動制御部２５に代表点に基づく移動体の移動の制御を開始させる。
この構成により、人は移動体制御装置２０に接触しなくても、所定の姿勢をとることによって制御の開始を指示することができる。また、移動体制御装置２０は、人による制御の開始の指示を受け付けるための構成を必須としないため、部品点数の増加を抑えることができる。
【００５６】
また、本実施形態に係る移動体制御装置２０において移動制御部２５は、代表点と移動体１の基準点との間の距離を、所定の距離を目標として移動体１の移動を制御する。
この構成により、人と移動体１との間の距離が、所定の距離を目標として制御される。そのため、人が留意することができる範囲内に移動体１の位置を制御することと、移動体１の人への接触の回避とを両立することができる。
【００５７】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。上述した実施形態と同一の構成については、同一の符号を付して説明を援用する。
本実施形態に係る移動体制御装置２０において、代表点特定部２４が代表点を定めることができない場合、移動制御部２５は移動体１の向きを変える。
【００５８】
代表点特定部２４が代表点を定めることができない場合には、次の場合がある。
（１）人体判定部２３が、取得した画像から人の像を検出することができない場合。この場合には、人が撮像部１１の視野外に所在するために当該画像に人の像が含まれない場合、移動体１の振動により当該画像に「ぶれ」が生じた場合、などがある。人体判定部２３は、上述した最大スコアが所定のスコアの閾値よりも低い場合に、人の像を検出することができない、と判定することができる。
（２）代表点特定部２４が、検出した人の像から代表点を定めることができない場合。この場合には、検出した人の像に検出対象の体幹の位置を示す節点が含まれない場合、代表点の画像内座標（ｘ，ｙ）に係る深度値Ｚが異常である場合（例えば、０以下）、などがある。
【００５９】
次に、移動制御部２５が移動体１の向きを変える処理について説明する。移動体１の向きを変える処理を、方向変更処理と呼ぶ。
図８及び図９は、本実施形態に係る方向変更処理の例を説明するための平面図である。方向変更処理の態様には、次の態様（１）、（２）がある。（１）、（２）のいずれを実行するかを、移動制御部２５に予め設定しておいてもよい。
【００６０】
（１）移動体１を後退させる。図８に示すように、人の像を検出することができない場合には、代表点Ｏｈの画像内座標が画像の範囲外に所在する場合がある。このことは、代表点Ｏｈが、撮像部１１の視野Ｏｖの範囲外に所在することを意味する。
そこで、移動制御部２５は移動体１の移動方向を後方に定め、移動体１を所定の移動量Δｄだけ後退させる。ここで、移動制御部２５は、移動目標点Ｏｐ’を現在の基準点Ｏｐよりも移動量Δｄだけ後方に定める。移動制御部２５は、定めた移動目標点Ｏｐ’までの移動量Δｄに基づいて上述した移動制御を行う。移動体１を後退させることにより、前方の水平方向に後退前よりも広い範囲に所在する物体が撮像部１１の視野Ｏｖ内に含まれる。図８に示す例では、視野Ｏｖ内に人の像が含まれる。よって、代表点特定部２４は、代表点Ｏｈを再度定めることができる。
移動量Δｄは、代表点特定部２４が代表点Ｏｈを定めることができる距離ｄ’の範囲（例えば、０．５−３．５ｍ）よりも十分に小さくてもよい（例えば、０．３ｍ）。移動量Δｄを制限することで、移動体１の後方に所在する物体に移動体１が接触する可能性を低くすることができる。
【００６１】
（２）移動体１の水平方向を変化させる。図９に示す例では、移動制御部２５は、移動目標点Ｏｐ’を基準点Ｏｐと同一と定め、目標方向Δθを前方から所定角度だけ右回りに定め、目標方向Δθに基づいて上述した移動制御を行う。移動体１を右方に旋回させることにより、移動前の撮像部１１の視野Ｏｖよりも右方に所在する物体が、移動後の視野Ｏｖ内に含まれる。図９に示す例では、視野Ｏｖ内に人の像が含まれる。よって、代表点特定部２４は、代表点Ｏｈを再度定めることができる。なお、目標方向Δθは、右方に限られず、左方でもよい。目標方向Δθを与える所定角度は、撮像部１１の視野角よりも小さい角度であってもよい。方向変更処理を繰り返すことにより、移動体制御装置２０は、全周にわたり人の像の有無を探索することができる。
【００６２】
（移動体制御処理）
次に、本実施形態に係る移動体制御処理について説明する。
図１０は、本実施形態に係る移動体制御処理を示すフローチャートである。
図１０に示す移動体制御処理は、ステップＳ１０１−Ｓ１０８の処理と、ステップＳ２０１−Ｓ２０５の処理を有する。ステップＳ１０１−Ｓ１０８の処理については、上述した説明を援用する。
【００６３】
ステップＳ１０１−Ｓ１０４の処理が終了した後、ステップＳ２０１に進む。
（ステップＳ２０１）人体判定部２３は、入力された画像データが示す画像から人の像を検出できたか否かを判定する。人体判定部２３が検出できたと判定した場合には（ステップＳ２０１  ＹＥＳ）、ステップＳ１０５の処理に進む。ステップＳ１０５の処理が終了した後、ステップＳ２０２の処理に進む。人体判定部２３が検出できなかったと判定した場合には（ステップＳ２０１  ＮＯ）、ステップＳ２０３の処理に進む。
（ステップＳ２０２）代表点特定部２４が、検出した人の像から代表点を定めることができたか否かを判定する。代表点特定部２４が定めることができたと判定した場合には（ステップＳ２０２  ＹＥＳ）、ステップＳ１０６の処理に進む。代表点特定部２４が定めることができなかったと判定した場合には（ステップＳ２０２  ＮＯ）、ステップＳ２０３の処理に進む。
【００６４】
（ステップＳ２０３）代表点特定部２４は、代表点を定めることができなくなった時点からの経過時間が所定の経過時間の閾値（例えば、１５秒）以上になったか否かを判定する。
代表点特定部２４が所定の経過時間以上になったと判定した場合（ステップＳ２０３  ＹＥＳ）、図１０に示す処理を終了する。代表点特定部２４が所定の経過時間の閾値以上になっていないと判定した場合（ステップＳ２０３  ＮＯ）、ステップＳ２０４の処理に戻る。
（ステップＳ２０４）移動制御部２５は移動体１の向きを変える。ここで、移動制御部２５は、上述した方向変更処理を実行する。その後、ステップＳ１０３の処理に進む。
【００６５】
図１０に示す移動体制御処理により、移動制御部２５は、代表点特定部２４は、代表点を定めることができるまで移動体１の向きを変える。これにより、移動制御部２５は、移動体１を人に追従させる制御を再開することができる。但し、代表点を定めることができなくなった時点から所定の経過時間以上の時間が経過したとき、移動制御部２５は、移動体制御処理を停止する。
なお、移動制御部２５が移動体１を後退させるとき、移動目標点Ｏｐ’が所定の後退範囲を超える場合がある。所定の後退範囲とは、代表点特定部２４が代表点を定めることができる距離ｄ’の範囲の下限ｄｍｉｎ’から予め定めた限界値δｄだけ大きい値ｄｍｉｎ’＋δｄを下限とし、当該範囲の上限ｄｍａｘ’から予め定めた限界値δｄだけ小さい値を上限ｄｍａｘ’＋δｄとする範囲である。その場合、移動制御部２５は、上述した移動体制御処理を停止してもよい。これにより、代表点特定部２４は、移動体１の移動範囲を、代表点を定めることができる距離ｄ’の範囲内に制限することができる。
【００６６】
（変形例）
次に、本実施形態の変形例について説明する。移動制御部２５は、現在までの所定期間内に定められた代表点の画像内座標（ｘ，ｙ）に基づいて移動体１の向きを定めてもよい。前時刻における代表点の画像内座標（ｘ，ｙ）が、画像の水平方向の一端から所定の幅の領域に含まれる場合、移動制御部２５は、移動体の向きをその一端の方向に定める。前時刻における代表点の画像内座標（ｘ，ｙ）が、画像の水平方向の他端から所定の幅の領域に含まれる場合、移動制御部２５は、移動体１の向きをその他端の方向に定める。前時刻とは、現在処理対象としている画像データの直前に取得された画像データを処理した時刻を意味する。所定の幅は、画像の水平方向の大きさの半分の大きさよりも小さい。それ以外の場合、移動制御部２５は、移動体１を後退させると判定する。移動体１の向きを定める処理を、方向決定処理と呼ぶ。
【００６７】
図１１は、本変形例に係る方向決定処理を説明するための平面図である。
矢印ｍ１、ｍ２、ｍ３は、それぞれ人の動きを示す。◎印は、各時刻ｔにおける代表点Ｏｈ（ｔ）を示す。例えば、代表点Ｏｈ（ｔ１１）、Ｏｈ（ｔ１２）、Ｏｈ（ｔ１３）は、それぞれ、時刻ｔ１１、ｔ１２、ｔ１３における人の位置を示す。
【００６８】
矢印ｍ１は、移動体１の前方を人が左方から右方に横切ることを示す。また、時刻ｔ１２までは、人が撮像部１１の視野Ｏｖ内に所在し、その後、人が視野Ｏｖから脱出する。よって、時刻ｔ１３において、代表点特定部２４は、代表点を定めることができなくなったと判定する。そして、移動制御部２５は、記憶部２７から前時刻ｔ１２に係る代表点データを読み取る。読み取った代表点データが示す代表点の画像内座標（ｘ，ｙ）は、画像の右端から所定の幅の領域内に含まれる。従って、移動制御部２５は、移動体１の移動方向を右方と判定する。そして、移動制御部２５は、移動体１の向きを目標方向Δθだけ右方に変更する。
【００６９】
矢印ｍ２は、移動体１の前方を人が右方から左方に横切ることを示す。また、時刻ｔ２２までは、人が撮像部１１の視野Ｏｖ内に所在し、その後、人が視野Ｏｖから脱出する。従って、時刻ｔ２３において、代表点特定部２４は、代表点を定めることができなくなったと判定する。そして、移動制御部２５は、記憶部２７から前時刻ｔ２２に係る代表点データを読み取る。読み取った代表点データが示す代表点の画像内座標（ｘ，ｙ）は、画像の左端から所定の幅の領域内に含まれる。従って、移動制御部２５は、移動体１の移動方向を左方と判定する。そして、移動制御部２５は、移動体１の向きを目標方向Δθだけ左方に変更する。
【００７０】
矢印ｍ３は、人が移動体１に接近することを示す。時刻ｔ３１において、人は撮像部１１の移動体１の正面に所在する。矢印ｍ３の終点の×印は、その後、代表点特定部２４が代表点を定めることができなくなったことを示す。このとき、移動制御部２５は、記憶部２７から代表点データを読み取る。代表点データが示す代表点の画像内座標（ｘ，ｙ）は、画像のほぼ中央部に位置するので、画像の左端から所定の幅の領域内にも、画像の右端から所定の幅の領域内にも含まれない。従って、移動制御部２５は、移動体１を後退させると判定する。そして、移動制御部２５は、移動体１を移動量Δｄだけ後退させる。
【００７１】
次に、人の移動が矢印ｍ１で示される場合を例にして、撮像部１１で撮像された画像の例について説明する。図１２は、撮像部１１で撮像された画像の例を示す図である。
図１２（Ａ）は、時刻ｔ１２において撮像された画像Ｉｍ１２を示す。画像Ｉｍ１２は、左方から右方に移動する人ｈを表す。Ｃｍは、代表点の画像内座標（ｘ，ｙ）を示し、画像Ｉｍ１２における人ｈの位置を代表している。人ｈの像は、画像Ｉｍ１２の左端よりも右端に近い位置に含まれる。
【００７２】
図１２（Ｂ）は、時刻ｔ１３において撮像された画像Ｉｍ１３を示す。人ｈの像は、画像Ｉｍ１３に含まれない。破線は、仮にその部分まで視野が及んでいるとすると、認識される人ｈの像を示す。人ｈの像、ひいては、代表点の画像内座標（ｘ，ｙ）は画像Ｉｍ１３に含まれないので、代表点特定部２４は、代表点を定めることができなくなったと判定する。そして、移動制御部２５は、記憶部２７から前時刻ｔ１２に係る代表点データを読み取る。読み取った代表点データが示す代表点の画像内座標（ｘ，ｙ）は、画像の右端から所定の幅の領域内に含まれる。従って、移動制御部２５は、移動体１の移動方向を右方と判定する。そして、移動制御部２５は、移動体１の向きを目標方向Δθだけ右方に変更する。
【００７３】
図１２（Ｃ）は、時刻ｔ１４において、撮像された画像Ｉｍ１４を示す。撮像部１１の向きが右方に回転することにより、人が撮像部１１の視野Ｏｖ内に含まれる。従って、代表点特定部２４は、代表点を再度定めることができるようになる。
【００７４】
（方向決定処理）
次に、本変形例に係る方向決定処理について説明する。移動制御部２５は、以下に説明する方向決定処理を、ステップＳ２０３（図１０）において代表点特定部２４が所定の経過時間の閾値以上になっていないと判定した場合（ステップＳ２０３  ＮＯ）に開始する。
図１３は、本変形例に係る方向決定処理を示すフローチャートである。
（ステップＳ２１１）移動制御部２５は、記憶部２７から前時刻に係る代表点データを読み取る。その後、ステップＳ２１２に進む。
（ステップＳ２１２）移動制御部２５は、読み取った代表点データに係る代表点の方向を判定する。ここで、代表点データが示す代表点の画像内座標（ｘ，ｙ）が画像の右端から所定の領域内に含まれる場合、移動制御部２５は、代表点の方向を右方と判定する。代表点の画像内座標（ｘ，ｙ）が画像の左端から所定の領域内に含まれる場合、移動制御部２５は、代表点の方向を左方と判定する。代表点の画像内座標（ｘ，ｙ）が画像の左端から所定の領域内にも、画像の右端から所定の領域内にも含まれない場合は、代表点の方向は判定不能である。その後、ステップＳ２１３に進む。
【００７５】
（ステップＳ２１３）移動制御部２５が判定した代表点の方向が左方である場合には（ステップＳ２１３  左）、ステップＳ２１４の処理に進む。代表点の方向が判定不能である場合には（ステップＳ２１３  判定不能）、ステップＳ２１５の処理に進む。移動制御部２５が判定した代表点の方向が右方である場合には（ステップＳ２１３  右）、ステップＳ２１６の処理に進む。
【００７６】
（ステップＳ２１４）移動制御部２５は、移動体１の向きを左方に向けるための目標方向Δθを設定する。その後、ステップＳ２０４（図１０）の処理に進む。
（ステップＳ２１５）移動制御部２５は、移動体１を後退させるための移動量Δｄを設定する。その後、ステップＳ２０４の処理に進む。
（ステップＳ２１６）移動制御部２５は、移動体の向きを右方に向けるための目標方向Δθを設定する。その後、ステップＳ２０４（図１０）の処理に進む。
【００７７】
上述した方向決定処理によれば、前時刻において定められた代表点の画像内座標（ｘ，ｙ）が、画像の水平方向の一端から所定の幅の領域に含まれる場合、移動制御部２５は、移動体１の向きをその一端の方向に定める。そして、移動制御部２５は、定めた方向に移動体１を移動させる。これにより、人が直近に所在していた方向に移動体１を移動させることで、少ない移動量で人を再認識することができる。
また、前時刻において定められた代表点の代表画素が、画像の水平方向の両端のそれぞれから所定の幅の領域に含まれない場合、移動制御部２５は、移動体１を後退させると判定する。そして、移動制御部２５は、移動体１を後退させる。これにより、移動制御部２５は、より広い領域を撮像した画像から人を再認識する手がかりを得ることができる。
【００７８】
なお、上述では、移動制御部２５が前時刻において定められた代表点に基づいて移動体１の向きを定める場合を例にしたが、これには限られない。移動制御部２５は、現在から所定時間内（例えば、２秒）の複数時点のそれぞれにおいて定められた代表点に基づいて移動体１の向きを定めてもよい。
これにより、代表点特定部２４は、一時的に代表点を定めることができなくなったときでも、過去のいずれかの時点において定められた代表点を利用できる。そのため、移動制御部２５が、移動体１の向きを安定して定めることができる。
【００７９】
（物体検出部の設置）
移動体１には、図１４に示すように、さらに物体検出部１６が設置されてもよい。
図１４は、本変形例に係る移動体１の構成を示す平面図である。物体検出部１６は、基台１５に設置され、その周囲の検出範囲内に所在する物体を検出する。物体検出部１６が物体を検出できる検出範囲Ｏｄは、移動体１の後方に向けられている。検出範囲Ｏｄは、撮像部１１の視野Ｏｖとは互いに逆方向に向けられ、視野Ｏｖと重なる部分を有しない。そのため、物体検出部１６は、後方に所在する物体を検出することができる。物体検出部１６は、検出した物体の位置を示す物標データを移動体制御装置２０に出力する。物体検出部１６は、例えば、レーダ装置、赤外線センサ、磁気センサ、等である。なお、物体検出部１６は、基台１５から着脱可能であってもよい。
【００８０】
図１５は、本変形例に係る移動体制御装置２０のブロック図である。移動体制御装置２０は、図３に示す移動体制御装置２０に対して、さらに検出信号入力部２８を備える。
検出信号入力部２８は、物体検出部１６から入力された物標データを逐次に記憶部２７に記憶する。検出信号入力部２８は、例えば、入出力インタフェースである。検出信号入力部２８は、画像入力部２１と共用した入出力インタフェースであってもよい。
【００８１】
移動制御部２５は、記憶部２７から物標データを読み取る。そして、代表点特定部２４が定めた代表点と読み取った物標データが示す位置との間の距離を算出する。算出した距離が、所定の距離の閾値（例えば、０．５ｍ）以下である場合には、移動制御部２５は、駆動の停止を指示する駆動停止信号を駆動部１３−１、１３−２に出力する。
駆動部１３−１、１３−２は、移動制御部２５から駆動停止信号が入力されたとき、車輪１４−１、１４−２の回転を停止させる。
これにより、移動制御部２５は、撮像部１１の視野に含まれない後方の物体の位置を検出できる。また、移動制御部２５は、検出した物体に、移動体１を後退させて接近したときに、移動体１の移動を停止させることができる。そのため、移動体制御装置２０は、移動体１が検出した物体への接触を回避することができる。
【００８２】
以上に説明したように、本実施形態に係る移動体制御装置２０において、制御対象となる移動体１の移動には、移動体１の移動方向が含まれる。また、代表点特定部２４が代表点を定めることができない場合、移動制御部２５は、移動体１の向きを変える。
この構成により、撮像部１１が撮像した画像に人の像を含む位置もしくは方向に移動体１を移動させることができる。代表点特定部２４は代表点を再度定めることができるので、移動制御部２５は、移動体１の制御を再開することができる。
【００８３】
（第３の実施形態）
次に、本発明の第３の実施形態について説明する。上述した実施形態と同一の構成については、同一の符号を付して説明を援用する。
図１６は、本実施形態に係る移動体制御装置２０の構成を示すブロック図である。
本実施形態に係る移動体制御装置２０は、図３に示す移動体制御装置２０に対して、さらに通知情報出力部（制御部）２９を含んで構成される。移動体制御装置２０は、さらに通知部３１を備えてもよい。
【００８４】
代表点特定部２４は、代表点を定めることができない場合、代表点を定めることができないことを示すエラーデータを記憶部２７に記憶する。
通知情報出力部２９は、記憶部２７に現在までの所定時間内にエラーデータが記憶されたか否かを監視する。通知情報出力部２９が、エラーデータが記憶されたことを検出した場合、通知情報データを生成する。通知情報データは、人に対して所定の姿勢をとることを促すことを示す情報を示すデータである。通知情報の形式は、例えば、その旨を表すテキスト、画像、音声、光線の点滅、等である。通知情報出力部２９は、生成した通知情報データを通知部３１に出力する。
【００８５】
通知部３１は、通知情報出力部２９から入力された通知情報データが示す通知情報を通知する。通知部３１は、通知情報の形式に応じた構成を有する。例えば、通知情報の形式がテキスト又は画像である場合には、通知部３１はディスプレイを備える。通知情報の形式が音声である場合には、通知部３１はスピーカを備える。通知情報の形式が光線の点滅である場合には、通知部３１はランプを備える。
【００８６】
（移動体制御処理）
次に、本実施形態に係る移動体制御処理について説明する。
図１７は、本実施形態に係る移動体制御処理を示すフローチャートである。
本実施形態に係る移動体制御処理は、ステップＳ１０１−Ｓ１０８の処理及びステップＳ３０１、Ｓ３０２の処理を有する。ステップＳ１０１−Ｓ１０８の処理については、上述した説明を援用する。
【００８７】
ステップＳ１０１−Ｓ１０４の処理が終了した後、ステップＳ３０１の処理に進む。
（ステップＳ３０１）人体判定部２３は、入力された画像データが示す画像から人の像を検出できたか否かを判定する。人体判定部２３が検出できたと判定した場合には（ステップＳ３０1  ＹＥＳ）、ステップＳ１０５の処理に進む。人体判定部２３が検出できなかったと判定した場合には（ステップＳ３０１  ＮＯ）、ステップＳ３０２の処理に進む。
（ステップＳ３０２）通知情報出力部２９は、所定の姿勢をとることを促すことを示す通知情報データを生成し、生成した通知情報データを通知部３１に出力する。通知部３１は、通知情報出力部２９から入力された通知情報データが示す通知情報を通知する。その後、ステップＳ１０1に戻る。
【００８８】
以上に説明したように、本実施形態に係る移動体制御装置２０において、代表点特定部２４が代表点を定めることができない場合に、通知情報出力部２９は、所定の姿勢を促す通知を出力する。
この構成により、代表点特定部２４が代表点を定めることができない場合に、所定の姿勢を促す情報が移動体制御装置２０の周囲に所在する人に通知される。そのため、通知された人が撮像部１１の視野内において所定の姿勢をとることによって、移動制御部２５による移動体１の移動の制御を再開することができる。
【００８９】
以上、図面を参照して本発明の実施形態及び変形例について説明してきたが、具体的な構成は上述の実施形態及び変形例に限られることはなく、本発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
例えば、移動制御部２５が移動体１を移動させる速度ｖは、基準点Ｏｐから代表点Ｏｈまでの距離ｄ’が大きいほど、高くてもよい。
【００９０】
図１８は、距離ｄ’に対する速度ｖの目標値の例を示す図である。縦軸、横軸は、それぞれ速度ｖの目標値、距離ｄ’を示す。図１８に示す例では、速度ｖの目標値は、距離ｄ’に比例している。移動制御部２５は、距離ｄに応じて定めた速度ｖの目標値を示す駆動信号を生成し、生成した駆動信号を駆動部１３−１、１３−２に出力する。駆動部１３−１、１３−２は、移動制御部２５から入力された駆動信号が示す速度ｖの目標値に比例した回転速度で車輪１４−１、１４−２を回転させる。
【００９１】
このように、移動制御部２５が、距離ｄ’が大きいほど移動体１を移動させる速度ｖを高くすることで、移動体１を人に早く追従させることができる。また、移動制御部２５が、距離ｄ’が小さいほど移動体１を移動させる速度ｖを低くすることで、移動体１が人に接触する可能性を低くすることができる。なお、図１８に示す例では、速度ｖの目標値は、下限ｄｍｉｎから上限ｄｍａｘまでの間で定義されている。ｄｍｉｎ、ｄｍａｘは、それぞれ距離ｄ’の下限、上限である。距離ｄ’の下限、上限である。ｖｍｉｎ、ｖｍａｘは、それぞれ速度ｖの目標値の下限、上限である。距離ｄ’が下限ｄｍｉｎよりも小さい場合、又は上限ｄｍａｘよりも大きい場合には、移動制御部２５は、速度ｖの目標値を０と定める。その場合には、代表点特定部２４は、代表点を定めることができないためである。
【００９２】
なお、上述した実施形態及び変形例に係る移動体制御装置２０は、姿勢認識部２６に代えて、もしくは姿勢認識部２６と併せて操作入力部を備えてもよい。操作入力部が人の操作を検出したとき、移動体制御装置２０は、上述した移動体制御処理を開始する。操作入力部は、ボタン、マウス、タッチパネル、等のポインティングデバイスを含んで構成されてもよい。従って、人が操作を行うことにより、所定の姿勢をとらなくとも移動体制御処理の開始を指示することができる。
【００９３】
また、上述した実施形態及び変形例は、任意に組み合わされてもよい。例えば、第２の実施形態に係る移動体制御装置２０は、第３の実施形態に係る通知情報出力部２９を備え、通知部３１から通知情報が通知可能であってもよい。その場合、図１０に示す移動体制御処理は、ステップＳ３０２（図１７）の処理を有してもよい。そして、ステップＳ２０３において代表点特定部２４が所定の経過時間以上になったと判定した場合（ステップＳ２０３  ＹＥＳ）、ステップＳ３０２の処理に進んでもよい。
【００９４】
なお、上述した実施形態における移動体制御装置２０が備える各部の機能全体あるいはその一部は、これらの機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等の制御装置に限らず、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や周辺機器等のハードウェアを含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶部のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【符号の説明】
【００９５】
１…移動体，１１…撮像部，１３−１，１３−２…駆動部，１４−１，１４−２，１４−３…車輪，１５…基台，１６…物体検出部，２０…移動体制御装置，２１…画像入力部，２２…対象特定部，２３…人体判定部，２４…代表点特定部，２５…移動制御部，２６…姿勢認識部，２７…記憶部，２８…検出信号入力部，２９…通知情報出力部，３１…通知部
【図１】
0006669948.tif 000002
【図２】
0006669948.tif 000003
【図３】
0006669948.tif 000004
【図４】
0006669948.tif 000005
【図５】
0006669948.tif 000006
【図６】
0006669948.tif 000007
【図７】
0006669948.tif 000008
【図８】
0006669948.tif 000009
【図９】
0006669948.tif 000010
【図１０】
0006669948.tif 000011
【図１１】
0006669948.tif 000012
【図１２】
0006669948.tif 000013
【図１３】
0006669948.tif 000014
【図１４】
0006669948.tif 000015
【図１５】
0006669948.tif 000016
【図１６】
0006669948.tif 000017
【図１７】
0006669948.tif 000018
【図１８】
0006669948.tif 000019