(57)【特許請求の範囲】
【請求項１】
道路に沿って設定された複数の形状補間点の補間点データを利用してコーナを設定し、該設定したコーナに基づいて道路形状を推定する道路形状推定装置において、前記補間点データを取得するデータ取得処理手段と、前記道路における所定の区間内の前記補間点データに基づいて各形状補間点における曲率半径を算出する半径算出処理手段と、前記各形状補間点における曲率半径に基づいて前記区間内のコーナの開始候補点及び終了候補点を設定し、前記開始候補点と終了候補点との間にコーナを設定するコーナ検出処理手段と、前記設定されたコーナ内の各形状補間点における曲率半径の平均値、及び前記各形状補間点における曲率半径のばらつき度に対応させて閾値を設定し、前記設定されたコーナ内において前記閾値以上の曲率半径を有する形状補間点より一つ前記開始候補点側の形状補間点を新たな終了候補点に、前記閾値以上の曲率半径を有する形状補間点より一つ前記終了候補点側の形状補間点を新たな開始候補点にそれぞれ設定し、前記開始候補点と前記新たな終了候補点との間に第１のコーナを、前記新たな開始候補点と前記終了候補点との間に第２のコーナをそれぞれ設定するコーナ分割処理手段とを有することを特徴とする道路形状推定装置。
【請求項２】
車両制御システムにおけるコンピュータによって、道路に沿って設定された複数の形状補間点の補間点データを利用してコーナを設定し、該設定したコーナに基づいて道路形状を推定する道路形状推定方法において、前記補間点データを取得し、前記道路における所定の区間内の前記補間点データに基づいて各形状補間点における曲率半径を算出し、前記各形状補間点における曲率半径に基づいて前記区間内のコーナの開始候補点及び終了候補点を設定し、前記開始候補点と終了候補点との間にコーナを設定し、該設定されたコーナ内の各形状補間点における曲率半径の平均値、及び前記各形状補間点における曲率半径のばらつき度に対応させて閾値を設定し、前記設定されたコーナ内において前記閾値以上の曲率半径を有する形状補間点より一つ前記開始候補点側の形状補間点を新たな終了候補点に、前記閾値以上の曲率半径を有する形状補間点より一つ前記終了候補点側の形状補間点を新たな開始候補点にそれぞれ設定し、前記開始候補点と前記新たな終了候補点との間に第１のコーナを、前記新たな開始候補点と前記終了候補点との間に第２のコーナをそれぞれ設定することを特徴とする道路形状推定方法。
【請求項３】
道路に沿って設定された複数の形状補間点の補間点データを利用してコーナを設定し、該設定したコーナに基づいて道路形状を推定する道路形状推定装置において、コンピュータを、前記補間点データを取得するデータ取得処理手段、前記道路における所定の区間内の前記補間点データに基づいて各形状補間点における曲率半径を算出する半径算出処理手段、前記各形状補間点における曲率半径に基づいて前記区間内のコーナの開始候補点及び終了候補点を設定し、前記開始候補点と終了候補点との間にコーナを設定するコーナ検出処理手段、並びに前記設定されたコーナ内の各形状補間点における曲率半径の平均値、及び前記各形状補間点における曲率半径のばらつき度に対応させて閾値を設定し、前記設定されたコーナ内において前記閾値以上の曲率半径を有する形状補間点より一つ前記開始候補点側の形状補間点を新たな終了候補点に、前記閾値以上の曲率半径を有する形状補間点より一つ前記終了候補点側の形状補間点を新たな開始候補点にそれぞれ設定し、前記開始候補点と前記新たな終了候補点との間に第１のコーナを、前記新たな開始候補点と前記終了候補点との間に第２のコーナをそれぞれ設定するコーナ分割処理手段として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、道路形状推定装置、道路形状推定方法及びプログラムに関するものである。
【背景技術】
【０００２】
従来、ナビゲーション装置においては、例えば、ＧＰＳ（グローバルポジショニングシステム）によって、自車である車両の現在の位置、すなわち、現在地が検出され、データ記録部から地図データが読み出され、表示部に地図画面が形成され、該地図画面に、現在地を表す自車位置、該自車位置の周辺の地図等が表示されるようになっている。したがって、運転者は、前記地図画面に表示された自車位置等に従って車両を走行させることができる。
【０００３】
また、運転者が目的地を入力し、探索条件を設定すると、該探索条件に基づいて、経路探索処理が行われ、前記地図データに従って、現在地で表される出発地から目的地までの経路が探索される。そして、探索された経路、すなわち、探索経路は、前記地図画面に自車位置と共に表示され、探索経路の案内、すなわち、経路案内が行われる。したがって、運転者は、表示された探索経路に沿って車両を走行させることができる。
【０００４】
ところで、前記ナビゲーション装置において得られた情報を利用して、自動変速機の変速段を変更したり、エンジンの出力を変更したりして、車両の走行制御を行うようにした車両制御システムが提供されている。
【０００５】
該車両制御システムにおいては、道路形状推定装置が配設され、該道路形状推定装置によって道路形状が推定されるようになっている。そして、前記道路形状推定装置は、前記ナビゲーション装置のデータ記録部に配設されたデータベースから道路データを読み出すことによって、データベース上において道路形状を複数の点で表すために設定された補間点、すなわち、形状補間点に関する補間点データを取得し、３点計算法によって各形状補間点における道路の曲率半径（以下、単に「半径」という。）を算出し、各半径に基づいて、データベース上でコーナを検出し、設定するとともに、該コーナの開始点を表す開始候補点、及びコーナの終了点を表す終了候補点を設定する。また、前記道路形状推定装置は、コーナの近似式によって表されるクロソイド曲線に基づいて、開始候補点及び終了候補点の位置を補正し、道路形状を推定し、補正された開始候補点及び終了候補点の位置を、道路形状を表すデータとして記録部に記録する（例えば、特許文献１参照。）。
【特許文献１】特開２００５−２１４８３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、前記従来の道路形状推定装置においては、実際の道路上では複数のコーナとして見なされるべきコーナが、データベース上における形状補間点の設定のされ方によっては、一つのコーナとして検出されてしまう。
【０００７】
その結果、道路形状を正確に推定することができない。
【０００８】
本発明は、前記従来の道路形状推定装置の問題点を解決して、道路形状を正確に推定することができる道路形状推定装置、道路形状推定方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
そのために、本発明の道路形状推定装置においては、道路に沿って設定された複数の形状補間点の補間点データを利用してコーナを設定し、該設定したコーナに基づいて道路形状を推定するようになっている。
そして、前記補間点データを取得するデータ取得処理手段と、前記道路における所定の区間内の前記補間点データに基づいて各形状補間点における曲率半径を算出する半径算出処理手段と、前記各形状補間点における曲率半径に基づいて前記区間内のコーナの開始候補点及び終了候補点を設定し、前記開始候補点と終了候補点との間にコーナを設定するコーナ検出処理手段と、前記設定されたコーナ内の各形状補間点における曲率半径の平均値、及び前記各形状補間点における曲率半径のばらつき度に対応させて閾（しきい）値を設定し、前記設定されたコーナ内において前記閾値以上の曲率半径を有する形状補間点より一つ前記開始候補点側の形状補間点を新たな終了候補点に、前記閾値以上の曲率半径を有する形状補間点より一つ前記終了候補点側の形状補間点を新たな開始候補点にそれぞれ設定し、前記開始候補点と前記新たな終了候補点との間に第１のコーナを、前記新たな開始候補点と前記終了候補点との間に第２のコーナをそれぞれ設定するコーナ分割処理手段とを有する。
【発明の効果】
【００１０】
本発明によれば、設定されたコーナ内において閾値以上の曲率半径を有する形状補間点でコーナの分割が行われるので、仮に、データベース上において補間点データの精度が低く、コーナの直線区間において所定の形状補間点が直線からずれて設定されていた場合においても、コーナの分割を適正に行うことができる。したがって、実際の道路上では複数のコーナとして見なされるべきコーナが、データベース上で一つのコーナとされることがないので、道路形状を正確に推定することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。
【００１２】
図１は本発明の実施の形態における車両制御システムのブロック図、図２は本発明の実施の形態における道路形状推定処理手段の動作を示すメインフローチャートである。
【００１３】
図において、１４は情報端末、例えば、車両に搭載された車載装置としてのナビゲーション装置であり、該ナビゲーション装置１４は、車両の現在地を自車位置として、車両の方位を自車方位として検出する現在地検出部としてのＧＰＳセンサ１５、図示されない地図データのほかに各種の情報が記録された情報記録部としてのデータ記録部１６、ナビゲーション処理等の各種の演算処理を行うナビゲーション処理部１７、操作者である運転者が操作することによって所定の入力を行うための第１の入力部としての操作部３４、図示されない画面に表示された画像によって各種の表示を行い、運転者に通知するための第１の出力部としての表示部３５、運転者が音声によって所定の入力を行うための第２の入力部としての音声入力部３６、音声出力を行い、各種の情報を運転者に通知するための第２の出力部としての音声出力部３７、及び通信端末として機能する送受信部としての通信部３８を備え、前記ナビゲーション処理部１７に、ＧＰＳセンサ１５、データ記録部１６、操作部３４、表示部３５、音声入力部３６、音声出力部３７及び通信部３８が接続される。また、前記ナビゲーション処理部１７には車速を検出する車速検出部としての車速センサ４４等が接続される。そして、前記ＧＰＳセンサ１５は、自車位置及び自車方位のほかに時刻を検出する。なお、ＧＰＳセンサ１５と独立させて図示されない方位センサを配設し、該方位センサによって自車方位を検出することもできる。
【００１４】
前記データ記録部１６には、地図データファイルから成るデータベースが配設され、該データベースに地図データが記録される。該地図データには、各交差点（分岐点も含む。）間を結ぶ道路に関する道路データ、前記道路の端点（始点及び終点）を表すノードに関するノードデータ、前記交差点に関する交差点データ、探索用に加工された探索データ、施設に関する施設データ等が含まれるほか、道路上の地物に関する地物データが含まれる。なお、前記道路データには、前記データベース上で道路の始点から終点までの道路リンクを表すデータ、及び道路リンク上において、道路形状を表すために道路に沿って設定された複数の設定点としての形状補間点のデータ（以下「補間点データ」という。）が含まれる。補間点データには、各形状補間点の番号、座標等が含まれる。なお、各ノードは、道路リンク上の始点又は終点を表すので、形状補間点でもある。
【００１５】
さらに、前記データ記録部１６には、統計データファイルから成るデータベース、走行履歴データファイルから成るデータベース等が配設され、前記統計データファイルに統計データが、前記走行履歴データファイルに走行履歴データが、いずれも実績データとして記録される。
【００１６】
そして、前記データ記録部１６は、前記各種のデータを記録するために、ハードディスク、ＣＤ、ＤＶＤ、光ディスク等の図示されないディスクを備えるほかに、各種のデータを読み出したり、書き込んだりするための読出・書込ヘッド等の図示されないヘッドを備える。また、前記データ記録部１６にメモリカード等を使用することができる。
【００１７】
前記ナビゲーション処理部１７は、ナビゲーション装置１４の全体の制御を行う制御装置としての、かつ、演算装置としてのＣＰＵ３１、該ＣＰＵ３１が各種の演算処理を行うに当たってワーキングメモリとして使用されるＲＡＭ３２、制御用のプログラムのほか、目的地までの経路の探索、経路案内等を行うための各種のプログラムが記録されたＲＯＭ３３、各種のデータ、プログラム等を記録するために使用される図示されないフラッシュメモリ等を備える。
【００１８】
前記操作部３４として、表示部３５とは独立させて配設された図示されないキーボード、マウス等を使用することができる。また、前記操作部３４として、前記表示部３５に形成された画面に画像で表示された各種のキー、スイッチ、ボタン等の画像操作部をタッチ又はクリックすることによって、所定の入力操作を行うことができるようにしたタッチパネルを使用することができる。
【００１９】
前記表示部３５としてディスプレイが使用され、表示部３５に形成された各種の画面に、自車位置、自車方位等を表示したり、地図、探索経路、該探索経路に沿った案内情報、交通情報等を表示したり、探索経路における次の交差点までの距離、次の交差点における進行方向を表示したりすることができる。
【００２０】
また、音声入力部３６は、図示されないマイクロホン等によって構成され、音声によって必要な情報を入力することができる。さらに、音声出力部３７は、図示されない音声合成装置及びスピーカを備え、前記探索経路の経路案内を音声出力によって行う。
【００２１】
前記通信部３８は、道路交通情報センタから送信された現況の交通情報、一般情報等の各種の情報を受信するための図示されないビーコンレシーバ、ＦＭ放送局を介して前記各種の情報をＦＭ多重放送として受信するための図示されないＦＭ受信機等を備える。また、通信部３８は、図示されない情報センタから、交通情報、一般情報等の情報のほかに、地図データ、統計データ、走行履歴データ等のデータを図示されないネットワークを介して受信することができる。
【００２２】
なお、ナビゲーション処理部１７、ＣＰＵ３１等は、単独で、又は二つ以上組み合わせることによってコンピュータとして機能し、各種のプログラム、データ等に基づいて演算処理を行う。また、前記データ記録部１６、ＲＡＭ３２、ＲＯＭ３３、フラッシュメモリ等によって記憶装置及び記録媒体が構成される。そして、演算装置として、ＣＰＵ３１に代えてＭＰＵ等を使用することもできる。
【００２３】
なお、１０は自動変速機、１１は自動変速機制御装置、５１はエンジン制御装置、５２はエンジンである。
【００２４】
次に、前記構成のナビゲーション装置１４の基本動作について説明する。
【００２５】
まず、運転者によって操作部３４が操作され、ナビゲーション装置１４が起動されると、ＣＰＵ３１の図示されない現在地読込処理手段は、現在地読込処理を行い、ＧＰＳセンサ１５によって検出された自車位置及び自車方位を読み込む。次に、前記ＣＰＵ３１の図示されないマッチング処理手段は、マッチング処理を行い、読み込まれた自車位置の軌跡、及び自車位置の周辺の道路を構成する各道路リンクの形状、配列等に基づいて、車両がいずれの道路リンク上に位置するかの判定を行うことによって、自車位置を特定する。
【００２６】
続いて、ＣＰＵ３１の図示されない基本情報取得処理手段は、基本情報取得処理を行い、前記地図データを、データ記録部１６から読み出して取得する。なお、地図データを前記情報センタ等から取得することもでき、その場合、前記基本情報取得処理手段は、受信した地図データをフラッシュメモリにダウンロードする。
【００２７】
そして、前記ＣＰＵ３１の図示されない表示処理手段は、表示処理を行い、前記表示部３５に各種の画面を形成する。例えば、表示処理手段の地図表示処理手段は、地図表示処理を行い、表示部３５に地図画面を形成し、該地図画面に周囲の地図を表示するとともに、自車位置及び自車方位を表示する。
【００２８】
したがって、運転者は、前記周囲の地図、自車位置及び自車方位に従って車両を走行させることができる。
【００２９】
また、運転者が操作部３４を操作して目的地を入力すると、ＣＰＵ３１の図示されない目的地設定処理手段は、目的地設定処理を行い、目的地を設定する。なお、必要に応じて出発地を入力し、設定することもできる。また、あらかじめ所定の地点を登録しておき、登録された地点を目的地として設定することができる。続いて、運転者が操作部３４を操作して探索条件を入力すると、ＣＰＵ３１の図示されない探索条件設定処理手段は、探索条件設定処理を行い、探索条件を設定する。
【００３０】
このようにして目的地及び探索条件が設定されると、ＣＰＵ３１の図示されない経路探索処理手段は、経路探索処理を行い、前記自車位置、自車方位、目的地、探索条件等を読み込むとともに、データ記録部１６から探索データ等を読み出し、自車位置、自車方位、目的地、探索データ等に基づいて、自車位置で表される出発地から目的地までの経路を前記探索条件で探索し、探索経路を表す経路データを出力する。このとき、経路探索処理においては、各道路リンクごとに付与されたリンクコストの合計が最も小さい経路が探索経路とされる。なお、出発地を、自車位置に代えて、運転者が設定した所定の地点とし、該所定の地点から目的地までの経路を探索することもできる。
【００３１】
続いて、前記ＣＰＵ３１の図示されない案内処理手段は、案内処理を行い、経路案内を行う。そのために、前記案内処理手段の案内表示処理手段は、案内表示処理を行い、前記経路データを読み込み、経路データに基づいて前記地図画面に探索経路を表示する。
【００３２】
なお、例えば、経路案内の対象となる地点である交差点で車両を右左折させる必要がある場合、前記交差点が、車両を進行させる方向の案内を行う対象となる案内交差点として設定され、前記案内処理手段の音声出力処理手段は、音声出力処理を行い、前記案内交差点に車両が到達する前に、音声出力によって経路案内を行う。
【００３３】
また、前記案内処理手段の案内点拡大図形成処理手段は、案内点拡大図形成処理を行い、車両が案内交差点に到達する前に、地図画面の所定の領域に案内交差点の拡大図、すなわち、案内点拡大図としての交差点拡大図を形成し、交差点拡大図による経路案内を行う。そのために、探索経路上の前記案内交差点より手前（自車位置側）の、設定された距離だけ離れた箇所に車両が到達すると、前記交差点拡大図が表示される。この場合、該交差点拡大図に、案内交差点の周辺の地図、探索経路、案内交差点において目印になる施設等の陸標が表示される。
【００３４】
ところで、本実施の形態においては、前記ナビゲーション装置１４において得られた情報を、自動変速機制御装置１１に送信して、自車位置より前方の道路形状に対応させて自動変速機１０の変速段を変更したり、エンジン制御装置５１に送信して、自車位置より前方の道路形状に対応させてエンジン５２の出力を変更したりして、車両の走行制御を行うようにしている。
【００３５】
そのために、前記ＣＰＵ３１は道路形状推定装置として機能し、ＣＰＵ３１の図示されない道路形状推定処理手段は、道路形状推定処理を行い、後述される方法で道路形状を推定する。そして、ＣＰＵ３１の図示されない走行制御処理手段は、走行制御処理を行い、推定された道路形状に従って、自動変速機１０の変速段を変更したり、エンジン５２の出力を変更したりするための信号を前記自動変速機制御装置１１、エンジン制御装置５１等に送信する。
【００３６】
次に、図２に従って、前記道路形状推定処理手段の動作について説明する。
【００３７】
まず、前記道路形状推定処理手段のデータ取得処理手段は、データ取得処理を行い、道路形状を推定する対象となる道路を含む、自車位置より前方の所定の領域を道路形状推定範囲として設定し、データ記録部１６から道路データを読み出し、前記道路形状推定範囲内のノードデータを取得する。
【００３８】
この場合、道路形状推定範囲内において、ノードデータで表される各ノードのうちの最初のノードから最後のノードまでの、互いに隣接する各ノード間の道路リンクについて、道路形状の推定が順に行われる。なお、この場合、データベース上の道路において道路形状の推定が行われる各道路リンクを形状推定道路とする。
【００３９】
そこで、前記データ取得処理手段は、各形状推定道路において道路形状の推定を行うために、自車位置より前方の形状推定道路上における形状補間点の補間点データを取得する。なお、本実施の形態において、前記データ取得処理手段は、ノードデータ及び補間点データを、データ記録部１６から読み出すことによって取得するようになっているが、前記情報センタ等からネットワークを介して受信することによって取得することもできる。
【００４０】
次に、前記道路形状推定処理手段の半径算出処理手段は、半径算出処理を行い、自車位置より前方の形状推定道路上における形状補間点の補間点データに基づいて、３点計算法によって形状推定道路の各形状補間点における半径（曲率半径）を算出する。続いて、前記道路形状推定処理手段のコーナ検出処理手段は、コーナ検出処理を行い、前記半径に基づいて、データベース上の形状推定道路内においてコーナを検出し、コーナが開始される形状補間点を開始候補点として、データベース上でコーナが終了する形状補間点を終了候補点として設定する。
【００４１】
そして、前記道路形状推定処理手段のコーナ結合処理手段は、実際の道路上では一つのコーナとして見なされるべきコーナが、データベース上における形状補間点の設定のされ方によって、複数のコーナとして検出された場合に、コーナ結合処理を行い、検出されたコーナの結合を行う。
【００４２】
次に、前記道路形状推定処理手段の第１、第２のコーナ分割処理手段は、実際の道路上では複数のコーナとして見なされるべきコーナが、コーナ間の直線区間において形状補間点が設定されていなかったり、形状補間点が、後述されるコーナ検出用の閾値以下の半径を有していたりすることによって、データベース上において一つのコーナとして検出された場合に、第１、第２のコーナ分割処理を行い、検出されたコーナの分割を行う。この場合、第１のコーナ分割処理においては、コーナ内における所定の形状補間点が、後述される第１の分割条件判定用の閾値以上の半径を有する場合に、第２のコーナ分割処理においては、コーナ内における所定の形状補間点間のセグメントが、後述される第２の分割条件判定用の閾値以上の長さを有する場合に、検出されたコーナの分割が行われる。
【００４３】
このようにして、コーナの結合が行われたり、コーナの分割が行われたりして、形状補間点に基づく適正なコーナが設定されると、前記道路形状推定処理手段の最小半径算出処理手段は、最小半径算出処理を行い、各コーナについて、クロソイド係数を推定するための適正な最小半径を算出する。
【００４４】
続いて、前記道路形状推定処理手段のクロソイド係数推定処理手段は、クロソイド係数推定処理を行い、前記最小半径に基づいてクロソイド係数を推定し、道路形状推定処理手段のクロソイド曲線算出処理手段は、クロソイド曲線算出処理を行い、クロソイド係数に基づいてコーナの近似式を形成し、クロソイド曲線を算出する。
【００４５】
このようにして、前記コーナの道路形状を表すクロソイド曲線が算出されると、道路形状推定処理手段のフィッティング処理手段は、フィッティング処理を行い、クロソイド曲線をコーナ上の各形状補間点に合わせることによって、開始候補点及び終了候補点を補正し、実際の道路上でコーナが開始される点、及びコーナが終了する点に近似する位置にコーナの開始点及び終了点を設定する。
【００４６】
そして、道路形状推定処理手段の開始点・終了点記録処理手段は、開始点・終了点記録処理を行い、前記開始点及び終了点を道路形状を表すデータとしてデータ記録部１６に記録する。このようにして、道路形状が推定される。
【００４７】
次に、フローチャートについて説明する。
ステップＳ１  半径算出処理を行う。
ステップＳ２  コーナ検出処理を行う。
ステップＳ３  コーナ結合処理を行う。
ステップＳ４  第１のコーナ分割処理を行う。
ステップＳ５  第２のコーナ分割処理を行う。
ステップＳ６  最小半径算出処理を行う。
ステップＳ７  クロソイド係数推定処理を行う。
ステップＳ８  クロソイド曲線算出処理を行う。
ステップＳ９  フィッティング処理を行う。
ステップＳ１０  開始点・終了点記録処理を行い、処理を終了する。
【００４８】
次に、図２のステップＳ１における半径算出処理のサブルーチンについて説明する。
【００４９】
図３は本発明の実施の形態における半径算出処理のサブルーチンを示す図、図４は本発明の実施の形態における半径を算出する原理を説明する図である。
【００５０】
図４に示されるように、半径算出処理の対象となる形状補間点を対象点ｍａとし、該対象点ｍａの一つ手前（自車位置側）の形状補間点を前隣接点ｍｂとし、対象点ｍａの一つ先（自車位置から離れる側）の形状補間点を後隣接点ｍｃとするとともに、対象点ｍａと前隣接点ｍｂとを結ぶ、対象点ｍａより手前側のセグメント（以下「前側セグメント」という。）のセグメント長をＬ１とし、対象点ｍａと後隣接点ｍｃとを結ぶ、対象点ｍａより先のセグメント（以下「後側セグメント」という。）のセグメント長をＬ２とする。また、前記対象点ｍａ、前隣接点ｍｂ及び後隣接点ｍｃを通過する円をＣｒとしたときの、円Ｃｒの中心をＱとし、円Ｃｒの半径をＲとする。さらに、対象点ｍａにおいて、前側セグメントに対して後側セグメントの成す角度を方位角θとする。
【００５１】
そして、対象点ｍａと後隣接点ｍｃとを結ぶ方向をｘ軸方向とし、該ｘ軸方向に対する直角の方向をｙ軸方向としたときの、ｘ軸方向における対象点ｍａと前隣接点ｍｂとの間の距離をＸとし、ｘ軸方向における対象点ｍａと中心Ｑとの間の距離をＡとし、ｘ軸方向における前隣接点ｍｂと中心Ｑとの間の距離をＧとするとともに、ｙ軸方向における対象点ｍａと前隣接点ｍｂ間の距離をＹとし、ｙ軸方向における前隣接点ｍｂと中心Ｑとの間の距離をＨとし、ｙ軸方向における対象点ｍａと中心Ｑとの間の距離をＦとすると、
Ｘ＝Ｌ１ｃｏｓθ
Ａ＝Ｌ２／２
Ｇ＝Ｘ＋Ａ
Ｙ＝Ｌ１ｓｉｎθ
Ｆ＝√（Ｒ2 −Ａ2 ）
Ｈ＝Ｆ−Ｙ
になる。
【００５２】
この場合、距離Ｇの二乗と距離Ｈの二乗との和が半径Ｒの二乗と等しいので、式（１）の関係が成り立つ。
【００５３】
Ｒ2 ＝Ｇ2 ＋Ｈ2                                                 ……（１）
次に、該式（１）の距離Ｇ、Ｈに前記各値を代入すると式（２）を得ることができる。
【００５４】
Ｒ2 ＝Ｘ2 ＋２ＸＡ＋Ａ2 ＋Ｒ2 −Ａ2 
−２Ｙ√（Ｒ2 −Ａ2 ）＋Ｙ2                             ……（２）
続いて、該式（２）を変形すると式（３）〜（６）を得ることができる。
【００５５】
２Ｙ√（Ｒ2 −Ａ2 ）＝Ｘ2 ＋Ｙ2 ＋２ＸＡ                        ……（３）
Ｒ2 −Ａ2 ＝｛（Ｘ2 ＋Ｙ2 ＋２ＸＡ）／２Ｙ｝2                   ……（４）
Ｒ2 ＝｛（Ｘ2 ＋Ｙ2 ＋２ＸＡ）／２Ｙ｝2 ＋Ａ2                   ……（５）
Ｒ2 ＝（Ｌ１2 ＋２Ｌ１・Ｌ２・ｃｏｓθ＋Ｌ２2 ）
／（２ｓｉｎθ）2                                       ……（６）
該式（６）から、半径Ｒは、セグメント長Ｌ1 、Ｌ2 及び方位角θの関数であることが分かる。
【００５６】
そこで、前記半径算出処理手段は、前記補間点データを読み込み、対象点ｍａ、前隣接点ｍｂ及び後隣接点ｍｃの各座標に基づいて、セグメント長Ｌ１、Ｌ２を算出するとともに、方位角θを算出する。
【００５７】
続いて、前記半径算出処理手段は、セグメント長Ｌ１、Ｌ２及び方位角θに基づいて前記式（６）によって円Ｃｒの半径Ｒを算出する。このようにして、形状推定道路上に対象点ｍａにおける半径Ｒを算出することができる。
【００５８】
次に、フローチャートについて説明する。
ステップＳ１−１  前側セグメントのセグメント長Ｌ１を算出する。
ステップＳ１−２  後側セグメントのセグメント長Ｌ２を算出する。
ステップＳ１−３  方位角θを算出する。
ステップＳ１−４  半径Ｒを算出し、リターンする。
【００５９】
なお、本実施の形態においては、前記半径算出処理手段によって方位角θ及び半径Ｒを計算に基づいて算出するようになっているが、あらかじめ算出された方位角θ及び半径Ｒを、道路データの一部としてデータ記録部１６のデータベースに記録しておき、データ記録部１６から読み出すことによって算出することができる。
【００６０】
次に、図２のステップＳ２におけるコーナ検出処理について説明する。
【００６１】
図５は本発明の実施の形態におけるコーナ検出処理の第１の説明図、図６は本発明の実施の形態におけるコーナ検出処理の第２の説明図、図７は本発明の実施の形態におけるコーナ検出処理の第３の説明図、図８は本発明の実施の形態におけるコーナ検出処理の第４の説明図、図９は本発明の実施の形態におけるコーナ検出処理の第５の説明図、図１０は本発明の実施の形態におけるコーナ検出処理の第６の説明図、図１１は本発明の実施の形態におけるコーナ検出処理の第７の説明図、図１２は本発明の実施の形態におけるコーナ検出処理の第８の説明図、図１３は本発明の実施の形態におけるコーナ検出処理の第９の説明図である。
【００６２】
図において、ｒｉ（ｉ＝１、２、…）は図示されない二つのノード間に設定された形状推定道路、ｍｉ（ｉ＝１、２、…）は形状推定道路ｒｉに沿って、車両の進行方向（矢印Ｇ方向）における手前側から順に設定された複数の形状補間点、θｉ（ｉ＝１、２、…）は各形状補間点ｍｉにおける方位角である。なお、該方位角θｉは、前側セグメントに対して後側セグメントの成す角度であり、前側セグメントに対して後側セグメントが車両の進行方向における右側に位置する場合、正の値を採り、前側セグメントに対して後側セグメントが車両の進行方向における左側に位置する場合、負の値を採る。
【００６３】
まず、前記コーナ検出処理手段の開始候補点・終了候補点設定処理手段は、開始候補点・終了候補点設定処理を行い、前記各形状補間点ｍｉにおける半径Ｒｉ（ｉ＝１、２、…）を読み込み、半径Ｒｉが、あらかじめ設定されたコーナ検出用の閾値Ｒｔｈ（本実施の形態においては、１０００〔ｍ〕）以下であるかどうかを判断し、半径が閾値Ｒｔｈ以下の形状補間点を抽出する。図５においては、形状補間点ｍ３〜ｍ９が、直線に近く、閾値Ｒｔｈ以下であると判断され、抽出される。
【００６４】
続いて、開始候補点・終了候補点設定処理手段は、抽出された各形状補間点において、複数の連続する形状補間点（以下「連続形状補間点群」という。）があるかどうかを判断し、連続形状補間点群がある場合、連続形状補間点群における最も手前（自車位置側）の形状補間点を開始候補点とする。図５及び６においては、形状補間点ｍ３〜ｍ９によって連続形状補間点群が構成され、形状補間点ｍ３が開始候補点ｓ１にされる。
【００６５】
また、開始候補点・終了候補点設定処理手段は、抽出された形状補間点について、前記半径算出処理手段によって算出された方位角θを手前側から順に読み込み、所定の形状補間点において方位角の正負が反転する（一つ手前の形状補間点に対して方位角の方向が逆になる。）かどうかを判断し、所定の形状補間点において方位角の正負が反転する場合に、一つ先の形状補間点において正負が反転するかどうかを判断する。そして、所定の形状補間点において方位角の正負が反転し、一つ先の形状補間点において正負が反転しない場合、前記所定の形状補間点を開始候補点とする。図７に示されるような形状を有する形状推定道路ｒ２において、形状補間点ｍ１１〜ｍ１６が設定されている場合に、各形状補間点ｍ１２〜ｍ１５において、各方位角θ１２及びθ１３は負の値を採り、方位角θ１４及びθ１５は正の値を採る。すなわち、形状補間点ｍ１４において方位角θ１４の正負が負から正に反転し、一つ先の形状補間点ｍ１５において方位角θ１５の正負が正のままで反転しないので、形状補間点ｍ１４が開始候補点ｓ１にされる。
【００６６】
次に、開始候補点・終了候補点設定処理手段は、抽出された各形状補間点において、連続形状補間点群があるかどうかを判断し、連続形状補間点群がある場合、連続形状補間点群における最も先側（自車位置から離れる側）の形状補間点を終了候補点とする。図５及び８においては、形状補間点ｍ３〜ｍ９によって連続形状補間点群が構成され、形状補間点ｍ９が終了候補点ｅ１にされる。
【００６７】
また、開始候補点・終了候補点設定処理手段は、所定の形状補間点において方位角の正負が反転するかどうかを判断し、所定の形状補間点において方位角の正負が反転しない場合に、一つ先の形状補間点において正負が反転するかどうかを判断する。そして、所定の形状補間点において方位角の正負が反転せず、一つ先の形状補間点において正負が反転する場合、前記所定の形状補間点を終了候補点とする。図９に示されるような形状を有する形状推定道路ｒ３において、形状補間点ｍ２１〜ｍ２６が設定されている場合に、各形状補間点ｍ２２〜ｍ２５において、各方位角θ２２及びθ２３は正の値を採り、方位角θ２４及びθ２５は負の値を採る。すなわち、形状補間点ｍ２３においては方位角θ２３の正負が負から正のままで反転せず、一つ先の形状補間点ｍ２４においては方位角θ２４の正負が正から負に反転するので、形状補間点ｍ２３が終了候補点ｅ１にされる。
【００６８】
このようにして、開始候補点及び終了候補点が設定されると、前記コーナ検出処理手段のコーナ設定処理手段は、コーナ設定処理を行い、開始候補点と終了候補点との間にコーナを設定する。図１０に示されるような形状を有する形状推定道路ｒ４においては、形状補間点ｍ１〜ｍ１０のうちの形状補間点ｍ２が開始候補点ｓ１にされ、形状補間点ｍ９が終了候補点ｅ１にされ、開始候補点ｓ１と終了候補点ｅ１との間のコーナｃｎ１が設定される。
【００６９】
なお、所定の形状補間点の半径が閾値Ｒｔｈ以下であり、一つ手前の形状補間点の半径、及び一つ先の形状補間点の半径がいずれも閾値Ｒｔｈより大きい場合、前記開始候補点・終了候補点設定処理手段は、前記所定の形状補間点を、開始候補点及び終了候補点を兼ねる単発点として設定し、前記コーナ設定処理手段は、前記所定の形状補間点にコーナを設定する。図１１に示されるような形状を有する形状推定道路ｒ５においては、形状補間点ｍ３１〜ｍ３５のうちの形状補間点ｍ３３が単発点ｆ１に設定され、形状補間点ｍ３３にコーナｃｎ１が設定される。
【００７０】
さらに、所定の形状補間点において方位角の正負が反転し、一つ先の形状補間点における方位角の正負が反転する場合、前記開始候補点・終了候補点設定処理手段は、前記所定の形状補間点を単発点として設定する。
【００７１】
図１２に示されるような形状を有する形状推定道路ｒ６においては、形状補間点ｍ４１〜ｍ４８のうちの形状補間点ｍ４２〜ｍ４４、ｍ４６及びｍ４７の方位角θ４２〜θ４４、θ４６及びθ４７は正の値を採り、形状補間点ｍ４５の方位角θ４５は負の値を採る。この場合、形状補間点ｍ４５において方位角θ４５の正負が正から負に反転し、一つ先の形状補間点ｍ４６において方位角θ４６の正負が負から正に反転するので、形状補間点ｍ４５が単発点ｆ１に設定され、形状補間点ｍ４５にコーナｃｎ１が設定される。
【００７２】
続いて、前記コーナ設定処理手段は、単発点ｆ１の前後、及び単発点ｆ１において三つのコーナｃｎ１〜ｃｎ３を設定する。なお、この場合、コーナの番号は手前側から順次付与され、コーナの番号に対応させて開始候補点の番号及び終了候補点の番号が付与される。
【００７３】
このようにして、形状推定道路においてコーナが設定されると、前記コーナ検出処理手段の記録処理手段は、記録処理を行い、形状推定道路内のコーナの番号、開始候補点の番号、終了候補点の番号等をＲＡＭ３２（図１）に記録する。
【００７４】
ところで、前述されたように、データベース上の補間点データの精度が低く、コーナの直線区間において所定の形状補間点が直線からずれて設定されていると、実際の道路上では複数のコーナとして見なされるべきコーナが、前記コーナ判定処理手段によってデータベース上で一つのコーナとして検出され、一つのコーナの開始候補点及び終了候補点が設定されてしまうことがある。例えば、図１３に示されるような台形に近い形状を有する形状推定道路ｒ７においては、直線区間である形状補間点ｍ５、ｍ７間において、形状補間点ｍ６が、本来、形状補間点ｍ５、ｍ７間を結ぶ直線上に設定されるべきところ、形状補間点ｍ５、ｍ７間を結ぶ直線からずれて設定されている。
【００７５】
この場合、前記半径算出処理において算出された形状補間点ｍ２〜ｍ１０における半径Ｒ２〜Ｒ１０が閾値Ｒｔｈ以下であり、形状補間点ｍ２〜ｍ１０において方位角の正負が反転しないので、コーナ検出処理において、形状補間点ｍ２〜ｍ１０において一つのコーナｃｎ１が検出されてしまう。
【００７６】
そこで、本実施の形態においては、実際の道路上では複数のコーナとして見なされるべきコーナが、データベース上において一つのコーナとして検出された場合に、第１のコーナ分割処理手段によってコーナの分割を行うようにしている。
【００７７】
次に、図２のステップＳ４における第１のコーナ分割処理のサブルーチンについて説明する。
【００７８】
図１４は本発明の実施の形態における第１のコーナ分割処理のサブルーチンを示す図、図１５は本発明の実施の形態における第１のコーナ分割処理の第１の説明図、図１６は本発明の実施の形態における第１のコーナ分割処理の第２の説明図、図１７は本発明の実施の形態における第１のコーナ分割処理の第３の説明図、図１８は本発明の実施の形態における第１のコーナ分割処理の第４の説明図である。
【００７９】
まず、前記第１のコーナ分割処理手段のコーナ情報取得処理手段（半径基準コーナ情報取得処理手段）は、コーナ情報取得処理を行い、ＲＡＭ３２から形状推定道路内における所定のコーナのコーナ情報を読み込むことによって取得する。この場合、形状推定道路に存在する各コーナが所定のコーナとして順に選択される。
【００８０】
なお、前記コーナ情報には前記補間点データのほかに、ＲＡＭ３２に記録された各コーナについての開始候補点及び終了候補点の番号が含まれる。本実施の形態においては、図１３の形状推定道路ｒ７について第１のコーナ分割処理が行われるので、前記コーナ情報取得処理手段は、コーナｃｎ１の番号、コーナｃｎ１の開始候補点ｓ１の番号、コーナｃｎ１の終了候補点ｅ１の番号、形状補間点ｍ２〜ｍ１０の各番号、各形状補間点ｍ２〜ｍ１０における半径Ｒ２〜Ｒ１０等を取得する。
【００８１】
続いて、前記第１のコーナ分割処理手段の分割条件判定処理手段（半径基準分割条件判定処理手段）は、分割条件判定処理を行い、形状補間点の番号を読み込み、コーナ内の形状補間点の数を算出し、形状補間点の数が閾値、本実施の形態においては、３以上であるかどうかによって、第１のコーナ分割処理を行うための第１の分割条件が成立するかどうかを判断する。図１３の形状推定道路ｒ７において、コーナｃｎ１内の形状補間点ｍ２〜ｍ１０の数は９であるので、第１の分割条件が成立する。
【００８２】
例えば、図１５の形状推定道路ｒ８においては、形状補間点ｍ５１〜ｍ５５のうちの形状補間点ｍ５３が閾値以下の半径を有し、コーナが検出されるが、該コーナ内の形状補間点ｍ５３の数は１であり、コーナ内に三つ以上の形状補間点が含まれないので、第１の分割条件は成立しない。また、図１６の形状推定道路ｒ９においては、形状補間点ｍ６１〜ｍ６６のうちの形状補間点ｍ６３、ｍ６４が閾値以下の半径を有し、コーナが検出されるが、該コーナ内の形状補間点ｍ６３、ｍ６４の数は２であり、コーナ内に三つ以上の形状補間点が含まれないので、第１の分割条件は成立しない。
【００８３】
次に、前記分割条件判定処理手段は、コーナ内の所定の形状補間点における半径が、コーナ内の他の形状補間点における各半径と比べて相対的に大きいかどうかを判断する。そのために、前記分割条件判定処理手段は、コーナ内の各形状補間点における半径を読み出し、コーナ内の所定の形状補間点が、コーナ内の各形状補間点における各半径に基づいて算出された第１の分割条件判定用の閾値、すなわち、第１分割閾値Ｒｔｈｃｎ以上の半径を有するかどうかによって、第２の分割条件が成立するかどうかを判断する。
【００８４】
そのために、前記分割条件判定処理手段の平均半径算出処理手段は、平均半径算出処理を行い、各形状補間点ｍ２〜ｍ１０における半径Ｒ２〜Ｒ１０の平均値Ｒａを算出し、続いて、前記分割条件判定処理手段の閾値算出処理手段は、閾値算出処理を行い、前記平均値Ｒａに基づいて算出された標準偏差をσ１としたときの、前記第１分割閾値Ｒｔｈｃｎを、
Ｒｔｈｃｎ＝Ｒａ＋３・σ１
になるように設定する。図１７の形状推定道路ｒ７においては、形状補間点ｍ６が第１分割閾値Ｒｔｈｃｎ以上の半径Ｒ６を有する場合、第２の分割条件が成立する。なお、前記標準偏差σ１は、平均値Ｒａに対応させて設定された加算値である。
【００８５】
続いて、第１、第２の分割条件が成立する場合、前記分割条件判定処理手段の分割実行処理手段（半径基準分割実行処理手段）は、分割実行処理を行い、第１分割閾値Ｒｔｈｃｎ以上の半径を有する形状補間点でコーナの分割を行う。具体的には、前記分割実行処理手段は、第１分割閾値Ｒｔｈｃｎ以上の半径を有する形状補間点より一つ手前の形状補間点を終了候補点として追加し、第１分割閾値Ｒｔｈｃｎ以上の半径を有する形状補間点より一つ先の形状補間点を開始候補点として追加する。図１７の形状推定道路ｒ７において、第１分割閾値Ｒｔｈｃｎ以上の半径を有する形状補間点ｍ６でコーナの分割が行われ、形状補間点ｍ２が開始候補点ｓ１にされ、形状補間点ｍ６より一つ手前の形状補間点ｍ５が終了候補点ｅ１にされる。そして、形状補間点ｍ６より一つ先の形状補間点ｍ７が開始候補点ｓ２にされ、形状補間点ｍ１０が終了候補点ｅ２にされる。
【００８６】
このようにして、本実施の形態においては、図１８に示されるように、形状補間点ｍ２〜ｍ５によってコーナｃｎ１が、形状補間点ｍ７〜ｍ１０によってコーナｃｎ２が設定される。
【００８７】
また、前記各第１、第２の分割条件のうちのいずれか一つの分割条件が成立しない場合、前記コーナ分割実行処理手段は、前記現在のコーナの分割を行わない。
【００８８】
このように、本実施の形態においては、仮に、データベース上において補間点データの精度が低く、コーナの直線区間において所定の形状補間点が直線からずれて設定されていても、第１、第２の分割条件が成立すると、コーナの分割が行われる。したがって、実際の道路上では複数のコーナとして見なされるべきコーナが、データベース上で一つのコーナとされることがないので、道路形状を正確に推定することができる。
【００８９】
また、前記第１分割閾値Ｒｔｈｃｎは、平均値Ｒａに標準偏差σ１を加算することによって算出されるので、平均値Ｒａが大きくなるほど大きく、平均値Ｒａが小さくなるほど小さく設定されるので、各半径Ｒ２〜Ｒ１０の値等にノイズが加わっても、第２の分割条件が成立したかどうかを正確に判断することができる。
【００９０】
そして、標準偏差σ１は、コーナの各形状補間点ｍ２〜ｍ１０における半径Ｒ２〜Ｒ１０のばらつき度を表すので、コーナの分割の行われやすさを、半径Ｒ２〜Ｒ１０のばらつき度に応じて変更することができる。すなわち、半径Ｒ２〜Ｒ１０のばらつき度が高い場合、第１分割閾値Ｒｔｈｃｎが大きくなるので、第２の分割条件が成立されにくくなり、コーナの分割が行われにくくなる。これに対して、半径Ｒ２〜Ｒ１０のばらつき度が低い場合、第１分割閾値Ｒｔｈｃｎが小さくなるので、第２の分割条件が成立されやすくなり、コーナの分割が行われやすくなる。
【００９１】
したがって、コーナの分割を適正に行うことができる。
【００９２】
なお、本実施の形態においては、平均値Ｒａに標準偏差σ１を加算することによって前記第１分割閾値Ｒｔｈｃｎが算出されるようになっているが、平均値Ｒａに対応させてあらかじめ設定された第１分割閾値Ｒｔｈｃｎを、例えば、データ記録部１６に記録しておくことができる。
【００９３】
この場合、平均値Ｒａと第１分割閾値Ｒｔｈｃｎとを対応させた第１の閾値マップとしての半径閾値マップがＲＯＭ３３に記録され、前記分割実行処理手段は、分割実行処理において、半径閾値マップを参照し、平均値Ｒａに対応する第１分割閾値Ｒｔｈｃｎを読み出し、各Ｒ２〜Ｒ１０と第１分割閾値Ｒｔｈｃｎを比較し、第１分割閾値Ｒｔｈｃｎ以上の半径を有する形状補間点でコーナを分割する。
【００９４】
次に、フローチャートについて説明する。  
ステップＳ４−１  コーナ数によるループを開始する。
ステップＳ４−２  現在のコーナのコーナ情報を取得する。
ステップＳ４−３  コーナ内の形状補間点の数が３以上であるかどうかを判断する。コーナ内の形状補間点の数が３以上である場合はステップＳ４−４に、コーナ内の形状補間点の数が３より小さい場合はステップＳ４−７に進む。
ステップＳ４−４  コーナ内の形状補間点の半径の平均値を算出する。
ステップＳ４−５  平均値Ｒａから第１分割閾値Ｒｔｈｃｎを算出する。
ステップＳ４−６  第１分割閾値Ｒｔｈｃｎ以上の半径を有する形状補間点でコーナの分割を行う。
ステップＳ４−７  コーナ数によるループを終了させ、処理を終了する。
【００９５】
ところで、前述されたように、データベース上の補間点データの精度が低く、コーナの直線区間において形状補間点が設定されていないと、実際の道路上では複数のコーナとして見られるコーナが、前記コーナ検出処理によってデータベース上で一つのコーナとして検出され、一つのコーナの開始候補点及び終了候補点が決定されてしまうことがある。
【００９６】
図１９は本発明の実施の形態におけるコーナ検出処理の第１０の説明図である。
【００９７】
この場合、図に示されるような台形の形状を有する形状推定道路ｒ１０においては、直線区間である形状補間点ｍ５、ｍ６間に、設定されるべき形状補間点が設定されていない。
【００９８】
この場合、前記半径算出処理において算出された形状補間点ｍ２〜ｍ９における半径Ｒ２〜Ｒ９が閾値Ｒｔｈ以下であり、形状補間点ｍ２〜ｍ９において方位角の正負が反転しないので、コーナ検出処理において、形状補間点ｍ２〜ｍ９に一つのコーナｃｎ１が検出されてしまう。
【００９９】
そこで、本実施の形態においては、第２のコーナ分割処理手段によってコーナの分割を行うようにしている。
【０１００】
次に、図２のステップＳ５における第２のコーナ分割処理のサブルーチンについて説明する。  
【０１０１】
図２０は本発明の実施の形態における第２のコーナ分割処理のサブルーチンを示す図、図２１は本発明の実施の形態における第２のコーナ分割処理の第１の説明図、図２２は本発明の実施の形態における第２のコーナ分割処理の第２の説明図、図２３は本発明の実施の形態における第２のコーナ分割処理の第３の説明図である。
【０１０２】
まず、前記第２のコーナ分割処理手段のコーナ情報取得処理手段（セグメント長基準コーナ情報取得処理手段）は、コーナ情報取得処理を行い、ＲＡＭ３２から形状推定道路内における所定のコーナのコーナ情報を、読み込むことによって取得する。この場合、形状推定道路に存在する各コーナが所定のコーナとして順に選択される。
【０１０３】
なお、前記コーナ情報は前記補間点データのほかに、ＲＡＭ３２に記録された各コーナについての開始候補点及び終了候補点の番号が含まれる。本実施の形態においては、形状推定道路ｒ１０について第２のコーナ分割処理が行われるので、前記コーナ情報取得処理手段は、コーナｃｎ１の番号、該コーナｃｎ１の開始候補点ｓ１の番号、コーナｃｎ１の終了候補点ｅ１の番号、形状補間点ｍ２〜ｍ９の各番号、各形状補間点ｍ２〜ｍ９間の各セグメントのセグメント長等を取得する。
【０１０４】
続いて、前記第２のコーナ分割処理手段の分割条件判定処理手段（セグメント長基準分割条件判定処理手段）は、分割条件判定処理を行い、形状補間点の番号を読み込み、コーナ内の形状補間点の数を算出し、形状補間点の数が閾値、本実施の形態においては、３以上であるかどうかによって、第２のコーナ分割処理を行うための第１の分割条件が成立するかどうかを判断する。図２１の形状推定道路ｒ１０において、コーナｃｎ１内の形状補間点ｍ２〜ｍ９の数は８であるので、第１の分割条件が成立する。
【０１０５】
例えば、前述されたように、図１５の形状推定道路ｒ８及び図１６の形状推定道路ｒ９においては、コーナ内に三つ以上の形状補間点が含まれないので、第１の分割条件は成立しない。
【０１０６】
次に、前記分割条件判定処理手段は、コーナ内の所定の形状補間点間におけるセグメント長が、コーナ内の他の形状補間点間における各セグメント長と比べて相対的に長いかどうかを判断する。そのために、前記分割条件判定処理手段は、コーナ内の各形状補間点間のセグメント長を読み出し、コーナ内の所定の形状補間点間のセグメントが、コーナ内の各形状補間点間のセグメント長に基づいて算出された第２の分割条件判定用の閾値、すなわち、第２分割閾値Ｌｔｈｃｎ以上のセグメント長を有するかどうかによって、第２の分割条件が成立するかどうかを判断する。
【０１０７】
そのために、前記分割条件判定処理手段の平均セグメント長算出処理手段は、平均セグメント長算出処理を行い、各形状補間点ｍ２〜ｍ９間におけるセグメント長の平均値Ｌａを算出し、続いて、前記分割条件判定処理手段の閾値算出処理手段は、閾値算出処理を行い、前記平均値Ｌａに基づいて算出された標準偏差をσ２としたときの、前記第２分割閾値Ｌｔｈｃｎを、
Ｌｔｈｃｎ＝Ｌａ＋３・σ２
になるように設定する。図２１においては、形状補間点ｍ５、ｍ６間のセグメントＬｃ１１が、第２分割閾値Ｌｔｈｃｎ以上のセグメント長を有する場合、第２の分割条件が成立する。なお、前記標準偏差σ２は、平均値Ｌａに対応させて設定された加算値である。
【０１０８】
続いて、第１、第２の分割条件が成立する場合、前記分割条件判定処理手段の分割実行処理手段（セグメント長基準分割実行処理手段）は、分割実行処理を行い、第２分割閾値Ｌｔｈｃｎ以上のセグメント長を有するセグメントでコーナの分割を行う。また、分割実行処理手段は、第２分割閾値Ｌｔｈｃｎ以上のセグメント長を有するセグメントを構成する形状補間点のうちの手前の形状補間点を終了候補点にし、第２分割閾値Ｌｔｈｃｎ以上のセグメント長を有するセグメントを構成する形状補間点のうちの先の形状補間点を開始候補点にする。図２２において、第２分割閾値Ｌｔｈｃｎ以上のセグメント長Ｌｃ１１を有する形状補間点ｍ５、ｍ６間のセグメントでコーナｃｎ１の分割が行われ、形状補間点ｍ２が開始候補点ｓ１にされ、形状補間点ｍ５、ｍ６間のセグメントの手前の形状補間点ｍ５が終了候補点ｅ１にされ、形状補間点ｍ５、ｍ６間のセグメントの先の形状補間点ｍ６が開始候補点ｓ２にされ、形状補間点ｍ９が終了候補点ｅ２にされる。
【０１０９】
このように、本実施の形態においては、図２３に示されるように、形状補間点ｍ２〜ｍ５によってコーナｃｎ１が、形状補間点ｍ６〜ｍ９によってコーナｃｎ２が形成される。
【０１１０】
また、前記各第１、第２の分割条件のうちのいずれか一つの分割条件が成立しない場合、前記コーナ分割実行処理手段は、前記現在のコーナの分割を行わない。
【０１１１】
このように、本実施の形態においては、仮に、データベース上において補間点データの精度が低く、コーナの直線区間において形状補間点が設定されていない場合でも、第１、第２の分割条件が成立すると、コーナの分割が行われる。したがって、実際の道路上では複数のコーナとして見られるコーナが、データベース上で一つのコーナとされることがないので、道路形状を正確に推定することができる。
【０１１２】
また、前記第２分割閾値Ｌｔｈｃｎは、平均値Ｌａに標準偏差σ２を加算することによって算出され、平均値Ｌａが大きくなるほど大きく、平均値Ｌａが小さくなるほど小さく設定されるので、各セグメント長の値等にノイズが加わっても、第２の分割条件が成立したかどうを正確に判断することができる。
【０１１３】
そして、標準偏差σ２は、コーナの各形状補間点ｍ２〜ｍ９間の各セグメント長のばらつき度を表すので、コーナの分割のされやすさを、セグメント長のばらつき度に応じて変更することができる。すなわち、セグメント長のばらつき度が高い場合、第２分割閾値Ｌｔｈｃｎが大きくなるので、第２の分割条件が成立されにくくなり、コーナが分割されにくくなる。これに対して、セグメント長のばらつき度が低い場合、第２分割閾値Ｌｔｈｃｎが小さくなるので、第２の分割条件が成立されやすくなり、コーナが分割されやすくなる。
【０１１４】
したがって、コーナを適正に分割することができる。
【０１１５】
なお、本実施の形態においては、平均値Ｌａに標準偏差σ２を加算することによって前記第２分割閾値Ｌｔｈｃｎが算出されるようになっているが、平均値Ｌａに対応させてあらかじめ設定された第２分割閾値Ｌｔｈｃｎを、例えば、データ記録部１６に記録しておくことができる。
【０１１６】
この場合、平均値Ｌａと第２分割閾値Ｌｔｈｃｎとを対応させた第２の閾値マップとしてのセグメント長閾値マップがＲＯＭ３３に記録され、前記分割実行処理手段は、分割実行処理において、セグメント長閾値マップを参照し、平均値Ｌａに対応する第２分割閾値Ｌｔｈｃｎを読み出し、各形状補間点ｍ２〜ｍ９間における各セグメント長と第２分割閾値Ｌｔｈｃｎを比較し、第２分割閾値Ｌｔｈｃｎ以上のセグメント長を有するセグメントでコーナを分割する。
【０１１７】
次に、フローチャートについて説明する。  
ステップＳ５−１  コーナ数によるループを開始する。
ステップＳ５−２  現在のコーナのコーナ情報を取得する。
ステップＳ５−３  コーナ内の形状補間点の数が３以上であるかどうかを判断する。コーナ内の形状補間点の数が３以上である場合はステップＳ５−４に、コーナ内の形状補間点の数が３より小さい場合はステップＳ５−７に進む。
ステップＳ５−４  コーナ内のセグメント長の平均値Ｌａを算出する。
ステップＳ５−５  平均値Ｌａから第２分割閾値Ｌｔｈｃｎを算出する。
ステップＳ５−６  第２分割閾値Ｌｔｈｃｎ以上のセグメント長を有するセグメントでコーナの分割を行う。
ステップＳ５−７  コーナ数によるループを終了させ、処理を終了する。
【０１１８】
次に、図２のステップＳ７におけるクロソイド係数推定処理について説明する。
【０１１９】
図２４は本発明の実施の形態におけるクロソイド係数マップを示す図である。
【０１２０】
この場合、最小半径Ｒｍｉｎとクロソイド曲線のクロソイド係数Ａの２乗の値Ａ2 とが、互いに対応させてＲＯＭ３３（図１）にクロソイド係数マップとして記録され、前記クロソイド係数推定処理手段は、前記ステップＳ６で算出された最小半径Ｒｍｉｎを読み込み、クロソイド係数マップを参照し、最小半径Ｒｍｉｎに対応する値Ａ2 を読み出す。続いて、前記クロソイド係数推定処理手段は、クロソイド係数Ａを算出し、推定する。なお、前記クロソイド係数マップは、実際の道路における半径と、前記道路を設計する際に使用されたクロソイド曲線のクロソイド係数との関係に基づいて作成されたものである。
【０１２１】
次に、図２のステップＳ８におけるクロソイド曲線算出処理のサブルーチンについて説明する。
【０１２２】
図２５は本発明の実施の形態におけるクロソイド曲線算出処理のサブルーチンを示す図である。
【０１２３】
ところで、クロソイド曲線は、始点からの長さが大きくなるほど曲率半径が小さくなる曲線であり、一般的には、道路を設計する際に、クロソイド曲線の一部がコーナの開始点及び終了点に当てられるようになっている。前記クロソイド曲線をｘ−ｙ座標で表すと、クロソイド曲線の開始点（原点）から所定の点Ｓまでの距離、すなわち、曲線長をＬとし、前記点Ｓにおける曲線半径をＲｃとすると、
Ｌ・Ｒｃ＝Ａ2                                                   ……（７）
になる。また、通常、クロソイド曲線のＸ座標及びＹ座標は、それぞれ、式（８）及び（９）で示される多項式によって算出することができる。
【０１２４】
Ｘ＝Ｌ×（１−Ｌ2 ／（４０Ｒｃ2 ）＋Ｌ4 ／（３４５６Ｒｃ4 ）
−Ｌ6 ／（５９９０４０Ｒｃ6 ）
＋Ｌ8 ／（１７５４７２６４０Ｒｃ8 ）…）                ……（８）
Ｘ＝Ｌ2 ／（６Ｒｃ）×（１−Ｌ2 ／（５６Ｒｃ2 ）＋
Ｌ4 ／（７０４０Ｒｃ4 ）−Ｌ6 ／（１６１２８００Ｒｃ6 ）
＋Ｌ8 ／（５８８３４９４４０Ｒｃ8 ）…）                ……（９）
この場合、クロソイド曲線を前記式（８）及び（９）で算出することが考えられるが、式（８）及び（９）は、高次の多項式であり、多数の点をプロットしてクロソイド曲線を算出しようとすると、クロソイド曲線算出処理によってＣＰＵ３１に加わる負荷が大きくなってしまう。
【０１２５】
そこで、本実施の形態においては、前記クロソイド曲線算出処理手段によって、クロソイド係数推定処理において算出されたクロソイド係数Ａに基づいてクロソイド曲線を算出するようにしている。そのために、前記クロソイド曲線算出処理手段は、クロソイド曲線（曲線長Ｌ（ｋ）の点Ｓ）のＸ座標及びＹ座標を、シュミレーションに基づいて得られた式（１０）及び（１１）によって近似させ、算出する。
【０１２６】
【数１】
0004479816.tif 000002
【０１２７】
ただし、Ｘ0 及びＹ0 は、クロソイド曲線の開始点のＸ座標及びＹ座標である。また、角度φは式（１２）で表される。
【０１２８】
φ＝α＋２ｋ・Ｌ                                              ……（１２）
そして、αはクロソイド曲線の開始点の方位であり、値ｋは次の式（１３）で表される。
【０１２９】
ｋ＝２８／Ａ2                                                 ……（１３）
次に、フローチャートについて説明する。
ステップＳ８−１  クロソイド曲線の曲線長Ｌ（ｋ）でループを開始する。
ステップＳ８−２  曲線長Ｌ（ｋ）の点ＳのＸ座標を算出する。
ステップＳ８−３  曲線長Ｌ（ｋ）の点ＳのＹ座標を算出する。
ステップＳ８−４  クロソイド曲線の曲線長Ｌ（ｋ）でループを終了させ、リターンする。
【０１３０】
次に、図２のステップＳ９におけるフィッティング処理について説明する。
【０１３１】
図２６は本発明の実施の形態におけるフィッティング処理の説明図である。
【０１３２】
図において、ｒ７は形状推定道路、ｃｎ１は前記コーナ結合処理及び第１、第２のコーナ分割処理によって設定されたコーナ、ｍ１〜ｍ５はコーナｃｎ１を構成する形状補間点、ｓ１はコーナｃｎ１の開始候補点である。
【０１３３】
この場合、前記フィッティング処理手段のクロソイド曲線移動処理手段は、クロソイド曲線移動処理を行い、前記形状補間点ｍ１、ｍ２間を結ぶセグメントＳｇ１の延長線上に、クロソイド曲線Ｑの始点Ｑｓを置き、該始点Ｑｓにおける接線とセグメントＳｇ１の延長線とが一致するようにクロソイド曲線Ｑを矢印Ｅ方向に移動させる。
【０１３４】
このとき、前記フィッティング処理手段の誤差算出処理手段は、誤差算出処理を行い、形状補間点ｍ２以降の各形状補間点ｍ２〜ｍ５に対するクロソイド曲線Ｑの位置の誤差の合計を算出する。この場合、各形状補間点ｍ２〜ｍ５に対するクロソイド曲線Ｑの位置の誤差は、各形状補間点ｍ２〜ｍ５とクロソイド曲線Ｑを描く際にプロットされる各点との前記Ｘ軸上の距離及びＹ軸上の距離に基づいて算出される。
【０１３５】
そして、前記クロソイド曲線移動処理手段は、誤差の合計が最も小さくなるように前記クロソイド曲線Ｑを各形状補間点ｍ２〜ｍ５に合わせ、クロソイド曲線Ｑの位置を設定する。
【０１３６】
続いて、前記フィッティング処理手段の開始点・終了点抽出処理手段は、開始点・終了点抽出処理を行い、クロソイド曲線Ｑの位置が設定されると、クロソイド曲線Ｑの始点Ｑｓを実際のコーナの開始点Ｓａ１として設定する。
【０１３７】
そして、クロソイド曲線移動処理手段、誤差算出処理手段及び開始点・終了点抽出処理手段は、コーナｃｎ１の終点側において同様の処理を行い、クロソイド曲線Ｑの位置を設定し、クロソイド曲線Ｑの始点を実際のコーナの終了点として設定する。
【０１３８】
このようにして、クロソイド曲線Ｑによって開始候補点及び終了候補点を補正し、補正された開始候補点及び終了候補点を、それぞれ実際のコーナの開始点及び終了点として設定することができるので、コーナｃｎ１の開始候補点及び終了候補点を実際の道路上のコーナの開始点及び終了点に近づけることができる。
【０１３９】
次に、図２のステップＳ１０における開始点・終了点記録処理について説明する。
【０１４０】
前記開始点・終了点記録処理手段は、抽出された開始候補点及び終了候補点の位置を、道路形状を表すデータとしてデータ記録部１６に記録する。
【０１４１】
このように、本実施の形態においては、道路形状を正確に推定することができ、正確に推定された道路形状に基づいて実際のコーナの開始点及び終了点を設定するようになっているので、道路形状に対応させて自動変速機１０の変速段を変更したり、道路形状に対応させてエンジン５２の出力を変更したりして、車両の走行制御を精度良く行うことができる。
【０１４２】
本実施の形態において、道路形状の推定は、ナビゲーション装置１４のＣＰＵ３１を動作させることによって行われるようになっているが、自動変速機制御装置１１の図示されないＣＰＵを作動させたり、又は前記情報センタの制御装置としてのＣＰＵを動作させたりすることによって道路形状の推定を行うことができる。なお、車両の全体の制御を行うために、自動変速機制御装置１１及びエンジン制御装置５１の上位の制御装置として車両制御装置が配設されるが、該車両制御装置のＣＰＵを動作させることによって道路形状の推定を行うこともできる。
【０１４３】
また、本実施の形態においては、隣接する各ノード間の形状推定道路について道路形状の推定を行うようになっているが、実際の道路上において、コーナ内にノードがある場合、各ノード間の形状推定道路ごとに道路形状を推定すると、コーナ内におけるノードの前後において処理が異なってしまう。そこで、他の実施の形態においては、道路データにおいて、各道路リンク間に道なりデータが付与されていて、ノードを通過した後に進入することが予測される道路リンクが明らかな場合、又は経路探索処理によって探索経路が設定されている場合等においては、二つ以上の連続する形状推定道路について道路形状の推定を行うことができる。
【０１４４】
なお、本発明は前記実施の形態に限定されるものではなく、本発明の趣旨に基づいて種々変形させることが可能であり、それらを本発明の範囲から排除するものではない。
【図面の簡単な説明】
【０１４５】
【図１】本発明の実施の形態における車両制御システムのブロック図である。
【図２】本発明の実施の形態における道路形状推定処理装置の動作を示すメインフローチャートである。
【図３】本発明の実施の形態における半径算出処理のサブルーチンを示す図である。
【図４】本発明の実施の形態における半径を算出する原理を説明する図である。
【図５】本発明の実施の形態におけるコーナ検出処理の第１の説明図である。
【図６】本発明の実施の形態におけるコーナ検出処理の第２の説明図である。
【図７】本発明の実施の形態におけるコーナ検出処理の第３の説明図である。
【図８】本発明の実施の形態におけるコーナ検出処理の第４の説明図である。
【図９】本発明の実施の形態におけるコーナ検出処理の第５の説明図である。
【図１０】本発明の実施の形態におけるコーナ検出処理の第６の説明図である。
【図１１】本発明の実施の形態におけるコーナ検出処理の第７の説明図である。
【図１２】本発明の実施の形態におけるコーナ検出処理の第８の説明図である。
【図１３】本発明の実施の形態におけるコーナ検出処理の第９の説明図である。
【図１４】本発明の実施の形態における第１のコーナ分割処理のサブルーチンを示す図である。
【図１５】本発明の実施の形態における第１のコーナ分割処理の第１の説明図である。
【図１６】本発明の実施の形態における第１のコーナ分割処理の第２の説明図である。
【図１７】本発明の実施の形態における第１のコーナ分割処理の第３の説明図である。
【図１８】本発明の実施の形態における第１のコーナ分割処理の第４の説明図である。
【図１９】本発明の実施の形態におけるコーナ検出処理の第１０の説明図である。
【図２０】本発明の実施の形態における第２のコーナ分割処理のサブルーチンを示す図である。
【図２１】本発明の実施の形態における第２のコーナ分割処理の第１の説明図である。
【図２２】本発明の実施の形態における第２のコーナ分割処理の第２の説明図である。
【図２３】本発明の実施の形態における第２のコーナ分割処理の第３の説明図である。
【図２４】本発明の実施の形態におけるクロソイド係数マップを示す図である。
【図２５】本発明の実施の形態におけるクロソイド曲線算出処理のサブルーチンを示す図である。
【図２６】本発明の実施の形態におけるフィッティング処理の説明図である。
【符号の説明】
【０１４６】
１６    データ記録部
３１    ＣＰＵ
【図１】
0004479816.tif 000003
【図２】
0004479816.tif 000004
【図３】
0004479816.tif 000005
【図４】
0004479816.tif 000006
【図５】
0004479816.tif 000007
【図６】
0004479816.tif 000008
【図７】
0004479816.tif 000009
【図８】
0004479816.tif 000010
【図９】
0004479816.tif 000011
【図１０】
0004479816.tif 000012
【図１１】
0004479816.tif 000013
【図１２】
0004479816.tif 000014
【図１３】
0004479816.tif 000015
【図１４】
0004479816.tif 000016
【図１５】
0004479816.tif 000017
【図１６】
0004479816.tif 000018
【図１７】
0004479816.tif 000019
【図１８】
0004479816.tif 000020
【図１９】
0004479816.tif 000021
【図２０】
0004479816.tif 000022
【図２１】
0004479816.tif 000023
【図２２】
0004479816.tif 000024
【図２３】
0004479816.tif 000025
【図２４】
0004479816.tif 000026
【図２５】
0004479816.tif 000027
【図２６】
0004479816.tif 000028