JP2007303886A - 位置推定装置、位置推定方法及びプログラム記録媒体 - Google Patents

位置推定装置、位置推定方法及びプログラム記録媒体 Download PDF

Info

Publication number
JP2007303886A
JP2007303886A JP2006130602A JP2006130602A JP2007303886A JP 2007303886 A JP2007303886 A JP 2007303886A JP 2006130602 A JP2006130602 A JP 2006130602A JP 2006130602 A JP2006130602 A JP 2006130602A JP 2007303886 A JP2007303886 A JP 2007303886A
Authority
JP
Japan
Prior art keywords
prediction
sensor
unit
observation
position estimation
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.)
Granted
Application number
JP2006130602A
Other languages
English (en)
Other versions
JP4148276B2 (ja
Inventor
Kenichiro Oi
堅一郎 多井
Masahiro Fujita
雅博 藤田
Takayuki Ashigahara
隆之 芦ヶ原
Gutmann Steffen
ステフェン・グットマン
Masaki Fukuchi
正樹 福地
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2006130602A priority Critical patent/JP4148276B2/ja
Priority to US11/745,947 priority patent/US7873447B2/en
Publication of JP2007303886A publication Critical patent/JP2007303886A/ja
Application granted granted Critical
Publication of JP4148276B2 publication Critical patent/JP4148276B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C22/00Measuring distance traversed on the ground by vehicles, persons, animals or other moving solid bodies, e.g. using odometers, using pedometers
    • G01C22/02Measuring distance traversed on the ground by vehicles, persons, animals or other moving solid bodies, e.g. using odometers, using pedometers by conversion into electric waveforms and subsequent integration, e.g. using tachometer generator

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Navigation (AREA)

Abstract

【課題】 推定値が逸脱したか否かを検査し、誤った推定値の場合は回復を試みることのできる位置推定装置を提供する。
【解決手段】 予測部11はオドメトリセンサ17が搭載された移動体の位置を予測する。観測部12は環境内の特徴点を追跡する。予測正誤チェック部13は、予測部11における位置の予測の正誤を判断する。予測修正部14は、予測を修正する。更新部15は、正しい予測に基づいて移動体の位置及び/又は姿勢を更新する。
【選択図】 図1

Description

本発明は、カメラ等のセンサが搭載された移動体の位置を推定する位置推定装置、位置推定方法及び位置推定プログラムを記録したプログラム記録媒体に関する。
加速度センサや速度センサ等のオドメトリセンサと、測距センサや撮像センサ等の撮像センサという2種類のセンサからなるセンサ群を搭載した移動体では、センサ群の情報を用いて自己の位置及び/又は姿勢の推定を行う。適用できる移動体の例としては、例えば自走又は自律型のロボットや、自動車等がある。移動体は、自身のおかれた環境内で障害物を避けた行動経路を採る必要がある。この場合には、例えばステレオビジョンを用いて周囲の環境の3次元情報を計測し、この3次元情報から環境情報を得、上記センサ群を用いて環境内の自己の姿勢・位置を推定する。
下記特許文献1には、外部状態検出手段によって検出された外部状態に基づいて3次元グリッドの占有状態を表す3次元地図を作成し、3次元地図の情報に基づいて対基準面高さ地図の情報を変更し、変更された地図情報を環境地図として自律的に行動経路を決定し移動動作を制御する移動型ロボット装置が記載されている。また、自動車は、GPSなどが使用できない状態、例えばトンネル内を走行する場合に、自己の位置を推定するときに使用する。
図8は、環境が固定(変化しない)の状況におかれた、オドメトリセンサ41とビジョンセンサ42を搭載したロボット40を示す。環境が固定であり、特徴点43〜47の位置は既知である。特徴点43〜47を基に、例えばカルマンフィルタのような予測フィルタを用いて位置を推定するアルゴリズムを採る。なお、オドメトリセンサ41とビジョンセンサ42からのセンサ値は、例えば無線信号により、パーソナルコンピュータ48に送信されてもよい。パーソナルコンピュータ48は、上記センサ値を受信し、既知である特徴点43〜47を基に、例えばカルマンフィルタのような予測フィルタを用いてロボットの位置を推定してもよい。
カルマンフィルタについては、非特許文献1に記載されている。直接観測できないある状態(例えば、位置、速度、加速度などの現在の車の状態)を間接的な情報から計算し、最適な推定を行うフィルタである。状態は確率分布モデルで表現する。確率分布モデルとしては、例えば正規分布を用いることができる。
図9は、カルマンフィルタのアルゴリズムを示すフローチャートである。初期化ステップ(S0)の後に予測ステップ(S1)、観測ステップ(S2)、更新ステップ(S3)がある。予測ステップ(S1)は、加速度センサや速度センサ等のオドメトリセンサ41と、前フレームのシステムの状態の推定結果から、現フレームのロボットの状態を予測する。オドメトリセンサ41の値や前フレームのカメラの位置は過去の情報であるため、オドメトリセンサ41の出力値から計算したロボットの位置は予測値となる。観測ステップ(S2)は、予測ステップ(S1)で使用したオドメトリセンサ41とは別の観測センサ(カメラ等)42で環境を計測する。具体的には、ロボット40に搭載されている撮像センサ42を用いて環境を撮像し、撮像した画像から特徴点(画像処理で識別できる目印、ランドマーク)43〜47を観測する。更新ステップ(S3)は、ロボットの位置及び/又は姿勢を観測ステップ(S2)の観測結果から更新(修正)する。ロボットの位置及び/又は姿勢(状態)を更新する方法は、非特許文献1に記載されている、非線形に対応した一般の拡張カルマンフィルタと同じ方法である。
特開2006−11880号公報 "A Introduction to the Kalman Filter", Greg Welch, Gary Bishop, Technical Report 95-041Department of Computer Science, University of North Carolina (1995).
ところで、上記図9に示したカルマンフィルタのアルゴリズムを用いた位置推定システムにあって、位置の推定値が実際の値から大きく逸脱している場合には、推定値が逸脱したまま計算を続けてしまう。このため、従来の自己推定システムは、ロバストではない。また、たとえ推定が間違ったことがわかったとしても、推定値が間違っていないときのセンサシステムの位置の軌跡が使えないため、蓄えた情報は捨てて再度位置の初期化を行ってから推定するシステムである場合が多い。
本発明は、上記実情に鑑みてなされたものであり、推定値が逸脱したか否かを検査し、誤った推定値の場合は回復を試みることのできる位置推定装置、位置推定方法及びプログラム記録媒体の提供を目的とする。
本発明に係る位置推定装置は、上記課題を解決するために、予測部が現フレームにおけるオドメトリセンサのセンサ値と、前フレームの移動体の位置推定結果とを予測フィルタによりフィルタリングし、センサが搭載された移動体の位置を予測し、観測部が上記予測部で使用したオドメトリセンサとは別の観測センサにより環境を計測し、環境内の特徴点を毎フレーム毎に追跡して位置を観測し、予測正誤チェック部が上記観測部における環境内の特徴点の追跡結果に基づいて上記予測部における移動体の位置の予測の正誤を判断し、予測修正部が上記予測正誤チェック部により上記位置の予測が正しくないと判断すると予測を修正し、更新部が上記予測正誤チェック部により上記位置の予測が正しいと判断すると移動体の位置及び/又は姿勢を更新する。
本発明に係る位置推定方法は、上記課題を解決するために、予測工程が現フレームにおけるオドメトリセンサのセンサ値と、前フレームの移動体の位置推定結果とを予測フィルタによりフィルタリングし、センサが搭載された移動体の位置を予測し、観測工程が上記予測工程で使用したオドメトリセンサとは別の観測センサにより環境を計測し、環境内の特徴点を毎フレーム毎に追跡して位置を観測し、予測正誤チェック工程が上記観測工程における環境内の特徴点の追跡結果に基づいて上記予測工程における移動体の位置予測の正誤を判断し、予測修正工程が上記予測正誤チェック工程により上記位置の予測が正しくないと判断すると予測を修正し、更新工程が上記予測正誤チェック工程により上記位置の予測が正しいと判断すると移動体の位置及び/又は姿勢を更新する。
本発明に係るプログラム記録媒体は、上記課題を解決するために、移動体の位置を予測する位置推定装置にて実行される位置推定プログラムを記録しており、上記位置推定プログラムは、予測工程が現フレームにおけるオドメトリセンサのセンサ値と、前フレームの移動体の位置推定結果とを予測フィルタによりフィルタリングし、センサが搭載された移動体の位置を予測し、観測工程が上記予測工程で使用したオドメトリセンサとは別の観測センサにより環境を計測し、環境内の特徴点を毎フレーム毎に追跡して位置を観測し、予測正誤チェック工程が上記観測工程における環境内の特徴点の追跡結果に基づいて上記予測工程における移動体の位置の予測の正誤を判断し、予測修正工程が上記予測正誤チェック工程により上記位置の予測が正しくないと判断すると予測を修正し、更新工程が上記予測正誤チェック工程により上記位置の予測が正しいと判断すると移動体の位置及び/又は姿勢を更新する。
なお、本発明では、上記図8に示したパーソナルコンピュータのような外部信号処理装置にあって、上記オドメトリセンサや観測センサからのセンサ値を無線信号又は有線信号にて受信し、環境内の特徴点を基に、例えばカルマンフィルタのような予測フィルタを用いてロボットの位置を推定してもよい。
本発明によれば、推定値が逸脱したか否かを検査し、誤った推定値の場合は回復を試みることができる。このため、推定が誤った場合にはセンサシステムの位置の推定値を回復させることにより前回までのセンサシステムの位置の軌跡を反映させることができるため、システムはロバストである。
以下、本発明を実施するための最良の形態について図面を参照しながら説明する。
先ず、環境が固定(変化しない)の状況におかれた、移動体(例えばロボット)に適用される位置推定装置を実施の形態として説明する。移動体は、オドメトリセンサとビジョンセンサを搭載しており、位置推定装置はオドメトリセンサとビジョンセンサの各センサ値を用いる。
図1は、位置推定装置10の機能ブロック構成を示すブロック図である。実際には、位置推定装置のハードウェアは、バスを介してCPU、RAM、ROM、HDD及び各種センサを接続した構成である。CPUが本発明の位置推定方法に基づいた位置推定プログラムをHDD、又はROMから取り出し、RAMをワークエリアとして逐次実行することにより、図1の機能ブロックが構成される。本発明のプログラム記録媒体は、例えば、CD−ROMや半導体メモリなどであり、上記HDD等に位置推定プログラムを転送している。もちろん、HDもプログラム記録媒体に相当する。
図1の機能ブロックにおける位置推定装置10は、上記センサが搭載された移動体の位置を予測する予測部11と、環境内の特徴点を追跡する観測部12と、予測部11における位置の予測の正誤を判断する予測正誤チェック部13と、予測を修正する予測修正部14と、正しい予測に基づいて移動体の位置及び/又は姿勢を更新する更新部15とを備える。
予測部11にはバッファ18が接続されている。バッファ18には、オドメトリセンサ17により検知されセンサ値が格納される。予測部11は、バッファ18に格納されたセンサ値を読み出す。また、予測部11には更新部15により更新された位置の推定結果が前フレームの位置の推定結果として次のフレームにおける予測部11での予測時に用いられるように供給される。このため、予測部11は、現フレームにおけるオドメトリセンサ17のセンサ値と、前フレームの位置の推定結果とを予測フィルタによりフィルタリングし、各センサが搭載された移動体の位置を予測する。
オドメトリセンサ17は、加速度センサや速度センサ等である。移動体の加速度や移動速度を検知する。
観測部12にはバッファ20が接続されている。バッファ20には、上記予測部11で使用したオドメトリセンサ17とは別の観測センサ19により検知されたセンサ値が格納される。観測部12は、バッファ20に格納された上記観測センサ19のセンチ値を読み出す。また、観測部12には予測修正部14により修正された予測修正値が供給される。観測部12は予測部11で使用したオドメトリセンサ17とは別の観測センサ19により環境を計測し、特徴点を毎フレーム毎に追跡して位置を観測する。観測部12は、予測部11で求めた予測位置及び/又は姿勢を用いて探索範囲を決め、上記特徴点の追跡を行うようにしてもよい。その場合、観測部12は、事前にわかっている三次元空間上の特徴点の位置とカルマンフィルタで推定したロボットの位置データから画像内の特徴点の位置を推定し、特徴点付近の輝度画像データと特徴点付近の輝度画像の姿勢データから、移動体の位置からみた特徴点付近のテンプレートをアフィン拘束にしたがって変形し、上記探索範囲と上記テンプレートを基にテンプレートマッチングを行って上記特徴点の追跡を行う。
予測正誤チェック部13は、観測部12における特徴点の追跡結果に基づいて予測部11における位置の予測の正誤を判断する。具体的に、予測正誤チェック部13は、観測部12における特徴点追跡で成功した特徴点の数と失敗した特徴点の数をカウントし、一定の確率以上の成功率で特徴点追跡が出来ている場合を予測が正しいと判断し、それ以外を予測は正しくないと判断する。
予測修正部14は、予測正誤チェック部13により上記位置の予測が正しくないと判断されると予測を修正する。具体的に、予測修正部14は、予測正誤チェック部13にて、予測が正しくないと判断されると、存在確率分布モデルの標準偏差の値が大きくなるよう変更し、観測部12における上記探索範囲を広げる。
更新部15は、予測正誤チェック部13により上記位置の予測が正しいと判断されると移動体の位置及び/又は姿勢を更新し、更新結果を出力端子16からフレームごとに出力する。また、更新部15で更新した位置の推定結果は、上記前フレームの位置の推定結果として次のフレームにおける上記予測部11での予測時に使われる。
次に、位置推定装置10の動作について図2のフローチャートを用いて説明する。このフローチャートは、ロボットの位置及び/又は姿勢の推定を目的とした位置推定方法の処理手順を示す。初期化(ステップS10)の後に予測ステップ(S11)、観測ステップ(S12)、予測の正誤チェックステップ(S13)、更新ステップ(S15)が続く。また、予測の正誤チェックステップ(S13)では、予測の修正ステップ(S14)への分岐もある。予測の修正ステップ(S14)からは、観測ステップ(S12)に戻る。また、更新ステップ(S15)の後にはステップS16にて次のフレームの処理に移る。これは、上記図9に示した従来のカルマンフィルタシステムに、形式的には近いものであるが、予測の正誤チェックステップと予測の修正ステップとを新たに設けており、この二つのステップは技術的に容易に想到できるものではない。
ステップS11の予測ステップは、加速度センサや速度センサ等のオドメトリセンサ17のセンサ値と、前フレームのシステムの状態の推定結果から、現フレームのロボットの状態を予測する。オドメトリセンサ17の値や前フレームのカメラの位置は過去の情報であるため、オドメトリセンサ17の出力値から計算したロボットの位置は予測値となる。
ステップS12の観測ステップは、予測ステップで使用したオドメトリセンサ17とは別の観測センサ(カメラ等)19で環境を計測する。具体的には、ロボットに搭載されている撮像センサを用いて環境を撮像し、撮像した画像から特徴点(画像処理で識別できる目印、ランドマーク)を観測する。この観測ステップ(S12)は、毎フレーム毎に特徴点のトラッキング(追跡)を行い、位置を観測する。
この観測ステップ(S12)は、予測ステップ(S11)で求めた予測位置及び/又は姿勢を用いて探索範囲を決めて特徴点の追跡を行うことができる。
撮像センサがピンホールカメラモデルに近い場合について説明する。ピンホールカメラモデルは、図3に示すように、大きく分けて2種類のパラメータで構成される。カメラ間の位置及び/又は姿勢に関する外部パラメータ(Extrinsic Parameter)PEと、各カメラ内のパラメータであるカメラ内部パラメータ(Intrinsic Parameter)PIである。
外部パラメータPEは、図3にあって、世界座標系(World Coord)WCと3次元空間上のカメラ座標系(Camera Coord)CCとの位置及び/又は姿勢の関係を表している。図3中の世界座標系WCで定義されたw=[wと、3次元空間上のカメラ座標系CCで定義されたx=[xとは以下の(1)式の関係が成り立つ。ただし、Rは3×3の回転行列、tは3×1の並進行列を示す。
Figure 2007303886
内部パラメータは3次元空間上のカメラ座標系CCとの位置関係を表す。カメラ内部パラメータAは以下の(2)式で表される。
Figure 2007303886
ただし、fは焦点距離、ku,kvは画素と3次元空間の距離との比率(スケール因子)、u0,v0は像平面の中心の位置(単位は画素)、θは光軸oに対するu軸とv軸とのねじれ(skew)を表す。
3次元空間上のカメラ座標系CCで定義されたx=[xと、カメラの像平面π上にある画素の位置m=[m 1](同次座標系で表現)との位置関係は以下の(3)式のとおりである。ただし、λは任意の数である。
Figure 2007303886
探索範囲の大きさは、カルマンフィルタの(観測結果と、予測から計算された「予測される観測値」との)予測偏差の共分散行列Σから求める。求める共分散行列Σは下記の(4)式で求める。
Figure 2007303886
ただし、上記(4)式にあって、Σは、ロボットの位置及び/又は姿勢を表す存在確率分布の共分散行列である。また、▽Hは上記(4)式を、[m=H(R,t,[X Y Z])とλを消すように式変形した関数Hのナブラ(各入力パラメータでの偏微分値を各項目に持つ偏微分行列)、Σは観測時に生じる観測ノイズ(前提として正規分布に従う)の共分散行列とする。
本実施の形態では、存在確率分布として正規分布モデルを用いている。図4は正規分布モデルを説明するための図である。横軸は状態を示し、縦軸は存在確率を示す。移動体が存在する範囲を確率で示している。図4に示すように、状態の平均μから、±2倍の標準偏差(±2)の範囲には、約95%の確率で移動体が存在する。本実施の形態は、図4で示す範囲(状態の平均μから、±2倍の標準偏差(±2σ)の範囲)を探索範囲とする。もちろん、標準偏差の 3倍の範囲(±3倍)でも構わない。その時は約 97.5%の確率で存在することになる。範囲が大きくなるほど、探索範囲内に存在する確率は大きくなるが、計算量は多くなる。状況に応じて変更するのが好ましい。
観測ステップ(S12)では探索範囲が決まると、特徴点追跡のために、特徴点のマッチングを行う。マッチングの方法は色々ある。どの方法でも構わないが、本実施の形態は輝度情報を用いた特徴点周辺のテンプレートマッチングを行う。図5は、特徴点周辺のテンプレートマッチングを説明するための図である。例えば、ハードディスクHDに記憶されている、事前にわかっている三次元空間上の特徴点の位置D0とカルマンフィルタで推定したロボットの位置データD1から、まずステップS21にて画像内の特徴点の位置を推定する。また、特徴点付近の輝度画像(初期設定)データD2と特徴点付近の輝度画像の姿勢(初期設定)データD3から、ロボットの位置からみた特徴点付近のテンプレートをアフィン拘束にしたがって変形する(ステップS22)。以上のステップS21とステップS22から、探索範囲とテンプレートが得られるので、ステップS23にて、その情報(探索範囲とテンプレート)を元にテンプレートマッチングを行う。ステップS23の結果が特徴点の前フレームにあった特徴点追跡の結果データD4となる。
次に、ステップS13の予測の正誤チェックステップについて説明する。ロボットの位置及び/又は姿勢の推定が実際の位置及び/又は姿勢と近い予測を行っている場合は、特徴点追跡は成功すると考えられる。逆に、ロボットの位置及び/又は姿勢の推定が実際とは逸脱した予測を行っている場合は、特徴点追跡は失敗すると考えられる。図6は予測が正しい場合(a)と、誤った予測をした場合(b)を示す図である。カメラ焦点位置21の予測が正しい場合(図6(a))、実際の特徴点22は像平面23の予測探索範囲24内にあり、カメラ位置からの予測特徴点25の近くにある。カメラ焦点位置の予測が正しくない場合(図6(b))、実際の特徴点22は像平面23の予測探索範囲24外にあり、カメラ位置からの予測特徴点25から大きくはずれている。特徴点追跡の結果が成否であるかの判断は、マッチングスコアで行う。
具体的に、予測の正誤チェックステップ(S13)では、特徴点追跡で成功した特徴点の数と失敗した特徴点の数をカウントし、一定の確率以上の成功率で特徴点追跡が出来ている場合を予測が正しいと判断し、それ以外を予測は正しくないと判断する。
次に、ステップS15の更新ステップについて説明する。更新ステップ(S15)は、ロボットの位置及び/又は姿勢を観測ステップの観測結果から更新する。ロボットの位置及び/又は姿勢(状態)を更新する方法は、非特許文献1に記載されている、非線形に対応した一般の拡張カルマンフィルタと同じ方法である。
次に、ステップS14の予測の修正ステップについて説明する。予測の正誤チェックステップ(ステップS13)にて、予測が正しくないと判断したときには、予測の修正ステップ(ステップS14)にて予測を修正する。ロボットの位置が正しくないので、図4に示した存在確率分布モデルの標準偏差の値が大きくなるよう変更する。この処理で、ロボットの位置及び/又は姿勢の存在確率分布が曖昧になるが、多くの範囲の可能性を広げ、実際の状態をカバーすることが出来るようになる。
ロボットの位置が1次元で表現している場合を例として説明する。ロボットの位置が1次元で表現されている場合は、存在確率分布は図7のようになる。予測の正誤チェックステップ(S13)にて、図7(a)のように予測が間違っていると判断したとき、実際のロボットの位置は存在確率分布26の範囲にはないと考えられる。
言い換えると、予測の正誤チェックステップ(S13)にて予測が間違っていると判断したとき、ロボットの位置は間違って予測した存在確率分布の範囲26から外れた範囲27又は28にあると考えられる。本実施の形態では、図7(b)に示すようにロボットの位置の存在確率分布の標準偏差σの値を大きくする。そのことにより、ロボットの位置の曖昧さが大きくなるが、ロボットの位置の予測の範囲(存在確率)29も、上記範囲26に範囲30及び31を加えた分、大きくなる。これは、1次元の例であるが2次元以上の状態変数の場合も同様に標準偏差の値を大きくすることで予測を修正する。
予測の修正ステップ(S14)にて予測の修正を行った後に再度ステップS12の観測フェーズに移り、同じフレーム(時間)で処理を行い、次のフレーム(時間)には移らない。ステップS13の予測の正誤チェックステップで、予測が正しいと判断されるまで繰り返す。但し、予測があまりにも大きく逸脱している時は、トラッキングしたい特徴点が画像内にない場合があるため、トラッキングが成功することがないという問題がある。
その間、各センサの出力は、バッファ18及び20に保存する。計算速度が充分速いと、ステップS14の予測の修正フェーズにより予測が時間的に合わなくなったとしても、バッファ18及び20に格納されている過去の各センサの出力値を使って時間的に追いつくことが可能である。
次に、上記存在確率分布の共分散行列Σについて詳細に説明する。まず、状態変数ベクトルxは(5)式によって表される。ただし、xはカメラの位置、ωはカメラの姿勢を表す。また、Pは特徴点の位置#1、Pは特徴点の位置#nを表す。
Figure 2007303886
すると、状態変数の共分散行列Σは(6)式によって表される。この(6)式では、各行、各列に状態変数成分に対応する共分散値が入る。
Figure 2007303886
ここで、本発明の位置推定方法がマルコフ連鎖であることを考える。マルコフ連鎖は、考慮すべき過去が一つ前の時点のみの過程(process)を指し、それより前の過去は考慮していない。以下の(7)式で表される。
Figure 2007303886
このマルコフ連鎖で考えると、上記図2に示したフローチャートは以下の各ステップとなる。先ず、予測ステップでは、オドメトリセンサから得られる移動体の速度x'、角速度ω'を用いて次フレームの移動体の位置を予測する。式は以下(8)式の通りである。但し、x t+1は、時刻 t+1 の予測状態である。Σ xt+1は時刻 t+1 の予測状態の共分散行列、Σは予測ノイズ(平均0分散Σの速度であるとしている)。▽はナブラ、▽Fは関数Fを状態変数を元に一次偏微分した行列を表す。
Figure 2007303886
次に、観測ステップについて説明する。時刻 t+1 の予測状態Σ xt+1より、カメラと特徴点の予測位置がわかっているため、カメラ画像の特徴点の射影位置を予測することが可能である。特徴点#の予測された射影位置s #t+1を算出する式は以下(9)式の通りである。但し、λはある数、Aはカメラ内部パラメータ行列、R(ω t+1)は回転行列を表す。
Figure 2007303886
予測とは別に、特徴点の画像内の位置がs#t+1と観測されたとする。観測値(トラッキングで求めた位置) s#t+1と予測値s #t+1との間に差vが発生する。その予測値と観測値との差vの分散Σv^を求めることができる。式は以下の(10)式となる。
Figure 2007303886
上記(10)式にあって、▽はナブラ,∇Hは関数Hを,状態変数を元に一次偏微分した行列を表し、Σは計測誤差を表す。また、vは、単位は画素で、予測した画像内の特徴点の位置と、観測した画像内の特徴点の位置との差を示している。vは平均0,分散Σv^,の分布をすると仮定すると,予測位置s #t+1を中心とした2.0*sqrt(Σv^) ( 標準偏差の2倍 )の範囲に観測値s#t+1がある確率は約95%であるといえる。言い換えると、予測位置s #t+1を中心とした2.0*sqrt(Σv^)の範囲を探索すれば、95%の確率で探索が成功する。
次に、更新ステップについて説明する。観測ステップで得られた、観測値をもとに、画素vを次の(11)式のように求める。
Figure 2007303886
そしてカルマンゲインWを次の(12)式のように求め、状態変数xt+1を(13)式のように、また共分散行列Σxt+1を(14)式のように更新する。
Figure 2007303886
Figure 2007303886
Figure 2007303886
以上の処理で1フレームの処理が完了する。
さらに、上記1フレームの処理の中で、予測の正誤チェックステップは、観測ステップの「観測値(トラッキングで求めた位置) s#t+1と予測値s #t+1との間に発生する差v」がvの分散Σv^から求めた2.0*sqrt(Σv^) (標準偏差の2倍) の範囲内にないことがわかったとき、その特徴点とカメラとの位置関係の推定は間違っているとする。トラッキングの場合に言い換えると、予測の画像内の特徴点の位置s #t+1を中心とした2.0*sqrt(Σv^) (標準偏差の2倍)の範囲でのトラッキングが失敗した時、その特徴点とカメラとの位置関係の推定は間違っているとする。
カメラフレームに入っていると予想される特徴点群の半分以上の推定が間違っている時、状態変数全体の推定が間違っていると判断する。
次に、予測の修正ステップについて説明する。予測の修正ステップでは、状態変数全体の推定が間違っている状態は、カメラの位置推定が間違っている状態とする。
本発明では、「全体の推定が間違っている」ことは、カメラの推定位置が間違っていることと同じなので、カメラの状態変数の分散の値を大きくすることで対処する。数式で表すと以下(15)式のようになる。
Figure 2007303886
カメラの位置及び/又は姿勢の分散が大きくなると、観測フェーズの観測値s#t+1と予測値s #t+1との間の差vの分散の値が(16)式のように大きくなる。
Figure 2007303886
これは、探索範囲が大きくなることを意味している。
位置推定装置の構成を示すブロック図である。 位置推定装置の動作を説明するためのフローチャートである。 ピンホールカメラモデルを説明するための図である。 正規分布モデルを説明するための図である。 特徴点周辺のテンプレートマッチングを説明するための図である。 予測が正しい場合と、誤った予測をした場合を示す図である。 ロボットの位置が1次元で表現されている場合の存在確率分布を示す図である。 環境が固定(変化しない)の状況におかれた、オドメトリセンサとビジョンセンサを搭載したロボットを示す図である。 カルマンフィルタのアルゴリズムを示すフローチャートである。
符号の説明
10 位置推定装置、11 予測部、12 観測部、13 予測正誤チェック部、14 予測修正部、15 更新部、17 オドメトリセンサ、18,20 バッファ、19 観測センサ

Claims (8)

  1. 現フレームにおけるオドメトリセンサのセンサ値と、前フレームの移動体の位置推定結果とを予測フィルタによりフィルタリングし、センサが搭載された移動体の位置を予測する予測部と、
    上記予測部で使用したオドメトリセンサとは別の観測センサにより環境を計測し、環境内の特徴点を毎フレーム追跡して位置を観測する観測部と、
    上記観測部における環境内の特徴点の追跡結果に基づいて上記予測部における位置の予測の正誤を判断する予測正誤チェック部と、
    上記予測正誤チェック部により上記位置の予測が正しくないと判断すると予測を修正する予測修正部と、
    上記予測正誤チェック部により上記位置の予測が正しいと判断すると移動体の位置及び/又は姿勢を更新する更新部と
    を備えることを特徴とする位置推定装置。
  2. 上記観測部は、上記予測部で求めた予測位置及び/又は姿勢を用いて探索範囲を決め、上記特徴点の追跡を行うことを特徴とする請求項1記載の位置推定装置。
  3. 上記観測部は、事前に判っている三次元空間上の特徴点の位置とカルマンフィルタで推定した移動体の位置データから画像内の特徴点の位置を推定し、特徴点付近の輝度画像データと特徴点付近の輝度画像の姿勢データから、移動体の位置からみた特徴点付近のテンプレートをアフィン拘束にしたがって変形し、上記探索範囲と上記テンプレートを基にテンプレートマッチングを行って上記特徴点の追跡を行うことを特徴とする請求項2記載の位置推定装置。
  4. 上記予測正誤チェック部は、上記観測部における特徴点追跡で成功した特徴点の数と失敗した特徴点の数をカウントし、一定の確率以上の成功率で特徴点追跡が出来ている場合を予測が正しいと判断し、それ以外を予測は正しくないと判断することを特徴とする請求項1記載の位置推定装置。
  5. 上記更新部は、更新した移動体の位置推定結果を上記前フレームの移動体の位置推定結果として次のフレームにおける上記予測部での予測時に使わせることを請求項1記載の位置推定装置。
  6. 上記予測修正部は、上記予測正誤チェック部にて予測が正しくないと判断されると、移動体の存在確率分布モデルの標準偏差の値が大きくなるよう変更し、上記観測部における上記探索範囲を広げることを特徴とする請求項1記載の位置推定装置。
  7. 現フレームにおけるオドメトリセンサのセンサ値と、前フレームの移動体の位置推定結果とを予測フィルタによりフィルタリングし、センサが搭載された移動体の位置を予測する予測工程と、
    上記予測工程で使用したオドメトリセンサとは別の観測センサにより環境を計測し、環境内の特徴点を毎フレーム追跡して位置を観測する観測工程と、
    上記観測工程における環境内の特徴点の追跡結果に基づいて上記予測工程における位置の予測の正誤を判断する予測正誤チェック工程と、
    上記予測正誤チェック工程により上記位置の予測が正しくないと判断すると予測を修正する予測修正工程と、
    上記予測正誤チェック工程により上記位置の予測が正しいと判断すると移動体の位置及び/又は姿勢を更新する更新工程と
    を備えることを特徴とする位置推定方法。
  8. 移動体の位置を予測する位置推定装置にて実行される位置推定プログラムを記録しているプログラム記録媒体において、
    現フレームにおけるオドメトリセンサのセンサ値と、前フレームの移動体の位置推定結果とを予測フィルタによりフィルタリングし、センサが搭載された移動体の位置を予測する予測工程と、
    上記予測工程で使用したオドメトリセンサとは別の観測センサにより環境を計測し、環境内の特徴点を毎フレームに追跡して位置を観測する観測工程と、
    上記観測工程における環境内の特徴点の追跡結果に基づいて上記予測工程における位置の予測の正誤を判断する予測正誤チェック工程と、
    上記予測正誤チェック工程により上記位置の予測が正しくないと判断すると予測を修正する予測修正工程と、
    上記予測正誤チェック工程により上記位置の予測が正しいと判断すると移動体の位置及び/又は姿勢を更新する更新工程と
    を備える位置推定プログラムを記録しているプログラム記録媒体。
JP2006130602A 2006-05-09 2006-05-09 位置推定装置、位置推定方法及びプログラム記録媒体 Expired - Fee Related JP4148276B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006130602A JP4148276B2 (ja) 2006-05-09 2006-05-09 位置推定装置、位置推定方法及びプログラム記録媒体
US11/745,947 US7873447B2 (en) 2006-05-09 2007-05-08 Position estimation apparatus, position estimation method and program recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006130602A JP4148276B2 (ja) 2006-05-09 2006-05-09 位置推定装置、位置推定方法及びプログラム記録媒体

Publications (2)

Publication Number Publication Date
JP2007303886A true JP2007303886A (ja) 2007-11-22
JP4148276B2 JP4148276B2 (ja) 2008-09-10

Family

ID=38686151

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006130602A Expired - Fee Related JP4148276B2 (ja) 2006-05-09 2006-05-09 位置推定装置、位置推定方法及びプログラム記録媒体

Country Status (2)

Country Link
US (1) US7873447B2 (ja)
JP (1) JP4148276B2 (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009119329A1 (ja) 2008-03-24 2009-10-01 株式会社ニコン 細胞観察画像の画像解析方法、画像処理プログラム及び画像処理装置
JP2010096584A (ja) * 2008-10-15 2010-04-30 Kajima Corp 障害物検出装置、及び障害物検出方法
WO2011101945A1 (ja) * 2010-02-19 2011-08-25 パナソニック株式会社 物体位置補正装置、物体位置補正方法、及び物体位置補正プログラム
JPWO2009150793A1 (ja) * 2008-06-09 2011-11-10 パナソニック株式会社 撮像装置、撮像方法
JP2011248648A (ja) * 2010-05-27 2011-12-08 Toyota Central R&D Labs Inc 移動体
CN103901885A (zh) * 2012-12-28 2014-07-02 联想(北京)有限公司 信息处理方法和信息处理设备
CN105203092A (zh) * 2014-06-30 2015-12-30 联想(北京)有限公司 一种信息处理方法、装置及电子设备
JP2019204509A (ja) * 2018-05-24 2019-11-28 バイドゥ ユーエスエー エルエルシーBaidu USA LLC 移動障害物を回避する自動運転のための運転経路の決定
WO2019244917A1 (ja) * 2018-06-19 2019-12-26 学校法人帝京大学 細胞の挙動の解析方法、およびその利用
WO2020137313A1 (ja) * 2018-12-28 2020-07-02 パナソニックIpマネジメント株式会社 位置測定装置
JP2021113760A (ja) * 2020-01-20 2021-08-05 東芝デジタルソリューションズ株式会社 情報処理装置、情報処理方法、およびプログラム
WO2021251171A1 (ja) * 2020-06-12 2021-12-16 ソニーグループ株式会社 情報処理装置、情報処理方法、及び、プログラム

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101524020B1 (ko) * 2009-03-06 2015-05-29 엘지전자 주식회사 로봇 청소기의 점진적 지도 작성 및 위치 보정 방법
JP2011043419A (ja) * 2009-08-21 2011-03-03 Sony Corp 情報処理装置、および情報処理方法、並びにプログラム
CN102656532B (zh) * 2009-10-30 2015-11-25 悠进机器人股份公司 用于移动机器人位置识别的地图的生成及更新方法
US8457829B2 (en) * 2010-02-19 2013-06-04 Palo Alto Research Center Incorporated System and method for determining characteristics of a physical environment with simple motion patterns
JP5017392B2 (ja) * 2010-02-24 2012-09-05 クラリオン株式会社 位置推定装置および位置推定方法
US8799201B2 (en) 2011-07-25 2014-08-05 Toyota Motor Engineering & Manufacturing North America, Inc. Method and system for tracking objects
JP2013022705A (ja) 2011-07-25 2013-02-04 Sony Corp ロボット装置及びロボット装置の制御方法、コンピューター・プログラム、並びにロボット・システム
FR3004570B1 (fr) * 2013-04-11 2016-09-02 Aldebaran Robotics Procede d'estimation de la deviation angulaire d'un element mobile relativement a une direction de reference
US9154919B2 (en) * 2013-04-22 2015-10-06 Alcatel Lucent Localization systems and methods
JP2014241473A (ja) * 2013-06-11 2014-12-25 株式会社東芝 画像処理装置、方法、及びプログラム、並びに、立体画像表示装置
CN105960575B (zh) * 2014-02-24 2018-06-12 索尼公司 功耗及网络负荷优化的智能可穿戴设备及方法
DE102015107265A1 (de) * 2015-05-08 2016-11-10 Northrop Grumman Litef Gmbh Verfahren zum Bestimmen von Zuständen eines Systems mittels eines Schätzfilters
CN105045394A (zh) * 2015-08-03 2015-11-11 歌尔声学股份有限公司 一种可穿戴式电子终端中预设功能的启动方法和装置
CN109959381B (zh) * 2017-12-22 2021-06-04 深圳市优必选科技有限公司 一种定位方法、装置、机器人及计算机可读存储介质
WO2019136617A1 (en) * 2018-01-10 2019-07-18 Intel Corporation Predictive map generation technology
US10565714B2 (en) 2018-05-25 2020-02-18 Denso Corporation Feature tracking for visual odometry
EP3640767A1 (de) * 2018-10-17 2020-04-22 Siemens Schweiz AG Verfahren zum bestimmen mindestens eines bereichs in mindestens einem eingabemodell für mindestens ein zu platzierendes element
CN115410233B (zh) * 2022-11-01 2023-01-24 齐鲁工业大学 一种基于卡尔曼滤波和深度学习的手势姿态估计方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5592401A (en) * 1995-02-28 1997-01-07 Virtual Technologies, Inc. Accurate, rapid, reliable position sensing using multiple sensing technologies
JP4479372B2 (ja) 2004-06-25 2010-06-09 ソニー株式会社 環境地図作成方法、環境地図作成装置、及び移動型ロボット装置

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3260550A1 (en) 2008-03-24 2017-12-27 Nikon Corporation Method for analyzing image for cell observation, image processing program, and image processing device
WO2009119329A1 (ja) 2008-03-24 2009-10-01 株式会社ニコン 細胞観察画像の画像解析方法、画像処理プログラム及び画像処理装置
JPWO2009150793A1 (ja) * 2008-06-09 2011-11-10 パナソニック株式会社 撮像装置、撮像方法
JP5451593B2 (ja) * 2008-06-09 2014-03-26 パナソニック株式会社 撮像装置、撮像方法
JP2010096584A (ja) * 2008-10-15 2010-04-30 Kajima Corp 障害物検出装置、及び障害物検出方法
WO2011101945A1 (ja) * 2010-02-19 2011-08-25 パナソニック株式会社 物体位置補正装置、物体位置補正方法、及び物体位置補正プログラム
JP4875228B2 (ja) * 2010-02-19 2012-02-15 パナソニック株式会社 物体位置補正装置、物体位置補正方法、及び物体位置補正プログラム
US8401234B2 (en) 2010-02-19 2013-03-19 Panasonic Corporation Object position correction apparatus, object position correction method, and object position correction program
JPWO2011101945A1 (ja) * 2010-02-19 2013-06-17 パナソニック株式会社 物体位置補正装置、物体位置補正方法、及び物体位置補正プログラム
JP2011248648A (ja) * 2010-05-27 2011-12-08 Toyota Central R&D Labs Inc 移動体
CN103901885A (zh) * 2012-12-28 2014-07-02 联想(北京)有限公司 信息处理方法和信息处理设备
CN105203092A (zh) * 2014-06-30 2015-12-30 联想(北京)有限公司 一种信息处理方法、装置及电子设备
CN105203092B (zh) * 2014-06-30 2018-12-14 联想(北京)有限公司 一种信息处理方法、装置及电子设备
JP2019204509A (ja) * 2018-05-24 2019-11-28 バイドゥ ユーエスエー エルエルシーBaidu USA LLC 移動障害物を回避する自動運転のための運転経路の決定
WO2019244917A1 (ja) * 2018-06-19 2019-12-26 学校法人帝京大学 細胞の挙動の解析方法、およびその利用
JPWO2019244917A1 (ja) * 2018-06-19 2021-06-24 学校法人帝京大学 細胞の挙動の解析方法、およびその利用
US11475578B2 (en) 2018-06-19 2022-10-18 Teikyo University Method for analyzing behavior of cell, and use thereof
JP7446616B2 (ja) 2018-06-19 2024-03-11 学校法人帝京大学 細胞の挙動の解析方法、およびその利用
WO2020137313A1 (ja) * 2018-12-28 2020-07-02 パナソニックIpマネジメント株式会社 位置測定装置
JP2021113760A (ja) * 2020-01-20 2021-08-05 東芝デジタルソリューションズ株式会社 情報処理装置、情報処理方法、およびプログラム
JP7175930B2 (ja) 2020-01-20 2022-11-21 東芝デジタルソリューションズ株式会社 情報処理装置、情報処理方法、およびプログラム
WO2021251171A1 (ja) * 2020-06-12 2021-12-16 ソニーグループ株式会社 情報処理装置、情報処理方法、及び、プログラム

Also Published As

Publication number Publication date
US7873447B2 (en) 2011-01-18
JP4148276B2 (ja) 2008-09-10
US20070265741A1 (en) 2007-11-15

Similar Documents

Publication Publication Date Title
JP4148276B2 (ja) 位置推定装置、位置推定方法及びプログラム記録媒体
US10133278B2 (en) Apparatus of controlling movement of mobile robot mounted with wide angle camera and method thereof
JP6760114B2 (ja) 情報処理装置、データ管理装置、データ管理システム、方法、及びプログラム
US10275649B2 (en) Apparatus of recognizing position of mobile robot using direct tracking and method thereof
US10399228B2 (en) Apparatus for recognizing position of mobile robot using edge based refinement and method thereof
US10838427B2 (en) Vision-aided inertial navigation with loop closure
WO2018068771A1 (zh) 目标跟踪方法、系统、电子设备和计算机存储介质
JP2009193240A (ja) 移動ロボット及び環境地図の生成方法
KR100703698B1 (ko) 공간 필기 인식 장치 및 방법, 그리고 상기 방법을 기록한기록 매체
JP7036400B2 (ja) 自車位置推定装置、自車位置推定方法、及び自車位置推定プログラム
JP2009169845A (ja) 自律移動ロボット及び地図更新方法
JP2006252473A (ja) 障害物検出装置、キャリブレーション装置、キャリブレーション方法およびキャリブレーションプログラム
JP4171459B2 (ja) 移動体の回転移動量利用方法とその装置、及びコンピュータプログラムを保存するコンピュータ読取り可能な記録媒体
KR20170088228A (ko) 다중로봇의 자기위치인식에 기반한 지도작성 시스템 및 그 방법
JP2017215193A (ja) 情報処理装置および方法
JP2008059218A (ja) 自律走行ロボットの自己位置回復方法
Nobre et al. Drift-correcting self-calibration for visual-inertial SLAM
WO2020137110A1 (ja) 移動量推定装置
KR20190001086A (ko) 관성 및 단일 광학 센서를 이용한 슬라이딩 윈도우 기반 비-구조 위치 인식 방법, 이를 수행하기 위한 기록 매체 및 장치
KR101167627B1 (ko) 이동 로봇의 위치 및 지도의 이중 보정 장치 및 방법
JP7336223B2 (ja) 自己位置推定方法
US20230350422A1 (en) Information processing apparatus, information processing method, and information processing program
CN113483762A (zh) 一种位姿优化方法及设备
JP2018033035A (ja) 画像処理装置、撮影装置、プログラム、機器制御システム及び機器
JP6992344B2 (ja) ランドマーク選定方法及びランドマーク選定装置

Legal Events

Date Code Title Description
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: 20080603

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080616

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110704

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110704

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110704

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120704

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120704

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130704

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees