Document

Octgridに基づく
効率的な3D地形図生成法
◎佐藤 雄一(東洋大学) 塩野 康徳(東洋大学)
土田 賢省(東洋大学) 夜久 竹夫(日本大学)
発表内容
1. はじめに
2. 準備
3. 3D地形図生成法
4. 考察
5. まとめ
6. 今後の課題
2009/3/19
電子情報通信学会2009年総合大会
2
1. はじめに
1. 1. 背景
1. 2. 目的
2009/3/19
電子情報通信学会2009年総合大会
3
1. 1. 背景(1/2)
• 地形の直感的な理解を補助する手段として,
3D地形図がよく用いられている
• 3D地形図の解像度を考慮した効率化の研究
は,十分に進んでいるとは言い難い
2009/3/19
電子情報通信学会2009年総合大会
4
1. 1. 背景(2/2)
我々のプロジェクトは,解像度の異なる地形図
データを,統一的かつ効率的に扱うことが目標
すでに我々は,いくつかの均一メッシュを結合し,
不均一メッシュを生成するアルゴリズムを考案
(Kenshi Nomaki, et al., “Octal graph representation of
multi resolution 3D landform maps” SIAM Conf.
Geometric Design & Computation, Nov. 2005, Phoenix,
Arizona, USA.)
2009/3/19
電子情報通信学会2009年総合大会
5
1. 2. 目的
Octgridに基づく効率的な3D地形図の生成
2009/3/19
電子情報通信学会2009年総合大会
6
2. 準備
2. 1. 3D地形図
2. 2. 表の定義
2. 3. Octgridとは
2. 4. H7CODEとは
2009/3/19
電子情報通信学会2009年総合大会
7
2. 1. 3D地形図
地形を格子状に区切り,その格子の点上の標高
データから生成したもの
図1 3次元座標から3D地形図を表現した例とそのVRML
2009/3/19
電子情報通信学会2009年総合大会
8
2. 2. 表の定義
• 周辺セル(perimeterセル)を表の周囲に持つ形で
表を定義
• 周辺セルは,幅と高さの一方または,両方が0
図2. 2 周辺セルを持った表の例
2009/3/19
電子情報通信学会2009年総合大会
9
2. 3. Octgridとは
• ノードの最大次数は8
図2 矩形図とそれに対応するoctgrid
2009/3/19
電子情報通信学会2009年総合大会
10
2. 4. H7CODEとは
• Octgridによりモデル化された3次元地形図のた
めのリスト型のデータ構造
• 局所的かつ動的な解像度の変化,平坦な地形
や起伏の激しい地形に応じた解像度の変化に
対応するために作られた
2009/3/19
電子情報通信学会2009年総合大会
11
3. 3D地形図生成法
3. 1. 単位セルと単位セルでないセル
3. 2. 均一領域と不均一領域
3. 3. 3D地形図生成法の流れ
3. 4. 不均一領域抽出アルゴリズム
3. 4. 1. 不均一領域抽出アルゴリズムフェーズⅠ
3. 4. 2. 不均一領域抽出アルゴリズムフェーズⅡ
3. 4. 3. 不均一領域抽出アルゴリズムフェーズⅢ
3. 5. 不均一領域抽出アルゴリズムの計算量
3. 6. 不均一領域のポリゴン生成
3. 7. 均一領域のポリゴン生成
3. 8. ポリゴンの合成
2009/3/19
電子情報通信学会2009年総合大会
12
3. 1. 単位セルと単位セルでないセル
図3. 1 単位セルと単位セルでないセルの例
2009/3/19
電子情報通信学会2009年総合大会
13
3. 2. 均一領域と不均一領域
図3. 2 均一領域と不均一領域の例
2009/3/19
電子情報通信学会2009年総合大会
14
3. 3. 3D地形図生成方法の流れ(1/2)
図4 3D地形図生成の流れ
2009/3/19
電子情報通信学会2009年総合大会
15
3. 3. 3D地形図生成方法の流れ(2/2)
Input : 解像度の異なる(不均一領域を含む)
地形図データ
Output: 地形図データ全体のVRMLファイル
2009/3/19
電子情報通信学会2009年総合大会
16
3. 4. 不均一領域抽出アルゴリズム(1/3)
Ⅰ Octgridのノード情報から,リスト型のデータ構
造 Corner Point Structureを作成
→不均一領域抽出アルゴリズムフェーズⅠ
Ⅱ Corner Point Structureに均一,不均一情報など
を追加
→不均一領域抽出アルゴリズムフェーズⅡ
Ⅲ 不均一領域の拡大,抽出
→不均一領域抽出アルゴリズムフェーズⅢ
2009/3/19
電子情報通信学会2009年総合大会
17
3. 4. 不均一領域抽出アルゴリズム(2/3)
Corner Point Structureとは
• 抽出アルゴリズムで用いる点(Corner Point)のID,
位置情報,Corner Point間のリンク,Corner Point
周り4象限の情報を持つデータ構造
2009/3/19
電子情報通信学会2009年総合大会
18
3. 4. 不均一領域抽出アルゴリズム(3/3)
Input: H7CODEファイル
Output: 不均一領域 Ri
2009/3/19
電子情報通信学会2009年総合大会
19
3. 4. 1. 不均一領域抽出アルゴリズムフェーズⅠ
0
10
20
表3. 4. 1 Corner Point Structureの内部データ構造の例
x
0
10
y
1
2
4
3
6
ID
x
y
up
low
left right
1
0
0
null
2
null
4
2
0
10
1
null
null
3
3
10
10
4
null
2
5
4
10
0
null
3
1
6
5
20
10
6
null
3
null
6
20
0
null
5
4
null
5
図3. 4. 1 Corner Pointの作り方
2009/3/19
電子情報通信学会2009年総合大会
20
3. 4. 2. 不均一領域抽出アルゴリズムフェーズⅡ(1/3)
0
0
10
1
4
均
10
20
2
7
均
20
30
6
不
3
不
8
5
9
図3. 4. 2. 1 4象限の均一,不均一データの例
2009/3/19
電子情報通信学会2009年総合大会
21
3. 4. 2. 不均一領域抽出アルゴリズムフェーズⅡ(2/3)
P
P
P
P
1
P
4
P
P
2
7
3
P
P
P
P
5
P
2009/3/19
P
8
6
P
P
P
図3. 4. 2. 2 周辺セルデータの格納例
電子情報通信学会2009年総合大会
P
P
22
3. 4. 2. 不均一領域抽出アルゴリズムフェーズⅡ(3/3)
P
P
1
P
不
不
2
不
不
P
均
均
P
均
均
5
P
2009/3/19
不
7
P
4
不
均
均
均
均
P
P
3
P
P
8
6
P
P
P
P
P
P
図3. 4. 2. 3 均一,不均一データの格納例
電子情報通信学会2009年総合大会
P
23
3. 4. 3. 不均一領域抽出アルゴリズムフェーズⅢ(1/2)
均
不 不
均 不
不
不 不
不 不
不 不
均
不 不
不 不
均
不 不
均 不
不
均
不 不
均 不
不
均
不 不
図3. 4. 3. 1 不均一領域拡張の6パターン
2009/3/19
電子情報通信学会2009年総合大会
24
3. 4. 3. 不均一領域抽出アルゴリズムフェーズⅢ(2/2)
P P
P P
P P
P 不
均
均 不
不
不 P
P 不
均
均 不
不
不 不
不 P
P 不
不 不
不 不
均
均 P
不
不 不
均
均 P
不
不 不
均
均 P
不
P 不
不 不
均
不
均 P
P P
P P
P P
図3. 4. 3. 2 不均一領域拡張の例
2009/3/19
電子情報通信学会2009年総合大会
25
3. 5. 不均一領域抽出アルゴリズムの計算量
不均一領域抽出アルゴリズムフェーズⅠ
→O(n)
不均一領域抽出アルゴリズムフェーズⅡ
→O(n)
不均一領域抽出アルゴリズムフェーズⅢ
→O(n) (予想)
全体としても O(n)であることが予想される.
ただし,nはノードの個数である.
2009/3/19
電子情報通信学会2009年総合大会
26
3. 6. 不均一領域のポリゴン生成
G1
R1
G2
R2
図5 不均一領域のポリゴン生成法
2009/3/19
電子情報通信学会2009年総合大会
27
3. 7. 均一領域のポリゴン生成
図3. 7 均一領域のポリゴン生成法
2009/3/19
電子情報通信学会2009年総合大会
28
3. 8. ポリゴンの合成
図7 ポリゴンの合成
2009/3/19
電子情報通信学会2009年総合大会
29
4 . 考察(1/5)
ドロネー三角形
+H7CODEを
→O(Nlo
均一と不均一メッシュデータ
ドロネー三角形
→O(Nlo
地形図データ
均一メッシュデータ
各々の三角形
図4. 1 他手法との比較
2009/3/19
電子情報通信学会2009年総合大会
30
4 . 考察(2/5)
• メッシュ数200×200でポリゴン数は79202
• 我々の手法を用いてポリゴンを生成した場合,
ポリゴン数が64004になり,15198個のポリゴンが
削減され19%ほどデータ量を減らすことが可能
と推定
図8 本手法が効果的であると予想される場合の例
2009/3/19
電子情報通信学会2009年総合大会
31
4 . 考察(3/5)
50×50の均一メッシュA
Aの中の33×20のセルを1つに
結合したメッシュB
図4. 2 本手法が効果的であるメッシュデータAとB
2009/3/19
電子情報通信学会2009年総合大会
32
4 . 考察(4/5)
50×50の均一メッシュA
2009/3/19
Aの中の33×20のセルを1つに
結合したメッシュB
ポリゴン数3584
ポリゴン数5002
図4. 3 本手法が効果的であるメッシュデータAとBのポリゴン
電子情報通信学会2009年総合大会
33
4 . 考察(5/5)
・不均一領域全体にドロネー三角形分割を用いた場
合の計算量
→O(nlogn)
・本手法を用いた場合の計算量
ドロネー三角形分割
→O(nlogn)
H7CODEを用いた三角形分割
→ O(n)
一定量以上,均一領域が存在した場合速くなる
図4. 4 本手法の計算量の考察例
2009/3/19
電子情報通信学会2009年総合大会
34
5 . まとめ
• Octgridによりモデル化されたH7CODEに基づく3D
地形図生成法の基本設計
• 不均一領域抽出アルゴリズムの提案
• 3D地形図生成法の効果の考察
2009/3/19
電子情報通信学会2009年総合大会
35
6 . 今後の課題
• 本手法のエディタ上での実現
• 不均一領域抽出アルゴリズムの計算量の数学
的証明
• quadtreeなどで用いられる既存のアルゴリズム
との比較
2009/3/19
電子情報通信学会2009年総合大会
36
2009/3/19
電子情報通信学会2009年総合大会
37
2009/3/19
電子情報通信学会2009年総合大会
38
2009/3/19
電子情報通信学会2009年総合大会
39
2. 3.Octgridとは(2/2)
辺の位置が等しく,
最も近いセルとの関係をエッジで定義
図2. 3 辺の位置が等しい関係
2009/3/19
電子情報通信学会2009年総合大会
40
3. 4. 2.不均一領域抽出アルゴリズムフェーズⅡ(1/5)
図3. 4. 2. 1 Corner Point周りの均一,不均一のパターン
2009/3/19
電子情報通信学会2009年総合大会
41
3. 4. 2.不均一領域抽出アルゴリズムフェーズⅡ(3/5)
均 均
不 均
不 不
不 均
均
均 不
不 不
不
不 不
2009/3/19
図3. 4. 2. 3 均一,不均一データの受け渡し方
電子情報通信学会2009年総合大会
42
不均一領域抽出アルゴリズム
• 各pointごとの,周り4象限の均一,不均一の判
定
1
2009/3/19
2
9
7
8
電子情報通信学会2009年総合大会
4
6
3
5
10
43
不均一領域抽出アルゴリズム
P
P
P
P
1
P
P
P
4
6
P
P
P
2
9
5
P
P
P
P
7
P
2009/3/19
3
10
8
P
P
P
電子情報通信学会2009年総合大会
P
P
44
不均一領域抽出アルゴリズム
P
P
P
P
1
P
不
不
不
不
2
均
均
不
P
均
均
不
不
均
均
均
均
P
6
P
P
5
不
不
P
不
P
10
8
P
P
P
3
P
P
4
不
9
7
2009/3/19
不
P
P
電子情報通信学会2009年総合大会
P
P
45
2. 4.H7CODEとは(2/3)
図3 H7CODEのノード
2009/3/19
電子情報通信学会2009年総合大会
46
2. 4.H7CODEとは(3/3)
ノ
ー
ド
番
2009/3/19号
周
辺
セ
ル
リ
ン
ク
情
報
位
置 図 H7CODEのファイル例
座
標
電子情報通信学会2009年総合大会
標
高
47
3. 4.均一領域のポリゴン生成(2/2)
• 均一領域部分で三角形分割を行う場合は,次
の2パターンのみであり,H7CODEの構造を用い
てポリゴンを容易に生成が可能
C
C
C
2009/3/19
C
電子情報通信学会2009年総合大会
48
3. 6.均一領域のポリゴン生成
C
C
C
2009/3/19
C
電子情報通信学会2009年総合大会
49
スライス構造と非スライス構造
スライス構造
2009/3/19
非スライス構造
電子情報通信学会2009年総合大会
50
quadtree
NE
2009/3/19
電子情報通信学会2009年総合大会
NW
SW
SE
51
quadtree
2009/3/19
電子情報通信学会2009年総合大会
52
計算量
・ドロネー三角形分割の計算量
→O(nlogn)
・H7CODEを用いて三角形分割した場合の計算量
→O(n)
・本手法を用いた場合の計算量
→ O(n) 以上 O(nlogn) 以下
2009/3/19
電子情報通信学会2009年総合大会
53
不均一領域抽出アルゴリズムの計算量
不均一領域抽出アルゴリズムフェーズⅠ
→O(n)
不均一領域抽出アルゴリズムフェーズⅡ
→O(n)
不均一領域抽出アルゴリズムフェーズⅢ
→O(n)
全体としてもO(n)であることが予想されている
2009/3/19
電子情報通信学会2009年総合大会
54
2009/3/19
電子情報通信学会2009年総合大会
55
3. 4. 3.不均一領域抽出アルゴリズムフェーズⅢ(2/2)
2009/3/19
P P
P P
P P
P 不
均
均 不
不
不 P
P 不
均
均 不
不
不 不
不 P
P 不
不 不
不 不
均
均 P
不
不 不
均
均 P
不
不 不
均
均 P
不
P 不
不 不
均
不
均 P
P P
P P
P P
電子情報通信学会2009年総合大会
56