以下、本実施の形態について図面を参照しながら説明する。なお、機能が同じ構成要素及び処理には、全図面を通して同じ符合を付与し、重複する説明を省略する。
<第1実施形態>
道路地図は、例えば走行車線数、走行車線の幅や曲がり具合といった走行車線の形状、車線同士の接続状況、停止線の位置、最高速度や駐停車禁止区間等の規制情報、及び進行可能方向を表す遷移情報等の走路情報を用いて、図1に示すような道路を表現する。
こうした道路地図は人間が目視で現地を調査したり、測量装置を用いたりして作成することも可能である。しかし、費用と時間がかかることから、カメラ、レーダ装置、加速度センサ、ヨーレートセンサ、車輪速センサ、及びGPSセンサといった走路情報を収集することのできる各種計測装置を車両に搭載し、当該車両が地図化したい道路を走行することで、各種計測装置の出力値の集合である走行データを取得し、取得した走行データから道路地図を作成する手法がとられることがある。
この場合、上述したように道路地図の精度を高めるため、同じ車両が同じ道路を複数回走行するか、又は複数の車両が同じ道路を少なくとも1回走行することで、同じ道路に対して複数の走行データを取得する。
そして、同じ道路を走行した際に得られた複数の走行データは車両軌跡補正装置1に入力され、車両軌跡補正装置1で各々の走行データに含まれる車両の走行軌跡の位置ずれ量が算出される。車両軌跡補正装置1で算出された位置ずれ量及び複数の走行データは、例えば走行データから道路地図を生成する道路地図生成装置に入力される。道路地図生成装置では、車両軌跡補正装置1で算出された位置ずれ量に従って各々の走行軌跡を一致させた上で、走行軌跡を基準にして走行データから走路情報を抽出し、道路地図を生成する。
図2は、車両軌跡補正装置1における機能ブロックの一例を示す構成図である。図2に示すように、車両軌跡補正装置1は、走行軌跡受付部10、画像生成部15、画像分割部20、コストマップ算出部25、及び位置ずれ量算出部30を備える。
走行軌跡受付部10は、車両が予め定めた範囲内の同じ経路を走行した際に収集した複数の走行軌跡を受け付ける。車両軌跡補正装置1は、例えば無線回線を介して道路を走行する車両からリアルタイムに走行軌跡を受け付けてもよいし、車両の走行が終わった後に、走行データを記憶する記憶装置から走行軌跡を受け付けてもよい。
走行軌跡は、例えばGPSセンサから得られる緯度情報及び経度情報の組み合わせからなる点列によって表される。
画像生成部15は、走行軌跡受付部10で受け付けた複数の走行軌跡を取得し、各々の走行軌跡を表す走行軌跡画像を生成する。この場合、画像生成部15は、走行軌跡の隣り合う軌跡点を公知の補間手法を用いて補間することで走行軌跡を線分で表し、走行軌跡を表す走行軌跡画像を生成する。各々の走行軌跡から走行軌跡画像に生成する画像生成部15は、生成手段の一例である。
画像分割部20は、画像生成部15で生成された走行軌跡画像の各々を複数の小領域に分割する。各々の走行軌跡画像を同じ大きさ、かつ、同じ形状で同じように分割するのであれば分割する形状に制約はなく、小領域の形状は例えば矩形であっても六角形等のその他の形状であってもよい。各々の走行軌跡画像を複数の小領域に分割する画像分割部20は、分割手段の一例である。
コストマップ算出部25は、画像分割部20で分割された小領域毎に、対応する小領域に含まれる走行軌跡のコストマップを算出する。ここで、「対応する小領域」とは、各々の走行軌跡画像を重ね合わせた場合に、同じ場所に位置する小領域同士のことをいう。
小領域毎にコストマップを算出するコストマップ算出部25は、第1の算出手段の一例であり、走行軌跡同士のマッチングコストを示すコストマップは、走行軌跡の不一致度合いを表す位置ずれ指標の一例である。なお、走行軌跡の不一致度合いはコストマップ以外の指標で表してもよいが、本実施形態では、コストマップを用いて走行軌跡の不一致度合いを表す例について説明する。
位置ずれ量算出部30は、コストマップ算出部25で算出された小領域毎のコストマップを統合して、各々のコストマップから各々の走行軌跡画像に含まれる各走行軌跡全体の位置ずれ量(ΔX,ΔY)を算出する。そして、位置ずれ量算出部30は、算出した位置ずれ量(ΔX,ΔY)を出力する。ここで、「コストマップを統合する」とは、各々のコストマップの各軸及び原点が一致するように複数のコストマップを重ね合わせることをいう。
このように小領域毎のコストマップから、小領域に分割する前の走行軌跡画像に含まれる各走行軌跡全体の位置ずれ量を算出する位置ずれ量算出部30は、第2の算出手段の一例である。
上述した車両軌跡補正装置1は、コンピュータを用いて構成される。図3は、コンピュータを用いて構成された車両軌跡補正装置1における電気系統の要部構成例を示す図である。
コンピュータ40は、CPU(Central Processing Unit)41、ROM(Read Only Memory)42、RAM(Random Access Memory)43、不揮発性メモリ44、及び入出力インターフェース(I/O)45を備える。そして、CPU41、ROM42、RAM43、不揮発性メモリ44、及びI/O45がバス46を介して各々接続されている。なお、コンピュータ40で用いられるオペレーションシステムに制限はなく、また、必ずしもオペレーションシステムを用いる必要もない。
ROM42には、例えばCPU41によって実行されるプログラムが記憶され、RAM43は、CPU41の処理の過程で生成されるデータを一時的に記憶するワークエリアとして活用される。
不揮発性メモリ44は、不揮発性メモリ44に供給される電力を遮断しても記憶した情報が維持される記憶装置の一例であり、例えば半導体メモリが用いられるがハードディスクを用いてもよい。
I/O45には、例えば入力ユニット47、出力ユニット48、及び通信ユニット49が接続される。
入力ユニット47は、車両軌跡補正装置1に対するユーザの操作を電気信号に変換するユニットであり、例えばキーボード、マウス、ボタン、及びタッチパネル等の少なくとも1つが含まれる。
出力ユニット48は、CPU41によって処理された情報をユーザに通知するユニットであり、例えばスピーカー、液晶ディスプレイ、及び有機EL(Electro Luminescence)ディスプレイ等の少なくとも1つが含まれる。
通信ユニット49は、例えばインターネットやLAN(Local Area Network)等の通信回線を介して、車両や他のコンピュータ等の情報機器とデータ通信を行うための通信プロトコルを備えた通信手段の一例である。通信回線にはUSB(Universal Serial Bus)も含まれる。
なお、I/O45に接続されるユニットは図3に示した各ユニットに限られない。例えば走行軌跡画像を記録媒体に印字するプリンタ等が接続されてもよい。また、入力ユニット47及び出力ユニット48は必ずしも車両軌跡補正装置1に必要なユニットではない。
次に、図4を用いて、各々の走行軌跡画像に含まれる走行軌跡が最も一致する地点に対する走行軌跡の位置ずれ量を算出する位置ずれ量算出処理について説明する。
図4は、例えば車両軌跡補正装置1が走行軌跡を受け付けた場合に、CPU41によって実行される位置ずれ量算出処理の流れの一例を示すフローチャートである。
位置ずれ量算出処理を規定する位置ずれ量算出プログラムは、例えば車両軌跡補正装置1のROM42に予め記憶されている。車両軌跡補正装置1のCPU41は、ROM42に記憶される位置ずれ量算出プログラムを読み込んで位置ずれ量算出処理を実行する。
まず、ステップS10において、CPU41は、通信ユニット49を介して、車両が予め定めた範囲内の同じ経路を走行した際に収集した複数の走行データからそれぞれ走行軌跡5を取得する。I/O45にメモリカードリーダーが接続されている場合、CPU41は、メモリカードを介して走行軌跡5を取得してもよい。
ステップS20において、CPU41は、ステップS10で取得した各々の走行軌跡5の走行軌跡画像7を生成する。
ステップS30において、CPU41は、ステップS20で生成した走行軌跡画像7の各々を複数の小領域6に分割する。
図5は、走行軌跡画像7を複数の小領域6に分割した分割例を示す図である。図5では、走行軌跡画像7を同じ大きさの矩形で分割した例を示している。分割された複数の小領域6のうち、網掛けを行った小領域6に走行軌跡5が含まれている。
分割する小領域6の大きさに制限はないが、後述するステップS60でのコストマップの算出や、ステップS90での位置ずれ量の算出を実施する場合、小領域6の大きさが大きくなるに従って、CPU41の演算量及び演算に必要なRAM43の容量が増加する。したがって、CPU41は、自身の処理能力及び実装されているRAM43の容量といった計算リソースに応じて、小領域6の大きさを設定すればよい。分割する小領域6の大きさは、車両軌跡補正装置1の実機による実験や車両軌跡補正装置1の設計仕様に基づくコンピュータシミュレーション等により予め求められ、例えば不揮発性メモリ44に予め記憶される。
ステップS40において、CPU41は、それぞれの走行軌跡画像7から、走行軌跡5を含んだ対応する小領域6を1つずつ選択する。
ステップS50において、CPU41は、ステップS40で選択した対応する小領域6の各々に対して、図23に示したような距離変換画像8を生成する。
ステップS60において、CPU41は対応する小領域6の距離変換画像8の各々を重ね合わせ、基準となる走行軌跡画像7の小領域6に対して、図6に示すように他の対応する小領域6をX軸方向及びY軸方向に移動させながら、各移動量における走行軌跡5のマッチングコストを計算して、対応する小領域6のコストマップ9を算出する。基準となる走行軌跡画像7は、複数の走行軌跡画像7のうちどの走行軌跡画像7を選択してもよい。
なお、図6の例では、小領域6Aに対して小領域6Bを移動させながら、小領域6Aに含まれる走行軌跡5Aと、小領域6Bに含まれる走行軌跡5Bのマッチングコストを計算してコストマップ9を算出している様子を示している。
ステップS70において、CPU41は、走行軌跡画像7から走行軌跡5が含まれる小領域6を全て選択したか否かを判定する。未選択の小領域6がある場合にはステップS40に移行し、それぞれの走行軌跡画像7から、走行軌跡5を含んだ未選択の対応する小領域6を1つずつ選択する処理を行う。ステップS40で、走行軌跡5を含んだ全ての対応する小領域6がそれぞれの走行軌跡画像7から選択されるまでステップS40~S70を繰り返し実行することで、対応する小領域6毎のコストマップ9が算出される。
一方、走行軌跡画像7から走行軌跡5が含まれる小領域6が全て選択された場合には、ステップS80に移行する。
ステップS80において、CPU41は、ステップS60で算出した対応する小領域6毎のコストマップ9を全て統合する。
ステップS90において、CPU41は、ステップS80で統合した各々のコストマップ9から各々の走行軌跡画像7に含まれる各走行軌跡5全体の位置ずれ量(ΔX,ΔY)を算出する。具体的には、CPU41は、各々のコストマップ9において、マッチングコストが最小となる領域が最も多く重なり合う地点の位置ずれ量(ΔX,ΔY)を、各々の走行軌跡画像7に含まれる各走行軌跡5全体の位置ずれ量(ΔX,ΔY)として算出する。
図7は位置ずれ量(ΔX,ΔY)の算出例の様子を示す図である。図7では、例えば3つのコストマップ9A、9B、9Cが統合されており、各々のコストマップ9A、9B、9Cにおいてマッチングコストが最小となる領域が、それぞれ線分4A、線分4B、線分4Cで表されているものとする。この場合、基準となる走行軌跡画像7を固定した上で、線分4A、線分4B、線分4Cの交点Pで表される移動量(ΔxP,ΔyP)だけ他の走行軌跡画像7を移動させることで、ステップS10で取得した複数の走行軌跡5が最も一致した状態となる。したがって、CPU41は、交点Pで表される移動量(ΔxP,ΔyP)を、各走行軌跡5の位置ずれ量(ΔX,ΔY)とする。
図7の例では、マッチングコストが最小となる領域が線分によって表されているが、2次元的な広がりを持つ分布として表されることもある。この場合、各々の分布が最も重なり合う位置における移動量(Δx,Δy)を、各走行軌跡5の位置ずれ量(ΔX,ΔY)とすればよい。
各々のコストマップ9においてマッチングコストが最小となる領域がそれぞれ座標点として表されるならば、小領域6毎のコストマップ9を統合することなく、例えば各座標点を頂点とする領域の重心点を算出し、当該重心点を各走行軌跡5の位置ずれ量とするように、数値演算によって各走行軌跡5の位置ずれ量が取得できる。しかしながら、複数の道路が交わっていない部分(以降、「単路部」という)では車両の右折又は左折が行われず、走行軌跡5が直線又はなだらかな曲線として表されるため、走行軌跡5の位置を特定するための特徴となる特徴点が少なく、マッチングコストが最小となる領域が座標点として表されないことが多い。したがって、ステップS80で各々の小領域6毎のコストマップ9を統合して、マッチングコストが最小となる領域の重なり度合いから各走行軌跡5の位置ずれ量を算出している。
なお、CPU41は、小領域6毎のコストマップ9を統合する際、各々のコストマップ9をそのまま統合してもよいが、コストマップ9の算出に用いられた小領域6内の走行軌跡5の長さに応じて重み付けを行った各コストマップ9を統合してもよい。
小領域6に含まれる走行軌跡5の長さが短くなる程、走行軌跡5の位置を特定するための特徴となる特徴点が少なくなる傾向があるため、走行軌跡5のマッチングコストに誤差が含まれやすくなり、コストマップ9の信頼度が低くなる場合がある。
したがって、コストマップ9の算出に用いられた小領域6内の走行軌跡5の長さが短い程、位置ずれ量の算出の際に、当該コストマップ9を考慮する度合い、すなわち「重み」を低く設定すればよい。
また、ステップS40では、それぞれの走行軌跡画像7から、走行軌跡5を含んだ対応する小領域6を1つずつ選択したが、走行軌跡5の有無に関係なく、走行軌跡画像7に含まれる全ての対応する小領域6を選択するようにしてもよい。CPU41は、走行軌跡5が含まれない小領域6の距離変換画像8に対して、走行軌跡5が含まれる小領域6の距離変換画像8では設定されないような特定値を全ての画素の画素値に設定する。そして、CPU41は、全ての画素の画素値が当該特定値に設定された距離変換画像8をコストマップの算出に用いないようにすればよい。
また、図4に示した位置ずれ量算出処理では、生成した走行軌跡画像7を複数の小領域6に分割し、対応する小領域6毎のコストマップ9を統合することで、各走行軌跡5全体の位置ずれ量を算出した。
しかしながら、走行軌跡画像7を生成する前に、プロセッサの処理能力やメモリ容量といった画像処理に要する計算リソースが不足しない程度の大きさを有する、各走行軌跡5全体の位置ずれ量の算出に用いる領域を予め設定し、設定した領域(小領域6に相当)に対してのみ走行軌跡画像7を生成するようにしてもよい。
この場合、小領域6に対してのみ走行軌跡画像7が生成されるため、車両が走行した範囲全体の走行軌跡画像7を生成する場合と比較して、走行軌跡の位置ずれ量が算出されるまでの時間を短縮することができる。また、車両が走行した範囲全体の走行軌跡画像7を記憶する必要がないため、車両軌跡補正装置1に実装するメモリ量を少なくすることができる。
このように第1実施形態に係る車両軌跡補正装置1によれば、走行軌跡画像7を複数の小領域6に分割して、小領域6の単位でコストマップ9を算出する。そして、車両軌跡補正装置1は、小領域6毎のコストマップ9を統合して、小領域6に分割する前の各々の走行軌跡画像7に含まれる各走行軌跡5全体の位置ずれ量を算出する。
したがって、車両軌跡補正装置1は、走行軌跡画像7を分割せずに走行軌跡5の位置ずれ量を算出する場合よりも少ない計算リソースで、走行軌跡5の位置ずれ量を算出することができる。
<第1実施形態の変形例1>
第1実施形態では、各々の走行軌跡画像7を小領域6に分割し、基準となる走行軌跡画像7の小領域6に対して、他の対応する小領域6をX軸方向及びY軸方向に移動させながら対応する小領域6毎にコストマップ9を算出した。
しかしながら、図8に示すように、基準となる走行軌跡画像7は小領域6に分割せず、基準となる走行軌跡画像7以外の走行軌跡画像7のみを小領域6に分割し、分割した対応する小領域6の各々を基準となる走行軌跡画像7上でX軸方向及びY軸方向に移動させることで、対応する小領域6毎にコストマップ9を算出してもよい。
この場合、全ての走行軌跡画像7を分割する場合と比較して、分割する走行軌跡画像7の枚数が少なくなるため、分割に要する時間を短縮することができると共に、分割した小領域6を記憶する記憶量を減少することができる。
<第1実施形態の変形例2>
車両が道路を走行する場合、単路部では車両は道路上の走行範囲を示す車線境界線に沿って走行するため、比較的走行軌跡のばらつきが抑制される。しかしながら、複数の道路が交差する交差点部分では、交差点内まで車線境界線が表示されていることは少ないため、例えば車両が交差点で右折又は左折した場合の走行軌跡5のばらつきは、単路部における走行軌跡5のばらつきと比較して大きくなる傾向がある。
ばらつきを多く含む走行軌跡5を用いて各走行軌跡5の位置ずれ量を算出した場合、算出した位置ずれ量にも誤差が含まれることになり、走行軌跡5に基づいて走行データから高精度の道路地図を作成することが困難になる。
したがって、車両軌跡補正装置1は、図4のステップS20において、取得した各々の走行軌跡5を表す走行軌跡画像7を生成する際、交差点を走行しているとみなすことができる範囲の走行軌跡5を位置ずれ量の算出に適さない走行軌跡5として走行軌跡5から取り除いてから走行軌跡画像7を生成する。
具体的には、上述したように走行軌跡5は点列で表されることから、車両軌跡補正装置1は、交差点を走行しているとみなすことができる軌跡点を、走行軌跡5を表す点列から取り除いて走行軌跡画像7を生成する。
走行軌跡5を表す点列のうち、何れの軌跡点が交差点を走行している場合の軌跡点に相当するかは、例えばカーナビゲーション装置に備えられた地図情報から交差点の緯度情報及び経度情報を取得して判定することができる。また、軌跡点が得られた際のヨーレートセンサの出力から判定することができる。
すなわち、車両軌跡補正装置1は、位置ずれ量の算出に適した単路部を走行する車両の走行軌跡5のみを用いて、小領域6毎のコストマップ9を算出することになる。
したがって、交差点を走行している軌跡点を含む走行軌跡5の点列を用いて走行軌跡5の位置ずれ量を算出する場合と比較して、走行軌跡5の位置ずれ量を精度よく算出することができる。
<第2実施形態>
第1実施形態に係る車両軌跡補正装置1は、少なくとも走行軌跡5が含まれる全ての小領域6を選択し、小領域6毎に算出されるコストマップ9を統合して走行軌跡5の位置ずれ量を算出した。
しかしながら、「第1実施形態の変形例2」で説明したように、車両が交差点を走行している範囲の走行軌跡5を用いて算出した走行軌跡5の位置ずれ量は、車両が単路部を走行している範囲の走行軌跡5のみを用いて算出した走行軌跡5の位置ずれ量と比較して、位置ずれ量の算出精度が低くなることがある。
第2実施形態では、「第1実施形態の変形例2」で説明した手法とは異なる手法で、車両の走行軌跡5のうち、単路部を走行している範囲の走行軌跡5のみを用いて、走行軌跡5の位置ずれ量を算出する車両軌跡補正装置1Aについて説明する。
図9は、車両軌跡補正装置1Aにおける機能ブロックの一例を示す構成図である。図9に示す構成図が、図2に示した車両軌跡補正装置1の構成図と異なる点は、画像分割部20とコストマップ算出部25の間に選択部22が追加された点である。
選択部22は、画像分割部20で分割された小領域6の各々から、位置ずれ量の算出に適した小領域6として、交差点を走行したとみなすことができる走行軌跡5が含まれていない小領域6、すなわち、単路部を走行したとみなすことができる走行軌跡5のみが含まれる小領域6を複数選択する選択手段の一例である。
したがって、コストマップ算出部25では、単路部に対応した走行軌跡5が含まれる小領域6のみを用いて、単路部に対応した走行軌跡5が含まれる小領域6毎のコストマップ9を算出する。
車両軌跡補正装置1Aは、図3に示した車両軌跡補正装置1の要部構成例と同様の構成が適用され、コンピュータ40を用いて構成される。
次に、車両軌跡補正装置1Aにおける位置ずれ量算出処理について説明する。車両軌跡補正装置1Aにおける位置ずれ量算出処理は、図4に示した車両軌跡補正装置1における位置ずれ量算出処理のフローチャートと同じ流れとなるが、ステップS40での処理が異なる。
車両軌跡補正装置1Aにおける位置ずれ量算出処理では、ステップS40において、CPU41は、ステップS30で小領域6に分割されたそれぞれの走行軌跡画像7から、単路部を走行しているとみなすことができる走行軌跡5のみを含んだ対応する小領域6を1つずつ選択する。
「第1実施形態の変形例2」で説明したように、交差点に対応する走行軌跡5は、例えばカーナビゲーション装置に備えられた地図情報から交差点の緯度情報及び経度情報を取得して判定することができる。また、走行軌跡5が得られた際のヨーレートセンサの出力から判定することができる。
走行軌跡5は、単路部に対応する走行軌跡5と交差点に対応する走行軌跡5に分類されるため、CPU41は、走行軌跡5を含む小領域6から、交差点に対応する小領域6を取り除くことで、単路部に対応する走行軌跡5を含む小領域6のみを選択することができる。
したがって、ステップS60において、CPU41は、単路部の走行軌跡5を含む対応する小領域6の距離変換画像8の各々を重ね合わせ、基準となる走行軌跡画像7の小領域6に対して、他の対応する小領域6を移動させながら、対応する小領域6のコストマップ9を算出する。
図10は、車両軌跡補正装置1Aにおける小領域6の選択例を示す図である。図10の例では、車両軌跡補正装置1Aが走行軌跡5を含む小領域6のうち、交差点に対応する走行軌跡5を含んだ網掛けした小領域6以外から複数の小領域6A、6B、6Cを選択し、基準となる走行軌跡画像7の小領域6に対して、選択した小領域6毎に、基準となる小領域6以外の小領域6をΔx方向及びΔy方向に移動させながらコストマップ9を算出している様子を示している。
また、図11、図12、及び図13は、それぞれ図10の小領域6A、6B、6Cにおけるコストマップ9A、9B、9Cの一例を示す図である。
各々のコストマップ9A、9B、9Cにおいてマッチングコストが最小となる領域が、それぞれ線分4A、線分4B、線分4Cで表されている。
したがって、ステップS80で、図7に示すようにコストマップ9A、9B、9Cが統合されると、ステップS90で、線分4A、線分4B、線分4Cの交点Pによって表される移動量(ΔxP、ΔyP)が、基準となる走行軌跡画像7の走行軌跡5に対する他の走行軌跡画像の走行軌跡5の位置ずれ量(ΔX,ΔY)として算出されることになる。
なお、車両軌跡補正装置1Aは図4のステップS40で走行軌跡5のみを含んだ対応する小領域6を選択する場合、必ずしも該当する全ての小領域6を選択する必要はなく、少なくとも2つの小領域6を選択してもよい。この場合、車両軌跡補正装置1Aは、それぞれ異なる方向に延びた単路部における走行軌跡5が含まれる複数の小領域を選択することが好ましい。
単路部の走行軌跡5は直線又はなだらかな曲線が多く、交差点の走行軌跡5のように走行軌跡5が約90度近くまで折れ曲がったりすることが少ない。すなわち、走行軌跡5の方向に沿った位置合わせにおける手がかりとなる特徴点が少ないため、コストマップ9を作成するため複数の走行軌跡5をできるだけ一致させたとしても、走行軌跡5の方向に沿った位置合わせの精度は、走行軌跡5の方向と交差する方向に沿った位置合わせの精度より低くなる傾向が見られる。
しかしながら、それぞれ異なる方向に延びた単路部における走行軌跡5が含まれる複数の小領域を選択した場合、コストマップ9単体で見ると走行軌跡5の方向に沿った走行軌跡5の一致度合いに曖昧性が残っているとしても、各々のコストマップ9を統合し、マッチングコストが最小となる領域が最も多く重なり合う地点を各走行軌跡5全体の位置ずれ量として算出することから、走行軌跡5の方向に沿った位置合わせの曖昧性が解消されることになる。
なお、第1実施形態で説明したように、走行軌跡画像7を生成する前に、各走行軌跡5全体の位置ずれ量の算出に用いる小領域6に対してのみ走行軌跡画像7を生成するようにしてもよい。
このように第2実施形態に係る車両軌跡補正装置1Aによれば、分割された複数の小領域6から、予め交差点に対応する走行軌跡5を含んだ小領域6を取り除き、単路部に対応する走行軌跡5を含んだ小領域6のみを用いて、走行軌跡5の位置ずれ量を算出する。
したがって、交差点に対応する走行軌跡5を含んだ小領域6も用いて走行軌跡5の位置ずれ量を算出する場合と比較して、走行軌跡5の位置ずれ量を精度よく算出することができる。
<第3実施形態>
第1実施形態に係る車両軌跡補正装置1、及び第2実施形態に係る車両軌跡補正装置1Aでは、車両が道路を走行することによって実際に得られた走行軌跡5をできるだけ一致させる位置ずれ量を算出することで、道路地図の作成に必要な走行軌跡5の補正値を出力した。
しかしながら、車両が毎回同じ走行位置を走行することは困難であるため、道路に対する車両の走行位置が異なる場合には、見かけ上は走行軌跡5を一致させたとしても、実際には走行軌跡5がずれていることがある。
第3実施形態では、道路上の予め定めた位置に車両の走行軌跡5を補正し、補正した走行軌跡5を用いてコストマップ9を算出することで、走行軌跡5の測定誤差を抑制し、走行軌跡5を精度よく一致させることができる車両軌跡補正装置1Bについて説明する。
図14は、車両軌跡補正装置1Bにおける機能ブロックの一例を示す構成図である。図14に示す構成図が、図2に示した車両軌跡補正装置1の構成図と異なる点は、走行軌跡受付部10と画像生成部15の間に、相対位置取得部12及び走行軌跡補正部14が追加された点である。
相対位置取得部12は、車両から道路上における予め定めた位置までの相対位置を取得する取得手段の一例である。道路上における予め定めた位置とは、車両の走行軌跡と併走するように存在する道路に沿った位置を指す。具体的には、走行車線の境界を示す車線境界線、又は走行車線の中央位置を示す車線中央線によって表される位置が道路上における予め定めた位置の例である。なお、車線境界線は白線により目視可能な形で道路上に示された位置であり、車線中央線は道路上に白線で示されてはいないが、例えば車線境界線を基準にして道路上に設定可能な位置である。
相対位置取得部12は、車両から車線境界線までの相対位置、及び車両から車線中央線までの相対位置のうち、何れの相対位置を取得してもよいが、ここでは一例として、車両から車線中央線までの相対位置を取得するものとして説明を行う。
走行軌跡補正部14は、相対位置取得部12で取得した車線中央線までの相対位置を用いて、車両の走行軌跡5が車線中央線上を移動するように、走行軌跡5の位置を補正する補正手段の一例である。
車両軌跡補正装置1Bは、図3に示した車両軌跡補正装置1の要部構成例と同様の構成が適用され、コンピュータ40を用いて構成される。
次に、車両軌跡補正装置1Bにおける位置ずれ量算出処理について説明する。
図15は、例えば車両軌跡補正装置1Bが走行軌跡5を受け付けた場合に、CPU41によって実行される位置ずれ量算出処理の流れの一例を示すフローチャートである。
位置ずれ量算出処理を規定する位置ずれ量算出プログラムは、例えば車両軌跡補正装置1BのROM42に予め記憶されている。車両軌跡補正装置1BのCPU41は、ROM42に記憶される位置ずれ量算出プログラムを読み込んで位置ずれ量算出処理を実行する。
図15に示すフローチャートが、図4に示した車両軌跡補正装置1、1Aにおける位置ずれ量算出処理のフローチャートと異なる点は、ステップS12及びステップS14の処理が追加された点であり、その他の処理は図4と同じである。
CPU41は、ステップS10で複数の走行軌跡5を取得すると、ステップS12を実行する。なお、取得した複数の走行軌跡5には、それぞれ走行軌跡5の各位置において収集された走行データ、例えば加速度センサ及び操舵角センサ等の計測値が付加されているものとする。
ステップS12において、CPU41は、加速度センサ及び操舵角センサ等の計測値を解析して車両の進行方向を算出し、取得した各走行軌跡5の軌跡点毎に、軌跡点における車両の方位角aを算出する。
図16は、軌跡点における車両の方位角aの一例を示す図である。図16において、自車両の軌跡点R(e0,n0)はEN平面上に表される。EN平面は、東西方向を示すE軸と南北方向を示すN軸によって表される2次元座標系であり、車両の方位角aは、N軸と車両の進行方向の成す角度によって表される。
軌跡点R(e0,n0)における車両の方位角aが得られると、CPU41は、例えばカーナビゲーション装置に用いられる地図情報から道路の緯度情報及び経度情報を取得することで作成された道路の位置及び形状を示す路面平面上に、車両の軌跡点R(e0,n0)を配置する。そして、CPU41は、各走行軌跡5の軌跡点毎に、車両の軌跡点R(e0,n0)から道路幅方向に沿った車線中央線までの相対位置を取得する。なお、車両の軌跡点R(e0,n0)における道路幅方向とは、軌跡点R(e0,n0)を通過するように延ばした車線境界線への垂線方向を表す。
図17は、車両が走行している道路を含む地図情報上に、車両の軌跡点R(e0,n0)を配置した例を示す図である。図17において、x軸は車両の進行方向を示し、y軸はx軸と直交する方向を示す。また、k軸は、車両の軌跡点R(e0,n0)における道路幅方向を示し、j軸は車両の軌跡点R(e0,n0)における道路幅方向の車線中央線を通過し、かつ、k軸と直交する方向を示す。この場合、車両の軌跡点R(e0,n0)から道路幅方向に沿った車線中央線までの相対位置は“y0”で表される。
ステップS14において、CPU41は、ステップS12で取得した各走行軌跡5における軌跡点R毎の座標値(e0,n0)、方位角a、及び相対位置y0を用いて、車両の軌跡点Rの位置をEN平面上における車線中央線の位置に変換する。EN平面上における車線中央線の位置を(e1,n1)とすれば、位置(e1,n1)は(1)式によって得られる。
したがって、(1)式を用いて各々の軌跡点Rに対して位置(e1,n1)を算出すれば、走行軌跡5を表す軌跡点Rの集合(軌跡点列{e0,n0})が、車線中央線上の点列(車線中央点列{e1,n1})に変換される。これにより、車両の走行軌跡5が車線中央線に沿った軌跡へと補正されることになる。
図18は、軌跡点列{e0,n0}を車線中央点列{e1,n1}に変換した場合の一例を示す図である。図18において点列32が軌跡点列{e0,n0}を表し、点列34が車線中央点列{e1,n1}を表している。
以降、CPU41は、車線中央線に沿った軌跡を車両の走行軌跡5として取り扱い、既に説明したステップS20以降の処理を実行する。
なお、走行軌跡5の位置を補正する前に、各走行軌跡5全体の位置ずれ量の算出に用いる領域を予め設定し、設定した領域(小領域6に相当)に対してのみ走行軌跡5の補正を行うと共に、走行軌跡画像7を生成するようにしてもよい。
このように第3実施形態に係る車両軌跡補正装置1Bによれば、走行軌跡5が車線境界線や車線中央線のように位置が固定された基準線に沿うように走行軌跡5を補正した後、各々の走行軌跡5を表す走行軌跡画像7を生成し、走行軌跡5の位置ずれ量を算出する。
車両軌跡補正装置1Bは、同じ基準線上に補正された走行軌跡5を用いて走行軌跡5の位置ずれ量を算出することから、車線内を自由に走行する車両の各々の走行軌跡5を補正せずに走行軌跡5を一致させる場合と比較して、走行軌跡5の一致度合いが向上することになる。したがって、車両軌跡補正装置1Bは、第1実施形態に係る車両軌跡補正装置1及び第2実施形態に係る車両軌跡補正装置1Aよりも、走行軌跡5の位置ずれ量を精度よく算出することができる。
以上、各実施の形態を用いて本発明について説明したが、本発明は各実施の形態に記載の範囲には限定されない。本発明の要旨を逸脱しない範囲で各実施の形態に多様な変更又は改良を加えることができ、当該変更又は改良を加えた形態も本発明の技術的範囲に含まれる。例えば、本発明の要旨を逸脱しない範囲で処理の順序を変更してもよい。
また、各実施の形態では、一例として位置ずれ量算出処理をソフトウエアで実現する形態について説明したが、図4及び図11に示したフローチャートと同等の処理を、例えばASIC(Application Specific Integrated Circuit)に実装し、ハードウエアで処理させるようにしてもよい。この場合、ソフトウエアを用いた場合と比較して、処理を高速化することができる。
また、上述した各実施の形態では、車両軌跡補正装置の位置ずれ量算出プログラムがROMにインストールされている形態について説明したが、これに限定されるものではない。本発明に係る位置ずれ量算出プログラムは、コンピュータ読み取り可能な記憶媒体に記録された形態で提供することも可能である。例えば、本発明に係る位置ずれ量算出プログラムを、CD(Compact Disc)-ROM、又はDVD(Digital Versatile Disc)-ROM等の光ディスクに記録した形態で提供してもよい。また、本発明に係る位置ずれ量算出プログラムを、USBメモリ及びフラッシュメモリ等の半導体メモリに記録した形態で提供してもよい。更に、車両軌跡補正装置は、例えばインターネット等の通信回線に接続された外部装置から、本発明に係る位置ずれ量算出プログラムを取得するようにしてもよい。