(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-14
(45)【発行日】2024-03-25
(54)【発明の名称】位置推定方法及び位置推定システム
(51)【国際特許分類】
G01S 19/49 20100101AFI20240315BHJP
G01C 21/28 20060101ALI20240315BHJP
【FI】
G01S19/49
G01C21/28
(21)【出願番号】P 2020103232
(22)【出願日】2020-06-15
【審査請求日】2023-02-06
(73)【特許権者】
【識別番号】000003997
【氏名又は名称】日産自動車株式会社
(73)【特許権者】
【識別番号】507308902
【氏名又は名称】ルノー エス.ア.エス.
【氏名又は名称原語表記】RENAULT S.A.S.
【住所又は居所原語表記】122-122 bis, avenue du General Leclerc, 92100 Boulogne-Billancourt, France
(74)【代理人】
【識別番号】110002468
【氏名又は名称】弁理士法人後藤特許事務所
(72)【発明者】
【氏名】土谷 千加夫
(72)【発明者】
【氏名】高野 博幸
(72)【発明者】
【氏名】武井 翔一
【審査官】▲高▼場 正光
(56)【参考文献】
【文献】特開平09-297030(JP,A)
【文献】特開2013-061320(JP,A)
【文献】特開2009-229293(JP,A)
【文献】特開平07-035558(JP,A)
【文献】特開2009-222438(JP,A)
【文献】特開2002-350157(JP,A)
【文献】特開2012-007939(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01S 5/00 - G01S 5/14
G01S 19/00 - G01S 19/55
G01C 21/00 - G01C 21/36
G01C 23/00 - G01C 25/00
(57)【特許請求の範囲】
【請求項1】
車両情報に基づいて取得された車両の通過位置と当該通過位置の前記車両の通過時刻とを関連付けて記憶する第1記憶部と、測位装置によって測位された前記車両の絶対位置と当該絶対位置の測位時刻とを関連付けて記憶する第2記憶部とを備える車両の位置を推定する位置推定方法であって、
複数の前記通過位置からなる第1走行軌跡と、複数の前記絶対位置からなる第2走行軌跡とを比較して、前記第1走行軌跡における前記通過位置と前記第2走行軌跡における前記絶対位置との対応を特定し、対応する前記通過位置の通過時刻と前記絶対位置の測位時刻との時刻差を算出する時刻差算出ステップと、
前記絶対位置と前記車両情報と前記算出された時刻差とに基づいて前記車両の位置を推定する位置推定ステップと、を含
み、
前記位置推定ステップは、前記絶対位置の測位時刻を前記算出された時刻差で補正し、当該測位時刻が補正された絶対位置と、直前に推定された前記車両の位置と、前記車両情報とをカルマンフィルタを用いて合成して前記車両の位置を推定する、
位置推定方法。
【請求項2】
請求項
1に記載の位置推定方法であって、
前記時刻差算出ステップは、前記第2走行軌跡における前記絶対位置の測位時刻と、前記第1走行軌跡における当該絶対位置に対応する通過位置の通過時刻との差分値に基づいて前記時刻差を算出する、
位置推定方法。
【請求項3】
請求項
2に記載の位置推定方法であって、
前記時刻差算出ステップは、前記第2走行軌跡における各絶対位置について、当該絶対位置から所定範囲に存在する前記第1走行軌跡における通過位置を、当該絶対位置に対応する通過位置として選択し、当該絶対位置の測位時刻と当該選択された通過位置の通過時刻との差分値を算出し、当該算出された各差分値に基づいて前記時刻差を算出する、
位置推定方法。
【請求項4】
請求項
3に記載の位置推定方法であって、
前記時刻差算出ステップは、前記選択された通過位置の通過時刻のうち最も古い時刻と最も新しい時刻との差分値が閾値を基準として大きい場合には、当該選択された通過位置を前記時刻差の算出に用いない、
位置推定方法。
【請求項5】
請求項
3に記載の位置推定方法であって、
前記時刻差算出ステップは、前記選択された通過位置の数が閾値を基準として大きい場合には、当該選択された通過位置を前記時刻差の算出に用いない、
位置推定方法。
【請求項6】
請求項1乃至
5の何れかに記載の位置推定方法であって、
前記第2走行軌跡における各絶対位置について、前記第2走行軌跡における前記絶対位置と前記第1走行軌跡における当該絶対位置に対応する通過位置との対応をとり、当該絶対位置及び当該通過位置間の距離を最小化する処理を行うことにより前記第1走行軌跡と前記第2走行軌跡とをマッチングさせる軌跡照合ステップをさらに含み、
前記時刻差算出ステップは、前記マッチング後の前記第1走行軌跡と前記第2走行軌跡とを比較して前記時刻差を算出する、
位置推定方法。
【請求項7】
請求項
6に記載の位置推定方法であって、
前記軌跡照合ステップは、前記車両がカーブを曲がり始める前の位置を始点とし、前記車両が前記カーブを所定量だけ曲がった位置を終点とする前記第1走行軌跡及び前記第2走行軌跡を用いて前記マッチングを実行する、
位置推定方法。
【請求項8】
請求項
6に記載の位置推定方法であって、
前記軌跡照合ステップは、前記車両がカーブを曲がり始める前の位置を始点とし、前記車両が前記カーブを曲がり終わった後の位置を終点とする前記第1走行軌跡及び前記第2走行軌跡を用いて前記マッチングを実行する、
位置推定方法。
【請求項9】
請求項
7に記載の位置推定方法であって、
前記軌跡照合ステップは、前記車両のヨーレートが略ゼロとなる位置を前記車両が前記カーブを曲がり始める前の位置とし、当該ヨーレートが略ゼロとなった後に前記車両のヨー角変化の累積が所定値を基準として大きくなった位置を前記車両が前記カーブを所定量だけ曲がった位置とする、
位置推定方法。
【請求項10】
請求項
8に記載の位置推定方法であって、
前記軌跡照合ステップは、前記車両のヨーレートが略ゼロとなる位置を前記車両が前記カーブを曲がり始める前の位置とし、当該ヨーレートが略ゼロとなった後に前記車両のヨー角変化の累積が所定値を基準として大きくなり、かつ、前記車両のヨーレートが再度略ゼロとなる位置を前記車両が前記カーブを曲がり終わった後の位置とする、
位置推定方法。
【請求項11】
請求項
6乃至
10の何れかに記載の位置推定方法であって、
前記時刻差算出ステップは、前記マッチングが行われる毎に前記時刻差を算出し、第1の時刻差と、当該第1の時刻差の算出後に新たに算出された第2の時刻差とを比較し、前記第1の時刻差と前記第2の時刻差との差分値が所定範囲内にある場合には、前記第1の時刻差及び前記第2の時刻差の何れか一方または双方を前記車両の位置を推定する値として用いる決定をし、一方、前記第1の時刻差と前記第2の時刻差との差分値が所定範囲内にない場合には、前記第2の時刻差を前記車両の位置を推定する値として用いる決定をする、
位置推定方法。
【請求項12】
車両の位置を推定するコントローラを備える位置推定システムであって、
前記コントローラは、
車両情報に基づいて取得された車両の通過位置と当該通過位置の前記車両の通過時刻とを関連付けて記憶する第1記憶部と、
測位装置によって測位された前記車両の絶対位置と当該絶対位置の測位時刻とを関連付けて記憶する第2記憶部と、
複数の前記通過位置からなる第1走行軌跡と、複数の前記絶対位置からなる第2走行軌跡とを比較して、前記第1走行軌跡における前記通過位置と前記第2走行軌跡における前記絶対位置との対応を特定し、対応する前記通過位置の通過時刻と前記絶対位置の測位時刻との時刻差を算出する時刻差算出部と、
前記絶対位置と前記車両情報と前記算出された時刻差とに基づいて前記車両の位置を推定する位置推定部と、を備え
、
前記位置推定部は、前記絶対位置の測位時刻を前記算出された時刻差で補正し、当該測位時刻が補正された絶対位置と、直前に推定された前記車両の位置と、前記車両情報とをカルマンフィルタを用いて合成して前記車両の位置を推定する、
位置推定システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、車両の位置を推定する位置推定方法及び位置推定システムに関する。
【背景技術】
【0002】
従来、車両の位置を推定する技術が存在する。例えば、車両に設けられた画像センサの出力に基づいてローカルマップにおける自己の位置を推定し、この推定された自己の位置と、ローカルマップにおける他の車両の位置とから、他の車両に対する自己の相対位置を推定する技術が提案されている。この技術では、第1の搬送波位相距離を用いたGNSS測位情報と、他の車両において受信された第2の搬送波位相距離を用いたGNSS測位情報と、自己の相対位置に基づいて自己の絶対位置を推定する技術もさらに提案されている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述した従来技術では、測位装置により位置情報、例えばGNSS測位情報を取得して車両の位置を推定することができる。なお、車両内の制御システムでは、GNSS測位情報の時刻と異なるローカルな時刻が使用されることが多い。このため、測位装置を備える車両内のローカルな時刻と、測位装置により取得されるGNSS測位情報の時刻とが同期していないことも想定される。このように、車両内のローカルな時刻とGNSS測位情報の時刻とが同期していない場合には、測位装置から遅れをもって得られた位置情報と、車載センサ(オドメトリなど)により取得された位置情報とを適切にカップリング(統合)することができない。仮に、測位装置からの遅れがないものと仮定して推定した車両の位置は、その遅れ時間内に車両が移動した分だけずれてしまう。このため、車両の位置を適切に推定することが困難となるおそれがある。
【0005】
本発明は、車両の位置を適切に推定することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一形態は、車両情報に基づいて取得された車両の通過位置とその通過位置の車両の通過時刻とを関連付けて記憶する第1記憶部と、測位装置によって測位された車両の絶対位置とその絶対位置の測位時刻とを関連付けて記憶する第2記憶部とを備える車両の位置を推定する位置推定方法である。この位置推定方法は、複数の通過位置からなる第1走行軌跡と、複数の絶対位置からなる第2走行軌跡とを比較して、第1走行軌跡における通過位置と第2走行軌跡における絶対位置との対応を特定し、その対応する通過位置の通過時刻と絶対位置の測位時刻との時刻差を算出する時刻差算出ステップと、絶対位置と車両情報と算出された時刻差とに基づいて車両の位置を推定する位置推定ステップと、を含み、位置推定ステップでは、絶対位置の測位時刻を、算出された時刻差で補正し、当該測位時刻が補正された絶対位置と、直前に推定された車両の位置と、車両情報とをカルマンフィルタを用いて合成して、車両の位置を推定する。
【発明の効果】
【0007】
本発明によれば、車両の位置を適切に推定することができる。
【図面の簡単な説明】
【0008】
【
図1】
図1は、第1実施形態における位置推定システムの機能構成例を示すブロック図である。
【
図2A】
図2Aは、相対位置推定部により推定された相対座標系における位置の軌跡を示す図である。
【
図2B】
図2Bは、絶対位置推定部により推定された絶対座標系における位置の軌跡を示す図である。
【
図3】
図3は、軌跡照合部による軌跡照合処理により2つの軌跡が照合された状態を模式的に示す図である。
【
図4】
図4は、軌跡照合部による照合開始判定処理の処理手順の一例を示すフローチャートである。
【
図5】
図5は、時刻差算出部による時刻差算出処理における相対位置の点の選択処理の一例を示す図である。
【
図6】
図6は、時刻差算出部による時刻差算出処理の処理手順の一例を示すフローチャートである。
【
図7】
図7は、位置推定システムによる位置推定処理の処理手順の一例を示すフローチャートである。
【
図8】
図8は、第2実施形態における時刻差算出部による時刻差算出処理の処理手順の一例を示すフローチャートである。
【
図9】
図9は、第3実施形態における軌跡照合部による照合開始判定処理の処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【0009】
以下、添付図面を参照しながら本発明の実施形態について説明する。
【0010】
[第1実施形態]
[位置推定システムの構成例]
図1は、第1実施形態における位置推定システム100の機能構成例を示すブロック図である。位置推定システム100は、車両20(
図3参照)に搭載され、車両20の現在位置を推定するシステムである。
【0011】
図1に示すように、位置推定システム100は、角速度センサ101と、車速センサ102と、相対位置推定部103と、GNSS(Global Navigation Satellite System)アンテナ104と、絶対位置推定部105と、軌跡照合部106と、第1走行軌跡記憶部107と、第2走行軌跡記憶部108と、時刻差算出部109と、位置推定部110とを備える。なお、相対位置推定部103、軌跡照合部106、第1走行軌跡記憶部107、第2走行軌跡記憶部108、時刻差算出部109及び位置推定部110は、車両20が備えるコントローラ10により実現される。また、GNSSアンテナ104及び絶対位置推定部105は、例えば、測位装置11により実現される。測位装置11は、例えばGPS(Global Positioning System)受信器である。また、角速度センサ101、車速センサ102、GNSSアンテナ104及び絶対位置推定部105は、車両20に搭載され、車両20に関する車両情報を取得するセンサの一例である。なお、絶対位置推定部105はコントローラ10により実現されるようにしてもよい。
【0012】
コントローラ10は、各種機器を制御する制御装置であり、例えば中央演算装置(CPU(Central Processing Unit))、読み出し専用メモリ(ROM(Read Only Memory))、ランダムアクセスメモリ(RAM(Random Access Memory))及び入出力インタフェース(I/O(input/output)インタフェース)を備えたマイクロコンピュータで構成される。コントローラ10は、特定のプログラムを実行することにより、車両20に備えられるエンジン、モータ、インバータ、バッテリ等の各種機器の動作を制御する制御部として機能する。なお、コントローラ10は、一つのマイクロコンピュータで構成されるのではなく、複数のマイクロコンピュータにより構成されてもよい。例えば、各種機器を制御する車両制御装置と、エンジンを制御するエンジンECU(Engine Control Unit)とにより構成されてもよい。また、コントローラ10により車両20の制御システムが構成される。
【0013】
角速度センサ101は、車両20のヨーレート、すなわち、車両20の旋回方向への回転角の速さを計測するセンサであり、計測されたヨーレートを相対位置推定部103に出力する。なお、角速度センサ101として、例えば、車両20が回転するスピードであるヨーレートを検出可能な各機器、例えばジャイロセンサ等のヨーレートセンサを用いることができる。また、角速度センサ101の代わりに、複数の機器を用いるようにしてもよい。例えば、車両20の車速及び舵角に基づいてヨーレートを検出可能であるため、これらを検出可能な車速センサ及び舵角センサを、角速度センサ101の代わりに用いるようにしてもよい。
【0014】
車速センサ102は、車輪速パルスに基づいて車両20の速度を計測するセンサであり、計測された速度を相対位置推定部103に出力する。
【0015】
相対位置推定部103は、角速度センサ101で計測されたヨーレートと、車速センサ102で計測された速度とに基づいて、車両20の位置を推定するものであり、推定された位置に関する位置情報を軌跡照合部106及び位置推定部110に出力する。すなわち、相対位置推定部103は、いわゆる、ホイールオドメトリを計算する。ここで、相対位置推定部103により推定される位置は、車両20の制御システムの起動時の位置のような、任意の基準となる位置を原点として、原点からの移動方向及び移動量に基づいて推定される、原点を基準とした相対的な位置である。従って、相対位置推定部103により推定される位置は、基準となる位置(本実施形態では制御システムの起動時の位置とする)を原点に持つ座標系(相対座標系)における車両20の位置である。また、本実施形態では、相対位置推定部103により推定された相対座標系における位置を相対位置またはローカルな位置と称して説明する。なお、相対位置には、その位置を車両20が通過した際の車両20の制御システムの時刻、すなわち通過時刻がタイムスタンプとして付与される。また、相対位置推定部103により推定された車両20の相対位置の一例を
図2Aに示す。
【0016】
GNSSアンテナ104は、GNSS衛星からの信号を受信するアンテナであり、受信した信号を絶対位置推定部105に出力する。
【0017】
絶対位置推定部105は、GNSSアンテナ104で受信した信号に基づいて、車両20の位置を推定するものであり、推定された位置に関する位置情報を軌跡照合部106及び位置推定部110に出力する。ここで、絶対位置推定部105により推定される位置は、ある特定の(不変の)地点を原点に持つ座標系(絶対座標系)における車両20の位置である。また、本実施形態では、絶対位置推定部105により推定された絶対座標系における位置を絶対位置またはグローバルな位置と称して説明する。
【0018】
ここで、絶対座標系は例えば直交座標系であり、東京周辺であれば平面直角座標系の東京9系を用いることができる。また、絶対位置にはGNSSの時刻、すなわち測位時刻がタイムスタンプとして付与される。また、絶対位置推定部105により推定された車両20の絶対位置の一例を
図2Bに示す。
【0019】
軌跡照合部106は、相対位置推定部103により推定された車両20の相対位置の軌跡と、絶対位置推定部105により推定された車両20の絶対位置の軌跡とを幾何学的に照合(マッチング)するものであり、照合結果を時刻差算出部109に出力する。具体的には、軌跡照合部106は、相対位置推定部103から出力された車両20の相対位置と通過時刻とを第1走行軌跡記憶部107に保持させる。また、軌跡照合部106は、絶対位置推定部105から出力された車両20の絶対位置と測位時刻とを第2走行軌跡記憶部108に保持させる。また、軌跡照合部106は、所定のタイミングで、第1走行軌跡記憶部107に保持された車両20の相対位置及び通過時刻と、第2走行軌跡記憶部108に保持された車両20の絶対位置及び測位時刻とを取得する。そして、軌跡照合部106は、取得した車両20の相対位置の軌跡と、車両20の絶対位置の軌跡とについて軌跡照合処理を行うことにより、2つの軌跡を照合する。なお、軌跡照合処理については、
図3を参照して詳細に説明する。また、軌跡照合処理を開始するタイミングを判定する照合開始判定処理については、
図4を参照して詳細に説明する。
【0020】
第1走行軌跡記憶部107は、相対位置推定部103により推定された車両20の相対位置と、その位置を車両20が通過した通過時刻とを関連付けて記憶するメモリであり、例えばRAMにより実現される。
【0021】
第2走行軌跡記憶部108は、絶対位置推定部105により推定された車両20の絶対位置と、その位置を測位した測位時刻とを関連付けて記憶するメモリであり、例えばRAMにより実現される。
【0022】
時刻差算出部109は、軌跡照合部106により照合された2つの軌跡を比較して、相対位置の各通過時刻と、絶対位置の各測位時刻との時刻差を算出するものであり、その算出結果を位置推定部110に出力する。すなわち、時刻差算出部109は、軌跡照合部106により照合された2つの軌跡に含まれる点群同士を対応付けし、対応付けられた各点の通過時刻、測位時刻を比較することで車両20の制御システムの時刻とGNSSの時刻との時刻差を算出する。なお、時刻差算出部109による時刻差算出処理については、
図5、
図6を参照して詳細に説明する。
【0023】
位置推定部110は、絶対位置推定部105により推定された絶対位置と車両情報と時刻差算出部109により算出された時刻差とに基づいて、車両20の現在位置を推定するものである。なお、車両情報は、車両20に搭載されている機器により取得可能な情報であり、例えば、角速度センサ101により計測されたヨーレートと、車速センサ102により計測された車速である。具体的には、位置推定部110は、時刻差算出部109により算出された時刻差を用いて、絶対位置推定部105により推定された絶対位置の測位時刻と車両20の制御システムの時刻とのズレを補正する。そして、位置推定部110は、ズレが補正された絶対位置と、直前に推定された車両20の位置と、車両情報とをカルマンフィルタを用いて統合して車両20の現在位置を推定する。なお、位置推定部110による位置推定処理については、
図7を参照して詳細に説明する。
【0024】
ここで、絶対位置推定部105により推定される絶対位置とこれに付与される測位時刻とは精度が高いものである。しかし、車両20が備える制御システムが、絶対位置推定部105からその絶対位置と測位時刻とを取得する際には、各種処理や各種情報のやり取りが発生するため遅延が生じる。また、その遅延時間は固定的な値ではなく、ばらつきが生じる。すなわち、絶対位置推定部105による絶対位置及び測位時刻により、車両20がどの位置にいつの時刻に存在したかを正確に把握することは可能であるが、車両20の制御システムがその絶対位置及び測位時刻を受け取る際には、ばらつきのある遅延が発生する。
【0025】
また、一般に、車両の内部では、車両が備える制御システムにより計時されたローカルな時刻が用いられている。また、自動運転機能を備える車両は、外部の時間に同期する処理がされていないことが多い。このため、車両20の制御システムと、GNSSの測位時刻とが同期していないと、絶対位置推定部105から遅れをもって得られた絶対位置と、車両情報、例えば車載センサの情報(オドメトリなど)とをカップリング(統合)することができない。仮に、絶対位置推定部105からの遅れがないものと仮定して推定した車両の位置は、その遅れ時間内に車両が移動した分だけずれてしまう。なお、車両20の制御システムの時刻を、GNSSの測位時刻に同期させればよいとも考えられる。しかし、様々な制約から車両20では、GNSSとは異なるシステム時間が採用されている場合が多く、時刻同期という単純な方策が成立しないことが多い。そこで、本実施形態では、特徴的な軌跡、例えば、車両20がカーブする際の軌跡を用いて、相対位置の各通過時刻と絶対位置の各測位時刻との時刻差を算出する。そして、この時刻差を用いて、絶対位置の測位時刻と車両20の制御システムの時刻とのズレを補正し、車両20の現在位置を推定する。
【0026】
[相対座標系と絶対座標系における軌跡例]
図2Aは、相対位置推定部103により推定された相対座標系における位置の軌跡1を示す図である。
図2Bは、絶対位置推定部105により推定された絶対座標系における位置2の軌跡を示す図である。なお、
図2A及び
図2Bでは、所定時間内に推定された位置の軌跡1、2を簡略化して示す。また、
図2A及び
図2Bでは、軌跡照合部106により2つの軌跡1、2が照合される前の状態、すなわち初期状態を示す。
【0027】
図2Aには、車両20のシステム起動時を原点とする座標系(相対座標系)Xr、Yrにおいて、相対位置推定部103により求められた車両20の相対位置VT1乃至VT10と、相対位置VT1乃至VT10を結ぶ軌跡1とを示す。なお、相対位置VT1乃至VT10には車両20の制御システムの時刻がタイムスタンプとして付与されている。
【0028】
図2Bには、特定の地点を原点とする座標系(絶対座標系)Xg、Ygにおいて、絶対位置推定部105により求められた車両20の絶対位置GT1乃至GT3と、絶対位置GT1乃至GT3を結ぶ軌跡2とを示す。なお、絶対座標系として、平成14年国土交通省告示第9号で定義された平面直角座標系を用いることができる。例えば、東京周辺であれば平面直角座標系の東京9系を用いることができる。なお、絶対位置GT1乃至GT3にはGNSSの測位時刻がタイムスタンプとして付与されている。
【0029】
ここで、一般に、車両に搭載されている角速度センサや車速センサは、GNSSの測位周期に比べて高速に動作している。このため、角速度センサや車速センサを用いて取得される相対位置は、GNSSの測位に基づいて取得される絶対位置に比べて多くなる。そこで、
図2A及び
図2Bでは、所定時間内に取得された相対位置VT1乃至VT10が、所定時間内に取得された絶対位置GT1乃至GT3に比べて多い例を示す。
【0030】
図2A及び
図2Bに示すように、所定時間内に取得された相対位置VT1乃至VT10と絶対位置GT1乃至GT3とは、点群をなす。また、相対位置VT1乃至VT10と絶対位置GT1乃至GT3とのそれぞれには、時刻がタイムスタンプとして付与されている。
【0031】
[軌跡照合処理例]
図3は、軌跡照合部106による軌跡照合処理により2つの軌跡が照合された状態を模式的に示す図である。
【0032】
軌跡照合部106は、
図2Aに示す軌跡1と、
図2Bに示す軌跡2とについて、位置合わせを行い、照合する軌跡照合処理を行う。なお、点群と点群の位置合わせはregistrationと呼ばれ、様々な手法が提案されている。
【0033】
例えば、以下の非特許文献1に記載されているICP(Iterative Closest Point)アルゴリズムは、2つの点群を位置合わせする位置合わせ手法として広く用いられている。
【0034】
非特許文献1:P.J. Besl and N.D. McKay: A Method for Registration of 3-D Shapes, IEEE Trans. Pattern Analysis and Machine Intelligence, Vol. 14, No. 2, pp. 239 - 256 (1992).
【0035】
このICPアルゴリズムは、一方の点群(第一の点群と称する)を他方の点群(第二の点群と称する)にできるだけ近付けるような回転と並進を求める手法である。
【0036】
具体的には、第一の点群に含まれる各点について、第二の点群に含まれるその最近傍の点を対応付け、対応点間の距離の総和を最小化する回転と並進を求める。次に、求めた回転と並進を第一の点群に施し、この回転と並進を施した後に上述した処理を繰り返す。そして、所定条件を満たす場合に計算を終了し、最終的に最適な回転と並進を得る。なお、所定条件を満たす場合は、例えば、上述した処理を所定回数繰り返したタイミング、または、何らかの収束判定による終了タイミングである。
【0037】
このような軌跡照合処理により2つの軌跡1、2の位置合わせが行われた後の状態を
図3に示す。また、このような軌跡照合処理を行うタイミングを
図4に示す。
【0038】
[照合開始判定処理例]
図4は、軌跡照合部106による照合開始判定処理の処理手順の一例を示すフローチャートである。なお、この処理手順は、記憶装置(図示省略)に記憶されているプログラムに基づいて実行される。また、
図4では、車両20がカーブを曲がり始める前の位置を始点とし、車両20がそのカーブを所定量だけ曲がった位置を終点とする走行軌跡を用いて軌跡照合処理を実行する場合の例を示す。例えば、車両20がカーブを曲がるときの軌跡を用いて軌跡照合処理を実行することができる。
【0039】
まず、軌跡照合部106は、ヨーレートフラグを用意し、その初期値はオフとしておく。ヨーレートフラグは、特徴的な軌跡、例えば車両20がカーブを曲がるときの軌跡を取得するために用いられるフラグである。なお、
図4に示すヨーレートフラグは、車両20がカーブを曲がり始める前の位置を始点とし、車両20がそのカーブを所定量だけ曲がった位置を終点とする走行軌跡を取得するためのフラグである。また、ヨーレートフラグがオンの場合に取得された絶対位置からなる走行軌跡と、相対位置からなる走行軌跡とを用いて、軌跡照合部106は軌跡照合処理を行う。
【0040】
ステップS201において、軌跡照合部106は、ヨーレートフラグの判定を行う。すなわち、軌跡照合部106は、ヨーレートフラグの状態に基づいて条件分岐を行う。そして、ヨーレートフラグがオフの場合には、ステップS202に進み、ヨーレートフラグがオンの場合には、ステップS204に進む。
【0041】
ステップS202において、軌跡照合部106は、角速度センサ101により計測されたヨーレートの判定を行う。すなわち、軌跡照合部106は、現在のヨーレートの値に基づいて条件分岐を行う。そして、ヨーレートが閾値未満の場合には、ステップS203に進み、軌跡照合部106は、ヨーレートフラグをオンにする。一方、ヨーレートが閾値以上の場合には、何もせず照合開始判定処理を終了する。なお、ステップS202で用いるヨーレートの閾値として、車両20が直進していることが判定できるレベルを各種の実験データを用いて設定する。例えば0.1乃至0.15(rad/s)程度の値を用いることができる。
【0042】
ステップS204において、軌跡照合部106は、角速度センサ101により計測されたヨーレートの時間積分を行う。すなわち、軌跡照合部106は、車両20のヨー角変化の累積値を求める。このように、ヨーレートの時間積分を行うことにより、ヨーレートフラグがオンされてから車両20がどの程度曲がったかを判定することが可能となる。なお、車両20が左右方向の一方に曲がることも想定されるが、車両20がS字に曲がることも想定される。また、車両20がS字に曲がった場合の軌跡についても軌跡照合処理に用いることができるため、ヨーレートの絶対値を積分して用いるようにする。
【0043】
ステップS205において、軌跡照合部106は、ステップS204での演算結果である積分値を判定する。すなわち、軌跡照合部106は、積分値に基づいて条件分岐を行う。そして、積分値が閾値以上である場合には、ステップS206に進む。一方、積分値が閾値未満である場合には、何もせず照合開始判定処理を終了する。なお、ステップS205で用いる積分値の閾値として、軌跡照合処理におけるマッチング精度を高めることが可能なレベルを各種の実験データを用いて設定する。例えばπ/2(rad)程度の値を用いることができる。なお、ステップS205で用いる積分値の閾値を大きな値とした場合には、マッチング精度を高めることができるが、軌跡照合処理の頻度は減少する。一方、ステップS205で用いる積分値の閾値を小さな値とした場合には、マッチング精度は低下するが、軌跡照合処理の頻度を増加させることができる。
【0044】
ステップS206において、軌跡照合部106は、軌跡照合処理を実行する。すなわち、
図2A、
図2B、
図3を参照して説明した軌跡照合処理が実行される。
【0045】
ステップS207において、軌跡照合部106は、ヨーレートフラグをオフにする。
【0046】
このように、本実施形態では、特徴的な軌跡、例えば車両20が交差点やカーブを曲がるときの軌跡が現れる度に軌跡照合処理を実施する。これにより、軌跡のマッチングの誤差等によって時刻差の推定に失敗しても、その後にマッチングしやすい軌跡が現れた時点で正しい時刻差を推定できる。また、安定して推定された時刻差を採用することができる。
【0047】
[相対位置の選択処理例]
図5は、時刻差算出部109による時刻差算出処理における相対位置の点の選択処理の一例を示す図である。具体的には、
図5には、絶対位置の点GTiと、点GTiから半径R1内に存在する相対位置の点VTi1乃至VTi5との関係を模式的に示す。なお、
図5では、半径R1の円R2を点線で示す。また、相対位置の点VTi1乃至VTi5に関連付けられている通過時刻のうち、点VTi1に関連付けられている通過時刻が最も古い時刻であり、点VTi5に関連付けられている通過時刻が最も新しい時刻であるものとする。
【0048】
なお、絶対位置の点GTiは、上述した軌跡照合処理によりマッチングされた2つの軌跡のうち、複数の絶対位置からなる軌跡に含まれる。また、相対位置の点VTi1乃至VTi5は、上述した軌跡照合処理によりマッチングされた2つの軌跡のうち、複数の相対位置からなる軌跡に含まれる。なお、
図5については、
図6を参照して詳細に説明する。
【0049】
[時刻差算出処理例]
図6は、時刻差算出部109による時刻差算出処理の処理手順の一例を示すフローチャートである。なお、この処理手順は、記憶装置(図示省略)に記憶されているプログラムに基づいて実行される。また、時刻差算出処理の対象となる2つの軌跡は、上述した軌跡照合処理によりマッチングされた後の軌跡である。
【0050】
図6では、絶対位置点群に含まれる各点についてステップS502からS505の処理を繰り返す。すなわち、絶対位置点群に含まれる各点から1つの点が順次選択され、その選択された点についてステップS502からS505の処理を繰り返す。なお、絶対位置点群は、上述した軌跡照合処理によりマッチングされた2つの軌跡のうち、複数の絶対位置からなる軌跡における各絶対位置を意味する。
【0051】
例えば、
図3に示す例では、GT1乃至GT3のそれぞれについてステップS501からS505の処理を繰り返す。なお、
図6では、絶対位置点群に含まれる各点のうち、ステップS502からS505の処理の対象となる点を対象点と称して説明する。
【0052】
ステップS501では、絶対位置点群のうちの未選択の1つの点を対象点として選択する。
【0053】
ステップS502において、時刻差算出部109は、絶対位置の対象点から所定範囲内にある相対位置の点(対応点群)を選択して対応付ける。例えば、
図5では、絶対位置の対象点GTiから半径R1の円R2を所定範囲とする例を示す。すなわち、
図5に示す例では、絶対位置の対象点GTiから半径R1内に存在する相対位置の点VTi1乃至VTi5が、絶対位置の対象点GTiに対応した相対位置の点VTi1乃至VTi5として選択される。なお、時刻差算出処理の対象となる2つの軌跡は、上述した軌跡照合処理によりマッチングされている。このため、所定範囲は、数十cm程度、例えば10乃至20cm程度とすることができる。なお、所定範囲は、各種の実験データを用いて設定することができる。このように、ステップS502では、絶対位置の対象点と相対位置の点との対応が特定される。
【0054】
ステップS503において、時刻差算出部109は、ステップS502で選択された相対位置の各点(対応点群)に関連付けられている通過時刻のうち、最も古い時刻と最も新しい時刻とを求める。そして、時刻差算出部109は、最も古い通過時刻と最も新しい通過時刻との差(時刻幅)を求める。上述したように、
図5に示す例では、相対位置の点VTi1乃至VTi5に関連付けられている通過時刻のうち、点VTi1に関連付けられている通過時刻が最も古い時刻であり、点VTi5に関連付けられている通過時刻が最も新しい時刻である。この場合には、時刻差算出部109は、点VTi1に関連付けられている通過時刻と、点VTi5に関連付けられている通過時刻との差(時刻幅)を求める。
【0055】
ステップS504において、時刻差算出部109は、ステップS503で求められた時刻幅が閾値以上であるか否かを判定する。そして、ステップS503で求められた時刻幅が閾値未満である場合には、ステップS505に進む。一方、ステップS503で求められた時刻幅が閾値以上である場合には、何もせずにステップS506に進む。なお、ステップS504で用いる時刻幅の閾値は、各種の実験データを用いて設定することができる。
【0056】
例えば、車両20が交差点を曲がる場合に、その交差点を歩行者が横断していることも想定される。この場合には、車両20は、その歩行者が横断するまでの間、停止していることになる。このような状況では、その停止中に略同じ位置において、複数の絶対位置と複数の相対位置とが記録されることになる。上述したように、角速度センサや車速センサを用いて取得される相対位置は、GNSSの測位に基づいて取得される絶対位置に比べて多くなる。このため、1つの絶対位置から所定範囲内にある相対位置の数が多くなり、かつ、これらの相対位置の通過時刻の時刻差が大きくなると想定される。このような場合には、絶対位置の測位時刻と、これに対応する相対位置の通過時刻との時刻差として、正確な値を算出することが困難であると想定される。そこで、このような状況で取得された絶対位置とこれに対応する相対位置については、時間差算出に使用しないようにする。
【0057】
ステップS505において、時刻差算出部109は、ステップS502で選択された相対位置の各点(対応点群)の中から絶対位置の対象点に最も近い点を選択し、絶対位置の対象点の測位時刻と相対位置の通過時刻との差を算出する。例えば、
図5に示す例では、相対位置の点VTi1乃至VTi5のうち、絶対位置の対象点GTiに最も近い点は、点VTi3である。このため、時刻差算出部109は、絶対位置の対象点GTiに関連付けられている測位時刻と、相対位置の点VTi3に関連付けられている通過時刻との差を算出する。また、時刻差算出部109は、算出された時刻差と絶対位置の対象点GTiとを関連付けて保持する。なお、この例では、絶対位置の対象点に最も近い相対位置の通過時刻を用いて時刻差を算出する例を示すが、他の演算方法により時刻差を算出するようにしてもよい。例えば、ステップS502で選択された相対位置の各点の通過時刻の平均値を算出し、この平均値と、絶対位置の対象点の測位時刻との差を時刻差として算出するようにしてもよい。このように、ステップS505では、対応する絶対位置の対象点の測位時刻と相対位置の通過時刻との時刻差が算出される。
【0058】
ステップS506において、絶対位置点群に含まれる全ての点について、ステップS502からS505の処理が終了しているか否か、すなわち絶対位置点群に含まれる全ての点がステップS501で対象点として選択済であるか否かを判定して、絶対位置点群に含まれる全ての点がステップS501で対象点として選択済である場合には、ステップS507に進む。一方、絶対位置点群に含まれる全ての点がステップS501で対象点として選択済でない場合は、ステップS501に戻って未選択の点を対象点として選択し、ステップS502からステップS505の処理を行う。
【0059】
ステップS507において、時刻差算出部109は、ステップS505で絶対位置の対象点毎に求められた時刻差の平均を算出する。このように算出された平均値が、上述した軌跡照合処理によりマッチングされた2つの軌跡の時刻差の推定値とされる。すなわち、複数の絶対位置からなる軌跡と、複数の相対位置からなる軌跡との時刻差の推定値とされる。なお、ステップS503で求められた時刻幅が閾値以上となった絶対位置の対象点については、ステップS505で時刻差が算出されないため、ステップS507での平均値の算出に用いられない。
【0060】
このように、ステップS507において、ステップS505で絶対位置毎に算出された時刻差を用いて、上述した軌跡照合処理によりマッチングされた2つの軌跡の時刻差を算出する。
【0061】
なお、時刻差算出部109は、軌跡照合部106による照合開始判定処理で照合開始と判定される度に
図6に示す時刻差算出処理を行い、時刻差を算出する。そして、時刻差算出部109は、前回算出した時刻差と今回算出した時刻差が所定値以上変化している場合には、前回の算出結果が誤りであったとして今回の算出値を最終的に時刻差の推定値とする。この例を
図7に示す。
【0062】
[位置推定処理例]
図7は、位置推定システム100による位置推定処理の処理手順の一例を示すフローチャートである。なお、この処理手順は、記憶装置(図示省略)に記憶されているプログラムに基づいて実行される。
【0063】
ステップS601において、時刻差算出部109は、軌跡照合部106による軌跡照合処理が実行されたか否かを判定する。そして、軌跡照合部106による軌跡照合処理が実行された場合には、ステップS602に進む。一方、軌跡照合部106による軌跡照合処理が実行されていない場合には、ステップS606に進む。
【0064】
ステップS602において、時刻差算出部109は、
図6に示す時刻差算出処理を実行する。
【0065】
ステップS603において、時刻差算出部109は、前回の時刻差算出処理により算出された時刻差と、今回の時刻差算出処理により算出された時刻差とが所定値以上変化したか否かを判定する。そして、前回と今回の時刻差が所定値以上変化した場合には、ステップS605に進む。一方、前回と今回の時刻差が所定値以上変化していない場合には、ステップS604に進む。
【0066】
ステップS604において、時刻差算出部109は、前回の時刻差算出処理により算出された時刻差と、今回の時刻差算出処理により算出された時刻差との何れか一方または双方を、位置推定処理に用いる時刻差として決定する。例えば、前回と今回の時刻差算出処理により算出された2つの時刻差を用いる場合には、これらの平均値を用いることができる。
【0067】
ステップS605において、時刻差算出部109は、今回の時刻差算出処理により算出された時刻差を、位置推定処理に用いる時刻差として決定する。すなわち、前回の時刻差算出処理の算出結果が誤りであったとして今回の算出値を最終的に時刻差の推定値とする。言い換えると、前回と今回の時刻差が閾値よりも大きい場合には、データをリセットにするため、今回の算出値を最終的に時刻差の推定値とする。なお、過去の複数の時刻差算出処理により算出された時刻差の平均値を算出しておき、この平均値と、今回の時刻差算出処理により算出された時刻差とを比較して決定するようにしてもよい。この場合には、過去の平均値と今回の時刻差とが所定値以上変化した場合には、今回の時刻差算出処理の算出結果が誤りであったとして、過去の平均値を用いるようにしてもよい。
【0068】
ステップS606において、位置推定部110は、時刻差算出部109により算出された時刻差を用いて、車両20の現在位置を推定する位置推定処理を行う。なお、位置推定部110による位置推定処理については以下で詳細に説明する。
【0069】
このように、ステップS606では、軌跡照合部106による軌跡照合処理が実行され、ステップS604またはS605で位置推定処理に用いる時刻差が決定された場合には、その時刻差を用いた位置推定処理が行われる。また、軌跡照合部106による軌跡照合処理が実行されていない場合には、直前に決定された最新の時刻差を用いた位置推定処理が行われる。
【0070】
このように、特徴的な軌跡が現れる度に、軌跡照合処理、時刻差算出処理を実施し、過去に推定した時刻差を順次更新する。
【0071】
次に、時刻差算出部109が算出した時刻差を用いて車両20の現在位置を推定する位置推定部110について説明する。
【0072】
位置推定部110はカルマンフィルタを用いて車両20の現在位置を推定する。すなわち、位置推定部110は、カルマンフィルタを用いて、過去の推定値と制御システムへの入力値と観測値とを合成して現在の推定値を算出する。なお、過去の推定値は、位置推定部110により推定された過去の車両20の位置及び姿勢である。また、制御システムへの入力値は、車両20に搭載されている機器により取得可能な車両情報であり、例えば、角速度センサ101により計測されたヨーレートと、車速センサ102により計測された車速である。また、観測値は、絶対位置推定部105により求められた絶対位置である。なお、カルマンフィルタについては、以下の非特許文献2等に開示されている。
【0073】
非特許文献2:足立修一 他、カルマンフィルタの基礎、東京電機大学出版局、2012年。
【0074】
また、位置推定部110による位置推定処理に用いられる状態方程式は、以下に示す式1で表される。状態ベクトルは、現在位置(x、y)と姿勢角(θ)を表す(x、y、θ)Tであり、制御入力ベクトルは、車速vとヨーレートψからなる(v、ψ)Tである。なお、上付きのTは行列の転置を表す。
【0075】
x=x+vΔTcosθ
y=y+vΔTsinθ
θ=θ+φΔT …式1
【0076】
位置推定部110は、カルマンフィルタを用いて、上述した式1に基づいて現在時刻の車両20の位置及び姿勢を予測する。また、位置推定部110は、カルマンフィルタを用いて、その予測値を修正するために、絶対位置推定部105で算出された絶対位置(xg、yg)Tを観測して、その観測値にその予測値を近づけるように修正する。
【0077】
このように修正する場合に、GNSSアンテナ104からのGNSS信号を受け取ってから絶対位置推定部105が絶対位置を算出し、その絶対位置が位置推定部110に伝わるまでに遅延が生じる。このため、位置推定部110が扱う絶対位置は必ず過去のデータとなる。そこで、位置推定部110が受け取った絶対位置がいつの絶対位置かを知るために絶対位置の測位時刻(タイムスタンプ)が必要になる。ただし、同一または略同一の位置であっても、絶対位置の測位時刻と相対位置の通過時刻との間には、時刻差算出部109で算出した時刻差がある。このため、位置推定部110は、位置推定処理を行う前に、時刻差算出部109で算出した時刻差を用いて絶対位置の測位時刻を修正する。すなわち、絶対位置の測位時刻を相対位置の通過時刻に合わせるように、絶対位置の測位時刻のズレを補正する。この補正では、例えば、絶対位置の測位時刻と時刻差算出部109で算出した時刻差とを加算または減算することにより、絶対位置の測位時刻のズレを補正する。または、時刻差算出部109で算出した時刻差に所定の演算、例えば乗算や除算を施した後の値を用いて、絶対位置の測位時刻のズレを補正するようにしてもよい。
【0078】
時刻差算出部109で算出された時刻差を用いて修正された時刻をTとすると、位置推定部110は、式1に基づいて時刻Tの位置及び姿勢を予測する。その上で、位置推定部110は、予測された位置(x、y)Tと、絶対位置推定部105で算出された絶対位置(xg、yg)Tとの差を求め、この差に基づいて予測値をさらに修正する。
【0079】
このように、位置推定部110は、絶対位置推定部105で算出された絶対位置の測位時刻を、時刻差算出部109で算出された時刻差で補正する。そして、位置推定部110は、その測位時刻が補正された絶対位置と、直前に推定された車両20の位置と、車両情報とをカルマンフィルタを用いて合成して車両20の位置を推定する。なお、このように推定された現在位置は、記憶部(図示省略)に保持され、次の位置推定処理に用いられる。
【0080】
[第1実施形態の作用効果]
第1実施形態に係る位置推定方法は、車両情報に基づいて取得された車両20の通過位置(相対位置)とその通過位置の車両20の通過時刻とを関連付けて記憶する第1走行軌跡記憶部107(第1記憶部の一例)と、測位装置11によって測位された車両20の絶対位置とその絶対位置の測位時刻とを関連付けて記憶する第2走行軌跡記憶部108(第2記憶部の一例)とを備える車両20の位置を推定する位置推定方法である。この位置推定方法は、複数の通過位置からなる第1走行軌跡と、複数の絶対位置からなる第2走行軌跡とを比較して、第1走行軌跡における通過位置と第2走行軌跡における絶対位置との対応を特定し、その対応する通過位置の通過時刻と絶対位置の測位時刻との時刻差を算出する時刻差算出ステップ(ステップS602)と、絶対位置と車両情報と算出された時刻差とに基づいて車両20の位置を推定する位置推定ステップ(ステップS606)と、を含む。
【0081】
このような位置推定方法によれば、第1走行軌跡及び第2走行軌跡における多数の対応点から時刻差を推定することができるため、安定した時刻差の推定ができる。また、そのように求められた時刻差を用いて車両20の現在位置を推定するため、位置推定精度を向上させることができる。
【0082】
また、第1実施形態に係る位置推定方法では、位置推定ステップ(ステップS606)は、絶対位置の測位時刻を、ステップS602で算出された時刻差で補正し、その測位時刻が補正された絶対位置と、直前に推定された車両20の位置と、車両情報とをカルマンフィルタを用いて合成して車両20の位置を推定する。
【0083】
このような位置推定方法によれば、求められた時刻差を用いて絶対位置の測位時刻を補正し、その測位時刻の補正後の絶対位置を用いて車両20の現在位置を推定するため、位置推定精度を向上させることができる。
【0084】
また、第1実施形態に係る位置推定方法では、時刻差算出ステップ(ステップS602)は、第2走行軌跡における絶対位置の測位時刻と、第1走行軌跡における当該絶対位置に対応する通過位置の通過時刻との差分値に基づいて時刻差を算出する。
【0085】
このような位置推定方法によれば、第1走行軌跡及び第2走行軌跡における多数の対応点から時刻差を推定することができるため、安定した時刻差の推定ができる。
【0086】
また、第1実施形態に係る位置推定方法では、時刻差算出ステップ(ステップS602)は、第2走行軌跡における各絶対位置について、その絶対位置から所定範囲に存在する第1走行軌跡における通過位置を、その絶対位置に対応する通過位置として選択し、その絶対位置の測位時刻とその選択された通過位置の通過時刻との差分値を算出し、その算出された各差分値に基づいて時刻差を算出する。
【0087】
このような位置推定方法によれば、第1走行軌跡及び第2走行軌跡における多数の対応点から時刻差を推定することができるため、安定した時刻差の推定ができる。
【0088】
また、第1実施形態に係る位置推定方法では、時刻差算出ステップ(ステップS602)は、選択された通過位置の通過時刻のうち最も古い時刻と最も新しい時刻との差分値が閾値を基準として大きい場合には、その選択された通過位置を時刻差の算出に用いない。なお、閾値を基準として大きい場合とは、閾値以上の場合と、閾値よりも大きい場合との双方の意味を含むものとする。また、閾値を基準として小さい場合とは、閾値以下の場合と、閾値未満の場合との双方の意味を含むものとする。ただし、閾値を基準として大きい場合が閾値以上を意味するときには、閾値を基準として小さい場合は閾値未満を意味するものとする。一方、閾値を基準として大きい場合が閾値よりも大きい場合を意味するときには、閾値を基準として小さい場合は閾値以下を意味するものとする。
【0089】
このような位置推定方法によれば、曖昧性を排除することで時刻差の推定精度を向上させることができる。
【0090】
また、第1実施形態に係る位置推定方法では、第2走行軌跡における各絶対位置について、第2走行軌跡における絶対位置と第1走行軌跡における当該絶対位置に対応する通過位置との対応をとり、その絶対位置及びその通過位置間の距離を最小化する処理を行うことにより第1走行軌跡と第2走行軌跡とをマッチングさせる軌跡照合ステップ(ステップ206)をさらに含む。また、時刻差算出ステップ(ステップS602)では、そのマッチング後の第1走行軌跡と第2走行軌跡とを比較して時刻差を算出する。
【0091】
ここで、一般にGNSSの観測周期は長く、点が疎であるのに対して、オドメトリの観測周期は短く、点が密である。すなわち、第2走行軌跡に含まれる絶対位置は、点が疎であるのに対し、第1走行軌跡に含まれる通過位置は、点が密である。そこで、このような位置推定方法によれば、第2走行軌跡に含まれる絶対位置の全てについて、第1走行軌跡に含まれる適切な対応点を得ることができるため、マッチングの精度を向上させることができる。これにより、時刻差推定精度を向上させることができる。
【0092】
また、第1実施形態に係る位置推定方法では、軌跡照合ステップ(ステップ206)は、車両20がカーブを曲がり始める前の位置を始点とし、車両20がカーブを所定量だけ曲がった位置を終点とする第1走行軌跡及び第2走行軌跡を用いてマッチングを実行する。
【0093】
このような位置推定方法によれば、幾何学的にマッチングしやすい特徴的な走行軌跡を用いることができるため、マッチングの精度を向上させることができ、時刻差推定精度を向上させることができる。
【0094】
また、第1実施形態に係る位置推定方法では、軌跡照合ステップ(ステップ206)は、車両20のヨーレートが略ゼロとなる位置を車両20がカーブを曲がり始める前の位置とし、そのヨーレートが略ゼロとなった後に車両20のヨー角変化の累積が所定値を基準として大きくなった位置を車両20がカーブを所定量だけ曲がった位置とする。
【0095】
このような位置推定方法によれば、車両20のヨーレートを考慮したカーブ区間の抽出を行うことができる。このように抽出された軌跡は、所定量以上の角度変化を含む曲線となるので、マッチング精度を向上させることができる。
【0096】
また、第1実施形態に係る位置推定方法では、時刻差算出ステップ(ステップS602乃至S605)は、マッチングが行われる毎に時刻差を算出し、第1の時刻差と、第1の時刻差の算出後に新たに算出された第2の時刻差とを比較し、第1の時刻差と第2の時刻差との差分値が所定範囲内にある場合には、第1の時刻差及び第2の時刻差の何れか一方または双方を車両20の位置を推定する値として用いる決定をし、一方、第1の時刻差と第2の時刻差との差分値が所定範囲内にない場合には、第2の時刻差を車両20の位置を推定する値として用いる決定をする。
【0097】
このような位置推定方法によれば、軌跡のマッチングの誤差等によって時刻差の推定に失敗しても、適切な時刻差を用いることができ、マッチングしやすい軌跡が現れた時点で正しい時刻差を推定できる。また、安定して推定された時刻差のみを採用することができる。
【0098】
第1実施形態に係る位置推定システム100は、車両20の位置を推定するコントローラ10を備える位置推定システムである。コントローラ10は、車両情報に基づいて取得された車両20の通過位置とその通過位置の車両20の通過時刻とを関連付けて記憶する第1走行軌跡記憶部107(第1記憶部の一例)と、測位装置11によって測位された車両20の絶対位置とその絶対位置の測位時刻とを関連付けて記憶する第2走行軌跡記憶部108(第2記憶部の一例)と、複数の通過位置からなる第1走行軌跡と、複数の絶対位置からなる第2走行軌跡とを比較して、第1走行軌跡における通過位置と第2走行軌跡における絶対位置との対応を特定し、その対応する通過位置の通過時刻と絶対位置の測位時刻との時刻差を算出する時刻差算出部109と、絶対位置と車両情報と算出された時刻差とに基づいて車両20の位置を推定する位置推定部110と、を備える。
【0099】
このような位置推定システム100によれば、第1走行軌跡及び第2走行軌跡における多数の対応点から時刻差を推定することができるため、安定した時刻差の推定ができる。また、そのように求められた時刻差を用いて車両20の位置を推定するため、位置推定精度を向上させることができる。
【0100】
[第2実施形態]
第1実施形態では、絶対位置の対象点から所定範囲内に存在する相対位置の各点に関連付けられている通過時刻のうち最も古い時刻と最も新しい時刻との差(時刻幅)を用いて時刻差算出処理を行う例を示した。ただし、他の判定基準を用いて時刻差算出処理を行うようにしてもよい。そこで、第2実施形態では、絶対位置の対象点から所定範囲内に存在する相対位置の点の個数を用いて時刻差算出処理を行う例を示す。なお、第2実施形態は、第1実施形態の一部を変形した例であり、第1実施形態と共通する部分については、図示及びその説明の一部を省略する。
【0101】
[時刻差算出処理例]
図8は、第2実施形態における時刻差算出部109による時刻差算出処理の処理手順の一例を示すフローチャートである。なお、
図8に示す例は、
図6の一部を変形したものであり、
図6と共通する部分については、同一の符号を付してその説明の一部を省略する。具体的には、
図8では、
図6に示すステップS503、S504の代わりに、ステップS511の処理を行う点が異なる。
【0102】
ステップS511において、時刻差算出部109は、ステップS502で選択された相対位置の点(対応点群に含まれる点)の個数を判定する。そして、ステップS502で選択された相対位置の点の個数が1である場合には、ステップS505に進む。一方、ステップS502で選択された相対位置の点の個数が2以上である場合には、ステップS506に進む。
【0103】
例えば、
図5に示す例では、絶対位置の対象点GTiから半径R1内に存在する相対位置の点は、点VTi1乃至VTi5であるため、ステップS502で選択された相対位置の点の個数は5となる。この場合には、他の絶対位置を対象点として、次のループを繰り返す。
【0104】
ステップS505において、時刻差算出部109は、ステップS502で選択された相対位置の点の通過時刻と、絶対位置の点の測位時刻との差を求める。すなわち、
図8に示す例では、ステップS502で選択された相対位置の点の個数が1である場合にのみ、ステップS505の処理が実行されるため、その相対位置の通過時刻が時刻差の算出対象となる。
【0105】
このように、ステップS502で選択された相対位置の点の個数が2以上である場合には、その相対位置の通過時刻を時刻差の算出に用いない。なお、相対位置の点の個数が2以上と判定されることを少なくするため、ステップS502で用いられる所定範囲の値を小さく設定するようにしてもよい。
【0106】
なお、
図8に示す例では、ステップS502で選択された相対位置の点の個数が1であるか否かに基づいて、ステップS505の処理を実行するか否かを判定する例を示したが、他の判定基準を用いてもよい。例えば、ステップS502で選択された相対位置の点の個数が所定の数、例えば2以下であるか否かに基づいて、ステップS505の処理を実行するか否かを判定してもよい。
【0107】
[第2実施形態の作用効果]
第2実施形態に係る位置推定方法は、時刻差算出ステップ(S501、S502、S505乃至S507、S511)は、ステップS502で選択された通過位置の数が閾値を基準として大きい場合には、その選択された通過位置を時刻差の算出に用いない。
【0108】
このような位置推定方法によれば、曖昧性を排除することで時刻差の推定精度を向上させることができる。
【0109】
[第3実施形態]
第1実施形態では、
図4に示す照合開始判定処理において、角速度センサ101により計測されたヨーレートの時間積分が閾値以上であるか否かに基づいて軌跡照合処理を実行するか否かを判定する例を示した。この例では、車両がカーブを曲がり始める前の位置から、そのカーブを所定角以上曲がった位置までの区間の軌跡を用いて軌跡照合処理を実行することができる。ただし、車両がカーブを曲がり始める前から、そのカーブを曲がり終わった後までの区間の軌跡を用いることにより軌跡照合処理の精度を高めることができると想定される。そこで、第3実施形態では、軌跡照合処理の精度を高めるため、さらに特徴的な軌跡を抽出する例を示す。なお、第3実施形態は、第1実施形態の一部を変形した例であり、第1実施形態と共通する部分については、図示及びその説明の一部を省略する。
【0110】
[照合開始判定処理例]
図9は、第3実施形態における軌跡照合部106による照合開始判定処理の処理手順の一例を示すフローチャートである。なお、
図9に示す例は、
図4の一部を変形したものであり、
図4と共通する部分については、同一の符号を付してその説明の一部を省略する。具体的には、
図9では、
図4に示すステップS205の処理後にステップS211を追加した点が異なる。なお、
図9では、車両20がカーブを曲がり始める前の位置を始点とし、車両20がカーブを曲がり終わった後の位置を終点とする走行軌跡を用いて軌跡照合処理を実行する場合の例を示す。
【0111】
ステップS205において、積分値が閾値以上、例えばπ/2(rad)以上である場合には、ステップS211に進む。
【0112】
ステップS211において、軌跡照合部106は、角速度センサ101により計測されたヨーレートの判定を行う。すなわち、軌跡照合部106は、現在のヨーレートの値に基づいて条件分岐を行う。そして、ヨーレートが閾値未満、例えば0.1(rad/s)未満の場合には、ステップS206に進む。一方、ヨーレートが閾値以上の場合には、何もせず照合開始判定処理を終了する。
【0113】
このように、ステップS202、S203の処理によりカーブに入る直前の直線の位置が検出され、ステップS205、S211の処理によりカーブが終わってから直線になった位置を検出することができる。これにより、車両がカーブを曲がり始める前からそのカーブを曲がり終わった後までの区間を適切に検出することができるため、その区間における軌跡を用いた軌跡照合処理を行うことができる。このため、軌跡照合処理の精度を向上させることができる。
【0114】
[第3実施形態の作用効果]
第3実施形態に係る位置推定方法は、軌跡照合ステップ(ステップS206)では、車両20がカーブを曲がり始める前の位置を始点とし、車両20がカーブを曲がり終わった後の位置を終点とする第1走行軌跡及び第2走行軌跡を用いてマッチングを実行する。
【0115】
このような位置推定方法によれば、幾何学的にマッチングしやすい特徴的な走行軌跡を用いることができるため、マッチングの精度を向上させることができ、時刻差推定精度を向上させることができる。
【0116】
また、第3実施形態に係る位置推定方法では、軌跡照合ステップ(ステップS206)では、車両20のヨーレートが略ゼロとなる位置を車両20がカーブを曲がり始める前の位置とし、そのヨーレートが略ゼロとなった後に車両20のヨー角変化の累積が所定値を基準として大きくなり、かつ、車両20のヨーレートが再度略ゼロとなる位置を車両20がカーブを曲がり終わった後の位置とする。
【0117】
このような位置推定方法によれば、車両20のヨーレートを考慮したカーブ区間の抽出を行うことができる。このように抽出された軌跡は、所定量以上の角度変化を含みつつ、その両端が直線となる走行軌跡となるので、マッチング精度を向上させることができる。
【0118】
なお、第1乃至第3実施形態で示した各処理は、各処理手順をコンピュータに実行させるためのプログラムに基づいて実行されるものである。このため、第1乃至第3実施形態は、それらの各処理を実行する機能を実現するプログラム、そのプログラムを記憶する記録媒体の実施形態としても把握することができる。例えば、そのプログラムについては、車両に新機能を追加する際にアップデートにより車両の記憶装置に記憶させることができる。このアップデートは、例えば、車両の定期点検時等に行うことができる。また、ワイヤレス通信によりそのプログラムをアップデートするようにしてもよい。
【0119】
以上、本発明の実施形態について説明したが、上記実施形態は本発明の適用例の一部を示したに過ぎず、本発明の技術的範囲を上記実施形態の具体的構成に限定する趣旨ではない。
【符号の説明】
【0120】
10 コントローラ
11 測位装置
20 車両
100 位置推定システム
101 角速度センサ
102 車速センサ
103 相対位置推定部
104 GNSSアンテナ
105 絶対位置推定部
106 軌跡照合部
107 第1走行軌跡記憶部
108 第2走行軌跡記憶部
109 時刻差算出部
110 位置推定部