Some content of this application is unavailable at the moment.
If this situation persist, please contact us atFeedback&Contact
1. (WO2018159398) DEVICE AND METHOD FOR ESTIMATING LOCATION OF MOVING BODY
Document

明 細 書

発明の名称 移動体の位置推定装置及び方法

技術分野

0001  

背景技術

0002   0003   0004   0005   0006  

先行技術文献

特許文献

0007  

発明の概要

発明が解決しようとする課題

0008  

課題を解決するための手段

0009  

図面の簡単な説明

0010  

発明を実施するための形態

0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102  

符号の説明

0103  

請求の範囲

1   2   3   4   5   6   7   8  

図面

1   2   3   4   5   6   7   8  

明 細 書

発明の名称 : 移動体の位置推定装置及び方法

技術分野

[0001]
 本発明は、ロボットや自動車などの移動体の位置を推定する技術に関する。

背景技術

[0002]
 ロボット及び自動車などの移動体がその周囲の情報を収集し、移動体の現在位置及び走行状態を推定し、移動体の走行を制御する自律走行技術及び運転支援技術が開発されている。移動体の周囲の情報検出のためには様々なセンサが用いられる。一般に、周囲の情報を計測するためのセンサとしては、カメラなどの撮像装置、レーザセンサ、ミリ波レーダなどがある。移動体の位置を測定するためのセンサとしては、GPS(Global Positioning System)またはIMU(Inertial Measurement Unit)が用いられる。
[0003]
 自律走行制御においては、移動体に搭載された制御装置が、例えばIMUで算出した移動体の速度または角速度を積算したり、GPS測位を用いたりして、移動体自身の位置(自己位置)を推定する。さらに、制御装置は、レーザセンサあるいはカメラなどで周囲の情報を収集し、位置推定の際の基準となる路面ペイントまたは標識のようなランドマーク等を検出する。そして、制御装置が、検出されたランドマークの位置を地図情報と比較することにより、移動体の現在位置を修正する。
[0004]
 また、駐車場やトンネルのような環境では、地図情報とランドマークがなく、GPSも使えない場合があるため、移動体の周囲に存在する物体との相対位置を推定するオドメトリ法が用いられる。
[0005]
 例えば、特許文献1は、第1の自車位置推定部により自車の周囲環境の画像に基づき地上固定座標系上での自車の位置と姿勢の推定値及び推定精度を推定する。第2の自車位置推定部により自車の操作量及び運動状態に基づき推定される自車位置の変化量を積算することで基準点及び方位と自車位置との相対的な位置関係を推定し、目標走行経路上で第1の自車位置推定部による位置推定の難度が高い区間を推定する。難度が高いと推定された区間の手前側領域内で周囲環境撮影部の撮影範囲に入る可能性が高いランドマークを地図情報から検出する。検出されたランドマークに基づき位置推定難度の高い区間を走行中、自車位置推定切替部により第1の自車位置推定部から第2の自車位置推定部に切り替える。位置推定難度の高い区間を走行中、自車位置推定切替部の結果に基づく第2の自車位置推定部の出力に基づき自車の走行制御を実行し、位置推定難度の高い区間以外の区間では自車位置推定切替部の結果に基づく第1の自車位置推定部の出力に基づき自車の走行制御を実行する。
[0006]
 位置推定難度の高い区間を走行中、第1の自車位置推定部から第2の自車位置推定部に切り替え、位置推定難度の高い区間を走行中、自車位置推定切替部の結果に基づく第2の自車位置推定部の出力に基づき自車の走行制御を実行する。位置推定難度の高い区間以外の区間では自車位置推定切替部の結果に基づく第1の自車位置推定部の出力に基づき自車の走行制御を実行する。

先行技術文献

特許文献

[0007]
特許文献1 : 特開2014-34251

発明の概要

発明が解決しようとする課題

[0008]
 ところで、移動体は移動及び停止を繰り返すので、移動体が観察する周囲の状況はめまぐるしく変化する。移動体の自律走行技術または運転支援技術において、どのような状況であっても精度良く現在位置を推定することが重要である。

