Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
データベースと情報管理(2012a) 第14回: 3次元データの処理
1
3次元データの表現3次元ポリゴンモデル3次元物体モデルの類似形状検索
第14回3次元データの処理
3次元データの表現
データベースと情報管理(2012a) 第14回: 3次元データの処理
2
3次元データの利⽤
医療情報
化学分野における分⼦構造の解析 ⼯業製品のシミュレーション コンピュータゲーム 映画等で使われるCG映像
3次元データが利⽤される分野の例
3次元の医療データの例
CT(コンピュータ断層撮影法) MRI(核磁気共鳴画像法) PET(ポジトロン断層撮影法)
3次元データとCG コンピュータグラフィックス
(Computer Graphics; CG)
仮想現実、バーチャルリアリティ
(Virtual Reality; VR)
拡張現実、オーグメンテッド・リアリティ
(Augmented Reality; AR) グラフィックスカードの例
パーソナルコンピュータに搭載低価格・⾼性能
データベースと情報管理(2012a) 第14回: 3次元データの処理
3
3次元データの表現
ボリューメトリックモデル パラメトリック曲⾯モデル ポリゴンモデル 点群モデル
3次元データには様々な表現⽅法がある
例
その他:メタボール、CSG (Constructive Solid Geometry)、超2次関数
ボリューメトリックモデル
2次元画像データ
y
x
ピクセル(画素) ボクセルy
xz
3次元ボリュームデータ
データベースと情報管理(2012a) 第14回: 3次元データの処理
4
ボリュームデータの例1
ボリュームデータ256×256×256
ボリュームデータ⼀部分をカット
ボリュームデータ⼀部分をカット
ボリュームビジュアライゼーションボクセルの集合によって作成されるボリュームデータの断⾯画像を表⽰することや、データ内部を透視する技術
ボリュームデータの例2
ボリュームデータ128×128×128
ボリュームデータ⼀部分をカット
ボリュームデータ⼀部分をカット
ポリゴンモデルやパラメトリック曲⾯モデルと異なり、物体内部にもデータを持っている
データベースと情報管理(2012a) 第14回: 3次元データの処理
5
32×32×32 64×64×64 128×128×128 256×256×256
ボリュームデータの解像度 異なる解像度のボリュームデータを⽐較
より多くのボクセルを使⽤した物体が正確な形状になる
ボクセルが増えるとデータ容量が爆発的に⼤きくなる
257 Kbytes 2,049 Kbytes 16,385 Kbytes 131,073 Kbytes
130メガバイト!
ボリュームデータの例3 ボクセルが2値以上の場合
128×128×128 256階調
⼤理⽯の模様
データベースと情報管理(2012a) 第14回: 3次元データの処理
6
パラメトリック曲⾯パラメトリック曲⾯の例ベジェ曲⾯(Bezier surfaces)Bスプライン(B-Spline)NURBS (Non-Uniform Rational B-Splines;ナーブス)
※ベジエまたはビージエーが
より英語の発音に近い
NURBSによる曲⾯の例
パラメトリック曲線スプライン曲線の例
複数の制御点から定義される滑らかな曲線多項式により表現
データベースと情報管理(2012a) 第14回: 3次元データの処理
7
パラメトリック曲⾯の例 パラメトリック曲⾯は以下の2つで定義される:
制御点(コントロールポイント)のセット 基底関数のセット
数学的に正確な曲⾯を作成できるNURBSの例:16個の制御点と制御点位置の変化
CAD等による精密な図⾯作成にとって重要
点群モデル
ポイントベーストグラフィックス技術の利⽤(Point-based Graphics)
点群データは、ポリゴンデータとボリュームデータの中間のようなデータ表現
レーザー光線を利⽤したレンジファインダ(Rangefinder)などの3次元形状計測装置では、形状は点群データとして取得されることが多い
3次元の点データの集合 (Point Cloud)
データベースと情報管理(2012a) 第14回: 3次元データの処理
8
点群モデルの例
点の数:200 点の数:35,947
ポリゴンモデル ポリゴン(Polygon;多⾓形)で形状を近似する ポリゴンが集まって、多⾯体(Polyhedron)となる
データベースと情報管理(2012a) 第14回: 3次元データの処理
9
3次元ポリゴンモデル
3次元ポリゴンデータの表現
シンプルな形状の例(ピラミッド形状)
4つの三⾓形と1つの四⾓形からピラミッドをつくることができる
データベースと情報管理(2012a) 第14回: 3次元データの処理
10
3次元ポリゴンデータの表現頂点番号 座標(x, y, z)
01234
( 0.0, +1.0, 0.0 ) (-1.0, 0.0, -1.0 ) (-1.0, 0.0, +1.0 )(+1.0, 0.0, +1.0 ) (+1.0, 0.0, -1.0)
⾯番号 頂点の番号 ⾯の形01234
0 1 20 2 30 3 40 4 14 3 2 1
三⾓形三⾓形三⾓形三⾓形四⾓形
y
x
z
1
2 3
4
0(0,1,0)
(-1,0,1)(1,0,1)
(1,0,-1)(-1,0,-1)
#VRML V2.0 utf8Shape { # VRML2.0形式のピラミッド型ポリゴンデータ
appearance Appearance {material Material { diffuseColor 0.0 1.0 1.0 } # 物体の色
}
geometry IndexedFaceSet {coord Coordinate {
point [ # 頂点情報 5つの頂点の座標0.0 1.0 0.0
-1.0 0.0 -1.0 -1.0 0.0 1.0 1.0 0.0 1.0 1.0 0.0 -1.0 ]
}coordIndex [ # 面情報 四つの面の面番号
0 1 2 -1 0 2 3 -1 0 3 4 -1 0 4 1 -1 4 3 2 1 -1 ]}
}
3次元データの形式 (VRML2.0)
データベースと情報管理(2012a) 第14回: 3次元データの処理
11
3次元データの形式
複雑な形状のデータも表現形式は同じ!ただし、データ数は多い
点の数: 35,947 ポリゴン数: 69,451
⼤量の頂点と⾯のデータが含まれている
データ作成には、3次元CGソフトウェアが必要
⾯の法線を求める式:N (nx,ny,nz) = (Pi Pj) × (Pj Pk)
ポリゴン⾯の法線を求める式
Pi(xi, yi, zi)
Pk(xk,yk,zk)
Pj(xj,yj,zj)
⾯の法線
三⾓形ポリゴン
nx = (yi yj)(z j zk) (zi z j)(yj yk)ny = (zi z j)(xj xk) (xi xj)(z j zk)nz = (xi xj)(yj yk) (yi yj)(xj xk)
外積(Cross Products)
ポリゴン⾯の法線は⾯の裏表の判定に必要
⾯から垂直に出るベクトル
データベースと情報管理(2012a) 第14回: 3次元データの処理
12
ポリゴン⾯の法線の計算
Nc =(Pi- Pj)x(Pj - Pk)= (-2, -2, 0)
Ncc =(Pi - Pj)x(Pj - Pk)= (+2, +2, 0)
Pi=(0,1,0)
Pk=(1,0,1)
Pj=(1,0,-1)
Pi=(0,1,0)
Pj=(1,0,1)
Pk=(1,0,-1)
時計回り (Clockwise) 反時計回り(Counter Clockwise)
法線
法線
ポリゴン⾯の表と裏… coordIndex [
0 1 2 ‐1 0 2 3 ‐1 0 3 4 ‐1 0 4 1 ‐1 4 3 2 1 ‐1 ]
…
… coordIndex [
2 1 0 ‐1 0 2 3 ‐1 0 3 4 ‐1 0 4 1 ‐1 4 3 2 1 ‐1 ]
…
反時計回り
ポリゴン⾯を構成する頂点データは、時計回り、あるいは反時計回り順に統⼀する必要がある
⾯が表⽰されない(⾯が裏)
データベースと情報管理(2012a) 第14回: 3次元データの処理
13
陰⾯消去 (Hidden Surface Removal)
陰⾯消去あり
視点からは物体の影になったり、視点とは逆の⽅向を向いていて⾒えなくなっている⾯を消去する処理
陰⾯消去なし(内部が透けて⾒える)
⾯の法線の向き
⾯の法線と逆⽅向
⾯の法線と垂直⽅向
⾯の法線と同じ⽅向
データベースと情報管理(2012a) 第14回: 3次元データの処理
14
ポリゴンデータの形式 現在、約100種類以上のデータフォーマットがある 代表的なデータフォーマットの例:
VRML (Virtual Reality Modeling Language) OBJ(Wavefront社) DXF(Autodesk社) X3D(ISO International Organization for Standardization;
国際標準化機構)が定めたXMLに基づくフォーマット
頂点と⾯の情報が重要 ⾯や頂点の法線情報、テクスチャ情報、⾊情報なども
付加される場合もある
3次元データの表⽰(ポリゴン)
点群 稜線 面 面+稜線
データベースと情報管理(2012a) 第14回: 3次元データの処理
15
様々な形のポリゴンモデル
ポリゴン数3,072個
ポリゴン数1,680個
ポリゴン数3,008個
ワイヤーフレーム
グローシェイディング
(※グーローと表記される場合もある)
テクスチャ付きのモデル
ワイヤフレームモデル
テクスチャ画像
テクスチャ付きモデル
グローシェイディング
+
+ →
→
データベースと情報管理(2012a) 第14回: 3次元データの処理
16
ポリゴンモデルの表⽰ 例1 任意の視点位置から観察できる 移動、回転、拡⼤・縮⼩ができる
ティーポット
ポリゴンモデルの表⽰ 例2
牛(ワイヤーフレーム) 牛(グローシェイディング)
データベースと情報管理(2012a) 第14回: 3次元データの処理
17
3次元物体モデルの類似形状検索
3次元物体モデルのデータベース 3次元物体モデルの増加
検索システム
3次元物体モデルのデータベース化
グラフィックスハードウェアの低価格化 CGソフトウェアの発達
アーカイブ化インターネットでのデータ共有
検索⼿法
データベースと情報管理(2012a) 第14回: 3次元データの処理
18
3次元物体モデルのキーワード索引 キーワードによる索引
キーワードの付加を⼈間が⾏う場合、⼤きな労⼒が必要
データベース内にある各ポリゴンモデルに、キーワードを付加、索引として利⽤し検索
ジャガイモ
トマト
エダマメ
キーワードを付加した⼈間の主観によってキーワードが異なる キーワードとして使⽤する⾔語の影響
内容検索 (Content-based Search) データから、⾊・形・テクスチャなどの特徴をソフトウェアで計算
得られる形状特徴は数値であり、データの索引として利⽤
数値による索引の類似度をソフトウェアで判断、類似データを検索
0.12, 0.19, 0.70
0.84, 0.32, 0.10
0.14, 0.15, 0.92 類似度計算 類似形状検索結果
形状特徴データ
データベースと情報管理(2012a) 第14回: 3次元データの処理
19
内容検索の性質
⼈⼿による索引付加の作業がない
⼈間の主観が⼊らない数値索引を付加できる
⾼速かつ⾃動的に索引をデータへ付加できる
索引付加の作業と類似度の判断はソフトウェアによって⾏う
形状特徴(索引)が物体の類似度を反映したものでなくてはならない
近年、画像検索ではインターネット利⽤により、⼈件費を低く抑えた、⼈⼿による索引作成が報告されている
3次元物体モデル類似形状検索システム
初期の3次元物体モデル類似形状検索システムの例(1997年、Ogden IV)
検索キーのデータ
検索キーと類似した形状のデータが類似度順に表⽰される
1500個の様々な形状の3次元家具データ 3次元物体モデルの頂点密度を形状特徴に利⽤ 多変量解析による類似度⽐較 数秒(1〜3秒)で検索結果を表⽰
データベースと情報管理(2012a) 第14回: 3次元データの処理
20
3次元物体モデル類似形状検索の研究 様々な特徴
ベンチマークデータ
形状(球⾯調和関数、Light Field Descriptor、フーリエ関数、3D-HLAC) ⾊・質感 (環境光、拡散光、鏡⾯反射光、反射率、透過率) テクスチャ
多変量解析 (判別分析など) ニューラルネットワークス サポートベクターマシン
パターン認識に関連した技術
類似度の判別
検索⼿法の⽐較
回転不変
ベンチマークデータの例(3D)3次元ポリゴンモデルのデータの例 The Princeton Shape Benchmark
データベースと情報管理(2012a) 第14回: 3次元データの処理
21
スタンフォードバニー 1994年にスタンフォード⼤学のグレッグ・ターク らによって開発さ
れたコンピュータグラフィックスのデータ うさぎの陶器の置物を3次元スキャナーで読み込んで⽣成
ユタ・ティーポット コンピュータグラフィックス分野で標準的に使われる3Dモデル 1975年ユタ⼤学のマーティン・ニューウェルによって制作
レナ 1973年、南カリフォルニア⼤学の信号画像処理研究所 雑誌に掲載された写真の⼀部をスキャンしたもの
標準テストデータの例
まとめ (14回 3次元データの処理)
3次元データの表現
3次元ポリゴンモデル
3次元物体モデルの類似検索
ボリューメトリックモデル パラメトリック曲⾯モデル ポリゴンモデル 点群モデル
点、稜線、⾯、データフォーマット ⾯の法線、⾯の向き ポリゴン数、データの詳細度
形状特徴 類似度⽐較