JP3876777B2 - カーブ曲率半径推定装置 - Google Patents
カーブ曲率半径推定装置 Download PDFInfo
- Publication number
- JP3876777B2 JP3876777B2 JP2002197374A JP2002197374A JP3876777B2 JP 3876777 B2 JP3876777 B2 JP 3876777B2 JP 2002197374 A JP2002197374 A JP 2002197374A JP 2002197374 A JP2002197374 A JP 2002197374A JP 3876777 B2 JP3876777 B2 JP 3876777B2
- Authority
- JP
- Japan
- Prior art keywords
- curve
- node
- curvature radius
- road
- nodes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Instructional Devices (AREA)
- Navigation (AREA)
- Traffic Control Systems (AREA)
Description
【発明の属する技術分野】
この発明は、複数のノードの集合で構成される地図データに基づいてカーブ路の曲率半径を推定するカーブ曲率半径推定装置に関する。
【0002】
【従来の技術】
従来、道路地図データを構成する複数のノードの位置情報等に基づいて、道路形状を推定する方法として、例えば、特開2000−28373号公報に記載されたもの等が知られている。
この特開2000−28373号公報に記載の推定方法においては、道路地図データを構成する複数のノードの位置及び道路上の自車位置のうちの3つの位置を選択し、選択した3つの位置のうちの第1及び第2の位置を結ぶリンクと第2及び第3の位置を結ぶリンクとがなす交差角θと、少なくとも第2及び第3の位置間のリンク長Lとから、複数の車両旋回量θ/Lを算出し、これら複数の車両旋回量θ/Lの平均値或いは総和に基づいて、道路形状の予測を行うようになっている。
【0003】
【発明が解決しようとする課題】
しかしながら、上述の車両旋回量θ/Lに基づいて道路形状の予測を行う方法においては、連続する2つのノードにおける車両旋回量θ/Lの比が、所定範囲外にあるときに、道路形状が大きく変化したとして、これら2つのノードにおける車両旋回量の平均値或いは総和の算出を中止するようにしている。このため、例えば高速道路のインターチェンジ(IC)やジャンクション(Jct)等のように、長距離にわたってカーブが連続している場合や、同一カーブであっても、徐々にカーブ曲率半径が変化している場合には、連続する2つのノードにおける車両旋回量θ/Lの比はほぼ等しく、所定範囲外とはならないため、車両旋回量の平均値或いは総和の算出は中止されず、無意味に平均化されてしまい、この平均値或いは総和に基づき道路形状を推定した場合には、誤った推定を行うこともあり得るという問題がある。
【0004】
また、道路形状を表すノードの座標はある程度の誤差をもっているのが一般的ではあるが、上記従来のように、単に連続する2つのノードにおける車両旋回量の平均値或いは総和の算出を中止してしまうと、ノードが同一カーブ上に接近して設けられた特異点においても、別カーブであると判断して平均値或いは総和の算出を中止してしまう場合があるため、場合によっては、道路形状を誤って認識してしまうという問題がある。
【0005】
そこで、この発明は、上記従来の未解決の問題に着目してなされたものであり、長距離にわたって連続するカーブ路やカーブ曲率半径が変化するカーブ路等であっても、算出されるカーブ曲率半径が無意味に平均化されることを防止し、且つ的確に道路形状を推定することの可能なカーブ曲率半径推定装置を提供することを目的としている。
【0006】
【課題を解決するための手段】
上記目的を達成するために、本発明に係るカーブ曲率半径推定装置は、カーブ曲率半径を推定するための、予め設定した探査区間内のノード列について、隣接するノード間を結ぶリンクのリンク長の総和を、隣接するリンクどうしがなす交差角の総和で除して前記ノード列で構成される経路のカーブ曲率半径を算出する。このとき、ノードの配置状況から、前記ノード列で構成される経路が旋回路又はS字カーブ路であると判断されるときには、探査区間の起点となるノードからの配置状況が、旋回路又はS字カーブ路であると判断されない区間内のノード列に基づいて、カーブ曲率半径を算出する。したがって、旋回路の場合にカーブ曲率半径が、不必要に長い区間にわたって平均化されることはなく、また、S字カーブ路である場合に、カーブ方向の異なるリンク角の総和に基づいてカーブ曲率半径が算出されることに起因して、カーブ曲率半径の検出精度が低下することが回避される。
ここで、一般に、直線部分ではノード密度は小さく、カーブ部分では、ノード密度が高くなるように設定されることから、探査区間内に存在するノードの数が、予め設定した最大ノード数以上である場合には、ノード列は旋回路であると判断することにより、旋回路であるか否かを判断することが可能となる。
【0007】
【発明の効果】
本発明に係るカーブ曲率半径推定装置によれば、カーブ曲率半径を推定するための、予め設定した探査区間内のノード列について、隣接するノード間を結ぶリンクのリンク長の総和を、隣接するリンクどうしがなす交差角の総和で除して前記ノード列で構成される経路のカーブ曲率半径を算出するが、ノードの配置状況から、前記ノード列で構成される経路が旋回路又はS字カーブ路であると判断されるときには、探査区間の起点となるノードからの配置状況が、旋回路又はS字カーブ路であると判断されない区間内のノード列に基づいて、カーブ曲率半径を算出するようにしたから、旋回路の場合にカーブ曲率半径が、不必要に長い区間にわたって平均化されることはなく、また、S字カーブ路である場合に、カーブ方向の異なるリンク角の総和に基づいてカーブ曲率半径が算出されることに起因して、カーブ曲率半径の検出精度が低下することを回避することができる。
また、探査区間内に存在するノード数が、最大ノード数以上であるか否かを判断することによって、ノード列が旋回路であるか否かを容易に検出することができる。
【0008】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。
まず、第1の実施の形態について説明する。
図1は、本発明におけるカーブ曲率半径推定装置の一例を示す構成図である。図中、1は、車両に搭載された公知のナビゲーション装置であって、カーブ曲率半径推定装置2は、このナビゲーション装置1から通知される地図情報及び自車両の位置情報に基づいて自車両前方道路のカーブ曲率半径を推定するようになっている。
【0009】
前記ナビゲーション装置1は、ICカード、CD−ROM、記憶の書き換えが可能な光磁気ディスク等に記憶された地図情報を有し、GPSアンテナから受信した自車位置情報に基づき、前記地図情報のうち、例えば図2に示すような、自車両前方所定範囲内に相当する地図情報を抽出し、この地図情報に前記自車位置情報を付加しこれをカーブ曲率半径装置2への地図情報として、カーブ曲率半径推定装置2に出力する。また、ナビゲーション装置1に対し、乗員によって、目的地が設定された場合には、設定された目的地への案内経路を乗員に提供する機能を備えている。前記地図情報としては、例えば図2に示すように、自車両の位置座標、自車両前方道路上の、各ノードの位置座標、道路種別、リンク種別、道路幅、制限速度等を出力する。前記道路種別としては、高速道路であるか、或いは、有料道路、国道、県道、主要地方道、一般道であるか等を出力する。また、前記リンク種別としては、本線リンクであるか、或いは、本線間の渡り線リンク、ランプリンク、測道リンク、SA等測道リンクであるか等を出力する。
【0010】
そして、前記カーブ曲率半径推定装置2は、図1に示すように、ナビゲーション装置1からの地図情報をもとに、隣接するノード間のリンクどうしがなすリンク角を算出するリンク角算出部21、前記地図情報及び前記リンク角算出部21で算出されたリンク角をもとに、自車両が進行する経路を推定する推定経路設定部22と、ナビゲーション装置1からの地図情報をもとに最大ノード数を設定する最大ノード数設定部23及び旋回路判断角を設定する旋回路判断角設定部24と、推定経路設定部22で設定された推定経路と、最大ノード数設定部23で設定された最大ノード数と、旋回路判断角設定部24で設定された旋回路判断角と、をもとに、カーブ曲率半径を演算するカーブ曲率半径演算部25と、を備えている。
【0011】
そして、カーブ曲率半径推定装置2では、図3に示すカーブ曲率半径推定処理を予め設定した周期で実行し、カーブ曲率半径を推定する。
すなわち、まず、ステップS2で、ナビゲーション装置1から自車両の位置情報及び自車両前方の所定範囲内の地図情報といった地図情報を読み込む。
次いで、ステップS4に移行し、自車両前方所定範囲内に含まれる各ノードの位置座標に基づいて、リンク角を算出する。このリンク角は、自車両前方道路上のノードの座標を走行方向の手前から順に、図2に示すように、それぞれP(Xk-1、Yk-1)、Q(Xk、Yk)、R(Xk+1、Yk+1)とすると、ノードP及びQを結ぶリンクPQと、ノードQ及びRを結ぶリンクQRとがなす交差角として定義される。したがって、次式(1)〜(4)が成り立つことから、リンク角θkは、(3)及び(4)式から、〔−π、π〕の範囲で一意的に求めることができる。
【0012】
【数1】
【0013】
次いで、ステップS6に移行し、推定経路設定処理を行って、自車両前方道路に対し、自車両が進むであろう経路を設定する。この経路の設定は、図4に示すフローチャートにしたがって行う。
すなわち、まず、ステップS11で、ナビゲーション装置1に対して予め乗員によって目的地が入力されているか否かを判断する。目的地が入力されている場合には、そのまま後述のステップS25に移行する。
【0014】
一方、乗員によって目的地が設定されていない場合には、ステップS12に移行し、通知された地図情報に基づいて、自車前方道路の自車両に近いノードから順に番号を付与したとき、自車両に最も近い位置に位置する1番目のノードP1を推定経路の1番目のノードS1として設定しこれを所定の記憶領域に格納し、k=1に初期化した後ステップS13に移行する。
【0015】
このステップS13では、推定経路のk番目のノードSkがルートの終端か、つまり、自車両前方道路の情報として通知された地図情報の端部に位置するノードであるか否かを判断する。そして、k番目のノードSkが自車両前方の地図情報の端部に相当するノードでない場合には、ステップS14に移行し、ノードSkに分岐路があるか否かを判断する。この分岐路があるかないかの判断は、ナビゲーション装置1から通知されたノードSkの前方に隣接するノード数が複数であるか否かに基づいて行う。
【0016】
そして、分岐路がない場合には、ステップS15に移行し、Sk(=Pi)の次のノードPi+1,1を推定経路のk+1番目のノードSk+1に設定した後ステップS16に移行し、kをk=k+1、iをi=i+1に更新した後、ステップS13に戻る。なお、ノードPi+1,1の、添字“i+1”は、ノードPiの前方に隣接するノードであること表し、添字“1”は、ノードPiの前方に隣接するノードの1番目のノードであることを表す。
【0017】
一方、前記ステップS14で、ノードSkに分岐路がある場合には、ステップS21に移行し、リンク種別に応じて、例えば図5に示す優先順位に基づいて優先路を決定する。この優先順位は、例えば、リンク種別が、本線リンクである場合の優先順位が最も高く、以後、本線間の渡り線リンク、ランプリンク、側道リンク及びサービスエリア(SA)等の側道リンク、その他、の順に優先順位が低くなるように設定され、側道リンクとサービスエリア等の側道リンクとは、同じ優先順位に設定されている。
【0018】
リンク種別に応じてこのような順に優先順位を設定し、これに応じて推定経路を設定することによって、例えば自車両が本線を走行中に側道へ進む可能性は低いので、乗員によって目的地が入力されていない場合でも、自車両が進むであろう道路を的確に予測することができる。
そして、ステップS21の処理で、同じ優先順位の道路が前方に複数存在し、図5に示す優先順位に基づいて優先路が設定されない場合には、ステップS22に移行し、今度は、道路種別に応じて、例えば図6に示す優先順位に基づいて優先路を決定する。この優先順位は、例えば、道路種別が高速道路又は有料道路である場合に優先順位が最も高く、以後、国道又は県道及び主要地方道、一般道、その他、の順に優先順位が低くなるように設定され、国道と、県道及び主要地方道とは同じ優先順位に設定されている。
【0019】
道路種別に応じてこのような優先順位を設定し、これに基づき推定経路を設定することによって、例えば、三叉路で前方道路が国道と一般道の場合、自車両は国道に進む可能性が高いので、乗員によって目的地が入力されていない場合でも、自車両が進むであろう道路を的確に予測することができる。
そして、ステップS22の処理で、同じ優先順位の道路が前方に複数存在し、図6に示す優先順位に基づいて優先路が決定されない場合には、ステップS23に移行し、先にステップS4の処理で算出したリンク角θi,jに基づいて優先路を決定する。つまり、リンク角θi,jの絶対値が最小となるノードPi+1,jを優先路として決定し、ステップS24に移行する。なお、ノードPi+1,jの添字“i+1”はノードPiの前方に隣接するノードであることを表し、添字“j”は、ノードPiの前方に隣接するノードのj番目のノードであることす。
【0020】
一方、前記ステップS21で、リンク種別に基づいて優先路が決定したとき、また、ステップS22で、道路種別に基づいて優先路が決定したときには、そのままステップS24に移行する。
このステップS24では、前記ステップS21でのリンク種別又はステップS22での道路種別に基づいて優先路が決定されたときには、推定経路のk+1番目のノードSk+1として、優先路として決定された、ノードPiの次のノードで一番優先順位の高いノードPi+1,jを設定する。一方、ステップS23でリンク角に基づき優先路が決定されたときには、優先路として決定されたノードPi+1,jを推定経路のk+1番目のノードSk+1として設定する。そして、このようにして設定した推定経路のk+1番目のノードSk+1を所定の記憶領域に格納した後、前記ステップS16に移行し、k及びiを更新する。
【0021】
そして、ノードSkが自車両前方の地図情報の端部に相当するノードとなるまで、ステップS13からステップS24の処理を繰り返し行い、端部に相当するノードとなったとき、ステップS13からステップS25に移行し、推定経路の設定を行う。
具体的には、前記ステップS11の処理で乗員によって目的地の設定が行われていると判断された場合、つまり、ステップS11からそのままステップS25に移行した場合には、ナビゲーション装置1から通知された目的地までの案内経路を推定経路として設定する。一方、前記ステップS11の処理で乗員によって目的地の設定が行われず、ステップS13を経由してステップS25に移行した場合には、所定の記憶領域に記憶されているノードSk(k=1、2、3、……)を推定経路として設定し、推定経路の設定処理を終了する。
【0022】
このようにして、推定経路の設定が終了すると、図3のステップS6からステップS8に移行し、ナビゲーション装置1から地図情報として得られる道路種別、道路幅、車線数、制限速度に応じて最大ノード数Nmaxと旋回路判断角θmaxとを設定する。
具体的には、最大ノード数Nmaxは、図7に示すように、例えば道路種別が高速道路であり、且つ制限速度が60〔km/h〕以上であるときには最大ノード数Nmaxを“7”に設定し、制限速度が60〔km/h〕未満のときには“5”に設定する。また、道路種別が高速道路ではなく、道路幅が16〔m〕以上又は4車線以上の道路である場合には、制限速度が50〔km/h〕以上であるときには最大ノード数Nmaxを“7”、50〔km/h〕未満のときには“5”に設定する。また、道路種別が高速道路ではなく、道路幅が16〔m〕未満且つ3車線以下の道路である場合には、制限速度が50〔km/h〕以上であるときには最大ノード数Nmaxを“7”に設定し、50〔km/h〕未満のときには“5”に設定する。
【0023】
また、旋回路判断角θmaxは、図8に示すように、例えば道路種別が高速道路であり、且つ制限速度が60〔km/h〕以上であるときには旋回路判断角θmaxを90度に設定し、制限速度が60〔km/h〕未満のときには120度に設定する。また、道路種別が高速道路ではなく、道路幅が16〔m〕以上又は4車線以上の道路である場合には、制限速度が50〔km/h〕以上であるときには旋回路判断角θmaxを90度、50〔km/h〕未満のときには120度に設定する。また、道路種別が高速道路でなく、道路幅が16〔m〕未満且つ3車線以下の道路である場合には、制限速度が50〔km/h〕以上であるときには旋回路判断角θmaxを120度に設定し、50〔km/h〕未満のときには150度に設定する。
【0024】
このように、高速道路や、車線幅が広い道路、或いは、車線数が多い道路、制限速度が高い道路では、最大ノード数Nmaxが大きくなるように設定することによって、一般の道路では、高速道路や、道路幅が広い道路、車線数が多い道路、制限速度が高い道路ほど、カーブ曲率半径が極端に小さなカーブは少なくなるので、このような道路で必要以上にカーブ曲率半径が小さくなってしまうことを防ぎ、実際の道路形状に則したカーブ曲率半径を算出するようにしている。逆に、一般道路、車線幅が狭い道路、車線数が少ない道路、制限速度が低い道路では、カーブ曲率半径が小さいカーブが存在するので、最大ノード数Nmaxを小さく設定して曲率半径が無意味に平均化されることを防止するようにしている。
【0025】
また、高速道路、車線幅が広い道路、車線数が多い道路、制限速度が高い道路では、旋回路判断角θmaxが小さくなるように設定することによって、一般の道路では、高速道路や、道路幅が広い道路、車線数が多い道路、制限速度が高い道路ほど、カーブ曲率半径が極端に小さなカーブは少なくなるので、このような道路でも、より確実に旋回路と判断し、曲率半径が無意味に平均化されることを防止するようにしている。
【0026】
このようにして最大ノード数Nmax及び旋回路判断角θmaxを設定すると、ステップS8からステップS10に移行し、図9に示すカーブ曲率半径演算処理を行い、ステップS6の処理で設定した推定経路に対し、まず、カーブ曲率半径を算出する際の探査区間を設定し、この探査区間内に存在するノードのリンク長の総和を、リンク角の総和で除して、これをカーブ曲率半径とする。
【0027】
具体的には、まず、ステップS31で、図10に示すように、ステップS6の処理で設定した推定経路に対し、カーブの曲率半径を算出する際の探査区間D、つまり探査を行う区間の区間長を設定する。この探査区間Dは、ナビゲーション装置1から得られる道路種別、道路幅、車線数、制限速度をもとに、例えば図11に基づいて設定する。
【0028】
つまり、例えば道路種別が高速道路であり、且つ制限速度が60〔km/h〕以上であるときには探査区間Dを450〔m〕に設定し、制限速度が60〔km/h〕未満のときには300〔m〕に設定する。また、道路種別が高速道路ではなく、道路幅が16〔m〕以上又は4車線以上の道路である場合には、制限速度が50〔km/h〕以上であるときには探査区間Dを300〔m〕、50〔km/h〕未満のときには150〔m〕に設定する。また、道路種別が高速道路ではなく、道路幅が16〔m〕未満且つ3車線以下の道路である場合には、制限速度が50〔km/h〕以上であるときには探査区間Dを150〔m〕に設定し、50〔km/h〕未満のときには100〔m〕に設定する。
【0029】
ここで、高速道路、車線幅が広い道路、車線数が多い道路、制限速度が高い道路では探査区間Dが長くなるように設定しているが、これは一般の道路では、高速道路や道路幅が広い道路、車線数が多い道路、制限速度が高い道路ほど、カーブ曲率半径が極端に小さなカーブは少なくなるので、探査区間Dを長くしてもカーブ曲率半径が必要以上に平均化されることはなく、また、カーブ曲率半径の大きなカーブでは長距離の探査区間Dを設定することで、探査区間D内のカーブ曲率半径を平均化するという理由から、地図データのノードに含まれる誤差の影響も小さく抑えることができるためである。
【0030】
次いで、ステップS32に移行し、リンク長及びリンク角の総和を算出する際のノード数Nを設定する。このノード数Nの設定は、図12に示すフローチャートにしたがって行う。
まず、ステップS41で、ノード変数nをn=4に初期化する。なお、このノード変数nの初期値は、4以上であればよく、“4”に限らず任意に設定することができ、例えば、高速道路のようにカーブ曲率半径が極端に小さなカーブが少ない道路ではノード変数nの初期値を大きく設定してもよい。
【0031】
次いでステップS42に移行し、ノード変数nが、前記図3のステップS8の処理で設定した最大ノード数Nmaxよりも大きいか否かを判断する。そして、n>Nmaxでない場合には、ステップS43に移行し、次式(5)に従ってリンク長の総和Lsumを算出する。なお、式(5)中のLiは、ノードiとノードi+1間のリンク長である。また、式(5)中のkは、推定経路において探査区間Dを設定する際に基準となるノードを表し、例えば、最も自車両位置に近いノードを“k−1”とし、その次に位置するノードを“k”とする。
【0032】
【数2】
【0033】
次いで、ステップS44に移行し、ステップS43で算出したリンク長の総和Lsumが、前記図9のステップS31で設定した探査区間Dよりも長いか否かを判断し、Lsum>Dでない場合には、ステップS45に移行し、今度は、次式(6)にしたがって、リンク角の総和θsumを算出する。なお、式(6)中のθiは、ノードi−1及びノードi間のリンクと、ノードi及びノードi+1間のリンクとがなす角度である。また、kは、上述と同様に、推定経路において探査区間Dを設定する際に基準となるノードを表す。
【0034】
【数3】
【0035】
次いで、ステップS46に移行し、ステップS45で算出したリンク角の総和θsumの絶対値が、図3のステップS8で設定した旋回路判断角θmaxよりも大きいか否かを判断する。そして、|θsum|>θmaxでない場合には、ステップS47に移行し、ノード変数nを“1”だけカウントアップした後、ステップS42に戻る。
【0036】
そして、ステップS42で、ノードnが最大ノード数Nmaxを超えたとき(n>Nmax)、或いは、ステップS44でリンク長の総和Lmaxが探査区間Dを超えたとき(Lmax>D)、或いは、ステップS46で、リンク角の総和θsumの絶対値が旋回路判断角θmaxを超えたとき(|θsum|>θmax)には、ステップS48に移行し、ノード数Nを、N=n−1として設定し、処理を終了する。
【0037】
このようにしてノード数Nを設定したならば、図9のステップS32からステップS33に移行し、ステップS32で設定したノード数Nに基づき、次式(7)に従ってリンク角の総和θsumを算出する。
【0038】
【数4】
【0039】
次いで、ステップS34に移行し、ステップS32で設定したノード数Nに基づき次式(8)に従ってリンク長の総和Lsumを算出する。
【0040】
【数5】
【0041】
次いで、ステップS35に移行し、ステップS33及びステップS34で算出したリンク角の総和θsum及びリンク長の総和Lsumに基づいて、次式(9)からカーブ曲率半径Rkを算出する。
【0042】
【数6】
【0043】
そして、このようにして探査区間Dについてカーブ曲率半径の演算処理が終了したならば、カーブ曲率半径演算処理を終了し、図3に戻ってカーブ曲率半径推定処理を終了する。
なお、ここでは、ステップS6で設定した推定経路に対し、探査区間Dを1つ設定し、推定経路に対し、一つのカーブ曲率半径Rkを算出するようにした場合について説明しているが、基準となるノードkをずらして複数設定し、1の推定経路に対し、探査区間Dを複数設定し、それぞれについてカーブ曲率半径Rkを算出するようにしてもよい。
【0044】
次に、上記第1の実施の形態の動作を説明する。
カーブ半径推定装置2では、図3に示すカーブ半径推定処理を予め設定した所定周期で実行し、まずナビゲーション装置1から自車両の現在位置に応じた自車両前方所定範囲の地図情報を読み込み(ステップS2)、この地図情報に含まれる各ノードの位置座標に基づいて隣接するノードを接続するリンクどうしで形成されるリンク角θkを算出する(ステップS4)。
【0045】
そして、このとき、ナビゲーション装置1に対し乗員によって目的地が設定されているものとすると、ナビゲーション装置1において把握している目的地までの経路を、推定経路として設定する(ステップS6)。そして、地図情報に基づいて自車両前方の道路種別、道路幅、車線数、制限速度等を認識し、図7に示す対応図から最大ノード数Nmaxを特定し、また、図8に示す対応図から旋回路判断角θmaxを特定する(ステップS8)。このとき、例えばあるノードが属する道路が一般道路であり、その道路幅が16〔m〕未満且つ3車線以下、その制限速度が50〔km/h〕未満であるとすると、最大ノード数Nmaxは、図7から“5”として設定され、旋回路判断角θmaxは、図8から150度として設定される。
【0046】
そして、カーブ曲率半径を算出するために、まず、図11に基づいて、探査区間Dが設定され(ステップS31)、例えばノードが一般道路に属し、その道路幅が16〔m〕未満且つ3車線以下、その制限速度が50〔km/h〕未満である場合には、探査区間Dは100〔m〕として設定される。
続いて、図12のフローチャートにしたがって、ノード数Nの算出が行われるが、前記ステップS8の処理で例えば最大ノード数Nmaxとして“5”が設定されている場合には、ステップS41からステップS42を経てステップS43に移行し、リンク長の総和Lsumを前記(5)式から算出し、この場合、n=4であるから、曲率算出対象のノードとこの一つ先のノードとの間のリンクLkとその前後のリンク長Lk-1及びLk+1のそれぞれ半分の値との和から算出される。そして、このリンク長の総和Lsumが、先に設定した探査区間Dよりも大きくない場合には、ステップS45に移行し、前記(6)式からリンク角の総和θsumが算出され、この場合n=4であるから、リンク角の総和θsumは、θkとθk+1との和から算出される。このリンク角の総和θsumが旋回路判断角θmaxよりも小さいとすると、ステップS46からステップS47に移行してノード変数nを“1”だけインクリメントした後ステップS42に戻る。
【0047】
そして、ノード変数nはn=5となり、Nmax(=5)よりも大きくないから、ステップS43に移行し、リンク長の総和Lsumを算出する。この場合、n=5であるから、曲率算出対象のノードkとこれよりも一つ前のノードk−1との間のリンク長Lk-1、リンク長Lk、リンク長Lk+1、リンク長Lk+2に基づいて、リンク長の総和Lsumを算出し、Lsumが探査区間Dよりも短いとするとステップS44からステップS45に移行し、リンク角の総和θsumを算出し、これが、旋回路判断角θmaxよりも小さいときには、ノード変数nを“1”だけインクリメントした後(ステップS47)、ステップS42に移行する。
【0048】
ここで、ノード変数nは、n=6となり、Nmax(=5)よりも大きいから、ステップS42からステップS48に移行し、このときのノード変数nに基づき、カーブ曲率算出に用いるノード数N(=n−1)が設定される。
このとき、ノード変数nが、最大ノード数Nmaxを超える以前に、リンク長の総和Lsumが探査区間Dを超えた場合には、リンク長の総和Lsumから曲率半径を算出する区間として妥当であると判断されて、この時点で、ステップS48に移行しこのときのノード変数nに基づいてノード数Nが設定される。同様に、ノード変数nが最大ノード数Nmaxを超える以前に、リンク角の総和θsumが旋回路判断角θmaxを超えた場合には、探査区間Dにおけるリンク角の総和θsum、つまり、探査区間Dあたりのノードの変化角度が線回路判断角θmaxを超えたとき、旋回路であるとみなすことができると判断されて、この時点でのノード変数nに基づいてノード数Nが設定される。
【0049】
そして、このようにして設定されたノード数Nに基づいて、リンク角の総和θsum及びリンク長の総和Lsumが再度算出され、これに基づいてカーブ曲率半径が算出される。
ここで、地図情報として予め記憶されている道路形状を表すノードは、データ量が莫大となることを避けるために、一般に、図13に示すように、直線部分では、ノード密度が小さく、カーブ部分では、ノード密度が高くなるように、ノードが設定されている場合が多い。そのため探査区間D内に存在するノード数が最大ノード数Nmax以上である場合には、道路形状が旋回路であるとみなすことができる。したがって、ノード数が最大ノード数Nmaxを超えたときには旋回路であると判断しこの時点でのノード変数nに基づいて曲率半径を算出するためのノード数Nを設定することによって、このノード数に達した時点で、リンク長及びリンク角の加算が中止されることになる。よって、曲率半径が不必要に平均化されることが回避され、曲率半径の算出をより正確に行うことができ、より正確に道路形状を推定することができる。
【0050】
また、このとき、最大ノード数Nmaxを、ノードの属する道路種別、道路幅、車線数、制限速度等に応じて設定するようにしているから、実際の道路形状に適したカーブ曲率半径を算出することができる。つまり、実際の高速道路にはカーブ曲率半径が極端に小さなカーブは存在せず、また、道路幅が広いほど、車線数が多いほど、さらに制限速度が高いほど、カーブ曲率半径が極端に小さなカーブは少なくなるから、最大ノード数をこれらの何れかに応じて変更することによって、道路形状に則した曲率半径を算出することができる。
【0051】
また、ノード数が最大ノード数Nmaxを超えたときに旋回路であると判断するだけでなく、リンク角の総和θsumが旋回路判断角θmaxを超えたときにも旋回路であると判断するようにしているから、ノード数からは旋回路であることを検出できないような場合であっても、リンク角の総和θsumから旋回路であることを検出することができ、より確実に旋回路の判断を行うことができる。
【0052】
また、上記第1の実施の形態では、旋回路判断角θmaxについても、ノードの属する道路種別、道路幅、車線数、制限速度の何れかに応じて変更するようにしている。上述のように、高速道路や道路幅が広い道路、車線数が多い道路、制限速度が高い道路ほど、カーブ曲率半径が極端に小さなカーブは少なくなるため、これらに応じて旋回路判断角θmaxを設定することによって、より確実に旋回路の判断を行うことができ、実際の道路形状に見合ったカーブ曲率半径を算出することができる。
【0053】
一方、ナビゲーション装置1において、目的地が設定されていない場合には、図4のステップS11からステップS12に移行し、まず、自車両に最も近い位置に位置するノード、図2の場合、P1を推定経路の1番目のノードS1として設定し、このノードP1は、ルートの終端のノードではなく、また、ノードS1には分岐路があるから、ステップS13からステップS14を経てステップS21に移行し、リンク種別に基づき図5から優先順位を設定する。
【0054】
図2において、分岐路の一方のノードP2のリンク種別がランプリンク、分岐路の他方のノードP4のリンク種別が本線リンクである場合には、図5から、本線リンクの優先順位の方が高いから、ステップS21からステップS24に移行してこのノードP4を優先路とし、これを推定経路の2番目のノードS2として設定する。ステップS16で変数k及びiを更新してステップS13に移行し、推定経路の2番目のノードS2として設定されたノードP4は終端のノードではなく、また分岐路であるから、ステップS13からステップS14を経てステップS21に移行し、リンク種別に基づき優先路を決定する。
【0055】
このとき、分岐路の一方のノードP5が側道リンク、他方のノードP6がSA等の側道リンクであり、優先度が同じである場合には、ステップS21からステップS22に移行し、道路種別に基づき図6の優先順位にしたがって優先路を設定する。例えば、ノードP5が国道、ノードP6が一般道である場合には、ノードP5の方が優先順位が高いから、ノードP5を3番目の推定経路S3として設定する。
【0056】
そして、ノードP5は、終端のノードであるから、ステップS13からステップS25に移行し、ノードS1〜S3に該当するノードP1、P4、P5を推定経路とする。
そして、以後、上記と同様に、リンク長の最大値Lmaxを設定しこれに基づいて、必要に応じて仮想ノードを設定し、これらノードに基づいて、カーブ路の曲率半径の設定を行う。
【0057】
一方、例えば、ノードP2及びP4のリンク種別に基づく優先順位が同一でありまた、道路種別に基づく優先順位が同一であるときには、ステップS21からステップS22を経てステップS23に移行し、リンク角に基づき優先路の決定を行う。つまり、分岐路を構成するノードP0、ノードP1及びノードP2がなすリンク角と、ノードP0、ノードP1及びノードP4がなすリンク角とのうち、リンク角が最も小さいノードを選択する。例えば、ノードP0、ノードP1及びノードP2がなすリンク角の方がより小さいものとすると、このノードP4が優先路として選択される。そして、ノードP5とP6とについて、リンク種別、或いは道路種別或いはリンク角に基づいて優先路の設定が行われ、何れかが優先路として設定される。
【0058】
このように、予め設定した優先順位にしたがって、推定経路の設定を行うようにしているから、自車両前方の地図情報から車両が進むであろう道路を予測することができ、それ以外の道路に対してカーブ曲率半径の演算を行わないことで、演算負荷を低減することができる。
次に、本発明の第2の実施の形態を説明する。
【0059】
この第2の実施の形態におけるカーブ曲率半径推定装置2は、カーブ半径推定処理の処理手順の一部が異なること以外は、上記第1の実施の形態と同様であるので、同一部には同一符号を付与しその詳細な説明は省略する。
第2の実施の形態におけるカーブ曲率半径推定装置2は、図14に示すように、ナビゲーション装置1からの地図情報をもとに、隣接するノード間のリンクどうしがなすリンク角を算出するリンク角算出部21、前記地図情報及び前記リンク角算出部21で算出されたリンク角をもとに、自車両が進行する推定経路を設定する推定経路設定部22と、ナビゲーション装置1からの地図情報をもとにS字カーブ判断角を設定するS字カーブ判断角設定部31と、推定経路設定部22で設定された推定経路とS字カーブ判断角設定部31で設定したS字カーブ判断角とをもとに、カーブ曲率半径を演算するカーブ曲率半径を算出するカーブ曲率半径演算部33と、を備えている。
【0060】
そして、カーブ曲率半径推定装置2では、図15に示すカーブ半径推定処理のフローチャートにしたがって、カーブ曲率半径を推定する。
まず、上記第1の実施の形態と同様に、地図情報を読み込み(ステップS2)、これに基づきリンク角の算出処理を行った後(ステップS4)、ステップS6に移行し、推定経路設定処理を行う。
【0061】
次いで、ステップS9に移行し、S字カーブ判断角の設定処理を行う。具体的には、地図情報に基づいて、例えば図16に示す対応図から設定する。つまり、例えば道路種別が高速道路であり、且つ制限速度が60〔km/h〕以上であるときにはS字カーブ判断角θsmaxを20度に設定し、制限速度が60〔km/h〕未満のときには25度に設定する。また、道路種別が高速道路でなく、道路幅が16〔m〕以上又は4車線以上の道路である場合には、制限速度が50〔km/h〕以上であるときにはS字カーブ判断角θsmaxを20度、50〔km/h〕未満のときには25度に設定する。また、道路種別が高速道路でなく、道路幅が16〔m〕未満且つ3車線以下の道路である場合には、制限速度が50〔km/h〕以上であるときにはS字カーブ判断角θsmaxを25度に設定し、50〔km/h〕未満のときには30度に設定する。
【0062】
このように、高速道路、車線幅が広い道路、車線数が多い道路、制限速度が高い道路ではS字カーブ判断角θsmaxが小さくなるように設定することによって、一般の道路では、高速道路や道路幅が広い道路、車線数が多い道路、制限速度が高い道路ほど、カーブ曲率半径が極端に小さなカーブが連続するS字カーブは少ないので、このような道路でも確実にS字カーブであることを判断することができるようになっている。
【0063】
このようにして、S字カーブ判断角θsmaxを設定すると、ステップS10aに移行し、ステップS6の処理で設定した推定経路に対し、カーブ曲率半径演算処理を行う。
この第2の実施の形態におけるカーブ曲率半径演算処理は、図17に示すように、ステップS32aでのノード数Nの算出処理の処理手順が異なること以外は、図9に示す上記第1の実施の形態におけるカーブ曲率半径演算処理と同様であって、まず、ステップS31で探査区間Dの設定を行い、ステップS32aに移行し、後述のノード数Nの算出処理を行う。そして、算出したノード数Nに基づいて、リンク角を加算してリンク角の総和θsumを算出し(ステップS33)、リンク長を加算してリンク長の総和Lsumを算出し(ステップS34)、これらリンク角及びリンク長の総和に基づいてカーブ曲率半径の算出を行う(ステップS35)。
【0064】
前記ステップS32aにおけるノード数Nの算出処理は、図18のフローチャートに示す手順で行う。
すなわち、まず、ステップS51でノード変数nをn=4に初期化する。また、このノード変数nの保存値nz1の初期値として、ノード変数nの初期値から“1”を減算した値、つまり、この場合“3”を設定する。なお、ノード変数nの初期値は、4以上であればよく、“4”に限らず、任意に設定することができ、例えば、高速道路のようにカーブ曲率半径が極端に小さなカーブが少ない道路ではノード変数nの初期値を大きく設定してもよい。
【0065】
次いでステップS52に移行し、前記式(5)に基づいてリンク長の総和Lsumを算出し、算出したリンク長の総和Lsumが、図17のステップS31で設定した探査区間Dよりも長くないとき(Lsum≦D)であるときには、ステップS54に移行し、次に、θk・θk+n-3<0を満足するかを判断する。そして、θk・θk+n-3<0を満足しない場合には、リンク角θk+n-3は、探査区間D内に存在する第1のリンク角θkとカーブ方向が同じであると判断し、ステップS55に移行して、ノード変数nの保存値nz1としてnの値を更新設定し、さらに、S字カーブ判断用リンク角加算値θssumを零にクリアした後、ステップS56に移行し、ノード変数nを“1“だけインクリメントし、ステップS52に戻る。
【0066】
一方、前記ステップS54で、θk・θk+n-3<0である場合には、探査区間D内に存在する第1のリンク角とカーブ方向が逆であると判断し、ステップS57に移行し、S字カーブ判断用リンク角加算値θssumを次式(10)に従って算出する。
【0067】
【数7】
【0068】
次いで、ステップS58に移行し、S字カーブ判断用リンク角加算値θssumの絶対値が、S字カーブ判断角θsmaxよりも大きいか否かを判断し、|θssum|>θsmaxでない場合にはステップS56に移行する。逆に、|θssum|>θsmaxである場合には、S字カーブであると判断してステップS59に移行し、ノード数Nとしてノード変数nの保存値nz1を設定し処理を終了する。
【0069】
そして、順次ノード変数nをカウントアップして、リンク長の総和Lsumの算出を行い、リンク長の総和Lsumが探査区間Dよりも大きくなったときには、ステップS53からステップS60に移行し、このときのn−1をノード数Nとして設定し、処理を終了する。
次に、上記第2の実施の形態の動作を説明する。
【0070】
カーブ半径推定装置2では、起動されると、図15に示すカーブ半径推定処理を行い、ナビゲーション装置1から自車両前方所定範囲の地図情報を読み込み(ステップS2)、この地図情報に含まれる各ノードの位置座標に基づいて、隣接するノードを接続するリンクどうしで形成されるリンク角θkを算出し(ステップS4)、ナビゲーション装置1に対し乗員によって目的地が設定されている場合には、設定された目的地までの経路を推定経路として設定し、目的地が設定されていない場合には、上記第1の実施の形態と同様にして前記図4のフローチャートに示す手順で経路を推定する。
【0071】
そして、地図情報に基づいて自車両前方の道路種別、道路幅、車線数、制限速度等を認識し、図16に示す対応図からS字カーブ判断角θsmaxを特定し(ステップS9)、例えばあるノードが属する道路が一般道路であり、その道路幅が16〔m〕未満且つ3車線以下、その制限速度が50〔km/h〕未満である場合には、図16からS字カーブ判断角θsmaxは、30度として設定される。
【0072】
そして、ステップS10aに移行して、図17の処理手順にしたがって、カーブ曲率半径の演算処理を行い、まず、図11に基づいて、探査区間Dを設定し(ステップS31)、次に、図18のフローチャートにしたがって、ノード数Nの算出を行う(ステップS32a)。
例えば、推定経路において曲率半径算出対象のノードをノードkとした場合、まず、ノード変数nをn=4として前記(5)式からリンク長の総和Lsumを算出し(ステップS51、S52)、リンク長Lk-1及びLk+1のそれぞれ半分の値と、リンク長Lkとの和からならるLsumを算出する。そして、このリンク長の総和Lsumが、先に設定した探査区間Dよりも大きくない場合には、ステップS53からステップS54に移行し、リンク角θkとθk+n-3(=θk+1)との積を算出する。例えば推定経路が、同一方向へのカーブ路である場合には、これらの積は正値となるから、ステップS54からステップS55に移行し、ノード変数nの保存値nz1としてnの値この場合“4”を更新設定し、さらに、S字カーブ判断用リンク角加算値θsmaxを零にリセットした後、ステップS56で、ノード変数nをn=5に更新し、ステップS51に戻る。
【0073】
そして、同様に、リンク長の総和Lsumを算出し、このリンク長の総和Lsumが探査区間Dよりも短い場合には、ステップS54に移行し、次に、リンク角θkとθk+n-3(=θk+2)の積を算出するが、一方向へのカーブ路であるから、この積は正値となり、ノード変数nの保存値nz1を“5”に更新し、ノード変数nをインクリメントする。
【0074】
そして、一方向へのカーブ路である間は、リンク角の積は正値となるから、ステップS52からS56の処理が繰り返し行われ、リンク長の総和Lsumが探査区間Dよりも長くなったとき、ステップS53からステップS60に移行し、このときのノード変数nから“1”を減算した値をノード数Nとして設定する。そして、このようにして設定したノード数Nに基づいて、新たにリンク角の総和θsum及びリンク長の総和Lsumを算出し、これらに基づいてノードk位置におけるカーブ曲率半径を算出する。
【0075】
一方、推定経路がS字カーブ路である場合には、探査区間D内の第1のリンク角θkとノードk+n−3位置におけるリンク角θk+n-3とが同一方向である場合には、ステップS53からステップS54、S55,S56を経てステップS52に移行し、順次ノード変数nを更新すると共に、リンク長の総和Lsumを算出し、このリンク長の総和Lsumが探査区間Dを超えたときに、このときのノード変数nから“1”を減算した値をノード数Nとして設定する。
【0076】
そして、例えば、図19に示すように、リンク角θkと、ノードk+n−3位置におけるリンク角θk+n-3とが同一方向であり、ノード変数nの保存用変数nz1がノード変数nの値に応じて順次更新されている状態から、n=14の時点で、リンク角θkとリンク角θk+n-3(=θk+11)との向きが逆方向となると、ステップS54からステップS57に移行し、S字カーブ判断用リンク角加算値θssumを算出する。この場合、リンク角加算値θssumは、θk+11となり、これがS字カーブ判断用リンク角加算値θsmaxよりも小さい場合には、ステップS58からステップS56に移行し、ノード変数nをn=15にインクリメントした後ステップS52に戻る。そして、同様に、リンク長の総和Lsumを算出し(ステップS53)、このリンク長の総和Lsumが探査区間Dよりも短い場合には、ステップS54に移行し、次に、リンク角θkとθk+n-3(=θk+12)の積を算出するが、図19に示すように、ノードk+12は引き続きカーブ方向が逆となる位置に存在し、これらの積は負値となるため、ステップS57に移行して、S字カーブ判断用リンク角加算値θssumを算出し、このS字カーブ判断用リンク角加算値θssum(=θk+11+θk+12)が、S字カーブ判断用リンク角加算値θsmaxよりも小さいときには、ステップS56に移行してノード変数nを、n=16にインクリメントする。
【0077】
そして、S字カーブである場合には、リンク角の積は、負値となるから、ステップS52、S53、S54、S57、S58、ステップS56の処理が繰り返し行われ、図19に示すように、リンク角が、連続して、リンク角θkの向きとは逆方向であるリンク角θk+11、θk+12、θk+13、……が順次加算される。そして、このS字カーブ判断用リンク角加算値θssumが、S字カーブ判断用リンク角加算値θssumよりも大きくなったとき、ステップS59に移行し、S字カーブであると判断し、ノード数Nとしてnz1の値を設定する。
【0078】
このとき、nz1には、リンク角θkとの向きが最初に逆となったリンク角θk+11の算出時点におけるノード変数nの一つ前の値(この場合“13”)が設定されている。リンク角の総和θsum及びリンク長の総和Lsumは、前記(7)式に基づいて算出されるから、すなわち、リンク角θkとの向きが逆となったリンク角θk+11よりも以前のリンク角に基づいて算出されることになる。
【0079】
したがって、カーブ方向が一定である区間の、リンク角及びリンク長に基づいて、カーブ曲率半径を算出することになり、カーブ方向が異なるリンク角を含んでカーブ曲率半径が算出されることはないから、S字カーブ路であっても、的確にカーブ曲率半径を算出することができる。
また、例えば、図20に示すように、ノードk+11とノードk+12とが接近して設けられた特異点であり、且つ、実際には、一方向のカーブ路であるが、ノードk+11とノードk+12とがなす角が、カーブ路の方向とは逆方向である場合には、ノードk+11について、リンク角が、基準となるリンク角と同じ方向であるかどうかの判定が行われた場合に、基準となるリンク角と逆方向であると判断されるため、ステップS54からステップS57に移行し、S字カーブ判断用リンク角加算値θssumが算出される。
【0080】
そして、次に、ノードk+12について、リンク角が基準となるリンク角と同じ方向であるかどうかの判定が行われたときには、ノードk+12がなすリンク角は、基準となるリンク角と同じ方向に戻っているから、ステップS54からステップS55に移行し、このときのノード変数nが、ノード変数nの保存値nz1として設定され、また、S字カーブ判断用加算値θssumが零にリセットされる。そして、以後、各ノードにおけるリンク角は、基準となるリンク角と同じ方向であるから、ステップS54からステップS55、ステップS56を経てステップS52に移行し、順次、ノード変数nが更新されると共に、このノード変数nがノード変数nの保存値nz1として更新設定され、また、S字カーブ判断用リンク角加算値θssumが零にリセットされる。そして、リンク長の総和Lsumが探査区間Dを超えたときに、ノード変数n−1がノード数Nとして設定される。一方、特異点の後に、真のS字カーブが存在する場合には、再度基準となるリンク角と逆方向のリンク角となったときに、ステップS54からステップS57に移行し、S字カーブ判断用加算値θssumが算出される。そして、このS字カーブ判断用加算値θssumがS字カーブ判断角θsmaxを超えたときに、ノード変数nの保存値nz1として保存された値が、ノード変数Nとして設定されることになる。前記ノード変数nの保存値nz1には、特異点以後に出現したS字カーブのカーブ方向が変化する直前におけるノード変数が設定されているから、上記と同様に、リンク角の総和θsum及びリンク長の総和Lsumは、リンク角θk及びリンク長Lk-1から、S字カーブによりリンク角θkとの向きが逆となったリンク角よりも前のリンク角及びリンク長に基づいて算出されることになり、特異点が存在する場合であっても、ノード曲率半径を的確に検出することができる。
【0081】
また、S字カーブであると判断するためのS字カーブ判断角θsmaxを、ナビゲーション装置1から得られる道路種別、道路幅、車線数、制限速度に応じて変更するようにしているから、より確実にS字カーブと判断することができ、実際の道路形状に合ったカーブ曲率半径を算出することができる。つまり、上述のように、実際の高速道路にはカーブ曲率半径が極端に小さなカーブは存在せず、また、道路幅が広いほど、車線数が多いほど、さらに制限速度が高いほど、カーブ曲率半径が極端に小さなカーブは少なくなるから、S字カーブ判断角θsmaxをこれらの何れかに応じて変更することによって、より的確にS字カーブを判断することができる。
【0082】
次に、第3の実施の形態を説明する。
この第3の実施の形態におけるカーブ曲率半径推定装置2は、カーブ半径推定処理の処理手順の一部が異なること以外は、上記第1の実施の形態と同様であるので、同一部には同一符号を付与しその詳細な説明は省略する。
この第3の実施の形態におけるカーブ曲率半径推定装置2は、図21に示すように、ナビゲーション装置1からの地図情報をもとに、隣接するノード間のリンクどうしがなすリンク角を算出するリンク角算出部21、前記地図情報及び前記リンク角算出部21で算出されたリンク角をもとに、自車両が進行する経路を推定する推定経路設定部22と、ナビゲーション装置1からの地図情報をもとに横変位最大値を設定する横変位最大値設定部41と、推定経路設定部22で設定された推定経路と、横変位最大値設定部41で設定された横変位最大値とをもとに、カーブ曲率半径を演算するカーブ曲率半径演算部43と、を備えている。
【0083】
そして、カーブ曲率半径推定装置2では、図22に示すカーブ半径推定処理のフローチャートにしたがって、カーブ曲率半径を推定する。
すなわち、まず、上記第1の実施の形態と同様に、地図情報を読み込み(ステップS2)、これに基づきリンク角の算出処理を行った後(ステップS4)、ステップS6に移行し、推定経路設定処理を行う。
【0084】
次いで、ステップS9aに移行し、横変位最大値の設定処理を行う。具体的には、ナビゲーション装置1から通知される地図情報に基づいて、例えば図23にしたがって、横変位最大値Ymaxを設定する。つまり、例えば道路種別が高速道路であり、且つ制限速度が60〔km/h〕以上であるときには横変位最大値Ymaxを3.5〔m〕に設定し、制限速度が60〔km/h〕未満のときには4〔m〕に設定する。また、高速道路でなく、道路幅が16〔m〕以上又は4車線以上の道路である場合には、制限速度が50〔km/h〕以上であるときには横変位最大値Ymaxを3.5〔m〕、50〔km/h〕未満のときには4〔m〕に設定する。また、高速道路でなく、道路幅が16〔m〕未満且つ3車線以下の道路である場合には、制限速度が50〔km/h〕以上であるときには横変位最大値Ymaxを4〔m〕に設定し、50〔km/h〕未満のときには4.5〔m〕に設定する。
【0085】
このように、高速道路、車線幅が広い道路、車線数が多い道路、制限速度が高い道路では横変位最大値Ymaxが小さくなるように設定することによって、一般の道路では、高速道路や道路幅が広い道路、車線数が多い道路、制限速度が高い道路ほど、極端にカーブ曲率半径が小さなカーブが連続するS字カーブは少ないので、このような道路でも確実にS字カーブであることを判断することができるようになっている。
【0086】
次いで、ステップS10bに移行し、カーブ曲率半径演算処理を行う。
この第3の実施の形態におけるカーブ曲率半径演算処理は、図24に示すように、ステップS32bでのノード数Nの算出処理の処理手順が異なること以外は、図9に示す上記第1の実施の形態におけるカーブ曲率半径演算処理と同様であって、まず、ステップS31で探査区間Dの設定を行い、ステップS32bに移行し、後述のノード数Nの算出処理を行う。そして、算出したノード数Nに基づいて、リンク角を加算してリンク角の総和θsumを算出し(ステップS33)、リンク長を加算してリンク長の総和Lsumを算出し(ステップS34)、これらリンク角及びリンク長の総和に基づいてカーブ曲率半径の算出を行う(ステップS35)。
【0087】
前記ステップS32bにおけるノード数Nの算出処理は、図25のフローチャートに示す手順で行う。
すなわち、まず、ステップS61でノード変数nをn=4に初期化する。また、ノード変数nの保存値nz1として、ノード変数nの初期値から“1”を減算した値、この場合“3”を設定する。なお、前記ノード変数nの初期値は、4以上であればよく、“4”に限らず任意に設定することができ、例えば、高速道路のようにカーブ曲率半径が極端に小さなカーブが少ない道路ではノード変数nの初期値を大きく設定してもよい。
【0088】
次いで、ステップS62に移行し、前記式(5)に基づいてリンク長の総和Lsumを算出する。
次いで、ステップS63に移行し、ステップS62で算出したリンク長の総和Lsumが、ステップS31で設定した探査区間Dよりも長いか否かを判断し、Lsum>Dでない場合には、ステップS64に移行し、次に、θk・θk+n-3<0か否かを判断する。そして、θk・θk+n-3<0でない場合には、探査区間D内に存在する第1のリンク角とカーブ方向が同じであると判断し、ステップS65に移行して、nの保存値nz1としてこの時点におけるノード変数nの値を更新設定した後、ステップS66に移行し、ノード変数nを“1“だけインクリメントし、ステップS62に戻る。
【0089】
一方、前記ステップS64で、θk・θk+n-3<0である場合には、探査区間D内に存在する第1のリンク角とカーブ方向が逆であると判断し、ステップS67に移行し、S字カーブ判断用横変位加算値Ysumを次式(11)に従って算出する。ここで、S字カーブ判断用横変位加算値Ysumとは、図26及び図27に示すように、リンク長とリンク角とから算出される横変位を加算したものである。
【0090】
【数8】
【0091】
次いで、ステップS68に移行し、S字カーブ判断用横変位加算値Ysumの絶対値が、横変位最大位置Ymaxよりも大きいか否かを判断し、|Ysum|>Ysumでない場合には、ステップS66に移行し、|Ysum|>Ysumである場合には、S字カーブであると判断してステップS69に移行し、ノード数Nとしてnの保存値nz1を設定し処理を終了する。
【0092】
また、順次nをカウントアップし、リンク長の総和Lsumの算出を行ったときに、リンク長の総和Lsumが探査区間Dよりも大きくなったときには、ステップS63からステップS70に移行し、このときのノード変数nに基づきn−1をノード数Nとして設定し、処理を終了する。
このように、この第3の実施の形態においては、探査区間D内に存在する第1のリンク角とは方向が異なるリンク角について、そのリンク角に対応するリンク長とリンク角とから算出される横変位を積算し、この横変位の積算値が、S字カーブ判断用の横変位最大値Ymaxを超えるときに、S字カーブであると判断するようにしたから、この場合も、上記第2の実施の形態と同様に、リンク長及びリンク角が不必要に加算され無意味に平均化させることを回避し、的確に道路形状を推定することができ、また、S字カーブである場合であっても、的確にその道路形状を推定することができる。
【0093】
また、この第3の実施の形態においても、横変位最大値Ymaxを、ナビゲーション装置1から得られる道路種別、道路幅、車線数、制限速度に応じて変更するようにしているから、S字カーブかどうかの判断を容易的確に行うことができ、実際の道路形状に見合ったカーブ曲率半径を算出することができる。
また、同一カーブ上にノードが近接して設けられた特異点において、そのリンク角が、第1のリンク角と異なる場合であっても、その横変位が横変位最大値Ymaxよりも小さい場合には、S字カーブであると判定されることはなく、また、特異点の場合、リンク角が第1のリンク角と異なる状況が連続しないから、S字カーブ判断用横変位加算値Ysumが、横変位最大値Ymaxを超えることはない。したがって、特異点を、S字カーブであると誤認識することはない。また、S字カーブを構成する一つ一つのリンク長が短く、それぞれの横変位が所定横変位以下の場合であっても確実にS字カーブと判断することができ、実際の道路形状に合ったカーブ曲率半径を算出することができる。
【0094】
なお、上記第2及び第3の実施の形態においては、S字カーブであるかどうかを判定し、S字カーブであるときには、カーブ方向が逆となる以前のリンク角及びリンク長に基づいてカーブ曲率半径を算出するようにした場合について説明したが、上記第1の実施の形態と組み合わせ、旋回路である場合には上記第1の実施の形態にしたがって、カーブ曲率半径を算出し、S字カーブである場合には第2又は第3の実施の形態にしたがって、カーブ曲率半径を算出するようにしてもよい。
【0095】
また、上記各実施の形態においては、図4のフローチャートに示すように、予め設定した優先順位にしたがって、推定経路を設定するようにした場合について説明したが、これに限らず、推定経路を設定することができればよく、例えば分岐路において、乗員による方向指示器によって自車両が進むであろう方向を判断したり、カメラ等によって自車両の走行車線を検知し、自車両が進むであろう方向を判断する等の方法を用いて設定するようにしてもよい。
【0096】
ここで、図9、図17、図24のステップS31での探査区間設定を行う処理が探査区間設定手段に対応し、ステップS25でのカーブ曲率半径算出を行う処理がカーブ曲率半径算出手段に対応し、図12のステップS42〜S46の処理、図18のステップS54〜S58の処理、図25のステップS64〜S68の処理がカーブ形状検出手段に対応している。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態におけるカーブ曲率半径推定装置の一例を示す概略構成図である。
【図2】自車両前方の地図情報の一例を示す概略構成図である。
【図3】第1の実施の形態におけるカーブ曲率半径演算処理の処理手順の一例を示すフローチャートである。
【図4】図3の推定経路設定処理の処理手順の一例を示すフローチャートである。
【図5】リンク種別と優先順位との対応を示す対応図である。
【図6】道路種別と優先順位との対応を示す対応図である。
【図7】道路種別、道路幅、車線数、制限速度と、リンク長最大値との対応を示す対応図である。
【図8】道路種別、道路幅、車線数、制限速度と、旋回路判断角との対応を示す対応図である。
【図9】図3におけるカーブ曲率半径演算処理の処理手順の一例を示すフローチャートである。
【図10】探査区間Dを説明するための説明図である。
【図11】道路種別、道路幅、車線数、制限速度と、探査区間Dとの対応を示す対応図である。
【図12】図9のノード数Nの算出を行うための処理手順の一例を示すフローチャートである。
【図13】地図情報として予め記憶されている道路形状を表すノードを説明するための説明図である。
【図14】第2の実施の形態におけるカーブ曲率半径推定装置の一例を示す概略構成図である。
【図15】第2の実施の形態におけるカーブ曲率半径推定処理の処理手順の一例を示すフローチャートである。
【図16】道路種別、道路幅、車線数、制限速度と、S字カーブ判断角との対応を表す対応図である。
【図17】図15のステップS10aにおけるカーブ曲率半径演算処理の処理手順の一例を示すフローチャートである。
【図18】図17のステップS32aにおけるノード数Nの算出のための処理手順の一例を示すフローチャートである。
【図19】第2の実施の形態の動作説明に供する説明図である。
【図20】第2の実施の形態の動作説明に供する説明図である。
【図21】第3の実施の形態におけるカーブ曲率半径推定装置の一例を示す概略構成図である。
【図22】第3の実施の形態におけるカーブ曲率半径推定処理の処理手順の一例を示すフローチャートである。
【図23】道路種別、道路幅、車線数、制限速度と、横変位最大値との対応を表す対応図である。
【図24】図22のステップS10bにおけるカーブ曲率半径演算処理の処理手順の一例を示すフローチャートである。
【図25】図24のステップS32bにおけるノード数Nの算出のための処理手順の一例を示すフローチャートである。
【図26】第3の実施の形態の動作説明に供する説明図である。
【図27】第3の実施の形態の動作説明に供する説明図である。
【符号の説明】
1 ナビゲーション装置
2 カーブ曲率半径推定装置
21 リンク角算出部
22 推定経路設定部
23 最大ノード数設定部
24 旋回路判断角設定部
25 カーブ曲率半径演算部
31 S字カーブ判断角設定部
33 カーブ曲率半径演算部
41 横変位最大値設定部
43 カーブ曲率半径演算部
Claims (15)
- 道路地図データを構成し、少なくとも位置情報を有する複数のノードに基づきこれら複数のノードで構成される経路のカーブ曲率半径を推定するカーブ曲率半径推定装置において、
前記カーブ曲率半径を推定するための探査区間を設定する探査区間設定手段と、
当該探査区間内の一連のノード列について、隣接するノード間を結ぶリンクのリンク長の総和を、隣接するリンクどうしがなす交差角の総和で除して、前記ノード列で構成される経路のカーブ曲率半径を算出するカーブ曲率半径算出手段と、
前記ノードの配置状況から、前記ノード列で構成される経路が旋回路又はS字カーブ路であるか否かを検出するカーブ形状検出手段と、を備え、
当該カーブ形状検出手段は、前記探査区間内に存在するノード数が、予め設定した最大ノード数以上であるときに、前記ノード列は、旋回路であると判断し、
前記カーブ曲率半径算出手段は、前記カーブ形状検出手段で、旋回路又はS字カーブ路であることが検出されたときには、前記探査区間の起点からのノードの配置状況が、旋回路又はS字カーブ路であると判断されない区間内のノード列に基づいて、前記カーブ曲率半径を算出することを特徴とするカーブ曲率半径推定装置。 - 道路地図データを構成し、少なくとも位置情報を有する複数のノードに基づきこれら複数のノードで構成される経路のカーブ曲率半径を推定するカーブ曲率半径推定装置において、
前記カーブ曲率半径を推定するための探査区間を設定する探査区間設定手段と、
当該探査区間内の一連のノード列について、隣接するノード間を結ぶリンクのリンク長の総和を、隣接するリンクどうしがなす交差角の総和で除して、前記ノード列で構成される経路のカーブ曲率半径を算出するカーブ曲率半径算出手段と、
前記ノードの配置状況から、前記ノード列で構成される経路が旋回路又はS字カーブ路であるか否かを検出するカーブ形状検出手段と、を備え、
当該カーブ形状検出手段は、前記探査区間の起点からの前記リンク角の総和を積算したときに、当該リンク角の総和が、予め設定した旋回路判断角以上であるときに、前記ノード列は、旋回路であると判断し、
前記カーブ曲率半径算出手段は、前記カーブ形状検出手段で、旋回路又はS字カーブ路であることが検出されたときには、前記探査区間の起点からのノードの配置状況が、旋回路又はS字カーブ路であると判断されない区間内のノード列に基づいて、前記カーブ曲率半径を算出することを特徴とするカーブ曲率半径推定装置。 - 前記カーブ形状検出手段は、前記探査区間内に存在するノード数が、予め設定した最大ノード数以上であるときには、前記ノード列は、旋回路であると判断することを特徴とする請求項2記載のカーブ曲率半径推定装置。
- 道路地図データを構成し、少なくとも位置情報を有する複数のノードに基づきこれら複数のノードで構成される経路のカーブ曲率半径を推定するカーブ曲率半径推定装置において、
前記カーブ曲率半径を推定するための探査区間を設定する探査区間設定手段と、
当該探査区間内の一連のノード列について、隣接するノード間を結ぶリンクのリンク長の総和を、隣接するリンクどうしがなす交差角の総和で除して、前記ノード列で構成される経路のカーブ曲率半径を算出するカーブ曲率半径算出手段と、
前記ノードの配置状況から、前記ノード列で構成される経路が旋回路又はS字カーブ路であるか否かを検出するカーブ形状検出手段と、を備え、
当該カーブ形状検出手段は、前記探査区間内の基準リンク角とカーブ方向が連続して逆となるリンク角の総和が、予め設定したS字カーブ判断角以上であるときに、前記ノード 列は、S字カーブであると判断し、
前記カーブ曲率半径算出手段は、前記カーブ形状検出手段で、旋回路又はS字カーブ路であることが検出されたときには、前記探査区間の起点からのノードの配置状況が、旋回路又はS字カーブ路であると判断されない区間内のノード列に基づいて、前記カーブ曲率半径を算出することを特徴とするカーブ曲率半径推定装置。 - 前記カーブ形状検出手段は、前記探査区間内の基準リンク角とカーブ方向が連続して逆となるリンク角の総和が、予め設定したS字カーブ判断角以上であるときには、前記ノード列は、S字カーブであると判断することを特徴とする請求項1から請求項3の何れか1項に記載のカーブ曲率半径推定装置。
- 道路地図データを構成し、少なくとも位置情報を有する複数のノードに基づきこれら複数のノードで構成される経路のカーブ曲率半径を推定するカーブ曲率半径推定装置において、
前記カーブ曲率半径を推定するための探査区間を設定する探査区間設定手段と、
当該探査区間内の一連のノード列について、隣接するノード間を結ぶリンクのリンク長の総和を、隣接するリンクどうしがなす交差角の総和で除して、前記ノード列で構成される経路のカーブ曲率半径を算出するカーブ曲率半径算出手段と、
前記ノードの配置状況から、前記ノード列で構成される経路が旋回路又はS字カーブ路であるか否かを検出するカーブ形状検出手段と、を備え、
当該カーブ形状検出手段は、前記探査区間内の基準リンク角とカーブ方向が逆となるリンク角の頂点に位置するノードとこの次に位置するノードとの横変位量が、予め設定した横変位判断値以上であるときに、前記ノード列は、S字カーブであると判断し、
前記カーブ曲率半径算出手段は、前記カーブ形状検出手段で、旋回路又はS字カーブ路であることが検出されたときには、前記探査区間の起点からのノードの配置状況が、旋回路又はS字カーブ路であると判断されない区間内のノード列に基づいて、前記カーブ曲率半径を算出することを特徴とするカーブ曲率半径推定装置。 - 前記カーブ形状検出手段は、前記探査区間内の基準リンク角とカーブ方向が逆となるリンク角の頂点に位置するノードとこの次に位置するノードとの横変位量が、予め設定した横変位判断値以上であるときには、前記ノード列は、S字カーブであると判断することを特徴とする請求項1から請求項5の何れか1項に記載のカーブ曲率半径推定装置。
- 道路地図データを構成し、少なくとも位置情報を有する複数のノードに基づきこれら複数のノードで構成される経路のカーブ曲率半径を推定するカーブ曲率半径推定装置において、
前記カーブ曲率半径を推定するための探査区間を設定する探査区間設定手段と、
当該探査区間内の一連のノード列について、隣接するノード間を結ぶリンクのリンク長の総和を、隣接するリンクどうしがなす交差角の総和で除して、前記ノード列で構成される経路のカーブ曲率半径を算出するカーブ曲率半径算出手段と、
前記ノードの配置状況から、前記ノード列で構成される経路が旋回路又はS字カーブ路であるか否かを検出するカーブ形状検出手段と、を備え、
当該カーブ形状検出手段は、リンク角が、前記探査区間内の基準リンク角とカーブ方向が連続して逆となる区間における隣接するノード間の横変位量の総和が、予め設定した横変位判断値以上であるとき、前記ノード列は、S字カーブであると判断し、
前記カーブ曲率半径算出手段は、前記カーブ形状検出手段で、旋回路又はS字カーブ路であることが検出されたときには、前記探査区間の起点からのノードの配置状況が、旋回路又はS字カーブ路であると判断されない区間内のノード列に基づいて、前記カーブ曲率半径を算出することを特徴とするカーブ曲率半径推定装置。 - 前記カーブ形状検出手段は、リンク角が、前記探査区間内の基準リンク角とカーブ方向が連続して逆となる区間における隣接するノード間の横変位量の総和が、予め設定した横変位判断値以上であるときには、前記ノード列は、S字カーブであると判断することを特徴とする請求項1から請求項7の何れか1項に記載のカーブ曲率半径推定装置。
- 前記ノードは、当該ノードが属する道路の道路環境情報を有し、
前記カーブ形状検出手段は、前記ノードが属する道路の道路環境に応じて、前記最大ノード数を設定することを特徴とする請求項1又は請求項3記載のカーブ曲率半径推定装置。 - 前記ノードは、当該ノードが属する道路の道路環境情報を有し、
前記カーブ形状検出手段は、前記ノードが属する道路の道路環境に応じて、前記旋回路判断角を設定することを特徴とする請求項2記載のカーブ曲率半径推定装置。 - 前記ノードは、当該ノードが属する道路の道路環境情報を有し、
前記カーブ形状検出手段は、前記ノードが属する道路の道路環境に応じて、前記S字カーブ判断角を設定することを特徴とする請求項4又は請求項5記載のカーブ曲率半径推定装置。 - 前記ノードは、当該ノードが属する道路の道路環境情報を有し、
前記カーブ形状検出手段は、前記ノードが属する道路の道路環境に応じて、前記横変位判断値を設定することを特徴とする請求項6から請求項9の何れか1項に記載のカーブ曲率半径推定装置。 - 前記ノードは、当該ノードが属する道路の道路環境情報を有し、
前記探査区間設定手段は、前記ノードが属する道路の道路環境に応じて、前記探査区間を設定することを特徴とする請求項1から請求項13の何れか1項に記載のカーブ曲率半径推定装置。 - 前記道路環境情報は、道路種別、道路幅、制限速度の少なくとも何れかであることを特徴とする請求項10から請求項14の何れか1項に記載のカーブ曲率半径推定装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002197374A JP3876777B2 (ja) | 2002-07-05 | 2002-07-05 | カーブ曲率半径推定装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002197374A JP3876777B2 (ja) | 2002-07-05 | 2002-07-05 | カーブ曲率半径推定装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004037372A JP2004037372A (ja) | 2004-02-05 |
JP3876777B2 true JP3876777B2 (ja) | 2007-02-07 |
Family
ID=31705164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002197374A Expired - Fee Related JP3876777B2 (ja) | 2002-07-05 | 2002-07-05 | カーブ曲率半径推定装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3876777B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4506261B2 (ja) * | 2004-04-28 | 2010-07-21 | 日産自動車株式会社 | カーブ曲率推定装置及びカーブ曲率推定方法 |
CN105675000B (zh) * | 2016-01-15 | 2018-06-19 | 武汉中海庭数据技术有限公司 | 一种基于高精度地图的车道级路径规划方法及系统 |
JP7253065B2 (ja) * | 2019-09-11 | 2023-04-05 | 日立Astemo株式会社 | 車両制御装置、車両制御方法、車両運動制御システム、及びレーン推定装置 |
CN111737633B (zh) * | 2020-06-23 | 2024-07-16 | 上海汽车集团股份有限公司 | 一种车辆前方道路曲率半径的计算方法和装置 |
CN114202903A (zh) * | 2021-12-31 | 2022-03-18 | 北京中交兴路信息科技有限公司 | 基于dem数据的车辆预警方法、装置、设备及存储介质 |
-
2002
- 2002-07-05 JP JP2002197374A patent/JP3876777B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004037372A (ja) | 2004-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5087363B2 (ja) | 地理的形態の曲率に関するボーイング係数表示 | |
JP4021027B2 (ja) | 走行経路認識装置 | |
JP3578734B2 (ja) | 有効障害要因を有する交通網における交通状態の判定方法 | |
CN109959388B (zh) | 一种基于栅格扩展模型的智能交通精细化路径规划方法 | |
JP5312677B2 (ja) | 経路探索装置 | |
EP1867952B1 (en) | Optimum route determination employing an estimation function | |
US6216088B1 (en) | Method for determining itinerary data | |
EP1559994A2 (en) | Apparatus for predicting road shape and method of calculating a clothoid curve | |
JP5081734B2 (ja) | 交通情報を生成するための交通情報提供システム、及び、カーナビゲーションシステム | |
JP3485774B2 (ja) | 交通流シミュレーションシステム | |
KR102671660B1 (ko) | 교통 혼잡 감지 방법, 장치, 전자 기기 및 저장 매체 | |
KR19980079664A (ko) | 경로 탐색 장치 | |
CN113639741A (zh) | 一种偏航识别和导航路线规划方法及装置 | |
JP3876777B2 (ja) | カーブ曲率半径推定装置 | |
JP3951828B2 (ja) | 道路形状推定装置 | |
CN114964292A (zh) | 全局路径规划方法、装置、电子设备及存储介质 | |
JP4913992B2 (ja) | 車両走行支援システム | |
JPH10300492A (ja) | ロケータ装置 | |
EP4420947A1 (en) | Vehicle control device, vehicle control method, and vehicle control system | |
JP5679207B2 (ja) | 自車位置認識システム、自車位置認識プログラム、及び自車位置認識方法 | |
JP3801663B2 (ja) | 車載ナビゲーション装置 | |
JP3802730B2 (ja) | 車両の走行安全装置 | |
JPH02137097A (ja) | 高架高速道路走行認識装置 | |
KR100550433B1 (ko) | 네비게이션 시스템의 거리오차 검출방법 | |
JP7201188B1 (ja) | 渋滞度判定方法、渋滞度判定プログラム及び渋滞度判定装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050624 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060720 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060725 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060904 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20061010 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061023 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |