説明

測位装置及び測位方法

【課題】移動体の位置及び姿勢を継続的に且つより精度良く推定すること。
【解決手段】周辺領域の画像を経時的に撮像する撮像部1と、移動体200の移動量を検出する慣性センサ2と、を備える移動体200の位置及び姿勢を推定する測位装置100に、撮像部1によって撮像された時刻tにおける画像と時刻t+Δtにおける画像とを比較することにより、移動体200の並進ベクトルhimgと回転行列Rimgとを算出する画像処理部3と、慣性センサ2によって検出された移動量に基づいて、移動体200の並進ベクトルhinsと回転行列Rinsとを算出する慣性算出部4と、並進ベクトルhimgと回転行列Rimgとに基づいて、並進ベクトルhinsと回転行列Rinsとに含まれる誤差量を推定するカルマンフィルタ5と、を備え、誤差量に基づいて、慣性センサ2によって検出された移動量を補正するように構成した。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動体の位置及び姿勢を推定する測位装置及び測位方法に関する。
【背景技術】
【0002】
車両等の移動体は、ジャイロセンサや加速度センサ等の慣性センサを用いて、当該移動体の位置及び姿勢の算出を行っている。
例えば、特許文献1には、慣性センサとして、機械式ジャイロを用いる技術が記載されている。そして、特許文献1には、機械式ジャイロによって衛星の角速度を検出し、恒星センサによって衛星の姿勢を検出する技術が記載されている。
また、特許文献2には、動揺体の上に設置されたカメラの座標系及び座面を修正するために、動揺体の回転角を検出する技術が記載されている。
【0003】
また、移動体にカメラを搭載して、カメラによって取得された画像を用いて、移動体の位置及び姿勢を推定する方法もある。
例えば、非特許文献1には、ステレオ画像から静止領域を取得し、当該静止領域を仮想的に上方から見た画像(Virtual−Projection−Plane image:VPP画像)に変換し、当該VPP画像を時系列に沿ってマッチングすることにより、移動体の運動を推定する技術が記載されている。
また、非特許文献2には、画像から特徴点を生成して、時系列に沿って、各画像内の特徴点を比較することにより、移動体の運動を推定する技術が記載されている。
また、特許文献3には、車両の操舵角と、当該車両に搭載されたCCDカメラによって検出される車両の横方向の相対位置とに基づいて、カルマンフィルタによる処理を行って、補正操舵角を演算する技術が記載されている。特許文献3では、CCDカメラ画像内の路面に描かれたセンターライン等に基づいて走行目標ラインを想定し、当該走行目標ラインと車両の前後方向に延びる基準線との間隔を、車両の横方向の相対位置として検出している。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2000−142594号公報
【特許文献2】実開平01−304510号公報
【特許文献3】特開平10−297521号公報
【非特許文献】
【0005】
【非特許文献1】関 晃仁、奥富 正敏、ステレオ動画像を利用した道路面領域の抽出と追跡による自車両の運動推定、情報処理学会論文誌:コンピュータビジョンとイメージメディア、日本、社団法人情報処理学会、2006年3月、Vol.47、No.SIG5(CVIM13)、90−99ページ
【非特許文献2】Niklas Karlsson、他5名、The vSLAM Algorithm for Robust Localization and Mapping、Proceedings of the IEEE International Conference on Robotics and Automation (ICRA) 2005、2005年4月、24−29ページ
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1、2に記載の慣性センサにおいては、温度などの影響によりドリフト誤差が発生する。そのため、これらの慣性センサの検出精度は、時間が経過すると劣化してしまう。なお、慣性センサとして、光ファイバジャイロ(FOG;Fiber Optic Gyro)等を用いることにより、精度を向上することができるが、コストが大幅に高くなってしまう。
【0007】
また、非特許文献1のように、ステレオ画像を用いる場合、オクルージョンが発生してしまう。また、移動する障害物が存在する環境下では、非特許文献2に記載の特徴点の算出や特徴点の対応付けを安定して行うことができない。同様に、移動障害物の存在下では、特許文献3に記載の走行目標ラインの想定を安定して行うことが難しい。したがって、これらの方法によって、移動体の位置及び姿勢を継続的に且つ精度良く算出することは難しい。
【0008】
従って、本発明は、移動体の位置及び姿勢を継続的に且つより精度良く推定することができる測位装置及び測位方法を提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明にかかる測位装置は、周辺領域の画像を経時的に撮像する撮像部と、移動体の移動量を検出する慣性検出部と、を備える前記移動体の位置及び姿勢を推定する測位装置である。前記測位装置は、画像処理手段と、慣性算出手段と、誤差量推定手段と、を備える。前記画像処理手段は、前記撮像部によって撮像された時刻tにおける画像と時刻t+Δtにおける画像とを比較することにより、前記移動体の画像並進量と画像回転量とを算出する。前記慣性算出手段は、前記慣性検出部によって検出された移動量に基づいて、前記移動体の慣性並進量と慣性回転量とを算出する。前記誤差量推定手段は、前記画像並進量と前記画像回転量とに基づいて、前記慣性並進量と前記慣性回転量とに含まれる誤差量を推定する。そして、前記測位装置は、前記誤差量に基づいて、前記慣性検出部によって検出された移動量を補正する。
【0010】
本発明に係る測位装置においては、誤差量推定手段が、画像並進量と画像回転量とに基づいて、慣性並進量と慣性回転量とに含まれる誤差量を推定する。通常、画像から移動体の移動量を推定すると、オクルージョンや画像内に存在する移動障害物等の影響により誤差が発生する場合がある。しかし、時刻tにおける画像と、時刻tからΔt(1エポック(1時刻))経過した時刻t+Δtにおける画像と、を比較することによって移動体の移動量を算出する場合、比較的精度良く移動体の移動量を算出することができる。具体的には、オクルージョンが毎回(Δt毎に)発生するわけではないので、時刻tにおける画像と時刻t+Δtにおける画像との対応が取れれば、精度良く移動体の移動量を算出することができる。換言すれば、画像処理手段によって移動体の移動量を算出する方法の短時間における検出精度は、比較的優れている。一方、慣性検出部によって、移動体の移動量を検出すると、温度などの影響によりドリフト誤差が発生する。そのため、慣性検出部の検出精度は、時間が経過すると劣化してしまう。換言すれば、慣性検出部によって移動体の移動量を検出する方法の長時間における検出精度は、比較的劣っている。本発明に係る測位装置においては、短時間における検出精度に比較的優れている画像処理手段によって算出される移動体の移動量によって、長時間における検出精度に比較的劣っている慣性検出部によって検出される移動量を補正する。これにより、測位装置は、移動体の移動量である並進量及び回転量を長時間にわたって精度良く推定することができる。換言すれば、測位装置は、移動体の位置及び姿勢を継続的に且つより精度良く推定することができる。
【0011】
本発明に係る測位方法は、周辺領域の画像を経時的に撮像する撮像部と、移動体の移動量を検出する慣性検出部と、を備える前記移動体の位置及び姿勢を推定する測位装置における測位方法である。当該測位方法は、前記測位装置が、画像処理と、慣性算出処理と、誤差量推定処理と、補正処理と、を実行するものである。前記画像処理において、前記測位装置は、前記撮像部によって撮像された時刻tにおける画像と時刻t+Δtにおける画像とを比較することにより、前記移動体の画像並進量と画像回転量とを算出する。前記慣性算出処理において、前記測位装置は、前記慣性検出部によって検出された移動量に基づいて、前記移動体の慣性並進量と慣性回転量とを算出する。前記誤差量推定処理において、前記測位装置は、前記画像並進量と前記画像回転量とに基づいて、前記慣性並進量と前記慣性回転量とに含まれる誤差量を推定する。前記補正処理において、前記測位装置は、前記誤差量に基づいて、前記慣性検出部によって検出された移動量を補正する。
【0012】
本発明に係る測位方法においては、誤差量推定処理において、画像並進量と画像回転量とに基づいて、慣性並進量と慣性回転量とに含まれる誤差量を推定する。通常、画像から移動体の移動量を推定すると、オクルージョンや画像内に存在する移動障害物等の影響により誤差が発生する場合がある。しかし、時刻tにおける画像と、時刻tからΔt(1エポック(1時刻))経過した時刻t+Δtにおける画像と、を比較することによって移動体の移動量を算出する場合、比較的精度良く移動体の移動量を算出することができる。換言すれば、画像処理によって移動体の移動量を算出する方法の短時間における検出精度は、比較的優れている。一方、慣性検出部によって、移動体の移動量を検出すると、温度などの影響によりドリフト誤差が発生する。そのため、慣性検出部の検出精度は、時間が経過すると劣化してしまう。換言すれば、慣性検出部によって移動体の移動量を検出する方法の長時間における検出精度は、比較的劣っている。本発明に係る測位方法においては、短時間における検出精度に比較的優れている画像処理によって算出される移動体の移動量によって、長時間における検出精度に比較的劣っている慣性検出部によって検出される移動量を補正する。これにより、移動体の移動量である並進量及び回転量を長時間にわたって精度良く推定することができる。換言すれば、移動体の位置及び姿勢を継続的に且つより精度良く推定することができる。
【発明の効果】
【0013】
本発明によれば、移動体の位置及び姿勢を継続的に且つより精度良く推定することができる。
【図面の簡単な説明】
【0014】
【図1】本発明の実施の形態に係る測位装置を模式的に示す構成図である。
【図2】時刻tにおける画像内の特徴点と時刻t+Δtにおける画像内の特徴点との対応付けを説明する図である。
【図3】時刻tにおける画像と時刻t+Δtにおける画像との間の幾何学的関係を説明する図である。
【図4】本発明の実施の形態に係る測位装置の測位方法を示すフローチャートである。
【図5】本発明の実施の形態に係る測位装置における基礎行列の算出方法を示すフローチャートである。
【図6】本発明に係る実施例1におけるヨー方向の姿勢の検出精度を示すグラフである。
【図7】本発明に係る実施例1におけるロール方向の姿勢の検出精度を示すグラフである。
【図8】本発明に係る実施例1におけるピッチ方向の姿勢の検出精度を示すグラフである。
【発明を実施するための形態】
【0015】
以下、図面を参照して本発明の実施の形態について説明する。
図1は、本発明の実施の形態に係る測位装置100を模式的に示す構成図である。図1に示すように、測位装置100は、移動体200に備えられ、移動体200の位置及び姿勢を推定する。
移動体200は、測位装置100の他に、撮像部1、慣性センサ2(慣性検出部)等を備えている。
【0016】
撮像部1は、移動体200の周辺領域の画像(画像データ)を経時的に撮像する。撮像部1は、例えば、CCD(Charge Coupled Device)、CMOS(Complementary Metal Oxide Semiconductor)等の光電変換素子を備えるカメラ等である。
【0017】
また、慣性センサ2は、移動体200の移動量を検出する。移動体200は、慣性センサ2として、例えば、加速度センサ21、ジャイロセンサ22等を備えている。そして、加速度センサ21は、移動体200の加速度を経時的に検出する。また、ジャイロセンサ22は、移動体200の角速度を検出する。なお、慣性センサ2は、移動体200の移動量(回転行列、並進ベクトル)を検出するものであれば、どんなものであってもよい。例えば、移動体200が車輪により駆動されるものである場合、慣性センサ2として当該車輪の回転を計測するエンコーダを備えていてもよい。
【0018】
測位装置100は、画像処理部3(画像処理手段)、慣性算出部4(慣性算出手段)、カルマンフィルタ5(誤差量推定手段)等を備えている。測位装置100は、制御部(図示省略)、メモリ(図示省略)等を有している。当該メモリは、測位装置100を制御するための各種プログラム(図示省略)及びデータ(図示省略)などを格納している。そして、当該制御部は、当該メモリに格納されている各種プログラムを実行することにより、測位装置100の各部を制御する。例えば、当該制御部は、画像処理部3、慣性算出部4、カルマンフィルタ5等を制御することにより、画像処理手段、慣性算出手段、誤差量推定手段等として機能する。
【0019】
画像処理部3には、撮像部1によって撮像された画像データが入力される。そして、画像処理部3は、撮像部1によって撮像された時刻tにおける画像と、時刻t+Δtにおける画像とを比較することにより、移動体200の並進ベクトルhimg(画像並進量)と回転行列Rimg(画像回転量)とを算出する。
具体的には、画像処理部3は、特徴点検出部31、特徴点対応付け部32、誤対応除去部33、停止判定部34、基礎行列算出部35等を備えている。
【0020】
特徴点検出部31には、撮像部1によって撮像された画像データが入力される。そして、特徴点検出部31は、撮像部1によって撮像された画像から特徴点を検出する。具体的には、特徴点検出部31は、撮像部1によって撮像された画像から特徴量を算出することによって特徴点を検出する。本実施形態では、特徴点検出部31は、画像からSHIFT特徴量を算出することにより特徴点を検出する。SHIFT特徴量は、画像の回転、スケール変化、照明変化等によって影響を受けにくい点で優れている。なお、特徴点検出部31が算出する特徴量はSHIFT特徴量に限定されるものではなく、他の特徴量であってもよい。
【0021】
特徴点対応付け部32には、特徴点検出部31によって検出された特徴点の特徴量が入力される。そして、特徴点対応付け部32は、時刻tにおける画像内の特徴点と、時刻t+Δtにおける画像内の特徴点との対応付けを行う。例えば、本実施形態では、特徴点対応付け部32は、最近傍探索と呼ばれる解法を用いて、時刻tにおける画像内の特徴点と、時刻t+Δtにおける画像内の特徴点との対応付けを行う。なお、特徴点対応付け部32は、他の解法を用いて特徴点の対応付けを行ってもよい。
【0022】
誤対応除去部33には、特徴点対応付け部32から、特徴点の対応付けに関する情報と各特徴点の特徴量とが入力される。そして、誤対応除去部33は、特徴点対応付け部32によって対応付けられた時刻tにおける画像内の特徴点と時刻t+Δtにおける画像内の特徴点とのうち、誤って対応付けられた特徴点を除去する。
一般に、特徴量のみに基づいて、特徴点の対応付けを行うと、本来対応すべきでない特徴点同士を対応するものとする結果が含まれてしまう。例えば、図2に、このような誤対応の例を示す。図2の上側の図は時刻tにおける画像を示し、図2の下側の図は時刻t+Δtにおける画像を示す。また、図2において、黒丸は特徴点を示し、点線は本来対応すべき特徴点同士の対応を示し、破線は本来対応すべきでない特徴点同士の対応を示す。特徴点対応付け部32による特徴点の対応付け処理では、図2に示すような誤対応を生じる可能性がある。そのため、誤対応除去部33は、図2に示すような、本来対応すべきでない特徴点同士を対応点から除外する処理を行う。
【0023】
具体的には、誤対応除去部33には、後述する慣性算出部4によって算出された並進ベクトルhins(慣性並進量)及び回転行列Rins(慣性回転量)が入力される。
そして、まず、誤対応除去部33は、並進ベクトルhins及び回転行列Rinsに基づいて、時刻t+Δtにおける画像内の特徴点を時刻tにおける画像内に戻す。次いで、誤対応除去部33は、時刻t+Δtにおける画像内の特徴点が、時刻tにおける画像内において、当該時刻t+Δtにおける画像内の特徴点に対応する時刻tにおける画像内の特徴点を中心としたNピクセル四方(Nは、正の整数)の範囲内にある場合に、当該時刻tにおける画像内の特徴点と、時刻t+Δtにおける画像内の特徴点と、を互いに対応する対応点とする。
これにより、時刻t+Δtにおける画像内の特徴点を時刻tにおける画像内に戻した場合に、時刻t+Δtにおける画像内の特徴点が、当該時刻t+Δtにおける画像内の特徴点に対応する時刻tにおける画像内の特徴点を中心としたNピクセル四方の範囲内にない場合、当該時刻tにおける画像内の特徴点と、時刻t+Δtにおける画像内の特徴点と、を、互いに対応しない特徴点として、対応点から除去することができる。
なお、本実施形態では、N=20とした。Nの値を適宜変更することにより、特徴点の対応付けの精度を必要に応じて調節することができる。
【0024】
停止判定部34には、特徴点対応付け部32及び誤対応除去部33によって対応付けられた特徴点(対応点)の特徴量が入力される。停止判定部34は、移動体200が停止しているか否かを判定する。具体的には、停止判定部34は、撮像部1によって撮像された画像データに基づいて、移動体200が停止しているか否かを判定する。より具体的には、停止判定部34は、特徴点対応付け部32及び誤対応除去部33によって対応するとされた、時刻tにおける画像内の特徴点の特徴量と時刻t+Δtにおける画像内の特徴点の特徴量とを比較することにより、移動体200が停止しているか否かを判定する。
そして、停止判定部34は、移動体200が停止していないと判定した場合には、特徴点対応付け部32及び誤対応除去部33によって対応するとされた、時刻tにおける画像内の特徴点の特徴量と時刻t+Δtにおける画像内の特徴点の特徴量とを基礎行列算出部35に入力する。
一方、停止判定部34は、移動体200が停止していると判定した場合には、加速度センサ21及びジャイロセンサ22から慣性算出部4への入力を停止させる。加速度センサ21及びジャイロセンサ22は、移動体200が停止している場合であっても、ドリフトに基づくノイズを出力する。これが蓄積されることにより、ドリフト誤差が発生する。そこで、停止判定部34は、移動体200が停止していると判定した場合に、加速度センサ21及びジャイロセンサ22から慣性算出部4に入力される信号を強制的にゼロにする。これにより、ドリフト誤差を低減することができる。
なお、停止判定部34は、測位装置100に設けられていなくてもよい。移動体200が停止している際に蓄積されるドリフト誤差を含めて、後述するカルマンフィルタ5により誤差量を推定することができるためである。
【0025】
基礎行列算出部35は、特徴点対応付け部32及び誤対応除去部33によって対応するとされた、時刻tにおける画像内の特徴点の特徴量と時刻t+Δtにおける画像内の特徴点の特徴量とに基づいて、最急勾配法により、並進ベクトルhimg(画像並進量)と回転行列Rimg(画像回転量)を算出する。なお、最急勾配法以外の繰り返し演算により並進ベクトルhimgと回転行列Rimgとが算出されても良い。例えば、繰り返し演算としては、ニュートン法、Levenberg−Marquardt法等を用いることができる。
一般に、画像から基礎行列(並進ベクトルhimg及び回転行列Rimg)を算出する場合、時間の異なる画像間の幾何学的関係から基礎行列を求める。図3に、時間の異なる画像間の幾何学的関係を示す。図3において、点P1は、時刻tにおける撮像部1のレンズ中心を表し、点P2は、時刻t+Δtにおける撮像部1のレンズ中心を表し、点P3は、空間における注視点(特徴点)を表す。そして、点P1、P2、P3により形成される平面をエピポーラ平面と呼ぶ。また、図3において、平面G1は、時刻tにおける画像平面を表し、平面G2は、時刻t+Δtにおける画像平面を表す。また、画像平面G1とエピポーラ平面との交線L1と、画像平面G2とエピポーラ平面との交線L2と、をエピポーラ線と呼ぶ。また、図3において、点線L3は、画像平面G1と他のエピポーラ平面との交線(エピポーラ線)であり、点線L4は、画像平面G2と他のエピポーラ平面との交線(エピポーラ線)である。そして、図3において、点P1から点P2に向かうベクトルが並進ベクトルhimgである。また、図3において、点P1から点P3に向かうベクトルと点P2から点P3に向かうベクトルとの間の回転から回転行列Rimgが表される。従って、図3に示す幾何学的関係から、並進ベクトルhimg及び回転行列Rimgを求めることができる。
【0026】
図3に示す幾何学的関係を用いて、画像から並進ベクトルhimg及び回転行列Rimgを算出する場合、最小二乗法を用いる解析により並進ベクトルhimg及び回転行列Rimgを算出する方法(固有値の導出)と、最急勾配法により並進ベクトルhimg及び回転行列Rimgを算出する方法とがある。
最小二乗法を用いる解析により算出する場合、撮像部1から入力される画像によって計算誤差が生じてしまう可能性がある。
一方、最急勾配法等の繰り返し演算により算出する場合、安定して精度の良い解が得られるが、計算時間が長くなってしまうという問題がある。
本実施形態では、基礎行列算出部35は、初期値として、後述する慣性算出部4によって算出された並進ベクトルhins(慣性並進量)及び回転行列Rins(慣性回転量)を利用して、最急勾配法等の繰り返し演算により、並進ベクトルhimg及び回転行列Rimgを算出する。これにより、計算時間を短縮することができる。なお、基礎行列算出部35には、停止判定部34を介して、誤対応除去部33から、慣性算出部4によって算出された並進ベクトルhins及び回転行列Rinsが入力される。
【0027】
慣性算出部4には、加速度センサ21から移動体200の加速度が入力され、ジャイロセンサ22から移動体200の角速度が入力される。そして、慣性算出部4は、加速度センサ21から入力される加速度及びジャイロセンサ22から入力される角速度に基づいて、移動体200の並進ベクトルhins(慣性並進量)と回転行列Rins(慣性回転量)とを算出する。
具体的には、慣性算出部4は、第1の演算器41、第2の演算器42、第3の演算器43、第4の演算器44等を備えている。
【0028】
第1の演算器41には、ジャイロセンサ22から角速度が入力される。そして、第1の演算器41は、当該角速度を時間で積分することにより角度を算出し、当該角度を出力する。また、第1の演算器41により算出された角度は、回転行列Rinsとして、外部又はカルマンフィルタ5へ入力される。
【0029】
第2の演算器42には、加速度センサ21から加速度が入力される。また、第2の演算器42には、第1の演算器から出力された角度に前回の姿勢(角度)が加算されて得られる角度が入力される。そして、第2の演算器42は、入力された当該角度(姿勢)に基づいて、加速度センサ21から入力された加速度の姿勢を変換し、姿勢変換した加速度を出力する。
【0030】
第3の演算器43には、第2の演算器42から姿勢変換された加速度が入力される。そして、第3の演算器43は、当該加速度を時間で積分することにより速度を算出し、当該速度を出力する。
【0031】
第4の演算器44には、第3の演算器43から出力された速度に前回の速度が加算して得られる速度が入力される。そして、第4の演算器44は、入力された当該速度を時間で積分することにより距離を算出する。また、第4の演算器44に算出された当該距離は、並進ベクトルhinsとして、外部又はカルマンフィルタ5へ入力される。
【0032】
カルマンフィルタ5は、並進ベクトルhimgと回転行列Rimgとに基づいて、並進ベクトルhinsと回転行列Rinsとに含まれる誤差量を推定する。具体的には、カルマンフィルタ5には、並進ベクトルhimgから並進ベクトルhinsが減算された値と、回転行列Rimgから回転行列Rinsが減算された値と、が入力される。そして、カルマンフィルタ5は、並進ベクトルhimgと並進ベクトルhinsとが等しく、且つ、回転行列Rimgと回転行列Rinsとが等しいという拘束条件によって作成された観測方程式に基づいて、並進ベクトルhinsと回転行列Rinsとに含まれる誤差量を推定する。
【0033】
以下、カルマンフィルタ5に適用される観測方程式の作成について説明する。ここで、移動体200の前後方向をx軸方向、左右方向をy軸方向、鉛直方向をz軸方向とする。さらに、x軸周りの回動方向をロール(roll)方向、y軸周りの回動方向をピッチ(pitch)方向、z軸周りの回動方向をヨー(yaw)方向とする。このとき、加速度センサ21から出力される値は(1)式で表され、ジャイロセンサ22から出力される値は、(2)式で表される。
【数1】


