地図データを記憶している地図データ記憶部と、自車両の位置情報を取得する位置情報取得部と、自車両がカーブを走行したと判定した場合、前記地図データに基づいて当該カーブの入口、中央および出口を特定し、前記位置情報取得部により取得された自車両の前記位置情報から前記入口、前記中央および前記出口に対応する自車両の位置を示す情報である入口座標、中央座標および出口座標を抽出する位置抽出部と、前記位置抽出部により抽出された前記入口座標、前記中央座標および前記出口座標を予め定められている走行傾向に対応した補正値で補正した補正後入口座標、補正後中央座標および補正後出口座標を求める位置補正部と、前記位置補正部で補正された前記補正後入口座標、前記補正後中央座標および前記補正後出口座標の各点を通る円弧の半径を算出し、当該半径を前記カーブにおける曲率半径として設定する曲率半径算出部と、前記曲率半径算出部により設定された前記曲率半径を前記地図データに関連付けた学習データとして記憶する学習データ記憶部と、を備えることを特徴とする道路形状学習装置。前記位置補正部は、前記車両位置取得部により取得された自車両の位置情報に基づいて前記カーブが左カーブであるか右カーブであるかのカーブ方向を判定し、該判定結果に基づいて予め定められた走行傾向であるアウトインアウト傾向に対応するカーブ方向毎の補正値を設定することを特徴とする請求項1記載の道路形状学習装置。前記位置補正部は、前記入口座標および前記出口座標に対する補正値をH1、前記中央座標に対する補正値をH2をとすると、右側通行において、前記カーブが自車両の進行方向に対して左カーブである場合にはH1>H2に設定し、前記カーブが自車両の進行方向に対して右カーブである場合にはH1<H2に設定し、左側通行において、前記カーブが自車両の進行方向に対して左カーブである場合にはH1<H2に設定し、前記カーブが自車両の進行方向に対して右カーブである場合にはH1>H2に設定することを特徴とする請求項2記載の道路形状学習装置。前記位置補正部は、前記補正値を、道路の幅員方向における中心からの距離に対応する値として設定することを特徴とする請求項1から3のいずれか一項に記載の道路形状学習装置。前記位置取得部により取得された車両の位置情報を走行軌跡として記憶する走行軌跡記憶部と、前記走行軌跡記憶部に記憶されている前記走行軌跡を補正する走行軌跡補正部とをさらに備え、前記走行軌跡補正部は、前記走行軌跡記憶部に記憶されている前記走行軌跡の前記入口より前の区間を前記補正後入口座標側へ平行移動するとともに、前記カーブの前記出口より後の区間を前記補正後出口座標側へ平行移動することにより、前記走行軌跡を補正することを特徴とする請求項1から4のいずれか一項に記載の道路形状学習装置。前記位置取得部により取得された車両の位置情報を走行軌跡として記憶する走行軌跡記憶部と、前記走行軌跡記憶部に記憶されている前記走行軌跡を補正する走行軌跡補正部とをさらに備え、前記走行軌跡補正部は、前記走行軌跡記憶部に記憶されている前記走行軌跡の前記カーブより前の区間における直線部と前記補正後入口座標との間、および、前記カーブの後の区間における直線部と前記補正後出口座標との間を曲線により補間することにより、前記走行軌跡を補正することを特徴とする請求項1から4のいずれか一項に記載の道路形状学習装置。前記学習データに基づいて、車両の挙動を制御するための制御データを生成する制御データ生成部を備えることを特徴とする請求項1から6のいずれか一項に記載の道路形状学習装置。前記制御データ生成部は、車両の速度を制御するための制御データを生成することを特徴とする請求項7記載の道路形状学習装置。地図データ補完部と、自車両の走行環境を取得する走行環境取得部とをさらに備え、前記学習データ記憶部は、前記走行環境取得部で取得した前記走行環境を前記地図データに対応づけて前記学習データとして記憶し、前記地図データ補完部は、前記地図データに含まれていない未登録道路を自車両が走行した場合、走行時の走行環境または走行傾向に類似する走行環境または走行傾向を前記学習データから抽出し、抽出した学習データに対応づけられている地図データを前記未登録道路の地図データに設定することを特徴とする請求項1から8のいずれか一項記載の道路形状学習装置。特許文献1の場合、地図データから走行ラインの道路の形状を取得し、その道路の形状に応じて適切な車速を設定することにより、安全性の向上および運転者の感性にあった快適な走行を可能にすることが可能になる。ところで、地図データは、元にした地図の測量データが古かったり、地図をデータ化するオーサリング取り込み作業時に誤差が生じることがある。その場合、例えば特許文献1のように地図データに記憶されている曲率半径に基づいて目標車速を算出する構成では、実際の道路の形状よりも大きい曲率半径が地図データに記憶されていた場合には、目標速度が高く算出されてしまうおそれがある。そのため、このようなナビ協調アプリ、特に自車両の挙動を制御するナビ協調アプリの場合、道路の形状を正確に表す詳細な地図データが必要とされている。しかしながら、道路の形状を正確に表す詳細な地図データを作成するためには膨大なコストと大容量の記憶領域とが必要になり、予め整備しておくことは容易ではなかった。本発明は、上記した事情に鑑みてなされたものであり、その目的は、予め記憶されている地図データを実際の道路の形状を正確に表す詳細な地図データとして整備する道路形状学習装置を提供することにある。請求項1の道路形状学習装置によれば、自車両が走行した道路の形状を判定し、自車両がカーブを走行したと判定した場合には、地図データに基づいてカーブの入口、中央および出口を特定する。続いて、取得した自車両の位置情報からカーブの入口、中央および出口における自車両の位置を示す情報である入口座標、中央座標、出口座標を抽出し、これら入口座標、中央座標および出口座標を、カーブの走行傾向に対応して予め定められている補正値で補正した補正後入口座標、補正後中央座標および補正後出口座標を求める。そして、補正後入口座標、補正後中央座標および補正後出口座標の3点を通る円弧の半径を算出し、算出した半径をカーブの曲率半径として設定するとともに、この曲率半径を地図データに関連付けた学習データとして記憶する。上記のカーブの曲率半径の算出における補正は、次の誤差を調整するためである。すなわち、自車両が実際に走行した位置を示す入口座標、中央座標および出口座標に基づいてカーブの曲率半径を算出した場合、算出された曲率半径は、実際のカーブの曲率半径以下、実曲率半径と称すると異なることがある。この誤差は走行傾向に起因すると考えられることから、走行傾向に対応した補正値で入口座標、中央座標および出口座標を補正して補正後入口座標、補正後中央座標および補正後出口座標を求め、これら補正後入口座標、補正後中央座標および補正後出口座標に基づいてカーブの曲率半径を算出する。具体的には、補正後入口座標、補正後中央座標および補正後出口座標の各点を通る円弧の半径を算出し、この半径をカーブの曲率半径として設定する。このようにして設定されたカーブの曲率半径は、走行傾向に対応した補正がなされていることから、より実曲率半径に近くなる。つまり、自車両の位置情報に基づいてカーブの曲率半径を算出する場合に、より実際の道路の形状に近い曲率半径を算出することが可能になる。そして、算出した曲率半径を地図データに関連付けた学習データとして記憶することにより、例えば次回の走行時に利用することができる。したがって、地図データを実際のカーブの形状に即したより詳細なものに整備することができる。請求項2の道路形状学習装置によれば、カーブにおける走行傾向として所謂アウトインアウトを想定している。カーブ走行時には、横方向への加速度を軽減し安全且つ快適な乗り心地を得るために、走行傾向がアウトインアウト気味になることが多い。そのため、アウトインアウトの走行傾向に対応してカーブ方向毎の補正値を設定することにより、処理の複雑化を招くことなく容易に道路の形状を学習することができる。請求項3の道路形状学習装置によれば、カーブの入口および出口に対して予め設定されている補正値をH1、中央に対して予め設定されている補正値をH2とすると、左側通行時の自車両の進行方向に対して左カーブに対してはH1<H2に、右カーブに対してはH1>H2に設定する。走行傾向がアウトインアウト傾向である場合、カーブの入口および出口に対しては同一の補正値H1を予め設定し、中央位置に対しては補正値H2を予め設定することにより、曲率半径の算出を簡便に行うことができる。なお、上記した補正値H1、H2の関係は、例えば日本のように車両が左側通行をする場合の設定例である。外国などで右側通行の場合にはこの逆、すなわち、右側通行時の自車両の進行方向に対して左カーブに対してはH1>H2に、右カーブに対してはH1<H2になるように設定すればよい。請求項4の道路形状学習装置によれば、補正値設定部は道路の幅員方向の中心例えばセンターラインからの距離として設定されている。そのため、走行軌跡に基づいて算出される曲率半径は、道路の中心に対する曲率半径になる。これにより、左カーブを走行した場合または右カーブを走行した場合のどちらであっても、道路の中心に対する曲率半径を算出することができる。このため、同一のカーブにおいて左カーブおよび右カーブ両方を走行することなく、つまり、道路を往復することなく、実際の道路の形状を学習することができる。このため、1回の走行で往路復路に対応する形状を学習することができることから学習に要する作業を簡略化できるとともに、学習データとして記憶するデータ量および学習データを記憶する記憶領域の容量も削減することができる。請求項5の道路形状学習装置によれば、走行軌跡記憶部に記憶されている走行軌跡を、カーブ前後についても補正することにより、より詳細な地図データを整備することができる。この場合、走行軌跡のうちカーブ前後の軌跡を平行移動することにより補正を行っているので、補正にかかる演算の複雑化などを招くことがない。請求項6の道路形状学習装置によれば、走行軌跡記憶部に記憶されている走行軌跡を、カーブの前後についても補正することにより、より詳細な地図データを整備することができる。この場合、走行軌跡におけるカーブ前の直線区間と補正後入口座標との間、および、カーブ後の直線区間と補正後出口座標位置との間を、例えばスプライン曲線やクロソイド曲線などによって補間する。これにより、カーブとカーブ前後の直線区間との間を、実際の道路における所謂カーブ取付区間のように滑らかに接続することができる。請求項7および8の道路形状学習装置によれば、学習データに基づいて車両の挙動を制御するための制御データが生成される。これにより、蓄積した学習データに基づいて、より実際の道路の形状に即した状態で車両の挙動を制御することができる。特に、請求項8の道路形状学習装置では、車両の速度を制御するための制御データを生成しているので、カーブを走行する場合において適切な車両の速度を設定することができる。請求項9の道路形状学習装置によれば、学習データ記憶部は、走行環境取得部で取得した走行環境および走行傾向を地図データに対応づけて前記学習データとして記憶する。この場合、走行環境は、例えば自車両の車速やユーザの種類などである。つまり、学習データ記憶部は、まず、地図データにある道路路幅、曲率等も既知の道路区間を走行した場合、走行時の走行環境および走行傾向を記憶する。そして、地図データ補完部は、自車両が未登録道を走行した場合、走行時の走行環境または走行傾向に類似する走行環境または走行傾向が記憶されている学習データを抽出し、抽出した学習データに対応づけられている地図データを前記未登録道路の地図データに設定することにより、地図データを補完する。これにより、どのような道路を走行した場合にどのような走行環境または走行傾向になるかを推定することができるようになり、地図データに含まれていない未登録道路を走行した場合であっても、地図データを補完して学習することができる。この場合、走行時の走行環境および走行傾向のうち少なくとも一方に基づいて地図データを補完すればよい。以下、本発明による道路形状学習装置の複数の実施形態を図面に基づいて説明する。なお、複数の実施形態において実質的に同一の構成部位には同一の符号を付し、説明を省略する。第1実施形態以下、本発明による道路形状学習装置の第1実施形態について、図1から図7を参照して説明する。図1は道路形状学習装置1の構成を概略的に示す機能ブロック図である。道路形状学習装置1は、制御部2、位置取得部3、操作スイッチ群4、地図データ入力器5、VICS登録商標受信機6、通信装置7、外部メモリ8、表示装置9、音声コントローラ10、音声認識部11、リモコンセンサ12などを備えた所謂ナビゲーション装置13と、このナビゲーション装置13に通信回線14を介して接続されているアプリ制御部15とを備えている。制御部2は、CPU、RAM、ROM及びI/Oバスなどを備えたマイクロコンピュータにより構成されており、例えばROMなどに記憶されている制御プログラムを実行してナビゲーション装置13の全体を制御する。また、制御部2は、プログラム実行時の処理データや位置取得部3から取得した車両の位置情報、あるいは地図データ入力器5から取得した地図データなどが一時的に格納されるようになっている。位置取得部3は、周知の地磁気センサ3a、ジャイロスコープ3b、車速センサ3c及びGPS受信機3dなどを備えている。これら地磁気センサ3a、ジャイロスコープ3b、車速センサ3c及びGPS受信機3dは、互いに性質の異なる検出誤差を有している。位置取得部3は、これら地磁気センサ3a、ジャイロスコープ3b、車速センサ3c及びGPS受信機3dから入力される検出信号を互いに補完することにより自車両の位置情報を取得する。この場合、位置取得部3は、要求される検出精度で車両の位置情報を取得可能であれば、これら全ての要素を備える必要はなく、また、ステアリングの舵角を検出するステアリングセンサや各車輪の回転を検出する車輪センサいずれも図示せずなどと組み合わされて構成されていても良い。位置取得部3は、取得した自車両の位置情報を制御部2に出力する。操作スイッチ群4は、表示装置9の周辺に配置されている図示しないメカニカルキーや表示装置9の表示画面上に形成されるタッチキーなどから構成され、ユーザが何らかの操作例えばメニュー表示選択、目的地設定、経路探索、経路案内開始、表示画面変更及び音量調整等を行った旨を検出すると、操作信号を制御部2に出力する。地図データ入力器5は、地図データを記憶している地図データ記憶部16、および後述する学習データを記憶する学習データ記憶部17に接続している。地図データ入力器5は、これら地図データ記憶部16および学習データ記憶部17からの地図データや学習データの読み込み、および学習データ記憶部17への学習データの書き込みを実行する。地図データ記憶部16および学習データ記憶部17は、例えばCD-ROM、DVD-ROM、HDDなどの記憶媒体で構成されている。なお、地図データ記憶部16および学習データ記憶部17は、学習データ記憶部17への書き込みが可能であれば、単一の記憶媒体を共有する構成としてもよいし、個別の記憶媒体を設ける構成してもよい。地図データ記憶部16は、地図表示のための地図描画用データ、マップマッチングや経路探索、経路誘導などの種々の処理に必要な道路データ、交差点の詳細データからなる交差点データ、背景レイヤを表示するための背景データ、地名や地域などを表示するための地名データ、施設名称を例えば50音順に並べた施設名称データ、電話番号と施設との対応を示す電話番号データなどの地図データを記憶している。また、本実施形態に関連して、高速道路と一般道路との区別などを示す道路種別情報、道路の勾配情報、道路の幅員を示す幅員情報、地図上の位置を示すノード情報、各ノードの接続状態を示すリンク情報、道路の形状直線、カーブ、カーブの曲率半径などを記憶している。この道路形状データは、例えば国土地理院が発行している2万分の1の地図をオーサリングすることにより作成されている。なお、学習データ記憶部17に記憶される学習データの詳細は後述する。VICS受信機6は、広域通信網を通じて広域通信を行い、図示しないVICSセンター装置から送信されたVICS情報を受信する。通信装置7は、例えば携帯電話や無線LANのような無線通信手段で構成され、広域通信網を通じて広域通信を行い、図示しないサーバとの間で各種の情報を送受信する。外部メモリ8は、例えばフラッシュメモリなどのデータ書換可能な不揮発性メモリにより構成されており、例えば他の規格の情報記録媒体に対応するためのプログラムソフトを記憶したり特定のデータ画像データや音楽データなどの保存や呼出などを行ったりするために設けられている。外部メモリ9は、ナビゲーション装置13から着脱可能に設けられている。表示装置9は、例えば液晶ディスプレイ装置から構成され、メニュー選択画面、目的地設定画面、経路案内画面等の各種の表示画面を表示すると共に、車両の現在位置を表す現在位置マークや走行軌跡等を地図データの地図上に重ねて表示する。尚、表示装置9は、有機ELやプラズマディスプレイ装置などで構成してもよい。音声コントローラ10は、スピーカ18および音声認識部11と接続されている。音声コントローラ10は、例えば警告音や経路案内の案内音声等をスピーカ18から出力する。音声認識部11は、マイク19に接続され、マイク19から入力された音声を音声認識アルゴリズムにしたがって認識する。マイク19からは、操作スイッチ群4から入力される操作信号と同様に、ナビゲーション装置13の機能を制御する所謂音声コマンドが入力される。リモコンセンサ12は、操作リモコン20との間で各種の操作信号の送受信を行う。リモコンセンサ12は、操作リモコン20から送信された操作信号を受信すると、その受信した操作信号を制御部2に出力する。ユーザは、操作リモコン20を操作することにより、上述した音声コマンドと同様に、ナビゲーション装置13に対する各種の操作信号を入力することができる。通信回線14は、有線または無線の通信手段により構成され、ナビゲーション装置13とアプリ制御部15との間を各種の情報を送受信可能に接続している。通信回線14は、専用の通信方式で構成してもよく、USBやBluetooth登録商標、あるいは所謂車載LANの規格であるCANやFlexRay登録商標などの通信方式で構成するようにしてもよい。なお、通信回線14が車載LANに接続されている場合、ナビゲーション装置13およびアプリ制御部15は、自車両に備えられている例えばエンジン回転数を検出するエンジン回転数センサ、アクセルの踏み込み量を検出するアクセル開度センサ、ステアリング操舵角を検出するステアリングセンサなどから各種の情報の取得、また、図示しない制御ECUエンジン制御ECU、ブレーキ制御ECUなどとの間で情報を送受信することも可能になる。アプリ制御部15は、図示しないCPU、RAM、ROM及びI/Oバスなどを備えたマイクロコンピュータにより構成されており、例えばROMなどに記憶されている制御プログラムを実行する。アプリ制御部15は、位置抽出部21、位置補正部22、曲率半径算出部23、走行軌跡記憶部24および走行軌跡補正部25を備えている。アプリ制御部15は、詳細は後述するが、ナビゲーション装置13側から地図データおよび自車両の位置情報を取得し、それら地図データおよび位置情報に基づいて自車両が走行した道路の形状、特にカーブの曲率半径を算出する。これら位置抽出部21、位置補正部22、曲率半径算出部23、走行軌跡記憶部24および走行軌跡補正部25は、本実施形態では、アプリ制御部15のCPUによって処理されるプログラムにより、ソフトウェア機能として構成されている。なお、これら各部は、ハードウェアで構成してもよい。次に上記した構成の道路形状学習装置1の作用について説明する。図2は、道路の形状と自車両の走行軌跡とを比較した模式図である。本実施形態では、図2に示すように、左側通行の道路を対象とし、センターラインが設けられた片側1車線であって、自車両の進行方向図示矢印方向に対して左に曲がっている道路を一例として想定している。さて、地図データ記憶部16に記憶されている地図データは、道路上の全ての座標のデータを記憶しているのではなく、図3aに示すように、離間した地点における位置情報である複数のノードNと、各ノードN間を接続する接続情報である複数のリンクLとを記憶している。この場合、各ノードNおよび各リンクLは、一般的には道路の幅員方向の中心図3aではセンターラインに相当する位置のデータとして記憶されているものの、前述した理由から必ずしも実際の道路の中心に一致しないことがある。また、カーブ走行時の自車両の走行軌跡は、カーブ入口付近においてはセンターライン寄り、カーブ中央付近においてはカーブ内側の路肩寄り、カーブ出口付近においては再びセンターライン寄りに走行する所謂アウトインアウト気味の走行傾向を示すことがある。そのため、図3bに示すように、走行軌跡に基づいて算出される曲率半径R0中心座標P0は、実際の道路の中心線であるセンターラインに対する曲率半径R1中心位置P1よりも大きく算出されることになる。また、同じカーブを走行した場合であっても、自車両が左カーブを走行したのか、あるいは右カーブを走行したのかによって、走行軌跡に基づいて算出される曲率半径R0は異なる。つまり、走行軌跡から推測される道路の形状は、走行傾向例えば、アウトインアウトなどなどにより変化する。そこで、本実施形態の道路形状学習装置1は、予め記憶されている地図データをより詳細なものにするために、実際の走行軌跡に基づいて道路の形状を求め、その道路の形状を学習データとして学習データ記憶部17に記憶する。つまり、ここでいう学習データとは、車両の走行軌跡に基づいて算出され、地図データ記憶部16に記憶されている地図データよりも実際の道路の形状に即した値を有する道路形状データを意味する。図4は、道路形状学習装置1のアプリ制御部15によるメイン処理の流れを示すフローチャートである。アプリ制御部15による処理ステップS101~S104に先立って、ナビゲーション装置13の制御部2は、周知のナビゲーション処理現在位置の取得、目的地までの経路探索および案内などを実行し、走行中に取得した自車両の現在位置に関するデータを通信回線14を介してアプリ制御部15に送信する。現在位置を受信したアプリ制御部15は、現在位置の履歴すなわち走行軌跡を、走行軌跡記憶部24に記憶する。アプリ制御部15は、走行軌跡記憶部24に記憶されている走行軌跡を、直線部およびカーブに分離するS101。この場合、アプリ制御部15の位置抽出部21は、地図データのノードNおよびリンクL図3a参照に基づいて、まずカーブの入口、中央および出口を特定し、道路の形状を直線部とカーブとを分離する。ここで、直線部とは、カーブ以外の区間のことを意味しており、必ずしも走行軌跡が直線である区間だけを意味しているものではない。なお、本実施形態では、走行軌跡記憶部24に記憶されている走行軌跡の全区間に対し、カーブと直線部とを分離している。つまり、走行軌跡には、複数のカーブと複数の直線部とが存在する。続いて、アプリ制御部15は、カーブ形状を補正するS102。このカーブ形状の補正は、主としてアプリ制御部15がソフトウェア的に実行している機能ブロックである位置補正部22および曲率半径算出部23により実行される。図5は、カーブ形状補正処理の詳細を示すフローチャートである。このカーブ形状の補正処理は、左カーブに対する補正または右カーブに対する補正、および走行軌跡の補正が行われる。以下、これらについて順に説明する。位置抽出部21は、まず走行軌跡から中心座標P0図3b参照を算出するS201。この場合、位置抽出部21は、走行軌跡記憶部24に記憶している走行軌跡において、ステップS101で特定されたカーブの入口、中央および出口に最も近い座標である入口座標、中央座標および出口座標を抽出する。なお、入口座標、中央座標および出口座標は、最も近い座標ではなく、地図データにおけるカーブの曲率半径の中心と入口、中央、出口とを結ぶ直線上の座標としてもよい。位置抽出部21は、このようにして、図6aまたは図6bに示すように、入口座標A0、中央座標B0および出口座標C0を抽出する。なお、図6a、bでは、中心座標P0は図示していない。位置抽出部21により入口座標A0、中央座標B0および出口座標C0が抽出されると、位置補正部22は、これら入口座標A0、中央座標B0および出口座標C0を通る円弧の中心座標P0以下、点P0とも称するを算出する。そして、位置補正部22は、入口座標A0、中央座標B0および出口座標C0の位置関係から、左カーブであるか否かを判定するS202。<左カーブに対する補正>位置補正部22は、図6aに示すような左カーブであると判定するとS202:YES、点P0と入口座標A0とを通る直線P0-A0を求めるS203。続いて、この直線P0-A0上において、入口座標A0からd1分外周側の点A1本発明でいう、補正後入口座標A1を特定するS204。ここで、d1は、入口座標A0および出口座標C0に対して設定される補正値であり、本発明でいう補正値H1に相当する。また、後述するように、d2は、中央座標B0に対して設定される補正値であり、本発明でいう補正値H2に相当する。各補正値d1およびd2は、予め設定され、例えばアプリ制御部15のROMなどに記憶されている。本実施形態では、各補正値d1およびd2は、センターラインまでの距離より厳密には、センターラインまでの距離に相当する座標データとして設定されている。続いて、位置補正部22は、点P0と中央座標B0とを通る直線P0-B0を求めS205、この直線P0-B0上において、中央座標B0からd2分外周側の点B1本発明でいう、補正後中央座標B1を特定するS206。ここで、d1およびd2の関係は、上述したようにアウトインアウトの走行傾向を想定し、アウトインアウトの走行傾向に対応した補正値としてd1<d2すなわち、H1<H2の関係に設定してある。同様に、出口座標C0に対して、点P0と出口座標C0とを通る直線を求めS207、この直線P0-C0上において出口座標C0からd1分外周側の点C1本発明でいう、補正後出口座標C1を特定するS208。そして、位置補正部22は、これら補正後入口座標A1、補正後中央座標B1および補正後出口座標C1を通る円弧の半径を算出し、当該カーブにおける曲率半径R1として設定するS209。<右カーブに対する補正>位置補正部22は、左カーブではない、つまり図6bに示すような右カーブであると判定するとS202:NO、点P0と入口座標A0とを通る直線P0-A0を求めるS210。続いて、この直線P0-A0上において入口座標A0からw-d1分内周側の点A1を特定するS211。ここで、wは、道路の1車線分の幅を示しており、地図データの含まれる道路形状データから取得される値である。すなわち、右カーブにおいては、w-d1が本発明でいう補正値H1に相当する。続いて、位置補正部22は、点P0と中央座標B0とを通る直線P0-B0を求めS212、この直線P0-B0上において中央座標B0からw-d2分内周側の点B1を特定するS213。ここで、w-d2は、本発明でいう補正値H2に相当する。つまり、本実施形態では、カーブの入口および出口に対して補正値d1を設定し、カーブの中央に対して補正値d2を設定している。さらに、右カーブにおいては、車線の幅wを基準にし、左カーブで用いた補正値d1、d2を用いている。換言すると、左カーブおよび右カーブのいずれに対しても、同一の補正値d1、d2に基づいた補正を行っている。続いて、出口座標C0に対して、点P0と出口座標C0とを通る直線を求めS214、この直線P0-C0上において出口座標C0からw-d1分内周側の点C1を特定するS215。そして、位置補正部22は、これら補正後入口座標A1、補正後中央座標B1および補正後出口座標C1を通る円弧の半径を算出し、当該カーブにおける曲率半径R1として設定するS209。このように、道路形状学習装置1は、左カーブおよび右カーブのそれぞれに対し、カーブの入口座標A0、中央座標B0および出口座標C0を補正し、補正された補正後入口座標A1、補正後中央座標B1および補正後出口座標C1を通る円弧の半径を、当該カーブにおける道路の曲率半径R1として設定する。これにより、曲率半径R1を、より実際の道路の中心の形状近い値にすることができる。なお、上述したように、上記した補正方法は左側通行時の補正であり、右側通行時には、d1およびd2の関係及び補正の方向を逆転させればよい。つまり、右側通行時には、d1>d2とし、且つ、左カーブでは内周側に補正し、右カーブでは外周側に補正するようにすればよい。<走行軌跡の補正>アプリ制御部15は、図4に示すステップS102において上記のようにカーブ形状を補正すると、直線部を平行移動し、補正後のカーブ開始点終了点に合わせる走行軌跡の補正を実行するS103。この補正は、主として走行軌跡補正部25により実行される。図7は、走行軌跡の補正を段階的に示す模式図である。図7aには、ステップS101で分離された複数のカーブと、その間に位置する直線部とが示されている。なお、A0およびA0’は入口座標、C0およびC0’は出口座標を示している。走行軌跡補正部25は、カーブに対して、上記したステップS201~S215で算出された補正後の円弧を道路の中心として設定する。これにより、図7bに示すように、カーブの走行軌跡がセンターラインに近い位置まで補正される。すなわち、入口座標A0およびA0’が補正後入口座標A1およびA1’に補正され、出口座標C0およびC0’が補正後出口座標C1およびC1’に補正される。この場合、入口座標A0と補正後入口座標A1、入口座標A0’と補正後入口座標A1’、出口座標C0と補正後出口座標C1、出口座標C0’と補正後出口座標C1’との間は、上記した補正値d1分だけずれることになる。そこで、走行軌跡補正部25は、図7aにおけるC0’-A0間およびC0-A0’間の直線部を、補正値d1だけ外周側に平行移動する。これにより、直線部の終了点入口座標A0に相当が補正後入口座標A1に、直線部の開始点出口座標C0に相当が補正後出口座標C1に移動される。その結果、図7cに示すように、各補正後入口座標A1、A1’、および各補正後出口座標C1、C1’が連続した走行軌跡を得ることができる。アプリ制御部15は、カーブ形状の補正S102および走行軌跡の補正S103が終了すると、走行軌跡の終端かを判定するS104。つまり、アプリ制御部15は、走行軌跡記憶部24に記憶されている走行軌跡の全区間に対して補正が行われたか否かを判定する。アプリ制御部15は、全ての区間に対する補正が終了したと判定するとA104:YES、処理を終了する。一方、補正がまだ終了していないと判定するとA104:NO、ステップS101に移行して再び上記した補正の処理を実行する。アプリ制御部15は、上記した補正が終了すると、算出された曲率半径R1を当該カーブの曲率半径として設定し、地図データと対応付けて学習データとして学習データ記憶部17に記憶する。これにより、車両が走行するごとに、車両の走行軌跡に基づいた学習データが学習データ記憶部17に蓄積される。換言すると、予め地図データ記憶部16に記憶されている地図データが、より実際の道路の形状に近い学習データにより整備される。以上説明したように、本実施形態による道路形状学習装置1によれば、以下のような効果を得ることができる。道路形状学習装置1は、自車両がカーブを走行したと判定すると、カーブの入口、中央および出口における自車両の位置すなわち入口座標A0、中央座標B0および出口座標C0を、補正値d1およびd2により補正する。そして、これら補正後入口座標A1、補正後中央座標B1および補正後出口座標C1に基づいてカーブの曲率半径R1を算出する。これにより、カーブの曲率半径R1は、走行傾向に対応した補正がなされ、より実際の道路の曲率半径に近い値になる。したがって、地図データを実際のカーブの形状に即したもの、すなわち道路の形状を正確にあらわしたより詳細なものに整備することができる。カーブにおける走行傾向として所謂アウトインアウトを想定し、この走行傾向に対応してカーブ方向毎の補正値を設定しているので、補正値を設定するときの処理の複雑化を招くことなく容易に道路の形状を学習することができる。各補正値d1およびd2を、道路の中心からの距離として設定しているので、算出される曲率半径R1は、道路の中央に対する値として設定される。これにより、学習データにはセンターラインの位置情報が記憶されるため、一度の走行で、同じ道路を往復することなく、補正された道路の形状を得ることができる。また、1回の走行で往路復路に対応する道路の形状を学習することができることから、学習に要する作業を簡略化できるとともに、学習データとして記憶するデータ量および学習データを記憶する学習データ記憶部17の容量も削減することができる。アウトインアウトの走行傾向に対応させて、カーブの入口および出口に対する補正値をd1、中央に対する補正値をd2、道路の1車線分の幅をwとすると、d1<d2に設定しているので、曲率半径の算出を簡便に行うことができる。また、左カーブに対してはd1およびd2で、右カーブに対しては幅wとの差w-d1、w-d2で入口座標、中央座標、出口座標を補正することにより、同一の補正値d1およびd2で左カーブおよび右カーブの何れにも対応することができる。なお、右側通行の場合には、この逆にすればよい。すなわち、右側通行の場合には、d1>d2、且つ、補正の方向を左カーブの場合には内周側へ、右カーブの場合には外周側へ補正するようにすればよいので、設定の変更だけで世界中の国々の道路事情に対応することができる。カーブ前後の区間における走行軌跡をも補正することにより、より詳細な地図データを整備することができる。この場合、走行軌跡のうちカーブ前後の軌跡を平行移動することにより補正を行っているので、補正にかかる演算の複雑化などを招くことがない。算出した曲率半径を地図データに関連付けた学習データとして記憶することにより、例えば次回の走行に利用することができる。第1実施形態の変形例以下、本発明による道路形状学習装置の第1実施形態の変形例について、図8を参照して説明する。第1実施形態の走行軌跡の補正においては、カーブ前後の区間を直線部と見なしたが、実際の道路では、カーブ前後には所謂カーブ取付区間が設けられている。このカーブ取付区間は、カーブ進入時の急なハンドル操作を防ぐ目的で設けられている。そこで、走行軌跡を補正する場合にも、同様にカーブ取付区間に相当する形状で補間するようにしてもよい。この補間は、第1実施形態における直線部の補正図4のステップS103に相当するものである。なお、本変形例の場合、第1実施形態と異なり、直線区間は、走行軌跡がほぼ直線状とみなせる区間のことを意味している。図8は、カーブ取付区間を考慮した場合における、走行軌跡の補正を段階的に示す模式図である。図8aには、ステップS101で分離された複数のカーブ区間A0~C0間、その間に位置する直線区間X0より前の区間、Y0より後の区間、およびカーブ取付区間X0~A0間、C0~Y0間が示されている。なお、X0はカーブ取付区間の開始座標、X1図8c参照は補正後のカーブ取付区間の開始座標、Y0はカーブ取付区間の終了座標、Y1図8c参照は補正後のカーブ取付区間の終了座標を示している。走行軌跡補正部25は、まず第1実施形態と同様にカーブ形状を補正する。これにより、図8bに示すように、カーブ区間の走行軌跡がセンターラインに近い位置まで補正される。また、直線区間も、第1実施形態と同様に、図8cに示すようにセンターライン側に平行移動される。そして、補正前のカーブ取付区間X0-A0間、C0-Y0間に対応する区間X1-A1間、C1-Y1間を、曲線により補間する。ここで、補間するための曲線としては、例えば実際のカーブ取付区間の設計に用いられているクロソイド曲線、あるいは、走行軌跡として記憶されている座標データに基づいて直線区間の終点X1と補正後入口座標A1との間を滑らかに接続するスプライン曲線などを用いればよい。これにより、補正後の走行軌跡は、図8dに示すように、各点X1、A1、C1、Y1において連続した軌跡に補正される。このように、走行軌跡記憶部24に記憶されている走行軌跡を、カーブの前後についても補正することにより、より詳細な地図データを整備することができる。特に、走行軌跡のうち平行移動したカーブ前の直線区間X1より前の区間と補正後入口座標A1との間、および、補正後出口座標C1とカーブ後の直線区間Y1より後の区間との間を曲線によって補間することにより、走行軌跡を、実際の道路におけるカーブ取付区間のようにカーブとカーブ前後の直線区間との間が滑らかに接続された軌跡にすることができる。第2実施形態次に、本発明の第2実施形態について、図9および図10に基づいて説明する。第2実施形態による道路形状学習装置は、車両を制御するための制御データを生成する制御データ生成部を備えている点において第1実施形態と異なっている。なお、第2実施形態の道路形状学習装置の大まかな処理の流れは第1実施形態と同様である。図9に示すように、第2実施形態の道路形状学習装置100は、ナビゲーション装置13、アプリ制御部101を備えている。アプリ制御部101は、第1実施形態と同様に、図4のようにして取得された学習データに基づいて、カーブの形状を学習する。さて、学習データを記憶することにより、地図データは、実際の道路の形状に近い、より詳細なものに整備される。本実施形態は、その整備された地図データを活用する一例として、車両の挙動の制御、特に、カーブ進入時における車両の速度の制御を示すものである。アプリ制御部101は、制御データ生成部102を備えている。制御データ生成部102は、学習データに基づいて、走行予定のカーブの形状に合わせた制御データを生成する。図10は、車両が走行する道路の形状を示している。一度走行して学習データを記憶しているカーブ区間図10の前回走行時の学習データありの区間の手前において、制御データ生成部102は、学習データ記憶部17から学習データを読み出し、当該カーブの曲率半径R1を取得する。そして、取得した曲率半径R1に基づいて、カーブ区間を走行可能な目標車速を算出し、車両をその目標車速に制御するための制御データを生成する。この場合、第1実施形態で説明したように、学習データに記憶されている曲率半径R1は、より実際の道路の形状に近いものであるため、この学習データに基づいてなされる制御は、より安全性が向上したものとなる。制御データ生成部102で生成された制御データは、通信回線14を介して車両制御ECU103に送信される。この車両制御ECU103は、例えばエンジン制御ECUやブレーキ制御ECUなどであり、カーブ進入までに車両の速度が目標車速以下になるようにエンジンまたはブレーキなどを制御する。このとき、制御データをナビゲーション装置にも送信することにより、例えば表示装置9に目標車速や現在の車両の速度が目標車速より速い場合には警告メッセージなどを表示する、あるいは、スピーカ18から音声により警告を発するようにしてもよい。このように、道路形状学習装置100は、一度学習したデータの再利用の方法として、車両の挙動の制御、特には、カーブ進入時の車両の速度の制御をおこなう制御データを精製する。この場合、第1実施形態と同様に、学習データは、地図データ記憶部16に予め記憶されている地図データに比べて、より詳細なものになっている。換言すると、走行軌跡に基づいて補正した道路の形状を記憶している学習データは、誤差がより少なく、車両の制御に使用できる程度の高精度なものである。このように走行軌跡に基づいて曲率半径を算出し、算出した曲率半径を地図データに関連付けた学習データとして記憶することにより、次回の走行時により適切且つより安全に車両の制御を行うための制御データを生成することができる。また、この場合、第1実施形態の変形例のように、カーブ取付区間を曲線で補間すれば、車両の挙動をより滑らかに制御することができる。つまり、カーブ取付部では一定の角速度での走行が可能になり、走行の安全性が高まる。その他の実施形態また、本発明は、上記に説明した各実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々の実施形態に適用可能である。走行傾向がアウトインアウトではなく、例えば道路の形状やセンターラインに沿って走行するような傾向を示す場合には、その走行傾向に対応した補正値を設定すればよい。以下、その一例について説明する。走行傾向に対応した補正の例としては、過去に地図データに存在する道路を走行した際の走行軌跡を学習データ記憶部17等に記憶し、その走行軌跡からカーブ区間を走行するときの走りのクセ走行傾向を算出し、その走りのクセに基づいて道路形状を補正する補正値を算出し、その補正値に基づいて道路形状を学習することが考えられる。カーブ区間を走行する場合には、以下のような走りのクセが想定される。比較的カーブ区間への進入速度が高い場合には、各実施形態で示したアウトインアウト図12の走行軌跡SL3を参照やセンターラインに沿って走行する。図11に走行軌跡SL1として示すような、比較的低速でカーブ区間に進入した場合などに発生する蛇行した走行する。図12に走行軌跡SL2として示すような、カーブの形状にあった速度でカーブ区間に進入した場合には、道路走行車線の中心を常に走行する。常に道路の左側の白線上を走行する。また、これらの走りのクセに基づいて補正値を算出する場合、その補正値は、ユーザによる違いカーブ区間への進入速度による違いカーブ区間の傾斜による違い等によって異なることが考えられる。つまり、カーブ区間を走行したときに上記したユーザ運転者の違いや車速などの情報を走行環境として記憶しておき、それらの情報に基づいて走りのクセを算出することにより、適切な補正値を算出することが可能になる。以下、第1実施形態の道路形状学習装置1を例にして、補正値の算出処理の流れを説明する。道路形状学習装置1の場合、車速センサ3cが走行環境車速を取得する走行環境取得部に相当する。なお、ジャイロスコープ3bなど他のセンサ類を走行環境取得部に含めてもよい。また、道路形状学習装置1は、走行環境取得部として、図示しないユーザ特定部を備えている。ユーザ特定部は、例えば画像処理やユーザが所持する形態通信端末との通信あるいはユーザによる名前入力作業や設定操作などにより、ユーザを特定する。さらに、道路形状学習装置1は、制御部2によって実行されるソフトウェアにより構成される図示しない地図データ補完部を有している。なお、地図データ補完部は、ハードウェアにより構成してもよい。道路形状学習装置1は、図13に示す道路形状学習処理において、地図にない道路である未登録道路を走行中か否かを判定するS301。この場合、地図にない道路とは、実際に地図データに記憶されていない道路だけでなく、道路形状の学習が行われていない道路即ち初めて走行する道路を含んでもよい。道路形状学習装置1は、地図にない道路を走行中であると判定するとS301:YES、車両の進入速度を判定するS302。この場合、道路形状学習装置1は、車速センサ3cから車速を取得し、予め定められている速度範囲、例えば20km/h以下図13の~20km/h、21~40km/hの範囲、41~60km/hの範囲、60km/h以上図13の60km/h~の何れであるかを判定する。続いて、道路形状学習装置1は、ステップS302で判定した進入速度に対応する過去の走行軌跡データを呼び出した後S303、その走行軌跡データに基づいて道路形状を学習するS304。たとえば、道路形状学習装置1は、学習データ記憶部17などに記憶されている過去の走行軌跡データのうち、ステップS302で判定した進入速度と一致する走行軌跡データに基づいて、現在走行中の道路の形状を推定し、その形状を走行中の道路の形状として学習する。この場合、過去の走行履歴即ち走りのクセそのものが、道路形状を学習するための補正値になる。より具体的には、一例として、まず地図データにある道路路幅、曲率等も既知の道路区間を走行した場合に、その走行軌跡データすなわち走りのクセを対応させて学習データとして記憶しておく。当然、このときには走りのクセを誘発する環境条件上述したユーザの違いや車速などの情報も対応させ、走行環境として記憶しておく。そして、道路形状学習装置1は、上述したその対応関係から補正値を割り出すのである。これによって、あるとき地図にない道を走行した場合、その走行環境によってどのような走りのクセが発生するのかを学習データから推定することができ、それに応じた補正値を算出または特定することができる。この場合、地図にある道路を走行したときに算出した補正値そのものを学習データとして記憶してもよい。これにより、演算処理を行うことなく、補正値を特定することができる。このように、道路形状学習装置1の地図データ補完部は、補正値に基づいて既知の道路形状を未登録道路に対応する道路形状として設定することにより地図データを補完することができる。また、道路形状学習装置1は、地図にある道路を走行していると判定した場合にはS301:NO、ユーザ即ち運転者は同じであるか否かを判定するS305。この場合、道路形状学習装置1は、ユーザによる設定操作などの図示しないユーザ特定部によりユーザを特定し、現在のユーザが例えばユーザAであるか否かを判定する。そして、道路形状学習装置1は、ユーザが同じ場合にはS305:YES、ユーザAの進入速度を記録しS306、その進入速度に対応付けて走行軌跡を記録するS307。一方、道路形状学習装置1は、ユーザが異なる場合にはS305:NO、別ユーザの進入速度を記録しS308、その進入速度に対応付けて走行軌跡を記録するS309。つまり、道路形状学習装置1は、現在の進入速度及び走行軌跡を、ユーザ毎に対応付けて記録するとともに、その記録したデータを学習データ記憶部17等に記憶する。この場合、各ユーザに対応した走行軌跡のデータが、道路形状を学習するときの補正値となる。このように、カーブ区間における走行傾向は様々のものが考えられる。そして、その進入速度などの走りのクセを記憶しておくことにより、その走りのクセを道路形状を学習するときの補正値として利用でき、地図にない道路の学習を効果的に行うことができる。この場合、走りのクセをユーザに対応付けて記憶しておくことにより、学習の精度を高めることができる。また、このような走りのクセを利用する場合、例えばカーブ区間における道路の傾斜によってカーブ区間への進入速度及びカーブ区間中の車速が変化すると考えられる。すなわち、下りのカーブ区間と上りのカーブ区間とでは、上記したような走りのクセが出やすくなる。そのため、カーブ区間への進入速度とカーブ区間中の車速とを補正値として使用すれば道路の傾斜をも学習することができ、その結果、地図データを実際のカーブの形状に即したより詳細なものに整備することができる。各実施形態では、センターラインが設けられている道路における補正について例示したが、センターラインがない道幅が1車線分しかない道路の場合には、補正の方向外周側への補正、または内周側への補正を、地図データに記憶されている道路形状データに含まれる道路の幅に応じて変更可能に構成してもよい。進行方向において複数の車線がある道路の場合には、各補正値H1、H2を、走行している車線により変化させてもよい。例えば、片側2車線で第1走行車線日本国内の場合を走行した場合、第1実施形態の例では、左カーブに対する補正値を入口および出口に対しては補正値H1としてwd1、中央に対しては補正値H2としてwd2のように設定すればよい。勿論、右カーブに対しても、同様に走行している車線により補正値を設定してもよい。図4に示すステップS101では全ての区間をカーブと直線部とに予め分離したが、全ての区間に対して補正をするのではなく、道路の形状の補正が必要か否かを判定する判定部を設け、必要と判定された場合に補正を行うようにしてもよい。この場合、走行軌跡と地図データとの差が所定の閾値以上であるか否かなどを判定基準として用いることができる。カーブ全体の入口座標、中央座標、出口座標の各点を通る円弧の半径を曲率半径としたが、カーブをさらに分割して複数の曲率半径を算出してもよい。例えば、曲率半径が変化する所謂複合カーブの場合、全体を1つのカーブとして曲率半径を算出すると、実際の道路の形状との間に誤差が生じるおそれがある。そこで、走行軌跡の形状に基づいて同一の曲率半径とみなせる区間にカーブをさらに分割し、それぞれの区間について曲率半径を算出することにより、より正確な道路の形状を取得することができる。また、曲率半径の算出には、カーブ全体の入口座標、中央座標、出口座標以外の点を含めてもよい。アプリ制御部とナビゲーション装置の制御部とを別体とした構成を例示したが、一体に構成してもよい。また、各ECUにアプリ制御部の機能を実装してもよい。