課題を解決するための手段

[0009]
 本発明の一つの実施態様によれば、移動体の位置推定装置は、前記移動体に取り付けられた撮像装置と、前記撮像装置で撮像された画像に基づいて前記移動体の複数の位置候補を特定し、前記複数の位置候補と前記移動体の移動速度とに基づいて前記移動体の位置を推定する画像処理部と、を有する。

図面の簡単な説明

[0010]
[図1] 本発明の実施形態に係る移動体の位置推定装置の構成図
[図2] 画像処理部14が行う画像処理手順を示すフローチャート
[図3] 撮像装置12の撮像範囲から定まる移動体100の最大移動速度の説明図
[図4] 撮影されたビデオ画像の中の一つのフレーム画像の一例
[図5] 速度による重み付けの具体例
[図6] 障害物による重み付けの実施例
[図7] 制御部15の制御により移動体100の速度が変化する例
[図8] 撮像装置12が一台の場合の例

発明を実施するための形態

[0011]
 以下、本発明の実施形態に係る移動体の位置推定装置について、図面を用いて説明する。
[0012]
 図1は、本発明の一実施形態に係る位置推定装置1の構成図である。
[0013]
 位置推定装置1は、自動車またはロボットなどの移動体100に搭載されている。位置推定装置1は、一台以上の撮像装置12(12a、12b、・・・12n)と、情報処理装置13とを有する。
[0014]
 撮像装置12は、例えばスチルカメラまたはビデオカメラでよい。撮像装置12は単願カメラまたはステレオカメラでもよい。
[0015]
 情報処理装置13は、撮像装置12で撮像された画像を処理して移動体100の位置または移動量を算出する。情報処理装置13は、算出された位置または移動量に応じた表示を行ってもよく、または移動体100の制御に関する信号を出力してもよい。
[0016]
 情報処理装置13は、例えば一般的なコンピュータであって、撮像装置12によって撮像された画像を処理する画像処理部14と、画像処理結果に基づく処理を行う制御部(CPU)15と、メモリ16と、ディスプレイなどの表示部17と、これら構成要素を相互に接続するバス18とを有する。情報処理装置13は、画像処理部14及び制御部15が所定のコンピュータプログラムを実行することにより、以下の処理を行ってもよい。
[0017]
 撮像装置12aは、例えば、移動体100の前方に設置されている。撮像装置12aのレンズは移動体100の前方に向けられている。撮像装置12aは、例えば、移動体100の前方の遠景を撮像する。他の撮像装置12b、・・・撮像装置12nは、撮像装置12aと異なる位置に設置され、撮像装置12aと異なる撮像方向または領域を撮像する。
撮像装置12bは、例えば、移動体100の後方で下方に向けて設置されていてもよい。
撮像装置12bは、移動体100後方の近景を撮像するものでよい。
[0018]
 撮像装置12が単眼カメラの場合、路面が平らであれば、画像上のピクセル位置と実際の位置関係(x、y)が一定になるため、撮像装置12から特徴点までの距離を幾何学的に計算できる。撮像装置12がステレオカメラの場合、画像上の特徴点までの距離をより正確に計測できる。以下の説明では、単願の標準レンズを有するカメラを採用した事例について説明するが、これ以外のカメラ(広角レンズを有するカメラまたはステレオカメラなど)でもよい。
[0019]
 また、撮像装置12a、撮像装置12b・・・撮像装置12nが、ある時刻で撮像する対象物は、それぞれ互いに異なるものでよい。例えば、撮像装置12aは、移動体100の前方の遠景を撮像するものでよい。この場合、遠景を撮像した画像からは、障害物、または位置推定のためのランドマークなどの特徴点が抽出されるようにしてもよい。撮像装置12bは、移動体100周辺の路面などの近景を撮像するようにしてもよい。この場合、近景を撮像した画像からは、移動体100の周囲の白線、または路面ペイントなどが検出されるようにしてもよい。
