JP5370122B2 - 移動体位置推定装置及び移動体位置推定方法 - Google Patents
移動体位置推定装置及び移動体位置推定方法 Download PDFInfo
- Publication number
- JP5370122B2 JP5370122B2 JP2009286760A JP2009286760A JP5370122B2 JP 5370122 B2 JP5370122 B2 JP 5370122B2 JP 2009286760 A JP2009286760 A JP 2009286760A JP 2009286760 A JP2009286760 A JP 2009286760A JP 5370122 B2 JP5370122 B2 JP 5370122B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- target
- sample
- correction
- coordinates
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Description
本件は、移動体位置推定装置及び移動体位置推定方法に関する。
実空間中で動作する自律移動体(例えば、移動ロボット、飛行体など)は、ターゲット(例えば、自動充電するためのステーションや、荷物搬送時における搬送目的場所など)との連結動作を行う必要がある場合がある。この場合、自律移動体をターゲットに対して位置・姿勢合わせする作業が、必要不可欠となる。このため、従来は、自律移動体に搭載したビジョン(ステレオカメラなど)や測距センサ(レーザレンジファインダ:LRFなど)を利用して、ターゲットの発見やターゲットの位置測定などを行っていた。
ビジョンの場合、画像を使うことから、ターゲットの位置認識(トラッキング)は高精度で行うことができる。しかるに、ビジョンの場合、画像の解像度によってはターゲットの位置姿勢、特に姿勢の同定精度が低くなり、ドッキング精度(成功率)が低下するおそれがある。また、測距センサを用いたターゲットのトラッキングでは、ターゲットの誤追跡や、ターゲットの見失いが生じやすい。このため、測距センサを用いたトラッキングを行う場合、物理的に特殊な形状のターゲットを用いる必要があったり、トラッキング開始時の初期位置姿勢が制限されたりするおそれがある。
これに対し、特許文献1〜3には、複数のセンサを用いたロボット等の位置制御に関する技術が開示されている。特許文献1には、カメラで撮影された画像データとレーザレンジファインダにより取得された距離データとを用いた位置誤差検出を行い、補正を行う技術が開示されている。特許文献2には、前方の障害物をカメラと超音波センサで検出し、当該検出結果から、障害物の位置情報を取得する技術が開示されている。特許文献3には、移動ロボットの制御において、カメラの画像情報と、超音波による距離情報をニューラルネットワークに入力して、ロボット制御情報を作成する技術が開示されている。
上記特許文献1〜3では、ビジョンや測距センサを単独で用いる場合と比較して、高精度なロボットの位置・姿勢制御が可能である。しかるに、今後、自律移動体の技術がより一層進歩すると、これに伴って、位置・姿勢制御に対しても、より一層の精度向上が要求されると考えられる。
一方、最近では、自律移動体の位置・姿勢制御に、パーティクルフィルタと呼ばれる、物体の検出と追跡を同時に行うアルゴリズムが用いられている。このパーティクルフィルタを用いた位置・姿勢制御は、計算量が少ないため、リアルタイム処理が可能であり、現段階でも比較的高い制御精度を得ることができている。しかしながら、このようなパーティクルフィルタを用いた制御においても、今後、より高精度な制御が要求されると考えられる。
そこで本件は上記の課題に鑑みてなされたものであり、移動体がターゲットに近づく際の、移動体の高精度な位置推定を行うことが可能な移動体位置推定装置及び移動体位置推定方法を提供することを目的とする。
本明細書に記載の移動体位置推定装置は、移動体に設けられ、当該移動体周辺の物体との距離を測定する第1測定部と、前記移動体に設けられ、当該移動体の移動目標であるターゲットの画像を取得するとともに、当該画像からターゲットの位置及び姿勢を測定して前記移動体の位置座標を算出する第2測定部と、前記移動体の状態遷移に関する状態遷移情報を取得する状態取得部と、前記第1測定部が測定する距離情報、前記第2測定部が測定する画像位置座標情報、及び前記状態取得部が取得する状態遷移情報から、前記移動体の位置座標を推定するパーティクルフィルタ処理部と、を備え、前記パーティクルフィルタ処理部は、前記移動体が前記ターゲットに近づく前に、前記第2測定部が算出する前記移動体の画像位置座標に対して分散配置させた複数のサンプル座標をランダムに設定するサンプル事前設定部と、前記サンプル事前設定部による複数のサンプル設定後、前記移動体が前記ターゲットに近づいている際に、前記複数のサンプル座標を前記第2測定部にて再取得された前記ターゲットの画像に基づく前記移動体の画像位置座標を用いて前記複数のサンプル座標の適合性を評価するサンプル評価部と、前記サンプル評価部による評価結果に基づいて複数のサンプル座標を再設定するリサンプリング部と、前記リサンプリング部による前記複数のサンプルの再設定後に、前記第1測定部が再測定する距離情報及び前記第2測定部が再測定する画像位置座標情報の少なくとも一方に基づいて、前記再設定後の複数のサンプル座標の修正処理を行う第1修正部と、前記移動体が前記ターゲットに近づいている際に、前記状態取得部が取得する前記状態遷移情報に基づいて、前記第1修正部による修正処理後の複数のサンプル座標を再修正し、前記再修正後の複数のサンプル座標を前記サンプル評価部に引渡す第2修正部と、を有している。
本明細書に記載の移動体位置推定方法は、移動体の位置を推定するために用いる分散配置された複数のサンプルの座標を、前記移動体に設けられた距離測定部により測定された前記移動体と前記ターゲットとの距離情報、及びカメラにより取得されたターゲットの画像から測定される前記移動体の画像位置座標情報、の少なくとも一方を用いて修正する第1修正工程と、前記移動体がターゲットに近づいている際に、前記移動体に設けられた状態取得部が取得する前記移動体の状態遷移情報に基づいて、前記第1修正工程で修正された後のサンプル座標を再修正する第2修正工程と、をパーティクルフィルタ処理部が実行する移動体位置推定方法である。
本明細書に記載の移動体位置推定装置及び移動体位置推定方法は、移動体がターゲットに近づく際の、移動体の高精度な位置推定を行うことができるという効果を奏する。
以下、移動体位置推定装置及び移動体位置推定方法の一実施形態について、図1〜図11に基づいて詳細に説明する。図1には、移動体位置推定装置としての位置推定部を備えるロボット100が模式的に示されている。また、図2は、ロボット100及びロボット100が配置される空間を上方から見た状態を示している。ロボット100は、図2に示す部屋などの空間1000内を移動可能である。また、ロボット100は、内蔵する充電池の充電量が少なくなったときには、図2に破線にて示すように、充電ステーション(以下、「ターゲット」とも呼ぶ)102に戻って、充電を行う機能を有している。
ロボット100は、図1に示すように、頭部10、首部12、胴体部14、及び移動機構16を備える。頭部10には第2測定部としてのカメラ18が設けられている。カメラ18は、複数の撮像部を含むステレオビジョンであり、周囲の障害物などの物体の画像を取得し、それらの位置や姿勢を測定するとともに、ターゲット102の画像を取得し、ターゲット102の位置や姿勢を測定して、ロボット100の位置座標を算出する。首部12は、頭部10の向き(角度)を調整することで、カメラ18の撮影方向を調整する。胴体部14は、第1測定部としての測距センサ20を有する。測距センサ20は、レーザレンジファインダ(LRF)などのセンサであり、周囲の物体との距離を測定し、レンジデータを取得する。なお、測距センサ20による距離の測定精度は、カメラ18による測定精度に比べて一般的に高い。移動機構16は、車輪等を含み、ロボット100の移動動作を実行する。
図3は、ロボット100の制御系200を示すブロック図である。図3に示すように、ロボット100の制御系200は、頭部回転系52と、移動系54と、移動体位置推定装置としての位置推定部50と、を有する。
頭部回転系52は、頭部角度算出部62と、頭部制御部64とを有する。頭部角度算出部62は、位置推定部50(相対位置・姿勢算出部30)により算出されるロボット100とターゲット102との相対位置及び姿勢に基づいて、頭部10(カメラ18)の目標角度を算出する。この目標角度は、カメラ18の視野内からターゲット102が外れないような角度である。目標角度の算出結果は、頭部角度算出部62から頭部制御部64に送信される。頭部制御部64は、頭部角度算出部62での算出結果に基づいて、頭部10(カメラ18)の向きを制御する。
移動系54は、移動制御部66と、前述した移動機構16(図1参照)と、を有する。移動制御部66は、ロボット100の移動を統括的に制御するものである。移動制御部66は、例えば、ロボット100がターゲット102に近づき始めた際には、相対位置・姿勢算出部30により算出されるロボット100とターゲット102との相対位置・姿勢に基づいて、ロボット100の移動量を算出する。そして、移動制御部66は、当該算出結果に基づいて移動機構16を制御する。
位置推定部50は、前述したカメラ18及び測距センサ20の他、状態取得部としての移動量検出部22、記憶部24、ターゲット検出部26、パーティクルフィルタ処理部28、及び相対位置・姿勢算出部30を有する。移動量検出部22は、ロボット100の状態遷移に関する状態遷移情報を取得する。具体的には、移動量検出部22は、移動機構16の車輪の回転速度を計測するエンコーダ等を含み、当該車輪の回転速度(又は回転量)から、ロボット100の走行速度と角速度を求め、ロボット100の移動量を状態遷移情報として取得する。なお、移動量検出部22としては、ロボット100の加速度を検出する加速度センサを含んでいても良い。
記憶部24は、ターゲット形状記憶部68と、ターゲットパターン記憶部70と、を有する。ターゲット形状記憶部68は、ロボット100のターゲット(例えば充電ステーションなど)の形状を記憶しているデータベースである。ターゲットパターン記憶部70は、ターゲットに設けられたマークや、ターゲット表面の模様などのパターンを記憶しているデータベースである。
ターゲット検出部26は、測距センサ20により計測されたロボット100と周辺物体との距離と、カメラ18により計測されたロボットの位置座標とから、ターゲット102の位置を検出する。
パーティクルフィルタ処理部28は、ターゲット検出部26の検出結果を用いて、ロボット100の位置を推定する。パーティクルフィルタ処理部28は、サンプル事前設定部72と、サンプル評価部74と、リサンプリング部76と、第1修正部78と、第2修正部80と、を有する。なお、パーティクルフィルタ処理部28の構成各部の処理内容については、後述する。
次に、図4のフローチャート及び図5に基づいて、本実施形態のロボット100が、ターゲット102を検出し、アプローチを開始する(近づき始める)までの方法について説明する。
まず、図4のステップS10において、測距センサ20が、周囲のレンジデータを取得する。なお、測距センサ20のビームは、ターゲット102の表面にも当たっているので、ターゲット102のレンジデータも取得することができる。次いで、ステップS12では、相対位置・姿勢算出部30が、測距センサ20のビームが当たったすべての点を、ターゲット102の中心と仮定して、ターゲット102の位置姿勢の仮説群を生成する。図5(a)には、生成された仮説群が模式的に示されている。
次いで、ステップS14では、相対位置・姿勢算出部30が、ステップS12で生成された仮説群と、予め用意されているターゲット102の形状モデルとを形状マッチングして、各仮説の適切性を評価する。ここで、ターゲット102の形状モデルは、ターゲット形状記憶部68に格納されている形状モデルである。
次いで、ステップS16では、相対位置・姿勢算出部30が、仮説の番号を示すパラメータnを1に設定する。次いで、ステップS18では、相対位置・姿勢算出部30が、n番目(ここでは1番目)の仮説の適切性が所定の閾値を超えているか否かを判断する。ここでの判断が肯定された場合には、相対位置・姿勢算出部30は、ステップS20において、n番目(1番目)の仮説を残して、ステップS24に移行する。一方、ステップS18の判断が否定された場合には、相対位置・姿勢算出部30は、ステップS22においてn番目(1番目)の仮説を削除して、ステップS24に移行する。
ステップS24では、相対位置・姿勢算出部30が、n=N(Nは、仮説群に含まれる仮説の総数)であるか否かを判断する。ここでの判断が否定された場合にはステップS26に移行して、nを1インクリメント(n←n+1)した後、ステップS18に戻る。以降は、ステップS24の判断が肯定されるまで上記処理・判断を繰り返す。そして、ステップS24の判断が肯定された段階で、ステップS28に移行する。図5(b)には、これら処理・判断を繰り返した結果、削除されずに残った仮説群が模式的に示されている。
次いで、図4のステップS28では、頭部角度算出部62が、残った仮説が含まれる領域に基づいて、カメラ18のパン・チルト角度を決定する。そして、ステップS30では、頭部制御部64が、頭部角度算出部62にて算出されたパン・チルト角度に基づいて、頭部10(カメラ18)の角度を制御し、カメラ18が撮影を実行する。
次いで、ステップS32では、相対位置・姿勢算出部30が、残った仮説群をカメラ18により撮影した撮影画像に投影して、エッジ強さや向きを予測する。次いで、ステップS34では、相対位置・姿勢算出部30が、予測したエッジ強さや向きとターゲット102の形状モデルとを比較して、各仮説に尤度を付ける。図5(c)では、ステップS34の結果、尤度が高いと判断された仮説を濃く表示している。
次いで、図4のステップS36では、相対位置・姿勢算出部30が、尤度が最大値とされた仮説を抽出することで、ターゲット102の位置・姿勢を決定する。そして、ステップS38では、移動制御部66が、相対位置・姿勢算出部30により算出されたターゲット102の位置・姿勢に基づいて、移動機構16を制御し、ロボット100のターゲット102に向けたアプローチを開始する。
このように、本実施形態では、ロボット100は、測距センサ20の測定結果から求められる仮説群、カメラ18による撮影画像、事前に用意したターゲット102の形状モデル(物理的モデル)を用いて、3次元におけるターゲット102との相対位置・姿勢を推定する。したがって、ロボット100は、ターゲット102との相対位置・姿勢を精度良く推定することが可能となっている。
次に、ロボット100が上述のようにターゲット102に向けたアプローチを開始した後における、ターゲット102の追跡方法の原理について、図6に基づいて説明する。図6は、パーティクルフィルタ処理部28の処理の流れを模式的に示す図である。
パーティクルフィルタ処理部28では、サンプル事前設定部72が、ターゲット検出部26の検出結果に基づき、推定したいロボット100の状態を所定の確率分布に従って分散配置して、一定数のサンプルをランダムに設定する。
具体的には、以下のようにしてサンプルを設定する。
(a)ターゲット検出部26が、ロボット100の状態として、座標データを算出する。ここで算出された座標データを、(x、y、θ)=(100、100、50)とする。なお、x、yはターゲット102とロボット100間の距離情報を意味し、θはターゲット102と移動体との間の姿勢情報を意味する。
(b)パーティクルフィルタ処理部28が、ターゲット検出部26が算出した座標データを所定の確率分布に従って離散化して、一定数のサンプルをランダムに設定する。ここで、所定の確率分布としては、一様分布や正規分布などを用いることができる。
例えば、一様分布を採用した場合、ターゲット検出部26が算出した座標(x、y、θ)=(100、100、50)を中心とすると、サンプル1を中心座標からそれぞれ+2ずらし、サンプル2を中心座標からそれぞれ+1ずらし、サンプル3を中心座標からそれぞれ±0ずらし、サンプル4を中心座標からそれぞれ−1ずらし、サンプル5を中心座標からそれぞれ−2ずらし、…という処理を行う。この場合、サンプル1の座標が(x、y、θ)=(102、102、52)、サンプル2の座標が(x、y、θ)=(101、101、51)、サンプル3の座標が(x、y、θ)=(100、100、50)、サンプル4の座標が(x、y、θ)=(99、99、49)、サンプル5の座標が(x、y、θ)=(98、98、48)…、となる。パーティクルフィルタ処理部28は、このような、(x、y、θ)の座標情報を有する複数のサンプルを、乱数を用いてランダムに設定する。なお、図6の(a)では、5つのサンプルが設定されているものとする。
(a)ターゲット検出部26が、ロボット100の状態として、座標データを算出する。ここで算出された座標データを、(x、y、θ)=(100、100、50)とする。なお、x、yはターゲット102とロボット100間の距離情報を意味し、θはターゲット102と移動体との間の姿勢情報を意味する。
(b)パーティクルフィルタ処理部28が、ターゲット検出部26が算出した座標データを所定の確率分布に従って離散化して、一定数のサンプルをランダムに設定する。ここで、所定の確率分布としては、一様分布や正規分布などを用いることができる。
例えば、一様分布を採用した場合、ターゲット検出部26が算出した座標(x、y、θ)=(100、100、50)を中心とすると、サンプル1を中心座標からそれぞれ+2ずらし、サンプル2を中心座標からそれぞれ+1ずらし、サンプル3を中心座標からそれぞれ±0ずらし、サンプル4を中心座標からそれぞれ−1ずらし、サンプル5を中心座標からそれぞれ−2ずらし、…という処理を行う。この場合、サンプル1の座標が(x、y、θ)=(102、102、52)、サンプル2の座標が(x、y、θ)=(101、101、51)、サンプル3の座標が(x、y、θ)=(100、100、50)、サンプル4の座標が(x、y、θ)=(99、99、49)、サンプル5の座標が(x、y、θ)=(98、98、48)…、となる。パーティクルフィルタ処理部28は、このような、(x、y、θ)の座標情報を有する複数のサンプルを、乱数を用いてランダムに設定する。なお、図6の(a)では、5つのサンプルが設定されているものとする。
次いで、サンプル評価部74が、図6の(1)に示すように、サンプル事前設定部72による複数のサンプル設定後、ロボット100がターゲット102に近づいている際に、複数のサンプル座標をカメラ18にて再取得(再撮影)されたターゲット102の画像に基づくロボットの位置座標を用いて、複数のサンプル座標の適合性を評価する。すなわち、サンプル評価部74は、ターゲット102の画像からターゲット102の位置及び姿勢を測定して、ロボット100の位置座標を算出し、当該算出された位置座標に基づいて、サンプルを評価する。この図6の(1)の処理により、各サンプルが格付けされる。格付けの結果として、図6の(b)では、格付けの高いサンプルを大きく表示し、格付けの低いサンプルを小さく表示している。
次いで、図6の(2)に示すように、リサンプリング部76が、サンプル評価部74による評価結果に基づいて複数のサンプル座標を再設定する。具体的には、リサンプリング部76は、図6の(c)に示すように適合性の低いサンプルを消し、高いものをコピーして重み付けを行う。
次いで、図6の(3)に示すように、第1修正部78が、外部モデルに基づいて、再設定後の複数のサンプル座標の修正処理を行う。当該修正により移動したサンプルが図6の(d)に示されている。
ここで、外部モデルに基づくサンプルの修正方法について、図7、図8に基づいて詳細に説明する。
まず、第1修正部78は、以下のようにして、カメラ18を用いた仮計測を実行する。
(A)サンプルの修正直前にカメラ18により撮影された画像(図7(a)に示すようなステレオビジョンの左右カメラで撮影した画像)を取得する。そして、第1修正部78は取得した画像中のターゲット102の形状及び大きさから、ターゲット102の位置・姿勢を3次元計測する。次いで、第1修正部78は、図7(b)に示すように、ターゲット102を3次元計測の結果を床面グリッドマップ上に投影する。
(B)次に、第1修正部78は、床面グリッドマップ上で図7(b)に示すターゲットの向きR、及び中心位置Pの位置を計算する。さらに、第1修正部78は、ロボット100からターゲット102の両端までのなす角度ψを計算する。
(A)サンプルの修正直前にカメラ18により撮影された画像(図7(a)に示すようなステレオビジョンの左右カメラで撮影した画像)を取得する。そして、第1修正部78は取得した画像中のターゲット102の形状及び大きさから、ターゲット102の位置・姿勢を3次元計測する。次いで、第1修正部78は、図7(b)に示すように、ターゲット102を3次元計測の結果を床面グリッドマップ上に投影する。
(B)次に、第1修正部78は、床面グリッドマップ上で図7(b)に示すターゲットの向きR、及び中心位置Pの位置を計算する。さらに、第1修正部78は、ロボット100からターゲット102の両端までのなす角度ψを計算する。
以上のようにして仮計測が終了すると、第1修正部78は、図8(a)に示すように、角度ψの範囲内で、測距センサ20を用いた計測を実際に行い、計測値(レンジデータ)を取得する。そして、第1修正部78は、計測値を用いた直線当てはめを行うことにより、ターゲット102の存在する領域(ターゲットの姿勢及び中心位置P’)を算出する。これにより、測距センサ20の計測結果から、ターゲット102とロボット100との間の距離情報及び姿勢情報を示す座標(X、Y、Θ)を求めることができる。
次いで、第1修正部78は、測距センサ20で計測したターゲット102の位置・姿勢の座標をカメラ18で計測したターゲット102の位置姿勢に合わせるように、現在のサンプルの状態(座標(x、y、θ)で表されるが、ここでは状態Sとする。図8(b)参照)を、新しい状態S’(座標(x’、y’、θ’))に移動する。そして、第1修正部78は、新しい状態S’(座標(x’、y’、θ’))と元の状態S(座標(x、y、θ))とを平均することで、修正後のサンプルの状態として、図8(b)に示す状態S” (座標(x”、y”、θ”))を取得する。すなわち、図6の(3)に示すサンプルの修正では、サンプルをS(座標(x、y、θ))からS” (座標(x”、y”、θ”))に変更するような修正を実行する。
なお、上記においては、カメラ18を用いた仮計測の結果と、当該仮計測に基づいて測距センサ20を用いて行った計測の結果と、を用いて、サンプルの修正を行うこととしたが、これに限られるものではない。例えば、カメラ18の仮計測の結果のみを用いて、サンプルの状態を修正することとしても良い。具体的には、カメラ18の仮計測結果から求められるターゲット102とロボット100との間の距離情報及び姿勢情報を示す座標(x、y、θ)と、サンプルの中心座標(x、y、θ)とのずれ量を算出し、当該ずれ量分だけ、各サンプルを移動しても良い。また、例えば、測距センサ20の計測結果のみを用いて、サンプルの状態を修正することとしても良い。具体的には、測距センサ20の計測結果から求められるターゲット102とロボット100との間の距離情報及び姿勢情報を示す座標(x、y、θ)と、サンプルの中心座標(x、y、θ)とのずれ量を算出し、当該ずれ量分だけ、各サンプルを移動しても良い。
次いで、第2修正部80は、ロボット100がターゲット102に近づいている際に、図6の(4)に示すように、内部センサの取得結果(ここでは、移動量検出部22の計測結果(状態遷移情報))に基づいて、第1修正部78において修正された後のサンプル座標を再修正する((e)参照)。すなわち、ロボット100の移動量(実測値)分だけ、サンプルを移動する。なお、この修正は、ダイナミック遷移とも呼ばれている。その後は、(e)のサンプルがサンプル評価部74に引渡されることにより(a)のサンプルとなり(図6の(5))、上記(1)〜(4)の処理が、パーティクルフィルタ処理部28内において随時繰り返される。
ここで、ロボット100がターゲット102に近づくときに行われる処理の具体例及び当該処理による効果について、図9に基づいて詳細に説明する。
図9(a)に示すように、ある時刻tにおいて、平面上に、サンプル(A、B、C、D)が生成されたものとする(なお、サンプル(A、B、C、D)は、図6では(d)に示すサンプルに該当するものとする)。このときのサンプル(座標)の平均値(平均期待値とも呼ばれる)をKとする。そして、この状態から、移動制御部66が、移動機構16に対し、ターゲット102に向けて距離d1だけ移動する指令(v)を発行したものとする。
この場合、第2修正部80は、ロボット100が実際に移動した距離(V)を移動量検出部22で計測し、その計測値(V)でサンプル(A、B、C、D)の状態を変化させる。図9(a)では、この状態を時刻t+1で示している。なお、時刻t+1のサンプルは、図6では(e)及び(a)に示すサンプルに該当する。
次いで、カメラ18による計測結果に基づいて、サンプル評価部74が、サンプル(A、B、C、D)を評価する。またリサンプリング部76は、評価結果に基づいて、リサンプリングを行う。ここでは、サンプルDの評価が低かったため、サンプルDが削除されるとともに、サンプルCの評価が高かったため、サンプルCがコピーされたものとする。
次いで、第1修正部78は、測距センサ20で計測されたロボット100とターゲット102との相対位置・姿勢及びカメラ18で計測されたロボット100とターゲット102との相対位置・姿勢を用いて、サンプル(A、B、C、C)をサンプル(A’、B’、C’、C’)に修正する(図9(b)参照)。この修正は、図7及び図8を用いて説明した方法で行われる。なお、サンプル(A’、B’、C’、C’)の平均をK’とする。この修正により、平均値K’は平均値Kよりもロボット100の真の位置に近づいたといえる。
次いで、移動制御部66が、移動機構16に対し、ターゲット102に向けて距離d2だけ移動するよう指令(v’)を発行する。このアプローチ指令後、第2修正部80は、ロボット100が実際に移動した距離(V')を移動量検出部22で計測し、この計測値(V’)でサンプル(A’、B’、C’、C’)の状態を変化させる。図9(c)では、この状態を時刻t+2で示している。
その後も、サンプル評価部74による評価、リサンプリング部76によるリサンプリングを経て(リサンプリングにより残ったサンプルを(A’、B’、C’、C’)とする)、第1修正部78がサンプルを補正する。この補正後のサンプルが図9(d)に示すサンプル(A”、B”、C”、C”)で、サンプルの平均がK”であったものとする。
その後、移動制御部66が、移動機構16に対し、ターゲット102に向けて距離d3だけ移動するよう指令(v”)を発行する。この場合、距離d3は、実際のロボット100とターゲット102との距離と近似しているので、図9(d)に示すロボット100の最終ドッキング位置にロボット100を移動させることが可能となる。
次に、本実施形態の比較例について説明する。
図10には、本実施形態の比較例に係るパーティクルフィルタの処理例が示されている。この図10と図6とを比較すると分かるように、比較例では、サンプルを外部モデルで修正する処理を行っていない。
この比較例の場合においても、図11に示すように、本実施形態と同様、移動制御部66から移動機構16に指令(v、v’、v”)が順次出される。この場合、図11に示すように、時刻t+2の段階で、目標距離d3がロボット100とターゲット102との間の実際の距離Dよりも短い可能性がある。この場合、最終ドッキング位置が図11に示すようにターゲット102の手前になってしまう。また、図11とは逆に、時刻t+2の段階で、目標距離d3が、ロボット100とターゲット102との間の距離Dよりも長い可能性がある。この場合には、ターゲット102に勢い良くぶつかってしまう可能性がある。この点、本実施形態では、目標距離と実際の距離を近似させることができるので、ロボット100をターゲット102に対して高精度に移動することができる。
以上、詳細に説明したように、本実施形態では、パーティクルフィルタ処理部28が、移動体がターゲットに近づく際にランダムに複数のサンプルを設定するサンプル事前設定部72と、サンプルをカメラ18にて取得されたターゲット102の画像に基づいて評価するサンプル評価部74と、当該評価結果に基づいて複数のサンプルを再設定するリサンプリング部76と、サンプルの再設定後に、測距センサ20及びカメラ18による測定結果に基づいてサンプルの修正処理を行う第1修正部78と、移動量検出部22の計測結果に基づいて、第1修正部78による修正処理後のサンプルを更に修正し、サンプル評価部74に戻す第2修正部80と、を有している。このように、本実施形態では、第1修正部78が、外部モデルに基づいてサンプルの修正処理を行うので、移動量検出部22に計測誤差がある場合であってもロボット100の移動中にサンプルの修正処理を適宜行うことで、ロボット100の位置を高精度に推定することができる。これにより、ロボット100とターゲット102との相対位置を高精度に推定することができるので、ターゲット102に対するロボット100の移動を高精度に行うことが可能である。また、本実施形態では、第1修正部78は、カメラ18の測定結果のみならず、一般的にカメラ18よりも計測精度が高い測距センサ20による測定結果も用いてサンプルの修正を行うので、高精度なサンプル修正が期待できる。
また、本実施形態では、第1修正部78は、当該第1修正部78によるサンプル座標の修正処理を行う前に、カメラ18が再測定したターゲット102の位置及び姿勢の情報を用いて測距センサ20が測定したターゲット102までの距離と、位置及び姿勢の情報と、を用いて、前記ターゲットの位置及び姿勢を算出し、カメラ18で測定されたターゲットの位置及び姿勢と一致するように再設定後のサンプルを移動するとともに、サンプルの移動前の位置(状態)Sと移動後の位置(状態)S’との平均位置S”までサンプルを移動することで、サンプルの修正を行う。これにより、測距センサ20とカメラ18の測定結果のいずれをも考慮した、高精度なサンプルの修正を行うことができる。
なお、上記実施形態では、第1修正部78が、サンプルの状態SとS’の平均位置S”に、サンプルを移動する場合について説明したが、これに限られるものではない。例えば、S、S’のいずれかのほうが信頼性が高いような場合には、当該信頼性に応じた重み付け平均により、S”を決定することとしても良い。
なお、上記実施形態では、第1修正部78が、測距センサ20とカメラ18の測定結果を用いて、サンプルの修正を行う場合について説明したが、これに限られるものではない。測距センサ20とカメラ18のいずれか一方の測定結果を用いることとしても良い。
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
18 カメラ(第2測定部)
20 測距センサ(第1測定部)
22 移動量検出部(状態取得部)
28 パーティクルフィルタ処理部
50 位置推定部(移動体位置推定装置)
72 サンプル事前設定部
74 サンプル評価部
76 リサンプリング部
78 第1修正部
80 第2修正部
100 ロボット(移動体)
102 ターゲット
20 測距センサ(第1測定部)
22 移動量検出部(状態取得部)
28 パーティクルフィルタ処理部
50 位置推定部(移動体位置推定装置)
72 サンプル事前設定部
74 サンプル評価部
76 リサンプリング部
78 第1修正部
80 第2修正部
100 ロボット(移動体)
102 ターゲット
Claims (4)
- 移動体に設けられ、当該移動体周辺の物体との距離を測定する第1測定部と、
前記移動体に設けられ、当該移動体の移動目標であるターゲットの画像を取得するとともに、当該画像からターゲットの位置及び姿勢を測定して前記移動体の位置座標を算出する第2測定部と、
前記移動体の状態遷移に関する状態遷移情報を取得する状態取得部と、
前記第1測定部が測定する距離情報、前記第2測定部が測定する画像位置座標情報、及び前記状態取得部が取得する状態遷移情報から、前記移動体の位置座標を推定するパーティクルフィルタ処理部と、を備え、
前記パーティクルフィルタ処理部は、
前記移動体が前記ターゲットに近づく前に、前記第2測定部が算出する前記移動体の画像位置座標に対して分散配置させた複数のサンプル座標をランダムに設定するサンプル事前設定部と、
前記サンプル事前設定部による複数のサンプル設定後、前記移動体が前記ターゲットに近づいている際に、前記複数のサンプル座標を前記第2測定部にて再取得された前記ターゲットの画像に基づく前記移動体の画像位置座標を用いて前記複数のサンプル座標の適合性を評価するサンプル評価部と、
前記サンプル評価部による評価結果に基づいて複数のサンプル座標を再設定するリサンプリング部と、
前記リサンプリング部による前記複数のサンプルの再設定後に、前記第1測定部が再測定する距離情報及び前記第2測定部が再測定する画像位置座標情報の少なくとも一方に基づいて、前記再設定後の複数のサンプル座標の修正処理を行う第1修正部と、
前記移動体が前記ターゲットに近づいている際に、前記状態取得部が取得する前記状態遷移情報に基づいて、前記第1修正部による修正処理後の複数のサンプル座標を再修正し、前記再修正後の複数のサンプル座標を前記サンプル評価部に引渡す第2修正部と、
を有することを特徴とする移動体位置推定装置。 - 前記第1修正部は、
当該第1修正部による前記サンプル座標の修正処理を行う前に、前記第2測定部が再測定した前記ターゲットの位置及び姿勢の情報を用いて前記第1測定部が測定した前記ターゲットまでの距離と、前記位置及び姿勢の情報と、を用いて、前記ターゲットの位置及び姿勢を算出し、前記第2測定部で測定された前記ターゲットの位置及び姿勢と一致するように前記再設定後のサンプルの座標を修正するとともに、前記再設定後のサンプルの座標の修正前の位置と修正後の位置とに基づいて求められる新たな修正位置に、前記再設定後のサンプル座標を修正することを特徴とする請求項1に記載の移動体位置推定装置。 - 前記修正位置は、前記再設定後のサンプルの修正前の位置と修正後の位置との平均位置であることを特徴とする請求項2に記載の移動体推定装置。
- 移動体の位置を推定するために用いる分散配置された複数のサンプルの座標を、前記移動体に設けられた距離測定部により測定された前記移動体と前記ターゲットとの距離情報、及びカメラにより取得されたターゲットの画像から測定される前記移動体の画像位置座標情報、の少なくとも一方を用いて修正する第1修正工程と、
前記移動体がターゲットに近づいている際に、前記移動体に設けられた状態取得部が取得する前記移動体の状態遷移情報に基づいて、前記第1修正工程で修正された後のサンプル座標を再修正する第2修正工程と、をパーティクルフィルタ処理部が実行する移動体位置推定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009286760A JP5370122B2 (ja) | 2009-12-17 | 2009-12-17 | 移動体位置推定装置及び移動体位置推定方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009286760A JP5370122B2 (ja) | 2009-12-17 | 2009-12-17 | 移動体位置推定装置及び移動体位置推定方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011128020A JP2011128020A (ja) | 2011-06-30 |
JP5370122B2 true JP5370122B2 (ja) | 2013-12-18 |
Family
ID=44290767
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009286760A Expired - Fee Related JP5370122B2 (ja) | 2009-12-17 | 2009-12-17 | 移動体位置推定装置及び移動体位置推定方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5370122B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5867176B2 (ja) * | 2012-03-06 | 2016-02-24 | 日産自動車株式会社 | 移動物体位置姿勢推定装置及び方法 |
CN109471128B (zh) * | 2018-08-30 | 2022-11-22 | 福瑞泰克智能系统有限公司 | 一种正样本制作方法及装置 |
JP7336223B2 (ja) * | 2019-03-25 | 2023-08-31 | 本田技研工業株式会社 | 自己位置推定方法 |
KR102156511B1 (ko) * | 2020-03-26 | 2020-09-15 | 주식회사 제타뱅크 | 이동 로봇 및 그 제어방법 |
WO2022209261A1 (ja) * | 2021-03-30 | 2022-10-06 | ソニーグループ株式会社 | 情報処理方法、情報処理装置、情報処理プログラム、及び情報処理システム |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4568223B2 (ja) * | 2005-12-21 | 2010-10-27 | 株式会社デンソー | 推定装置 |
JP4984650B2 (ja) * | 2006-05-30 | 2012-07-25 | トヨタ自動車株式会社 | 移動装置及び移動装置の自己位置推定方法 |
JP4696088B2 (ja) * | 2007-03-20 | 2011-06-08 | 富士通株式会社 | 自律移動体および移動方法 |
-
2009
- 2009-12-17 JP JP2009286760A patent/JP5370122B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011128020A (ja) | 2011-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110116407B (zh) | 柔性机器人位姿测量方法及装置 | |
CN108051002B (zh) | 基于惯性测量辅助视觉的运输车空间定位方法及系统 | |
JP6444027B2 (ja) | 情報処理装置、情報処理装置の制御方法、情報処理システムおよびプログラム | |
CN106774301B (zh) | 一种避障跟随方法和电子设备 | |
JP6180087B2 (ja) | 情報処理装置及び情報処理方法 | |
US20170153646A1 (en) | Apparatus of controlling movement of mobile robot mounted with wide angle camera and method thereof | |
JP5992184B2 (ja) | 画像データ処理装置、画像データ処理方法および画像データ処理用のプログラム | |
US9630322B2 (en) | Information processing apparatus, method therefor, measurement apparatus, and working apparatus for estimating a position/orientation of a three-dimensional object based on relative motion | |
JP5370122B2 (ja) | 移動体位置推定装置及び移動体位置推定方法 | |
CN108332752B (zh) | 机器人室内定位的方法及装置 | |
JP2011007632A (ja) | 情報処理装置、情報処理方法およびプログラム | |
CN109895100B (zh) | 一种导航地图的生成方法、装置及机器人 | |
EP1548534A2 (en) | Method and apparatus for using rotational movement amount of mobile device and computer-readable recording medium for storing computer program | |
WO2020137110A1 (ja) | 移動量推定装置 | |
CN113311873A (zh) | 一种基于视觉的无人机伺服跟踪方法 | |
US20230419531A1 (en) | Apparatus and method for measuring, inspecting or machining objects | |
JP2004030445A (ja) | 移動ロボットの自己位置推定方法及びシステム、並びにプログラム | |
JP2015007639A (ja) | 情報処理装置、情報処理方法およびプログラム | |
Fuchs et al. | Advanced 3-D trailer pose estimation for articulated vehicles | |
JP5462662B2 (ja) | 位置姿勢計測装置、物体識別装置、位置姿勢計測方法及びプログラム | |
WO2022227632A1 (zh) | 基于图像的轨迹规划方法和运动控制方法以及使用该些方法的移动机器 | |
CN113776540B (zh) | 基于视觉导航定位的车载系留无人机实时跟踪移动车辆的控制方法 | |
Yang et al. | Two-stage multi-sensor fusion positioning system with seamless switching for cooperative mobile robot and manipulator system | |
JP6227950B2 (ja) | センサの指向制御方法と装置 | |
CN114391157B (zh) | 估计相机相对于地面的方位的装置和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120815 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130711 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130820 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130902 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |