IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ コンチネンタル オートモーティヴ ゲゼルシャフト ミット ベシュレンクテル ハフツングの特許一覧

特許6997211ポリゴンにおける中間点を低減する方法および装置
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2021-12-20
(45)【発行日】2022-01-17
(54)【発明の名称】ポリゴンにおける中間点を低減する方法および装置
(51)【国際特許分類】
   G01C 21/32 20060101AFI20220107BHJP
   G09B 29/00 20060101ALI20220107BHJP
【FI】
G01C21/32
G09B29/00 Z
【請求項の数】 9
(21)【出願番号】P 2019554930
(86)(22)【出願日】2018-03-28
(65)【公表番号】
(43)【公表日】2020-06-11
(86)【国際出願番号】 EP2018057975
(87)【国際公開番号】W WO2018184952
(87)【国際公開日】2018-10-11
【審査請求日】2019-10-04
(31)【優先権主張番号】17465511.8
(32)【優先日】2017-04-07
(33)【優先権主張国・地域又は機関】EP
【前置審査】
(73)【特許権者】
【識別番号】508097870
【氏名又は名称】コンチネンタル オートモーティヴ ゲゼルシャフト ミット ベシュレンクテル ハフツング
【氏名又は名称原語表記】Continental Automotive GmbH
【住所又は居所原語表記】Vahrenwalder Strasse 9, D-30165 Hannover, Germany
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】クリスティアン フルーク
(72)【発明者】
【氏名】ラレシュ キオレアン
(72)【発明者】
【氏名】ミアエラ ブレアバン
(72)【発明者】
【氏名】パウル ショット
【審査官】田中 純一
(56)【参考文献】
【文献】特開2001-201358(JP,A)
【文献】特開2006-018022(JP,A)
【文献】特開2013-140246(JP,A)
【文献】特開2013-007889(JP,A)
【文献】特開2017-146530(JP,A)
【文献】特開2007-072011(JP,A)
【文献】米国特許出願公開第2013/0328937(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G01C 21/00 - 21/36
G01C 23/00 - 25/00
G09B 23/00 - 29/14
G06T 1/00
G06T 11/60 - 13/80
G06T 17/05
G06T 19/00 - 19/20
(57)【特許請求の範囲】
【請求項1】
始端ノードと終端ノードの間の中間ノードのセットの1つまたは複数の中間ノードを有する折れ線において、中間ノードを低減する方法であって、
前記始端ノード、前記終端ノードおよび前記中間ノードのセットの各中間ノードに、属性である経度および緯度の他に、別の属性のセットの属性値および属性方向を有する少なくとも1つの別の属性が割り当てられており、
前記方法は、1つまたは複数のプロセッサにおいて、前記始端ノードから始まって、各中間ノードに対して、
中間ノードの少なくとも1つの別の属性の属性方向を、直前の先行するノードの少なくとも1つの別の属性の属性方向と比較することと、
前記比較から、前記属性方向の方向変化が生じる場合、前記中間ノードを重要なノードとしてマークすることと、
前記属性である経度および緯度に関して線一般化方法を適用することと、
を含んでおり、
前記少なくとも1つの別の属性は、高さであり、
重要なノードとしてマークされた前記中間ノードは削除されない、
中間ノードを低減する方法。
【請求項2】
1つまたは複数のプロセッサにおいて、前記始端ノードから始まって、前記中間ノードのセットの各中間ノードに対して、前記線一般化方法を適用する前に、
中間ノードの少なくとも1つの別の属性の値と、先行するノードの少なくとも1つの別の属性の値との間の差を決定することであって、前記先行するノードは、直近の先行する始端ノード、またはまだ削除されていない直近の先行する中間ノードである、ことと、
前記差が閾値を超える場合に、前記中間ノードを重要なノードとしてマークし、前記差が閾値を超えない場合に、前記中間ノードのセットから前記中間ノードを削除することと、
を含んでいる、請求項1記載の方法。
【請求項3】
1つまたは複数のプロセッサにおいて、前記始端ノードから始まって、前記中間ノードのセットの各中間ノードに対して、前記線一般化方法を適用する前に、
中間ノードの少なくとも1つの別の属性の値と、先行するノードの少なくとも1つの別の属性の値との間の第1の差を決定することであって、前記先行するノードは、直近の先行する始端ノードまたは削除されていない、直近の先行する中間ノードである、ことと、
直後の後続のノードの少なくとも1つの別の属性の値と、前記中間ノードの少なくとも1つの別の属性の値との間の第2の差を決定することと、
前記第1の差と前記第2の差の間の差を決定することと、
前記差が閾値を超える場合に、前記中間ノードを重要なノードとしてマークし、前記差が閾値を超えない場合に、前記中間ノードを削除することと、
を含んでいる、請求項1記載の方法。
【請求項4】
さらに、
1つまたは複数のプロセッサにおいて、前記始端ノードから始まって、前記中間ノードのセットの各中間ノードに対して、前記線一般化方法を適用する前に、
中間ノードの少なくとも1つの別の属性の値と、先行するノードの少なくとも1つの別の属性の値との間の第1の差を決定することであって、前記先行するノードは、直近の先行する始端ノードまたは削除されていない、直近の先行する中間ノードである、ことと、
直後の後続のノードの少なくとも1つの別の属性の値と、前記先行するノードの少なくとも1つの別の属性の値との間の第2の差を決定することと、
前記第1の差と前記第2の差の間の第3の差を決定することと、
前記第3の差が閾値を超える場合に、前記中間ノードを重要なノードとしてマークし、前記第3の差が閾値を超えない場合に、前記中間ノードを削除することと、
を含んでいる、請求項1記載の方法。
【請求項5】
前記属性のセットは2つの属性を含んでおり、前記2つの属性に関して、重要なノードとしての前記中間ノードのマーキングおよび前記中間ノードの削除が行われる、請求項1から4までのいずれか1項記載の方法。
【請求項6】
始端ノードと終端ノードの間の中間ノードのセットの1つまたは複数の中間ノードを有する折れ線において、中間ノードを低減する方法を含んでおり、
前記始端ノード、前記終端ノードおよび前記中間ノードのセットの各中間ノードに、属性である経度および緯度の他に、別の属性のセットの属性値および属性方向を有する少なくとも1つの別の属性が割り当てられており、
前記方法は、1つまたは複数のプロセッサにおいて、前記始端ノードから始まって、各中間ノードに対して、
中間ノードの少なくとも1つの別の属性の属性方向を、直前の先行するノードの少なくとも1つの別の属性の属性方向と比較することと、
前記比較から、前記属性方向の方向変化が生じる場合、前記中間ノードを重要なノードとしてマークすることと、
前記経度または前記緯度に、前記少なくとも1つの別の属性および前記折れ線の投影に関して線低減方法を適用することであって、重要であるとマークされた前記中間ノードは削除されない、ことと、
前記線低減方法の適用後に残っている中間ノードを重要なノードとしてマークすることと、
属性である前記経度および前記緯度に関して前記線一般化方法を適用することと、
を含んでおり、
重要なノードとしてマークされた前記中間ノードは削除されない、
請求項1記載の方法。
【請求項7】
前記線一般化方法は、ダグラス・ポーカーのアルゴリズムである、請求項1から6までのいずれか1項記載の方法。
【請求項8】
前記折れ線は、道路網のセグメントである、請求項1から7までのいずれか1項記載の方法。
【請求項9】
請求項1から8までのいずれか1項記載の方法を実施するように構成されているプロセッサを有している装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ドライバー支援システムの分野に関する。より詳細には、本発明は、エレクトロニックホライズンアプリケーションのための、ポリゴンによって表されるマップデータの複雑さを低減する方法および装置に関する。
【0002】
現代の車両には、ドライバーを、ルート計画または車両案内時に支援する様々なドライバー支援機能が多数ある。ADAS(Advanced Driver Assistance Systems)は、運転中の快適性、効率、安全性およびドライバーの満足度を高めるために開発された。これは自動車内の電子的な補助装置であり、特定の走行状況においてドライバーを支援する。ADASは、たとえば、アダプティブヘッドライト設定、アダプティブクルーズコントロール、車線逸脱警告、コーナリング警告、速度制限警告に関する。この目的のために、ADASは車両の駆動、制御またはシグナリング装置に半自律的または自律的に介入し、適切なマン・マシンインターフェースによって危機的状況の直前または最中にドライバーに警告を行う。一部のADASはこのために、レーダー、赤外線、超音波等の様々なセンサーおよびデジタルビデオカメラおよびLIDAR等の光学センサーを使用する。
【0003】
一部のADASはデジタルマップデータを使用する。デジタルマップは、特に、道路網、道路形状、道路状況および車両周辺の地形に関する情報を提供する。デジタルマップデータは、曲率、勾配、示されていない速度制限、車線境界等のセンサーでは検出できない有益な情報を提供する。さらに、デジタルマップは、センサーの検出能力またはドライバーの見地を超えるある程度の予測機能を有している。
【0004】
デジタルマップデータを必要とするADASは、通常、車両のナビゲーションシステムに関連付けられている地理データベースを使用する。ナビゲーションシステムのこのようなデータベースには、地域の道路網を再現するためのデータ、特に道路の高さ、交差点、交差点での回転制限、通りの名前、制限速度等の地理データが含まれている。
【0005】
ナビゲーションシステムのデータベースには、ADASアプリケーションに必要なデータよりも多くのデータが含まれている場合がある。このようなアプリケーションは、エレクトロニックホライズンを決定するE-Horizonアプリケーションである。エレクトロニックホライズンとは、現在の車両位置から、E-Horizonアプリケーションによって決定される範囲まで延びる道路と交差点の集合である。道路と交差点のこの集合は、車両が現在の位置から辿り得る可能性のある経路である。E-Horizonシステムは通常、限られた複雑さを伴うマップデータのみを処理することができるが、他方で、マップデータは精度要件も満たしている必要がある。
【0006】
マップデータを、2次元空間のポリゴンまたは3次元空間の多面体等の幾何学的図形で表すことができる。本明細書において、ポリゴンまたは折れ線(Streckenzug)は、形状を形成する、接続されている複数のセグメントのセットとして定義されてよい。ポリゴンは、セグメントと接続されたときに形状を形成するノードのセットを介して定義されてもよい。ポリゴンは、互いに補完するときに形状を形成するセグメントとノードのセットを介して定義されてもよい。ノードは、2つのセグメントが交わる点である。ポリゴンは、任意の数のノードによって表されてよい。180°の角度で交わる2つのセグメントは、これら2つのセグメントを囲む、より大きなセグメントを形成する。したがって、セグメントは2つの点の接続部またはエッジである。
【0007】
道路網はノードとエッジによって表される。ここで道路セグメントは始端ノードと終端ノードによって区切られ、エッジは曲線等の詳細な幾何学的成形を有していてよい。詳細な幾何学的成形は、中間ノード(コントロールノードまたは英語でshape points)によって行われる。ノードと中間ノードは、緯度(geografische Breite)と経度(geografische Breite)によって、したがってその位置によって表される。さらに、ノードは、属性である勾配、高さおよび曲線半径で表され得る。道路セグメントは複数の曲線を含んでいてよい。道路セグメントは、Bスプラインまたは3次ベジェ曲線によって表される。ベジェ曲線は4つのコントロールノードによって表され、ここで先行するベジェ曲線の最後のコントロールノードは、後続のベジェ曲線の最初のコントロール点と同じである。
【0008】
道路セグメントはポリゴンによって近似される。この場合、道路セグメントは、接続されている複数のセグメントから構成されており、これらのセグメントの配置は、少なくとも追加の属性である高さを有するノードと中間ノードを介して定義されている。
【0009】
E-Horizonシステムが、ポリゴンによって表されているマップデータを使用する場合、たとえば、上り走行および下り走行時の車両の駆動を調整するために、高さ情報が必要になる場合がある。他方で、マップは、複雑すぎてはいけない。すなわち、リアルタイム処理を保証するために、中間ノードの数を不必要に多くするべきではない。
【0010】
ポリゴンまたは折れ線を単純化する方法が、先行技術において知られている。これらの方法は、マップの曲線の平滑化と一般化のために使用される。これらは以降で、線一般化方法と称される。線一般化方法の1つのクラスは、ポリゴン全体を考察し、より細かい近似に進む。
【0011】
このクラスの既知の線一般化方法は、2次元のダグラス・ポーカーのアルゴリズムである。その目的は、粗い形状が保持されるように、個々の点を省くことによって、一連の点によって得られる折れ線を単純化することである。この目的のために、元のポリゴンを2つのセクションに分割し、次にこれはアルゴリズムを自身の側で実行する。したがって、これは再帰的な方法である。
【0012】
2次元のダグラス・ポーカーのアルゴリズムを、図1を参照して説明する。図1は、元の成形フォーム0と、合計n=8個のノードを有する様々な近似段階1から4のポリゴンを示している。最初の近似として、始端ノードK1と終端ノードK2の間のセグメントが考察される。この近似が十分であるか否かを検査するために、n-2個の中間ノードの中から、K1とK2の間のセグメントから最大の距離を有する中間ノードが探される。近似段階1では、これは、垂直線として示されている距離を伴うS2である。この距離が許容値よりも小さい場合、近似は十分であり、他のすべての中間ノードを破棄することができる。ここではそうではなく、したがって、S2が残り、近似が精緻化される。
【0013】
第2の近似として、K1とS2の間のセグメントとS2とK2の間のセグメントが考察される。ここで、S1が、許容値よりも小さい、K1とS2の間のセグメントまでの距離を有することが明らかである。S1は削除され得る。S2とK2の間のセグメントまでの最大の距離を有するノードはS4である。この距離は許容値を超えている。したがって、S2とK2の間のセグメントをさらに精緻化する必要がある。
【0014】
第3の近似は、K1とS2の間のセグメント、S2とS4の間のセグメントおよびS4とK2の間のセグメントから成る。第3の近似段階では、この近似が十分か否かが調べられる。S6からこのセグメントまでの距離が許容値を超えているので、S4とK2の間のセグメントに関しては、これは当てはまらない。したがって、このセグメントはさらに精緻化される必要がある。
【0015】
結果は、K1とS2の間のセグメント、S2とS3の間のセグメントおよびS4とS6の間のセグメントならびにS6とK2の間のセグメントを伴う、第4の近似を伴う、第4の近似段階で見ることができる。
【0016】
したがって、ダグラス・ポーカーのアルゴリズムは、順次連続する中間ノードの緯度と経度のみを考察する、2次元の線一般化方法である。
【0017】
しかし、これらの属性への制限は、エレクトロニックホライズンの要件を満たしていない。特に、勾配、曲線半径および高さに対する必要な許容値は、これらが2次元のダグラス・ポーカーのアルゴリズムではまったく考慮されないため、保証されない。
【0018】
発明の開示
したがって、本発明の課題は、E-Horizontアプリケーションの要件を満たす、中間ノードを低減する方法および装置を提供することである。
【0019】
上述の課題は、独立した、方法の請求項にしたがった方法および独立した装置の請求項にしたがった装置によって解決される。従属請求項は有利な実施形態に関する。
【0020】
ある態様は、始端ノードと終端ノードの間の中間ノードのセットの1つまたは複数の中間ノードを有する折れ線において、中間ノードを低減する方法に関する。始端ノード、終端ノードおよび中間ノードのセットの各中間ノードに、属性である経度および緯度の他に、別の属性のセットの属性値および属性方向を有する少なくとも1つの別の属性が割り当てられている。この属性は勾配、曲線半径または高さである。1つまたは複数のプロセッサにおいて、始端ノードから始まって、各中間ノードに対して、以下のステップを実行する:中間ノードの少なくとも1つの別の属性の属性方向を、直前の先行するノードの少なくとも1つの別の属性の属性方向と比較すること;比較から、属性方向の方向変化が生じる場合、この中間ノードを重要なノードとしてマークすること;さらに、属性である経度および緯度に関して線一般化方法を適用することを実行する。ここで重要なノードとしてマークされた中間ノードは削除されてはいけない。線一般化方法は、特にダグラス・ポーカーのアルゴリズムであってよい。
【0021】
折れ線が特定の高さプロファイルを有する、直線状に延在する道路セグメントをモデル化していると仮定する。すなわち、各ノードと中間ノードには、属性である経度と緯度の他に、付加的に、高さに対する値が割り当てられている。属性である高さに関する方向変化は、関連する中間ノードの高さの値が少なくとも局部的な高さの極大値または少なくとも局部的な高さの極小値でなければならないことを意味する。ダグラス・ポーカーが、属性である緯度(Breitengrad)と緯度(Hoehengrad:高さの程度)に関して、重要であると分類された中間ノードを考慮せずに、直線状に延在する道路セグメントに適用される場合、直線状に延在する道路セグメントでは、開始点と終点の接続に対して垂直な変化がまさに延在していないため、始端ノードと終端ノードの間に1つのセグメントが残る。すべての中間ノードが削除され、これとともに、ADASにとって重要なすべての高さ情報も削除されるだろう。少なくとも局部的な高さの極小値または少なくとも局部的な高さの極大値が存在しているこの中間ノードが重要であるとマークされているということおよびこれがダグラス・ポーカーのアルゴリズムによって削除されてはいけないということによって、極めて重要な高さ情報が維持される。
【0022】
方向変化は、直前の先行するノードに関して定義される。
【0023】
属性である勾配に関する方向変化は、上向きの勾配から下向きの勾配または下向きの勾配から上向きの勾配として定義される。
【0024】
曲線半径に対する方向変化は、左から右への曲線半径または右から左への曲線半径として定義される。
【0025】
高さに対する方向変化は、上昇する高さから下降する高さまたは下降する高さから上昇する高さとして定義される。
【0026】
ダグラス・ポーカーのアルゴリズムにおいて考慮される、経度と緯度および別の属性における方向変化に関する許容値の他に、この方法は、別の属性に関する許容値の考察のぶん拡張されてよい。
【0027】
ある態様では、付加的に、線一般化方法を適用する前に、1つまたは複数のプロセッサにおいて、始端ノードから始まって、中間ノードのセットの各中間ノードに対して、以下のステップを実行する:中間ノードの少なくとも1つの別の属性の値と、先行するノードの少なくとも1つの別の属性の値との間の差を決定し、ここで、先行するノードは、直近の先行する始端ノードまたはまだ削除されていない、直近の先行する中間ノードであり;差が閾値を超える場合に、この中間ノードを重要なノードとしてマークし、差が閾値を超えない場合に、中間ノードのセットからこの中間ノードを削除する。
【0028】
したがって、勾配プロファイル、高さプロファイルまたは曲線プロファイルから、勾配、高さまたは曲線半径の差が、先行するノードと比較して閾値を下回っている中間ノードのみが削除され、ここで先行するノードは始端ノードまたはまだ削除されていない中間ノードである。
【0029】
別の態様では、付加的に、1つまたは複数のプロセッサにおいて、線一般化方法を適用する前に、始端ノードから開始して、中間ノードのセットの各中間ノードに対して以下のステップが実行される:中間ノードの少なくとも1つの別の属性の値と、先行するノードの少なくとも1つの別の属性の値との間の第1の差を決定し、ここで、先行するノードは、直近の先行する始端ノードまたは削除されていない、直近の先行する中間ノードであり;直後の後続のノードの少なくとも1つの別の属性の値と、中間ノードの少なくとも1つの別の属性の値との間の第2の差を決定し;第1の差と第2の差の間の差を決定し;この差が閾値を超える場合に、この中間ノードを重要なノードとしてマークし、この差が閾値を超えない場合に、この中間ノードを削除する。
【0030】
少なくとも1つの付加的な属性は、特に高さであってよい。したがって、中間ノードと先行するノードの間のセグメントの勾配および後続のノードと中間ノードの間のセグメントの勾配が求められる。これらのセグメントの勾配の差は閾値、すなわち、可及的に大きい許容値と比較される。
【0031】
別の態様では、付加的に、1つまたは複数のプロセッサにおいて、線一般化方法を適用する前に、始端ノードから開始して、中間ノードのセットの各中間ノードに対して以下のステップが実行される:中間ノードの少なくとも1つの別の属性の値と、先行するノードの少なくとも1つの別の属性の値との間の第1の差を決定し、ここで、先行するノードは、直近の先行する始端ノードまたは削除されていない、直近の先行する中間ノードであり;直後の後続のノードの少なくとも1つの別の属性の値と、先行するノードの少なくとも1つの別の属性の値との間の第2の差を決定し;第1の差と第2の差の間の差を決定し;この差が閾値を超える場合に、この中間ノードを重要なノードとしてマークし、この差が閾値を超えない場合に、この中間ノードを削除する。
【0032】
少なくとも1つの追加の属性は、特に高さであってよい。したがって、中間ノードと先行するノードの間の勾配および後続のノードと先行するノードの間の勾配が求められる。これらの勾配の差は、閾値と比較される。
【0033】
ある態様では、上述したのと同じ方法で、別の属性のセットの複数の属性が考慮されてよい。
【0034】
ある態様は、始端ノードと終端ノードの間の中間ノードのセットの1つまたは複数の中間ノードを有する折れ線において、中間ノードを低減する方法に関し、始端ノード、終端ノードおよび中間ノードのセットの各中間ノードに、属性である経度および緯度の他に、別の属性のセットの属性値および属性方向を有する少なくとも1つの別の属性が割り当てられている。1つまたは複数のプロセッサにおいて、始端ノードから始まって、各中間ノードに対して、以下の方法が実行される。
中間ノードの少なくとも1つの別の属性の属性方向を、直前の先行するノードの少なくとも1つの別の属性の属性方向と比較し;比較から、属性方向の方向変化が生じる場合、中間ノードを重要なノードとしてマークし;経度または緯度に、少なくとも1つの別の属性および折れ線の投影に関して線低減方法を適用し、ここで重要であるとマークされた中間ノードは削除されてはいけない;線低減方法の適用後に残っている中間ノードを重要なノードとしてマークし;属性である経度および緯度に関して線一般化方法を適用し、ここで重要なノードとしてマークされた中間ノードは削除されてはいけない。
【0035】
属性方向の方向が変化させられるとすぐに、対応する中間ノードが重要なノードとしてマークされる。重要なノードは、以降の2つの一般化方法の適用時に削除されてはいけない。少なくとも1つの別の属性と、折れ線の投影に関する、経度または緯度への線一般化方法は、経度と緯度に関する以降の線一般化方法において削除されてはいけない重要なノードをさらに決定するために用いられる。
【0036】
少なくとも1つの別の属性を高さとする。線一般化方法をダグラス・ポーカーのアルゴリズムとする。最初に、ダグラス・ポーカーのアルゴリズムが高さプロファイルに適用されることをこれは意味しており、この方法では、少なくとも局部的な高さの極大値または少なくとも局部的な高さの極小値が削除されるということが排除されている。残りの中間ノードは、高さプロファイルを正確に再現するために必要であり、以降の方法においてそれ以上削除されてはいけない。高さプロファイルは、高さに対する緯度または経度への折れ線の投影を表している。ここでダグラス・ポーカーのアルゴリズムが再度適用されるが、今回は、経度と緯度に関して適用され、方向変化によって生じる重要な中間ノードの他に、高さおよび投影に関するダグラス・ポーカーのアルゴリズムの適用によって求められた重要な中間ノードも削除されてはいけない。その結果、経度と緯度の点で最適に低減された折れ線が得られるが、それにもかかわらずエレクトロニックホライズンに対して十分に正確な高さの情報が準備される。
【0037】
ある態様は、上述したように方法を実施するように構成されているプロセッサを有する装置に関する。この方法は、プロセッサが実行するプログラム命令において再現されてよい。
【0038】
以降で、図面を参照して実施例に基づいて本発明を説明する。
【図面の簡単な説明】
【0039】
図1】ポリゴンに適用されたダグラス・ポーカーのアルゴリズムのステップである。
図2】ADASアーキテクチャのブロック図である。
図3】ADASアーキテクチャにおける、可能なソフトウェアアプリケーションのブロック図である。
図4】ポリゴンによってモデル化された地形セクションである。
図5】種々の属性に対する方向変化の例である。
図6】方法のフローチャート/プログラムフローチャートである。
【0040】
詳細な説明
図2は、ADASアーキテクチャ200のブロック図を示している。ADASアーキテクチャ200は、マップおよび位置決めエンジン204およびドライバー支援アプリケーション214を有している。マップおよび位置決めエンジン204は、個々のモジュールであってよく、または異なるパッケージに分けられてもよい。これは、センサーパッケージ等の別のパッケージ内に統合されてもよい。マップおよび位置決めエンジン204は、プロセッサ202、位置決めシステム204、マップデータベース206、特にモバイル通信用の通信インターフェースを備えた通信システム208およびデータバスインターフェース210を有している。プロセッサ202は、位置決めシステム204、マップデータベース206、通信システム208およびデータバスインターフェース210からデータを受け取り、それらをソフトウェアプログラムまたはソフトウェアアプリケーションを用いて処理する。これらのうちの幾つかは、図3を参照して以降で説明される。
【0041】
プロセッサ202は、処理されたデータを、データバスインターフェース210およびデータバス212を介してドライバー支援アプリケーション214に提供する。ドライバー支援アプリケーション214の1つは、エレクトロニックホライズンであり得る。位置決めシステム214は、GPS技術およびジャイロスコープを使用し、さらに車両の速度、方向、向き等を検出するためにセンサーを有している。位置決めシステム214は、これらの情報をプロセッサ202に提供する。プロセッサで実行されている一部のソフトウェアアプリケーションにはこれらの情報が必要である。
【0042】
地理的なマップデータベース206は、ナビゲーションシステムにとって一般的なマップデータを含んでいる。特に、マップデータは、始端ノードと終端ノードの間の道路セグメントの形態および始端ノードと終端ノードの間の中間ノードによる幾何学的成形の形態で、道路と交差点に関するデータを含んでいる。道路セグメントはポリゴンとしてモデル化されてよい。
【0043】
図3は、プロセッサ202上で実行可能な種々のソフトウェアアプリケーション300を伴うブロック図を示している。ソフトウェアアプリケーションは、マップアクセスアプリケーション302、マップ更新アプリケーション304、車両位置決めアプリケーション306およびE-Horizontアプリケーション308を含んでいる。マップアクセスアプリケーション302は、地理的なマップデータベース206のマップアクセスデータを提供する。マップアクセスアプリケーション302は、あるマップセクションに対してプロセッサ202から要求を受け取り、地理的なマップデータベース206内のマップアクセスデータを用いて、このマップセクションを呼び出す。
【0044】
マップ更新アプリケーション304は、地理的なマップデータベース206の更新のために使用される。最新のマップデータをもはや含んでいないマップセクションを交換することができる。さらに、地理的なマップデータベース206に、別のマップセクションを追加することができる。このために、マップ更新アプリケーションは、通信システム208と地理的なマップデータベースとの間に通信チャネルを確立し、これを介して最新のマップデータを伝送することができる。
【0045】
車両位置決めアプリケーション306は、地理的なマップデータベース206によって表される道路網に対する車両の位置を決定する。車両位置決めアプリケーション306は、位置決めシステム204によって生成された位置決めデータを使用して、これを、マップ比較アルゴリズムを使用して地理的なマップデータベース206からのマップデータと比較する。
【0046】
E-Horizontアプリケーション308は、エレクトロニックホライズンを計算する。このために、電子的なマップデータベース206からのマップデータが使用される。しかしマップデータは、E-Horizontアプリケーションには複雑すぎる。なぜならこれは、エレクトロニックホライズンをリアルタイムで計算することを目的としているからである。したがって、マップデータの複雑さは低減されなければならず、かつそれにもかかわらず、ある程度の正確さの要件を満たさなくてはいけない。折れ線によってモデル化された道路セグメントのこのような複雑さの低減を、図4を参照して以降で説明する。
【0047】
図4a)は、車両402が移動する始点K1と終点K2との間の、直線状に延在する道路を備えた地形の断面図400を示している。道路は緯度の方向に走っているので、経度の方向に変化はない。しかし道路は平坦ではなく、丘を越えている。したがって、道路には高さプロファイルがある。道路は、始端ノードK1、中間ノードZ1、Z2、...、Z8および終端ノードK2が平面図で示されているポリゴンによってモデル化されるべきである。
【0048】
図4b)は、関連する中間ノードの配置に関連するポリゴンを断面図で示している。ポリゴンは、中間ノードZ4において包括的な極大値を有している。中間ノードZ4とZ5の間のセグメントは、丘の頂をモデル化している。中間ノードZ5とZ6の間のセグメントは強い下降を有している。
【0049】
道路が直線状に延在しており、すべての中間ノードZ1、Z2、...、Z4が削除されるであろうから、ポリゴンへの、属性である経度および緯度に関する2次元のダグラス・ポーカーのアルゴリズムの適用時には、高さの情報が完全に失われるだろう。高さの情報はエレクトロニックホライズンにおいて重要であるので、重要な高さの情報は保持されるべきである。
【0050】
プロセッサ202は、各中間ノードZ1、Z2、...、Z4について、高さの方向変化、すなわち、セグメントの勾配における方向の変化が存在しているか否かを調べる。これはここでは、中間ノードZ4の場合である。なぜなら、これは、局部的な高さの極大値を表しているからである。中間ノードZ4は重要なノードとしてマークされ、属性である経度および緯度に関するダグラス・ポーカーのアルゴリズムのその後の適用時には削除されてはいけない。したがって、最初に高さプロファイルの局部的な極大値が保存されている。
【0051】
しかし、エレクトロニックホライズンでは、高さプロファイルの局部的な極大値または極小値の保存では不十分な場合がある。たとえば、駆動制御の場合には、高さプロファイルのより正確なモデリングが必要である。したがって、別の中間ノードが重要なノードとしてマークされるべきであり、これによって、この中間ノードは、属性である緯度と経度に関してダグラス・ポーカーのアルゴリズムを適用するときに削除されない。中間ノードおよび中間ノードの、場合によって生じるマーキングの調査は、たとえばセグメント勾配の変化を調べる、図2のプロセッサ202によって実行される。これについては、図4b)を参照して説明する。
【0052】
このために、まずは始端ノードK1から始めて、最初の中間ノードが考察される。最初の中間ノードは、中間ノードZ1である。K1とZ1の間のセグメントの勾配が、Z1とZ2の間のセグメントの勾配と比較される。勾配の変化が閾値を下回る場合、Z1は中間ノードのセットから削除され得る。そうでない場合、Z1は重要なノードとしてマークされる。セグメント勾配は、2つのノードの間の高さの差を介して決定される。したがって、Z1とK1の間の高さの差、すなわちK1とZ2の間のセグメントの勾配が、Z2とZ1の間の高さの差、すなわちZ2とZ1の間のセグメントの勾配と比較される。ここで、勾配の変化は閾値を下回っている。したがって、中間ノードのセットからZ1が削除され得る。
【0053】
次に、Z2が調べられる。K1とZ2の間のセグメントのセグメント勾配と、Z2とZ3の間のセグメントのセグメント勾配が考察される。このようなセグメント勾配の変化は、再び閾値を下回っている。したがって、Z2が中間ノードのセットから削除され得る。
【0054】
次に、Z3が調べられる。K1とZ3の間のセグメントのセグメント勾配と、Z3とZ4の間のセグメントのセグメント勾配が考察される。このようなセグメント勾配の変化は、再び閾値を下回っている。したがって、Z3が中間ノードのセットから削除され得る。
【0055】
次に、Z5が調べられる。Z4はすでに重要なノードとしてマークされている。ここでZ4とZ5の間のセグメントのセグメント勾配と、Z5とZ6の間のセグメントのセグメント勾配が考察される。この高さプロファイルは強い下降を有しているので、今回、このようなセグメント勾配の変化は閾値を上回っている。したがって、Z5は重要な中間ノードとしてマークされ、属性である経度と緯度に関するダグラス・ポーカーのアルゴリズムのその後の適用時に削除されてはいけない。
【0056】
次に、Z6が調べられる。ここで、Z5とZ6の間のセグメントのセグメント勾配と、Z6とZ7の間のセグメントのセグメント勾配が考察される。ここでこの高さプロファイルは強い下降から弱い下降への移行を有しているので、これらのセグメント勾配の変化は再び閾値を超えている。したがって、Z6は重要な中間ノードとしてマークされ、属性である経度と緯度に関するダグラス・ポーカーのアルゴリズムのその後の適用時に削除されてはいけない。
【0057】
次に、Z7が調べられる。ここで、Z6とZ7の間のセグメントのセグメント勾配と、Z7とZ8の間のセグメントのセグメント勾配が考察される。このようなセグメント勾配の変化は、再び閾値を下回っている。したがって、Z7は中間ノードのセットから削除され得る。
【0058】
次に、Z8が調べられる。ここで、Z7とZ8の間のセグメントのセグメント勾配と、Z8とK2の間のセグメントのセグメント勾配が考察される。このようなセグメント勾配の変化は、再び閾値を下回っている。したがって、Z8は中間ノードのセットから削除され得る。
【0059】
上記の方法の概要は、図4c)に示されている。
【0060】
この方法の結果は、図4d)に示されている。エレクトロニックホライズンに対する高さプロファイルを十分に正確にモデル化している中間ノードZ4、Z5およびZ6が残っている。
【0061】
上記の方法に対する選択肢として、ダグラス・ポーカーのアルゴリズムを最初に高さプロファイルに、すなわち、属性である高さと緯度への投影に関して適用することもできる。まずは、ここでは高さもしくはセグメント勾配に関して方向変化があるため、Z4も重要なノードとして識別される。したがって、ここでの最初の近似はK1とK2の間のセグメントではなく、K1とZ4の間の第1のセグメントとZ4とK2の間の第2のセグメントによって得られる第2の近似から始まる。この近似が十分か否かを検査するために、中間ノードZ1、Z2およびZ3の中から、K1とZ4の間のセグメントからの距離が最大の中間ノードが探される。これはZ1である。この距離は閾値よりも小さいので、この近似は十分であり、Z1、Z2およびZ3は削除され得る。この第2の近似が十分か否かを検査するために、さらに、中間ノードZ5、Z6、Z7およびZ8の中から、Z4とK2の間のセグメントからの距離が最大の中間ノードが探される。これはZ6である。この距離は閾値よりも大きいため、Z4とK2の間のセグメントによる第2の近似では不十分である。
【0062】
したがって、第3の近似は、K1とZ4の間のセグメント、Z4とZ6の間のセグメントおよびZ6とK2の間のセグメントである。この近似が十分であるか否かを検査するために、Z4とZ6の間のセグメントからのその距離が閾値を超えているか否かについてZ5が調べられる。距離が閾値を超えているので、この近似は十分ではない。したがって、Z4とZ6の間のセグメントは、Z4とZ5の間のセグメントと、Z5とZ6の間のセグメントの2つのセグメントにさらに精緻化される必要がある。さらに、Z6とK2の間のセグメントをさらに精緻化する必要があるか否かが検査されるべきである。このために、中間ノードZ7とZ8のどれが、Z5とK2の間のセグメントからの最大の距離を有しているのかが調べられる。これはZ7である。距離が閾値を超えていないので、Z7とZ8は削除され得る。結果として、K1とZ4の間のセグメント、Z4とZ5の間のセグメント、Z5とZ6の間のセグメントおよびZ6とK2の間のセグメントを有する第4の近似が生じる。
【0063】
したがって、Z4、Z5およびZ6が、属性である経度と緯度に関するダグラス・ポーカーのアルゴリズムのさらなる適用時に削除されてはいけない重要な中間ノードとして残る。
【0064】
図5は、属性である勾配、曲線半径および高さに関する方向変化を再びグラフで示している。
【0065】
図5a)は、上向きの勾配から下向きの勾配への、属性である勾配の方向変化を示している。図5b)は、下向きの勾配から上向きの勾配への、属性である勾配に関する方向変化を示している。図5c)は、左から右への曲線半径の、属性である曲線半径に関する方向変化を示している。図5d)は、右から左への曲線半径の、属性である曲線半径に関する方向変化を示している。図5e)は、上昇する高さから下降する高さへの、属性である高さに関する方向変化と、下降する高さから上昇する高さへの、属性である高さに関する方向変化を示している。
【0066】
この方法の実施形態を以降で、図6のフローチャートに基づいて説明する。
【0067】
ステップ602では、勾配に対する許容値tolSlope、曲率に対する許容値tolCurvおよび高さに対する許容値tolAltが提供される。ステップ604では、中間ノードの数が求められる。これはmaxKnotenで示される。ステップ606では、始端ノードK1に対する勾配に対する基準値refSlope、曲率に対する基準値refCurvおよび高さに対する基準値refAltが読み込まれる。ステップ608では、ループカウンタが値1で初期化され、これはインデックスknotenZを有する中間ノードの数にわたって実行される。ステップ610では、中間ノードの最大数をすでに超えているか否かが検査される。そうである場合、この方法は終了する。そうでない場合、各中間ノードに対して、勾配zSlope、曲率zCurvおよび高さzAltが読み込まれる。ステップ614では、これらの値が基準ノードの値と比較され、偏差がまだ許容範囲内にあるか否かが検査される。
【0068】
このために、この中間ノードの勾配値と基準ノードの勾配値の差の絶対値が、勾配の許容値を下回っているか否かが検査される:abs(zSlope-refSlope)<toleranceSlope
【0069】
このために、この中間ノードの曲率値と基準ノードの曲率値の差の絶対値が、曲率の許容値を下回っているか否かが検査される:abs(zCurvature-refCurvature)<toleranceCurvature
【0070】
このために、この中間ノードの高さの値と基準ノードの高さの値の差の絶対値が、高さの許容値を下回っているか否かが検査される:abs(zAltitude-refAltitude)<toleranceAltitude
【0071】
さらに、ステップ614では付加的に、勾配、曲率および高さの方向変化に関する以下の追加条件が満たされているか否かが検査される:
(((zSlope>0 and refSlope>0)or(zSlope<0 and refSlope<0)or(zSlope=0 and refSlope=0))and
((zCurvature>0 and refCurvature>0)or(zCurvature<0 and refCurvature<0)or(zCurvature=0 and refCurvature=0))and
((zAltitude>0 and refAltitude>0)or(zAltitude<0 and refAltitude<0)or
(zAltitude=0 and refAltitude=0)))
【0072】
上記の結合において、「and」および「or」は論理的なandならびに論理的なorに関する。
【0073】
これらの追加条件が満たされている場合、方向変化は存在しない。
【0074】
勾配、曲率および高さに対する比較値が許容範囲内にあり、かつこれらの追加条件が満たされている場合、ステップ618において、該当する中間ノードが消去可能としてマークされる。すなわち、これは中間ノードのセットから削除され得る。そうでない場合、これは重要なノードであり、これはステップ616において、次のループサイクルに対する基準ノードとして指定される。
【0075】
ステップ620では、中間ノードのインデックスが1だけインクリメントされ、ループサイクルがステップ610で再び始まる。
【0076】
中間ノードを低減する方法の上述の態様および実施形態は、E-Horizontアプリケーション用のADASマップを計算するために、ターゲット、たとえば車両内に構築されたまたは存在するADASアーキテクチャのプロセッサならびに外部サーバー上で実施され得る。すなわち専用のADASマップが事前に計算される。外部サーバーでのADASマップの事前計算とその後のターゲットへの転送には、ターゲットでの計算時間が節約され、ターゲットでのマップデータベースのサイズが低減され得るという利点がある。
図1
図2
図3
図4
図5a)】
図5b)】
図5c)】
図5d)】
図5e)】
図6