[0020]
 また、撮像装置12a、撮像装置12b、・・・撮像装置12nは、同時に雨や日差しなどの環境外乱の影響を受けないような条件で移動体100に設置されてもよい。例えば、撮像装置12aは移動体100の前方で前向きに設置されるのに対して、撮像装置12bは移動体100の後方で後ろ向きまたは下向きに設置されてもよい。これにより、例えば、降雨時に撮像装置12aのレンズに雨滴が付着した場合でも、進行方向の逆向きまたは下向きの撮像装置12bのレンズには雨滴が付着しにくい。このため、撮像装置12aが撮像した画像が雨滴の影響で不鮮明であっても、撮像装置12bが撮像した画像は雨滴の影響を受けにくい。あるいは、日差しの影響で撮像装置12aの画像が不鮮明であっても、撮像装置12bが撮像した画像は鮮明である場合がある。
[0021]
 また、撮像装置12a、撮像装置12b、・・・撮像装置12nは、互いに異なる撮像条件(絞り値、ホワイトバランス、等)で撮影してもよい。例えば、明るい場所用にパラメータを調整した撮像装置と、暗い場所用にパラメータを調整した撮像装置とを搭載することで、環境の明暗によらず撮像可能としてもよい。
[0022]
 撮像装置12a、撮像装置12b、・・・撮像装置12nは、制御部15から撮影開始の指令を受けたとき、または一定の時間間隔で画像を撮像してもよい。撮像された画像のデータ及び撮像時刻は、メモリ16に格納される。
[0023]
 メモリ16は、情報処理装置13の主記憶装置(メインメモリ)およびストレージなどの補助記憶装置を含む。
[0024]
 画像処理部14がメモリ16に格納された画像データ及び撮像時刻に基づいて、様々な画像処理を行う。この画像処理では、例えば、中間画像が作成されてメモリ16に保存される。中間画像は、画像処理部14による処理の他、制御部15などの判断や処理に利用されてもよい。
[0025]
 バス18は、IEBUS(Inter Equipment Bus)やLIN(Local Interconnect Network)やCAN(Controller Area Network)などで構成できる。
[0026]
 画像処理部14は、撮像装置12で撮像された画像に基づいて複数の移動体の位置候補を特定し、その複数の位置候補と移動体100の移動速度とに基づいて移動体100の位置を推定する。
[0027]
 画像処理部14は、例えば、移動体100の走行中に撮像装置12が撮像した画像を処理して、移動体100の位置を推定する。例えば、画像処理部14は、撮像装置12が撮像したビデオ画像で移動体100の移動量を算出し、スタート地点に移動量を加算して現在位置を推定してもよい。
[0028]
 画像処理部14は、ビデオ画像の各フレーム画像で特徴点を抽出してもよい。画像処理部14は、さらに、次以降のフレーム画像で同じ特徴点を抽出する。そして、画像処理部14は、特徴点のトラッキングにより移動体100の移動量を算出してもよい。
[0029]
 制御部15は、画像処理部14の画像処理の結果に基づいて、移動体100に対して移動速度に関する指令を出力してもよい。例えば、制御部15は、画像内の障害物の画素数、画像内の特徴点のうちの外れ値の数または画像処理の種類等に応じて、移動体100の移動速度を増加させる指令、減少させる指令または維持させる指令を出力してもよい。
[0030]
 図2は、画像処理部14が行う画像処理手順を示すフローチャートある。
[0031]
 画像処理部14は、複数の移動体位置候補算出処理21(21a、21b、・・・21n)と、複数の移動体位置候補から移動体位置を推定する推定処理26とを行う。
[0032]
 複数の移動体位置候補算出処理21(21a、21b、・・・21n)は、互いに並列に実行されてもよい。例えば、移動体位置候補算出処理21aでは、撮像装置12aによって撮像された画像が処理されてもよい。同様に、移動体位置候補算出処理21b、・・・21nでは、撮像装置12b、・・・撮像装置12nによって撮像された画像が処理されてもよい。これにより、画像処理部14は、各撮像装置12が撮像した画像からそれぞれの移動体100の位置候補を特定してもよい。
[0033]
 また、撮像装置12aが撮像した画像が前方の遠景であるときは、移動体位置候補算出処理21aでは移動体100の推進方向を推定しやすい遠方特徴点を用いて推進方向が推定されてもよい。撮像装置12bが撮像した画像が後方の近景であるときは、移動体位置候補算出処理21bでは移動体100の移動量を推定しやすい近傍特徴点を用いて移動量が推定されてもよい。
[0034]
 図示するように、複数の移動体位置候補算出処理21(21a、21b、・・・21n)は共通のステップを実行する。以下、各ステップについて説明する。
[0035]
 画像処理部14は、メモリ16から画像データを取得する(S22a、S22b、・・・S22n)。ここで取得する画像データは複数のフレーム画像のデータでよい。
[0036]
 次に、画像処理部14は、取得した各フレーム画像内の特徴点を抽出する(S23a、S23b、・・・S23n)。特徴点は、例えば、画像内のエッジやコーナーなどでよい。特徴点の抽出には、Canny、S obel、FAST、Hessian、Gaussianなどの技術を用いてもよい。具体的なアルゴリズムは、画像の特徴に応じて適宜選択される。
[0037]
 画像処理部14は、フレーム画像の時系列に従って、各フレーム画像でそれぞれ抽出された特徴点をトラッキングする(S24a、S24b、・・・S24n)。トラッキングにはLucas-Kanade法やShi-Tomasi法やDirect Matching法などの技術を用いてもよい。具体的なアルゴリズムは、画像の特徴に応じて適宜選択される。
[0038]
 画像処理部14は、特徴点トラッキングの結果に基づいて、移動体100の移動量を算出して、移動体100の現在位置の候補を算出する(S25a)。移動量の算出には、例えばRigid Body Transformation、Sliding Window、基礎行列、中央値などを利用することができる。また、中央値フィルタ、RANSAC、バンドル調整、キーフレーム調整等の外れ値検出と最適化処理をしてもよい。
[0039]
 複数の移動体位置候補算出処理21a、21b、・・・21nでそれぞれ異なるビデオ画像を対象とした処理が行われることで、複数の位置候補が算出される。
[0040]
 ステップS26の位置推定処理は、それぞれの移動体位置候補算出処理21a、21b、・・・21nによって算出された位置候補を統合して、移動体100の現在位置を推定する。位置推定処理の詳細は後述する。
[0041]
 図3を用いて撮像装置12の撮像範囲から定まる移動体100の最大移動速度について説明する。
[0042]
 同図は、移動体100に取り付けられた撮像装置12を模式的に示す側面図である。つまり、撮像装置12は路面30から高さHの位置に、光軸が路面30に対して角度αとなるように設置されている。さらに、撮像装置12の画角がγ、撮像装置12から路面までの最大撮像距離がD、最大撮像範囲がRである。
[0043]
 ここで、ビデオ画像で特徴点のトラッキングを行うためには、少なくとも時間的に隣り合う2枚のフレーム画像に共通の特徴点が写っている必要がある。従って、フレーム間の時間間隔Δtでの移動体100の移動距離がR以下であることが必要である。
[0044]
 また、撮像装置12が撮像するビデオ画像のフレームレートをFPSとすると、フレーム間の時間間隔Δtは式(1)で表される。
Δt=2/FPS (1)
[0045]
 従って、移動体100の移動中に撮像されたビデオ画像で特徴点トラッキングを可能とするためには、移動体100の移動速度に上限がある。その上限である最大移動速度Vmaxは以下の式(2)で定まる。
Vmax = R/Δt = [Dcos(α)-H/tan(α+γ)]FPS/2 
(2)
[0046]
 次に、特徴点トラッキングの精度を低下させる要因について説明する。
[0047]
 移動体100が最大移動速度Vmax以下で走行している場合であっても、移動体100の移動速度が増すほどトラッキングの精度が低下し、誤差が生じやすくなる。そこで、画像処理部14が複数の移動体位置候補算出処理21a、21b、・・・21nで算出された位置候補を用いて現在位置を推定する際には、ステップS26において移動体100の移動速度に応じた位置推定を行っても良い。例えば、画像処理部14は、速度による重み係数W を用いて、位置推定を行う。速度による重み係数W は、例えば、以下の式(3)で定まる。
 = 1-V/Vmax(3)
[0048]
 また、撮影された画像の特性に応じて特徴点トラッキングの精度が低下する場合がある。
[0049]
 図4は、撮影されたビデオ画像の中の一つのフレーム画像Iの一例を示す。
[0050]
 同図は、画像31内に障害物34が写っている例を示す。障害物34は特徴点抽出の対象とはならない。従って、画像内で障害物34が占める面積が大きくなるほど画像31から得られる情報量が減少する。つまり、障害物34が占める面積が大きくなると画像31から検出される特徴点数も減り、トラッキングの精度が低下する。そこで、画像処理部14は、ステップS26で障害物の面積に応じた位置推定をしてもよい。例えば、画像処理部14は、障害物による重み係数W obを用いて位置推定を行ってもよい。
[0051]
 ここで、画像31のu軸の画素数をPu、v軸の画素数をP とする。さらに、障害物34が占める面積の画素数をA(A1、A2、A3)とする。このとき、障害物による重み係数W obは、例えば、以下の式(4)で定まる。なお、式(4)は一例であり、式(4)以外の障害物による重み係数を用いてもよい。
ob = 1-(A1+A2+・・・+Ak)/(Pu・P )(4)
[0052]
 また、図4の画像31内にはさらに複数の特徴点36、37があり、これが検出されている。同図の例では、特徴点には、有効な特徴点(インライア)36と有効でない特徴点である外れ値(アウトライア)37とを含む。画像処理部14が特徴点36、37を検出した後、所定の外れ値検出処理により外れ値37を特定してもよい。
[0053]
 ここで、外れ値37が多いほど、特徴点トラッキングに使える特徴点が少なくなり、トラッキングの精度が低下する。そこで、画像処理部14は、ステップ26で画像31内の特徴点のうちの外れ値37に応じた位置推定を行っても良い。例えば、画像処理部14は、外れ値による重み係数W fpを用いて位置推定を行う。画像31における有効な特徴点の個数をi、外れ値の個数をoとすると、外れ値による重み係数W fpは、例えば、以下の式(5)で定まる。なお、式(5)は一例であり、式(5)以外の外れ値による重み係数を用いてもよい。
fp = 1-o/(o+i)(5)
[0054]
 以上説明したように、一つのビデオ画像に対して、特徴点トラッキングの精度を低下させる要因が複数ある。そして、上述のように、各フレーム画像Iに対して、速度による重み係数W 、障害物に関する重み係数W ob及び特徴点の外れ値に関する重み係数W fpのそれぞれが算出可能である。画像処理部14は、ステップS26において、これらの1つ以上を用いることができる。例えば、画像処理部14は、これらのうちの1つの重み係数を個別に用いてもよいし、2つ以上の重み係数を統合して、各フレーム画像Iに対して一つの重み係数Wを特定してもよい。ある時刻tのフレーム画像I(t)に対する重み係数W(t)は、同じ時刻の速度による重み係数W (t)、障害物に関する重み係数W ob(t)、及び特徴点の外れ値に関する重み係数W fp(t)に基づいて、例えば、以下の式(6)で定まる。
[0055]
 W(t)=average(W (t),W ob(t),W fp(t)) (6)
[0056]
 上述のように、複数の撮像装置12で撮像した画像に基づき複数の位置候補が算出される。従って、画像処理部14は、ステップS26において複数の自車位置の候補から自車位置を推定する。例えば、画像処理部14は、ある時刻tの自車位置Pos(t)を推定するために、その時刻のフレーム画像I(t)に対する重み係数W(t)を用いる。ある時刻tの自車位置Pos(t)は、例えば、式(7)で算出されてもよい。
[0057]
 Pos(t)=(Pa(t)Wa(t)+Pb(t)Wb(t)+・・・+Pn(t)Wn(t))/(Wa(t)+Wb(t)+・・・Wn(t)) (7)
[0058]
 これにより、複数の画像からそれぞれ算出された現在位置候補を統合して移動体100の現在位置を推定できる。
