JP2011033987A - 地図生成装置及び地図生成方法 - Google Patents
地図生成装置及び地図生成方法 Download PDFInfo
- Publication number
- JP2011033987A JP2011033987A JP2009182569A JP2009182569A JP2011033987A JP 2011033987 A JP2011033987 A JP 2011033987A JP 2009182569 A JP2009182569 A JP 2009182569A JP 2009182569 A JP2009182569 A JP 2009182569A JP 2011033987 A JP2011033987 A JP 2011033987A
- Authority
- JP
- Japan
- Prior art keywords
- polygon
- points
- map
- line
- point
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】高速で再現性の高い地図を生成する地図生成装置を提供する。
【解決手段】河川ポリゴンを構成する構成点のうち、任意の2つの構成点を初期点として選択するとともに(ステップS702)、他の構成点の中から所定の条件を満たす構成点を1つ検出する(ステップS703)。そして、当該条件を満たす構成点と任意の2つの構成点とで三角形を形成した場合において最小角が最大となるような構成点を選択する(ステップS706)。次に、上述した任意の2つの構成点と選択された構成点とで構成される三角形により、河川ポリゴンを新たな2つの河川ポリゴンに分割する(ステップS707)。
【選択図】図7
【解決手段】河川ポリゴンを構成する構成点のうち、任意の2つの構成点を初期点として選択するとともに(ステップS702)、他の構成点の中から所定の条件を満たす構成点を1つ検出する(ステップS703)。そして、当該条件を満たす構成点と任意の2つの構成点とで三角形を形成した場合において最小角が最大となるような構成点を選択する(ステップS706)。次に、上述した任意の2つの構成点と選択された構成点とで構成される三角形により、河川ポリゴンを新たな2つの河川ポリゴンに分割する(ステップS707)。
【選択図】図7
Description
本発明は、縮尺の大きい詳細地図から縮尺の小さい広域地図を生成するための地図生成技術に関するものである。
地図情報の電子データ化は、印刷物の時代に限定されていた地図の機能、用途、可能性を飛躍的に押し広げることになった。近年、地図を用いる仕事はコンピュータ上で行う地図情報システム(GIS:Geographic Information System )によって、データベース化された結果、データの加工等が容易になり、効率よく仕事が行えるようになった。例えば、カーナビゲーションシステム、運送会社の配車支援、上下水道/電気/電話等の施設管理、河川管理といった様々な場面でGISが利用されている。これらのシステムにおいて、コンピュータ上で利用できる状態の電子地図は必要不可欠となっている。
このとき、これらのシステムでは用途によって異なる尺度や異なる表示方法の地図が必要となる。現在までにこのような様々な電子地図データを自動作成する技術が研究されている。例えば、非特許文献1には、現在地と目的地の位置関係を把握しやすいような電子地図データの自動作成を行うシステムが紹介されている。また、非特許文献2には、モバイルなどの表示画面が小さなものでも表示できるようなデフォルメマップ作成技術が紹介されている。
また道路ネットワークを標本化・量子化することにより地図を見やすくする技術や、広告などに用いられる道路案内地図の自動作成手法など様々な地図を自動作成する技術が存在する。これらのほとんどは同一の尺度の下で電子地図データの簡略化を行うというものである。
馬場口登、堀江政彦、上田俊彦、淡誠一郎:経路理解支援のための略地図とその案内文の生成システム、電子情報通信学会論文誌、Vol.J80-DII、No.3、pp.791-800、1997
浅原彰規、嶋田茂、丸山貴志子:広域道路網の要約地図形成のためのネットワーク構造ようやくアルゴリズムとその評価、情報処理学会論文誌、Vol.47、No.12、pp.3068-3078、2006
しかしながら、実際の電子地図データには尺度の異なる複数の地図が用いられている。これら尺度の異なる複数地図は、元となる詳細な電子地図データを測量等で作成し、その詳細なデータからデータの間引き等の処理を施し、尺度の異なる電子地図データを予め作成、処理するのが一般的である。これら尺度の異なる電子地図データは処理時間や精度の問題から現在手作業で行われている。そのため、電子地図データの作成には多大なコストを要するというのが実情である。
本発明は、上記の課題を解決することを目的としている。すなわち、詳細な電子地図データからデータの間引きを行うことで一般的な広域地図を高速に自動作成することができる地図生成装置、地図生成方法を提供することを目的とする。
上記課題を解決するために、本発明は、複数の構成点を頂点とするポリゴンで表現される地物が含まれる電子地図データを記憶する記憶部と、前記電子地図データに基づいて所定範囲の地図を生成する制御部とを備えた地図生成装置であって、前記制御部は、前記ポリゴンを、前記構成点における任意の初期点を頂点として含む三角形であってドロネー三角形分割手法を用いて算出された三角形によりに分割するとともに、前記三角形により分割された複数のポリゴンをドロネー三角形分割手法を用いて算出された三角形により、分割される全てのポリゴンの形状が三角形になるまで、再帰的に分割する分割機能と、算出された前記三角形を構成する辺であって前記ポリゴンの内部に存在する辺の中点を連結することによりライン状のデータを生成するラインデータ生成機能とを有することを特徴とする。
なお、上述した特徴は、本発明の特徴の全てを列挙したものではなく、これらを要部とする構成や方法等もまた発明となり得る。
なお、上述した特徴は、本発明の特徴の全てを列挙したものではなく、これらを要部とする構成や方法等もまた発明となり得る。
本発明によれば、高速で再現性の高い地図を表示することができる。
以下、本発明を具体化した実施例を説明する。
図1に示すように、本実施例における地図表示システムは、地図生成装置としてのコンピュータ11を備える。コンピュータ11は、地図などの各種画像、文字等を表示可能な表示部としてのディスプレイ12、入力部としてのキーボード13、記憶部としてのハードディスク14、キャッシュメモリ15、制御部としてのCPU16を備える。
図1に示すように、本実施例における地図表示システムは、地図生成装置としてのコンピュータ11を備える。コンピュータ11は、地図などの各種画像、文字等を表示可能な表示部としてのディスプレイ12、入力部としてのキーボード13、記憶部としてのハードディスク14、キャッシュメモリ15、制御部としてのCPU16を備える。
ハードディスク14には、各種プログラムや、所定の領域についての詳細な地図(例えば1万分の1)を表示するために用いられる電子地図データが記憶されている。電子地図データは、地図として表示される各種地物(建物、道路、河川)の形状を表す形状データで構成されている。形状データは、ポリゴンデータ形式である。ここで、ポリゴンデータ(以下、単に「ポリゴン」と表現する場合もある。)とは経度・緯度等の座標値で表される複数の構成点を結ぶ多角形形状のデータであり、一筆書きが可能な閉曲線で表される。また、ポリゴンデータの始点と終点とは同一であり、更にそのポリゴンデータ自身と交差することがないといった特徴を有する。
キャッシュメモリ15は、SRAM(Static
Random Access Memory )等で構成されており、各種データを一時的に記憶する機能を有する。
CPU16(Central
Processing Unit )は、ハードディスク14に記憶されている各種ソフトウェア(プログラム)を実行することにより、本実施例における地図表示システム全体の各種制御を実施する。例えば、地図をディスプレイ12上に表示したり、表示用電子地図データの加工を実行したりする。
Random Access Memory )等で構成されており、各種データを一時的に記憶する機能を有する。
CPU16(Central
Processing Unit )は、ハードディスク14に記憶されている各種ソフトウェア(プログラム)を実行することにより、本実施例における地図表示システム全体の各種制御を実施する。例えば、地図をディスプレイ12上に表示したり、表示用電子地図データの加工を実行したりする。
具体的に、CPU16は、分割機能、ラインデータ生成機能、ライン接続機能、表示制御機能を有する。
分割機能は、ポリゴンを、ドロネー三角形分割手法を用いて算出された三角形により再帰的に複数のポリゴンに分割する機能である。本実施例では、全てのポリゴンの形状が三角形になるまで再帰的に分割される。
分割機能は、ポリゴンを、ドロネー三角形分割手法を用いて算出された三角形により再帰的に複数のポリゴンに分割する機能である。本実施例では、全てのポリゴンの形状が三角形になるまで再帰的に分割される。
ラインデータ生成機能は、地図を構成するポリゴンを縮小する際に、ライン化(線状化)する機能である。
ライン接続機能は、互いに隣接するポリゴンをライン化する際に、当該ライン同士を接続する機能である。
表示制御機能は、ハードディスク14から読み出された所定領域の地図や、縮小された地図等をディスプレイ12に表示させる機能である。
ライン接続機能は、互いに隣接するポリゴンをライン化する際に、当該ライン同士を接続する機能である。
表示制御機能は、ハードディスク14から読み出された所定領域の地図や、縮小された地図等をディスプレイ12に表示させる機能である。
次に、本実施例における地図表示システムを使用して地図を縮小表示する処理について説明する。
図2に示すように、まず、CPU16は、ディスプレイ12に所定の縮尺で所定の領域の地図を表示する(ステップS21)。次に、CPU16によって、表示されている地図の縮尺を小さくする縮小表示命令がキーボード13や図示しないマウス等の入力機器を介して出されたか否かが判定される(ステップS22)。縮小表示命令が出されていないと判定された場合には、CPU16は、通常の地図の表示処理を継続する。
図2に示すように、まず、CPU16は、ディスプレイ12に所定の縮尺で所定の領域の地図を表示する(ステップS21)。次に、CPU16によって、表示されている地図の縮尺を小さくする縮小表示命令がキーボード13や図示しないマウス等の入力機器を介して出されたか否かが判定される(ステップS22)。縮小表示命令が出されていないと判定された場合には、CPU16は、通常の地図の表示処理を継続する。
一方、縮小表示命令が出されたと判定された場合には、CPU16は、現在表示されている地図を構成するポリゴンのうち、ライン化の対象となるポリゴンを選択する(ステップS23)。選択されるポリゴンとしては、例えば、河川ポリゴンや道路ポリゴン等が挙げられる。ポリゴンの属性(道路、河川、建物等)については、各ポリゴンに付与されている属性データを参照することにより判断される。以下では、河川ポリゴンを例に説明するが、他のポリゴンについても同様の処理が実行される。
次に、CPU16によって、選択されたポリゴンについて、ライン化処理が実行される(ステップS24)。そして、CPU16によって、隣接するラインを接続する処理が実行された後に(ステップS25)、ディスプレイ12上に縮小された地図が表示される(ステップS26)。なお、ライン化処理(ステップS24)及び隣接するラインの接続処理(ステップS25)の詳細については、後述する。
(A)ポリゴンのライン化処理
ポリゴンをライン化する処理は、地図の表示速度に影響するものであることから、いかに処理速度の高速化を図るかが課題となる。
本実施例においては、ドロネー三角形分割手法を用いてライン化を実行する。ドロネー三角形分割手法とは、ポリゴンを、その構成点を頂点とする複数の三角形に分割する手法である。そして、当該分割された三角形を構成する各辺の中点をラインの候補点とするとともに、それら中点を連結することによってライン化する。特に、ドロネー三角形分割手法の中でも輪郭や穴抜けなどの条件を考慮した分割法である制約付ドロネー三角分割手法を用いる。
ポリゴンをライン化する処理は、地図の表示速度に影響するものであることから、いかに処理速度の高速化を図るかが課題となる。
本実施例においては、ドロネー三角形分割手法を用いてライン化を実行する。ドロネー三角形分割手法とは、ポリゴンを、その構成点を頂点とする複数の三角形に分割する手法である。そして、当該分割された三角形を構成する各辺の中点をラインの候補点とするとともに、それら中点を連結することによってライン化する。特に、ドロネー三角形分割手法の中でも輪郭や穴抜けなどの条件を考慮した分割法である制約付ドロネー三角分割手法を用いる。
(制約付ドロネー三角分割手法)
制約付ドロネー三角分割手法とは、具体的には、平面上に与えられたポリゴンの候補点のうち3点を頂点とする三角形を規定する。そして、当該三角形の外接円の内部に他の三角形の頂点を含まないような三角形でポリゴンを分割する方法である。この三角形分割法によれば、分割された三角形の最小角を最大にすることができるという特徴を持っている。
制約付ドロネー三角分割手法とは、具体的には、平面上に与えられたポリゴンの候補点のうち3点を頂点とする三角形を規定する。そして、当該三角形の外接円の内部に他の三角形の頂点を含まないような三角形でポリゴンを分割する方法である。この三角形分割法によれば、分割された三角形の最小角を最大にすることができるという特徴を持っている。
以下に、制約付ドロネー三角分割手法を用いて、地図を構成するポリゴンをライン化する手法の手順について説明する。
図3、4に示すように、まず、CPU16は、1つの河川ポリゴン41を選択するとともに、当該河川ポリゴン41を構成する全ての構成点42の座標データをキャッシュメモリ15に読み込む(ステップS31)。次に、CPU16は、読み込まれた河川ポリゴン41の構成点42から3つの頂点を選択して(ステップS32)、当該頂点の外接円43の内側に他の構成点42が存在するか否かの判定を行う(ステップS33)。
図3、4に示すように、まず、CPU16は、1つの河川ポリゴン41を選択するとともに、当該河川ポリゴン41を構成する全ての構成点42の座標データをキャッシュメモリ15に読み込む(ステップS31)。次に、CPU16は、読み込まれた河川ポリゴン41の構成点42から3つの頂点を選択して(ステップS32)、当該頂点の外接円43の内側に他の構成点42が存在するか否かの判定を行う(ステップS33)。
外接円43の内側に他の構成点42が存在する場合には、CPU16は、当該3つの頂点からなる三角形を形成することなく、別の3つの頂点を選択する。一方、外接円43の内側に他の構成点42が存在しない場合には、当該3つの頂点からなる三角形はドロネー三角形の条件に適合するため、CPU16は、この三角形で河川ポリゴン41を分割する(ステップS34)。
次に、CPU16によって、三角形への分割処理が終了したか否かが判定される(ステップS35)。三角形への分割処理が終了していないと判定された場合には、CPU16は分割処理を継続する。この分割処理は、河川ポリゴン41を構成する構成点42のうち、順次選択される3つの構成点42の全て組み合わせに対して実行される。
一方、三角形への分割処理が終了したと判定された場合、図5に示すように、CPU16は分割された三角形44を構成する各辺45の中点46をラインの候補点に設定する(ステップS36)。
一方、三角形への分割処理が終了したと判定された場合、図5に示すように、CPU16は分割された三角形44を構成する各辺45の中点46をラインの候補点に設定する(ステップS36)。
ここで、三角形44を構成する各辺45のうち、河川ポリゴン41を構成する辺47については、CPU16は、候補点を設定する処理の対象から除外する。
次に、CPU16は、河川ポリゴン41を構成する辺47のうち2辺が同一の三角形の辺として採用されているものを抽出する。そして、CPU16は、当該2辺を接続する頂点を、端点の候補点42aとして決定するとともに、当該端点をラインの候補点として追加する(ステップS37)。
次に、CPU16は、河川ポリゴン41を構成する辺47のうち2辺が同一の三角形の辺として採用されているものを抽出する。そして、CPU16は、当該2辺を接続する頂点を、端点の候補点42aとして決定するとともに、当該端点をラインの候補点として追加する(ステップS37)。
そして、図6に示すように、CPU16は、一方の端点の候補点42aから他方の端点の候補点42aまで、角度変化と距離とを考慮しつつラインの候補点46を順に接続することで、ライン48を生成する(ステップS38)。
なお、他の河川ポリゴンとの繋がりを考慮するため、CPU16は、生成されたライン48から端点の候補点42aに接続するライン49を除去する。以上の処理は、表示対象となる全ての領域におけるポリゴンについて実行される。
なお、他の河川ポリゴンとの繋がりを考慮するため、CPU16は、生成されたライン48から端点の候補点42aに接続するライン49を除去する。以上の処理は、表示対象となる全ての領域におけるポリゴンについて実行される。
(再帰的制約付ドロネー三角分割手法)
以上説明した制約付ドロネー三角分割手法は、全ての河川ポリゴンの構成点から抽出される3点の全ての組み合わせに対して分割できるか否かを判断するものであるから、構成点の数が増加するにつれて処理時間も長くなる。
そこで、制約付ドロネー三角分割手法を改良してラインを生成する際における処理時間の短縮化を実現する手法について説明する。
以上説明した制約付ドロネー三角分割手法は、全ての河川ポリゴンの構成点から抽出される3点の全ての組み合わせに対して分割できるか否かを判断するものであるから、構成点の数が増加するにつれて処理時間も長くなる。
そこで、制約付ドロネー三角分割手法を改良してラインを生成する際における処理時間の短縮化を実現する手法について説明する。
ドロネー三角形の判定回数を減らす、つまり分割する際に判定の対象となる三角形の数を減らすことができれば、その分だけ処理時間を短縮することができる。本実施例では、河川ポリゴンに対して制約付ドロネー三角分割手法を適用する場合に、一定の条件を満たした三角形を河川ポリゴンから除外して、河川ポリゴンを三角形に再帰的に分割していくという方法を採用する。
本アルゴリズムの概要は、以下のとおりである。まず、ポリゴンを構成する任意の2つの構成点を固定して、ドロネー三角形の条件を満たす残りの1点を検出する。そして、これら3点で構成される三角形によって分割される2つのポリゴンを新たに生成し、再びそれらのポリゴンに対して制約付ドロネー三角分割を実行する。この処理を、逐次生成されるポリゴンの構成点が3点となるまで、すなわち、全てのポリゴンが三角形になるまで実行することでラインの候補点を算出する。
以下に、制約付ドロネー三角分割手法を再帰的に用いて、ポリゴンをライン化する手順について具体的に説明する。
図7、9(a)に示すように、まず、CPU16は、処理対象となる1つの河川ポリゴン91を選択する。そして、CPU16は当該河川ポリゴン91における構成点92の全ての座標データをキャッシュメモリ15に読み込む(ステップS701)。
図7、9(a)に示すように、まず、CPU16は、処理対象となる1つの河川ポリゴン91を選択する。そして、CPU16は当該河川ポリゴン91における構成点92の全ての座標データをキャッシュメモリ15に読み込む(ステップS701)。
次に、図9(b)に示すように、読み込まれた全ての構成点92のうち、CPU16は、任意の2つの構成点92a,92bを初期点として選択するとともに(ステップS702)、他の構成点92の中から以下の4つの条件を満たす構成点92を1つ検出する(ステップS703)。
(a)任意の2つの構成点92a,92bと検出された1つの構成点との3点を頂点とする三角形の外接円内に他の構成点が入っていない。
(b)3点を頂点とする三角形の重心点が河川ポリゴン91の内部に存在する。
(c)3点を頂点とする三角形の辺の中点が河川ポリゴン91の内部に存在する。
(d)3点を頂点とする三角形の辺が河川ポリゴン91の各辺と交差しない。
(a)任意の2つの構成点92a,92bと検出された1つの構成点との3点を頂点とする三角形の外接円内に他の構成点が入っていない。
(b)3点を頂点とする三角形の重心点が河川ポリゴン91の内部に存在する。
(c)3点を頂点とする三角形の辺の中点が河川ポリゴン91の内部に存在する。
(d)3点を頂点とする三角形の辺が河川ポリゴン91の各辺と交差しない。
ここで、初期点は、CPU16の初期点選択機能によって選択するようにしてもよい。例えば、CPU16は、任意の初期点として、分割される複数の河川ポリゴン91における構成点92の数が略同一となるような点を選択する。このような初期点を選択することで、分割されるそれぞれの河川ポリゴンにおける構成点92の数が略同一となるため、更なる河川ポリゴンの分割処理が効率化される。
次に、CPU16は、上記(a)〜(d)の4つの条件を全て満たす構成点が存在するか否かを判定する(ステップS704)。当該構成点が存在しないと判定した場合、CPU16は、河川ポリゴン91を構成する全ての構成点92を対象として改めて(b)〜(d)の3つの条件を満たす構成点を検出する(ステップS705)。そして、CPU16は、当該条件を満たす3つの構成点92で三角形を形成した場合において最小角が最大となるような構成点を選択する(ステップS706)。
一方、上記(a)〜(d)の4つの条件を全て満たす構成点が存在すると判定した場合、CPU16は、当該条件を満たす構成点と任意の2つの構成点92a,92bとで三角形を形成した場合において最小角が最大となるような構成点92cを選択する(ステップS706)。
次に、図9(b)(c)に示すように、CPU16は、上述した任意の2つの構成点92a,92bと選択された構成点92cとで構成される三角形93により、河川ポリゴン91を新たな2つの河川ポリゴン91a、91bに分割する(ステップS707)。
次に、図9(b)(c)に示すように、CPU16は、上述した任意の2つの構成点92a,92bと選択された構成点92cとで構成される三角形93により、河川ポリゴン91を新たな2つの河川ポリゴン91a、91bに分割する(ステップS707)。
このとき、新たに生成される2つの河川ポリゴン91a、91bを構成する辺の一部として、三角形93を構成する2つの構成点92a、92c及び92b、92cをそれぞれ接続することによって生成された辺が採用される。これは、分割して生成された河川ポリゴン91a、91bにおいて、生成された三角形93の辺を基準として1点を探すため、ラインの候補点が端点の候補点まで繋がり関係を保ったまま記憶できるようにするためである。
次に、図10に示すように、CPU16は、最初に読み込んだ2つの構成点92a、92bと検出された構成点92cとのそれぞれの中点94a、94bをラインの候補点としてキャッシュメモリ15に記憶する。また、CPU16は、最初に読み込んだ2つの構成点と隣り合う点以外の構成点を検出した場合(分割後の河川ポリゴンを構成する構成点の総数が2点以上で構成される場合)、最初に読み込んだ2つの構成点の中点を分岐点としてキャッシュメモリ15に記憶する(ステップS708)。
そして、CPU16は、新たに生成された河川ポリゴンの構成点の総数が3(河川ポリゴンが三角形)であった場合、当該河川ポリゴンの構成点を端点の候補点、及びラインの候補点としてキャッシュメモリ15に記憶する(ステップS709)。
次に、CPU16は、新たに生成される河川ポリゴンの構成点の総数が3(全ての河川ポリゴンが三角形)となったか否かを判定する(ステップS710)。新たに生成される河川ポリゴンの構成点の総数が4以上である場合には、当該河川ポリゴンの分割処理を継続する(ステップS702)。一方、新たに生成される河川ポリゴンの構成点の総数が3である場合には分割処理を終了する。
次に、CPU16は、新たに生成される河川ポリゴンの構成点の総数が3(全ての河川ポリゴンが三角形)となったか否かを判定する(ステップS710)。新たに生成される河川ポリゴンの構成点の総数が4以上である場合には、当該河川ポリゴンの分割処理を継続する(ステップS702)。一方、新たに生成される河川ポリゴンの構成点の総数が3である場合には分割処理を終了する。
図10に示す例の場合、新たに生成された河川ポリゴン91a、91bの構成点92の総数は、それぞれ4、8であり、何れも3ではない。したがって、河川ポリゴン91a、91bの分割処理は継続される。すなわち、CPU16は、河川ポリゴン91aを更に河川ポリゴン91c、91dに分割するとともに、河川ポリゴン91bを更に河川ポリゴン91e〜91jに分割する。そして、CPU16は、三角形となった各河川ポリゴン91c〜91jを構成する辺の中点をラインの候補点94及び分岐点95としてキャッシュメモリ15に記憶する。更に、CPU16は、端点の候補点96についても、キャッシュメモリ15に記憶する。
次に、図11(a)に示すように、CPU16は、キャッシュメモリ15に記憶されたラインの候補点94、端点の候補点96、分岐点95の各座標データを読み込む。そして、CPU16は、ラインの候補点94を順に読み込み、当該ラインの候補点94のうち、端点の候補点96及び分岐点95と一致する点を検出する(ステップS711)。これと同時に、ラインの候補点94間の距離に関する距離情報をキャッシュメモリ15に記憶する。
図11(b)に示すように、分岐点95と一致する点があった場合、CPU16は、ラインの候補点94間の距離情報を初期化して再び端点の候補点96、分岐点95と一致する点を検出する。そして、端点の候補点96を検出した場合、CPU16は、距離情報をキャッシュメモリ15に記憶し、再び端点の候補点96、分岐点95と一致する点を検出する。連続して端点の候補点96を検出した場合には、CPU16は距離情報を比較して短い方の点情報をラインの候補点94、端点の候補点96、及び分岐点95から削除する。その後、ステップS711からの処理を繰り返す。
図11(c)に示すように、CPU16は、河川ポリゴン91が分割された三角形の端点の候補点96が2つになった時点で処理を終了するとともに、その2つの候補点96がラインの始点及び終点になるようラインの候補点94を接続する(ステップS712)。この処理によって、河川ポリゴン91に対応するラインが生成される。
そして、CPU16は、分割された三角形の端点における候補点96のうち、最初に読み込んだ河川ポリゴン91を構成する構成点の初期点から遠い方の構成点を新たな初期点として河川ポリゴン91の構成点の順序を並べ替えるとともに、再度ステップS701からの処理を実行することにより最も長いラインを検出する(ステップS713)。
なお、このようにして生成されたライン97は分岐点95で必ず別々の端点の候補点96に向かって2本のラインが形成される。そのため、分岐点95から各端点の候補点96までの距離を比較することによってより長いラインを作成することができる。
なお、このようにして生成されたライン97は分岐点95で必ず別々の端点の候補点96に向かって2本のラインが形成される。そのため、分岐点95から各端点の候補点96までの距離を比較することによってより長いラインを作成することができる。
しかしながら、最初に三角分割を行ったラインの候補点94が必ずラインを構成する点として残ってしまうため(河川ポリゴン91の初期点を固定して三角分割処理を開始しているため)、最も長いラインとはならない可能性がある。そこで一度生成したライン97のポリゴンの初期点から遠い方の端点の候補点を河川ポリゴンの初期点として再度ラインの検出処理を行うことで最も長いラインの検出が可能になる。
(B)隣接するラインの接続処理
実際にライン化の処理対象となるポリゴンのほとんどが別のポリゴンと隣接している。この場合、単にそれぞれのポリゴンをライン化しただけでは、ポリゴン同士の接続部分が不連続となり、見栄えに影響を及ぼす場合もある。そこで、隣接するポリゴンについては、ライン化する際に、接続する接続処理を施す。
実際にライン化の処理対象となるポリゴンのほとんどが別のポリゴンと隣接している。この場合、単にそれぞれのポリゴンをライン化しただけでは、ポリゴン同士の接続部分が不連続となり、見栄えに影響を及ぼす場合もある。そこで、隣接するポリゴンについては、ライン化する際に、接続する接続処理を施す。
隣接するポリゴンをライン化する際における、ラインの接続方法について説明する。
まず、CPU16は、隣接するポリゴン同士の接続部分にラインを接続するための点(以下、「接続点」ともいう。)を設定する。このとき、接続点は隣接するポリゴン同士の接点における両端の垂直二等分線とポリゴンの輪郭とが交わった点とする。この接続点から処理対象となっているラインの構成点のうち最も近い点がラインの端点であれば、CPU16は、その接続点を対象となるポリゴンから作成されたラインに加える。
まず、CPU16は、隣接するポリゴン同士の接続部分にラインを接続するための点(以下、「接続点」ともいう。)を設定する。このとき、接続点は隣接するポリゴン同士の接点における両端の垂直二等分線とポリゴンの輪郭とが交わった点とする。この接続点から処理対象となっているラインの構成点のうち最も近い点がラインの端点であれば、CPU16は、その接続点を対象となるポリゴンから作成されたラインに加える。
隣接するデータがポリゴンであった場合、CPU16は、この時点で作成されたものをラインデータとする。隣接するデータがラインデータになっていた場合、CPU16は、接続点から最も近くにある隣接するラインの構成点を検出する。このとき、CPU16は、当該構成点が隣接するラインの端点でない場合のみ対象となっているラインにこの構成点を加える。
この構成点が隣接するラインの端点であった場合、端点を接続してしまうと隣接するラインに同様の処理を行う際に隣接するラインからも対象の端点までラインを伸ばしてしまうための重複が起きることになる。そのため、CPU16は、接続点から最も近い隣接するラインの構成点が隣接するラインの端点であった場合、対象となるラインには接続点のみを加える。
以上の手法をポリゴンをライン化した後に適応することで自然なラインを作成することができる。
また、実際のデータにはポリゴンのみでなくラインも存在している。ここで、ポリゴンをライン化したため、そのポリゴンと繋がっていたラインの接続部が途切れてしまう場合がある。そのため、CPU16は接続点をラインと元のポリゴンの接続点として同様の処理を行うことで、より自然なラインを作成する。
また、実際のデータにはポリゴンのみでなくラインも存在している。ここで、ポリゴンをライン化したため、そのポリゴンと繋がっていたラインの接続部が途切れてしまう場合がある。そのため、CPU16は接続点をラインと元のポリゴンの接続点として同様の処理を行うことで、より自然なラインを作成する。
(その他の高速化手法について)
地図を表示する際の処理を高速化するべく、CPU16は、河川ポリゴンや道路ポリゴンの幅を検出して、その幅に関する情報に基づいて河川ポリゴン等をライン状に変換するか否か決定する判断機能を備えてもよい。そして、その幅が予め設定されている条件を満たす場合にのみ、当該河川ポリゴンや道路ポリゴン等についてのライン化を行う。例えば、幅が予め設定されている閾値以下であった場合にのみ、CPU16はポリゴンのライン化を行う。地図上には様々な幅を持つポリゴンが存在しており、太い幅のポリゴンを細い幅のポリゴンと同様にライン化するとかえって見づらい地図になる場合もあるからである。
地図を表示する際の処理を高速化するべく、CPU16は、河川ポリゴンや道路ポリゴンの幅を検出して、その幅に関する情報に基づいて河川ポリゴン等をライン状に変換するか否か決定する判断機能を備えてもよい。そして、その幅が予め設定されている条件を満たす場合にのみ、当該河川ポリゴンや道路ポリゴン等についてのライン化を行う。例えば、幅が予め設定されている閾値以下であった場合にのみ、CPU16はポリゴンのライン化を行う。地図上には様々な幅を持つポリゴンが存在しており、太い幅のポリゴンを細い幅のポリゴンと同様にライン化するとかえって見づらい地図になる場合もあるからである。
ポリゴンの幅を検出する手法としては、以下の手法がある。
・手法1:垂線の長さを用いる
CPU16は、ポリゴンをライン化した後に、ラインの構成点から垂線を延ばし、その垂線と元のポリゴンが交わった点の距離が最も小さいものの2倍をその点におけるポリゴンの幅とする。そして、全ての点におけるポリゴンの幅の平均をとることで、そのポリゴン全体の幅とする。
・手法1:垂線の長さを用いる
CPU16は、ポリゴンをライン化した後に、ラインの構成点から垂線を延ばし、その垂線と元のポリゴンが交わった点の距離が最も小さいものの2倍をその点におけるポリゴンの幅とする。そして、全ての点におけるポリゴンの幅の平均をとることで、そのポリゴン全体の幅とする。
・手法2:分割した三角形の辺の長さを利用する
CPU16は、ポリゴンを複数の三角形に分割して、ラインの候補点を検出する際に、ラインの候補点を検出した三角形の辺の長さをその候補点におけるポリゴンの幅として記憶する。そして、CPU16は、その候補点の中からラインの構成点となった点におけるポリゴンの幅の平均をとることで、そのポリゴン全体の幅を求める。
そのほかにも、ポリゴンに予め属性データとして幅のレベル情報を付与しておき、CPU16が当該属性データに基づいてライン化を行うか否か決定するなどの手法も考えられる。
CPU16は、ポリゴンを複数の三角形に分割して、ラインの候補点を検出する際に、ラインの候補点を検出した三角形の辺の長さをその候補点におけるポリゴンの幅として記憶する。そして、CPU16は、その候補点の中からラインの構成点となった点におけるポリゴンの幅の平均をとることで、そのポリゴン全体の幅を求める。
そのほかにも、ポリゴンに予め属性データとして幅のレベル情報を付与しておき、CPU16が当該属性データに基づいてライン化を行うか否か決定するなどの手法も考えられる。
(実施例の効果)
以上説明したとおり、本実施例の地図表示システムは、以下の効果を奏する。
・縮尺の大きな電子地図データから縮尺の小さな電子地図データを生成するようにしたため、複数の縮尺の異なる地図をハードディスク14に記憶させておく必要がない。
・河川ポリゴンの構成点数をnとした場合、改良前の制約付ドロネー三角分割手法における処理時間のオーダはO(n(n-1)(n-2)/6)となる。一方、改良後の再帰的な制約付ドロネー三角分割手法における処理時間のオーダはO((n-1)(n-2)/2)となる。したがって、河川ポリゴンを構成する構成点が多いほど、処理時間の短縮化の効果は顕著となる。
以上説明したとおり、本実施例の地図表示システムは、以下の効果を奏する。
・縮尺の大きな電子地図データから縮尺の小さな電子地図データを生成するようにしたため、複数の縮尺の異なる地図をハードディスク14に記憶させておく必要がない。
・河川ポリゴンの構成点数をnとした場合、改良前の制約付ドロネー三角分割手法における処理時間のオーダはO(n(n-1)(n-2)/6)となる。一方、改良後の再帰的な制約付ドロネー三角分割手法における処理時間のオーダはO((n-1)(n-2)/2)となる。したがって、河川ポリゴンを構成する構成点が多いほど、処理時間の短縮化の効果は顕著となる。
・河川ポリゴンの形状を考慮してライン化するため、縮尺が小さな地図に表示を切り替える場合であっても、再現性のよい河川や道路等を表示することができる。
・縮尺の小さな地図を、詳細地図から生成することができるので、尺度の異なる複数の地図を必要とせず、記憶容量の低減を実現することができる。
・幅が予め設定されている閾値以下であった場合にのみ、ポリゴンのライン化を行うようにしたことで、不要なライン化を抑制することができる。したがって、表示処理の高速化を実現しつつ、見やすい地図を表示することが可能となる。
・縮尺の小さな地図を、詳細地図から生成することができるので、尺度の異なる複数の地図を必要とせず、記憶容量の低減を実現することができる。
・幅が予め設定されている閾値以下であった場合にのみ、ポリゴンのライン化を行うようにしたことで、不要なライン化を抑制することができる。したがって、表示処理の高速化を実現しつつ、見やすい地図を表示することが可能となる。
(変形例)
・本実施例は、縮尺が大きな地図から縮尺が小さな地図を生成する場合に適用してもよい。例えば、広範囲(例えば日本全国)の大縮尺(詳細)地図データから、小縮尺地図データを生成するバッチ処理等にも適用可能である。
・本実施例は、縮尺が大きな地図から縮尺が小さな地図を生成する場合に適用してもよい。例えば、広範囲(例えば日本全国)の大縮尺(詳細)地図データから、小縮尺地図データを生成するバッチ処理等にも適用可能である。
・CPU16は、河川ポリゴンを構成する構成点の数を間引く間引き機能を備えるようにしてもよい。制約付ドロネー三角分割手法の処理回数を削減することができるため、結果として処理速度の高速化を実現することができるからである。具体的には、例えば隣接する2つの座標点間の距離が予め設定されている所定の距離となるように河川ポリゴンの構成点の間引きを実行する。また、河川ポリゴンを構成する構成点に対して、1点間隔で間引くなど、一定の間隔で間引きを実行するようにしてもよい。
・地図表示システムは、インターネット等のネットワークを介して通信可能に接続されているサーバとクライアント端末とを含んで構成するようにしてもよい。
・電子地図データを構成する各種地物の形状は、ポリゴンデータ形式のほかに、ラスタデータ形式、ベクトルデータ形式、その他種々のデータ形式を採用するとともに、表示する際にこれらのデータ形式をポリゴンデータ形式に変換するようにしてもよい。
・CPU16によって選択される初期点を1つとし、他の構成点92の中から条件を満たす構成点92を2つ検出するようにしてもよい。
・電子地図データを構成する各種地物の形状は、ポリゴンデータ形式のほかに、ラスタデータ形式、ベクトルデータ形式、その他種々のデータ形式を採用するとともに、表示する際にこれらのデータ形式をポリゴンデータ形式に変換するようにしてもよい。
・CPU16によって選択される初期点を1つとし、他の構成点92の中から条件を満たす構成点92を2つ検出するようにしてもよい。
11…地図生成装置としてのコンピュータ
12…表示部としてのディスプレイ
14…記憶部としてのハードディスク
15…キャッシュメモリ
16…制御部としてのCPU
12…表示部としてのディスプレイ
14…記憶部としてのハードディスク
15…キャッシュメモリ
16…制御部としてのCPU
Claims (5)
- 複数の構成点を頂点とするポリゴンで表現される地物が含まれる電子地図データを記憶する記憶部と、
前記電子地図データに基づいて所定範囲の地図を生成する制御部と
を備えた地図生成装置であって、
前記制御部は、
前記ポリゴンを、前記構成点における任意の初期点を頂点として含む三角形であってドロネー三角形分割手法を用いて算出された三角形によりに分割するとともに、前記三角形により分割された複数のポリゴンをドロネー三角形分割手法を用いて算出された三角形により、分割される全てのポリゴンの形状が三角形になるまで、再帰的に分割する分割機能と、
算出された前記三角形を構成する辺であって前記ポリゴンの内部に存在する辺の中点を連結することによりライン状のデータを生成するラインデータ生成機能と
を有することを特徴とする地図生成装置。 - 前記制御部は、前記任意の初期点として、分割される複数のポリゴンにおける前記構成点の数が略同一となる点を選択する初期点選択機能を更に有することを特徴とする請求項1に記載の地図生成装置。
- 前記制御部は、前記構成点の数を間引く間引き機能を更に有することを特徴とする請求項1又は請求項2に記載の地図生成装置。
- 前記制御部は、前記ポリゴンの幅に関する情報に基づいて該ポリゴンをライン状に変換するか否か決定する判断機能を更に有することを特徴とする請求項1〜3のうち何れか一項に記載の地図生成装置。
- コンピュータが、
記憶部に記憶されている電子地図データに含まれる地物を表現するための複数の構成点を頂点とするポリゴンについて、前記構成点における任意の初期点を頂点として含む三角形であってドロネー三角形分割手法を用いて算出された三角形により分割するとともに、前記三角形により分割された複数のポリゴンをドロネー三角形分割手法を用いて算出された三角形により、分割される全てのポリゴンの形状が三角形になるまで、再帰的に分割する分割工程と、
算出された前記三角形を構成する辺であって前記ポリゴンの内部に存在する辺の中点を連結することによりライン状のデータを生成するラインデータ生成機能と、
前記ライン状のデータで表される地物が含まれる所定範囲の地図を生成する地図生成工程と
を実行することを特徴とする地図生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009182569A JP2011033987A (ja) | 2009-08-05 | 2009-08-05 | 地図生成装置及び地図生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009182569A JP2011033987A (ja) | 2009-08-05 | 2009-08-05 | 地図生成装置及び地図生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011033987A true JP2011033987A (ja) | 2011-02-17 |
Family
ID=43763099
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009182569A Pending JP2011033987A (ja) | 2009-08-05 | 2009-08-05 | 地図生成装置及び地図生成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011033987A (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102607569A (zh) * | 2012-01-17 | 2012-07-25 | 光庭导航数据(武汉)有限公司 | 导航中大比例尺水系自动生成多重小比例尺数据的方法 |
JP2016191777A (ja) * | 2015-03-31 | 2016-11-10 | 株式会社ゼンリン | 地図表示装置表示装置、地図表示方法、コンピュータプログラムおよび記録媒体 |
JP2018028867A (ja) * | 2016-08-19 | 2018-02-22 | 日本電信電話株式会社 | 経路情報生成装置、経路結合装置、方法、及びプログラム |
CN107843240A (zh) * | 2017-09-14 | 2018-03-27 | 中国人民解放军92859部队 | 一种海岸带区域无人机影像同名点信息快速提取方法 |
JP2020074060A (ja) * | 2019-08-28 | 2020-05-14 | 日本電信電話株式会社 | 経路情報生成装置、方法、及びプログラム |
JP2021113990A (ja) * | 2020-09-07 | 2021-08-05 | ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッドBeijing Baidu Netcom Science Technology Co., Ltd. | 電子地図表示方法、装置、機器及び読み取り可能な記憶媒体 |
CN114184189A (zh) * | 2021-12-07 | 2022-03-15 | 高德软件有限公司 | 面状地物要素的测量方法、装置、存储介质及程序产品 |
-
2009
- 2009-08-05 JP JP2009182569A patent/JP2011033987A/ja active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102607569A (zh) * | 2012-01-17 | 2012-07-25 | 光庭导航数据(武汉)有限公司 | 导航中大比例尺水系自动生成多重小比例尺数据的方法 |
JP2016191777A (ja) * | 2015-03-31 | 2016-11-10 | 株式会社ゼンリン | 地図表示装置表示装置、地図表示方法、コンピュータプログラムおよび記録媒体 |
JP2018028867A (ja) * | 2016-08-19 | 2018-02-22 | 日本電信電話株式会社 | 経路情報生成装置、経路結合装置、方法、及びプログラム |
CN107843240A (zh) * | 2017-09-14 | 2018-03-27 | 中国人民解放军92859部队 | 一种海岸带区域无人机影像同名点信息快速提取方法 |
JP2020074060A (ja) * | 2019-08-28 | 2020-05-14 | 日本電信電話株式会社 | 経路情報生成装置、方法、及びプログラム |
JP2021113990A (ja) * | 2020-09-07 | 2021-08-05 | ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッドBeijing Baidu Netcom Science Technology Co., Ltd. | 電子地図表示方法、装置、機器及び読み取り可能な記憶媒体 |
JP7253002B2 (ja) | 2020-09-07 | 2023-04-05 | ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド | 電子地図表示方法、装置、機器及び読み取り可能な記憶媒体 |
CN114184189A (zh) * | 2021-12-07 | 2022-03-15 | 高德软件有限公司 | 面状地物要素的测量方法、装置、存储介质及程序产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2011033987A (ja) | 地図生成装置及び地図生成方法 | |
Piegl et al. | Parametrization for surface fitting in reverse engineering | |
WO2013057760A1 (en) | Digital elevation model generating system and method of generating a digital elevation model | |
JP6380051B2 (ja) | 有限要素演算プログラム、有限要素演算装置および有限要素演算方法 | |
CN108364331A (zh) | 一种等值线生成方法、系统和存储介质 | |
US20090112455A1 (en) | Method and system for rendering simplified point finding maps | |
WO2022100457A1 (zh) | 作业路线规划方法、装置、电子设备以及可读存储介质 | |
CN108563915B (zh) | 车辆数字化仿真测试模型构建系统及方法、计算机程序 | |
CN116129076B (zh) | 一种规则特征保持的建筑物Mesh模型简化方法 | |
Gold | Tessellations in GIS: Part II–making changes | |
CN111008429B (zh) | 一种基于点云的异构cad几何一致性对比方法 | |
Li et al. | An algorithm for filling complex holes in reverse engineering | |
JP4140338B2 (ja) | 要約地図生成装置、道路地図変換装置、該プログラム、及び要約地図サービスシステム | |
CN105677843A (zh) | 一种自动获取宗地四至属性的方法 | |
CN113470145B (zh) | 地图数据处理方法、装置、设备以及存储介质 | |
JPWO2010092680A1 (ja) | 地図情報処理装置、地図情報処理方法、地図情報処理プログラム、及び記録媒体 | |
JP4748770B2 (ja) | 近接点算出方法および装置 | |
CN110909097B (zh) | 多边形电子围栏生成方法、装置、计算机设备和存储介质 | |
CN112199460A (zh) | 矢量地图狭长弧段识别方法 | |
CN114329575B (zh) | 基于内插山脊线的等高线加密方法、系统、介质及设备 | |
KR20100007007A (ko) | 레이저 점으로 이루어진 객체들의 최 외곽 벡터 추출 방법 | |
JP2004348708A (ja) | 地図情報システム用ポリゴン生成方法及びその装置 | |
CN113313829B (zh) | 显示模型的快速构建处理方法及装置 | |
JPH11339071A (ja) | 点群からのポリゴン自動生成システム | |
JP7168099B2 (ja) | 前処理装置、判定システム、前処理方法および前処理プログラム |