地図データ生成システム
【課題】 道路標示を描くためのデータを軽い負荷で生成する。
【解決手段】 道路ネットワークデータベースおよび描画データベース(ポリゴンデータ)を用意する。また道路標示を描く際の形状および位置を規定する道路標示規定データベースを用意する。システムは、道路ネットワークデータに基づき、まとめて処理すべき各リンク、ノードをグループ化、交差点領域設定などの処理を行った後、道路標示規定データベースの規定内容を参照して、横断歩道、道路白線などを生成する。この生成過程では、道路標示の写真などは不要である。
このように、現実に道路標示を描く場合に用いる規定と同様の規定を記憶した道路標示規定データベースを参照して道路白線等のデータを生成することにより、写真撮影などの現地調査を要することなく、軽い負荷で道路標示データを生成することができる。
【解決手段】 道路ネットワークデータベースおよび描画データベース(ポリゴンデータ)を用意する。また道路標示を描く際の形状および位置を規定する道路標示規定データベースを用意する。システムは、道路ネットワークデータに基づき、まとめて処理すべき各リンク、ノードをグループ化、交差点領域設定などの処理を行った後、道路標示規定データベースの規定内容を参照して、横断歩道、道路白線などを生成する。この生成過程では、道路標示の写真などは不要である。
このように、現実に道路標示を描く場合に用いる規定と同様の規定を記憶した道路標示規定データベースを参照して道路白線等のデータを生成することにより、写真撮影などの現地調査を要することなく、軽い負荷で道路標示データを生成することができる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は,地図上に描く車両通行帯境界線(以下、「道路白線」ということもある)、横断歩道などの道路標示を描くためのデータを、道路ポリゴン等の描画データに基づいて生成する技術に関する。
【背景技術】
【0002】
昨今では、地図には、単に地形を表すだけでは足りず、より現実に近い状態を再現することが求められる傾向にある。その一例として、道路白線、横断歩道、停止線など現実の道路に描かれる種々の道路標示を地図上に再現することが求められる場合がある。このように現実に近い状態を再現すれば、地図のユーザは、地図と現地とを容易に対象することができ、地図の利便性を向上させることができる。かかる要請は、印刷物としての地図よりも、コンピュータやナビゲーション装置などのディスプレイに表示する電子地図で高く求められる。また、二次元の地図よりも、地物等を立体的に表示した3次元地図において、強く要請される。
【0003】
道路標示に関連した技術として、特許文献1〜3記載の技術がある。
特許文献1は、走行中の車両に搭載したカメラで撮影した画像から、画像処理によって道路白線を検出し、地図と照合することで、地図上に存在する道路か否かを判断する技術を開示する。特許文献2は、車載カメラで撮影した画像から、画像処理によって道路白線を検出し、車線を保って走行するよう、車両の制御に活用する技術を開示する。特許文献3は、車載カメラで撮影した画像をオルソ変換することで、道路白線の画像データを生成する技術を開示する。
従来の技術は、上述の通り、車載カメラで撮影した画像から、道路白線のデータを得るものであった。車両の他には、航空写真から道路白線のデータを得る技術も考えられる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003−121161号公報
【特許文献2】特開2003−168198号公報
【特許文献3】特開2010−175756号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、従来技術では、車載カメラにせよ、航空写真にせよ、道路白線のデータを生成するためには、現地調査が欠かせなかった。従って、全国いたるところで道路白線を描画させようとすれば、その調査負荷は多大なものとなっていた。道路白線に限らず、横断歩道、停止線など他の道路標識のデータについても同様であった。
本発明は、かかる課題に考慮し、道路標識を描くためのデータを、軽い負荷で生成可能とすることを目的とする。
【課題を解決するための手段】
【0006】
本発明は、地図を描画するための地図データを生成する地図データ生成システムにおいて,
道路をノードおよびリンクで表した道路ネットワークデータを格納する道路ネットワークデータベースと、
道路を描画するためのポリゴンデータを格納する描画データベースと、
車両通行帯を区分するために道路上に描かれるべき道路白線の形状および位置を規定する道路標示規定データを格納する道路標示規定データベースと、
ポリゴンデータに基づいて、道路ネットワークデータにおけるノード周りの交差点領域を設定する交差点領域設定部と、
道路および交差点領域の境界に基づいて、道路標示規定データにより定まる位置に、道路標示規定データに規定された形状で、道路白線を描くための道路標示データを生成する道路白線生成部とを備えるものとした。
【0007】
本発明によれば、既存の描画データベースと道路ネットワークデータを用いて道路標示を描画するための道路標示データを生成することができるため、現地調査の負荷を大幅に軽減することができる。
もっとも、本発明の方法では、必ずしも道路白線、横断歩道等の道路標示の位置および形状が、完全に現地の状態とは一致しない可能性がある。しかし、道路標示の位置および形状が現地の状態と多少異なるところがある場合でも、地図を見たユーザが現地の状態と直感的に照合しやすくなるという効果は、十分に得られるものである。
本発明では、描画データベース、道路ネットワークデータの他、道路標示規定データを用いることによって、道路標示データの精度の向上が図られ、上述の目的に沿った道路標示の描画が実現される。
【0008】
本発明において、道路標示データは、ポリゴンデータ、ラスタデータなど種々の形式で構成することができる。また、道路標示データは、描画データベースまたはポリゴンデータの一部として構成してもよいし、これらとは別のデータとして構成してもよい。
道路標示規定データは、道路構造令などの法規に基づいて用意することが好ましい。こうすることで、現実の道路標示と同じ規定を用いて道路標示データを生成することになるため、その精度を向上させることができる。もっとも、道路標示規定データは、法規に定められた内容だけでなく、その他の規定を含めることも可能である。
【0009】
交差点領域は、種々の方法で設定可能である。例えば、道路単位でポリゴンデータが用意されている場合には、道路のポリゴンデータ同士が重なる部分を交差点領域としてもよい。また、道路ネットワークデータのノードから道路の境界線までの距離に基づいて、交差点の角に相当する点を求め、この点を結ぶことで交差点領域を設定してもよい。
このように交差点領域を設定することにより、停止戦や横断歩道など、交差点の周囲に描かれる道路標示の位置および形状を精度良く設定することが可能となる。また道路白線は、交差点内には描かれず、停止戦や横断歩道によって端点が定められることが多いため、停止戦等を精度良く描くことは、道路白線の精度向上にも資するものである。
【0010】
本発明の地図データ生成システムにおいて、
リンクは、道路形状に応じた折れ線で規定されている場合には、
道路白線生成部は、
リンクを、その長さを変えずに直線状に伸ばした直線リンクを生成し、
直線リンクに対する道路標示データである直線道路標示データを生成し、
リンクの折れ線の折れ曲がり点に対応する箇所で、直線道路標示データを分割し、
分割された直線道路標示データを、リンクに沿って配置することで、折れ線状のリンクに対する道路標示データを生成してもよい。
【0011】
こうすることにより、折れ線状のリンクに対しても道路標示を精度良く生成することができる。
直線リンクに対して生成された直線道路標示データを分割して、折れ線状のリンクに配置すると、道路標示データ同士が重複する部分や、間隙となる部分が生じる。これらに対しては、重複部分や間隙部分以外の部分を滑らかに補間するなどの方法で道路標示データを生成すればよい。
【0012】
本発明の地図データ生成システムにおいては、
更に、道路ネットワークデータを参照し、所定のグループ条件を満たすリンクおよびノードをグループとして定義する道路ネットワークグループ化処理部を備え、
交差点領域設定部は、同一グループのリンク間に存在するノードを除外して、交差点領域を設定してもよい。
【0013】
こうすることによって、通常とは異なる交差点について柔軟な処理が可能となる。
例えば、幹線道路に細街路が交差している場所では、厳密には交差点内であっても、幹線道路に一貫して道路白線が描かれている場合がある。かかる領域に対しては、一つ一つを交差点として扱うと、観戦道路の道路白線が細かく分断され、現実とは異なる状態となってしまうおそれがある。このような場合、上記態様によって、幹線道路を構成する一連のリンクをグループとして定義しておけば、同一グループ内にある幹線道路を一連の道路として扱うことが可能となり、細街路が交差している箇所を通常の交差点とは異なるものと認識することができるため、幹線道路に一貫した道路白線を生成することができるのである。このように、上述の態様によれば、交差点を構成する道路の配置や種別などの事情に応じて、グループを通じて、交差点領域として扱うか否かを切り替え、違和感のない道路白線を描画することが可能となる。
この態様において、グループは種々の方法で設定することができる。例えば、道路ネットワークデータにおいて、予めグループ化されるべきリンク同士に同一のグループ名などを付しておき、グループ名が同一というグループ条件によってグループ化するようにしてもよい。また、このようなデータがない場合でも、道路名称や道路種別、車線幅、道路の交差角度などの属性が一致するもの同士をグループ化するようにしてもよい。
【0014】
本発明の地図データ生成システムにおいては、
更に、横断歩道を描く処理対象となる対象リンクと、対象リンクに交差する交差リンクとの角度に応じて定まる交差角度で、対象リンクに交差する基準線を設定し、基準線を一辺とする平行四辺形の領域内に横断歩道を描くための横断歩道データを生成する横断歩道処理部を備えてもよい。
【0015】
横断歩道は、必ずしも道路に直交するように描かれているとは限らない。道路同士が斜めに交差している交差点などでは、その交差角度に応じて、横断歩道が道路に対して斜めに交差するように描かれている箇所もある。上記態様によれば、対象リンクおよび交差リンクの交差状態に応じた交差角度を用いることにより、斜めに交差する横断歩道を描くことができ、現実に近い状態の横断歩道を再現することが可能となる。
交差角度は、対象リンクといずれかの交差リンクとの角度、複数の交差リンクとの角度の平均値など、種々の方法で設定することができる。
【0016】
本発明の地図データ生成システムにおいて、
道路ネットワークデータのリンクには、リンク内での車線数の増加を表す車線増加データが設定されている場合には、
道路白線生成部は、
車線数が増加するリンクに対し、道路標示規定データベースに基づいて、車線を増加して描くべき滞留区間の長さである必要滞留長と、滞留区間に移行するためのすりつけ区間の長さであるすりつけ長とを求め、
すりつけ長よりも必要滞留長を優先して短縮することで、必要滞留長とすりつけ長の和がリンクの長さより小さくなるように、必要滞留長およびすりつけ長を調節し、
調節されたすりつけ長および必要滞留長に基づいて、滞留区間およびすりつけ区間を描くための道路標示データを生成してもよい。
【0017】
右折または左折用に交差点付近で車線が増加しており、滞留区間、すりつけ区間が設けられている箇所がある。上述の態様によれば、これらの滞留区間、すりつけ区間を描画するデータを生成することができる。
上述の態様では、滞留区間とすりつけ区間の和が、リンクの長さ、つまり交差点間の長さよりも小さくなるように両者の長さを調整することができる。この調整は、滞留区間を優先して短縮することで行うため、走行時に車線変更するためのすりつけ区間の長さが確保される。現実の滞留区間、すりつけ区間も、このように構成されているのが通常であるため、かかる方法で調整することによって、現実に近い状態を実現することができる。
【0018】
すりつけ区間を描く場合には、
道路白線生成部は、
すりつけ区間および滞留区間が設定されたリンクにおいて、上下線のすりつけ区間間に生じた間隙に、道路標示規定データに基づいた形状で導流帯を描くための道路標示データを生成してもよい。
【0019】
こうすることによって、導流帯(以下、「ゼブラゾーン」ということもある)を描くことが可能となる。ゼブラゾーンは、ユーザが道路を見た時に視認しやすい部分であるため、ゼブラゾーンを描くことによって、地図と現実の状態との照合を行いやすくすることができる利点がある。ゼブラゾーンは、上述のようにすりつけ区間の間隙だけでなく、種々の規定を設けて、描画可能としてもよい。
【0020】
本発明は,その他,コンピュータによって地図データを生成する地図データ生成方法として構成してもよいし,地図データの生成をコンピュータに実行させるためのコンピュータプログラムとして構成してもよい。また,かかるコンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体として構成してもよい。記録媒体は,CD−ROMやサーバなどのようにコンピュータと別体の媒体であってもよいし、コンピュータに内蔵のRAM、ROMやハードディスクなどの内部記憶装置であってもよい。
【図面の簡単な説明】
【0021】
【図1】道路標示データ生成の概要を示す説明図である。
【図2】地図データ生成システムの構成を示す説明図である。
【図3】道路標示規定データベースの内容例を示す説明図である。
【図4】地図データ生成処理のフローチャートである。
【図5】グループ化の概要を示す説明図である。
【図6】道路ネットワークグループ化処理のフローチャートである。
【図7】交差点領域設定処理のフローチャートである。
【図8】横断歩道の交差角度の候補値の決定方法を示す説明図である。
【図9】横断歩道角度決定処理のフローチャート(1)である。
【図10】横断歩道角度決定処理のフローチャート(2)である。
【図11】道路白線生成処理のフローチャート(1)である。
【図12】道路白線生成処理のフローチャート(2)である。
【図13】道路白線生成処理のフローチャート(3)である。
【図14】道路白線生成処理のフローチャート(4)である。
【図15】横断歩道描画処理のフローチャートである。
【図16】道路標示データの生成例を示す説明図である。
【発明を実施するための形態】
【実施例1】
【0022】
<<地図データ生成の概要>>
実施例の地図データ生成システムは、描画データ、道路ネットワークデータ等を用いて、道路上に標示される道路標示を描画するための道路標示データを生成するものである。本実施例では、地図データには、上述の描画データおよび道路ネットワークデータが含まれ、道路標示データは、描画データの一部を構成するものである。道路標示データは、ディスプレイ等に表示される電子地図に活用することもできるし、印刷物としての地図をプリントするためのデータとして活用することもできる。
【0023】
最初に、本実施例における道路標示データの生成方法について概要を説明する。図1は、道路標示データ生成の概要を示す説明図である。図1(a)には、本実施例によって生成された道路標示データを用いて描いた道路を示し、図1(b)には、図1(a)に対応する箇所の航空写真を示した。本実施例では、図1(b)の航空写真等を利用して図1(a)を描画するための道路標示データを生成している訳ではない。実施例の地図データ生成システムは、航空写真(図1(b))とは無関係に、道路の描画データ、道路ネットワークデータ等を参照して、道路標示データ(図1(a))を生成するのである。
本実施例における道路標示には、道路通行帯最外側線LL11、道路通行帯境界線LL12、停止線LL13、横断歩道PT11、導流帯またはゼブラゾーンPT12などが含まれる。道路通行帯最外側線LL11、道路通行帯境界線LL12を、「道路白線」と総称することもある。
道路標示データを生成するための最も簡単な処理例としては、例えば、2車線の道路に対して、一定の車線幅で2つの車線が形成されるように道路白線を配置すればよい。ただし、この処理だけでは、横断歩道PT11、停止線LL13、ゼブラゾーンPT12などは生成することができない。また、本実施例では、右折用に車線が増加する領域(図1(a)中の領域A11)も再現する。地図データ生成システムは、描画データ等から、予め設定された規定に基づいて、これらの道路標示に対応する道路標示データを生成するのである。
図1(a)では、一見して図1(b)の航空写真に対応する領域の地図であると認識できる程度に精度良く、道路標示が描画されていることが分かる。以下では、このような道路標示データを生成するためのシステム構成および処理について説明する。
【0024】
<<システム構成>>
図2は、地図データ生成システムの構成を示す説明図である。地図データ生成システムは、CPU、RAM、ROMを備えるコンピュータに、地図データ生成処理を実現するためのソフトウェアをインストールすることによって構成される。本実施例では、スタンドアロンで稼働するシステムとしての構成例を示すが、図示する各要素は、ネットワーク等で接続された複数のコンピュータを用いた分散処理によって実現するものとしてもよい。
【0025】
地図データ生成システムには、処理に活用するためのデータベースとして、地図データベース10および道路標示規定データベース20を備えている。
地図データベース10は、道路ネットワークデータベース11と描画データベース12を有している。道路ネットワークデータベース11は、経路探索用にノードおよびリンクで表した道路ネットワークデータを格納している。道路ネットワークデータには、それぞれのリンクおよびノードに対して、道路種別、道路名称、車線数などを示す属性データも設定されている。描画データベース12は、地図を描画するためのポリゴンデータを格納している。ポリゴンデータには、例えば、道路、建物、湖沼等を描画するためのデータが含まれる。また、実施例で説明する処理によって道路標示データが生成された場合には、道路標示データも、ポリゴンデータの一部として格納されることになる。
道路標示規定データベース20は、道路標示の形状や位置を規定した道路標示規定データを格納する。本実施例では、道路構造令の規定内容に基づいて道路標示規定データを設定した。そのデータ構造および内容については後述する。
地図データベース10および道路標示規定データベース20は、地図データ生成システム内のハードディスク等に格納しておいてもよいし、ネットワークで接続されたサーバから提供してもよい。また、DVDなどの記憶媒体で提供してもよい。
【0026】
道路標示データ記憶部40は、道路標示データを生成する過程のデータおよび生成された結果を格納する記憶部である。RAMなどのメモリ領域、ハードディスク、フラッシュメモリなど、書き換え可能な種々のメモリを道路標示データ記憶部40として活用することができる。
【0027】
地図データ生成システムの他の構成要素として、図中には、道路標示データを生成するための機能ブロックを示した。これらの機能ブロックは、コンピュータプログラムのインストールによってソフトウェア的に構成してもよいし、電子回路によってハードウェア的に構成してもよい。以下、これらの各機能ブロックの機能概要について説明する。ただし、それぞれの機能ブロックにおける具体的な処理方法については、後でフローチャートと共に説明する。
【0028】
道路ネットワークグループ化処理部30は、道路標示データを生成する前処理として、幹線道路のように一連の道路として道路白線が描かれるべきリンクおよびノードをグループ化する。道路ネットワークデータでは、リンク同士の交点には、全てノードが設定されているため、幹線道路を構成する一連のリンクも、それぞれのノードで分断されているが、このように分断されたリンクをグループ化しておくことにより、道路標示データの生成においては、幹線道路などを一連の道路として扱うことが可能となる。
【0029】
交差点領域設定部32は、ポリゴンデータおよび道路ネットワークデータを参照して、交差点領域を設定する。横断歩道や停止戦など、道路標示は、交差点領域の境界を基準として位置が定まるものとが多いため、ここで設定される交差点領域は、道路標示の位置を決める基準としての意義を有している。交差点領域の設定方法については、後述する。
【0030】
横断歩道処理部34は、横断歩道の形状を設定し、横断歩道を描画するためのデータを生成する。横断歩道は、必ずしも道路に直交するように描かれるとは限らず、交差点によっては、道路に斜めに交差するように描かれる場合がある。横断歩道処理部34は、交差点の形状を考慮して、このように斜めに交差する横断歩道を描画可能とするのである。
【0031】
道路白線生成部36は、道路白線、停止戦およびゼブラゾーンを描画するためのデータを生成する。右折用に車線数が増加する場合には、道路白線生成部35は、増加した車線が描かれる滞留区間や、滞留区間に滑らかに接続するためのすりつけ区間を描画するデータも生成する。
【0032】
データベース更新部38は、道路標示データ記憶部40から生成された道路標示データを読みだし、描画データベース12を更新する。本実施例では、道路標示データは描画データベース12の一部を構成するものとしたが、道路標示データを描画データベース12とは別のデータベースとして地図データベース10内に格納するようにしてもよい。
【0033】
図3は、道路標示規定データベース20の内容例を示す説明図である。
道路標示規定データベース20は、道路構造令の規定内容に基づいて道路標示の形状や位置を規定する。図3(a)には、道路標示規定データベース20を構成する各パラメータの符号および内容、数値を例示した。図3(b)には、道路上の標示と対応づけて各パラメータの意義を示した。ここで例示したパラメータの内容を以下、説明する。
車線幅WLNは、車両が走行する車線の幅であり、例えば、3.0mとすることができる。
車両通行帯最外側線幅、車両通行帯境界線幅WLLは、道路白線の幅(太さ)であり、例えば、0.15mとすることができる。
車両通行帯境界線長(破線)LLは、破線で描かれている道路白線の長さであり、例えば、5.0mとすることができる。
導流帯内白線幅(ゼブラ)ZWは、ゼブラゾーンを構成する白線の幅であり、例えば、0.45mとすることができる。
導流帯内白線間距離(ゼブラ)ZSは、ゼブラゾーンを構成する白線の間隔であり、例えば、1.0mとすることができる。
停止線幅WSLは、停止線の幅であり、例えば、0.45mとすることができる。
横断歩道、停止線間距離DSは、横断歩道と停止線との間隔であり、例えば、2.0mとすることができる。
停止線前車線変更禁止線DPCは、停止線に至るまでの間で、車線変更禁止のため道路白線が破線ではなく実線で描かれるべき区間の長さであり、例えば、30.0mとすることができる。
横断歩道線幅WCW、線間隔SCWは、横断歩道を構成する各白線の幅および間隔であり、例えば、共に0.45mとすることができる。
本実施例では、これらの数値は、道路構造令などの法規に基づいて設定した。道路標示規定データベース20には、この他にも、道路標示の位置および形状を定める種々のパラメータを設定可能である。また、必ずしも全てのパラメータが道路構造令に基づいて設定されている必要はなく、現実の状態を精度良く再現するために、道路構造令等に規定されていないパラメータを定義してもよい。
【0034】
<<全体処理の流れ>>
次に、道路標示データを生成する処理について説明する。まず処理の全体概要を示し、その後、それぞれの具体的処理内容を詳述する。
図4は、地図データ生成処理のフローチャートである。「地図データ生成処理」と呼んだのは、この処理によって生成された道路標示データを地図データベース10に格納することによって、道路標示データを含んだ新たな地図データベース10が生成されることになるからである。
【0035】
地図データ生成処理は、ハードウェア的には地図データ生成システムのCPUが実行し、ソフトウェア的には、図1に示した各機能ブロックが実行する処理である。
CPUは、前処理として、道路ネットワークグループ化処理により、道路標示データの生成時には一連の道路として扱われるべきノード、リンクをグループ化する処理を行う(ステップS100)。を行う。これは、先に説明した道路ネットワークグループ化処理部30の機能に相当する処理である。
次に、CPUは、交差点領域設定処理によって、ポリゴンデータ、道路ネットワークデータを参照して、交差点領域を設定する処理を行う(ステップS200)。これは、先に説明した交差点領域設定部32の機能に相当する処理である。
次に、CPUは横断歩道角度決定処理によって、道路に何度の角度で横断歩道を交差させて描くかを決定する処理を行う(ステップS300)。これは、先に説明した横断歩道処理部34の機能に相当する処理である。
次に、CPUは道路白線生成処理によって、停止線、道路白線、ゼブラゾーンを描くだめのデータを生成する(ステップS400)。これは、先に説明した道路白線生成部36の機能に相当する処理である。本実施例では、各道路について中央線に相当する位置で上下線に分けて、それぞれ停止線、道路白線、ゼブラゾーンを描くためのデータを生成した後、上下線のデータを結合して、道路全体の停止線、道路白線、ゼブラゾーンを描くデータを生成するという手順をとる。
次に、CPUは横断保号の描画処理によって、横断歩道を描画するためのデータを生成する(ステップS500)。これは、先に説明した横断歩道処理部34の機能に相当する処理である。
ステップS400、S500で生成されたデータが道路標示データとなる。
最後に、CPUは生成された道路標示データによって、描画データベース20を更新する処理を行う(ステップS600)。
以上の処理は、適宜、順序を入れ替えたり、まとめて行ったりしてもよい。以下、それぞれの処理内容について詳述する。
【0036】
<<道路ネットワークグループ化>>
道路ネットワークグループ化は、図4のステップS100および道路ネットワークグループ化処理部30の機能に相当する処理内容である。以下では、まず処理の意義および概要を示した後、フローチャートを示す。
【0037】
図5は、グループ化の概要を示す説明図である。
図5(a)は、幹線道路を構成するリンクL51、L52に、細街路のリンクL53がノードN50で交差している道路を示している。道路ネットワークデータでは、道路種別に関わらずリンクの交点には、必ずノードが設定されている。従って、幹線道路を構成するリンクL51、L52も、道路ネットワークデータ上は、複数のリンクに分断された状態で格納されることになり、ノードN50は交差点と認識されることになる。そして、ノードN50の周囲には、後述する処理方法によって交差点領域A50(ハッチングを付した部分)が設定される。道路白線は、交差点領域を避けて描かれるのが通常であるから、交差点領域A50が設定された結果、幹線道路については、道路白線LL51、LL52のように分断された道路白線が描かれることになる。
しかし、一般に幹線道路に細街路が交差している箇所については、幹線道路の道路白線は、図5(a)のように分断されることなく、連続して描かれるのが通常である。
そこで、ネットワークグループ化処理では、交差点領域A50のように、交差点領域が生成されるべきでないリンクおよびノードをグループと定義するのである。図5(a)の例では、D51方向に道路標示データを生成する処理においては、リンクL51、ノードN50、リンクL52をグループとして定義する。こうすれば、リンクL51、L52に対して道路標示データを生成する際には、これらのリンク、ノードは一連のものとして扱われるべきであると認識され、交差点領域A50が設定されるのを回避することができ、道路白線LL51、LL52を連続した状態で生成することができる。
逆に、D52方向に道路標示データを生成する処理においては、グループ化を行わない。こうすることにより、交差点領域A50が設定されるから、道路最外側線LL53、LL54は、交差点領域A50で分断された状態で生成することができる。
この交差点について、リンクL53の道路標示データを生成する場合を考える。リンクL53は、リンクL51、L52のいずれともグループと定義せずにおく。こうすれば、リンクL53の処理時には、ノードN50周りの交差点領域A50を設定することができ、交差点の直線に停止線や横断歩道を描くことができる。
【0038】
図5(b)には、グループ化を行うべき他の例を示した。図の例では、比較的狭い分離帯M51を挟んで平行に走るリンクL58、L59が、リンクL54〜L57とノードN51、N52で交差している。都市部など、分離帯M51で上下線が分離されている箇所では、かかる状態が生じ得る。
このような場所で、グループ化を行わずに処理をすると、ノードN51を交差点と認識して、交差点領域A51が設定されることになる。ノードN51を処理しているときには、ノードN52、リンクL59の位置は考慮されないからである。交差点領域A51が設定されると、これを基準として横断歩道が設定されるから、分離帯M51に横断する形で横断歩道CW51が設定されてしまう。
そこで、ネットワークグループ化処理では、D53方向に処理を行う場合には、リンクL55、ノードN51、リンクL54をグループとして定義する。こうすることによって、ノードN51を除外して、ノードN52の周囲にのみ交差点領域を設定することができるため、不自然な横断歩道CW51ではなく、横断歩道CW52を生成することが可能となる。
また、D54方向に処理を行う場合には、リンクL55、ノードN52、リンクL56をグループとして定義する。こうすることによって、ノードN52を除外して、ノードN51の周囲にのみ交差点領域を設定することができるため、横断歩道CW53を生成することが可能となる。
その他のリンクL57、L58、L59に対しては、いずれもグループを定義せずに処理を行えば、それぞれ適切な位置に横断歩道を生成することが可能である。
以上、図5(a)、図5(b)で示したように、グループ化を行うことにより、交差点領域を設定するか否かを切り替えることができ、それぞれの交差点の状況を反映させた道路標示を生成することが可能となる。次に、グループ化の具体的処理について説明する。
【0039】
図6は、道路ネットワークグループ化処理のフローチャートである。
CPUは、道路ネットワークデータを読み込み(ステップS102)、グループ化の処理対象となるノードを選択する(ステップS104)。そして、このノードに接続されているリンクを抽出する(ステップS106)。
次に、CPUは、抽出されたリンクについて、道なり条件の判定を行う(ステップS108)。道なり条件とは、ノードで分断された複数のリンクが、道路標示データの生成上は一連の道路として扱われるべきか否かを判断する条件であり、グループ化するための判断の基礎となる条件である。本実施例では、「道なり」か否かが、道路ネットワークデータに属性として、各リンクの上下方向に個別に設定されているものとした。
図中に示すリンクL1〜L3からなる三叉路を例示する。この中でリンクL1からリンクL2に向かう方向P12、およびリンクL2からリンクL1に向かう方向P21には、それぞれ「道なり」であると設定されており、その他の方向(リンクL1→L3など)は、「道なり」と設定されてはいないものとする。CPUは、この属性に基づいて、図中に示すように、各リンク間が道なりか否かの結果を抽出する。
道なりか否かは、属性で設定しておく他、道路種別、道路名称、車線幅、形状などで解析的に判断するようにしてもよい。例えば、道路名および道路種別が同一であるリンク同士は道なりと判断したり、リンク間のなす角度が180度から所定の範囲内の場合には道なりであると判断する方法などをとることができる。
【0040】
道なり条件の判断が終わると、CPUは、この判断結果に基づいてグループ化を行う(ステップS110)。本実施例では、図中に示すケース1、2のいずれかの条件を満たす場合に、グループを設定するものとした。図中に示すリンクLa、Lb、Lcからなる三叉路に対して、リンクLaを処理対象とする場合を例にとって説明する。
ケース1は、ステップS108において、リンクLa→Lbの方向Pab,およびリンクLb→Laの方向Pbaの双方が道なりであると判断される場合である。
ケース2は、ステップS108において、リンクLa→Lbの方向Pabのみが道なりと判断されており、リンクLcとリンクLa、Lbは道なりでないと判断されている場合である。
このケース1、2は、現実の道路において、交差点として扱われていない箇所を調査した結果、設定されたものである。この条件によってグループ化を行えば、図5(a)、図5(b)で示したケースにおいて、それぞれ適切に道路白線を生成することができる。もっとも、グループ化の条件は、種々の設定が可能であり、ステップS110で示した以外の条件を用いることも可能である。
上述の条件におけるリンクLaを、リンクLbまたはリンクLcに置換すれば、これらのリンクに対するグループ化の条件を設定することができる。ステップS110では、CPUは、処理対象ノードに接続している全リンクに対して、それぞれグループ化の判定を行う。
CPUは、以上の処理を、全ノードについて終えるまで繰り返し実行する(ステップS112)。
【0041】
<<交差点領域設定>>
交差点領域設定は、図4のステップS200および交差点領域設定部32の機能に相当する処理内容である。
図7は、交差点領域設定処理のフローチャートである。CPUは、処理対象ノードを選択する(ステップS202)。この際、前述の道路ネットワークグループ化処理(図6)によって、グループ化されたリンク上のノードは処理対象から除かれる。
CPUは、描画データベースから処理対象ノードの周囲のポリゴンデータを読み込み、道路領域を取得する(ステップS204)。図中の右側に、処理の様子を例示した。ノードN70が処理対象ノードとなっている場合、そこに接続されるリンクL71〜L74に対応する道路の領域(図中の白い部分)を特定するのである。必ずしも道路自体のポリゴンデータを取得する必要はなく、道路以外の背景部分のポリゴンデータ(図中のハッチングの部分)を取得しても構わない。
右側に示すように、処理対象ノードN70の周囲は、リンクL71〜L74によって4つの領域I〜IVに分けられる。CPUは、この各領域I〜IVについて、交差点つまり処理対象ノードN70からの最近傍点を取得する(ステップS206)。図中に示すように、領域Iについては点P1、領域IIについては点P2、領域IIIについては点P3、領域IVについては点P4が、それぞれ最近傍点となる。
最近傍点が求まると、CPUは、これらを結び交差点領域を設定する(ステップS208)。図中において、点P1、P2、P3、P4を結ぶ太線で囲った部分が、交差点領域となる。
CPUは、以上の処理を、全ノードについて終えるまで繰り返し実行する(ステップS210)。
こうして設定された交差点領域は、道路白線を描画する際の位置の基準等として活用される。
【0042】
<<横断歩道の生成>>
横断歩道の生成は、図4のステップS300および横断歩道処理部34の機能に相当する処理内容である。横断歩道を描く場合に、横断歩道と道路との交差角度の候補値の設定方法を説明した後、処理内容について説明する。
【0043】
図8は、横断歩道の交差角度の候補値の決定方法を示す説明図である。リンクL81〜L84が交差している交差点において、リンクL81を処理対象とする場合を例にとり、図8(a)〜図8(d)の4つの候補値の設定方法を示した。
図8(a)は、リンクL81に直交する横断歩道WC81を設定する例である。図のように、道路が斜めに交差している交差点では、横断歩道WC81のように描くと、リンクL81の右側(リンクL84側)で交差点までの間隔が開いてしまい、不自然な状態となる。このような場合には、横断歩道は、図中で右上がりの状態に斜めに描くことが好ましい。
図8(b)〜(d)は、リンクL81に対して斜めに横断歩道WC82を設定する例である。図8(b)の横断歩道WC82は、リンクL81の左側に交差するリンクL83と平行な辺を有する平行四辺形によって描かれる。図8(c)の横断歩道WC83は、リンクL81の右側に交差するリンクL84と平行な辺を有する平行四辺形によって描かれる。図8(d)の横断歩道WC84は、リンクL83、L84上にノードNから等距離の点P83、P84をとり、これらの点P83、P84を結ぶ線分と平行な辺を有する平行四辺形によって描かれる。リンクL83、L84の間の角の二等分線を法線とする辺を有する平行四辺形と言うこともできる。
本実施例では、図8(b)〜図8(d)に示した3つの候補角度の中から、交差点に応じて、いずれか一つを選択し、横断歩道の交差角度を決定する。決定方法は、次のフローチャートに従って説明する。
【0044】
図9、図10は、横断歩道角度決定処理のフローチャートである。
CPUは、まず処理対象リンクを選択し、処理対象リンクに交差する交差リンクを取得する(ステップS302)。処理対象リンクに交差する全リンクを取得するものとしてもよいが、本実施例では、以下の条件1、条件2を満たすものに絞って取得するものとした。ここで、「A9*」は、処理対象リンクに交差するリンクL9*(*=1,2,…)と、処理対象リンクの間の角度である。
条件1:処理対象リンクの両側それぞれにおいて、|A9*−90°|が最小となること;
条件2:90°−TH≦A9*≦90°+TH;
条件1は、処理対象リンクに対して、最も90°に近い角度で交差するリンクを、処理対象リンクの両側で一つずつ選択するための条件となっている。また、条件2は、選択されたリンクと処理対象リンクとの角度が、直角から所定範囲内に入っているという条件である。これらの条件によって、処理対象リンクの両側において、直角に近い角度で交差するリンクを取得しようとしているのである。
【0045】
図中に、上述の条件1、2を例示した。処理対象リンクLobの端のノードNobで、左側にリンクL91、L93が交差し、右側にリンクL92が交差しているものとする。処理対象リンクLobと、リンクL91〜L93との角度は、それぞれA91〜A93で表される。図中のハッチングを付した部分は、条件2を満たす範囲を表している。つまり、境界線BL1は、処理対象リンクLobとの角度が「90°−TH」となる線であり、境界線BL2は、「90°+TH」となる線である。図の状態では、リンクL91〜L93は、いずれもハッチングを付した領域内に入っているから、条件2は満たすことになる。
処理対象リンクLobの右側には、リンクL92のみが存在する。従って、|A9*−90°|が最小という条件1では、他と比較するまでなく、リンクL92が選択される。
処理対象リンクLobの左側には、リンクL91、L93が存在する。これらのうち処理対象リンクLobに直角に近い角度で交差するのは、リンクL91である。従って、左側については、条件1によって、リンクL91が選択される。条件1に即した形で表現すれば、|A91−90°|<|A93−90°|ということになる。
【0046】
こうして交差リンクを取得すると、CPUは、左右の交差角度を算出する(ステップS304)。図中に左右交差角度の定義を示した。図の煩雑化を回避するため、左右それぞれに分けて示してある。左側の図が左側交差角度を示し、右側の図が右側交差角度を示している。左側交差角度は、左側に交差するリンクL91の法線NL91と処理対象リンクLobとの角度AN91で定義する。右側交差角度は、右側に交差するリンクL92の法線NL92と処理対象リンクLobとの角度AN92で定義する。左側交差角度、右側交差角度の評価は、絶対値で行うので、角度AN91,AN92が処理対象リンクの左右いずれに現れるかによって正負の符号を考慮する必要はない。
左側交差角度を用いて横断報道を描く場合には、図8(b)の状態となり、右側交差角度を用いて横断歩道を描く場合には、図8(c)の状態となる。
CPUは、次に平均交差角度を算出する(ステップS306)。平均交差角度とは、図中に示す通り、左右の交差リンクL91、L92の二等分線NL93と処理対象リンクLobとの角度AN93である。この角度を用いて横断歩道を描く場合には、図8(d)の状態となる。
【0047】
CPUは、以上で求めた左右の交差角度、平均交差角度の最小値を横断歩道角度に設定する(ステップS308)。角度は絶対値で評価するものとした。設定された横断歩道角度での横断歩道の描画は、後述する横断歩道描画処理で行う。
以上の処理を、CPUは全リンクについて終了するまで、繰り返し実行する(ステップS310)。
【0048】
<<道路白線の生成>>
道路白線の生成は、図4のステップS400および道路白線生成部36の機能に相当する処理内容である。
図11〜図14は、道路白線生成処理のフローチャートである。
CPUは、処理対象となるリンクグループを取得する(ステップS402)。そして、リンクグループを直線化する(ステップS404)。図中に直線化の方法を示した。図の上側に示すように、リンクL111、L112、ノードN111〜N113からなるリンクグループを考える。このリンクグループは、道路形状に沿って折れ曲がった折れ線で規定されているとする。
直線化処理では、図の下側に示すように、各リンクL111、L112の長さを保ったまま、一次元の座標上にノードN111〜N113を写像するのである。写像した結果を直線化リンクL111s、L112s、直線化ノードN111s〜N113sと称することにする。
【0049】
CPUは、車両通行帯最外側線および中央線の位置を決定する(ステップS406)。図中にこれらの決定方法を示した。決定方法は、次の通りである。
道路ネットワークデータは、道路の属性として道路幅Wrd、車線数の情報を有している。また、道路標示規定データ(図3参照)は、車線幅をパラメータとして有している。従って、これらのデータを用いて、車線幅×車線数を計算することにより、道路幅Wrdのうち、車線に利用される幅Dが決定される。この幅Dを道路幅Wrd内に均等に配置することにより、車両通行帯最外側線BL1、BL2の位置を決定することができる。また、幅Dを、上下線の各車線数で内分することによって中央線CLの位置を決定することができる。上下線の車線数は同一とは限らないから、中央線CLは、幅Dの中央に来るとは限らない。例えば、上り2車線、下り1車線の道路では、中央線は幅Dを2:1に内分した位置に設定されることになる。
【0050】
こうして中央線が設定されると、CPUは、道路を中央線で上下に分断し、それぞれについて道路標示データを生成する。具体的には、交差点領域、横断歩道領域、停止線を設定し、この結果に基づいて車両通行帯最外側線長、中央線長を修正する(ステップS408)。
図中に処理例を示した。D12方向に処理を行う場合を考える。CPUは、交差点領域設定処理(図7)で設定された交差点領域CSを配置する。そして、横断歩道角度決定処理(図9)で決定された横断歩道角度に基づいて、交差点領域の端点から基準線LCS0を引く。基準線LCS0と処理対象リンクL11sとの角度ACSが横断歩道角度に相当する。
次に、交差点領域から遠ざかる方向に基準線LCS0から所定の距離OSTだけずらした位置に所定幅LCWの平行四辺形で横断歩道領域CWを設定する。これらの距離OST、幅LCWは、道路標示規定データに設定しておけばよい。
CPUは、横断歩道領域CWの境界線で、車両通行帯最外側線BL2および中央線CLを切断する。また、中央線CLと横断歩道領域CWとの交点から、横断歩道・停止線間距離DSだけずらした位置に停止線SLを設定する。また、車両通行帯最外側線BL2および中央線CLに平行に、車線数に応じて、車両通行帯境界線を設定する。
下り線についても、同様の方法で道路標示を描くことができる。ここで説明した手順は、一例に過ぎず、他の方法・手順によって生成しても構わない。
【0051】
CPUは、車線増加部分に対して、滞留区間、すりつけ区間を生成するため、すりつけ長Lt、必要滞留長Lsを算出する(ステップS410)。これらの長さは、道路構造令などの法令に基づいて次の通り算出することができる。
必要滞留長Ls=1.5×N×S;
すりつけ長Lt=V×WLN/6;
N:1サイクル当たりの平均滞留台数;
S:平均車頭距離(前後の車両の先頭間の距離);
V:設計速度;
WLN:車線幅;
上述の各パラメータのうち、車線幅は、全ての道路に共通の値として道路標示規定データに格納しておけばよい。パラメータNおよびVは、道路に固有の値なので、道路ネットワークデータに属性として設定しておくことが好ましい。これらのデフォルト値を道路標示規定データに設定しておいてもよい。例えば、設計速度Vは、1車線の道路では30km/h、2〜3車線の道路では40km/h、4車線以上では50km/hというように、車線数に応じて設定することもできる。
パラメータSは、道路に固有の値と考え、道路ネットワークデータの属性に設定しておいてもよいし、全ての道路に共通の値として道路標示規定データに設定してもよい。
さらに、上述のパラメータが不十分で必要滞留長Ls、すりつけ長Ltを算出できない時のために、これらのデフォルト値を設定しておいてもよい。例えば、必要滞留長Lsは、停止線前車線変更禁止線の距離DPC(図3参照)と同じ値を用いることができる。
【0052】
CPUは、滞留区間およびすりつけ区間が道路長に収まるように、算出されたすりつけ長Lt、必要滞留長Lsを調整する(ステップS412)。道路長は、車両通行帯最外側および中央線の最小値minを基準値Lrdとして用いる。最小値minを用いることにしたのは、図12のステップS408中に描いたように、横断歩道領域が斜めに設定され、車両通行帯最外側と中央線の長さが異なる場合があるからである。
図中の上側に示すように、「必要滞留長LS0+すりつけ長Lt0」が基準値Lrdよりも大きい場合を考える。かかる場合には、図示するように、滞留区間およびすりつけ区間が道路からはみ出した形になってしまう。
本実施例では、このような場合には、すりつけ長を確保したまま、必要滞留長を短縮することで、両者の和が基準値Lrd以下となるよう調整する。図中の下側に調整結果を示した。この例では、すりつけ長Lt1は当初の長さLt0と同じであり、必要滞留長Ls1を当初の長さLs0よりも短くすることで、全体の長さを基準値Lrdに収めている。この態様では、必要滞留長Lsを、車一台分の長さなど、予め設定された限界まで短縮しても、全体の長さが基準値Lrdを超える場合には、すりつけ長Ltを短縮することになる。もっとも、必要滞留長、すりつけ長は種々の調整方法が可能であり、両者を一定の比率で短縮する方法などをとることもできる。
【0053】
CPUは、以上の処理で設定された各白線をポリゴン化する(ステップS414)。ここでいう白線とは、停止線、中央線、道路白線(車両通行帯最外側線、車両通行帯境界線)を意味する。横断歩道は、この時点では、まだ描画しない。
CPUは、上下線の道路標示データを中央線で結合した上で、上下線のすりつけ区間同士のすき間を導流体(ゼブラゾーン)に設定する(ステップS416)。図中に上下のすりつけ区間LSA、LSBの間隙に設定されたゼブラゾーンZZを例示した。ゼブラゾーンを構成する白線の幅および間隔は、道路標示規定データ(図3参照)に規定されている。
以上の処理によって、上下線の道路標示データが生成される。
【0054】
ここまでの処理は、本来折れ線状のリンクを、直線化した上で進めてきたが(図11のステップS404参照)、求められているのは折れ線状の道路上の道路標示を描くためのデータである。このような道路標示データを得るために、CPUは、折れ線状の形状に沿って、生成された道路標示データを分割し、リンクに沿ってマッピングする(ステップS418)。
図中に処理例を示した。まず、図の上側に示すように、直線化リンクL111s、L112s、直線化ノードN111s〜N113sに対して、得られた道路標示データを、ノードN112sを通る法線BRLで、左右のポリゴンPOL1、POL2に分割する。そして、分割された左右のポリゴンPOL1、POL2を、図の下側に示すように、折れ線状の本来のリンクL111、L112上に配置するのである。マッピングの結果、ポリゴンPOL1、POL2が重なる領域DA、および両者の間隙RAが生じる。これらの領域DA、RAについては、その他の領域(図中の白抜き部分)のポリゴンをリンクL111,L112の形状に応じて滑らかに補間するなどして生成すればよい。
図中の最下部に、マッピング例を示した。図13のステップS416中に示した道路標示をノードN112の部分で分割してマッピングしたものである。マッピングによって、ゼブラゾーンZZもこのように形状が変化することになる。
CPUは、以上の処理を、全グループに対して終了するまで繰り返し実行する。これらの処理によって、横断歩道を除く道路標示の生成が完了する。
【0055】
次に、CPUは横断歩道を描くため、横断歩道描画処理を実行する。これは、図4のステップS500および横断歩道処理部34の機能に相当する処理内容である。
図15は、横断歩道描画処理のフローチャートである。CPUは、図12のステップS408で設定された横断歩道領域を読み込む(ステップS502)。
そして、この領域内に横断歩道ポリゴンデータを生成する(ステップS504)。横断歩道を構成する各白線PCW1〜PCW3の幅WCWおよび間隔SCWは、道路標示規定データに設定されたパラメータを用いる。横断歩道領域CWが平行四辺形となっている場合には、各白線PCW1〜PCW3の形状も、横断歩道領域CWの辺と平行な辺からなる平行四辺形となる。
CPUは、以上の処理を全横断歩道領域について終了するまで繰り返し実行する(ステップS506)。
【0056】
横断歩道は、図12のステップS408で、横断歩道領域を設定した時点で、併せて描画することも可能である。しかし、この時点で横断歩道を描画すると、その後のマッピング(図14のステップS418)において、横断歩道を構成する各ポリゴンも併せてマッピングする必要が生じ、処理負荷が大きくなる。本実施例では、この処理負荷を軽減するため、マッピングが完了した後で、横断歩道の描画を行うようにしたのである。
【0057】
以上の処理によって、道路標示データが生成される。本実施例の処理では、道路上の矢印などの配置は示さなかったが、道路標示規定データで、矢印等が描かれるべき位置および形状を規定しておけば、これを参照することによって道路標示データを生成することが可能である。
【0058】
<<道路標示データ例>>
図16は、道路標示データの生成例を示す説明図である。図16(a)に本実施例による生成例を示し、図16(b)にはこれに対応する領域の航空写真を示した。
横断歩道CW16など、一見して、図16(a)と図16(b)とが対応していることを認識できる程度に、現実の状態を精度良く再現できていることが分かる。また、ゼブラゾーンZZ16は、現実の状態とは形状が異なっているが、この位置にゼブラゾーンZZ16が描かれていることにより、図16(a)と図16(b)との対応関係を比較的容易に認識することができる。
このように、本実施例によれば、実際の状態を厳密に精度良く再現するとはいかないまでも、現実の各地点と地図との対応関係を直感的に認識可能とする目的には十分に資する精度で、道路標示を再現することが可能である。本実施例によれば、このような道路標示を描くための道路標示データを、軽い処理負荷で生成することができる利点がある。
【0059】
以上、本発明の実施例について説明したが、上述の実施例で説明した種々の処理は、必ずしも全てを備えている必要はなく、一部を省略したり他の処理と置換したりしても構わない。また、上述の例において、ソフトウェア的に実行されている処理は、ハードウェア的に実行してもよいし、その逆も可能である。
【産業上の利用可能性】
【0060】
本発明は,道路標示を描くための道路標示データを生成するために利用可能である。
【符号の説明】
【0061】
10…地図データベース
11…道路ネットワークデータベース
12…描画データベース
20…道路標示規定データベース
40…道路標示データ記憶部
30…道路ネットワークグループ化処理部
32…交差点領域設定部
34…横断歩道処理部
36…道路白線生成部
38…データベース更新部
【技術分野】
【0001】
本発明は,地図上に描く車両通行帯境界線(以下、「道路白線」ということもある)、横断歩道などの道路標示を描くためのデータを、道路ポリゴン等の描画データに基づいて生成する技術に関する。
【背景技術】
【0002】
昨今では、地図には、単に地形を表すだけでは足りず、より現実に近い状態を再現することが求められる傾向にある。その一例として、道路白線、横断歩道、停止線など現実の道路に描かれる種々の道路標示を地図上に再現することが求められる場合がある。このように現実に近い状態を再現すれば、地図のユーザは、地図と現地とを容易に対象することができ、地図の利便性を向上させることができる。かかる要請は、印刷物としての地図よりも、コンピュータやナビゲーション装置などのディスプレイに表示する電子地図で高く求められる。また、二次元の地図よりも、地物等を立体的に表示した3次元地図において、強く要請される。
【0003】
道路標示に関連した技術として、特許文献1〜3記載の技術がある。
特許文献1は、走行中の車両に搭載したカメラで撮影した画像から、画像処理によって道路白線を検出し、地図と照合することで、地図上に存在する道路か否かを判断する技術を開示する。特許文献2は、車載カメラで撮影した画像から、画像処理によって道路白線を検出し、車線を保って走行するよう、車両の制御に活用する技術を開示する。特許文献3は、車載カメラで撮影した画像をオルソ変換することで、道路白線の画像データを生成する技術を開示する。
従来の技術は、上述の通り、車載カメラで撮影した画像から、道路白線のデータを得るものであった。車両の他には、航空写真から道路白線のデータを得る技術も考えられる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003−121161号公報
【特許文献2】特開2003−168198号公報
【特許文献3】特開2010−175756号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、従来技術では、車載カメラにせよ、航空写真にせよ、道路白線のデータを生成するためには、現地調査が欠かせなかった。従って、全国いたるところで道路白線を描画させようとすれば、その調査負荷は多大なものとなっていた。道路白線に限らず、横断歩道、停止線など他の道路標識のデータについても同様であった。
本発明は、かかる課題に考慮し、道路標識を描くためのデータを、軽い負荷で生成可能とすることを目的とする。
【課題を解決するための手段】
【0006】
本発明は、地図を描画するための地図データを生成する地図データ生成システムにおいて,
道路をノードおよびリンクで表した道路ネットワークデータを格納する道路ネットワークデータベースと、
道路を描画するためのポリゴンデータを格納する描画データベースと、
車両通行帯を区分するために道路上に描かれるべき道路白線の形状および位置を規定する道路標示規定データを格納する道路標示規定データベースと、
ポリゴンデータに基づいて、道路ネットワークデータにおけるノード周りの交差点領域を設定する交差点領域設定部と、
道路および交差点領域の境界に基づいて、道路標示規定データにより定まる位置に、道路標示規定データに規定された形状で、道路白線を描くための道路標示データを生成する道路白線生成部とを備えるものとした。
【0007】
本発明によれば、既存の描画データベースと道路ネットワークデータを用いて道路標示を描画するための道路標示データを生成することができるため、現地調査の負荷を大幅に軽減することができる。
もっとも、本発明の方法では、必ずしも道路白線、横断歩道等の道路標示の位置および形状が、完全に現地の状態とは一致しない可能性がある。しかし、道路標示の位置および形状が現地の状態と多少異なるところがある場合でも、地図を見たユーザが現地の状態と直感的に照合しやすくなるという効果は、十分に得られるものである。
本発明では、描画データベース、道路ネットワークデータの他、道路標示規定データを用いることによって、道路標示データの精度の向上が図られ、上述の目的に沿った道路標示の描画が実現される。
【0008】
本発明において、道路標示データは、ポリゴンデータ、ラスタデータなど種々の形式で構成することができる。また、道路標示データは、描画データベースまたはポリゴンデータの一部として構成してもよいし、これらとは別のデータとして構成してもよい。
道路標示規定データは、道路構造令などの法規に基づいて用意することが好ましい。こうすることで、現実の道路標示と同じ規定を用いて道路標示データを生成することになるため、その精度を向上させることができる。もっとも、道路標示規定データは、法規に定められた内容だけでなく、その他の規定を含めることも可能である。
【0009】
交差点領域は、種々の方法で設定可能である。例えば、道路単位でポリゴンデータが用意されている場合には、道路のポリゴンデータ同士が重なる部分を交差点領域としてもよい。また、道路ネットワークデータのノードから道路の境界線までの距離に基づいて、交差点の角に相当する点を求め、この点を結ぶことで交差点領域を設定してもよい。
このように交差点領域を設定することにより、停止戦や横断歩道など、交差点の周囲に描かれる道路標示の位置および形状を精度良く設定することが可能となる。また道路白線は、交差点内には描かれず、停止戦や横断歩道によって端点が定められることが多いため、停止戦等を精度良く描くことは、道路白線の精度向上にも資するものである。
【0010】
本発明の地図データ生成システムにおいて、
リンクは、道路形状に応じた折れ線で規定されている場合には、
道路白線生成部は、
リンクを、その長さを変えずに直線状に伸ばした直線リンクを生成し、
直線リンクに対する道路標示データである直線道路標示データを生成し、
リンクの折れ線の折れ曲がり点に対応する箇所で、直線道路標示データを分割し、
分割された直線道路標示データを、リンクに沿って配置することで、折れ線状のリンクに対する道路標示データを生成してもよい。
【0011】
こうすることにより、折れ線状のリンクに対しても道路標示を精度良く生成することができる。
直線リンクに対して生成された直線道路標示データを分割して、折れ線状のリンクに配置すると、道路標示データ同士が重複する部分や、間隙となる部分が生じる。これらに対しては、重複部分や間隙部分以外の部分を滑らかに補間するなどの方法で道路標示データを生成すればよい。
【0012】
本発明の地図データ生成システムにおいては、
更に、道路ネットワークデータを参照し、所定のグループ条件を満たすリンクおよびノードをグループとして定義する道路ネットワークグループ化処理部を備え、
交差点領域設定部は、同一グループのリンク間に存在するノードを除外して、交差点領域を設定してもよい。
【0013】
こうすることによって、通常とは異なる交差点について柔軟な処理が可能となる。
例えば、幹線道路に細街路が交差している場所では、厳密には交差点内であっても、幹線道路に一貫して道路白線が描かれている場合がある。かかる領域に対しては、一つ一つを交差点として扱うと、観戦道路の道路白線が細かく分断され、現実とは異なる状態となってしまうおそれがある。このような場合、上記態様によって、幹線道路を構成する一連のリンクをグループとして定義しておけば、同一グループ内にある幹線道路を一連の道路として扱うことが可能となり、細街路が交差している箇所を通常の交差点とは異なるものと認識することができるため、幹線道路に一貫した道路白線を生成することができるのである。このように、上述の態様によれば、交差点を構成する道路の配置や種別などの事情に応じて、グループを通じて、交差点領域として扱うか否かを切り替え、違和感のない道路白線を描画することが可能となる。
この態様において、グループは種々の方法で設定することができる。例えば、道路ネットワークデータにおいて、予めグループ化されるべきリンク同士に同一のグループ名などを付しておき、グループ名が同一というグループ条件によってグループ化するようにしてもよい。また、このようなデータがない場合でも、道路名称や道路種別、車線幅、道路の交差角度などの属性が一致するもの同士をグループ化するようにしてもよい。
【0014】
本発明の地図データ生成システムにおいては、
更に、横断歩道を描く処理対象となる対象リンクと、対象リンクに交差する交差リンクとの角度に応じて定まる交差角度で、対象リンクに交差する基準線を設定し、基準線を一辺とする平行四辺形の領域内に横断歩道を描くための横断歩道データを生成する横断歩道処理部を備えてもよい。
【0015】
横断歩道は、必ずしも道路に直交するように描かれているとは限らない。道路同士が斜めに交差している交差点などでは、その交差角度に応じて、横断歩道が道路に対して斜めに交差するように描かれている箇所もある。上記態様によれば、対象リンクおよび交差リンクの交差状態に応じた交差角度を用いることにより、斜めに交差する横断歩道を描くことができ、現実に近い状態の横断歩道を再現することが可能となる。
交差角度は、対象リンクといずれかの交差リンクとの角度、複数の交差リンクとの角度の平均値など、種々の方法で設定することができる。
【0016】
本発明の地図データ生成システムにおいて、
道路ネットワークデータのリンクには、リンク内での車線数の増加を表す車線増加データが設定されている場合には、
道路白線生成部は、
車線数が増加するリンクに対し、道路標示規定データベースに基づいて、車線を増加して描くべき滞留区間の長さである必要滞留長と、滞留区間に移行するためのすりつけ区間の長さであるすりつけ長とを求め、
すりつけ長よりも必要滞留長を優先して短縮することで、必要滞留長とすりつけ長の和がリンクの長さより小さくなるように、必要滞留長およびすりつけ長を調節し、
調節されたすりつけ長および必要滞留長に基づいて、滞留区間およびすりつけ区間を描くための道路標示データを生成してもよい。
【0017】
右折または左折用に交差点付近で車線が増加しており、滞留区間、すりつけ区間が設けられている箇所がある。上述の態様によれば、これらの滞留区間、すりつけ区間を描画するデータを生成することができる。
上述の態様では、滞留区間とすりつけ区間の和が、リンクの長さ、つまり交差点間の長さよりも小さくなるように両者の長さを調整することができる。この調整は、滞留区間を優先して短縮することで行うため、走行時に車線変更するためのすりつけ区間の長さが確保される。現実の滞留区間、すりつけ区間も、このように構成されているのが通常であるため、かかる方法で調整することによって、現実に近い状態を実現することができる。
【0018】
すりつけ区間を描く場合には、
道路白線生成部は、
すりつけ区間および滞留区間が設定されたリンクにおいて、上下線のすりつけ区間間に生じた間隙に、道路標示規定データに基づいた形状で導流帯を描くための道路標示データを生成してもよい。
【0019】
こうすることによって、導流帯(以下、「ゼブラゾーン」ということもある)を描くことが可能となる。ゼブラゾーンは、ユーザが道路を見た時に視認しやすい部分であるため、ゼブラゾーンを描くことによって、地図と現実の状態との照合を行いやすくすることができる利点がある。ゼブラゾーンは、上述のようにすりつけ区間の間隙だけでなく、種々の規定を設けて、描画可能としてもよい。
【0020】
本発明は,その他,コンピュータによって地図データを生成する地図データ生成方法として構成してもよいし,地図データの生成をコンピュータに実行させるためのコンピュータプログラムとして構成してもよい。また,かかるコンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体として構成してもよい。記録媒体は,CD−ROMやサーバなどのようにコンピュータと別体の媒体であってもよいし、コンピュータに内蔵のRAM、ROMやハードディスクなどの内部記憶装置であってもよい。
【図面の簡単な説明】
【0021】
【図1】道路標示データ生成の概要を示す説明図である。
【図2】地図データ生成システムの構成を示す説明図である。
【図3】道路標示規定データベースの内容例を示す説明図である。
【図4】地図データ生成処理のフローチャートである。
【図5】グループ化の概要を示す説明図である。
【図6】道路ネットワークグループ化処理のフローチャートである。
【図7】交差点領域設定処理のフローチャートである。
【図8】横断歩道の交差角度の候補値の決定方法を示す説明図である。
【図9】横断歩道角度決定処理のフローチャート(1)である。
【図10】横断歩道角度決定処理のフローチャート(2)である。
【図11】道路白線生成処理のフローチャート(1)である。
【図12】道路白線生成処理のフローチャート(2)である。
【図13】道路白線生成処理のフローチャート(3)である。
【図14】道路白線生成処理のフローチャート(4)である。
【図15】横断歩道描画処理のフローチャートである。
【図16】道路標示データの生成例を示す説明図である。
【発明を実施するための形態】
【実施例1】
【0022】
<<地図データ生成の概要>>
実施例の地図データ生成システムは、描画データ、道路ネットワークデータ等を用いて、道路上に標示される道路標示を描画するための道路標示データを生成するものである。本実施例では、地図データには、上述の描画データおよび道路ネットワークデータが含まれ、道路標示データは、描画データの一部を構成するものである。道路標示データは、ディスプレイ等に表示される電子地図に活用することもできるし、印刷物としての地図をプリントするためのデータとして活用することもできる。
【0023】
最初に、本実施例における道路標示データの生成方法について概要を説明する。図1は、道路標示データ生成の概要を示す説明図である。図1(a)には、本実施例によって生成された道路標示データを用いて描いた道路を示し、図1(b)には、図1(a)に対応する箇所の航空写真を示した。本実施例では、図1(b)の航空写真等を利用して図1(a)を描画するための道路標示データを生成している訳ではない。実施例の地図データ生成システムは、航空写真(図1(b))とは無関係に、道路の描画データ、道路ネットワークデータ等を参照して、道路標示データ(図1(a))を生成するのである。
本実施例における道路標示には、道路通行帯最外側線LL11、道路通行帯境界線LL12、停止線LL13、横断歩道PT11、導流帯またはゼブラゾーンPT12などが含まれる。道路通行帯最外側線LL11、道路通行帯境界線LL12を、「道路白線」と総称することもある。
道路標示データを生成するための最も簡単な処理例としては、例えば、2車線の道路に対して、一定の車線幅で2つの車線が形成されるように道路白線を配置すればよい。ただし、この処理だけでは、横断歩道PT11、停止線LL13、ゼブラゾーンPT12などは生成することができない。また、本実施例では、右折用に車線が増加する領域(図1(a)中の領域A11)も再現する。地図データ生成システムは、描画データ等から、予め設定された規定に基づいて、これらの道路標示に対応する道路標示データを生成するのである。
図1(a)では、一見して図1(b)の航空写真に対応する領域の地図であると認識できる程度に精度良く、道路標示が描画されていることが分かる。以下では、このような道路標示データを生成するためのシステム構成および処理について説明する。
【0024】
<<システム構成>>
図2は、地図データ生成システムの構成を示す説明図である。地図データ生成システムは、CPU、RAM、ROMを備えるコンピュータに、地図データ生成処理を実現するためのソフトウェアをインストールすることによって構成される。本実施例では、スタンドアロンで稼働するシステムとしての構成例を示すが、図示する各要素は、ネットワーク等で接続された複数のコンピュータを用いた分散処理によって実現するものとしてもよい。
【0025】
地図データ生成システムには、処理に活用するためのデータベースとして、地図データベース10および道路標示規定データベース20を備えている。
地図データベース10は、道路ネットワークデータベース11と描画データベース12を有している。道路ネットワークデータベース11は、経路探索用にノードおよびリンクで表した道路ネットワークデータを格納している。道路ネットワークデータには、それぞれのリンクおよびノードに対して、道路種別、道路名称、車線数などを示す属性データも設定されている。描画データベース12は、地図を描画するためのポリゴンデータを格納している。ポリゴンデータには、例えば、道路、建物、湖沼等を描画するためのデータが含まれる。また、実施例で説明する処理によって道路標示データが生成された場合には、道路標示データも、ポリゴンデータの一部として格納されることになる。
道路標示規定データベース20は、道路標示の形状や位置を規定した道路標示規定データを格納する。本実施例では、道路構造令の規定内容に基づいて道路標示規定データを設定した。そのデータ構造および内容については後述する。
地図データベース10および道路標示規定データベース20は、地図データ生成システム内のハードディスク等に格納しておいてもよいし、ネットワークで接続されたサーバから提供してもよい。また、DVDなどの記憶媒体で提供してもよい。
【0026】
道路標示データ記憶部40は、道路標示データを生成する過程のデータおよび生成された結果を格納する記憶部である。RAMなどのメモリ領域、ハードディスク、フラッシュメモリなど、書き換え可能な種々のメモリを道路標示データ記憶部40として活用することができる。
【0027】
地図データ生成システムの他の構成要素として、図中には、道路標示データを生成するための機能ブロックを示した。これらの機能ブロックは、コンピュータプログラムのインストールによってソフトウェア的に構成してもよいし、電子回路によってハードウェア的に構成してもよい。以下、これらの各機能ブロックの機能概要について説明する。ただし、それぞれの機能ブロックにおける具体的な処理方法については、後でフローチャートと共に説明する。
【0028】
道路ネットワークグループ化処理部30は、道路標示データを生成する前処理として、幹線道路のように一連の道路として道路白線が描かれるべきリンクおよびノードをグループ化する。道路ネットワークデータでは、リンク同士の交点には、全てノードが設定されているため、幹線道路を構成する一連のリンクも、それぞれのノードで分断されているが、このように分断されたリンクをグループ化しておくことにより、道路標示データの生成においては、幹線道路などを一連の道路として扱うことが可能となる。
【0029】
交差点領域設定部32は、ポリゴンデータおよび道路ネットワークデータを参照して、交差点領域を設定する。横断歩道や停止戦など、道路標示は、交差点領域の境界を基準として位置が定まるものとが多いため、ここで設定される交差点領域は、道路標示の位置を決める基準としての意義を有している。交差点領域の設定方法については、後述する。
【0030】
横断歩道処理部34は、横断歩道の形状を設定し、横断歩道を描画するためのデータを生成する。横断歩道は、必ずしも道路に直交するように描かれるとは限らず、交差点によっては、道路に斜めに交差するように描かれる場合がある。横断歩道処理部34は、交差点の形状を考慮して、このように斜めに交差する横断歩道を描画可能とするのである。
【0031】
道路白線生成部36は、道路白線、停止戦およびゼブラゾーンを描画するためのデータを生成する。右折用に車線数が増加する場合には、道路白線生成部35は、増加した車線が描かれる滞留区間や、滞留区間に滑らかに接続するためのすりつけ区間を描画するデータも生成する。
【0032】
データベース更新部38は、道路標示データ記憶部40から生成された道路標示データを読みだし、描画データベース12を更新する。本実施例では、道路標示データは描画データベース12の一部を構成するものとしたが、道路標示データを描画データベース12とは別のデータベースとして地図データベース10内に格納するようにしてもよい。
【0033】
図3は、道路標示規定データベース20の内容例を示す説明図である。
道路標示規定データベース20は、道路構造令の規定内容に基づいて道路標示の形状や位置を規定する。図3(a)には、道路標示規定データベース20を構成する各パラメータの符号および内容、数値を例示した。図3(b)には、道路上の標示と対応づけて各パラメータの意義を示した。ここで例示したパラメータの内容を以下、説明する。
車線幅WLNは、車両が走行する車線の幅であり、例えば、3.0mとすることができる。
車両通行帯最外側線幅、車両通行帯境界線幅WLLは、道路白線の幅(太さ)であり、例えば、0.15mとすることができる。
車両通行帯境界線長(破線)LLは、破線で描かれている道路白線の長さであり、例えば、5.0mとすることができる。
導流帯内白線幅(ゼブラ)ZWは、ゼブラゾーンを構成する白線の幅であり、例えば、0.45mとすることができる。
導流帯内白線間距離(ゼブラ)ZSは、ゼブラゾーンを構成する白線の間隔であり、例えば、1.0mとすることができる。
停止線幅WSLは、停止線の幅であり、例えば、0.45mとすることができる。
横断歩道、停止線間距離DSは、横断歩道と停止線との間隔であり、例えば、2.0mとすることができる。
停止線前車線変更禁止線DPCは、停止線に至るまでの間で、車線変更禁止のため道路白線が破線ではなく実線で描かれるべき区間の長さであり、例えば、30.0mとすることができる。
横断歩道線幅WCW、線間隔SCWは、横断歩道を構成する各白線の幅および間隔であり、例えば、共に0.45mとすることができる。
本実施例では、これらの数値は、道路構造令などの法規に基づいて設定した。道路標示規定データベース20には、この他にも、道路標示の位置および形状を定める種々のパラメータを設定可能である。また、必ずしも全てのパラメータが道路構造令に基づいて設定されている必要はなく、現実の状態を精度良く再現するために、道路構造令等に規定されていないパラメータを定義してもよい。
【0034】
<<全体処理の流れ>>
次に、道路標示データを生成する処理について説明する。まず処理の全体概要を示し、その後、それぞれの具体的処理内容を詳述する。
図4は、地図データ生成処理のフローチャートである。「地図データ生成処理」と呼んだのは、この処理によって生成された道路標示データを地図データベース10に格納することによって、道路標示データを含んだ新たな地図データベース10が生成されることになるからである。
【0035】
地図データ生成処理は、ハードウェア的には地図データ生成システムのCPUが実行し、ソフトウェア的には、図1に示した各機能ブロックが実行する処理である。
CPUは、前処理として、道路ネットワークグループ化処理により、道路標示データの生成時には一連の道路として扱われるべきノード、リンクをグループ化する処理を行う(ステップS100)。を行う。これは、先に説明した道路ネットワークグループ化処理部30の機能に相当する処理である。
次に、CPUは、交差点領域設定処理によって、ポリゴンデータ、道路ネットワークデータを参照して、交差点領域を設定する処理を行う(ステップS200)。これは、先に説明した交差点領域設定部32の機能に相当する処理である。
次に、CPUは横断歩道角度決定処理によって、道路に何度の角度で横断歩道を交差させて描くかを決定する処理を行う(ステップS300)。これは、先に説明した横断歩道処理部34の機能に相当する処理である。
次に、CPUは道路白線生成処理によって、停止線、道路白線、ゼブラゾーンを描くだめのデータを生成する(ステップS400)。これは、先に説明した道路白線生成部36の機能に相当する処理である。本実施例では、各道路について中央線に相当する位置で上下線に分けて、それぞれ停止線、道路白線、ゼブラゾーンを描くためのデータを生成した後、上下線のデータを結合して、道路全体の停止線、道路白線、ゼブラゾーンを描くデータを生成するという手順をとる。
次に、CPUは横断保号の描画処理によって、横断歩道を描画するためのデータを生成する(ステップS500)。これは、先に説明した横断歩道処理部34の機能に相当する処理である。
ステップS400、S500で生成されたデータが道路標示データとなる。
最後に、CPUは生成された道路標示データによって、描画データベース20を更新する処理を行う(ステップS600)。
以上の処理は、適宜、順序を入れ替えたり、まとめて行ったりしてもよい。以下、それぞれの処理内容について詳述する。
【0036】
<<道路ネットワークグループ化>>
道路ネットワークグループ化は、図4のステップS100および道路ネットワークグループ化処理部30の機能に相当する処理内容である。以下では、まず処理の意義および概要を示した後、フローチャートを示す。
【0037】
図5は、グループ化の概要を示す説明図である。
図5(a)は、幹線道路を構成するリンクL51、L52に、細街路のリンクL53がノードN50で交差している道路を示している。道路ネットワークデータでは、道路種別に関わらずリンクの交点には、必ずノードが設定されている。従って、幹線道路を構成するリンクL51、L52も、道路ネットワークデータ上は、複数のリンクに分断された状態で格納されることになり、ノードN50は交差点と認識されることになる。そして、ノードN50の周囲には、後述する処理方法によって交差点領域A50(ハッチングを付した部分)が設定される。道路白線は、交差点領域を避けて描かれるのが通常であるから、交差点領域A50が設定された結果、幹線道路については、道路白線LL51、LL52のように分断された道路白線が描かれることになる。
しかし、一般に幹線道路に細街路が交差している箇所については、幹線道路の道路白線は、図5(a)のように分断されることなく、連続して描かれるのが通常である。
そこで、ネットワークグループ化処理では、交差点領域A50のように、交差点領域が生成されるべきでないリンクおよびノードをグループと定義するのである。図5(a)の例では、D51方向に道路標示データを生成する処理においては、リンクL51、ノードN50、リンクL52をグループとして定義する。こうすれば、リンクL51、L52に対して道路標示データを生成する際には、これらのリンク、ノードは一連のものとして扱われるべきであると認識され、交差点領域A50が設定されるのを回避することができ、道路白線LL51、LL52を連続した状態で生成することができる。
逆に、D52方向に道路標示データを生成する処理においては、グループ化を行わない。こうすることにより、交差点領域A50が設定されるから、道路最外側線LL53、LL54は、交差点領域A50で分断された状態で生成することができる。
この交差点について、リンクL53の道路標示データを生成する場合を考える。リンクL53は、リンクL51、L52のいずれともグループと定義せずにおく。こうすれば、リンクL53の処理時には、ノードN50周りの交差点領域A50を設定することができ、交差点の直線に停止線や横断歩道を描くことができる。
【0038】
図5(b)には、グループ化を行うべき他の例を示した。図の例では、比較的狭い分離帯M51を挟んで平行に走るリンクL58、L59が、リンクL54〜L57とノードN51、N52で交差している。都市部など、分離帯M51で上下線が分離されている箇所では、かかる状態が生じ得る。
このような場所で、グループ化を行わずに処理をすると、ノードN51を交差点と認識して、交差点領域A51が設定されることになる。ノードN51を処理しているときには、ノードN52、リンクL59の位置は考慮されないからである。交差点領域A51が設定されると、これを基準として横断歩道が設定されるから、分離帯M51に横断する形で横断歩道CW51が設定されてしまう。
そこで、ネットワークグループ化処理では、D53方向に処理を行う場合には、リンクL55、ノードN51、リンクL54をグループとして定義する。こうすることによって、ノードN51を除外して、ノードN52の周囲にのみ交差点領域を設定することができるため、不自然な横断歩道CW51ではなく、横断歩道CW52を生成することが可能となる。
また、D54方向に処理を行う場合には、リンクL55、ノードN52、リンクL56をグループとして定義する。こうすることによって、ノードN52を除外して、ノードN51の周囲にのみ交差点領域を設定することができるため、横断歩道CW53を生成することが可能となる。
その他のリンクL57、L58、L59に対しては、いずれもグループを定義せずに処理を行えば、それぞれ適切な位置に横断歩道を生成することが可能である。
以上、図5(a)、図5(b)で示したように、グループ化を行うことにより、交差点領域を設定するか否かを切り替えることができ、それぞれの交差点の状況を反映させた道路標示を生成することが可能となる。次に、グループ化の具体的処理について説明する。
【0039】
図6は、道路ネットワークグループ化処理のフローチャートである。
CPUは、道路ネットワークデータを読み込み(ステップS102)、グループ化の処理対象となるノードを選択する(ステップS104)。そして、このノードに接続されているリンクを抽出する(ステップS106)。
次に、CPUは、抽出されたリンクについて、道なり条件の判定を行う(ステップS108)。道なり条件とは、ノードで分断された複数のリンクが、道路標示データの生成上は一連の道路として扱われるべきか否かを判断する条件であり、グループ化するための判断の基礎となる条件である。本実施例では、「道なり」か否かが、道路ネットワークデータに属性として、各リンクの上下方向に個別に設定されているものとした。
図中に示すリンクL1〜L3からなる三叉路を例示する。この中でリンクL1からリンクL2に向かう方向P12、およびリンクL2からリンクL1に向かう方向P21には、それぞれ「道なり」であると設定されており、その他の方向(リンクL1→L3など)は、「道なり」と設定されてはいないものとする。CPUは、この属性に基づいて、図中に示すように、各リンク間が道なりか否かの結果を抽出する。
道なりか否かは、属性で設定しておく他、道路種別、道路名称、車線幅、形状などで解析的に判断するようにしてもよい。例えば、道路名および道路種別が同一であるリンク同士は道なりと判断したり、リンク間のなす角度が180度から所定の範囲内の場合には道なりであると判断する方法などをとることができる。
【0040】
道なり条件の判断が終わると、CPUは、この判断結果に基づいてグループ化を行う(ステップS110)。本実施例では、図中に示すケース1、2のいずれかの条件を満たす場合に、グループを設定するものとした。図中に示すリンクLa、Lb、Lcからなる三叉路に対して、リンクLaを処理対象とする場合を例にとって説明する。
ケース1は、ステップS108において、リンクLa→Lbの方向Pab,およびリンクLb→Laの方向Pbaの双方が道なりであると判断される場合である。
ケース2は、ステップS108において、リンクLa→Lbの方向Pabのみが道なりと判断されており、リンクLcとリンクLa、Lbは道なりでないと判断されている場合である。
このケース1、2は、現実の道路において、交差点として扱われていない箇所を調査した結果、設定されたものである。この条件によってグループ化を行えば、図5(a)、図5(b)で示したケースにおいて、それぞれ適切に道路白線を生成することができる。もっとも、グループ化の条件は、種々の設定が可能であり、ステップS110で示した以外の条件を用いることも可能である。
上述の条件におけるリンクLaを、リンクLbまたはリンクLcに置換すれば、これらのリンクに対するグループ化の条件を設定することができる。ステップS110では、CPUは、処理対象ノードに接続している全リンクに対して、それぞれグループ化の判定を行う。
CPUは、以上の処理を、全ノードについて終えるまで繰り返し実行する(ステップS112)。
【0041】
<<交差点領域設定>>
交差点領域設定は、図4のステップS200および交差点領域設定部32の機能に相当する処理内容である。
図7は、交差点領域設定処理のフローチャートである。CPUは、処理対象ノードを選択する(ステップS202)。この際、前述の道路ネットワークグループ化処理(図6)によって、グループ化されたリンク上のノードは処理対象から除かれる。
CPUは、描画データベースから処理対象ノードの周囲のポリゴンデータを読み込み、道路領域を取得する(ステップS204)。図中の右側に、処理の様子を例示した。ノードN70が処理対象ノードとなっている場合、そこに接続されるリンクL71〜L74に対応する道路の領域(図中の白い部分)を特定するのである。必ずしも道路自体のポリゴンデータを取得する必要はなく、道路以外の背景部分のポリゴンデータ(図中のハッチングの部分)を取得しても構わない。
右側に示すように、処理対象ノードN70の周囲は、リンクL71〜L74によって4つの領域I〜IVに分けられる。CPUは、この各領域I〜IVについて、交差点つまり処理対象ノードN70からの最近傍点を取得する(ステップS206)。図中に示すように、領域Iについては点P1、領域IIについては点P2、領域IIIについては点P3、領域IVについては点P4が、それぞれ最近傍点となる。
最近傍点が求まると、CPUは、これらを結び交差点領域を設定する(ステップS208)。図中において、点P1、P2、P3、P4を結ぶ太線で囲った部分が、交差点領域となる。
CPUは、以上の処理を、全ノードについて終えるまで繰り返し実行する(ステップS210)。
こうして設定された交差点領域は、道路白線を描画する際の位置の基準等として活用される。
【0042】
<<横断歩道の生成>>
横断歩道の生成は、図4のステップS300および横断歩道処理部34の機能に相当する処理内容である。横断歩道を描く場合に、横断歩道と道路との交差角度の候補値の設定方法を説明した後、処理内容について説明する。
【0043】
図8は、横断歩道の交差角度の候補値の決定方法を示す説明図である。リンクL81〜L84が交差している交差点において、リンクL81を処理対象とする場合を例にとり、図8(a)〜図8(d)の4つの候補値の設定方法を示した。
図8(a)は、リンクL81に直交する横断歩道WC81を設定する例である。図のように、道路が斜めに交差している交差点では、横断歩道WC81のように描くと、リンクL81の右側(リンクL84側)で交差点までの間隔が開いてしまい、不自然な状態となる。このような場合には、横断歩道は、図中で右上がりの状態に斜めに描くことが好ましい。
図8(b)〜(d)は、リンクL81に対して斜めに横断歩道WC82を設定する例である。図8(b)の横断歩道WC82は、リンクL81の左側に交差するリンクL83と平行な辺を有する平行四辺形によって描かれる。図8(c)の横断歩道WC83は、リンクL81の右側に交差するリンクL84と平行な辺を有する平行四辺形によって描かれる。図8(d)の横断歩道WC84は、リンクL83、L84上にノードNから等距離の点P83、P84をとり、これらの点P83、P84を結ぶ線分と平行な辺を有する平行四辺形によって描かれる。リンクL83、L84の間の角の二等分線を法線とする辺を有する平行四辺形と言うこともできる。
本実施例では、図8(b)〜図8(d)に示した3つの候補角度の中から、交差点に応じて、いずれか一つを選択し、横断歩道の交差角度を決定する。決定方法は、次のフローチャートに従って説明する。
【0044】
図9、図10は、横断歩道角度決定処理のフローチャートである。
CPUは、まず処理対象リンクを選択し、処理対象リンクに交差する交差リンクを取得する(ステップS302)。処理対象リンクに交差する全リンクを取得するものとしてもよいが、本実施例では、以下の条件1、条件2を満たすものに絞って取得するものとした。ここで、「A9*」は、処理対象リンクに交差するリンクL9*(*=1,2,…)と、処理対象リンクの間の角度である。
条件1:処理対象リンクの両側それぞれにおいて、|A9*−90°|が最小となること;
条件2:90°−TH≦A9*≦90°+TH;
条件1は、処理対象リンクに対して、最も90°に近い角度で交差するリンクを、処理対象リンクの両側で一つずつ選択するための条件となっている。また、条件2は、選択されたリンクと処理対象リンクとの角度が、直角から所定範囲内に入っているという条件である。これらの条件によって、処理対象リンクの両側において、直角に近い角度で交差するリンクを取得しようとしているのである。
【0045】
図中に、上述の条件1、2を例示した。処理対象リンクLobの端のノードNobで、左側にリンクL91、L93が交差し、右側にリンクL92が交差しているものとする。処理対象リンクLobと、リンクL91〜L93との角度は、それぞれA91〜A93で表される。図中のハッチングを付した部分は、条件2を満たす範囲を表している。つまり、境界線BL1は、処理対象リンクLobとの角度が「90°−TH」となる線であり、境界線BL2は、「90°+TH」となる線である。図の状態では、リンクL91〜L93は、いずれもハッチングを付した領域内に入っているから、条件2は満たすことになる。
処理対象リンクLobの右側には、リンクL92のみが存在する。従って、|A9*−90°|が最小という条件1では、他と比較するまでなく、リンクL92が選択される。
処理対象リンクLobの左側には、リンクL91、L93が存在する。これらのうち処理対象リンクLobに直角に近い角度で交差するのは、リンクL91である。従って、左側については、条件1によって、リンクL91が選択される。条件1に即した形で表現すれば、|A91−90°|<|A93−90°|ということになる。
【0046】
こうして交差リンクを取得すると、CPUは、左右の交差角度を算出する(ステップS304)。図中に左右交差角度の定義を示した。図の煩雑化を回避するため、左右それぞれに分けて示してある。左側の図が左側交差角度を示し、右側の図が右側交差角度を示している。左側交差角度は、左側に交差するリンクL91の法線NL91と処理対象リンクLobとの角度AN91で定義する。右側交差角度は、右側に交差するリンクL92の法線NL92と処理対象リンクLobとの角度AN92で定義する。左側交差角度、右側交差角度の評価は、絶対値で行うので、角度AN91,AN92が処理対象リンクの左右いずれに現れるかによって正負の符号を考慮する必要はない。
左側交差角度を用いて横断報道を描く場合には、図8(b)の状態となり、右側交差角度を用いて横断歩道を描く場合には、図8(c)の状態となる。
CPUは、次に平均交差角度を算出する(ステップS306)。平均交差角度とは、図中に示す通り、左右の交差リンクL91、L92の二等分線NL93と処理対象リンクLobとの角度AN93である。この角度を用いて横断歩道を描く場合には、図8(d)の状態となる。
【0047】
CPUは、以上で求めた左右の交差角度、平均交差角度の最小値を横断歩道角度に設定する(ステップS308)。角度は絶対値で評価するものとした。設定された横断歩道角度での横断歩道の描画は、後述する横断歩道描画処理で行う。
以上の処理を、CPUは全リンクについて終了するまで、繰り返し実行する(ステップS310)。
【0048】
<<道路白線の生成>>
道路白線の生成は、図4のステップS400および道路白線生成部36の機能に相当する処理内容である。
図11〜図14は、道路白線生成処理のフローチャートである。
CPUは、処理対象となるリンクグループを取得する(ステップS402)。そして、リンクグループを直線化する(ステップS404)。図中に直線化の方法を示した。図の上側に示すように、リンクL111、L112、ノードN111〜N113からなるリンクグループを考える。このリンクグループは、道路形状に沿って折れ曲がった折れ線で規定されているとする。
直線化処理では、図の下側に示すように、各リンクL111、L112の長さを保ったまま、一次元の座標上にノードN111〜N113を写像するのである。写像した結果を直線化リンクL111s、L112s、直線化ノードN111s〜N113sと称することにする。
【0049】
CPUは、車両通行帯最外側線および中央線の位置を決定する(ステップS406)。図中にこれらの決定方法を示した。決定方法は、次の通りである。
道路ネットワークデータは、道路の属性として道路幅Wrd、車線数の情報を有している。また、道路標示規定データ(図3参照)は、車線幅をパラメータとして有している。従って、これらのデータを用いて、車線幅×車線数を計算することにより、道路幅Wrdのうち、車線に利用される幅Dが決定される。この幅Dを道路幅Wrd内に均等に配置することにより、車両通行帯最外側線BL1、BL2の位置を決定することができる。また、幅Dを、上下線の各車線数で内分することによって中央線CLの位置を決定することができる。上下線の車線数は同一とは限らないから、中央線CLは、幅Dの中央に来るとは限らない。例えば、上り2車線、下り1車線の道路では、中央線は幅Dを2:1に内分した位置に設定されることになる。
【0050】
こうして中央線が設定されると、CPUは、道路を中央線で上下に分断し、それぞれについて道路標示データを生成する。具体的には、交差点領域、横断歩道領域、停止線を設定し、この結果に基づいて車両通行帯最外側線長、中央線長を修正する(ステップS408)。
図中に処理例を示した。D12方向に処理を行う場合を考える。CPUは、交差点領域設定処理(図7)で設定された交差点領域CSを配置する。そして、横断歩道角度決定処理(図9)で決定された横断歩道角度に基づいて、交差点領域の端点から基準線LCS0を引く。基準線LCS0と処理対象リンクL11sとの角度ACSが横断歩道角度に相当する。
次に、交差点領域から遠ざかる方向に基準線LCS0から所定の距離OSTだけずらした位置に所定幅LCWの平行四辺形で横断歩道領域CWを設定する。これらの距離OST、幅LCWは、道路標示規定データに設定しておけばよい。
CPUは、横断歩道領域CWの境界線で、車両通行帯最外側線BL2および中央線CLを切断する。また、中央線CLと横断歩道領域CWとの交点から、横断歩道・停止線間距離DSだけずらした位置に停止線SLを設定する。また、車両通行帯最外側線BL2および中央線CLに平行に、車線数に応じて、車両通行帯境界線を設定する。
下り線についても、同様の方法で道路標示を描くことができる。ここで説明した手順は、一例に過ぎず、他の方法・手順によって生成しても構わない。
【0051】
CPUは、車線増加部分に対して、滞留区間、すりつけ区間を生成するため、すりつけ長Lt、必要滞留長Lsを算出する(ステップS410)。これらの長さは、道路構造令などの法令に基づいて次の通り算出することができる。
必要滞留長Ls=1.5×N×S;
すりつけ長Lt=V×WLN/6;
N:1サイクル当たりの平均滞留台数;
S:平均車頭距離(前後の車両の先頭間の距離);
V:設計速度;
WLN:車線幅;
上述の各パラメータのうち、車線幅は、全ての道路に共通の値として道路標示規定データに格納しておけばよい。パラメータNおよびVは、道路に固有の値なので、道路ネットワークデータに属性として設定しておくことが好ましい。これらのデフォルト値を道路標示規定データに設定しておいてもよい。例えば、設計速度Vは、1車線の道路では30km/h、2〜3車線の道路では40km/h、4車線以上では50km/hというように、車線数に応じて設定することもできる。
パラメータSは、道路に固有の値と考え、道路ネットワークデータの属性に設定しておいてもよいし、全ての道路に共通の値として道路標示規定データに設定してもよい。
さらに、上述のパラメータが不十分で必要滞留長Ls、すりつけ長Ltを算出できない時のために、これらのデフォルト値を設定しておいてもよい。例えば、必要滞留長Lsは、停止線前車線変更禁止線の距離DPC(図3参照)と同じ値を用いることができる。
【0052】
CPUは、滞留区間およびすりつけ区間が道路長に収まるように、算出されたすりつけ長Lt、必要滞留長Lsを調整する(ステップS412)。道路長は、車両通行帯最外側および中央線の最小値minを基準値Lrdとして用いる。最小値minを用いることにしたのは、図12のステップS408中に描いたように、横断歩道領域が斜めに設定され、車両通行帯最外側と中央線の長さが異なる場合があるからである。
図中の上側に示すように、「必要滞留長LS0+すりつけ長Lt0」が基準値Lrdよりも大きい場合を考える。かかる場合には、図示するように、滞留区間およびすりつけ区間が道路からはみ出した形になってしまう。
本実施例では、このような場合には、すりつけ長を確保したまま、必要滞留長を短縮することで、両者の和が基準値Lrd以下となるよう調整する。図中の下側に調整結果を示した。この例では、すりつけ長Lt1は当初の長さLt0と同じであり、必要滞留長Ls1を当初の長さLs0よりも短くすることで、全体の長さを基準値Lrdに収めている。この態様では、必要滞留長Lsを、車一台分の長さなど、予め設定された限界まで短縮しても、全体の長さが基準値Lrdを超える場合には、すりつけ長Ltを短縮することになる。もっとも、必要滞留長、すりつけ長は種々の調整方法が可能であり、両者を一定の比率で短縮する方法などをとることもできる。
【0053】
CPUは、以上の処理で設定された各白線をポリゴン化する(ステップS414)。ここでいう白線とは、停止線、中央線、道路白線(車両通行帯最外側線、車両通行帯境界線)を意味する。横断歩道は、この時点では、まだ描画しない。
CPUは、上下線の道路標示データを中央線で結合した上で、上下線のすりつけ区間同士のすき間を導流体(ゼブラゾーン)に設定する(ステップS416)。図中に上下のすりつけ区間LSA、LSBの間隙に設定されたゼブラゾーンZZを例示した。ゼブラゾーンを構成する白線の幅および間隔は、道路標示規定データ(図3参照)に規定されている。
以上の処理によって、上下線の道路標示データが生成される。
【0054】
ここまでの処理は、本来折れ線状のリンクを、直線化した上で進めてきたが(図11のステップS404参照)、求められているのは折れ線状の道路上の道路標示を描くためのデータである。このような道路標示データを得るために、CPUは、折れ線状の形状に沿って、生成された道路標示データを分割し、リンクに沿ってマッピングする(ステップS418)。
図中に処理例を示した。まず、図の上側に示すように、直線化リンクL111s、L112s、直線化ノードN111s〜N113sに対して、得られた道路標示データを、ノードN112sを通る法線BRLで、左右のポリゴンPOL1、POL2に分割する。そして、分割された左右のポリゴンPOL1、POL2を、図の下側に示すように、折れ線状の本来のリンクL111、L112上に配置するのである。マッピングの結果、ポリゴンPOL1、POL2が重なる領域DA、および両者の間隙RAが生じる。これらの領域DA、RAについては、その他の領域(図中の白抜き部分)のポリゴンをリンクL111,L112の形状に応じて滑らかに補間するなどして生成すればよい。
図中の最下部に、マッピング例を示した。図13のステップS416中に示した道路標示をノードN112の部分で分割してマッピングしたものである。マッピングによって、ゼブラゾーンZZもこのように形状が変化することになる。
CPUは、以上の処理を、全グループに対して終了するまで繰り返し実行する。これらの処理によって、横断歩道を除く道路標示の生成が完了する。
【0055】
次に、CPUは横断歩道を描くため、横断歩道描画処理を実行する。これは、図4のステップS500および横断歩道処理部34の機能に相当する処理内容である。
図15は、横断歩道描画処理のフローチャートである。CPUは、図12のステップS408で設定された横断歩道領域を読み込む(ステップS502)。
そして、この領域内に横断歩道ポリゴンデータを生成する(ステップS504)。横断歩道を構成する各白線PCW1〜PCW3の幅WCWおよび間隔SCWは、道路標示規定データに設定されたパラメータを用いる。横断歩道領域CWが平行四辺形となっている場合には、各白線PCW1〜PCW3の形状も、横断歩道領域CWの辺と平行な辺からなる平行四辺形となる。
CPUは、以上の処理を全横断歩道領域について終了するまで繰り返し実行する(ステップS506)。
【0056】
横断歩道は、図12のステップS408で、横断歩道領域を設定した時点で、併せて描画することも可能である。しかし、この時点で横断歩道を描画すると、その後のマッピング(図14のステップS418)において、横断歩道を構成する各ポリゴンも併せてマッピングする必要が生じ、処理負荷が大きくなる。本実施例では、この処理負荷を軽減するため、マッピングが完了した後で、横断歩道の描画を行うようにしたのである。
【0057】
以上の処理によって、道路標示データが生成される。本実施例の処理では、道路上の矢印などの配置は示さなかったが、道路標示規定データで、矢印等が描かれるべき位置および形状を規定しておけば、これを参照することによって道路標示データを生成することが可能である。
【0058】
<<道路標示データ例>>
図16は、道路標示データの生成例を示す説明図である。図16(a)に本実施例による生成例を示し、図16(b)にはこれに対応する領域の航空写真を示した。
横断歩道CW16など、一見して、図16(a)と図16(b)とが対応していることを認識できる程度に、現実の状態を精度良く再現できていることが分かる。また、ゼブラゾーンZZ16は、現実の状態とは形状が異なっているが、この位置にゼブラゾーンZZ16が描かれていることにより、図16(a)と図16(b)との対応関係を比較的容易に認識することができる。
このように、本実施例によれば、実際の状態を厳密に精度良く再現するとはいかないまでも、現実の各地点と地図との対応関係を直感的に認識可能とする目的には十分に資する精度で、道路標示を再現することが可能である。本実施例によれば、このような道路標示を描くための道路標示データを、軽い処理負荷で生成することができる利点がある。
【0059】
以上、本発明の実施例について説明したが、上述の実施例で説明した種々の処理は、必ずしも全てを備えている必要はなく、一部を省略したり他の処理と置換したりしても構わない。また、上述の例において、ソフトウェア的に実行されている処理は、ハードウェア的に実行してもよいし、その逆も可能である。
【産業上の利用可能性】
【0060】
本発明は,道路標示を描くための道路標示データを生成するために利用可能である。
【符号の説明】
【0061】
10…地図データベース
11…道路ネットワークデータベース
12…描画データベース
20…道路標示規定データベース
40…道路標示データ記憶部
30…道路ネットワークグループ化処理部
32…交差点領域設定部
34…横断歩道処理部
36…道路白線生成部
38…データベース更新部
【特許請求の範囲】
【請求項1】
地図を描画するための地図データを生成する地図データ生成システムであって,
道路をノードおよびリンクで表した道路ネットワークデータを格納する道路ネットワークデータベースと、
道路を描画するためのポリゴンデータを格納する描画データベースと、
車両通行帯を区分するために道路上に描かれるべき道路白線の形状および位置を規定する道路標示規定データを格納する道路標示規定データベースと、
前記ポリゴンデータに基づいて、前記道路ネットワークデータにおけるノード周りの交差点領域を設定する交差点領域設定部と、
前記道路および交差点領域の境界に基づいて、前記道路標示規定データにより定まる位置に、該道路標示規定データに規定された形状で、前記道路白線を描くための道路標示データを生成する道路白線生成部とを備える地図データ生成システム。
【請求項2】
請求項1記載の地図データ生成システムであって、
前記リンクは、道路形状に応じた折れ線で規定されており、
前記道路白線生成部は、
前記リンクを、その長さを変えずに直線状に伸ばした直線リンクを生成し、
該直線リンクに対する前記道路標示データである直線道路標示データを生成し、
前記リンクの折れ線の折れ曲がり点に対応する箇所で、前記直線道路標示データを分割し、
該分割された直線道路標示データを、前記リンクに沿って配置することで、折れ線状の該リンクに対する道路標示データを生成する地図データ生成システム。
【請求項3】
請求項1または2記載の地図データ生成システムであって、
更に、前記道路ネットワークデータを参照し、所定のグループ条件を満たすリンクおよびノードをグループとして定義する道路ネットワークグループ化処理部を備え、
前記交差点領域設定部は、同一グループのリンク間に存在するノードを除外して、前記交差点領域を設定する地図データ生成システム。
【請求項4】
請求項1〜3いずれか記載の地図データ生成システムであって、
更に、横断歩道を描く処理対象となる対象リンクと、該対象リンクに交差する交差リンクとの角度に応じて定まる交差角度で、該対象リンクに交差する基準線を設定し、該基準線を一辺とする平行四辺形の領域内に横断歩道を描くための横断歩道データを生成する横断歩道処理部を備える地図データ生成システム。
【請求項5】
請求項1〜4いずれか記載の地図データ生成システムであって、
前記道路ネットワークデータのリンクには、該リンク内での車線数の増加を表す車線増加データが設定されており、
前記道路白線生成部は、
前記車線数が増加するリンクに対し、前記道路標示規定データベースに基づいて、該車線を増加して描くべき滞留区間の長さである必要滞留長と、該滞留区間に移行するためのすりつけ区間の長さであるすりつけ長とを求め、
該必要滞留長よりもすりつけ長を優先して短縮することで、該必要滞留長とすりつけ長の和が前記リンクの長さより小さくなるように、該必要滞留長およびすりつけ長を調節し、
該調節されたすりつけ長および必要滞留長に基づいて、前記滞留区間およびすりつけ区間を描くための道路標示データを生成する地図データ生成システム。
【請求項6】
請求項5記載の地図データ生成システムであって、
前記道路白線生成部は、
前記すりつけ区間および滞留区間が設定されたリンクにおいて、上下線のすりつけ区間間に生じた間隙に、前記道路標示規定データに基づいた形状で導流帯を描くための道路標示データを生成する地図データ生成システム。
【請求項7】
コンピュータによって、地図を描画するための地図データを生成する地図データ生成方法であって,
前記コンピュータは、
道路をノードおよびリンクで表した道路ネットワークデータを格納する道路ネットワークデータベースと、
道路を描画するためのポリゴンデータを格納する描画データベースと、
車両通行帯を区分するために道路上に描かれるべき道路白線の形状および位置を規定する道路標示規定データを格納する道路標示規定データベースとを備え、
該コンピュータが、前記ポリゴンデータに基づいて、前記道路ネットワークデータにおけるノード周りの交差点領域を設定する工程と、
該コンピュータが、前記道路および交差点領域の境界に基づいて、前記道路標示規定データにより定まる位置に、該道路標示規定データに規定された形状で、前記道路白線を描くための道路標示データを生成する工程とを備える地図データ生成方法。
【請求項8】
コンピュータによって地図を描画するための地図データを生成するためのコンピュータプログラムであって,
前記コンピュータは、
道路をノードおよびリンクで表した道路ネットワークデータを格納する道路ネットワークデータベースと、
道路を描画するためのポリゴンデータを格納する描画データベースと、
車両通行帯を区分するために道路上に描かれるべき道路白線の形状および位置を規定する道路標示規定データを格納する道路標示規定データベースとを備えており、
前記ポリゴンデータに基づいて、前記道路ネットワークデータにおけるノード周りの交差点領域を設定する機能と、
前記道路および交差点領域の境界に基づいて、前記道路標示規定データにより定まる位置に、該道路標示規定データに規定された形状で、前記道路白線を描くための道路標示データを生成する機能とを前記コンピュータによって実現させるためのコンピュータプログラム。
【請求項1】
地図を描画するための地図データを生成する地図データ生成システムであって,
道路をノードおよびリンクで表した道路ネットワークデータを格納する道路ネットワークデータベースと、
道路を描画するためのポリゴンデータを格納する描画データベースと、
車両通行帯を区分するために道路上に描かれるべき道路白線の形状および位置を規定する道路標示規定データを格納する道路標示規定データベースと、
前記ポリゴンデータに基づいて、前記道路ネットワークデータにおけるノード周りの交差点領域を設定する交差点領域設定部と、
前記道路および交差点領域の境界に基づいて、前記道路標示規定データにより定まる位置に、該道路標示規定データに規定された形状で、前記道路白線を描くための道路標示データを生成する道路白線生成部とを備える地図データ生成システム。
【請求項2】
請求項1記載の地図データ生成システムであって、
前記リンクは、道路形状に応じた折れ線で規定されており、
前記道路白線生成部は、
前記リンクを、その長さを変えずに直線状に伸ばした直線リンクを生成し、
該直線リンクに対する前記道路標示データである直線道路標示データを生成し、
前記リンクの折れ線の折れ曲がり点に対応する箇所で、前記直線道路標示データを分割し、
該分割された直線道路標示データを、前記リンクに沿って配置することで、折れ線状の該リンクに対する道路標示データを生成する地図データ生成システム。
【請求項3】
請求項1または2記載の地図データ生成システムであって、
更に、前記道路ネットワークデータを参照し、所定のグループ条件を満たすリンクおよびノードをグループとして定義する道路ネットワークグループ化処理部を備え、
前記交差点領域設定部は、同一グループのリンク間に存在するノードを除外して、前記交差点領域を設定する地図データ生成システム。
【請求項4】
請求項1〜3いずれか記載の地図データ生成システムであって、
更に、横断歩道を描く処理対象となる対象リンクと、該対象リンクに交差する交差リンクとの角度に応じて定まる交差角度で、該対象リンクに交差する基準線を設定し、該基準線を一辺とする平行四辺形の領域内に横断歩道を描くための横断歩道データを生成する横断歩道処理部を備える地図データ生成システム。
【請求項5】
請求項1〜4いずれか記載の地図データ生成システムであって、
前記道路ネットワークデータのリンクには、該リンク内での車線数の増加を表す車線増加データが設定されており、
前記道路白線生成部は、
前記車線数が増加するリンクに対し、前記道路標示規定データベースに基づいて、該車線を増加して描くべき滞留区間の長さである必要滞留長と、該滞留区間に移行するためのすりつけ区間の長さであるすりつけ長とを求め、
該必要滞留長よりもすりつけ長を優先して短縮することで、該必要滞留長とすりつけ長の和が前記リンクの長さより小さくなるように、該必要滞留長およびすりつけ長を調節し、
該調節されたすりつけ長および必要滞留長に基づいて、前記滞留区間およびすりつけ区間を描くための道路標示データを生成する地図データ生成システム。
【請求項6】
請求項5記載の地図データ生成システムであって、
前記道路白線生成部は、
前記すりつけ区間および滞留区間が設定されたリンクにおいて、上下線のすりつけ区間間に生じた間隙に、前記道路標示規定データに基づいた形状で導流帯を描くための道路標示データを生成する地図データ生成システム。
【請求項7】
コンピュータによって、地図を描画するための地図データを生成する地図データ生成方法であって,
前記コンピュータは、
道路をノードおよびリンクで表した道路ネットワークデータを格納する道路ネットワークデータベースと、
道路を描画するためのポリゴンデータを格納する描画データベースと、
車両通行帯を区分するために道路上に描かれるべき道路白線の形状および位置を規定する道路標示規定データを格納する道路標示規定データベースとを備え、
該コンピュータが、前記ポリゴンデータに基づいて、前記道路ネットワークデータにおけるノード周りの交差点領域を設定する工程と、
該コンピュータが、前記道路および交差点領域の境界に基づいて、前記道路標示規定データにより定まる位置に、該道路標示規定データに規定された形状で、前記道路白線を描くための道路標示データを生成する工程とを備える地図データ生成方法。
【請求項8】
コンピュータによって地図を描画するための地図データを生成するためのコンピュータプログラムであって,
前記コンピュータは、
道路をノードおよびリンクで表した道路ネットワークデータを格納する道路ネットワークデータベースと、
道路を描画するためのポリゴンデータを格納する描画データベースと、
車両通行帯を区分するために道路上に描かれるべき道路白線の形状および位置を規定する道路標示規定データを格納する道路標示規定データベースとを備えており、
前記ポリゴンデータに基づいて、前記道路ネットワークデータにおけるノード周りの交差点領域を設定する機能と、
前記道路および交差点領域の境界に基づいて、前記道路標示規定データにより定まる位置に、該道路標示規定データに規定された形状で、前記道路白線を描くための道路標示データを生成する機能とを前記コンピュータによって実現させるためのコンピュータプログラム。
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図1】
【図16】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図1】
【図16】
【公開番号】特開2012−133132(P2012−133132A)
【公開日】平成24年7月12日(2012.7.12)
【国際特許分類】
【出願番号】特願2010−285291(P2010−285291)
【出願日】平成22年12月22日(2010.12.22)
【出願人】(502002186)株式会社ジオ技術研究所 (23)
【Fターム(参考)】
【公開日】平成24年7月12日(2012.7.12)
【国際特許分類】
【出願日】平成22年12月22日(2010.12.22)
【出願人】(502002186)株式会社ジオ技術研究所 (23)
【Fターム(参考)】
[ Back to top ]