[0059]
 次に、速度による重み付けの具体例を示す。
[0060]
 図5Aは、撮像装置12a及び撮像装置12bを搭載した移動体100の一例を示す。
[0061]
 撮像装置12aは、移動体100の前方に向けて設置され、遠景を撮像する撮像装置である。撮像装置12aは撮像範囲R を有する。
[0062]
 撮像装置12bは、移動体100の後方で下方に向けて設置され、近景を撮像する撮像装置である。撮像装置12bは撮像範囲R を有する。
[0063]
 図5Bは、時刻tと自車速度Vの関係を表すグラフである。
[0064]
 速度Vmax は、撮像装置12aで撮像した画像で特徴点トラッキングが可能な最高速度であり、速度Vmax は、撮像装置12bで撮像した画像で特徴点トラッキングが可能な最高速度である。
[0065]
 図5Cは、時刻tと速度による重み係数W の関係を表すグラフである。時刻t は、移動体100の速度がVmax になる時刻である。時刻t は、移動体100の速度がVmax になる時刻である。
[0066]
 重みW vSは撮像装置12aの画像に対する自車速度Vによる重みである。重みW vAは撮像装置12bの画像に対する自車速度Vによる重みである。
[0067]
 t=0のとき、移動体100は止まっているため、式(3)に従い、重み係数W vS及びW vAはいずれも1である。
[0068]
 t>0のとき、移動体100が移動している。従って速度がV>0であり、式(3)によればW vS<1、W vA<1になる。
[0069]
 t=t になると、移動体100の移動速度がV=Vmax になるので、式(3)に従いW vA=0となる。t>t において、W vA=0である。
[0070]
 同様に、t=t になると、移動体100の移動速度がV=Vmax になるので、式(3)に従いW vS=0となる。t>t において、W vS=0である。
[0071]
 次に、障害物による重み付けの具体例を示す。
[0072]
 図6Aは、図5Aと同様に撮像装置12a及び撮像装置12bを搭載した移動体100の一例を示す。この例ではさらに、撮像装置12aの撮像範囲に障害物51が存在し得る。
[0073]
 図6Bは、図5Bと同様に、時刻tと自車速度Vの関係を表すグラフである。
[0074]
 図6Cは、時刻tと速度による重み係数W 及び障害物による重み係数W obとの関係を表すグラフである。
[0075]
 速度による重み係数W は、図5Cの場合と同じである。
[0076]
 時刻t obは障害物51が撮像範囲R に入り、撮像される画像に写り始める時刻である。時間t ob’は、障害物51が撮像範囲R から外れ、撮像される画像に写らなくなる時刻である。
[0077]
 0<t<t obのとき、撮像装置12aの撮像範囲R に障害物51はないため、W obs=1である。
[0078]
 t=t obになると、障害物51は撮像装置12aの撮像範囲R に入るため、式(4)に従ってW obs<1になる。ここでは簡単のために画像全体の画素数に占める障害物の画素数は一定とする。
[0079]
 t=t ob’になると、障害物51が撮像装置12aの撮像範囲R から外れ、画像に写らなくなるため、式(4)によってW obs=1になる。
[0080]
 このように、障害物が映り込むと障害物による重み係数W obが低下し、その画像による位置推定の精度が低下する。そこで、制御部15が画像処理部14の処理結果に応じて移動体100を制御するようにしてもよい。図6にその一例を示す。ここでは、画像処理部14が障害物を検出すると、制御部15の指令により移動体100の速度が一定に保たれる例を示す。ここでは、障害物の検出をトリガーとしているが、これ以外のトリガーであってもよい。例えば、特徴点のうち外れ値数の割合が所定以上であることをトリガーとしてもよい。
[0081]
 図7は、図6と同じ状況下で障害物の検出をトリガーとする制御部15の制御により、移動体100の速度が変化する例を示す。
[0082]
 図7Aは、図5B、図6Bと同様に、時刻tと自車速度Vの関係を表すグラフである。
