地図データ生成システム
【課題】 3次元地図内で3次元モデルを容易に配置可能とする。
【解決手段】 コンピュータ画面上に、現地で撮影した撮影画像ビューV1と、地図を2次元で描いた2DビューV2、および3次元で描いた3DビューV3,V4を表示する。オペレータが3DビューV3内の点をマウス等で指定すると、その点が地表面であるなどの拘束条件を用いることによって、指定された点の座標値を3次元座標に変換する。この3次元座標に基づいて予め用意された3次元モデルを配置することにより、3次元地図表示内で撮影画像を見ながら、オペレータが自在に3次元モデルを配置可能なエディタを提供することができ、効率的に3次元地図データを生成することが可能となる。
【解決手段】 コンピュータ画面上に、現地で撮影した撮影画像ビューV1と、地図を2次元で描いた2DビューV2、および3次元で描いた3DビューV3,V4を表示する。オペレータが3DビューV3内の点をマウス等で指定すると、その点が地表面であるなどの拘束条件を用いることによって、指定された点の座標値を3次元座標に変換する。この3次元座標に基づいて予め用意された3次元モデルを配置することにより、3次元地図表示内で撮影画像を見ながら、オペレータが自在に3次元モデルを配置可能なエディタを提供することができ、効率的に3次元地図データを生成することが可能となる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、3次元地図を描画するための3次元地図データを生成する技術に関し、特に画面上で3次元モデルを容易に配置するためのエディタ技術に関する。
【背景技術】
【0002】
地図データを用いてコンピュータ等の画面上に地図を表示する電子地図の分野では、建物等の地物を3次元的に表示した3次元地図の活用が広まっている。3次元地図は、各建物等の3次元形状を表す3次元地図データを用いて描画される。3次元地図を活用するためには、この3次元地図データを軽い負荷で整備することが一つの課題となる。
特許文献1は、3次元地図データを生成する技術を開示する。この技術では、建物を撮影した画像データと、建物枠が描かれた2次元地図データとを用いて、建物ごとに3次元地図データを生成する。
特許文献2は、2次元地図データの家枠を鉛直方向に柱状に立ち上げる方法、および代表的な建物形状を表した既存の3次元モデルを地図の建物枠上に配置する方法によって3次元地図データを生成する技術を開示する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2003−6680号公報
【特許文献2】特開2008−83728号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、従来技術では、いずれの方法においても、3次元地図データを配置する座標値を正確に指定する必要があり、3次元地図データの生成負荷が、十分軽いとは言えなかった。
3次元地図では、リアルな3次元表示を実現するために、街路樹、信号機、各種標識など、必ずしも2次元の地図上は明確に表されていない地物も3次元地図データとして用意することが望まれる。従来技術では、かかる場合も、一つ一つの3次元モデルに緯度、経度などの平面座標値を与えていたため、座標値を入力しては、3次元地図を表示させて位置を確認し、座標値を修正するという作業を繰り返す必要があった。
本発明は、かかる課題に鑑み、既存の3次元モデルを3次元空間内で直感的に簡易に配置可能とし、3次元地図データの生成負荷を軽減するための技術を提供することを目的とする。
【課題を解決するための手段】
【0005】
本発明は、
3次元地図を描画するための3次元地図データを生成する地図データ生成システムとして構成することができ,
前記3次元地図データを格納する3次元地図データベースと、
前記3次元地図データに配置する地物を表す3次元モデルのデータを格納する3次元モデルデータベースと、
前記3次元地図データベースを用いて、前記3次元地図を表示する3次元表示部と、
前記3次元地図においてオペレータによって指定された点の該表示上の2次元座標を入力する座標入力部と、
前記3次元地図データを規定する3次元の座標値の少なくとも一つを拘束するよう予め設定された拘束条件に基づいて、前記2次元座標を、前記3次元の座標値に変換する座標変換部と、
前記変換された3次元の座標値に配置されるよう前記3次元モデルを前記3次元地図データに追加する3次元地図データ生成部とを備えるものとすることができる。
【0006】
本発明によれば、表示された3次元地図上でオペレータがいずれかの点を指定すると、その点の表示画面上の2次元座標を3次元座標値に変換することができる。従って、オペレータは画面上で容易に3次元モデルの配置を指定することができる。通常、表示画面上で指定された2次元の情報だけでは、3次元の座標値を特定することはできないが、本発明では、予め3次元の座標値の少なくとも一つを拘束する拘束条件が設定されているため、上述の座標変換が可能となるのである。こうすることによって、既存の3次元モデルの平面座標値を入力するまでなく3次元地図を見ながら直感的に3次元空間内で配置することができ、3次元地図データの生成負荷を軽減することができる。
【0007】
上述の拘束条件としては、例えば、指定された点が地表面であるとの条件としてもよい。
地表面であるとは、3次元座標のうち高さの座標値(Z座標)を0として扱うものとしてもよいし、地表面の3次元地図データを準備しておき、この地表面上の点が指定されているものとして扱ってもよい。配置対象となる3次元モデルは、地表面に設置される地物であることが多いため、かかる拘束条件を設定することにより、適正な座標変換を実現することができる。
拘束条件は、必ずしも地表面に限る必要はない。例えば、既に3次元地図データが生成されている建物の壁等を指定しておき、指定された点が当該壁等の表面であるとの拘束条件を設定してもよい。こうすることにより、例えば、壁面に設置される看板などの配置を容易に行うことが可能となる。
また拘束条件は、道路沿いなど、指定された点が特定の直線または曲線上にあるとの条件としてもよい。こうすることにより、道路沿いに設けられる中央分離帯やガードレールなどの3次元モデルを容易に配置することが可能となる。
【0008】
本発明の地図データ生成システムにおいては、
さらに、カメラで撮影して得られた撮影画像データと、該撮影時のカメラの位置、方向、画角とを含む撮影条件を記憶する撮影画像データベースと、
前記撮影画像データを用いて撮影画像を表示する撮影画像表示部とを備え、
前記3次元表示部は、前記撮影画像に対応する撮影条件に基づいて前記3次元地図を表示するものとしてもよい。
こうすることにより、撮影画像と3次元地図とを対応させて表示することができ、撮影画像を見ながら3次元モデルの配置をすることが可能となる。
【0009】
3次元モデルに、道路上に路面標示を描くための路面標示データが含まれる場合には、
拘束条件は、路面標示データに対しては、路面標示の道路面内での配置を規制する条件とすることもできる。
路面標示とは、道路上に描かれる道路白線、横断歩道、停止線、進行方向を示す矢印、速度制限標示などを指す。これらの路面標示は、例えば、横断歩道は交差点近傍に描かれ、交差点内には描かれないなど、道路面内での配置にも制限があるのが通常である。上述の態様によれば、拘束条件として、道路面内での配置を規制する条件が設定されているため、路面標示を容易かつ適正に配置することができる。
【0010】
路面標示データについては、
さらに、変換された座標値に従って、自動生成の対象となる3次元モデルを生成する際に基準となるべき地点または領域を特定し、予め設定された規則に従って、地点または領域を基準として3次元モデルを自動生成し、地図データベースに追加する自動生成部を備えるものとしてもよい。
路面標示の中には、道路白線や停止線のように、道路を指定するとある程度、規則に従って、自動生成可能なものも存在する。上述の態様によれば、基準となる地点または領域を指定するだけで、これらの標示を生成することが可能となるため、3次元地図データの生成負荷をさらに軽減することができる。
【0011】
本発明の地図データ生成システムにおいては、さらに、
2次元の画像を表示するためのポリゴンデータを記憶する2次元データベースと、
前記2次元データベースを用いて、前記3次元地図に重ねて2次元画像を描画する2次元表示部と、
前記座標入力部によって入力された座標に従って、前記ポリゴンデータを生成する2次元画像データ生成部とを備えるものとしてもよい。
3次元地図を活用する際には、経路案内用の矢印や、案内用の記号など、3次元内での配置になじまない表示が必要となる場合がある。上述の態様によれば、3次元地図と重ねて、通常の2次元画像を描画可能となるため、案内用の矢印や記号などの2次元画像を容易に表示させることが可能となる。
【0012】
本発明は、上述した各特徴を全て備えている必要はなく、適宜、組み合わせたり、一部を省略したりして構成することも可能である。
また、本発明は,地図データ生成システムとしての構成の他,コンピュータによって地図データを生成する地図データ生成方法として構成してもよいし,地図データの生成をコンピュータに実行させるためのコンピュータプログラムとして構成してもよい。また,かかるコンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体として構成してもよい。記録媒体は,CD−ROMやサーバなどのようにコンピュータと別体の媒体であってもよいし、コンピュータに内蔵のRAM、ROMやハードディスクなどの内部記憶装置であってもよい。
【図面の簡単な説明】
【0013】
【図1】地図データ生成システムの表示例を示す説明図である。
【図2】3次元モデルの配置例を示す説明図である。
【図3】路面標示の自動生成例を示す説明図である。
【図4】路面標示の配置例を示す説明図である。
【図5】二次元画像の描画例を示す説明図である。
【図6】ガイドライン表示例(1)を示す説明図である。
【図7】ガイドライン表示例(2)を示す説明図である。
【図8】ガイドライン表示例(3)を示す説明図である。
【図9】実施例における地図データ生成システムの構成を示す説明図である。
【図10】座標変換の拘束条件を示す説明図である。
【図11】3次元モデル配置処理のフローチャートである。
【図12】道路沿モデル生成処理のフローチャートである。
【図13】路面標示自動生成処理のフローチャートである。
【図14】路面標示の配置処理例を示す説明図である。
【図15】路面標示配置処理のフローチャートである。
【図16】ガイドラインデータ生成処理のフローチャートである。
【発明を実施するための形態】
【実施例1】
【0014】
実施例の地図データ生成システムは、コンピュータ上の画面を見ながらオペレータがマウス等のポインタで指示することで既存の3次元モデルを配置等して3次元地図データを生成するシステムである。実施例における地図データ生成システムは、3次元地図データを生成するためのエディタに相当する。以下の説明では、最初に、実施例における各種表示例を説明し、その後、実施例としての地図データ生成システムの構成およびソフトウェア処理内容について説明する。
【0015】
A 表示画面構成:
図1は地図データ生成システムの表示例を示す説明図である。コンピュータのディスプレイに表示される状態を示した。
図示する通り、地図データ生成システムの画面は、4つのビューV1〜V4で構成される。ビューV1は、現地を撮影した撮影画像を表示する。ビューV2(以下、「2Dビュー」と言うこともある)は、2次元地図を表示する。ビューV3は、3次元地図を表示する。この3次元地図は、透視投影の視線ベクトル方向および画角を、撮影画像のカメラ方向および画角と合わせてある。ビューV4は撮影画像とは異なる視線ベクトルおよび画角で3次元地図を表示する。ビューV3,V4を以下、3Dビューということもある。
本実施例では、4つのビューV1〜V4を別々のウィンドウで表示するようにしたため、その配置や表示/非表示の切り替えは自在に可能である。
ビューV2〜V4は、いずれの共通の3次元地図データを用い、視線ベクトルおよび画角を変えて透視投影したものである。2次元地図を表示するビューV2は、鉛直上方からの透視投影を表示しているに過ぎない。こうすることにより、共通のソフトウェア構成で、多様な表示を実現することができる。図1では、地図表示として、3つのビューV2〜V4を例示したが、これらの一部を省略してもよいし、視線ベクトルおよび画角を変えた更に多くのビューを用意しても良い。
【0016】
B 各種モデルの配置例:
図2は3次元モデルの配置例を示す説明図である。図2(a)は撮影画像を表示するビュー(図1のビューV1に相当)を示している。この撮影画像中にある消火栓OBJaのモデルを表す3次元地図データを生成する場合を例にとって説明する。
図2(b)は3次元地図を表示するビュー(図1のビューV3に相当)である。オペレータが、予め用意された3次元モデルの中から配置対象として「消火栓」を選択すると、消火栓モデルOBJbが、デフォルトの位置に表示される。この画面上で、消火栓モデルOBJbをマウスでドラッグしたり、これを配置すべき点をクリックしたりして、その配置場所を指定すると、図2(c)の消火栓モデルOBJcに示すように、オペレータの指示に従って、モデルが移動し、配置される。
通常は、図2(b)、図2(c)に示すような3次元地図表示では、画面上の一点を指定したところで、3次元空間の座標を特定することはできないが、本実施例では、後述する通り、座標の指定に拘束条件を設けることにより、画面上で指定された点に応じて3次元空間内の一点が定まるようにしているのである。処理内容については後述するが、このように画面内でマウスを利用して3次元モデルを自在に配置可能とすることにより、3次元モデルの配置による処理負荷を軽減することが可能となる。
【0017】
図3は路面標示の自動生成例を示す説明図である。3次元地図を表示するビュー(図1のビューV3に相当)を例示した。
道路面には、道路白線など種々の路面標示が描かれるが、これらの中には、予め設定した規則に従い道路形状に応じて自動的に生成可能なものもある。図の例では、道路ポリゴンPOLをオペレータが指定すると、道路の中央線L4を自動的に生成し、車線数に応じて、道路白線L1〜L3を生成する。また、道路ポリゴンと交差点との境界を基準として所定の位置に停止線L5を生成する。この他に横断歩道なども自動生成可能としてもよい。
図3では、図1のビューV3に相当する画面内で道路ポリゴンPOLを指定する例を示したが、二次元地図を表示するビュー(図1のビューV2)で道路ポリゴンを指定するようにしてもよい。
【0018】
図4は路面標示の配置例を示す説明図である。3次元地図を表示するビュー(図1のビューV3に相当)において、矢印Mの路面標示を配置する例を示した。
矢印Mは、道路上にあるから、オペレータがマウスで矢印Mをドラッグしたり、画面上の特定の点をクリックしたりすることによって矢印Mの位置を特定することは可能である。しかし、矢印Mは、道路上のどこにでも配置できるものではなく、車線の中央に配置されるものである。また停止線よりも手前に配置され、交差点内には配置されない。本実施例では、路面標示を配置すべき場所がこのように制限されていることを考慮し、路面標示に対しては、所定の規則に従って配置を規制するようにした。図の例では、矢印Mは、道路白線L2、L3の中心線CLに沿って、停止線L5の手前側でのみ配置可能となる。オペレータが、中心線CLからずれた位置をマウスで指定した場合であっても、道路面上という拘束条件だけでなく、中心線CL上という拘束条件を考慮するため、矢印Mは図中のA方向にしか移動しない。マウスの位置を、中心線CLの位置に対応づける方法については、後述する。
このように、路面標示Mの配置場所に規制を設けることにより、路面標示Mを中心線CL上に容易に位置づけることが可能となり、配置の負荷軽減を図ることができる。
【0019】
C ガイドライン描画例:
図2〜4では、3次元地図の表示内で3次元モデルや路面標示を自動生成したり配置したりする例を示した。3次元地図を活用する場合には、単に3次元モデルによる表示だけでなく、経路案内で用いる案内用の矢印(以下、「ガイドライン」という)や、案内用の記号などを表示することが好ましい。これらのガイドラインや記号などは、二次元の図形となるため、3次元モデルにはなじまないものである。本実施例では、以下に示す通り、3次元表示とは別に、これらの二次元の画像を表示するためのレイヤを設けることによって、ガイドライン等を容易に表示可能としている。
【0020】
図5は二次元画像の描画例を示す説明図である。3次元地図の表示レイヤLA1(図1のビューV3に相当)の上に、二次元用のレイヤLA2を用意する。二次元用のレイヤLA2には、図示するようにガイドラインを通常の2次元のポリゴンとして描画する。これらのレイヤLA1、LA2を重ねて表示することによって、3次元地図上にガイドラインを標示した画像IMGを生成することができる。
こうすることによって、ガイドライン等の二次元画像を、容易かつ見栄え良く表示することが可能となる。
【0021】
図6はガイドライン表示例(1)を示す説明図である。図6(a)は、3次元空間内でガイドラインGLa1に相当するポリゴンデータを設定し、3次元表示させたものである。ガイドラインGLa1が曲がる部分や先端の矢印部分(図中のA1領域)で、形状が歪んでいることが分かる。
図6(b)は、二次元画像の表示レイヤ上で、ガイドラインGLb1のポリゴンを生成した例である。ガイドラインのポリゴンを二次元画像として用意すれば済むため、このように容易に滑らかな曲線を描くことができ、先端の矢印部分も違和感のない形状とすることができる。
図7はガイドライン表示例(2)を示す説明図である。図7(a)は3次元空間内でガイドラインGLa2を設定したものである。領域A2部分で形状が歪んでいることが分かる。これに対し、二次元画像の表示レイヤを用いれば、図7(b)のガイドラインGLb2のように滑らかな形状を実現することができる。
図8はガイドライン表示例(3)を示す説明図である。図8(a)は3次元空間内でガイドラインGLa3を設定したものである。領域A3部分で形状が歪んでいることが分かる。これに対し、二次元画像の表示レイヤを用いれば、図8(b)のガイドラインGLb3のように滑らかな形状を実現することができる。
【0022】
D 地図データシステムの構成:
図2〜8で示した種々の表示および3次元モデルの自動生成、配置を実現するためのシステム構成等について,以下、説明する。
図9は実施例における地図データ生成システムの構成を示す説明図である。実施例としての地図データ生成システム100は、コンピュータに、図示する種々の機能を実現するためのコンピュータプログラムをインストールすることによって実現できる。
【0023】
地図データ生成システム100は、4種類のデータベースを備えている。
撮影画像データベース110は、現地をディジタルカメラ等で撮影した静止画(以下、「撮影画像」という)の画像データ(以下、「撮影画像データ」)を格納するデータベースである。動画像から各場面を切り出し、静止画として表示可能なデータベースとして構成してもよい。撮影画像は、それぞれカメラの撮影条件、即ち、撮影方向(方位および仰ぎ角)と画角と対応づけて格納されている。
ガイドラインデータベース112は、図6〜8で示したガイドラインのデータを格納するデータベースである。先に説明した通り、ガイドラインは、3次元地図上に重ねて描かれる2次元画像であるから、ガイドラインのデータは、2次元のポリゴンデータ(以下、「ガイドラインデータ」ということもある)として格納されている。
3次元地図データベース114は、3次元地図表示を実現するための3次元地図データを格納している。地表面を表す3次元地図データとともに、道路、建物、路面標示その他の地物を表す3次元地図データを格納する。地物の3次元地図データは、例えば、それぞれ3次元的に形状を規定するポリゴンデータと、地物の位置を表す座標値の形式で記憶させることができ、さらに地物の属性データを関連づけて記憶してもよい。3次元地図データベース114には、標識、信号機、ありふれた建物のように既存の3次元モデルを配置することで生成されるデータと、地物固有のポリゴンデータとが含まれる。3次元モデルを利用して生成されるデータについては、地物ごとにポリゴンデータを格納する形式に変えて、3次元モデルへのリンクを格納する方法をとってもよい。
3次元モデルデータベース116は、上述した汎用的な地物の3次元形状を表す3次元モデルを格納する。また、本実施例では、図3で説明したように、一部の路面標示については自動生成することができるから、3次元モデルデータベース116は、自動生成の対象となる路面標示について、自動生成するための規則も格納している。
これらのデータベースは、コンピュータ自体に格納してもよいし、外部記憶媒体やサーバから供給するようにしてもよい。
【0024】
以下、コンピュータプログラムによって実現される各機能ブロックについて説明する。
撮影画像表示部102は、撮影画像データベース110に格納された撮影画像データを用いて、撮影画像ビュー(図1のビューV1)を表示する。
3次元表示部104は、3次元地図データベース114に格納された3次元地図データを用いて3次元および2次元の地図(図1のビューV2〜V4)をそれぞれ表示する。2DビューV2は、3次元地図データを用いて、視線ベクトルを鉛直下方に設定した状態で透視投影することによって描画することができる。3次元表示部104は、撮影画像データに対応づけて格納された撮影条件に合わせた視線ベクトルおよび画角でビューV3を表示する。こうすることにより、ビューV3に、撮影画像ビューV1に対応した3次元地図を表示することができる。
2次元表示部106は、ガイドラインデータベース112に格納されたガイドラインデータを2次元画像として表示する。この2次元画像を描画したレイヤが、3Dビュ−V3に重畳して表示されることによって、図6〜8に示したガイドラインの画像が生成される。
【0025】
地図データ生成システム100では、オペレータは、ビューV3,V2などの画面上で、マウス等のポインタによってドラッグ、クリック等の操作を行い、3次元モデルの配置や路面標示の生成などを行う。座標入力部140は、上述の過程で、オペレータがマウス等のポインタで指定した点の座標を入力する。この座標値は、画面内で定義される「表示上の2次元座標」となる。
ガイドラインは単に2次元のポリゴンであるから、ガイドラインを生成する過程では、オペレータが指定した表示上の2次元座標を、そのままポリゴンの形状を定義するデータ入力として用いることができる。ガイドラインデータ生成部120は、このように座標入力部140で入力された座標値を用いて、ガイドラインのポリゴンを生成する機能を奏する。
一方、3次元モデルの配置等を指示する場合には、座標入力部140で入力された表示上の2次元座標だけでは、3次元モデルを配置する3次元座標を定義することはできない。そこで、座標変換部142は、予め用意された所定の拘束条件を適用することによって、表示上の2次元座標を、3次元座標値に変換する。
3次元地図データ生成部130は、変換された3次元座標に基づいて、以下の機能ブロックによって、3次元地図データを生成する。
3次元モデル配置部132は、3次元モデルデータベース116に格納された3次元モデルを、変換された3次元座標に基づいて3次元空間内で配置する。
道路沿モデル生成部134は、変換された3次元座標に基づいてオペレータが指定した道路を特定し、この道路に沿って設置される中央分離帯やガードレールなどの地物のデータを生成する。
路面標示生成部136は、オペレータが指定した道路に対して、路面標示を自動生成する(図3参照)。
路面標示配置部138は、オペレータの指示に応じて、自動生成の対象となっていない路面標示を配置する(図4参照)。
以上の3次元地図データ生成部130で生成される過程のデータは、3次元地図データベース114に反映され、3DビューV3,V4および2DビューV2に反映される。従って、オペレータは、これらのビュー2〜4を、撮影画像ビューV1と対比して見ながら、3次元地図データを生成することができる。
【0026】
E 3次元モデル配置処理:
次に、地図データ生成装置100の各機能を実現するための処理内容について説明する。まず、実施例における座標変換の考え方を示した後、各処理内容を説明する。
図10は座標変換の拘束条件を示す説明図である。3次元画像は、視点EPから2次元平面のビューVWに透視した状態で描かれる。視点EPと点Paを結ぶ直線LA上の点は全てビューVW内の点Paに透視されることになるから、ビューVW内で点Paが指定されたとしても、この点に基づいて、ただちに3次元空間内の一点を特定することはできない。
これに対し、例えば、指定された点は地表面上の点であるという拘束条件を与える場合を考える。ここでは、地表面を3次元座標の高さ(Z座標値)0の平面αであるとする。かかる拘束条件を考慮すると、点Paは、直線LA上かつ平面α上の点ということになるから、3次元空間内の点PAと特定することができ、その座標値を(XA、YA,0)と求めることができる。
同様に、地表面αだけではなく、3次元空間内の特定の平面β上の点であるという拘束条件を用いることもできる。この場合、ビューVW内で点Pbが指定されると、視点EPと点Pbとを結ぶ直線LBと平面βとの交点PBと特定することができ、その座標値(XB、YB,ZB)を特定することができる。
拘束条件は、このように平面で与えるだけでなく、直線で与えるようにしてもよい。例えば、地表面α内の直線L上の点であるとの拘束条件を与える場合を考える。かかる場合には、拘束条件に対応する直線Lを含み、地表面αに垂直な平面βを考え、平面β内で指定された点Pbに対応する点PBを求めることができる。そして、指定された点は、この点PBから直線Lに垂線を下ろした点PB1(XB,YB,0)と特定することができる。点PB1は、直線LB上の点ではないから、ビューVW内で指定された点と、3次元空間内で特定される点との間にはずれが生じることになる。これは、上述の拘束条件は、指定された位置は一次元の自由度しか有さず、実質的には3次元中の2次元の座標値を拘束することによるものである。しかしながら、かかる扱いをすることにより、ビューVW上で直線Lからずれた点を指定した場合でも、直線L上の点に変換されるため、点を指示する際のオペレータの負担を軽減することができる。
直線Lを拘束条件とする他、平面α上の点PCに対して高さを指定するという拘束条件とすることもできる。この場合には、点PCを通って、平面αに垂直な平面βを想定し、指定された点Pbに対応する平面β上の点PBを特定する。そして、この点PBの高さ値ZBを用いて、点PCの直上の点PC1(XC、YC,ZB)が指定されていると特定することができる。
以下で座標変換を言うときには、これらのうちのいずれかの変換方法を意味する。
【0027】
図11は3次元モデル配置処理のフローチャートである。コンピュータのCPUが実行する図2に示した処理であり、図9の3次元モデル配置部132の処理内容に相当する。
処理を開始すると、CPUは、オペレータの指示に従って、配置対象となる3次元モデル(以下、3次元モデルデータベース116に格納された3次元モデルから変形される可能性もあるという意味も含めて、「オブジェクト」ということもある)を選択し(ステップS10)、オペレータがマウス等で指定した表示上の2次元座標(x、y)を入力する(ステップS11)。この2次元座標値に応じて3次元モデルを配置する方法は、入力モードによって異なる。
位置指定の入力モードの場合は(ステップS12)、高さ=0との拘束条件によって座標変換を行う(ステップS13)。これは図10で示した平面α上の点であるとの拘束条件での座標変換に相当する。この座標変換によって2次元座標(x、y)は、3次元座標(X,Y,0)に変換される。ここでは、地表面という拘束条件という意味で、高さ=0という拘束条件を例示したが、地表面のポリゴンデータが用意されている場合には、図10における平面αの代わりに地表面のポリゴンデータを用いることによって、地表面との交点という拘束条件とすることもできる。
CPUは、得られた3次元座標(X,Y,0)に基づいて、オブジェクトを配置し(ステップS14)、3次元地図データベースを更新する(ステップS17)。この更新によって、3Dビューの画面も変更されることになる。
【0028】
一方、位置固定の入力モードの場合は(ステップS12)、オブジェクトの位置(X,Y)を用いて座標変換を行う(ステップS15)。これは図10で示した平面α上の点PCに対して高さを与えるとの拘束条件で点PC1を求めるとの座標変換に相当する。この座標変換によって2次元座標(x、y)は、3次元座標(X,Y,Z)に変換される。
CPUは、得られた3次元座標(X,Y,Z)に基づいて、オブジェクトの高さを修正し(ステップS16)、3次元地図データベースを更新する(ステップS17)。指定された点に応じてオブジェクトを高さ方向にだけ拡大縮小するようにしてもよいし、オブジェクトを相似変化させるようにしてもよい。この更新によって、3Dビューの画面も変更されることになる。
【0029】
オブジェクトの位置または高さの修正が必要な場合は(ステップS18)、オペレータが新たな点を指定すれば、ステップS11以降の各処理によって、3次元空間内で自在にオブジェクトの位置または高さを変更することができる。
【0030】
図12は道路沿モデル生成処理のフローチャートである。コンピュータのCPUが実行する処理であり、図9の3次元モデル配置部132の処理内容に相当する。
処理を開始すると、CPUは、オペレータの指示に従って、生成対象となるオブジェクトを選択する(ステップS30)。図の右側に、この処理で生成対象となるオブジェクトを例示した。ガードレールGや中央分離帯Cなど、道路RDに沿って配置されるオブジェクトが対象となる。それぞれ複数種類のタイプの中から選択可能としてもよい。
CPUは、オペレータがマウス等で指定した表示上の2次元座標(x、y)を入力し、これに基づいてオブジェクトを配置すべき道路ポリゴンを選択する(ステップS31)。2次元座標(x、y)が地表面であるとの拘束条件に基づいて3次元座標に変換して、指定された点を含む道路ポリゴンを特定すればよい。
次に、CPUは、道路ポリゴン、オブジェクトに基づきオブジェクトの生成ラインを設定する(ステップS32)。図中に設定方法を例示した。道路ポリゴンRDPが指定されている場合を考える。まず、オブジェクトは道路に沿って生成されるから、道路ポリゴンRDPを構成する点P1〜P4のうち道路の進行方向に沿う点列P1−P2およびP3−P4を特定する。中央分離帯Cが選択されている場合には、この点列の中央に位置する線CLを生成ラインとする。ガードレールGが選択されている場合には、点列を所定の距離だけ移動させた線GLを生成ラインとする。
CPUは、次に、オペレータが指定する表示上の2次元座標(x、y)を入力し(ステップS33)、オブジェクト生成ラインを用いて座標変換を行う(ステップS34)。これは、オブジェクト生成ライン上の点に高さを与える指定であるものとして、図10で示した平面α上の点PCに対して高さを与えるとの拘束条件で点PC1を求めるとの座標変換に相当する。この座標変換によって2次元座標(x、y)は、3次元座標(X,Y,Z)に変換される。
CPUは、得られた3次元座標(X,Y,Z)に基づいて、オブジェクトの高さを設定し(ステップS35)、3次元地図データベースを更新する(ステップS36)。この更新によって、3Dビューの画面も変更されることになる。
オブジェクトの高さの修正が必要な場合は(ステップS37)、オペレータが新たな点を指定すれば、ステップS33以降の各処理によって、3次元空間内で自在にオブジェクトの高さを変更することができる。
【0031】
F 路面標示自動生成処理:
図13は路面標示自動生成処理のフローチャートである。コンピュータのCPUが実行する図3に示した処理であり、図9の路面標示生成部136の処理内容に相当する。
処理を開始すると、CPUは、オペレータの指示に従って、生成対象となるオブジェクトを選択する(ステップS50)。本実施例では、道路白線(中央線および車線帯の区分線)、および停止線などを生成対象とする。
次に、CPUは、オペレータがマウス等で指定した表示上の2次元座標に基づいてオブジェクトを配置すべき道路ポリゴンを選択する(ステップS51)。2次元座標が地表面であるとの拘束条件に基づいて3次元座標に変換して、指定された点を含む道路ポリゴンを特定すればよい。
CPUは、指定された道路ポリゴンに対して、予め設定された規則に従ってオブジェクトを自動生成する(ステップS52)。図中に道路白線の生成例を示した。まず、指定された道路の幅Wに対して半分の幅W/2の位置に、中央線LL1を生成することができる。また、中央線LL1から、車線数に応じて、予め指定された車線帯幅WLごとに区分線LL2,LL3を引く。停止線等も予め定められた規則に従って自動生成することができる。
【0032】
本実施例では、自動生成されたオブジェクトは、オペレータの指示に従って、修正可能とした。
オブジェクトを修正する場合には(ステップS53)、CPUは、オペレータがマウス等で指定した表示上の2次元座標(x、y)を入力し(ステップS54)、高さ=0との拘束条件によって座標変換を行う(ステップS55)。なお、オペレータは2Dビューで修正を指示してもよい。この場合も原理的には、座標変換は3Dビューで指定された場合と同様の方法で行うことになるが、アルゴリズム上は、2Dビュー内で得られた2次元座標(x、y)を原点移動させるだけで3次元座標に変換することが可能である。
CPUは、得られた3次元座標(X,Y,0)に最も近いオブジェクトを特定し、そのオブジェクトの端点を座標に従って修正する(ステップS56)。図中に修正例を示した。元来端点E1まで描かれていた道路白線LLに対し、(X,Y、0)なる点が指定されたとすると、この点から道路白線LLに下ろした垂線の足E2までオブジェクトの長さが修正される。この状態は、3次元地図データに反映され、3Dビュー、2Dビューなどの画面で確認することができる。
【0033】
G 路面標示配置処理:
図14は路面標示の配置処理例を示す説明図である。
図14(a)は路面上に矢印を配置する例を示した。まずオペレータは、路面標示の配置対象となる道路ポリゴンSPLaを指定する。道路ポリゴンSPLa上には、道路白線RL1、RL2が引かれているものとする。オペレータが、道路白線RL1、RL2内の点PP1を指定した場合を考える。オペレータは、矢印M1を、道路ポリゴンSPLaのうち道路白線RL1、RL2に囲まれた領域ARL内に配置することを意図していると考えられ、矢印は車線の中央に配置されることを考えると、特に、道路白線RL1、RL2の中央に当たる直線CRL上に配置することが指示されていると考えられる。そこで、地図データ生成システムは、指定された点PP1を直線CRL上に垂直に投影した点PC1を特定し、この点PC1に元ついて矢印M1を配置する。道路SPLaが指定された状態で、オペレータが領域ARL外を指定した場合は、直線CRLと道路ポリゴンSPLaとの交点PC2が指定されたものとして矢印M2を配置する。
【0034】
路面標示配置処理は、道路の中央線や車線区分線を配置対象としてもよい。この処理は、図13で説明した路面標示自動生成処理によって適正な道路白線が生成されなかった場合などに利用することができる。
図14(b)は、道路ポリゴンSPLbが指定された場合に、道路白線を配置する処理例を示している。この例では、オペレータが指定した点が、いずれの道路白線に対応するものかを特定する必要がある。そこで、道路ポリゴンSPLb内をいくつかの領域に分け、領域ごとに道路白線に対応づけるものとした。例えば、中央線RL3は、道路のほぼ中央に引かれるものである。従って、道路幅Wの半分W/2の位置を中心として、車線幅WLの領域ARL3を設定した。領域ARL3内の点PP3が指定された場合には、オペレータは中央線RL3の修正などを指示しているものとして処理を行う。区分線RL4の場合には、中央線RL3の領域ARL3に隣接する車線幅WLの領域ARL4を設定し、この中の点PP4が指定された場合には、区分線RL4の修正などを指示しているものとして処理を行う。
このように指定された道路ポリゴン、オブジェクトの種類、指定された点に応じて、拘束条件を設けて処理を行うことにより、道路ポリゴンからはみだしたり、中央から偏った位置に配置されるなどの弊害を回避して、路面標示を配置することができる。
【0035】
図15は路面標示配置処理のフローチャートである。コンピュータのCPUが実行する図4に示した処理であり、図9の路面標示配置部138の処理内容に相当する。
処理を開始すると、CPUは、オペレータの指示に従って、生成対象となるオブジェクトを選択する(ステップS70)。本実施例では、路面に標示される矢印、速度規制の数字などを配置対象とする。
CPUは、オペレータがマウス等で指定した表示上の2次元座標に基づいてオブジェクトを配置すべき道路ポリゴンを選択する(ステップS71)。2次元座標が地表面であるとの拘束条件に基づいて3次元座標に変換して、指定された点を含む道路ポリゴンを特定すればよい。
【0036】
次に、CPUは、オペレータがマウス等で指定した表示上の2次元座標(x、y)を入力し(ステップS72)、高さ=0との拘束条件によって座標変換を行う(ステップS73)。なお、オペレータは2Dビューで座標を指示してもよい。
CPUは、オペレータに指定された道路ポリゴン、指定された座標値、およびオブジェクトの種類に基づいて拘束条件を設定し(ステップS74)、この拘束条件に基づいて座標を修正する(ステップS75)。例えば、図14(a)の例であれば、指定された点を直線CRLに投影した点に修正することになる。図14(b)の例であれば、指定された点を、その位置に応じて、道路白線RL3またはRL4上の点に修正することになる。
CPUは、修正後の座標に基づいてオブジェクトを配置し(ステップS76)、3次元地図データベースを更新する(ステップS77)。この更新によって、3Dビューの画面も変更されることになる。修正が必要な場合には(ステップS78)、オペレータが新たな点を指定すれば、ステップS72以降の各処理によって、オブジェクトの配置および形状を修正することができる。
【0037】
H ガイドラインデータ生成処理:
図16はガイドラインデータ生成処理のフローチャートである。コンピュータのCPUが実行する図5〜8に示した処理であり、図9のガイドラインデータ生成部120の処理内容に相当する。
処理を開始すると、オペレータはガイドラインの生成対象となる経路を選択する(ステップS90)。経路探索などを実行して経路が得られている場合には、経路探索結果を利用してもよいし、そうでない場合は、経路となるべきリンクを順次指定する方法をとってもよい。
CPUは、3次元空間内で指定された経路に対応するリンクを滑らかに結ぶ曲線を生成する(ステップS91)。図中に処理例を示した。リンクL1〜L4、ノードN1、N2からなる道路において、リンクL1、L3、L4を通る経路が指定されている場合、これらを滑らかに結ぶ曲線CGLが生成される。かかる曲線は、例えば、スプラインとすることができる。
CPUは、こうして生成された曲線を用いて3Dビューを表示する(ステップS92)。これによって図6(a)、図7(a)、図8(a)に示した状態の画像を表示することができる。
【0038】
オペレータは、この画像中に示された曲線を下絵としてガイドラインを生成することができる。CPUは、オペレータが画面上で指定した点の二次元座標を入力し(ステップS93)、これに従って、ガイドラインの形状を決めるポリゴンデータを生成する(ステップS94)。この処理では、ガイドラインは2次元ポリゴンとして形成されるため、画面上で指定された二次元座標を座標変換する必要はない。
ガイドラインのポリゴンデータの生成が完了すると(ステップS95)、CPUは、このポリゴンを格納することでガイドラインデータベースを更新する(ステップS96)。下絵として用いた曲線のデータは、この処理と合わせて削除すればよい。これらの更新によって、3Dビューの画面には、図6(b)、図7(b)、図8(b)に相当する画像が表示される。
図16の処理例では、3次元空間で設定した曲線を下絵として用いる例を示したが、ステップS90〜92を省略し、下絵なしでガイドラインを生成するようにしてもよい。また、ガイドラインの生成と合わせて、有料道路や速度規制などを示すマークなどを表すデータを生成するようにしてもよい。
【0039】
以上で説明した実施例の地図データ生成システムによれば、3Dビュー、2Dビュー(図1参照)内でオペレータがマウス等でドラッグやクリック等の操作を行うことにより、3次元モデルの配置、修正、路面標示の自動生成、配置等を直感的に容易に行うエディタを提供することができる。従って、3次元地図データの生成負荷を軽減することができる。
また、3次元地図表示に重ねてガイドラインを表示することができ、このガイドライン用のデータは2次元画像として生成することができる。従って、3次元空間内で生成する場合に比べて滑らかで見やすいガイドラインを容易に作成することができる利点もある。
【0040】
以上、本発明の実施例について説明したが、上述の実施例で説明した種々の処理は、必ずしも全てを備えている必要はなく、一部を省略したり他の処理と置換したりしても構わない。また、上述の例において、ソフトウェア的に実行されている処理は、ハードウェア的に実行してもよいし、その逆も可能である。
【産業上の利用可能性】
【0041】
本発明は,3次元地図データの生成に利用可能である。
【符号の説明】
【0042】
100…地図データ生成システム
102…撮影画像表示部
104…3次元表示部
106…2次元表示部
110…撮影画像データベース
112…ガイドラインデータベース
114…3次元地図データベース
116…3次元モデルデータベース
120…ガイドラインデータ生成部
130…3次元地図データ生成部
132…3次元モデル配置部
134…道路沿モデル生成部
136…路面標示生成部
138…路面標示配置部
140…座標入力部
142…座標変換部
【技術分野】
【0001】
本発明は、3次元地図を描画するための3次元地図データを生成する技術に関し、特に画面上で3次元モデルを容易に配置するためのエディタ技術に関する。
【背景技術】
【0002】
地図データを用いてコンピュータ等の画面上に地図を表示する電子地図の分野では、建物等の地物を3次元的に表示した3次元地図の活用が広まっている。3次元地図は、各建物等の3次元形状を表す3次元地図データを用いて描画される。3次元地図を活用するためには、この3次元地図データを軽い負荷で整備することが一つの課題となる。
特許文献1は、3次元地図データを生成する技術を開示する。この技術では、建物を撮影した画像データと、建物枠が描かれた2次元地図データとを用いて、建物ごとに3次元地図データを生成する。
特許文献2は、2次元地図データの家枠を鉛直方向に柱状に立ち上げる方法、および代表的な建物形状を表した既存の3次元モデルを地図の建物枠上に配置する方法によって3次元地図データを生成する技術を開示する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2003−6680号公報
【特許文献2】特開2008−83728号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、従来技術では、いずれの方法においても、3次元地図データを配置する座標値を正確に指定する必要があり、3次元地図データの生成負荷が、十分軽いとは言えなかった。
3次元地図では、リアルな3次元表示を実現するために、街路樹、信号機、各種標識など、必ずしも2次元の地図上は明確に表されていない地物も3次元地図データとして用意することが望まれる。従来技術では、かかる場合も、一つ一つの3次元モデルに緯度、経度などの平面座標値を与えていたため、座標値を入力しては、3次元地図を表示させて位置を確認し、座標値を修正するという作業を繰り返す必要があった。
本発明は、かかる課題に鑑み、既存の3次元モデルを3次元空間内で直感的に簡易に配置可能とし、3次元地図データの生成負荷を軽減するための技術を提供することを目的とする。
【課題を解決するための手段】
【0005】
本発明は、
3次元地図を描画するための3次元地図データを生成する地図データ生成システムとして構成することができ,
前記3次元地図データを格納する3次元地図データベースと、
前記3次元地図データに配置する地物を表す3次元モデルのデータを格納する3次元モデルデータベースと、
前記3次元地図データベースを用いて、前記3次元地図を表示する3次元表示部と、
前記3次元地図においてオペレータによって指定された点の該表示上の2次元座標を入力する座標入力部と、
前記3次元地図データを規定する3次元の座標値の少なくとも一つを拘束するよう予め設定された拘束条件に基づいて、前記2次元座標を、前記3次元の座標値に変換する座標変換部と、
前記変換された3次元の座標値に配置されるよう前記3次元モデルを前記3次元地図データに追加する3次元地図データ生成部とを備えるものとすることができる。
【0006】
本発明によれば、表示された3次元地図上でオペレータがいずれかの点を指定すると、その点の表示画面上の2次元座標を3次元座標値に変換することができる。従って、オペレータは画面上で容易に3次元モデルの配置を指定することができる。通常、表示画面上で指定された2次元の情報だけでは、3次元の座標値を特定することはできないが、本発明では、予め3次元の座標値の少なくとも一つを拘束する拘束条件が設定されているため、上述の座標変換が可能となるのである。こうすることによって、既存の3次元モデルの平面座標値を入力するまでなく3次元地図を見ながら直感的に3次元空間内で配置することができ、3次元地図データの生成負荷を軽減することができる。
【0007】
上述の拘束条件としては、例えば、指定された点が地表面であるとの条件としてもよい。
地表面であるとは、3次元座標のうち高さの座標値(Z座標)を0として扱うものとしてもよいし、地表面の3次元地図データを準備しておき、この地表面上の点が指定されているものとして扱ってもよい。配置対象となる3次元モデルは、地表面に設置される地物であることが多いため、かかる拘束条件を設定することにより、適正な座標変換を実現することができる。
拘束条件は、必ずしも地表面に限る必要はない。例えば、既に3次元地図データが生成されている建物の壁等を指定しておき、指定された点が当該壁等の表面であるとの拘束条件を設定してもよい。こうすることにより、例えば、壁面に設置される看板などの配置を容易に行うことが可能となる。
また拘束条件は、道路沿いなど、指定された点が特定の直線または曲線上にあるとの条件としてもよい。こうすることにより、道路沿いに設けられる中央分離帯やガードレールなどの3次元モデルを容易に配置することが可能となる。
【0008】
本発明の地図データ生成システムにおいては、
さらに、カメラで撮影して得られた撮影画像データと、該撮影時のカメラの位置、方向、画角とを含む撮影条件を記憶する撮影画像データベースと、
前記撮影画像データを用いて撮影画像を表示する撮影画像表示部とを備え、
前記3次元表示部は、前記撮影画像に対応する撮影条件に基づいて前記3次元地図を表示するものとしてもよい。
こうすることにより、撮影画像と3次元地図とを対応させて表示することができ、撮影画像を見ながら3次元モデルの配置をすることが可能となる。
【0009】
3次元モデルに、道路上に路面標示を描くための路面標示データが含まれる場合には、
拘束条件は、路面標示データに対しては、路面標示の道路面内での配置を規制する条件とすることもできる。
路面標示とは、道路上に描かれる道路白線、横断歩道、停止線、進行方向を示す矢印、速度制限標示などを指す。これらの路面標示は、例えば、横断歩道は交差点近傍に描かれ、交差点内には描かれないなど、道路面内での配置にも制限があるのが通常である。上述の態様によれば、拘束条件として、道路面内での配置を規制する条件が設定されているため、路面標示を容易かつ適正に配置することができる。
【0010】
路面標示データについては、
さらに、変換された座標値に従って、自動生成の対象となる3次元モデルを生成する際に基準となるべき地点または領域を特定し、予め設定された規則に従って、地点または領域を基準として3次元モデルを自動生成し、地図データベースに追加する自動生成部を備えるものとしてもよい。
路面標示の中には、道路白線や停止線のように、道路を指定するとある程度、規則に従って、自動生成可能なものも存在する。上述の態様によれば、基準となる地点または領域を指定するだけで、これらの標示を生成することが可能となるため、3次元地図データの生成負荷をさらに軽減することができる。
【0011】
本発明の地図データ生成システムにおいては、さらに、
2次元の画像を表示するためのポリゴンデータを記憶する2次元データベースと、
前記2次元データベースを用いて、前記3次元地図に重ねて2次元画像を描画する2次元表示部と、
前記座標入力部によって入力された座標に従って、前記ポリゴンデータを生成する2次元画像データ生成部とを備えるものとしてもよい。
3次元地図を活用する際には、経路案内用の矢印や、案内用の記号など、3次元内での配置になじまない表示が必要となる場合がある。上述の態様によれば、3次元地図と重ねて、通常の2次元画像を描画可能となるため、案内用の矢印や記号などの2次元画像を容易に表示させることが可能となる。
【0012】
本発明は、上述した各特徴を全て備えている必要はなく、適宜、組み合わせたり、一部を省略したりして構成することも可能である。
また、本発明は,地図データ生成システムとしての構成の他,コンピュータによって地図データを生成する地図データ生成方法として構成してもよいし,地図データの生成をコンピュータに実行させるためのコンピュータプログラムとして構成してもよい。また,かかるコンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体として構成してもよい。記録媒体は,CD−ROMやサーバなどのようにコンピュータと別体の媒体であってもよいし、コンピュータに内蔵のRAM、ROMやハードディスクなどの内部記憶装置であってもよい。
【図面の簡単な説明】
【0013】
【図1】地図データ生成システムの表示例を示す説明図である。
【図2】3次元モデルの配置例を示す説明図である。
【図3】路面標示の自動生成例を示す説明図である。
【図4】路面標示の配置例を示す説明図である。
【図5】二次元画像の描画例を示す説明図である。
【図6】ガイドライン表示例(1)を示す説明図である。
【図7】ガイドライン表示例(2)を示す説明図である。
【図8】ガイドライン表示例(3)を示す説明図である。
【図9】実施例における地図データ生成システムの構成を示す説明図である。
【図10】座標変換の拘束条件を示す説明図である。
【図11】3次元モデル配置処理のフローチャートである。
【図12】道路沿モデル生成処理のフローチャートである。
【図13】路面標示自動生成処理のフローチャートである。
【図14】路面標示の配置処理例を示す説明図である。
【図15】路面標示配置処理のフローチャートである。
【図16】ガイドラインデータ生成処理のフローチャートである。
【発明を実施するための形態】
【実施例1】
【0014】
実施例の地図データ生成システムは、コンピュータ上の画面を見ながらオペレータがマウス等のポインタで指示することで既存の3次元モデルを配置等して3次元地図データを生成するシステムである。実施例における地図データ生成システムは、3次元地図データを生成するためのエディタに相当する。以下の説明では、最初に、実施例における各種表示例を説明し、その後、実施例としての地図データ生成システムの構成およびソフトウェア処理内容について説明する。
【0015】
A 表示画面構成:
図1は地図データ生成システムの表示例を示す説明図である。コンピュータのディスプレイに表示される状態を示した。
図示する通り、地図データ生成システムの画面は、4つのビューV1〜V4で構成される。ビューV1は、現地を撮影した撮影画像を表示する。ビューV2(以下、「2Dビュー」と言うこともある)は、2次元地図を表示する。ビューV3は、3次元地図を表示する。この3次元地図は、透視投影の視線ベクトル方向および画角を、撮影画像のカメラ方向および画角と合わせてある。ビューV4は撮影画像とは異なる視線ベクトルおよび画角で3次元地図を表示する。ビューV3,V4を以下、3Dビューということもある。
本実施例では、4つのビューV1〜V4を別々のウィンドウで表示するようにしたため、その配置や表示/非表示の切り替えは自在に可能である。
ビューV2〜V4は、いずれの共通の3次元地図データを用い、視線ベクトルおよび画角を変えて透視投影したものである。2次元地図を表示するビューV2は、鉛直上方からの透視投影を表示しているに過ぎない。こうすることにより、共通のソフトウェア構成で、多様な表示を実現することができる。図1では、地図表示として、3つのビューV2〜V4を例示したが、これらの一部を省略してもよいし、視線ベクトルおよび画角を変えた更に多くのビューを用意しても良い。
【0016】
B 各種モデルの配置例:
図2は3次元モデルの配置例を示す説明図である。図2(a)は撮影画像を表示するビュー(図1のビューV1に相当)を示している。この撮影画像中にある消火栓OBJaのモデルを表す3次元地図データを生成する場合を例にとって説明する。
図2(b)は3次元地図を表示するビュー(図1のビューV3に相当)である。オペレータが、予め用意された3次元モデルの中から配置対象として「消火栓」を選択すると、消火栓モデルOBJbが、デフォルトの位置に表示される。この画面上で、消火栓モデルOBJbをマウスでドラッグしたり、これを配置すべき点をクリックしたりして、その配置場所を指定すると、図2(c)の消火栓モデルOBJcに示すように、オペレータの指示に従って、モデルが移動し、配置される。
通常は、図2(b)、図2(c)に示すような3次元地図表示では、画面上の一点を指定したところで、3次元空間の座標を特定することはできないが、本実施例では、後述する通り、座標の指定に拘束条件を設けることにより、画面上で指定された点に応じて3次元空間内の一点が定まるようにしているのである。処理内容については後述するが、このように画面内でマウスを利用して3次元モデルを自在に配置可能とすることにより、3次元モデルの配置による処理負荷を軽減することが可能となる。
【0017】
図3は路面標示の自動生成例を示す説明図である。3次元地図を表示するビュー(図1のビューV3に相当)を例示した。
道路面には、道路白線など種々の路面標示が描かれるが、これらの中には、予め設定した規則に従い道路形状に応じて自動的に生成可能なものもある。図の例では、道路ポリゴンPOLをオペレータが指定すると、道路の中央線L4を自動的に生成し、車線数に応じて、道路白線L1〜L3を生成する。また、道路ポリゴンと交差点との境界を基準として所定の位置に停止線L5を生成する。この他に横断歩道なども自動生成可能としてもよい。
図3では、図1のビューV3に相当する画面内で道路ポリゴンPOLを指定する例を示したが、二次元地図を表示するビュー(図1のビューV2)で道路ポリゴンを指定するようにしてもよい。
【0018】
図4は路面標示の配置例を示す説明図である。3次元地図を表示するビュー(図1のビューV3に相当)において、矢印Mの路面標示を配置する例を示した。
矢印Mは、道路上にあるから、オペレータがマウスで矢印Mをドラッグしたり、画面上の特定の点をクリックしたりすることによって矢印Mの位置を特定することは可能である。しかし、矢印Mは、道路上のどこにでも配置できるものではなく、車線の中央に配置されるものである。また停止線よりも手前に配置され、交差点内には配置されない。本実施例では、路面標示を配置すべき場所がこのように制限されていることを考慮し、路面標示に対しては、所定の規則に従って配置を規制するようにした。図の例では、矢印Mは、道路白線L2、L3の中心線CLに沿って、停止線L5の手前側でのみ配置可能となる。オペレータが、中心線CLからずれた位置をマウスで指定した場合であっても、道路面上という拘束条件だけでなく、中心線CL上という拘束条件を考慮するため、矢印Mは図中のA方向にしか移動しない。マウスの位置を、中心線CLの位置に対応づける方法については、後述する。
このように、路面標示Mの配置場所に規制を設けることにより、路面標示Mを中心線CL上に容易に位置づけることが可能となり、配置の負荷軽減を図ることができる。
【0019】
C ガイドライン描画例:
図2〜4では、3次元地図の表示内で3次元モデルや路面標示を自動生成したり配置したりする例を示した。3次元地図を活用する場合には、単に3次元モデルによる表示だけでなく、経路案内で用いる案内用の矢印(以下、「ガイドライン」という)や、案内用の記号などを表示することが好ましい。これらのガイドラインや記号などは、二次元の図形となるため、3次元モデルにはなじまないものである。本実施例では、以下に示す通り、3次元表示とは別に、これらの二次元の画像を表示するためのレイヤを設けることによって、ガイドライン等を容易に表示可能としている。
【0020】
図5は二次元画像の描画例を示す説明図である。3次元地図の表示レイヤLA1(図1のビューV3に相当)の上に、二次元用のレイヤLA2を用意する。二次元用のレイヤLA2には、図示するようにガイドラインを通常の2次元のポリゴンとして描画する。これらのレイヤLA1、LA2を重ねて表示することによって、3次元地図上にガイドラインを標示した画像IMGを生成することができる。
こうすることによって、ガイドライン等の二次元画像を、容易かつ見栄え良く表示することが可能となる。
【0021】
図6はガイドライン表示例(1)を示す説明図である。図6(a)は、3次元空間内でガイドラインGLa1に相当するポリゴンデータを設定し、3次元表示させたものである。ガイドラインGLa1が曲がる部分や先端の矢印部分(図中のA1領域)で、形状が歪んでいることが分かる。
図6(b)は、二次元画像の表示レイヤ上で、ガイドラインGLb1のポリゴンを生成した例である。ガイドラインのポリゴンを二次元画像として用意すれば済むため、このように容易に滑らかな曲線を描くことができ、先端の矢印部分も違和感のない形状とすることができる。
図7はガイドライン表示例(2)を示す説明図である。図7(a)は3次元空間内でガイドラインGLa2を設定したものである。領域A2部分で形状が歪んでいることが分かる。これに対し、二次元画像の表示レイヤを用いれば、図7(b)のガイドラインGLb2のように滑らかな形状を実現することができる。
図8はガイドライン表示例(3)を示す説明図である。図8(a)は3次元空間内でガイドラインGLa3を設定したものである。領域A3部分で形状が歪んでいることが分かる。これに対し、二次元画像の表示レイヤを用いれば、図8(b)のガイドラインGLb3のように滑らかな形状を実現することができる。
【0022】
D 地図データシステムの構成:
図2〜8で示した種々の表示および3次元モデルの自動生成、配置を実現するためのシステム構成等について,以下、説明する。
図9は実施例における地図データ生成システムの構成を示す説明図である。実施例としての地図データ生成システム100は、コンピュータに、図示する種々の機能を実現するためのコンピュータプログラムをインストールすることによって実現できる。
【0023】
地図データ生成システム100は、4種類のデータベースを備えている。
撮影画像データベース110は、現地をディジタルカメラ等で撮影した静止画(以下、「撮影画像」という)の画像データ(以下、「撮影画像データ」)を格納するデータベースである。動画像から各場面を切り出し、静止画として表示可能なデータベースとして構成してもよい。撮影画像は、それぞれカメラの撮影条件、即ち、撮影方向(方位および仰ぎ角)と画角と対応づけて格納されている。
ガイドラインデータベース112は、図6〜8で示したガイドラインのデータを格納するデータベースである。先に説明した通り、ガイドラインは、3次元地図上に重ねて描かれる2次元画像であるから、ガイドラインのデータは、2次元のポリゴンデータ(以下、「ガイドラインデータ」ということもある)として格納されている。
3次元地図データベース114は、3次元地図表示を実現するための3次元地図データを格納している。地表面を表す3次元地図データとともに、道路、建物、路面標示その他の地物を表す3次元地図データを格納する。地物の3次元地図データは、例えば、それぞれ3次元的に形状を規定するポリゴンデータと、地物の位置を表す座標値の形式で記憶させることができ、さらに地物の属性データを関連づけて記憶してもよい。3次元地図データベース114には、標識、信号機、ありふれた建物のように既存の3次元モデルを配置することで生成されるデータと、地物固有のポリゴンデータとが含まれる。3次元モデルを利用して生成されるデータについては、地物ごとにポリゴンデータを格納する形式に変えて、3次元モデルへのリンクを格納する方法をとってもよい。
3次元モデルデータベース116は、上述した汎用的な地物の3次元形状を表す3次元モデルを格納する。また、本実施例では、図3で説明したように、一部の路面標示については自動生成することができるから、3次元モデルデータベース116は、自動生成の対象となる路面標示について、自動生成するための規則も格納している。
これらのデータベースは、コンピュータ自体に格納してもよいし、外部記憶媒体やサーバから供給するようにしてもよい。
【0024】
以下、コンピュータプログラムによって実現される各機能ブロックについて説明する。
撮影画像表示部102は、撮影画像データベース110に格納された撮影画像データを用いて、撮影画像ビュー(図1のビューV1)を表示する。
3次元表示部104は、3次元地図データベース114に格納された3次元地図データを用いて3次元および2次元の地図(図1のビューV2〜V4)をそれぞれ表示する。2DビューV2は、3次元地図データを用いて、視線ベクトルを鉛直下方に設定した状態で透視投影することによって描画することができる。3次元表示部104は、撮影画像データに対応づけて格納された撮影条件に合わせた視線ベクトルおよび画角でビューV3を表示する。こうすることにより、ビューV3に、撮影画像ビューV1に対応した3次元地図を表示することができる。
2次元表示部106は、ガイドラインデータベース112に格納されたガイドラインデータを2次元画像として表示する。この2次元画像を描画したレイヤが、3Dビュ−V3に重畳して表示されることによって、図6〜8に示したガイドラインの画像が生成される。
【0025】
地図データ生成システム100では、オペレータは、ビューV3,V2などの画面上で、マウス等のポインタによってドラッグ、クリック等の操作を行い、3次元モデルの配置や路面標示の生成などを行う。座標入力部140は、上述の過程で、オペレータがマウス等のポインタで指定した点の座標を入力する。この座標値は、画面内で定義される「表示上の2次元座標」となる。
ガイドラインは単に2次元のポリゴンであるから、ガイドラインを生成する過程では、オペレータが指定した表示上の2次元座標を、そのままポリゴンの形状を定義するデータ入力として用いることができる。ガイドラインデータ生成部120は、このように座標入力部140で入力された座標値を用いて、ガイドラインのポリゴンを生成する機能を奏する。
一方、3次元モデルの配置等を指示する場合には、座標入力部140で入力された表示上の2次元座標だけでは、3次元モデルを配置する3次元座標を定義することはできない。そこで、座標変換部142は、予め用意された所定の拘束条件を適用することによって、表示上の2次元座標を、3次元座標値に変換する。
3次元地図データ生成部130は、変換された3次元座標に基づいて、以下の機能ブロックによって、3次元地図データを生成する。
3次元モデル配置部132は、3次元モデルデータベース116に格納された3次元モデルを、変換された3次元座標に基づいて3次元空間内で配置する。
道路沿モデル生成部134は、変換された3次元座標に基づいてオペレータが指定した道路を特定し、この道路に沿って設置される中央分離帯やガードレールなどの地物のデータを生成する。
路面標示生成部136は、オペレータが指定した道路に対して、路面標示を自動生成する(図3参照)。
路面標示配置部138は、オペレータの指示に応じて、自動生成の対象となっていない路面標示を配置する(図4参照)。
以上の3次元地図データ生成部130で生成される過程のデータは、3次元地図データベース114に反映され、3DビューV3,V4および2DビューV2に反映される。従って、オペレータは、これらのビュー2〜4を、撮影画像ビューV1と対比して見ながら、3次元地図データを生成することができる。
【0026】
E 3次元モデル配置処理:
次に、地図データ生成装置100の各機能を実現するための処理内容について説明する。まず、実施例における座標変換の考え方を示した後、各処理内容を説明する。
図10は座標変換の拘束条件を示す説明図である。3次元画像は、視点EPから2次元平面のビューVWに透視した状態で描かれる。視点EPと点Paを結ぶ直線LA上の点は全てビューVW内の点Paに透視されることになるから、ビューVW内で点Paが指定されたとしても、この点に基づいて、ただちに3次元空間内の一点を特定することはできない。
これに対し、例えば、指定された点は地表面上の点であるという拘束条件を与える場合を考える。ここでは、地表面を3次元座標の高さ(Z座標値)0の平面αであるとする。かかる拘束条件を考慮すると、点Paは、直線LA上かつ平面α上の点ということになるから、3次元空間内の点PAと特定することができ、その座標値を(XA、YA,0)と求めることができる。
同様に、地表面αだけではなく、3次元空間内の特定の平面β上の点であるという拘束条件を用いることもできる。この場合、ビューVW内で点Pbが指定されると、視点EPと点Pbとを結ぶ直線LBと平面βとの交点PBと特定することができ、その座標値(XB、YB,ZB)を特定することができる。
拘束条件は、このように平面で与えるだけでなく、直線で与えるようにしてもよい。例えば、地表面α内の直線L上の点であるとの拘束条件を与える場合を考える。かかる場合には、拘束条件に対応する直線Lを含み、地表面αに垂直な平面βを考え、平面β内で指定された点Pbに対応する点PBを求めることができる。そして、指定された点は、この点PBから直線Lに垂線を下ろした点PB1(XB,YB,0)と特定することができる。点PB1は、直線LB上の点ではないから、ビューVW内で指定された点と、3次元空間内で特定される点との間にはずれが生じることになる。これは、上述の拘束条件は、指定された位置は一次元の自由度しか有さず、実質的には3次元中の2次元の座標値を拘束することによるものである。しかしながら、かかる扱いをすることにより、ビューVW上で直線Lからずれた点を指定した場合でも、直線L上の点に変換されるため、点を指示する際のオペレータの負担を軽減することができる。
直線Lを拘束条件とする他、平面α上の点PCに対して高さを指定するという拘束条件とすることもできる。この場合には、点PCを通って、平面αに垂直な平面βを想定し、指定された点Pbに対応する平面β上の点PBを特定する。そして、この点PBの高さ値ZBを用いて、点PCの直上の点PC1(XC、YC,ZB)が指定されていると特定することができる。
以下で座標変換を言うときには、これらのうちのいずれかの変換方法を意味する。
【0027】
図11は3次元モデル配置処理のフローチャートである。コンピュータのCPUが実行する図2に示した処理であり、図9の3次元モデル配置部132の処理内容に相当する。
処理を開始すると、CPUは、オペレータの指示に従って、配置対象となる3次元モデル(以下、3次元モデルデータベース116に格納された3次元モデルから変形される可能性もあるという意味も含めて、「オブジェクト」ということもある)を選択し(ステップS10)、オペレータがマウス等で指定した表示上の2次元座標(x、y)を入力する(ステップS11)。この2次元座標値に応じて3次元モデルを配置する方法は、入力モードによって異なる。
位置指定の入力モードの場合は(ステップS12)、高さ=0との拘束条件によって座標変換を行う(ステップS13)。これは図10で示した平面α上の点であるとの拘束条件での座標変換に相当する。この座標変換によって2次元座標(x、y)は、3次元座標(X,Y,0)に変換される。ここでは、地表面という拘束条件という意味で、高さ=0という拘束条件を例示したが、地表面のポリゴンデータが用意されている場合には、図10における平面αの代わりに地表面のポリゴンデータを用いることによって、地表面との交点という拘束条件とすることもできる。
CPUは、得られた3次元座標(X,Y,0)に基づいて、オブジェクトを配置し(ステップS14)、3次元地図データベースを更新する(ステップS17)。この更新によって、3Dビューの画面も変更されることになる。
【0028】
一方、位置固定の入力モードの場合は(ステップS12)、オブジェクトの位置(X,Y)を用いて座標変換を行う(ステップS15)。これは図10で示した平面α上の点PCに対して高さを与えるとの拘束条件で点PC1を求めるとの座標変換に相当する。この座標変換によって2次元座標(x、y)は、3次元座標(X,Y,Z)に変換される。
CPUは、得られた3次元座標(X,Y,Z)に基づいて、オブジェクトの高さを修正し(ステップS16)、3次元地図データベースを更新する(ステップS17)。指定された点に応じてオブジェクトを高さ方向にだけ拡大縮小するようにしてもよいし、オブジェクトを相似変化させるようにしてもよい。この更新によって、3Dビューの画面も変更されることになる。
【0029】
オブジェクトの位置または高さの修正が必要な場合は(ステップS18)、オペレータが新たな点を指定すれば、ステップS11以降の各処理によって、3次元空間内で自在にオブジェクトの位置または高さを変更することができる。
【0030】
図12は道路沿モデル生成処理のフローチャートである。コンピュータのCPUが実行する処理であり、図9の3次元モデル配置部132の処理内容に相当する。
処理を開始すると、CPUは、オペレータの指示に従って、生成対象となるオブジェクトを選択する(ステップS30)。図の右側に、この処理で生成対象となるオブジェクトを例示した。ガードレールGや中央分離帯Cなど、道路RDに沿って配置されるオブジェクトが対象となる。それぞれ複数種類のタイプの中から選択可能としてもよい。
CPUは、オペレータがマウス等で指定した表示上の2次元座標(x、y)を入力し、これに基づいてオブジェクトを配置すべき道路ポリゴンを選択する(ステップS31)。2次元座標(x、y)が地表面であるとの拘束条件に基づいて3次元座標に変換して、指定された点を含む道路ポリゴンを特定すればよい。
次に、CPUは、道路ポリゴン、オブジェクトに基づきオブジェクトの生成ラインを設定する(ステップS32)。図中に設定方法を例示した。道路ポリゴンRDPが指定されている場合を考える。まず、オブジェクトは道路に沿って生成されるから、道路ポリゴンRDPを構成する点P1〜P4のうち道路の進行方向に沿う点列P1−P2およびP3−P4を特定する。中央分離帯Cが選択されている場合には、この点列の中央に位置する線CLを生成ラインとする。ガードレールGが選択されている場合には、点列を所定の距離だけ移動させた線GLを生成ラインとする。
CPUは、次に、オペレータが指定する表示上の2次元座標(x、y)を入力し(ステップS33)、オブジェクト生成ラインを用いて座標変換を行う(ステップS34)。これは、オブジェクト生成ライン上の点に高さを与える指定であるものとして、図10で示した平面α上の点PCに対して高さを与えるとの拘束条件で点PC1を求めるとの座標変換に相当する。この座標変換によって2次元座標(x、y)は、3次元座標(X,Y,Z)に変換される。
CPUは、得られた3次元座標(X,Y,Z)に基づいて、オブジェクトの高さを設定し(ステップS35)、3次元地図データベースを更新する(ステップS36)。この更新によって、3Dビューの画面も変更されることになる。
オブジェクトの高さの修正が必要な場合は(ステップS37)、オペレータが新たな点を指定すれば、ステップS33以降の各処理によって、3次元空間内で自在にオブジェクトの高さを変更することができる。
【0031】
F 路面標示自動生成処理:
図13は路面標示自動生成処理のフローチャートである。コンピュータのCPUが実行する図3に示した処理であり、図9の路面標示生成部136の処理内容に相当する。
処理を開始すると、CPUは、オペレータの指示に従って、生成対象となるオブジェクトを選択する(ステップS50)。本実施例では、道路白線(中央線および車線帯の区分線)、および停止線などを生成対象とする。
次に、CPUは、オペレータがマウス等で指定した表示上の2次元座標に基づいてオブジェクトを配置すべき道路ポリゴンを選択する(ステップS51)。2次元座標が地表面であるとの拘束条件に基づいて3次元座標に変換して、指定された点を含む道路ポリゴンを特定すればよい。
CPUは、指定された道路ポリゴンに対して、予め設定された規則に従ってオブジェクトを自動生成する(ステップS52)。図中に道路白線の生成例を示した。まず、指定された道路の幅Wに対して半分の幅W/2の位置に、中央線LL1を生成することができる。また、中央線LL1から、車線数に応じて、予め指定された車線帯幅WLごとに区分線LL2,LL3を引く。停止線等も予め定められた規則に従って自動生成することができる。
【0032】
本実施例では、自動生成されたオブジェクトは、オペレータの指示に従って、修正可能とした。
オブジェクトを修正する場合には(ステップS53)、CPUは、オペレータがマウス等で指定した表示上の2次元座標(x、y)を入力し(ステップS54)、高さ=0との拘束条件によって座標変換を行う(ステップS55)。なお、オペレータは2Dビューで修正を指示してもよい。この場合も原理的には、座標変換は3Dビューで指定された場合と同様の方法で行うことになるが、アルゴリズム上は、2Dビュー内で得られた2次元座標(x、y)を原点移動させるだけで3次元座標に変換することが可能である。
CPUは、得られた3次元座標(X,Y,0)に最も近いオブジェクトを特定し、そのオブジェクトの端点を座標に従って修正する(ステップS56)。図中に修正例を示した。元来端点E1まで描かれていた道路白線LLに対し、(X,Y、0)なる点が指定されたとすると、この点から道路白線LLに下ろした垂線の足E2までオブジェクトの長さが修正される。この状態は、3次元地図データに反映され、3Dビュー、2Dビューなどの画面で確認することができる。
【0033】
G 路面標示配置処理:
図14は路面標示の配置処理例を示す説明図である。
図14(a)は路面上に矢印を配置する例を示した。まずオペレータは、路面標示の配置対象となる道路ポリゴンSPLaを指定する。道路ポリゴンSPLa上には、道路白線RL1、RL2が引かれているものとする。オペレータが、道路白線RL1、RL2内の点PP1を指定した場合を考える。オペレータは、矢印M1を、道路ポリゴンSPLaのうち道路白線RL1、RL2に囲まれた領域ARL内に配置することを意図していると考えられ、矢印は車線の中央に配置されることを考えると、特に、道路白線RL1、RL2の中央に当たる直線CRL上に配置することが指示されていると考えられる。そこで、地図データ生成システムは、指定された点PP1を直線CRL上に垂直に投影した点PC1を特定し、この点PC1に元ついて矢印M1を配置する。道路SPLaが指定された状態で、オペレータが領域ARL外を指定した場合は、直線CRLと道路ポリゴンSPLaとの交点PC2が指定されたものとして矢印M2を配置する。
【0034】
路面標示配置処理は、道路の中央線や車線区分線を配置対象としてもよい。この処理は、図13で説明した路面標示自動生成処理によって適正な道路白線が生成されなかった場合などに利用することができる。
図14(b)は、道路ポリゴンSPLbが指定された場合に、道路白線を配置する処理例を示している。この例では、オペレータが指定した点が、いずれの道路白線に対応するものかを特定する必要がある。そこで、道路ポリゴンSPLb内をいくつかの領域に分け、領域ごとに道路白線に対応づけるものとした。例えば、中央線RL3は、道路のほぼ中央に引かれるものである。従って、道路幅Wの半分W/2の位置を中心として、車線幅WLの領域ARL3を設定した。領域ARL3内の点PP3が指定された場合には、オペレータは中央線RL3の修正などを指示しているものとして処理を行う。区分線RL4の場合には、中央線RL3の領域ARL3に隣接する車線幅WLの領域ARL4を設定し、この中の点PP4が指定された場合には、区分線RL4の修正などを指示しているものとして処理を行う。
このように指定された道路ポリゴン、オブジェクトの種類、指定された点に応じて、拘束条件を設けて処理を行うことにより、道路ポリゴンからはみだしたり、中央から偏った位置に配置されるなどの弊害を回避して、路面標示を配置することができる。
【0035】
図15は路面標示配置処理のフローチャートである。コンピュータのCPUが実行する図4に示した処理であり、図9の路面標示配置部138の処理内容に相当する。
処理を開始すると、CPUは、オペレータの指示に従って、生成対象となるオブジェクトを選択する(ステップS70)。本実施例では、路面に標示される矢印、速度規制の数字などを配置対象とする。
CPUは、オペレータがマウス等で指定した表示上の2次元座標に基づいてオブジェクトを配置すべき道路ポリゴンを選択する(ステップS71)。2次元座標が地表面であるとの拘束条件に基づいて3次元座標に変換して、指定された点を含む道路ポリゴンを特定すればよい。
【0036】
次に、CPUは、オペレータがマウス等で指定した表示上の2次元座標(x、y)を入力し(ステップS72)、高さ=0との拘束条件によって座標変換を行う(ステップS73)。なお、オペレータは2Dビューで座標を指示してもよい。
CPUは、オペレータに指定された道路ポリゴン、指定された座標値、およびオブジェクトの種類に基づいて拘束条件を設定し(ステップS74)、この拘束条件に基づいて座標を修正する(ステップS75)。例えば、図14(a)の例であれば、指定された点を直線CRLに投影した点に修正することになる。図14(b)の例であれば、指定された点を、その位置に応じて、道路白線RL3またはRL4上の点に修正することになる。
CPUは、修正後の座標に基づいてオブジェクトを配置し(ステップS76)、3次元地図データベースを更新する(ステップS77)。この更新によって、3Dビューの画面も変更されることになる。修正が必要な場合には(ステップS78)、オペレータが新たな点を指定すれば、ステップS72以降の各処理によって、オブジェクトの配置および形状を修正することができる。
【0037】
H ガイドラインデータ生成処理:
図16はガイドラインデータ生成処理のフローチャートである。コンピュータのCPUが実行する図5〜8に示した処理であり、図9のガイドラインデータ生成部120の処理内容に相当する。
処理を開始すると、オペレータはガイドラインの生成対象となる経路を選択する(ステップS90)。経路探索などを実行して経路が得られている場合には、経路探索結果を利用してもよいし、そうでない場合は、経路となるべきリンクを順次指定する方法をとってもよい。
CPUは、3次元空間内で指定された経路に対応するリンクを滑らかに結ぶ曲線を生成する(ステップS91)。図中に処理例を示した。リンクL1〜L4、ノードN1、N2からなる道路において、リンクL1、L3、L4を通る経路が指定されている場合、これらを滑らかに結ぶ曲線CGLが生成される。かかる曲線は、例えば、スプラインとすることができる。
CPUは、こうして生成された曲線を用いて3Dビューを表示する(ステップS92)。これによって図6(a)、図7(a)、図8(a)に示した状態の画像を表示することができる。
【0038】
オペレータは、この画像中に示された曲線を下絵としてガイドラインを生成することができる。CPUは、オペレータが画面上で指定した点の二次元座標を入力し(ステップS93)、これに従って、ガイドラインの形状を決めるポリゴンデータを生成する(ステップS94)。この処理では、ガイドラインは2次元ポリゴンとして形成されるため、画面上で指定された二次元座標を座標変換する必要はない。
ガイドラインのポリゴンデータの生成が完了すると(ステップS95)、CPUは、このポリゴンを格納することでガイドラインデータベースを更新する(ステップS96)。下絵として用いた曲線のデータは、この処理と合わせて削除すればよい。これらの更新によって、3Dビューの画面には、図6(b)、図7(b)、図8(b)に相当する画像が表示される。
図16の処理例では、3次元空間で設定した曲線を下絵として用いる例を示したが、ステップS90〜92を省略し、下絵なしでガイドラインを生成するようにしてもよい。また、ガイドラインの生成と合わせて、有料道路や速度規制などを示すマークなどを表すデータを生成するようにしてもよい。
【0039】
以上で説明した実施例の地図データ生成システムによれば、3Dビュー、2Dビュー(図1参照)内でオペレータがマウス等でドラッグやクリック等の操作を行うことにより、3次元モデルの配置、修正、路面標示の自動生成、配置等を直感的に容易に行うエディタを提供することができる。従って、3次元地図データの生成負荷を軽減することができる。
また、3次元地図表示に重ねてガイドラインを表示することができ、このガイドライン用のデータは2次元画像として生成することができる。従って、3次元空間内で生成する場合に比べて滑らかで見やすいガイドラインを容易に作成することができる利点もある。
【0040】
以上、本発明の実施例について説明したが、上述の実施例で説明した種々の処理は、必ずしも全てを備えている必要はなく、一部を省略したり他の処理と置換したりしても構わない。また、上述の例において、ソフトウェア的に実行されている処理は、ハードウェア的に実行してもよいし、その逆も可能である。
【産業上の利用可能性】
【0041】
本発明は,3次元地図データの生成に利用可能である。
【符号の説明】
【0042】
100…地図データ生成システム
102…撮影画像表示部
104…3次元表示部
106…2次元表示部
110…撮影画像データベース
112…ガイドラインデータベース
114…3次元地図データベース
116…3次元モデルデータベース
120…ガイドラインデータ生成部
130…3次元地図データ生成部
132…3次元モデル配置部
134…道路沿モデル生成部
136…路面標示生成部
138…路面標示配置部
140…座標入力部
142…座標変換部
【特許請求の範囲】
【請求項1】
3次元地図を描画するための3次元地図データを生成する地図データ生成システムであって,
前記3次元地図データを格納する3次元地図データベースと、
前記3次元地図データに配置する地物を表す3次元モデルのデータを格納する3次元モデルデータベースと、
前記3次元地図データベースを用いて、前記3次元地図を表示する3次元表示部と、
前記3次元地図においてオペレータによって指定された点の該表示上の2次元座標を入力する座標入力部と、
前記3次元地図データを規定する3次元の座標値の少なくとも一つを拘束するよう予め設定された拘束条件に基づいて、前記2次元座標を、前記3次元の座標値に変換する座標変換部と、
前記変換された3次元の座標値に配置されるよう前記3次元モデルを前記3次元地図データに追加する3次元地図データ生成部とを備える地図データ生成システム。
【請求項2】
請求項1記載の地図データ生成システムであって、
前記拘束条件は、指定された点が地表面であるとの条件である地図データ生成システム。
【請求項3】
請求項1または2記載の地図データ生成システムであって、
さらに、カメラで撮影して得られた撮影画像データと、該撮影時のカメラの位置、方向、画角とを含む撮影条件を記憶する撮影画像データベースと、
前記撮影画像データを用いて撮影画像を表示する撮影画像表示部とを備え、
前記3次元表示部は、前記撮影画像に対応する撮影条件に基づいて前記3次元地図を表示する地図データ生成システム。
【請求項4】
請求項1〜3いずれか記載の地図データ生成システムであって、
前記3次元モデルには、道路上に路面標示を描くための路面標示データが含まれ、
前記拘束条件は、前記路面標示データに対しては、前記路面標示の道路面内での配置を規制する条件である地図データ生成システム。
【請求項5】
請求項1〜4記載の地図データ生成システムであって、
前記変換された座標値に従って、自動生成の対象となる3次元モデルを生成する際に基準となるべき地点または領域を特定し、予め設定された規則に従って、前記地点または領域を基準として該3次元モデルを自動生成し、前記地図データベースに追加する自動生成部を備える地図データ生成システム。
【請求項6】
請求項1〜5いずれか記載の地図データ生成システムであって、
2次元の画像を表示するためのポリゴンデータを記憶する2次元データベースと、
前記2次元データベースを用いて、前記3次元地図に重ねて2次元画像を描画する2次元表示部と、
前記座標入力部によって入力された座標に従って、前記ポリゴンデータを生成する2次元画像データ生成部とを備える地図データ生成システム。
【請求項7】
3次元地図を描画するための3次元地図データを格納する3次元地図データベースと、前記3次元地図データに配置する地物を表す3次元モデルのデータを格納する3次元モデルデータベースとを備えるコンピュータによって、前記3次元地図データを生成する地図データ生成方法であって,
前記コンピュータが行う工程として、
前記3次元地図データベースを用いて、前記3次元地図を表示する3次元表示工程と、
前記3次元地図においてオペレータによって指定された点の該表示上の2次元座標を入力する座標入力工程と、
前記3次元地図データを規定する3次元の座標値の少なくとも一つを拘束するよう予め設定された拘束条件に基づいて、前記2次元座標を、前記3次元の座標値に変換する座標変換工程と、
前記変換された3次元の座標値に配置されるよう前記3次元モデルを前記3次元地図データに追加する3次元地図データ生成工程とを備える地図データ生成方法。
【請求項8】
3次元地図を描画するための3次元地図データを格納する3次元地図データベースと、前記3次元地図データに配置する地物を表す3次元モデルのデータを格納する3次元モデルデータベースとを備えるコンピュータによって、前記3次元地図データを生成するためのコンピュータプログラムであって,
前記3次元地図データベースを用いて、前記3次元地図を表示する3次元表示機能と、
前記3次元地図においてオペレータによって指定された点の該表示上の2次元座標を入力する座標入力機能と、
前記3次元地図データを規定する3次元の座標値の少なくとも一つを拘束するよう予め設定された拘束条件に基づいて、前記2次元座標を、前記3次元の座標値に変換する座標変換機能と、
前記変換された3次元の座標値に配置されるよう前記3次元モデルを前記3次元地図データに追加する3次元地図データ生成機能とを前記コンピュータによって実現するためのコンピュータプログラム。
【請求項1】
3次元地図を描画するための3次元地図データを生成する地図データ生成システムであって,
前記3次元地図データを格納する3次元地図データベースと、
前記3次元地図データに配置する地物を表す3次元モデルのデータを格納する3次元モデルデータベースと、
前記3次元地図データベースを用いて、前記3次元地図を表示する3次元表示部と、
前記3次元地図においてオペレータによって指定された点の該表示上の2次元座標を入力する座標入力部と、
前記3次元地図データを規定する3次元の座標値の少なくとも一つを拘束するよう予め設定された拘束条件に基づいて、前記2次元座標を、前記3次元の座標値に変換する座標変換部と、
前記変換された3次元の座標値に配置されるよう前記3次元モデルを前記3次元地図データに追加する3次元地図データ生成部とを備える地図データ生成システム。
【請求項2】
請求項1記載の地図データ生成システムであって、
前記拘束条件は、指定された点が地表面であるとの条件である地図データ生成システム。
【請求項3】
請求項1または2記載の地図データ生成システムであって、
さらに、カメラで撮影して得られた撮影画像データと、該撮影時のカメラの位置、方向、画角とを含む撮影条件を記憶する撮影画像データベースと、
前記撮影画像データを用いて撮影画像を表示する撮影画像表示部とを備え、
前記3次元表示部は、前記撮影画像に対応する撮影条件に基づいて前記3次元地図を表示する地図データ生成システム。
【請求項4】
請求項1〜3いずれか記載の地図データ生成システムであって、
前記3次元モデルには、道路上に路面標示を描くための路面標示データが含まれ、
前記拘束条件は、前記路面標示データに対しては、前記路面標示の道路面内での配置を規制する条件である地図データ生成システム。
【請求項5】
請求項1〜4記載の地図データ生成システムであって、
前記変換された座標値に従って、自動生成の対象となる3次元モデルを生成する際に基準となるべき地点または領域を特定し、予め設定された規則に従って、前記地点または領域を基準として該3次元モデルを自動生成し、前記地図データベースに追加する自動生成部を備える地図データ生成システム。
【請求項6】
請求項1〜5いずれか記載の地図データ生成システムであって、
2次元の画像を表示するためのポリゴンデータを記憶する2次元データベースと、
前記2次元データベースを用いて、前記3次元地図に重ねて2次元画像を描画する2次元表示部と、
前記座標入力部によって入力された座標に従って、前記ポリゴンデータを生成する2次元画像データ生成部とを備える地図データ生成システム。
【請求項7】
3次元地図を描画するための3次元地図データを格納する3次元地図データベースと、前記3次元地図データに配置する地物を表す3次元モデルのデータを格納する3次元モデルデータベースとを備えるコンピュータによって、前記3次元地図データを生成する地図データ生成方法であって,
前記コンピュータが行う工程として、
前記3次元地図データベースを用いて、前記3次元地図を表示する3次元表示工程と、
前記3次元地図においてオペレータによって指定された点の該表示上の2次元座標を入力する座標入力工程と、
前記3次元地図データを規定する3次元の座標値の少なくとも一つを拘束するよう予め設定された拘束条件に基づいて、前記2次元座標を、前記3次元の座標値に変換する座標変換工程と、
前記変換された3次元の座標値に配置されるよう前記3次元モデルを前記3次元地図データに追加する3次元地図データ生成工程とを備える地図データ生成方法。
【請求項8】
3次元地図を描画するための3次元地図データを格納する3次元地図データベースと、前記3次元地図データに配置する地物を表す3次元モデルのデータを格納する3次元モデルデータベースとを備えるコンピュータによって、前記3次元地図データを生成するためのコンピュータプログラムであって,
前記3次元地図データベースを用いて、前記3次元地図を表示する3次元表示機能と、
前記3次元地図においてオペレータによって指定された点の該表示上の2次元座標を入力する座標入力機能と、
前記3次元地図データを規定する3次元の座標値の少なくとも一つを拘束するよう予め設定された拘束条件に基づいて、前記2次元座標を、前記3次元の座標値に変換する座標変換機能と、
前記変換された3次元の座標値に配置されるよう前記3次元モデルを前記3次元地図データに追加する3次元地図データ生成機能とを前記コンピュータによって実現するためのコンピュータプログラム。
【図5】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図1】
【図2】
【図3】
【図4】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図1】
【図2】
【図3】
【図4】
【図6】
【図7】
【図8】
【公開番号】特開2012−177808(P2012−177808A)
【公開日】平成24年9月13日(2012.9.13)
【国際特許分類】
【出願番号】特願2011−40968(P2011−40968)
【出願日】平成23年2月25日(2011.2.25)
【出願人】(502002186)株式会社ジオ技術研究所 (23)
【Fターム(参考)】
【公開日】平成24年9月13日(2012.9.13)
【国際特許分類】
【出願日】平成23年2月25日(2011.2.25)
【出願人】(502002186)株式会社ジオ技術研究所 (23)
【Fターム(参考)】
[ Back to top ]