【数2】


(1)式において、gは加速度センサ21の出力値であり、δgはgに含まれる誤差量であり、上バーつきのgはgの真値である。また、(2)式において、ωはジャイロセンサ22の出力値であり、δωはωに含まれる誤差量であり、上バーつきのωはωの真値である。従って、(1)式は、加速度センサ21の出力値を「真値+誤差量」で表している。同様に、(2)式は、ジャイロセンサ22の出力値を「真値+誤差量」で表している。
【0034】
一般に、誤差量に含まれる高周波成分は、LPF(Low Pass Filter)により除去することができる。しかし、温度などの環境に依存した時間変化に対して比較的緩やかな誤差(低周波成分)はLPFでは除去することができない。本実施形態では、カルマンフィルタ5によって当該低周波成分を推定する。
【0035】
また、ジャイロセンサ22の出力値における回転座標変換は、(3)式〜(7)式に従う。
【数3】


【数4】


【数5】


【数6】


【数7】


(3)式において、x、y、zは、時刻t+Δtにおける座標を表し、x'、y'、z'は、時刻tにおける座標を表す。
【0036】
また、加速度センサ21の出力値における回転座標変換は、(8)式に従う。
【数8】


(8)式において、vbodyは、移動体200に設定された座標系であり、撮像部1の座標系と同じとしてもよい。このようにした場合、実際にはvbodyにオフセットは含まれることになるが、問題はない。なお、移動体200が車両である場合、vbodyは、車軸に設定された座標系であり、カメラ座標系(撮像部1の座標系)と同じとしてよい。また、(8)式において、gは加速度センサ21の出力値である。
【0037】
そして、並進ベクトルhimgと並進ベクトルhinsとが等しく、且つ、回転行列Rimgと回転行列Rinsとが等しいとすると、観測方程式は(9)式で表される。
【数9】


(9)式において、Xは状態量であり、求めたい誤差量に相当する。また、Sは観測量(12次元)であり、画像から求めた回転行列Rimg及び並進ベクトルhimgが代入される。また、並進ベクトルhimgは、方向情報のみであり、スケール情報を含まないため、(9)式では、並進ベクトルhimgの上限値として、並進ベクトルhinsのノルムを利用した。なお、並進ベクトルhimg及び並進ベクトルhinsは、3×3の行列であり、並進ベクトルhimg及び並進ベクトルhinsは、3×1の行列である。そのため、(9)式は、全てで12個のパラメータを含んでいる。そして、(9)式における各要素とは、これらの行列の要素のことである。すなわち、(9)式における各要素とは、当該各パラメータを意味する。
【0038】
次に、本実施形態に係る測位装置100における移動体200の位置(並進ベクトルhins)及び姿勢(回転行列Rins)を推定する測位方法について、図4を参照しながら説明する。
まず、測位装置100において、慣性算出部4が、ジャイロセンサ22の出力値に基づいて回転行列Rinsを算出し、加速度センサ21の出力値に基づいて並進ベクトルhinsを算出する。また、画像処理部3が、撮像部1から入力される画像データに基づいて、回転行列Rimg及び並進ベクトルhimgを算出する(ステップS1)。
【0039】
次に、測位装置100において、カルマンフィルタ5が、回転行列Rins及び並進ベクトルhinsに含まれる誤差量を推定する(ステップS2)。
【0040】
次に、測位装置100は、ステップS2で推定した誤差量に基づいて、回転行列Rins及び並進ベクトルhinsを補正する(ステップS3)。具体的には、カルマンフィルタ5から出力された回転行列Rinsの誤差量がジャイロセンサ22の出力値に加算されて、慣性算出部4の第1の演算器41に入力されることにより、回転行列Rinsが補正される。同様に、カルマンフィルタ5から出力された並進ベクトルhinsの誤差量が加速度センサ21の出力値に加算されて、慣性算出部4の第2の演算器42に入力されることにより、並進ベクトルhinsが補正される。
【0041】
次に、慣性算出部4が補正後の回転行列Rins及び補正後の並進ベクトルhinsを外部に出力する(ステップS4)。すなわち、測位装置100は、補正後の回転行列Rinsを姿勢変位として、補正後の並進ベクトルhinsを位置変位として出力する。
【0042】
次に、本実施形態に係る測位装置100における基礎行列(回転行列Rimg、並進ベクトルhimg)の算出方法について、図5を参照しながら説明する。
まず、撮像部1から画像処理部3の特徴点検出部31に画像データが入力される(ステップS101)。
【0043】
次に、特徴点検出部31は、撮像部1によって撮像された画像から特徴点を検出する(ステップS102)。そして、特徴点検出部31は、当該特徴点の特徴量を特徴点対応付け部32に入力する。
【0044】
次に、特徴点対応付け部32は、時刻tにおける画像内の特徴点と、時刻t+Δtにおける画像内の特徴点との対応付けを行う(ステップS103)。そして、特徴点対応付け部32は、特徴点の対応付けに関する情報と各特徴点の特徴量とを、誤対応除去部33に入力する。
【0045】
次に、慣性算出部4が、回転行列Rins及び並進ベクトルhinsを算出する(ステップS104)。そして、慣性算出部4は、当該回転行列Rins及び並進ベクトルhinsを誤対応除去部33に入力する。
【0046】
次に、誤対応除去部33は、ステップS103において対応付けられた時刻tにおける画像内の特徴点と時刻t+Δtにおける画像内の特徴点とのうち、誤って対応付けられた特徴点を除去する(ステップS105)。そして、誤対応除去部33は、特徴点(対応点)の特徴量と、慣性算出部4によって算出された並進ベクトルhins及び回転行列Rinsと、を停止判定部34に入力する。
【0047】
次に、停止判定部34は、移動体200が停止しているか否かを判定する(ステップS106)。
ステップS106において、停止判定部34は、移動体200が停止していると判定した場合(ステップS106;Yes)、加速度センサ21及びジャイロセンサ22から慣性算出部4への検出信号の入力を停止させ、ステップS101に戻る。
ステップS106において、停止判定部34は、移動体200が停止していないと判定した場合(ステップS106;No)、特徴点(対応点)の特徴量と、慣性算出部4によって算出された並進ベクトルhins及び回転行列Rinsと、を基礎行列算出部35に入力する。
【0048】
次に、基礎行列算出部35は、特徴点対応付け部32及び誤対応除去部33によって対応するとされた、時刻tにおける画像内の特徴点の特徴量と時刻t+Δtにおける画像内の特徴点の特徴量とに基づいて、最急勾配法を含む繰り返し演算により、並進ベクトルhimgと回転行列Rimgを算出する(ステップS107)。
【0049】
以上に説明した本実施形態に係る測位装置100及び測位方法によれば、カルマンフィルタ5が、並進ベクトルhimgと回転行列Rimgとに基づいて、並進ベクトルhinsと回転行列Rinsとに含まれる誤差量を推定する。通常、画像から移動体200の移動量を推定すると、オクルージョンや画像内に存在する移動障害物等の影響により誤差が発生する場合がある。しかし、時刻tにおける画像と、時刻tからΔt(1エポック(1時刻))経過した時刻t+Δtにおける画像と、を比較することによって移動体200の移動量を算出する場合、比較的精度良く移動体200の移動量を算出することができる。具体的には、オクルージョンが毎回(Δt毎に)発生するわけではないので、時刻tにおける画像と時刻t+Δtにおける画像との対応が取れれば、精度良く移動体の移動量を算出することができる。換言すれば、画像処理部3によって移動体200の移動量(並進ベクトルhimgと回転行列Rimg)を算出する方法の短時間における検出精度は、比較的優れている。一方、慣性センサ2によって、移動体200の移動量(並進ベクトルhinsと回転行列Rins)を検出すると、温度などの影響によりドリフト誤差が発生する。そのため、慣性センサ2の検出精度は、時間が経過すると劣化してしまう。換言すれば、慣性センサ2によって移動体200の移動量を検出する方法の長時間における検出精度は、比較的劣っている。本実施形態に係る測位装置100及び測位方法においては、短時間における検出精度に比較的優れている画像処理部3によって算出される移動体200の移動量によって、長時間における検出精度に比較的劣っている慣性センサ2によって検出される移動量を補正する。これにより、測位装置100は、移動体200の移動量である並進ベクトルhins及び回転行列Rinsを長時間にわたって精度良く推定することができる。換言すれば、測位装置100は、移動体200の位置及び姿勢を継続的に且つより精度良く推定することができる。なお、オクルージョンが発生している場合には、直近にカルマンフィルタ5により推定された誤差を用いて慣性センサ(加速度センサ21及びジャイロセンサ22)の検出値を補正する。オクルージョンが発生する頻度は比較的少ないため、直近にカルマンフィルタ5により推定した誤差によって慣性センサの検出値を補正する場合があっても、精度良く移動体200の位置及び姿勢を推定することができる。
【0050】
また、誤対応除去部33は、慣性算出部4によって算出された並進ベクトルhins及び回転行列Rinsに基づいて、時刻t+Δtにおける画像内の特徴点を時刻tにおける画像内に戻した場合に、時刻t+Δtにおける画像内の特徴点が、時刻t+Δtにおける画像内の特徴点に対応する時刻tにおける画像内の特徴点を中心としたNピクセル四方(Nは、正の整数)の範囲内にある場合に、時刻tにおける画像内の特徴点と、時刻t+Δtにおける画像内の特徴点と、を互いに対応する対応点とする。
これにより、特徴点の対応付けの精度を向上することができる。
【0051】
また、基礎行列算出部35は、慣性算出部4によって算出された並進ベクトルhins及び回転行列Rinsを初期値として用いて、対応点から最急勾配法により、並進ベクトルhimgと回転行列Rimgを算出する。
これにより、並進ベクトルhimgと回転行列Rimgを安定して精度の良く算出することができるとともに、計算時間を短縮することができる。
【0052】
また、並進ベクトルhimgと並進ベクトルhinsとが等しく、且つ、回転行列Rimgと回転行列Rinsとが等しいという拘束条件によって作成された観測方程式を適用したカルマンフィルタ5によって、並進ベクトルhinsと回転行列Rinsとに含まれる誤差量を推定する。
これにより、時間Δtが経過するたびに、推定された誤差量によって、並進ベクトルhinsと回転行列Rinsとが補正されるため、ドリフト誤差が蓄積するのを防止することができる。
【0053】
[実施例1]
次に、本実施形態に係る測位装置100を適用した実施例について説明する。実施例1では、移動体200として車両を用いた。そして、当該車両に、慣性センサ2としてジャイロ・加速度センサ(SMG074/225)を搭載した。また、評価用に、当該車両に、光ファイバジャイロ(FOG)・サーボ加速度計(JM3403/JA−5VC4)を搭載した。また、当該車両に、撮像部1としてカメラを搭載した。そして、当該車両を1500mm/s以下の移動速度で走行させ、計測を行った。
【0054】
また、比較例でも、実施例1と同様の車両を用いて計測を行う。しかし、比較例では、カメラによって撮像される画像から算出される並進ベクトルhimg及び回転行列Rimgを用いて並進ベクトルhinsと回転行列Rinsとを補正しない。すなわち、比較例において計測される値は、慣性センサ2としてのジャイロ・加速度センサ(SMG074/225)そのものの値である。
【0055】
ヨー方向の姿勢の計測結果を図6に示し、ロール方向の姿勢の計測結果を図7に示し、ピッチ方向の姿勢の計測結果を図8に示す。図6〜図8において、縦軸に姿勢(°)を示し、横軸にフレーム数を示す。また、図6〜図8において、実線は評価用の光ファイバジャイロ(FOG)・サーボ加速度計(JM3403/JA−5VC4)の計測値を示し、三角印は比較例としてのジャイロ・加速度センサ(SMG074/225)の計測値を示し、大きい丸印は実施例1の計測値を示し、小さい丸印はカメラによって撮像された画像から算出した値を示す。
図6〜図8に示すように、比較例に比べて、実施例1の計測値は、評価用の計測値に近い値となった。従って、本実施形態に係る測位装置100を適用することにより、車両の位置及び姿勢を継続的に且つより精度良く推定することができるといえる。
【0056】
尚、本発明は上述した各実施の形態に限定されず、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【0057】
1 撮像部
2 慣性センサ(慣性検出部)
21 加速度センサ(慣性検出部)
22 ジャイロセンサ(慣性検出部)
3 画像処理部(画像処理手段)
4 慣性算出部(慣性算出手段)
5 カルマンフィルタ(誤差量推定手段)
100 測位装置
200 移動体