[0083]
 0<t<t obのとき、移動体100が加速する。ここでは移動体100の速度V>0であるので、式(3)によりW vS<1、W vA<1になる。
[0084]
 t=t obになると、撮像装置12aの撮像範囲R の画像に障害物51が入り、画像処理部14がこれを検出して、制御部15へ通知する。この通知を行う基準は、例えば、障害物51の画素数が所定以上でもよいし、画像全体の画素数に占める障害物51の画素数の割合が所定以上でもよい。制御部15は、この通知を受けると、そのときの速度を維持する指令を出力する。これにより、移動体100の速度が維持されるので、速度による重み係数W も維持される。なお、移動体の速度を維持する代わりに、移動体の速度を低下させてもよい。
[0085]
 時刻t=t ob’になると、撮像装置12aの撮像範囲R の画像から障害物51が消える。画像処理部14がこれを検出して、制御部15へ通知する。この通知を行う基準は、例えば、障害物51の画素数が所定以下でもよいし、画像全体の画素数に占める障害物51の画素数の割合が所定以下でもよい。制御部15は、この通知を受けると、それまでの速度維持を解除する指令を出力する。これにより、移動体100は再び加速する。速度の増加に伴って、速度による重み係数も増加する。
[0086]
 これにより、移動体100が観察する周囲の状況に応じて、精度良く現在位置を推定できる。特に、障害物が検出されているときは速度を一定に保つかまたは減少させ、速度上昇による位置推定の精度の更なる低下を防止する。
[0087]
 次に、図8は、撮像装置12が一台の場合の例を示す。
[0088]
 図8Aは、一台の撮像装置12aを搭載した移動体100の一例を示す。この例では、撮像装置12aが移動体100の前方に取り付けられている例で説明するが、撮像装置の取付位置は前方に限らない。
[0089]
 撮像装置12が複数台あるときは、各撮像装置12が撮像した画像別に移動体位置候補算出処理21を適用して画像ごとに位置候補を算出したのに対して、撮像装置12が一台の場合は、共通の画像に対して異なる移動体位置候補算出処理21を適用する。
[0090]
 以下の説明では、撮像装置12aが撮像したビデオ画像に移動体位置候補算出処理21a及び移動体位置候補算出処理21bの2種類の処理が適用され、これらの処理の精度による重み付けを行う例を示す。ここで、移動体位置候補算出処理21aは移動体位置候補算出処理21bと比べると、位置推定の精度は高いが、障害物の影響を受けやすい、ロバストでない処理である。移動体位置候補算出処理21bは移動体位置候補算出処理21aと比べると、位置推定にあたり障害物の影響を受けにくいが、位置推定の精度は低いロバストな処理である。
[0091]
 図6と同様に、時刻t obに障害物51が撮像範囲R に入り、時間t ob’に障害物51が撮像範囲R から外れる。ここでは簡単のために画像全体の画素数に占める障害物51の画素数は一定とする。
[0092]
 図8Bは、時刻tと、移動体位置候補算出処理21aの精度との関係を表す。図8Cは、時刻tと、移動体位置候補算出処理21bの精度との関係を表す。つまり、移動体位置候補算出処理21a、21bは、画像の特徴に応じて現在位置候補算出の精度が変化する。
[0093]
 ここで、0<t<t obのときは、撮像装置12aの撮像範囲R に障害物51が写っていないため、移動体位置候補算出処理21aの精度Pr と移動体位置候補算出処理21bの精度Pr はともに高い。
[0094]
 この場合、画像処理部14はステップS26において、式(8)で示すように、移動体位置候補算出処理21aで推定された位置P と移動体位置候補算出処理21bで推定された位置P のいずれか一方を推定位置Pos(t)としてもよい。
Pos(t)=P 、if Pr >Pr Pos(t)=P 、if Pr <Pr  (8) 
[0095]
 あるいは、画像処理部14はステップS26において、式(9)に示すように、移動体位置候補算出処理21aで推定された位置P と移動体位置候補算出処理21bで推定された位置P に、移動体位置候補算出処理21aと移動体位置候補算出処理21bの精度に応じた重み付けをした平均位置を算出して、これを推定位置Pos(t)としてもよい。
