(57)【要約】【課題】  道路情報記憶手段に記憶された道路情報による道路形状と実道路の形状とを一致させ得る道路情報の修正装置を提供する。【解決手段】  ナビゲーション装置では、データベースの道路情報による道路形状がカーブしている区間をＤＢ修正範囲特定処理Ｓ３０３により特定し、実際の道路を走行して得られる軌跡データをカーブ区間について修正用軌跡データ取得処理Ｓ３０５により取得し、道路情報から得られる道路形状と軌跡データから得られる走行軌跡形状との類似の有無を類似判断値算出処理Ｓ３０７により判断し、両形状が類似していないと判断された場合、当該走行軌跡形状の一端点とこの走行軌跡形状に隣接した道路形状の端点で当該一端点に接続されるべきものとが滑らかに接続されるように軌跡データを軌跡データ貼付処理Ｓ３１１により変換し、変換された軌跡データに基づきカーブ区間の道路情報をＤＢ修正データ書込処理Ｓ３１３により修正する。【選択図】  図４
2005221419.tif 000002
【特許請求の範囲】
【請求項１】
道路情報記憶手段に記憶された道路情報を、実際の道路を走行した際の車両の走行軌跡情報に基づいて修正する道路情報の修正装置であって、
前記道路情報記憶手段に記憶された道路情報から得られる道路形状がカーブしている区間を当該道路情報においてカーブ区間として特定するカーブ区間特定手段と、
実際の道路を走行して得られる走行軌跡情報を前記カーブ区間について取得する走行軌跡情報取得手段と、
「前記カーブ区間の道路情報から得られる道路形状」および「前記カーブ区間の走行軌跡情報から得られる走行軌跡形状」の類似の有無を判断する形状類似判断手段と、
前記形状類似判断手段により両形状が類似していないと判断された場合、当該走行軌跡形状の一端点とこの走行軌跡形状に隣接した前記道路形状の端点で当該一端点に接続されるべきものとが滑らかに接続されるように前記走行軌跡情報を変換する走行軌跡情報変換手段と、
前記変換された前記走行軌跡情報に基づいて前記カーブ区間の道路情報を修正するカーブ区間修正手段と、
を備えることを特徴とする道路情報の修正装置。
【請求項２】
前記走行軌跡情報変換手段は、前記道路形状の端点における接線と前記走行軌跡形状の端点における接線とが同一方向を向くように、前記走行軌跡情報を変換することを特徴とする請求項１記載の道路情報の修正装置。
【請求項３】
前記走行軌跡情報変換手段は、「前記走行軌跡形状の一端点側に隣接する前記道路形状の端点における接線および前記走行軌跡形状の他端点側に隣接する前記道路形状の端点における接線により形成される角」と「前記走行軌跡形状の一端点における接線および前記走行軌跡形状の他端点における接線により形成される角」との角度比、および「前記走行軌跡形状の一端点から前記走行軌跡上の任意点までの前記走行軌跡形状上の距離」と「前記走行軌跡形状の全距離」との距離比、を算出し、
「前記走行軌跡形状の一端点に隣接する前記道路形状の端点における接線および前記走行軌跡形状上の任意点における接線とのなす角」に前記角度比と前記距離比を掛け合わせることによって、前記走行軌跡情報を変換することを特徴とする請求項１記載の道路情報の修正装置。
【請求項４】
前記形状類似判断手段は、「前記カーブ区間の道路情報から得られる道路形状」および「前記カーブ区間の走行軌跡情報から得られる走行軌跡形状」を同一の仮想平面上に配置し、前記道路形状上に設定される複数の所定点と当該複数の所定点に対応して設定される前記走行軌跡形状上の複数の対応点との距離の平均値が所定値以上である場合、これらの両形状は類似していないと判断することを特徴とする請求項１〜３のいずれか一項に記載の道路情報の修正装置。
【請求項５】
前記道路カーブ特定手段は、前記カーブ区間として、右曲がりカーブと左曲がりカーブとの組合せによるＳ字カーブを特定することを特徴とする請求項１〜４のいずれか一項に記載の道路情報の修正装置。
【請求項６】
前記形状類似判断手段によって、前記両形状が類似していると判断された道路区間を、修正の対象となる前記カーブ区間に隣接する道路区間とする、ことを特徴とする請求項１〜５のいずれか一項に記載の道路情報の修正装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、道路情報記憶手段に記憶された道路情報を、実際の道路を走行した際の車両の走行軌跡情報に基づいて修正する道路情報の修正装置に関するものである。
【背景技術】
【０００２】
道路情報を蓄えるデータベース（以下、［背景技術］の記載欄において「道路データベース」という。）の利用例として、車両に搭載されるタイプのナビゲーション装置に用いられているものがある。通常、この種のナビゲーション装置では、運転者等の利用者により目的地が設定されると、当該目的地の位置情報が地図データベースから検索され、さらに現在地（例えば車両の現在位置）から当該目的地に至るまでの最適経路が道路データベースから探索され、その結果等がディスプレィ表示を介して利用者に案内される。また、道路データベースの別の利用例としては、道路データベースの道路情報に基づいて車両の走行制御を行う車両制御装置等が挙げられる。
【０００３】
このように道路データベースは、ナビゲーション装置の経路探索等に用いられるため、一般には、道路の通過位置や交差点、道路種別等の各種情報により構成されており、主として国土地理院によって作成された 1/25000スケールの地図に基づいて作成されている。
【０００４】
ところが、このような 1/25000スケールの地図から得られたデータベースは実際の道路と食い違っている場合がある。単なる入力ミスによるズレや道路改修が行われたにも拘らず、改訂が間に合ってない場合である。道路改修の例としては、交差点の交差方法の変更やカーブ区間の改修、大きな場合では、峠越えのルートをトンネルを貫通させる等で大きくルート変更した等が考えられる。全く新しい道路が開通した場合も考えられる。別の面からは、改訂されたデータベースが入ったＣＤ，ＤＶＤ等の記憶媒体が販売されていても、高価な為、購入をためらい古いデータベースで不便のまま走行している場合もある。
【０００５】
このような地図上の道路と実道路との不一致は、前述したナビゲーション装置によるような経路探索の場面においては、探索結果に重大な影響をもたらすことは殆どないものと考えられるが、例えば、走行中の車両位置とディスプレィ表示上の現在位置とが正確にマップマッチングされないため、当該車両の運転者等に違和感を与え得る。また、車両制御装置の場合においては、当該道路情報の精度が、舵取制御、駆動制御や制動制御等に大きな影響を与え得るため、地図上の道路が実道路においてズレが大きい場合には、実道路に対応した走行制御を妨げる可能性がある。
【０００６】
そこで、本出願発明者は、このような問題を解決すべく、「データベース修正装置及びおよびデータベース修正方法」を提案し、ジャイロセンサ等による走行軌跡を得るために車両を所定区間走行させ、これにより得られた走行軌跡データに基づいて道路データベースの道路情報を修正する技術や、当該区間の距離が長くなった場合の累積誤差を考慮して当該車両が走行した区間を分割する技術、等々を開示している（下記、特許文献１）。
【０００７】
【特許文献１】特開２００１−１４１４６７号公報（第２頁〜第１８頁、図１〜図３１）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１に開示される「データベース修正装置及びデータベース修正方法」によると、例えば、データベースを修正する必要がある場合、軌跡始点と軌跡終点とを結ぶ第１の直線および軌跡始点と、軌跡終点に対応するノードデータ上のノード点とを結ぶ第２の直線を算出するとともに、第１、第２の直線の成す回転角βを算出し、各軌跡座標（Ｘ(i),Ｙ(i)） を軌跡始点を中心にして回転角βだけ回動させ、データベースのノード座標（ｘ(j),ｙ(j)） に貼り付け、かつ、対応させることで、当該データベースの修正を行っている（特許文献１；段落番号００６３〜００６５、０１８２等）。このように上記特許文献１に代表されるような従来の「道路データベースに記憶された道路情報を車両の走行軌跡情報に基づいて修正する道路情報の修正装置」では、修正対象となる道路形状を走行軌跡情報による走行軌跡の形状にそのまま置き換えることにより、当該道路情報の修正を行っている。そのため、当該修正対象となった道路区間とその前後の道路区間とでは、道路形状の繋ぎ目が滑らかになり難く、その結果、当該道路形状と実道路の形状とを一致を困難にするという課題がある。更に、補正される区間が長い場合には補正区間の中間部のズレが大きくなる可能性がある。
【０００９】
その一方で、道路データベースに記憶された道路形状が実道路の形状を精度良く表している場所も多く存在するにも拘らず、上記例の方法では一律に補正してしまい返って実道路とズレが大きくなる場合もある。またさらに例えば、修正対象となり得る道路形状を選択する道路区間の形状によっては、修正する必要があるか否かの判断が困難になることもある。特に、右曲がりカーブと左曲がりカーブとを組合せたようなＳ字形状を有するカーブ、いわゆるＳ字カーブについては、単純な右曲がりカーブのみまたは左曲がりカーブのみの場合に比べ、道路形状と走行軌跡の形状とを比較し難い。このようなため、あえて修正する必要のないものまで修正対象として誤って選択した場合には、修正対象となる道路形状を走行軌跡情報による走行軌跡の形状にそのまま置き換えたことによって、道路形状としてはより高精度に修正されたとしても道路形状の繋ぎ目が滑らかになり難いことから、修正前よりも却って繋ぎ目の滑らかさが損なわれ得る。そのため、かかる場合にも、当該道路形状と実道路の形状とを一致を困難にするという課題がある。
【００１０】
本発明は、上述した課題を解決するためになされたものであり、その目的とするところは、道路情報記憶手段に記憶された道路情報による道路形状と実道路の形状とを一致させ得る道路情報の修正装置を提供することにある。特に、ある道路区間を修正する際に、修正対象となる道路区間の修正後の道路形状と、その両側の修正しない道路区間の道路形状との継ぎ目が滑らかとなるように道路情報を修正することができる道路情報の修正装置を提供することにある。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、特許請求の範囲に記載された請求項１の道路情報の修正装置では、道路情報記憶手段に記憶された道路情報を、実際の道路を走行した際の車両の走行軌跡情報に基づいて修正する道路情報の修正装置であって、前記道路情報記憶手段に記憶された道路情報から得られる道路形状がカーブしている区間を当該道路情報においてカーブ区間として特定するカーブ区間特定手段と、実際の道路を走行して得られる走行軌跡情報を前記カーブ区間について取得する走行軌跡情報取得手段と、「前記カーブ区間の道路情報から得られる道路形状」および「前記カーブ区間の走行軌跡情報から得られる走行軌跡形状」の類似の有無を判断する形状類似判断手段と、前記形状類似判断手段により両形状が類似していないと判断された場合、当該走行軌跡形状の一端点とこの走行軌跡形状に隣接した前記道路形状の端点で当該一端点に接続されるべきものとが滑らかに接続されるように前記走行軌跡情報を変換する走行軌跡情報変換手段と、前記変換された前記走行軌跡情報に基づいて前記カーブ区間の道路情報を修正するカーブ区間修正手段と、を備えることを技術的特徴とする。
【００１２】
また、特許請求の範囲に記載された請求項２の道路情報の修正装置では、請求項１において、前記走行軌跡情報変換手段は、前記道路形状の端点における接線と前記走行軌跡形状の端点における接線とが同一方向を向くように、前記走行軌跡情報を変換することを技術的特徴とする。
【００１３】
さらに、特許請求の範囲に記載された請求項３の道路情報の修正装置では、請求項１において、前記走行軌跡情報変換手段は、「前記走行軌跡形状の一端点側に隣接する前記道路形状の端点における接線および前記走行軌跡形状の他端点側に隣接する前記道路形状の端点における接線により形成される角」と「前記走行軌跡形状の一端点における接線および前記走行軌跡形状の他端点における接線により形成される角」との角度比、および「前記走行軌跡形状の一端点から前記走行軌跡上の任意点までの前記走行軌跡形状上の距離」と「前記走行軌跡形状の全距離」との距離比、を算出し、「前記走行軌跡形状の一端点に隣接する前記道路形状の端点における接線および前記走行軌跡形状上の任意点における接線とのなす角」に前記角度比と前記距離比を掛け合わせることによって、前記走行軌跡情報を変換することを技術的特徴とする。
【００１４】
さらにまた、特許請求の範囲に記載された請求項４の道路情報の修正装置では、請求項１〜３のいずれか一項において、前記形状類似判断手段は、「前記カーブ区間の道路情報から得られる道路形状」および「前記カーブ区間の走行軌跡情報から得られる走行軌跡形状」を同一の仮想平面上に配置し、前記道路形状上に設定される複数の所定点と当該複数の所定点に対応して設定される前記走行軌跡形状上の複数の対応点との距離の平均値が所定値以上である場合、これらの両形状は類似していないと判断することを技術的特徴とする。
【００１５】
また、特許請求の範囲に記載された請求項５の道路情報の修正装置では、請求項１〜４のいずれか一項において、前記道路カーブ特定手段は、前記カーブ区間として右曲がりカーブと左曲がりカーブとの組合せによるＳ字カーブを特定することを技術的特徴とする。さらに特許請求の範囲に記載された請求項６の道路情報の修正装置では、請求項１〜５のいずれか一項において、前記形状類似判断手段によって、前記両形状が類似していると判断された道路区間を、修正の対象となる前記カーブ区間に隣接する道路区間とすることを技術的特徴とする。
【発明の効果】
【００１６】
特許請求の範囲に記載された発明では、カーブ区間特定手段により、道路情報記憶手段に記憶された道路情報から得られる道路形状がカーブしている区間を当該道路情報においてカーブ区間として特定し、走行軌跡情報取得手段により、実際の道路を走行して得られる走行軌跡情報をカーブ区間について取得する。そして、形状類似判断手段により、「カーブ区間の道路情報から得られる道路形状」および「カーブ区間の走行軌跡情報から得られる走行軌跡形状」の類似の有無を判断し、両形状が類似していないと判断された場合、当該走行軌跡形状の一端点とこの走行軌跡形状に隣接した道路形状の端点で当該一端点に接続されるべきものとが滑らかに接続されるように走行軌跡情報を走行軌跡情報変換手段により変換し、この変換された走行軌跡情報に基づいてカーブ区間の道路情報をカーブ区間修正手段により修正する（請求項１）。
【００１７】
そして、好ましくは、当該カーブ区間の道路形状の端点における接線と当該カーブ区間の走行軌跡形状の端点における接線とが同一方向を向くように走行軌跡情報を変換する（請求項２）。もしくは、「走行軌跡形状の一端点側に隣接する道路形状の端点における接線および走行軌跡形状の他端点側に隣接する道路形状の端点における接線により形成される角」と「走行軌跡形状の両端点の各接線により形成される角」との角度比、および「走行軌跡形状の一端点から走行軌跡上の任意点までの走行軌跡形状上の距離」と「走行軌跡形状の全距離」との距離比、を算出し、「走行軌跡形状の一端点に隣接する道路形状の端点における接線および走行軌跡形状上の任意点における接線とのなす角」に前記角度比と前記距離比を掛け合わせて走行軌跡情報を変換する（請求項３）。また、好ましくは当該カーブ区間の道路形状と当該カーブ区間の走行軌跡形状とを同一の仮想平面上に配置し、この道路形状上の複数の所定点とこれらに対応した走行軌跡形状上の複数の対応点との距離の平均値が所定値以上である場合、両形状は類似していないと判断する（請求項４）。
【００１８】
これにより、「カーブ区間の道路情報から得られる道路形状」および「カーブ区間の走行軌跡情報から得られる走行軌跡形状」が類似していないと判断された場合に、両形状の端点同士が滑らかに接続されるように、走行軌跡情報を変換する（請求項１）。例えば、道路形状の接線と走行軌跡形状の接線とが同一方向を向くように走行軌跡情報を変換したり（請求項２）、走行軌跡上の任意の点の角度を次のアルゴリズムで変換する。すなわち、まず、(a) 走行軌跡形状に対応するカーブ区間の両側に隣接する道路区間における、道路情報に基づく道路形状の端点における接線により形成される角（αＢ）と、この走行軌跡による道路形状の両端点の接線により形成される角（θＢ）との角度比（αＢ／θＢ）を計算する。次に(b) 「走行軌跡形状の一端点から走行軌跡上の任意点までの走行軌跡形状上の距離（Ｌgx）」と「走行軌跡形状の全距離（ＬＢ）」との距離比（Ｌgx／ＬＢ）を算出する。そして(c) 走行軌跡上の任意の点における角度の変換として、「走行軌跡形状の一端点に隣接する道路形状の端点における接線および走行軌跡形状上の任意点における接線とのなす角（θｘ）」に前記角度比と前記距離比を掛け合わせる（請求項３；（１）式および図１７参照）。このような変換を施すことで当該走行軌跡形状とこれに隣接した道路形状との繋ぎ目を滑らかにすることができるので、道路情報記憶手段に記憶された道路情報による道路形状と実道路の形状とを一致させることができる。また、当該カーブ区間の道路形状と当該カーブ区間の走行軌跡形状とを同一の仮想平面上に配置し、この道路形状上の複数の所定点とこれらに対応した走行軌跡形状上の複数の対応点との距離の平均値が所定値以上である場合、両形状は類似していないと判断するので（請求項４）、両形状があえて修正する必要のない程度に類似している場合には、両形状は類似していると判断され、当該道路情報は修正されない。したがって、修正前よりも却って繋ぎ目の滑らかさが損なわれるといった事態も防止することができる。
【００１９】
また、特許請求の範囲に記載された発明では、道路カーブ特定手段は、カーブ区間として、右曲がりカーブと左曲がりカーブとの組合せによるＳ字カーブを特定する（請求項５）。これにより、単純な右曲がりカーブのみまたは左曲がりカーブのみの場合に比べ、道路形状と走行軌跡の形状とを比較し難いＳ字カーブについても、カーブ区間を特定することができるので、Ｓ字カーブのカーブ区間も、前述と同様に、当該走行軌跡形状とこれに隣接した道路形状との繋ぎ目を滑らかにすることができる。したがって、道路情報記憶手段に記憶された道路情報による道路形状と実道路の形状とを一致させることができる。さらに、修正の対象となるカーブ区間の両側に隣接するカーブ区間は、道路情報から得られる道路形状とその区間を実際に走行した際の走行軌跡情報から得られる道路形状とが類似していると判断された道路区間が設定される（請求項６）。道路情報から得られる道路形状と走行軌跡情報から得られる道路形状が類似している（すなわちよく一致している）ということは、道路情報による道路形状が正確である可能性が非常に高いと確認されたことになる。従って、道路情報の修正のため、カーブ区間の走行軌跡情報による道路形状を変換する際に基準となる、その両側の道路区間の形状は、実道路の形状を正確に表していることが確認されたものとなるので、修正された道路情報は信頼性の高いものとすることが可能となる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の道路情報の修正装置を車両搭載型のナビゲーション装置に適用した一実施形態を、図１〜図１７に基づいて説明する。
まず、本実施形態に係るナビゲーション装置２０の構成を図１に基づいて説明する。
図１に示すように、ナビゲーション装置２０は、車両５０に搭載可能なもので、主に、ＣＰＵ２１、メモリ２２、データベース２３、入出力インタフェイス２４、入力装置２５、ディスプレィ２６、音源ユニット２８、ＧＰＳセンサ３１、車速センサ３２、ジャイロセンサ３３、地磁気センサ３４、通信装置３５等から構成されている。なお図１には、当該車両５０が実際の道路９０を走行している様子が示されている。
【００２１】
このナビゲーション装置２０は、ＣＰＵ２１、メモリ２２、データベース２３、入出力インタフェイス２４、入力装置２５、ディスプレィ２６等によりコンピュータとしての機能を実現可能に構成されており、ハードウェアは次のように構成されている。
【００２２】
ＣＰＵ２１は、ナビゲーション装置２０を制御する中央演算処理装置で、システムバスを介してメモリ２２、データベース２３、入出力インタフェイス２４等と接続されている。このメモリ２２には、ＣＰＵ２１を制御するシステムプログラム２２ａのほか、各種制御プログラム２２ｂ〜２２ｇ等が格納されており、ＣＰＵ２１はこれらのプログラムをメモリ２２から読み出して逐次実行している。なお、このＣＰＵ２１には、現在の時刻を計時する機能を有する時計２１ａが内蔵されている。
【００２３】
メモリ２２は、システムバスに接続されている記憶装置であり、ＣＰＵ２１が使用する主記憶空間を構成するもの（ＲＯＭ、ＲＡＭ等）、である。このメモリ２２には、システムプログラム２２ａをはじめとして、入力プログラム２２ｂ、経路探索プログラム２２ｃ、マップ・マッチングプログラム２２ｄ、データベース修正プログラム２２ｅ、経路案内プログラム２２ｆ、出力プログラム２２ｇ等が予め書き込まれている。
【００２４】
データベース２３は、ＣＰＵ２１が使用する補助記憶空間を構成するハードディスク、コンパクトディスクやディジタルバーサティルディスク等で、システムバスを介してＣＰＵ２１に接続されている。このデータベース２３には、地図情報２３ａや道路情報２３ｂが格納されている。ここで「道路情報」とは、道路や河川等の地形、道路リンク（番号、リンク長、リンク旋回角等）、ノード（番号、座標等）等の各種情報のことをいう。また「道路リンク」とは、実際の道路を短い線分の集合としてモデル化する際の一つひとつの線分のことをいい、実際の道路を折れ線近似したときの個々の直線部分のことである。この道路リンクは、通常、その直線部分の両端の、実際の道路に対応する経度・緯度（東経北緯）で一義的に定められており、距離の長短に応じた大小の距離コストによる重み付け情報等が付加されている。なお。このデータベース２３は、特許請求の範囲に記載の「道路情報記憶手段」に相当し得るものである。
【００２５】
入出力インタフェイス２４は、入力装置２５、ディスプレィ２６、音源ユニット２８、ＧＰＳセンサ３１、車速センサ３２、ジャイロセンサ３３、地磁気センサ３４、通信装置３５等の入出力装置とＣＰＵ２１等とのデータのやり取りを仲介する装置で、システムバスに接続されている。
【００２６】
入力装置２５は、ナビゲーション装置２０の操作パネルに設けられている入力装置で、入出力インタフェイス２４を介してシステムバスに接続されている。この入力装置２５は、当該車両５０の運転者や乗員（以下、単に「利用者」という。）が経路探索を希望する目的地や出発地等に関する情報を入力プログラム２２ｂを介して入力するものである。一般に、押圧式のスイッチを所定数並べた構成を採るが、入力操作の簡便化を考慮してディスプレィ２６の表面に設けられたタッチパネル式のものや、あるいは利用者の声を認識してナビゲーション装置２０への入力情報に変換する、マイクロフォンと音声認識装置とで構成されているものもある。
【００２７】
ディスプレィ２６は、出発地から目的地までの案内経路や車両５０の現在位置あるいは道路交通情報等を出力プログラム２２ｈを介して出力し得る表示装置で、ナビゲーション装置２０の操作パネルに設けられている。このディスプレィ２６も、入出力インタフェイス２４を介してシステムバスに接続されており、例えば、液晶表示器、ＣＲＴ表示器やプラズマ表示器により構成されている。また表示面に、入力装置２５を構成するタッチパネルを備えているものもある。
【００２８】
なお、本実施形態では、入力装置２５とディスプレィ２６は、ナビゲーション装置２０の操作パネルに設けたが、これに限られることはなく、ナビゲーション装置２０とは、別個の筐体に、入力装置２５とディスプレィ２６とを構成しても良い。また入力装置２５とディスプレィ２６とが互いに物理的に分離された構成を採っても良い。
【００２９】
音源ユニット２８は、所定の音声データに基づくディジタル信号をアナログ信号に変換した後、当該アナログ信号によりアンプを介してスピーカから可聴音を発生させ得るもので、入出力インタフェイス２４を介してシステムバスに接続されている。これにより、スピーカからは経路案内等が音声により出力され、利用者に通知される。
【００３０】
ＧＰＳセンサ３１は、経度・緯度により車両の現在位置データを出力するためのもので、入出力インタフェイス２４を介してシステムバスに接続されている。このＧＰＳセンサ３１は、複数のＧＰＳ衛星からの信号を受信して利用者の絶対位置を計測するＧＰＳ受信機等から構成されている。
【００３１】
車速センサ３２、ジャイロセンサ３３および地磁気センサ３４は、車両の相対位置や車両の進行方向を計測するためのもので、それぞれ入出力インタフェイス２４を介してシステムバスに接続されている。これらのセンサは、自律航法等に使用されるもので、車速センサ３２およびジャイロセンサ３３により得られる車両の相対位置情報は、ＧＰＳ受信機が衛星からの電波を受信できないトンネル内等において位置を得たり、ＧＰＳ受信機によって計測された絶対位置の測位誤差を補正する等に利用される。また、ジャイロセンサ３３や地磁気センサ３４により得られる車両の進行方向情報は、車両の相対位置情報とともに、後述するようにデータベース２３の道路情報２３ｂを修正するのに利用される。
【００３２】
なお、図示されていないが、車両５０の操舵装置には、操舵輪の舵角を検出可能な舵角センサが取り付けられ、入出力インタフェイス２４を介して当該舵角センサから出力される舵角信号を、ＣＰＵ２１に入力可能に構成している。これにより、ＣＰＵ２１は、運転者による当該車両５０の操舵方向を舵角情報として得ることができる。
【００３３】
通信装置３５は、道路交通情報配信システムセンタ（ＶＩＣＳ）等の図略の情報センタとの間で無線通信回線によるデータの送受信を行うための無線通信機器で、入出力インタフェイス２４を介してシステムバスに接続されている。例えば、携帯電話機、ＰＨＳ等の無線通信システムを利用している。なお、ＶＩＣＳは、財団法人道路交通情報通信システムセンターの登録商標である。
【００３４】
なお、車速センサ３２は、車両５０の走行速度を検出可能に構成されるものであるから、この車速センサ３２から入出力インタフェイス２４を介してＣＰＵ２１に入力される車両速度データをＣＰＵ２１によって積分演算することにより、車両５０の走行距離を得ることができる。また、ジャイロセンサ３３は、車両５０の回転角速度を検出可能に構成されることから、このジャイロセンサ３３から入出力インタフェイス２４を介してＣＰＵ２１に入力される回転角速度データをＣＰＵ２１によって積分演算することにより、車両５０の旋回角を得ることができる。これにより、車速センサ３２およびＣＰＵ２１により得られた距離と、地磁気センサ３４およびジャイロセンサ３３により検出された方位とを組み合わせることによって、ＧＰＳセンサ３１によらなくても、現在位置を検出することができる。また車速センサ３２およびＣＰＵ２１により得られた距離と図略の舵角センサにより検出された舵角とを組み合わせることによっても現在位置を検出することができる。
【００３５】
ここで、メモリ２２に格納されている、入力プログラム２２ｂ、経路探索プログラム２２ｃ、マップ・マッチングプログラム２２ｄ、データベース修正プログラム２２ｅ、経路案内プログラム２２ｆ、出力プログラム２２ｇの概要を説明する。
【００３６】
システムプログラム２２ａは、ナビゲーション装置２０の起動から停止までの基本動作を制御する機能を有するもので、例えば、図２に示す基本制御処理を行う。この処理は、後述するように、ナビゲーション装置２０の利用者により、一旦、目的地が設定されると、当該目的地までの経路が探索された後、マップ・マッチング処理（Ｓ１０７）→データベース修正処理（Ｓ１０９）→経路案内処理（Ｓ１１１）を繰り返し継続的に実行するもので、次の目的地の設定あるいはイグニッションスイッチのオフによって当該処理を終了するものである。これにより、この間において、データベース２３の道路情報２３ｂに対して必要な修正処理が継続的に行われるため、道路情報２３ｂによる地図上の道路と車両５０が走行する実道路とが一致してない場合には、当該道路情報２３ｂを適宜修正することができる。なお、この修正処理はデータベース修正プログラム２２ｅにより行われる。
【００３７】
入力プログラム２２ｂは、ナビゲーション装置２０の利用者が経路案内を希望する目的地、その出発地等に関する情報等その他、ナビゲーション機能を利用する上で必要な各種情報等を、利用者に対し入力装置２５を介して入力させ、他のプログラムや処理等に受け渡す機能を有するものである。また入力プログラム２２ｂは、ＧＰＳセンサ３１から出力される現在位置データ、車速センサ３２から出力される車速データ、ジャイロセンサ３３から出力される回転角速度データ、地磁気センサ３４から出力される方位データ、またはＣＰＵ２１の時計２１ａから出力される現在時刻データ等を入力し、他のプログラムや処理等に受け渡す機能も有する。
【００３８】
経路探索プログラム２２ｃは、入力装置２５により入力された目的地をデータベース２３に記憶された地図情報２３ａに基づいて検索する機能と、入力装置２５により入力された出発地あるいはＧＰＳセンサ３１等により検出される車両の現在地から当該希望目的地に至るまでの最短距離経路をデータベース２３に記録されている道路情報２３ｂに基づいて探索する機能と、を有するものである。なお、「最短距離経路」とは、出発地（または現在地）から目的地に到るまでの総距離が最短である経路のことである。
【００３９】
マップ・マッチングプログラム２２ｄは、ディスプレィ２６に表示させる車両５０の現在位置に関する情報を、データベース２３の地図情報２３ａや道路情報２３ｂあるいは各種センサ等から取得し、走行状態データとして出力する機能を有するもので、例えば、図３に示すマップ・マッチング処理を行う。
【００４０】
データベース修正プログラム２２ｅは、データベース２３に記憶されている道路情報２３ｂを、マップ・マッチングプログラム２２ｄにより出力された走行状態データに基づいて修正する機能を有するもので、例えば、図４に示すデータベース修正処理を行う。なお、このデータベース修正プログラム２２ｅは、特許請求の範囲に記載の「カーブ区間特定手段」、「走行軌跡情報取得手段」、「形状類似判断手段」、「走行軌跡情報変換手段」および「カーブ区間修正手段」に相当するものである。
【００４１】
経路案内プログラム２２ｆは、経路探索プログラム２２ｃにより探索された経路に関する情報（例えば、右左折等の進行方向の説明や道路交通情報等）を、利用者に対してディスプレィ２６に表示される画像や音源ユニット２８により出力される合成音声等によって行う機能を有するものである。
【００４２】
出力プログラム２２ｇは、各種画面情報をディスプレィ２６に線図として描画する機能や各種案内情報を音源ユニット２８によりスピーカを鳴動させる機能を有するものである。例えば、データベース２３の地図情報２３ａや道路情報２３ｂをもとに、地図や経路探索プログラム２２ｃにより探索された最短距離経路等をディスプレィ２６に表示させたり、また経路案内等に必要なメッセージ音や音声を所定の音声データに基づいて音源ユニット２８により鳴らせるものである。
【００４３】
次に、本ナビゲーション装置２０のＣＰＵ２１により実行される基本制御処理の流れを図２〜図１５に基づいて説明する。なお、この基本制御処理は、システムプログラム２２ａにより実行されるものである。
【００４４】
［図２：基本制御処理］
図２に示すように、基本制御処理では、まずステップＳ１０１により初期化処理が行われる。この初期化処理では、例えば、メモリ２２に所定のワーク領域を確保したり、あるいは各種フラグ等を初期値に設定する処理を行う。
【００４５】
続いてステップＳ１０３より目的地設定処理が行われる。この処理では、例えば、利用者の操作によって、入力装置２５を介し目的地や必要に応じて目的地までの通過地点あるいは一般道路／有料道路のいずれを優先するか等の経路探索条件等に関する情報を、入力する処理を行う。なおこの処理により設定された目的地は、データベース２３の地図情報２３ａに基づいて、例えば、経度・緯度（東経北緯）等による座標情報により一義的に定められる。
【００４６】
次のステップＳ１０５では経路探索処理が行われる。この処理は、経路探索プログラム２２ｃにより行われるものである。具体的には、例えばＧＰＳセンサ３１によって取得される当該車両５０の現在位置からステップＳ１０３により設定された目的地に至るまでの最短距離経路を、データベース２３の地図情報２３ａや道路情報２３ｂに基づいてダイクストラ法等の探索アルゴリズムにより経路探索する処理が行われる。
【００４７】
このようにステップＳ１０５により経路探索されると、続くステップＳ１０７では、マップ・マッチング処理が行われる。具体的には、図３に示すように、ステップＳ１１１による経路案内処理によりディスプレィ２６に表示される案内画面上の現在位置をリアルタイムに変化させて当該車両５０の走行に伴って案内経路を追跡し得るために必要な経路案内データや走行状態データを出力する処理が行われる。
【００４８】
［図３：マップ・マッチング処理］
ここで、図３を参照して、マップ・マッチング処理の概要を説明する。
図３に示すように、マップ・マッチング処理では、まずステップＳ２０１によりセンサ信号を読み込む処理が行われる。この処理では、ＧＰＳセンサ３１、車速センサ３２、ジャイロセンサ３３および地磁気センサ３４から出力される各種センサ信号（センサデータ）を入出力インタフェイス２４を介して読み込むことによって、続くステップＳ２０３による所定の演算処理により車両５０の現在位置を含む現在地付近のデータを取得する。
【００４９】
続くステップＳ２０５により、車両５０の走行に伴う現在位置の変化に対応させて経路を案内するための経路案内データを出力するとともに、ステップＳ２０７により車両５０の走行状態を表す走行状態データを出力した後、図２に示すシステムプログラム２２ａによる基本制御処理に復帰する。なお、この走行状態データとしては、例えば、現在時刻、ジャイロ旋回角、車速、マッチング・データ（走行道路番号、走行ノード番号、分岐点通過フラグ）、ＤＢデータ（道路番号、ノード番号、座標、リンク長さ、リンク角）等が挙げられる。またこれらデータは、例えば、メモリ２２のワーク領域を介して、次述するデータベース修正プログラム２２ｅ等に対して出力される。
【００５０】
［図２：基本制御処理（続き）］
図２に戻って、ステップＳ１０７によりマップ・マッチング処理が行われると、続くステップＳ１０９では、データベース修正処理が行われる。この処理は、データベース修正プログラム２２ｅにより行われるもので、特許請求の範囲に記載の「カーブ区間特定手段」、「走行軌跡情報取得手段」、「形状類似判断手段」、「走行軌跡情報変換手段」および「カーブ区間修正手段」に相当するものである。具体的には、図４〜図１２に詳細に説明されているので、ここで図４を参照して説明する。
【００５１】
［図４：データベース修正処理（Ｓ３０１：走行データ記憶処理）］
図４に示すように、データベース修正処理では、まずステップＳ３０１により走行データ記憶処理が行われる。この処理の詳細は、図５(A) に図示されているため、ここでは、図５を参照して走行データ記憶処理を説明する。
【００５２】
［図５：走行データ記憶処理］
図５(A) に示すように、走行データ記憶処理では、ステップＳ４０１により走行データを計算する処理が行われる。この走行データは、特許請求の範囲に記載の「走行軌跡情報」に相当するものである。具体的には、図５(B) に概念的に示される走行データに対して以下の各処理が行われる。なお、図５(B) は、図３に示すマップ・マッチング処理により出力された走行状態データ等に基づいて、車両５０の走行に応じて取得されるデータを表す走行データを説明したものであり、同図に示す×（バツ）はノード番号のあるノードを表し、これらのノード同士を結ぶ直線は道路リンクを表す。また×（バツ）が□（白四角）によって囲まれたノードは（図５(B) に示すノード番号-13 ）、そのノードが分岐点でもあることを表している。この分岐点は、当該分岐点に接続される他の隣接した道路等が存在することを示すもので、この図５(B) に示す例では、当該分岐点を境界に、道路番号-345の道路と道路番号-346の道路とが接続されている。図５(B) には、走行軌跡として道路が図示されている。リンク上に図示されている○（白丸）は、あるタイミングにおけるマッチング・データによる現在位置を表すマッチングポイントを示す。
【００５３】
まず、ステップＳ４０１では、走行データを計算する処理として、走行距離および走行軌跡座標の算出、ならびにノード通過点フラグの設定が行われる。具体的には、マッチングタイミングｔ(i) における車速Ｖ(i) および各マッチングタイミングｔ(i) 間で車両５０が走行する時間（走行時間）に基づいて、走行軌跡長さDL(i) が算出され、また、車両５０の旋回角θ(i) および走行軌跡長さDL(i) に基づいて走行軌跡座標（Ｘ(i) ，Ｙ(i) ）が算出される。さらに、走行ノード番号NN(i) が変化したかどうか、即ち、一つ前のマッチングタイミングｔ(i-1) での走行ノード番号NN(i-1) と、現在のマッチングタイミングｔ(i) での走行ノード番号NN(i) とが一致するか否かを判断することによって、車両５０がノードＮj を通過したかどうかを表すノード通過フラグを設定する。例えば、走行ノード番号NN(i-1) と走行ノード番号NN(i) とが一致する場合には、車両５０はノードＮj を通過していないことになるので、ノード通過フラグにフラグのオフを示す０（ゼロ）を設定する。一方、走行ノード番号NN(i-1) と走行ノード番号NN(i) とが一致しない場合には、車両５０はノードＮj を通過したことになるので、フラグのオンを示す１をノード通過フラグに設定する。
【００５４】
次に、ステップＳ４０３では、走行データを記憶する処理として、ステップＳ４０１により算出等された走行軌跡長さDL(i) 、軌跡座標（Ｘ(i),Ｙ(i)） およびノード通過フラグを、他の走行データとともにメモリ２２の所定領域に記憶する処理が行われる。ここで、メモリ２２に記憶される走行データは、マッチングタイミングｔ(i) 、マッチングデータ、走行路データ、走行軌跡データ等からなり、またマッチングデータは、走行道路番号ＲＮ(i) 、走行ノード番号NN(i) 、分岐点通過フラグ、ノード通過フラグ等からなる。さらに走行路データは、道路番号Ｒｎ(j) 、ノード番号Ｎｎ(j) 、ノード座標（ｘ(j),ｙ(j)） 、リンク長さLL(j) 、リンク角α(j) 等からなり、走行軌跡データは、軌跡座標（Ｘ(i),Ｙ(i)） 、旋回角θ(i) 、走行軌跡長さDL(i) 等からなる。このようにして走行データ記憶処理が行われると、図４に示すデータベース修正処理に復帰し、ステップＳ３０１の次のステップＳ３０３に処理を移行する。なお、上記走行軌跡データの記憶は、所定の間隔、例えばマップマッチングタイミングごとに行われるので、その結果、走行軌跡データは時系列データとして記憶されることになる（以上の処理は、特許請求の範囲に記載の「走行軌跡情報取得手段」に相当する）。
【００５５】
［図４：データベース修正処理（Ｓ３０３：ＤＢ修正範囲特定処理）］
図４に戻るとステップＳ３０３では、ＤＢ修正範囲特定処理が行われる。この処理は、データベース２３の道路情報２３ｂに基づいて修正の対象となる道路のカーブ区間を特定するもので、特許請求の範囲に記載の「カーブ区間特定手段」に相当する。この処理の詳細は図６に図示されており、また道路情報２３ｂによる道路リンクの概念が図１３に図示されているので、ここでは図６および図１３を参照してＤＢ修正範囲特定処理を説明する。なお「ＤＢ」はデータベースを意味する。また図１３に示す×（バツ）はノードを表し、これらのノード同士を結ぶ直線は道路リンクを表す。
【００５６】
［図６：ＤＢ修正範囲特定処理］
図６に示すように、ＤＢ修正範囲特定処理では、まずステップＳ５０１によりリンク旋回角α(i) の添字ｉを０（ゼロ）に設定し初期化する処理が行われる。ここで、リンク旋回角α(i) はｉ番目の道路リンクのリンク旋回角を示す。また「リンク旋回角α」とは、道路情報２３ｂを構成する道路リンクデータに基づく値で、隣接する２つの道路リンクがなす角により定義される。例えば、図１３に示す道路リンクの概念例（実際の道路９０を道路リンクの集合としてモデル化した道路情報２３ｂの例）では、修正区間始点のノードから車両進行方向に延びる道路リンクに対して、この道路リンクに隣接する次の道路リンクは、車両進行方向右側に湾曲するカーブ（以下「右曲がりカーブ」という。）の方向に３２度のリンク旋回角をもっていることが同図中の数値「−３２」からわかる。なお、図１３においては、車両進行方向左側に湾曲するカーブ（以下「左曲がりカーブ」という。）の方向のリンク旋回角には「＋」（プラス）が、また車両進行方向に対して右曲がりカーブ方向のリンク旋回角には「−」（マイナス）が、それぞれ付されている。
【００５７】
続くステップＳ５０３では、リンク旋回角αの符号が反転するノードを判断する処理が行われる。即ち、α(i) ×α(i-1) を演算することにより、隣接する両道路リンクの符号が一致しない場合には、当該演算結果が負（マイナス）になることから、符号の不一致、つまり符号の反転を当該演算結果が０以下になるか否かによって判断を行っている（α(i) ×α(i-1) ≦０）。例えば、図１３に示す道路リンクの概念例では、この符号の反転箇所に該当するノードのリンク旋回角を四角枠内に表示している（図１３に示す＋１６度、−３２度、＋１５度、−１０度、＋１１度）。
【００５８】
そして、リンク旋回角αの符号が反転すると判断されない場合には（Ｓ５０３でＮｏ）、ステップＳ５０５によりリンク旋回角α(i) の添字ｉをインクリメント（ｉ＝ｉ＋１）することによって、次のノードのリンク旋回角αについて符号反転の判断を行う（Ｓ５０３）。一方、リンク旋回角αの符号が反転すると判断された場合には（Ｓ５０３でＹｅｓ）、次ステップＳ５０７に処理を移行する。なお、図６には図示されていないが、道路情報２３ｂの道路リンクデータの最後を示す値まで、リンク旋回角α(i) の添字ｉを増加させても、ステップＳ５０３によりカーブの入口を検出できない場合には、本ＤＢ修正範囲特定処理を終了し、図４に示すデータベース修正処理に復帰する。
【００５９】
次のステップＳ５０７では、(i-1) 番目のノードをカーブ入口のノードとして特定して記憶する処理が行われる。具体的には、例えば、当該ノードのノード番号をメモリ２２の所定領域に記憶する。例えば、図１３に示す道路リンクの概念例では、右旋回と表示されている旋回角−３２度のｊ＝１カーブα２(1) がこれに相当する。
【００６０】
ステップＳ５０７によりカーブ入口のノードとして特定されるノードを記憶すると、次にステップＳ５０９によりリンク旋回角α(i) の添字ｉをインクリメント（ｉ＝ｉ＋１）する。そして、ステップＳ５１１により、ステップＳ５０３と同様、リンク旋回角αの符号が反転するノードを判断する処理が行われる。このステップＳ５１１により、リンク旋回角αの符号が反転すると判断されない場合には（Ｓ５１１でＮｏ）、再びステップＳ５０９によりリンク旋回角α(i) の添字ｉをインクリメント（ｉ＝ｉ＋１）することによって、次のノードのリンク旋回角αについて符号反転の判断を行う（Ｓ５１１）。一方、リンク旋回角αの符号が反転すると判断された場合には（Ｓ５１１でＹｅｓ）、次ステップＳ５１３に処理を移行する。
【００６１】
次のステップＳ５１３では、ｉ番目のノードをカーブ出口のノードとして特定して記憶する処理が行われる。具体的には、例えば、ステップＳ５０７と同様、当該ノードのノード番号をメモリ２２の所定領域に記憶する。例えば、図１３に示す道路リンクの概念例では、左旋回と表示されている旋回角＋１５度のｊ＝２カーブα２(2) がこれに相当する。なお、カーブ入口判断時は、(i-1) のノードを入口として特定し（Ｓ５０７）、カーブ出口判断時はｉのノードを出口として特定するのはカーブ全体を含むようにカーブ入口、出口のノードを特定するためである。このステップＳ５１３による処理を終了すると、図４に示すデータベース修正処理に復帰し、ステップＳ３０３の次のステップＳ３０５に処理を移行する。
【００６２】
このように本ＤＢ修正範囲特定処理では、カーブ入口、出口を特定しそれをメモリ２２に記憶するので、データベース２３の道路情報２３ｂを構成する道路リンクデータに対して、右曲がりカーブの入り出口あるいは左曲がりカーブの入り出口を特定することができる。つまり、地図上の道路におけるカーブの入り出口を正確に把握することが可能となる。
【００６３】
図６に示すＤＢ修正範囲特定処理は、右曲がりカーブまたは左曲がりカーブに対してその入り出口を特定可能にする処理であるが、ここで、複数（２以上）のカーブに対してその入り出口を特定可能にする「複数カーブ対応のＤＢ修正範囲特定処理」を図７に基づいて説明する（なお、図７では、単に「ＤＢ修正範囲特定処理」と表記されている。）。
【００６４】
［図７：複数カーブ対応のＤＢ修正範囲特定処理］
図７に示すように、複数カーブ対応のＤＢ修正範囲特定処理では、まずステップＳ５２１によりリンク旋回角α(i) およびノード番号Ｐ(i) の添字ｉを０（ゼロ）、またカーブ数ｎを０（ゼロ）に設定し初期化する処理が行われる。
【００６５】
続くステップＳ５２３では、図６を参照して説明したＤＢ修正範囲特定処理のステップＳ５０３と同様に、リンク旋回角αの符号が反転するノードを判断する処理が行われる。そして、リンク旋回角αの符号が反転すると判断されない場合には（Ｓ５２３でＮｏ）、ステップＳ５２５によりリンク旋回角α(i) の添字ｉをインクリメント（ｉ＝ｉ＋１）することによって、次のノードのリンク旋回角αについて符号反転の判断を行う（Ｓ５２３）。一方、リンク旋回角αの符号が反転すると判断された場合には（Ｓ５２３でＹｅｓ）、次ステップＳ５２７に処理を移行する。なお、図７には図示されていないが、道路情報２３ｂの道路リンクデータの最後を示す値まで、リンク旋回角α(i) の添字ｉを増加させても、ステップＳ５２３によりカーブの入口を検出できない場合には、本ＤＢ修正範囲特定処理を終了し、図４に示すデータベース修正処理に復帰する。
【００６６】
次のステップＳ５２７では、(i-1) 番目のノードを第１カーブ入口のノードとして特定して記憶する処理が行われる。具体的には、例えば、当該ノードのノード番号をメモリ２２の所定領域に記憶する。例えば、図１３に示す道路リンクの概念例では、右旋回と表示されている旋回角−３２度のｊ＝１カーブα２(1) がこれに相当する。
【００６７】
ステップＳ５２７によりカーブ入口のノードとして特定されるノードを記憶すると、次にステップＳ５２９により第１カーブ入口からＰ(i) 番目のノードまでの距離が所定値以内であるか否かの判断処理が行われる。即ち、第１カーブ入口から現在検出したノードまでの距離を算出しその距離、つまり連続したカーブ（例えばＳ字カーブ）の全長が所定距離（例えば５００ｍ）を超える場合には（Ｓ５２９でＮｏ）、ジャイロセンサ３３によるジャイロデータの積算誤差が大きくならない程度の距離でデータベース２３の道路情報２３ｂを修正するため、複数カーブ対応のＤＢ修正範囲特定処理を終了して図４に示すデータベース修正処理に復帰する。一方、第１カーブ入口からの連続したカーブの全長が所定距離以内である場合には（Ｓ５２９でＹｅｓ）、ステップＳ５３１に移行する。
【００６８】
続くステップＳ５３１では、リンク旋回角α(i) とノード番号Ｐ(i) の添字ｉをインクリメント（ｉ＝ｉ＋１）する。そして、ステップＳ５３３により、ステップＳ５２３と同様、リンク旋回角αの符号が反転するノードを判断する処理が行われる。このステップＳ５３３により、リンク旋回角αの符号が反転すると判断されない場合には（Ｓ５３３でＮｏ）、再びステップＳ５２９により第１カーブ入口からＰ(i) 番目のノードまでの距離が所定値以内であるか否かの判断処理が行われる。一方、リンク旋回角αの符号が反転すると判断された場合には（Ｓ５３３でＹｅｓ）、次ステップＳ５３５に進む。
【００６９】
ステップＳ５３５では、各カーブの入口から出口までのリンク旋回角α(i) を積算し、その積算値が所定の値以上でない場合、即ち当該カーブがうねり程度の道路の湾曲である場合には（Ｓ５３５でＮｏ）、データベース２３の道路情報２３ｂを修正するほどのカーブではないので、次のステップＳ５３７、Ｓ５３９による各処理を行うことなく、ステップＳ５４１に処理を移行して、それまでのカーブを修正対象から除外する。一方、第ｎカーブ入口からＰ(i) までの旋回角の積算値が所定値以上である場合には（Ｓ５３５でＹｅｓ）、図６を参照して説明したＤＢ修正範囲特定処理のステップＳ５１３と同様に、ステップＳ５３７によりｉ番目のノードを第ｎカーブ出口のノードと特定して記憶する処理が行われる。具体的には、例えば、当該ノードのノード番号をメモリ２２の所定領域に記憶する。例えば、図１３に示す道路リンクの概念例では、旋回角−１０度のｊ＝３カーブα２(3) がこれに相当する。
【００７０】
続くステップＳ５３９では、次のカーブに備えてｎの値をインクリメント（ｎ＝ｎ＋１）する処理が行われ、さらにステップＳ５４１により(i-1) 番目のノードを第ｎカーブ入口のノードと特定して記憶する処理が行われる。具体的には、例えば、当該ノードのノード番号をメモリ２２の所定領域に記憶する。例えば、図１３に示す道路リンクの概念例では、左旋回と表示されている旋回角＋１５度のｊ＝２カーブα２(2) がこれに相当する。ここで、カーブの入口、出口はカーブ全体を含むように特定する。即ち、カーブ入口では(i-1) を、またカーブ出口ではｉを用いるので、連続カーブではカーブ出口のノードと、次のカーブ入口のノードが交差することとなる。
【００７１】
ステップＳ５４１による処理が完了すると、ステップＳ５２９に処理を移行して、再び第１カーブ入口からＰ(i) 番目のノードまでの距離が所定値以内であるか否かの判断処理が行われる。そして、ステップＳ５２９〜Ｓ５４１の各処理を繰り返して連続カーブを検出し、連続カーブ全体の長さが所定値以上となった時点で（Ｓ５２９でＮｏ）、前述したように、複数カーブ対応のＤＢ修正範囲特定処理を終了して図４に示すデータベース修正処理に復帰する。
【００７２】
このように図７に示す複数カーブ対応のＤＢ修正範囲特定処理では、連続カーブを検出することができるので、例えば、右曲がりカーブと左曲がりカーブとの組合せによるＳ字カーブ等を、右曲がりカーブと左曲がりカーブとに分解しそれぞれの左右のカーブを個々に特定した場合に比べ、長距離区間においてカーブ形状を特定できる。そのため、実道路の形状と、データベース２３の道路情報２３ｂによる当該実道路の形状とを一致させる際に、両者間の整合誤差範囲（ズレが発生し得る範囲）を狭くすることができる。
【００７３】
［図４：データベース修正処理（Ｓ３０５：修正用軌跡データ取得処理）］
図４に戻ってステップＳ３０５では、修正用軌跡データ取得処理が行われる。この処理は、データベース２３の道路情報２３ｂを修正するのに必要となる実道路を走行する当該車両５０の軌跡データを取得するもので、特許請求の範囲に記載の「走行軌跡情報取得手段」に相当する。この処理の詳細は図８に図示されており、またジャイロセンサ３３等により取得される旋回角のサンプルデータ例が図１４に、さらにこの軌跡データと道路情報２３ｂによる道路リンクと対応関係が図１５に、それぞれ図示されているので、ここでは図８、図１４および図１５を参照して修正用軌跡データ取得処理を説明する。また必要に応じて図１３も参照する。
【００７４】
［図８：修正用軌跡データ取得処理］
図８に示すように、修正用軌跡データ取得処理では、まずステップＳ６０１によりノード点Ｎ(i) の添字ｉをNS-2に設定し、またジャイロセンサ３３により取得される軌跡データ（旋回角データ）のデータ番号ｋを１に設定する初期化処理が行われる。この添字ｉに設定されるNS-2は、図１３に示すように、□（白四角）によって囲まれた×（バツ）のノード点、即ち軌跡データの取得開始点を表す値で、データベース２３の道路情報２３ｂに基づいて与えられる。
【００７５】
続くステップＳ６０３では、軌跡データを取得している当該車両５０がその走行により、軌跡データの取得開始点に相当するノード点Ｎ(NS-2)を通過したか否かの判断処理が行われる。この処理により当該車両５０がノード点Ｎ(NS-2)を通過したと判断できない場合には（Ｓ６０３でＮｏ）、次のデータを取得するため、ステップＳ６０５によりデータ番号ｋをインクリメント（ｋ＝ｋ＋１）する処理が行われる。一方、当該車両５０がノード点Ｎ(NS-2)を通過したと判断できる場合には（Ｓ６０３でＹｅｓ）、次ステップＳ６０７に処理に移行する。
【００７６】
次のステップＳ６０７では、ノード点Ｎ(i) の添字ｉをNS+2に設定する処理と、当該車両５０がノード点Ｎ(NS-2)を通過したときのデータ番号ｋをk1に記憶（k1＝ｋ）する処理とが行われる。この添字ｉに設定されるNS+2は、図１３に示すように、□（白四角）によって囲まれた×（バツ）のノード点、即ち軌跡データの取得終了点を表す値で、データベース２３の道路情報２３ｂに基づいて与えられる。
【００７７】
続くステップＳ６０９では、ジャイロセンサ３３により取得された軌跡データをメモリ２２の所定領域に保存する処理が行われ、さらに次のデータを取得するため、ステップＳ６１１によりデータ番号ｋをインクリメント（ｋ＝ｋ＋１）する処理が行われる。そして、次のステップＳ６１３により当該車両５０が軌跡データの取得終了点に相当するノード点Ｎ(NS+2)を通過したか否かを判断する処理が行われる。
【００７８】
このステップＳ６１３により、当該車両５０がノード点Ｎ(NS+2)を通過したと判断できない場合には（Ｓ６１３でＮｏ）、取得した次のデータをメモリ２２に保存するため、ステップＳ６０９に処理を移行する。一方、当該車両５０がノード点Ｎ(NS+2)を通過したと判断できる場合には（Ｓ６０９でＹｅｓ）、次のステップＳ６１５に処理を移行し、当該車両５０がノード点Ｎ(NS+2)を通過したときのデータ番号ｋをk2に記憶（k2＝ｋ）する。そして、このステップＳ６１５による処理を終了すると、図４に示すデータベース修正処理に復帰し、ステップＳ３０５の次のステップＳ３０７に処理を移行する。
【００７９】
これにより、ジャイロセンサ３３からＣＰＵ２１に入力される回転角速度データをＣＰＵ２１により積分演算することによって、当該車両５０の旋回角データを得られるので、個々の位置における当該車両５０の旋回角データを、所定方向を中心（ゼロ）に左方向の旋回角を＋（プラス）、右方向の旋回角を−（マイナス）にプロットすると、図１４に示すように表すことができる。なお、図１４に示す中黒二重丸（(イ)〜(ホ)）は、前述したカーブの入口や出口を表す。
【００８０】
また、この旋回角データに基づいて軌跡データを演算することによって、図１５に示すように、当該軌跡データと道路情報２３ｂによる道路リンクとの対応関係を得ることができる。この図１５では、図１４に示す軌跡データ取得開始点における通過軌跡データ■（黒四角）を図１３に示す道路情報２３ｂによる道路リンクの軌跡データ取得開始点□（白四角）に重ね合わせ、さらにその座標（Ｘ(1),Ｙ(1) ）をゼロ（Ｘ(1)＝０、Ｙ(1)＝０）に設定することによって、この座標を原点に、各軌跡データ（旋回角データ）とその走行距離とに基づいてデータ番号ｋごとに順次プロットする。これにより、図１５に示すように、貼付前軌跡データ（Ｘ(k),Ｙ(k) (k=k1〜k2)）による走行軌跡を、・（黒点）の線状を呈する集まりとして得ることができる。なお、図１５に示す×（バツ）は、リンク長対応点を表し、またこのリンク長対応点を結ぶ直線は、軌跡リンク（長さＧ(1) 〜Ｇ(5) ）を表す。また、図１５に示す中黒二重丸（(イ)〜(ホ)）は、前述したカーブの入口、出口を表し、さらに○（白丸）は後方リンク長対応点を表す。
【００８１】
また、図１３と図１４との対応関係は次の通りである。図１３に示す軌跡データ取得開始点□（白四角）に対応する旋回角データとして、図１４に示す軌跡データ取得開始点の通過軌跡データ■（黒四角）がジャイロセンサ３３によって取得されて保存される（Ｓ６０９）。同様に、図１３に示す修正区間始点△（白三角）と図１４に示す修正区間始点の通過軌跡データ▲（黒三角）とが、また図１３に示す修正区間終点△（白三角）と図１４に示す修正区間終点の通過軌跡データ▲（黒三角）とが、さらに図１３に示す軌跡データ取得終了点□（白四角）と図１４に示す軌跡データ取得終了点の通過軌跡データ■（黒四角）とが、それぞれ対応している。また、この修正区間始点から修正区間終点までの間の各ノード点についても、図１３に示す×（バツ）と図１４に示す●（黒丸）とがそれぞれ対応している。
【００８２】
［図４：データベース修正処理（Ｓ３０７：類似判断値算出処理）］
図４に戻ってステップＳ３０７では類似判断値算出処理が行われる。この処理は、「カーブ区間の道路情報から得られる道路形状」および「カーブ区間の走行軌跡情報から得られる走行軌跡形状」の類似の有無を判断するものである。即ち、ステップＳ３０３により特定された修正の対象となり得るカーブ区間の道路情報２３ｂから得られる道路形状（道路リンクと同義）と、ステップＳ３０５により取得される当該カーブ区間の軌跡データによる走行軌跡形状と、の間において対応点間距離の平均値が最小となるもの（類似判断値のことで、以下「ＬＭ値」という。）を算出する処理を行うもので、次のステップＳ３０９とともに、特許請求の範囲に記載の「形状類似判断手段」に相当するものである。この類似判断値算出処理の詳細は、図９〜図１１に図示されており、またこの処理の概念例が図１６に図示されているので、ここでは図９〜図１１、図１６を参照して類似判断値算出処理を説明する。
【００８３】
［図９：類似判断値算出処理］
図９に示すように、類似判断値算出処理では、ステップＳ７０１により仮配置処理が行われる。この処理は、「カーブ区間の道路情報から得られる道路形状」および「カーブ区間の走行軌跡情報から得られる走行軌跡形状」を同一の仮想平面上に仮に配置する処理を行うもので、具体的には、ステップＳ３０３により特定されたカーブ区間の道路情報２３ｂの座標平面（仮想平面）上の座標位置に、ステップＳ３０５により取得された軌跡データを概ね合わせて配置する処理を行う。この処理の詳細は図１０に図示されているので、ここでは、図１０を参照して仮配置処理を説明する。
【００８４】
［図１０：仮配置処理］
図１０に示すように、仮配置処理では、まずステップＳ８０１により、ノード点の東経座標ED(i) および北緯座標ND(i) の添字ｉをNS-2に設定し（ｉ＝NS-2）、リンク番号kkを初期値１に設定する（kk＝１）、初期化処理がそれぞれ行われる。
【００８５】
続くステップＳ８０３では、始点座標仮配置処理が行われる。即ち、ステップＳ８０１により、kkに１、ｉにNS-2が設定されているので、この処理では、ジャイロセンサ３３により取得される軌跡データ（旋回角データ）のデータ番号ｋに、データ番号１が設定されたkkを設定することによって、始点座標として、東経座標EG0(１) にED(NS-2)、北緯座標NG0(１) にND(NS-2)が、それぞれ設定される。
【００８６】
次のステップＳ８０５では、始点の東経座標EG0(k)、北緯座標NG0(k)の添字ｋをインクリメント（ｋ＝ｋ＋１）する処理が行われ、さらにステップＳ８０７により仮の軌跡座標計算処理が行われる。この座標計算は、図１５を参照して説明したように、始点の座標（ED(NS-1)、ND(NS-1)）を原点に、各軌跡データ（旋回角データ）とその走行距離とに基づいて、ステップＳ８０５によりインクリメントされるデータ番号ｋをごとに積算して算出される（ステップＳ８０９でＮｏ）。そして、インクリメントされたデータ番号ｋがデータ番号k2に一致するとステップＳ８０９により判断されると（Ｓ８０９でＹｅｓ）、データ番号k1〜k2について仮の軌跡座標計算が終了する。これにより、道路情報２３ｂのノード位置に対応した走行軌跡上の地点（対応点）の座標が求められ、当該カーブ区間の軌跡データが道路情報２３ｂに対して仮決めされる。なお、道路情報２３ｂによるノードの座標値は（ED(k)，ND(k)）であり、また仮配置された走行軌跡上の対応点の座標値は（EG0(k)，NG0(k)）である。
【００８７】
ステップＳ８０９によりデータ番号ｋがデータ番号k2に一致したと判断されると（Ｓ８０９でＹｅｓ）、仮の軌跡座標計算が終了するので、本仮配置処理を終了して図９に示す類似判断値算出処理に復帰する。なお、データ番号k2は、当該車両５０がノード点Ｎ(NS+2)を通過したときにジャイロセンサ３３によって取得された軌跡データ（旋回角データ）の番号である（図１３参照）。
【００８８】
［図９：類似判断値算出処理（続き）］
図９に示すように、ステップＳ７０１の次は、ステップＳ７０３によるＬＭ値算出処理が行われる。この処理は、図１６に示すように、道路情報２３ｂの道路形状（図１６に示す破線）上に設定される複数のノード点（道路情報２３ｂに含まれる、道路の位置を表すための座標点；この座標点の列により道路形状が表される）☆（白星），★（黒星）と、カーブ区間両端の★（黒星）間の当該複数の所定点に対応して設定される走行軌跡形状（図１６に示す実線）上の対応する道路情報２３ｂ上の各ノード点に最も近い複数の対応点×（バツ）との距離（対応点間距離LL(K) ）の平均値（又は二乗和平均値）を所定値以下にする処理を行うもので、具体的には、軌跡データによる走行軌跡を座標平面（仮想平面）上で、東経方向および北緯方向、更に回転方向に徐々にずらしていき、道路情報２３ｂによる道路形状との差（対応点間距離LL(K) ）の平均値（又は二乗和平均値）が所定値以下で最小となる配置を求める処理を行う。なお、ＬＭ値とは、対応点間距離の平均値が所定値以下で最小となるもののことで、類似判断値のことである。この処理の詳細は図１１に図示されているので、ここでは図１１を参照してＬＭ値算出処理を説明する。
【００８９】
［図１１：ＬＭ値算出処理］
図１１に示すように、ＬＭ値算出処理では、まずステップＳ９０１により、ＬＭ値を初期値１００に設定（ＬＭ＝１００）するとともに、シフト量ΔＥ、ΔＮをそれぞれ初期値−１００に設定（ΔＥ＝−１００、ΔＮ＝−１００）する、初期化処理が行われる。なお、ΔＥは東経方向のシフト量、ΔＮは北緯方向のシフト量で、後述するステップＳ９１５によりそれぞれ徐々に例えば１秒づつ加算される。
【００９０】
続くステップＳ９０３では、走行軌跡上の対応点をシフトさせる処理が行われる。例えば、図１６に示すように、ステップＳ７０１により座標平面上に仮配置された走行軌跡上の対応点×（バツ）の座標値（EG0(k)，NG0(k)）に対して、シフト量ΔＥ、ΔＮを加えて東経方向および北緯方向にそれぞれずらしたときの座標（東経座標EG(k)、北緯座標NG(k)）を求める処理が行われる（EG(k)＝EG0(k)＋ΔＥ，NG(k)＝NG0(k)＋ΔＮ）。
【００９１】
次のステップＳ９０５では、対応点間距離を算出する処理が行われる。即ち、ステップＳ８０３により走行軌跡の配置をシフト量ΔＥ、ΔＮ分だけ東経方向および北緯方向にずらしたので、このずれた状態における走行軌跡形状と道路情報２３ｂによる道路形状との両形状間の距離（対応点間距離LL(K) ）を各対応点間において算出する処理を行う。具体的には、図１６に示すように、ステップＳ７０１の仮配置処理により、道路情報２３ｂのノード位置☆（白星），★（黒星）（ED(k)，ND(k)）が求められているので、このノード位置（ED(k)，ND(k)）とステップＳ９０３により求めたシフト後の走行軌跡座標×（バツ）（EG(k)、NG(k)）との差から、各ノードごとの対応点間距離LL(K) を算出する（LL(k)＝√｛(EG(k)−ED(k))2 ＋(NG(k)−ND(k))2 ｝，k1≦ｋ≦k2）。なお、ｋはリンク番号で、その範囲は、ステップＳ３０５により取得された当該カーブ区間のデータ番号k1以上データ番号k2以下である。例えば、図１６に示す例では、始点変曲点★（黒星）から終点変曲点★（黒星）までＳ字カーブ区間である。
【００９２】
続くステップＳ９０７では、ステップＳ９０５により算出された対応点間距離の平均値を算出する処理が行われる。即ち、道路情報２３ｂによる道路形状とシフトされた走行軌跡形状との類似度合いを評価するため、ここではステップＳ９０５により求められた各ノードごとの対応点間距離LL(K) の総和ΣLL(k)を当該カーブ区間のノード数ｎで割って対応点間距離の平均値L_AVR を算出する処理を行う（L_AVR ＝ΣLL(k)／ｎ ，k1≦ｋ≦k2）。
【００９３】
ステップＳ９０９では、ステップＳ９０７により求められた対応点間距離の平均値L_AVR がＬＭ値以下であるか否かを判断する処理が行われる（L_AVR ≦ＬＭ）。即ち、対応点間距離の平均値L_AVR がＬＭ値以下である場合には（Ｓ９０９でＹｅｓ）、ステップＳ９０３によりシフトされた走行軌跡形状の配置は、道路情報２３ｂによる道路形状との類似度合いが高いと評価することができるため、次のステップＳ９１１で、ＬＭ値等を更新する。一方、対応点間距離の平均値L_AVR がＬＭ値以下でない場合には（Ｓ９０９でＮｏ）、ステップＳ９０３によりシフトされた走行軌跡形状の配置は、道路情報２３ｂによる道路形状との類似度合いが高いとは評価することができない。そのため、ＬＭ値等を更新することなく、ステップＳ９１３によりシフト量ΔＥ、ΔＮの両方についてステップＳ９０３〜Ｓ９１１の各処理が終了したか否かを判断する。
【００９４】
ステップＳ９１１は、シフトされた走行軌跡形状の配置が道路情報２３ｂによる道路形状と類似度合いが高いと評価された場合に行われるもので、ＬＭ値の更新する処理（ＬＭ＝L_AVR ）およびこのときのシフト量ΔＥ、ΔＮをそれぞれΔＥＭ、ΔＮＭとして記憶する処理が行われる。
【００９５】
続くステップＳ９１３では、シフト量ΔＥ、ΔＮがそれぞれ所定値（例えば＋１００）まで加算されているか否かを判断する処理が行われる。即ち、シフト量ΔＥ、ΔＮは、ステップＳ９１５により、例えば、道路情報２３ｂの最小分解値（例えば１秒相当）ずつ加算されていくので、この加算が当該所定値（＋１００）まで終わっているか否かを判断する。なお、ステップＳ９１５によるシフト量ΔＥ、ΔＮの加算は、両者が総当たり的に行われるため、実際には、いわゆる入れ子の関係をもつ二重ループ内で前述したステップＳ９０３〜Ｓ９１１が処理されるように、シフト量ΔＥ、ΔＮの加算処理が行われる。ところが、各処理の流れを説明する上で、また図面のフローチャート表現上で、記載が冗長となるので、図１１ではこのような入れ子関係になる二重ループ処理の終了判断をステップＳ９１３でまとめて表現し、またシフト量ΔＥ、ΔＮの加算処理もステップＳ９１５においてまとめて表現したので、この点に留意されたい。
【００９６】
このように図１１に示すＬＭ値算出処理が終了すると、道路情報２３ｂによる道路形状との差（対応点間距離LL(K) ）の平均値L_AVR がＬＭ値以下で最小となる軌跡データによる走行軌跡の配置が得られるので、このときのＬＭ値、ΔＥＭおよびΔＮＭからなるオフセット値を戻り値として、図９に示す類似判断値算出処理を終了して、図４に示すデータベース修正処理に戻る。
【００９７】
［図４：類似判断処理（Ｓ３０９）］
図４に戻るとステップＳ３０９により類似判断処理が行われる。この処理は、「カーブ区間の道路情報から得られる道路形状」と「カーブ区間の走行軌跡情報から得られる走行軌跡形状」とが類似しているか否かを判断するもので、前述したステップＳ３０７とともに、特許請求の範囲に記載の「形状類似判断手段」に相当し得るものである。具体的には、前述したステップＳ３０７により算出されたＬＭ値（類似判断値）に基づいて当該ＬＭ値が所定値（例えば５０）以上であるか否かを判断する。そして、ＬＭ値が所定値（例えば５０）以上である場合には、両形状は類似していないと判断し（Ｓ３０９でＹｅｓ）、続くステップＳ３１１に処理を移行する。
【００９８】
一方、ＬＭ値が所定値以上でない場合には、両形状は類似していないとは判断できないので（Ｓ３０９でＮｏ）、本データベース修正処理を終了する。即ち、ＬＭ値が所定値未満である場合には、これらの両形状は類似している判断できるので、当該カーブ区間をあえて修正する必要はない。そのため、続くステップＳ３１１やステップＳ３１３による各処理を行うことなく、本データベース修正処理を終了する。このように本データベース修正処理では、これらの両形状があえて修正する必要のない程度に類似している場合には当該道路情報２３ｂを修正しないので、不要な道路情報２３ｂの修正によって修正前よりも却って当該カーブ区間の道路形状とその前後の区間の道路形状との繋ぎ目の滑らかさが損なわれるといった事態も防止することができる。
【００９９】
なお、両形状が類似していると判断（Ｓ３０９でＮｏ）された区間は、データベース２３に記憶された道路情報２３ｂによる道路形状が実道路の形状とよく一致していることが確認されたことになる。ここで、形状がよく一致するということは、元々のデータベース上の道路データは、その東経・北緯の値も精度がよいということが言える（形状が走行軌跡とよく一致するが、東経・北緯で表現される絶対位置が間違っているということは想定しにくいからである）。従って、次に述べる軌跡データの貼付け処理（Ｓ３１１）において、修正対象となるカーブ区間を修正して貼り付ける際の基準となる、当該カーブ区間に隣接する道路の道路形状は、この実道路の形状とよく一致していることが確認された道路区間が利用されることになる。即ち、東経・北緯の値を含め実道路とよく一致していることが確認された道路の道路形状が、修正の際の基準となるので、修正の精度がその形状だけでなく、東経・北緯の値としてもより確実に確保される、という効果が得られる。
【０１００】
［図４：軌跡データ貼付処理（Ｓ３１１）］
ステップＳ３０９により両形状は類似していないと判断された場合には（Ｓ３０９でＹｅｓ）、ステップＳ３１１により軌跡データ貼付処理が行われる。この処理では、ステップＳ３０９により両形状が類似していないと判断された場合、軌跡データによる走行軌跡形状の一端点とこの走行軌跡形状に隣接した道路情報２３ｂによる道路形状の端点で一端点に接続されるべきものとが滑らかに接続されるように軌跡データを変換する。なお、この処理は、特許請求の範囲に記載の「走行軌跡情報変換手段」に相当し得るものである。この軌跡データ貼付処理の詳細は、図１２に示されており、またこの処理の概念例が図１７に図示されているので、ここでは図１２および図１７を参照して軌跡データ貼付処理を説明する。
【０１０１】
図１２に示すように、軌跡データ貼付処理では、ステップＳ１００１により軌跡データの始点配置処理が行われる。この処理では、図１７に示すような座標系において、修正対象となる当該カーブ区間（以下「修正区間」という。）の軌跡データによる走行軌跡の始点ｐ（走行軌跡形状の一端点）における接線と、この走行軌跡の始点ｐ側に隣接する道路形状の端点、即ち修正区間の始点Ｐにおける接線と、が同一方向を向くように、両点ｐ、Ｐを重ねて配置する。つまり、走行軌跡の始点ｐにおける進行方向の方位と修正区間の始点Ｐにおける進行方向の方位とが同一となるように、修正区間の始点Ｐに走行軌跡の始点ｐを配置する。なお、図１７においては、これらの始点ｐ、Ｐは★（黒星）により表されている。これにより、変換前の走行軌跡は、図１７に示す細実線のように配置される。このように軌跡データによる走行軌跡と道路情報２３ｂによる道路形状とは、始点ｐ、Ｐにおいて両形状の接線が同一となるように配置すると、それぞれの終点ｑ、Ｑでは互いに一致しないことが多い。そこで、当該修正区間の走行軌跡とこれに近接した道路形状（当該修正区間の前後の道路形状）との繋ぎ目が滑らかになるように、次ステップＳ１００３、Ｓ１００５による軌跡データの変換処理を行う。
【０１０２】
次のステップＳ１００３では、軌跡データの変換に係る各パラメータを算出する処理が行われる。即ち、続くステップＳ１００５において、次式(1) による角θcxを算出する処理が行われるため、この演算処理に必要な各パラメータを算出する。具体的には、走行軌跡の始点における接線（図１７に示す走行軌跡始点接線）および走行軌跡の終点における接線（図１７に示す走行軌跡終点接線）により形成される角θＢ、走行軌跡の始点側に隣接する道路形状の端点における接線および走行軌跡の終点側に隣接する道路形状の端点における接線により形成される角αＢ、走行軌跡の始点から走行軌跡上の任意点ｒまでの走行軌跡上の距離Ｌgx、当該修正区間における走行軌跡距離の全長ＬＢ、当該任意点の接線と走行軌跡始点接線とにより形成される角θｘである。なお、任意点ｒは、図１７において◎（二重丸）により表されている。
【０１０３】
θcx  ＝  θｘ × （αＢ／θＢ） × （Ｌgx／ＬＢ）      …(1) 
【０１０４】
続くステップＳ１００５では、走行軌跡上の各対応点における方位差を補正する処理が行われる。例えば、上式(1) に基づいて、当該修正区間における走行軌跡距離の全長ＬＢに対する任意点ｒまでの走行軌跡上の距離Ｌgxの割合（距離比（Ｌgx／ＬＢ））に応じて、任意点ｒにおける角θｘに角度比（αＢ／θＢ）を乗じる処理を行う。この処理により任意点ｒにおける修正された新たな角度がθcxとなる。
【０１０５】
これにより、始点ｐ、Ｐから走行軌跡上の各対応点までの距離Ｌgxの比率（距離比（Ｌgx／ＬＢ））に応じて当該角度比（αＢ／θＢ）を分配し、その分配された角度をこれらの各対応点における方位として吸収するので、それぞれの方位の補正値に準じて走行軌跡が変化する。その結果、走行軌跡の終点ｑ（走行軌跡形状の他端点）における接線と、この走行軌跡の終点ｑ側に隣接する道路形状の端点、即ち修正区間の終点Ｑにおける接線と、が同一方向を向くように、両点ｑ、Ｑを一致させることができる（図１７に示す一点鎖線による矢印）。なお、図１７においては、これらの終点ｐ、Ｐは☆（白星）により表されている。つまり、走行軌跡の終点ｑにおける進行方向の方位と修正区間の終点Ｑにおける進行方向の方位とが同一となる。したがって、軌跡データによる走行軌跡とこれに隣接した道路情報２３ｂによる道路形状との繋ぎ目を滑らかにすることができるので、データベース２３に記憶された道路情報２３ｂによる道路形状と実道路の形状とを一致させることができる。ステップＳ１００５による処理が終わると、軌跡データの変換処理が終了するので、図４に示すデータベース修正処理に復帰する。なお、上述したステップＳ１００１では、軌跡データの始点を配置したが、このステップＳ１００１において軌跡データの終点を配置しても良い。この場合、その後のステップＳ１００３、Ｓ１００５において、当該終点ｑ、Ｑを基準に、走行軌跡上の任意点までの距離Ｌgxや当該任意点の接線と成すθｘやθcxを算出する。これにより、上述と同様の作用・効果を得ることができる。
【０１０６】
［図４：ＤＢ修正データ書込処理（Ｓ３１３）］
図４に戻るとステップＳ３１３によりＤＢ修正データ書込処理が行われる。この処理は、特許請求の範囲に記載の「カーブ区間修正手段」に相当するもので、例えば、出力プログラム２２ｇによってデータベース２３に対する道路情報２３ｂの書込処理が行われる。具体的には、前述のステップＳ３１１により軌跡データが変換されているので、このように変換された当該軌跡データを当該カーブ区間（Ｓ字カーブ区間）の道路の新たな道路情報２３ｂとして旧来の道路情報２３ｂに上書きすることにより、データベース２３に記憶された道路情報２３ｂを修正する。このようなＤＢ修正データ書込処理が終了すると、図４に示すデータベース修正処理が終了するので、図２に示す基本制御処理に復帰する。
【０１０７】
［図２：基本制御処理（Ｓ１１１：経路案内処理）］
図２に戻って、ステップＳ１０９によるデータベース修正処理が終了すると、次のステップＳ１１１により経路案内処理が行われる。この処理は、経路案内プログラム２２ｆにより行われるもので、通常のナビゲーション処理におけるものと同様、例えば、ステップＳ１０５による経路探索プログラム２２ｃにより探索された経路に関する情報（例えば、右左折等の進行方向の説明や道路交通情報等）を、利用者に対してディスプレィ２６に表示される画像や音源ユニット２８により出力される合成音声等によって行う。このときに参照されるデータベース２３の道路情報２３ｂは、これまでに説明したステップＳ１０７やステップＳ１０９によって、ジャイロセンサ３３等による実道路に即した道路情報に修正されているので、走行中の当該車両５０の位置とディスプレィ２６の画面表示上の現在位置とを正確にマップマッチングさせることができる。そのため、当該車両５０の利用者（運転者等）に違和感を与え難い。また、データベース２３の道路情報２３ｂが、車両制御装置に利用されていた場合には、当該車両制御装置に対して、精度の高い道路情報２３ｂを提供することができるので、信頼性の高い舵取制御、駆動制御や制動制御等を実現可能にすることができる。
【０１０８】
以上説明したように、本実施形態に係るナビゲーション装置２０によると、ＣＰＵ２１により実行されるデータベース修正プログラム２２ｅによって次の各処理が行われる。即ち、ＤＢ修正範囲特定処理（Ｓ３０３）により、データベース２３に記憶された道路情報２３ｂから得られる道路形状がカーブしている区間を当該道路情報２３ｂにおいてカーブ区間として特定し、修正用軌跡データ取得処理（Ｓ３０５）により、実際の道路９０を走行して得られる軌跡データをカーブ区間について取得する。そして、類似判断値算出処理等（Ｓ３０７、Ｓ３０９）により、「カーブ区間の道路情報２３ｂから得られる道路形状」および「カーブ区間の軌跡データから得られる走行軌跡形状」の類似の有無を判断し、両形状が類似していないと判断された場合（Ｓ３０９でＹｅｓ）、当該走行軌跡形状の一端点ｐ、ｑとこの走行軌跡形状に隣接した道路形状の端点Ｐ、Ｑで当該一端点ｐ、ｑに接続されるべきものとが滑らかに接続されるように軌跡データを軌跡データ貼付処理（Ｓ３１１）により変換し、この変換された軌跡データに基づいてカーブ区間の道路情報２３ｂをＤＢ修正データ書込処理（Ｓ３１３）により修正する。これにより、カーブ区間の道路情報２３ｂから得られる道路形状とカーブ区間の軌跡データから得られる走行軌跡形状とが類似していないと判断された場合に（Ｓ３０９でＹｅｓ）、両形状の端点同士が滑らかに接続されるように、軌跡データを変換するので、当該走行軌跡形状とこれに隣接した道路形状との繋ぎ目を滑らかにすることができる。したがって、データベース２３に記憶された道路情報２３ｂによる道路形状と実道路の形状とを一致させることができる。
【０１０９】
また、軌跡データ貼付処理（Ｓ３１１）では、走行軌跡終点接線（または走行軌跡始点接線）と走行軌跡の終点側に隣接する道路形状の接線（または走行軌跡の始点側に隣接する道路形状の接線）とが同一方向を向くように軌跡データを変換する（図１７参照）。具体的には、走行軌跡に対応する道路区間に隣接する両側の道路区間の道路形状の端点の接線による角αＢと走行軌跡形状の接線（走行軌跡始点接線と走行軌跡終点接線）による角θＢとの角度比（αＢ／θＢ）が、走行軌跡形状に沿った距離Ｌgxに比例して走行軌跡形状上の任意点の接線（走行軌跡上任意点接線）とこの走行軌跡始点接線とによる角θｘに加算するように軌跡データを変換する（Ｓ１００３、Ｓ１００５）。したがって、データベース２３に記憶された道路情報２３ｂによる道路形状と実道路の形状とを一致させることができる。
【０１１０】
さらに、類似判断値算出処理（Ｓ３０７）では、カーブ区間の道路形状と当該カーブ区間の走行軌跡形状とを同一の座標系（仮想平面上）に配置し、この道路形状上の複数の所定点とこれらに対応した走行軌跡形状上の複数の対応点間距離LL(K) の平均値L_AVR が所定値ＬＭ以上である場合、両形状は類似していないと判断する。そのため、類似判断処理（Ｓ３０９）では、両形状があえて修正する必要のない程度に類似している場合には、両形状は類似していると判断され（Ｓ３０９でＮｏ）、当該道路情報は修正されない。したがって、修正前よりも却って繋ぎ目の滑らかさが損なわれるといった事態も防止することができる。
【０１１１】
なお、本発明は、技術的思想の創作として把握すると、次のように表現することもできる。即ち、(1) 本発明は、「道路の形状を一連の座標値で表す道路データを記憶する道路データ記憶手段と、前記道路データに基づいて道路がカーブしている区間（当該区間を「カーブ区間」という。）を抽出するカーブ区間抽出手段と、前記カーブ区間に対応した実際の道路を走行した際の走行軌跡を取得する走行軌跡取得手段と、前記走行軌跡の形状および前記カーブ区間の道路データの座標列による道路形状とが類似しているか否かを判断する形状類似判断手段と、両形状が類似していないと判断された場合に前記走行軌跡の両端と前記カーブ区間の道路データの両端とが滑らかに接続されるように前記道路データと同一の座標系において前記走行軌跡を変換する走行軌跡変換手段と、前記カーブ区間の道路データにおける道路の座標値を、前記変換された走行軌跡の座標値で置き換えるカーブ区間修正手段と、を備える道路データの修正装置」として表現することができる。
【０１１２】
また、(2) 本発明は、「前記(1) において、走行軌跡変換手段は、前記カーブ区間の道路データの端点における接線と前記走行軌跡の端点における接線とが同一となるように、前記走行軌跡を変換する道路データの修正装置」として表現することができる。
【０１１３】
さらに、(3) 本発明は、「前記(1) において、走行軌跡変換手段は、前記走行軌跡の両端点における接線が成す角と前記カーブ区間の道路データの両端における接線が成す角との角度比を求め、前記走行軌跡の一端点における接線と前記走行軌跡上の任意の点における接線との成す角に、前記角度比を前記走行軌跡の一端点から前記任意の点までの前記走行軌跡に沿った距離に比例させて乗じる変換を行う道路データの修正装置」として表現することができる。
【０１１４】
さらにまた、(4) 本発明は、「前記(1) 〜(3) のいずれか１において、形状類似判断手段は、前記走行軌跡を前記道路データと同一座標系に、前記走行軌跡と前記カーブ区間の道路データの座標値との平均距離が所定値以上である場合に、これらの両形状は類似していないと判断する道路データの修正装置」として表現することができる。
【０１１５】
これら(1) 〜(4) によると、カーブ区間抽出手段により道路データに基づいて道路がカーブ区間を抽出し、走行軌跡取得手段によりカーブ区間に対応した実際の道路を走行した際の走行軌跡を取得し、形状類似判断手段により、走行軌跡の形状およびカーブ区間の道路データの座標列による道路形状とが類似しているか否かを判断する。そして、両形状が類似していないと判断された場合に走行軌跡の両端とカーブ区間の道路データの両端とが滑らかに接続されるように走行軌跡変換手段により道路データと同一の座標系において走行軌跡を変換し、カーブ区間修正手段により、カーブ区間の道路データにおける道路の座標値を変換された走行軌跡の座標値で置き換える。例えば、走行軌跡変換手段として、カーブ区間の道路データの端点における接線と走行軌跡の端点における接線とが同一となるように走行軌跡を変換したり、また、走行軌跡の両端点における接線が成す角とカーブ区間の道路データの両端における接線が成す角との角度比を求め、走行軌跡の一端点における接線と走行軌跡上の任意の点における接線との成す角に、走行軌跡の一端点から任意の点までの走行軌跡に沿った距離に比例させて前記角度比を乗じる変換を行う。これにより、当該座標系では、走行軌跡の形状と道路形状とが類似していないと判断された場合には、当該カーブ区間の道路データが、走行軌跡の両端と当該カーブ区間の道路データの両端とが滑らかに接続されるように変換された走行軌跡の座標値に置き換えられる。したがって、当該カーブ区間の道路データの両端と当該走行軌跡との繋ぎ目を滑らかにすることができ、道路データ記憶手段に記憶された道路データによる道路形状と実道路の形状とを一致させることができる。
【０１１６】
また、形状類似判断手段は、走行軌跡を道路データと同一座標系に、走行軌跡とカーブ区間の道路データの座標値との平均距離が所定値以上である場合に、これらの両形状は類似していないと判断するので、両形状があえて修正する必要のない程度に類似している場合には、当該平均距離が所定値未満となるため、両形状は類似していると判断され、当該道路データは修正されない。したがって、修正前よりも却って繋ぎ目の滑らかさが損なわれるといった事態も防止することができる。
【０１１７】
なお、これら(1) 〜(4) において、上述したナビゲーション装置２０等との対応は次の通りである。ナビゲーション装置２０は「道路データの修正装置」、データベース２３は「道路データ記憶手段」、道路情報２３ｂは「道路データ」、ＣＰＵ２１は「カーブ区間抽出手段、走行軌跡取得手段、形状類似判断手段、走行軌跡変換手段、カーブ区間修正手段」、データベース修正プログラム２２ｅは「カーブ区間抽出手段、走行軌跡取得手段、形状類似判断手段、走行軌跡変換手段、カーブ区間修正手段」、ステップＳ３０３は「カーブ区間特定手段」、ステップＳ３０５は「走行軌跡取得手段」、ステップＳ３０７、Ｓ３０９は「形状類似判断手段」、ステップＳ３１１は「走行軌跡変換手段」、ステップＳ３１３「カーブ区間修正手段」、にそれぞれ相当し得る。
【図面の簡単な説明】
【０１１８】
【図１】本発明の一実施形態に係るナビゲーション装置の構成例を示すブロック図である。
【図２】本実施形態に係るナビゲーション装置のシステムプログラムによる基本制御処理の流れを示すフローチャートである。
【図３】図２に示すマップ・マッチング処理の流れを示すフローチャートである。
【図４】図２に示すデータベース修正処理の流れを示すフローチャートである。
【図５】図５(A) は、図４に示す走行データ記憶処理の流れを示すフローチャート、図５(B) は走行データ記憶処理により処理される走行データの概念を示す説明図である。
【図６】図４に示すＤＢ修正範囲特定処理の流れを示すフローチャートである。
【図７】図４に示すＤＢ修正範囲特定処理（複数カーブ対応）の流れを示すフローチャートである。
【図８】図４に示す修正用軌跡データ取得処理の流れを示すフローチャートである。
【図９】図４に示す類似判断値算出処理の流れを示すフローチャートである。
【図１０】図９に示す仮配置処理の流れを示すフローチャートである。
【図１１】図９に示すＬＭ値算出処理の流れを示すフローチャートである。
【図１２】図４に示す軌跡データ貼付処理の流れを示すフローチャートである。
【図１３】データベースの道路情報による道路リンクの概念を示す説明図である。
【図１４】ジャイロセンサ等により取得される旋回角のサンプルデータ例を示す説明図である。
【図１５】図８に示す修正用軌跡データ取得処理に関する説明図で、軌跡相対座標データの例を表したものである。
【図１６】図９に示す類似判断値算出処理に関する説明図で、走行軌跡と道路形状との類似判断例を表したものである。
【図１７】図１２に示す軌跡データ貼付処理に関する説明図で、軌跡データの変換例を表したものである。
【符号の説明】
【０１１９】
２０…ナビゲーション装置（道路情報の修正装置）
２１…ＣＰＵ（カーブ区間特定手段、走行軌跡情報取得手段、形状類似判断手段、走行軌跡情報変換手段、カーブ区間修正手段）
２１ａ…時計
２２…メモリ
２２ａ…システムプログラム
２２ｂ…入力プログラム
２２ｃ…経路探索プログラム
２２ｄ…マップ・マッチングプログラム
２２ｅ…データベース修正プログラム（カーブ区間特定手段、走行軌跡情報取得手段、形状類似判断手段、走行軌跡情報変換手段、カーブ区間修正手段）
２２ｆ…経路案内プログラム
２２ｇ…出力プログラム
２３…データベース（道路情報記憶手段）
２３ａ…地図情報
２３ｂ…道路情報
２４…入出力インタフェイス
２５…入力装置
２６…ディスプレィ
２８…音源ユニット
３１…ＧＰＳセンサ
３２…車速センサ
３３…ジャイロセンサ
３４…地磁気センサ
３５…通信装置
５０…車両
９０…実際の道路
ｐ…走行軌跡の始点（走行軌跡形状の一端点）
ｑ…走行軌跡の終点（走行軌跡形状の他端点）
ｒ…走行軌跡上の任意点（走行軌跡形状上の任意点）
Ｐ…修正区間の始点（走行軌跡形状に隣接した道路形状の端点、走行軌跡形状の一端点側に隣接する道路形状の端点）
Ｑ…修正区間の終点（走行軌跡形状に隣接した道路形状の端点、走行軌跡形状の他端点側に隣接する道路形状の端点）
θＢ（走行軌跡形状の一端点における接線および走行軌跡形状の他端点における接線により形成される角）
αＢ（走行軌跡形状の一端点側に隣接する道路形状の端点における接線および走行軌跡形状の他端点側に隣接する道路形状の端点における接線により形成される角）
θｘ（走行軌跡形状上の任意点における接線および走行軌跡形状の一端点における接線により形成される角）
Ｓ３０３（カーブ区間特定手段）
Ｓ３０５（走行軌跡情報取得手段）
Ｓ３０７、Ｓ３０９（形状類似判断手段）
Ｓ３１１（走行軌跡情報変換手段）
Ｓ３１３（カーブ区間修正手段）
【図１】
2005221419.tif 000003
【図２】
2005221419.tif 000004
【図３】
2005221419.tif 000005
【図４】
2005221419.tif 000006
【図５】
2005221419.tif 000007
【図６】
2005221419.tif 000008
【図７】
2005221419.tif 000009
【図８】
2005221419.tif 000010
【図９】
2005221419.tif 000011
【図１０】
2005221419.tif 000012
【図１１】
2005221419.tif 000013
【図１２】
2005221419.tif 000014
【図１３】
2005221419.tif 000015
【図１４】
2005221419.tif 000016
【図１５】
2005221419.tif 000017
【図１６】
2005221419.tif 000018
【図１７】
2005221419.tif 000019