【特許請求の範囲】
【請求項1】
周辺領域の画像を経時的に撮像する撮像部と、移動体の移動量を検出する慣性検出部と、を備える前記移動体の位置及び姿勢を推定する測位装置であって、
前記撮像部によって撮像された時刻tにおける画像と時刻t+Δtにおける画像とを比較することにより、前記移動体の画像並進量と画像回転量とを算出する画像処理手段と、
前記慣性検出部によって検出された移動量に基づいて、前記移動体の慣性並進量と慣性回転量とを算出する慣性算出手段と、
前記画像並進量と前記画像回転量とに基づいて、前記慣性並進量と前記慣性回転量とに含まれる誤差量を推定する誤差量推定手段と、
を備え、
前記誤差量に基づいて、前記慣性検出部によって検出された移動量を補正する測位装置。
【請求項2】
前記画像処理手段は、
前記時刻tにおける画像内の特徴点と、前記時刻t+Δtにおける画像内の特徴点と、を算出し、
前記時刻tにおける画像内の特徴点と、前記時刻t+Δtにおける画像内の特徴点との対応付けを行って、前記慣性算出手段によって算出された前記慣性並進量及び前記慣性回転量に基づいて、前記時刻t+Δtにおける画像内の特徴点を前記時刻tにおける画像内に戻した場合に、前記時刻t+Δtにおける画像内の特徴点が、前記時刻t+Δtにおける画像内の特徴点に対応する前記時刻tにおける画像内の特徴点を中心としたNピクセル四方(Nは、正の整数)の範囲内にある場合に、前記時刻tにおける画像内の特徴点と、前記時刻t+Δtにおける画像内の特徴点と、を互いに対応する対応点とする請求項1に記載の測位装置。
【請求項3】
前記画像処理手段は、
前記慣性算出手段によって算出された前記慣性並進量及び前記慣性回転量を初期値として用いて、前記対応点から最急勾配法を含む繰り返し演算により、前記画像並進量と前記画像回転量を算出する請求項2に記載の測位装置。
【請求項4】
前記誤差量推定手段は、
前記画像並進量と前記慣性並進量とが等しく、且つ、前記画像回転量と前記慣性回転量とが等しいという拘束条件によって作成された観測方程式を適用したカルマンフィルタによって、前記慣性並進量と前記慣性回転量とに含まれる誤差量を推定する請求項1乃至3の何れか一項に記載の測位装置。
【請求項5】
周辺領域の画像を経時的に撮像する撮像部と、移動体の移動量を検出する慣性検出部と、を備える前記移動体の位置及び姿勢を推定する測位装置における測位方法であって、
前記測位装置は、
前記撮像部によって撮像された時刻tにおける画像と時刻t+Δtにおける画像とを比較することにより、前記移動体の画像並進量と画像回転量とを算出する画像処理と、
前記慣性検出部によって検出された移動量に基づいて、前記移動体の慣性並進量と慣性回転量とを算出する慣性算出処理と、
前記画像並進量と前記画像回転量とに基づいて、前記慣性並進量と前記慣性回転量とに含まれる誤差量を推定する誤差量推定処理と、
前記誤差量に基づいて、前記慣性検出部によって検出された移動量を補正する補正処理と、
を実行する測位方法。
【請求項6】
前記画像処理において、前記測位装置は、
前記時刻tにおける画像内の特徴点と、前記時刻t+Δtにおける画像内の特徴点と、を算出し、
前記時刻tにおける画像内の特徴点と、前記時刻t+Δtにおける画像内の特徴点との対応付けを行って、前記慣性算出処理において算出した前記慣性並進量及び前記慣性回転量に基づいて、前記時刻t+Δtにおける画像内の特徴点を前記時刻tにおける画像内に戻した場合に、前記時刻t+Δtにおける画像内の特徴点が、前記時刻t+Δtにおける画像内の特徴点に対応する前記時刻tにおける画像内の特徴点を中心としたNピクセル四方(Nは、正の整数)の範囲内にある場合に、前記時刻tにおける画像内の特徴点と、前記時刻t+Δtにおける画像内の特徴点と、を互いに対応する対応点とする請求項5に記載の測位方法。
【請求項7】
前記画像処理において、前記測位装置は、
前記慣性算出処理において算出した前記慣性並進量及び前記慣性回転量を初期値として用いて、前記対応点から最急勾配法を含む繰り返し演算により、前記画像並進量と前記画像回転量を算出する請求項6に記載の測位方法。
【請求項8】
前記誤差量推定処理において、前記測位装置は、
前記画像並進量と前記慣性並進量とが等しく、且つ、前記画像回転量と前記慣性回転量とが等しいという拘束条件によって作成された観測方程式を適用したカルマンフィルタによって、前記慣性並進量と前記慣性回転量とに含まれる誤差量を推定する請求項5乃至7の何れか一項に記載の測位方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2011−141221(P2011−141221A)
【公開日】平成23年7月21日(2011.7.21)
【国際特許分類】
【出願番号】特願2010−2643(P2010−2643)
【出願日】平成22年1月8日(2010.1.8)
【出願人】(000003207)トヨタ自動車株式会社 (59,920)
【Fターム(参考)】