Pos(t)=(P ・W +P ・W )/(W +W ) (9)
:Pr に応じた重み係数W :Pr に応じた重み係数
[0096]
 t ob<t<t ob’では、障害物51が撮像装置12aの撮像範囲R に写っているため、ステップS23a、ステップS23bで抽出できる特徴点が減少する。これにより、移動体位置候補算出処理21aの精度がPr ’に、移動体位置候補算出処理21bの精度がPr ’にそれぞれ低下する。そして、ロバストでない移動体位置候補算出処理21aがロバストである移動体位置候補算出処理21bよりも大きな影響を受け、Pr ’>Pr ’となる。
[0097]
 この場合、画像処理部14はステップS26で、より精度の高い移動体位置候補算出処理21bで算出された位置候補P を推定位置Pos(t)としてもよい。
[0098]
 Pos(t)= P  (10)
[0099]
 t>t ob’では、障害物51が写っていないので、0<t<t obと同じである。
[0100]
 これにより、一台の撮像装置で撮像された共通の画像から算出された複数の位置候補を統合して精度高く現在位置を推定することができる。
[0101]
 なお、上記の例では、共通の画像に対して障害物による影響の受けやすさが異なる2つの処理を適用する例を示したが、これ以外でもよい。例えば、移動体の速度による影響の受けやすさが異なる2つの処理の場合には、移動体の速度に応じていずれかの処理結果を優先させるようにしてもよい。あるいは、外れ値の個数による影響の受けやすさが異なる2つの処理の場合には、外れ値の個数に応じていずれかの処理結果を優先させるようにしてもよい。さらに、これらを組合わせてもよい。
[0102]
 また、処理数は2以上であればいくつでもよい。

符号の説明

[0103]
1 位置推定装置、12 撮像装置、13 情報処理装置、14 画像処理部、15 制御部、16 メモリ、17 表示部、100 移動体

請求の範囲

[請求項1]
 移動体の位置推定装置であって、
 前記移動体に取り付けられた撮像装置と、
 前記撮像装置で撮像された画像に基づいて前記移動体の複数の位置候補を特定し、前記複数の位置候補と前記移動体の移動速度とに基づいて前記移動体の位置を推定する画像処理部と、を有する位置推定装置。
[請求項2]
 前記移動体に取り付けられた撮像装置を複数有し、
 前記画像処理部は、各撮像装置の画像に対してそれぞれ前記移動体の位置候補を特定する、請求項1記載の位置推定装置。
[請求項3]
 前記画像処理部は、前記複数の位置候補に、それぞれの画像の画角及び前記移動体の移動速度に応じた重み付けをして、前記移動体の位置を推定する、請求項2記載の位置推定装置。
[請求項4]
 前記画像処理部は、前記複数の位置候補に、それぞれの画像内の障害物に応じた重み付けをして、前記移動体の位置を推定する、請求項2記載の位置推定装置。
[請求項5]
 前記画像処理部は、前記複数の位置候補に、それぞれの画像内の特徴点のうちの外れ値に応じた重み付けをして、前記移動体の位置を推定する、請求項2記載の位置推定装置。
[請求項6]
 前記画像内の障害物の画素数または前記画像内の特徴点のうちの外れ値数に応じて、前記移動体に対して移動速度に関する指令を出力する制御部をさらに有する、請求項1記載の位置推定装置。
[請求項7]
 前記画像処理部は、共通の画像に対して異なる処理をして前記複数の位置候補を特定する、請求項1記載の位置推定装置。
[請求項8]
 移動体の位置推定装置が行う方法であって、
 画像処理部が、
 前記移動体に取り付けられた撮像装置で撮像された画像に基づいて前記移動体の複数の位置候補を特定するステップと、
 前記複数の位置候補と前記移動体の移動速度とに基づいて前記移動体の位置を推定するステップと、を行う方法。

図面

[ 図 1]

[ 図 2]

[ 図 3]

[ 図 4]

[ 図 5]

[ 図 6]

[ 図 7]

[ 図 8]