9
1 CGの原理 ボリュームグラフィックス (Volume Graphics: VG) ボリュームグラフィックス ボリューム (3次元CT画像) ボリューム (3次元画像) 可視化画像 可視化画像 (Volume Rendering) 光線 ボリュームグラフィックス法の分類 Volume Rendering ( VR ) ボリュームの透過表示 陰影なし (Unshaded陰影つき (ShadedMaximum Intensity Projection ( MIP ) 最大値投影 (MIP) 極大値投影 (LMIP: Local MIP) Surface Rendering ( SR ) 表面の陰影表示 ボリュームグラフィックス法の比較 SR VR VR MIP LMIP Unshaded Shaded 濃淡 × 形状 空間関係 × 客観性 多様性 × × 客観性 : しきい値などへの依存性 多様性 : 多彩な描画表現能力 MIP LMIP SR VR Shaded VR Unshaded Maximum Intensity Projection MIPLMIP MIP MIP: Maximum Intensity Projection ボリューム (3次元画像) 光線上の最大値 を選択 可視化画像 光線上のプロファイル 最大値 光線方向 光線 ボリューム

ボリュームグラフィックス (Volume Graphics: VG) …...1 CGの原理 ボリュームグラフィックス (Volume Graphics: VG) ボリュームグラフィックス ボリューム(3次元CT画像)

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ボリュームグラフィックス (Volume Graphics: VG) …...1 CGの原理 ボリュームグラフィックス (Volume Graphics: VG) ボリュームグラフィックス ボリューム(3次元CT画像)

1

CGの原理 

ボリュームグラフィックス(Volume Graphics: VG)

ボリュームグラフィックス

ボリューム (3次元CT画像)ボリューム(3次元画像) 可視化画像

可視化画像 (Volume Rendering)

光線

ボリュームグラフィックス法の分類

Volume Rendering ( VR ) ボリュームの透過表示陰影なし (Unshaded)陰影つき (Shaded)

Maximum Intensity Projection ( MIP ) 最大値投影 (MIP) 極大値投影 (LMIP: Local MIP)

Surface Rendering ( SR )表面の陰影表示

ボリュームグラフィックス法の比較

SR VR VR MIP LMIPUnshaded Shaded

濃淡 × ○ △ ◎ ◎形状 ◎ ○ ○ △ △空間関係 ◎ ○ ○ × ◎

客観性 ○ △ △ ◎ ○多様性 △ ○ ◎ × ×

客観性: しきい値などへの依存性多様性: 多彩な描画表現能力

MIP

LMIP

SR VR ShadedVR Unshaded

Maximum Intensity Projection(MIP)

LMIPMIP

MIP: Maximum Intensity Projectionボリューム(3次元画像)

↓ 光線上の最大値を選択可視化画像

光線上のプロファイル

最大値光線方向

光線ボリューム

Page 2: ボリュームグラフィックス (Volume Graphics: VG) …...1 CGの原理 ボリュームグラフィックス (Volume Graphics: VG) ボリュームグラフィックス ボリューム(3次元CT画像)

2

LMIP: Local Maximum Intensity Projection

ボリューム(3次元画像) ← しきい値

↓ 光線上の最初の極大値を選択(しきい値以上)

可視化画像

Y. Sato, et al.,JCAT,22(6), 1998.

光線方向

しきい値

極大値

最大値

光線上のプロファイル

光線

ボリューム

Surface Rendering

Surface Renderingボリューム(3次元画像) ← しきい値

表面形状モデル ←表面(面素)の色・材質

光源(色・方向)

可視化画像

モデリング:マーチンキューブ法

光源

面素

法線レンダリング

ボリューム

モデリングの原理: マーチンキューブ法

高解像度3次元形状モデリング手法W.E. Lorensen and H. E. Cline,Computer Graphics,21(3), 1987.

原画像に適用 二値画像に適用

モデリングの原理: マーチンキューブ法

1次元マーチンキューブ(インターバル)法離散点での濃淡値を線形内挿して、2次元空間にプロットし、

しきい値に対応する直線で切った切断点 (等高点)

しきい値

等高点 等高点 等高点位置は連続値

モデリングの原理: マーチンキューブ法

2次元マーチンキューブ(スクエア)法3次元空間のしきい値平面で切った切断輪郭 (等高線)

しきい値平面等高点

等高点位置は格子線上

等高線

等高線位置はサブ画素精度

Page 3: ボリュームグラフィックス (Volume Graphics: VG) …...1 CGの原理 ボリュームグラフィックス (Volume Graphics: VG) ボリュームグラフィックス ボリューム(3次元CT画像)

3

2次元マーチンキューブ(スクエア)法等高点から等高線へ

等高点

等高線

モデリングの原理: マーチンキューブ法

3次元マーチンキューブ法4次元空間のしきい値超平面で切った切断表面(サブボクセル精度の等高面)

3次元マーチンキューブ法等高点から等高面へ

等高点

等高線

3次元マーチンキューブ法等高点から等高面へ

Volume Rendering

VR ShadedVR Unshaded

Volume Rendering: Unshaded (陰影なし)

ボリュームデータVolume Redering画像

アルファブレンディング

ボクセルの色(濃淡値)

不透明度(Opacity)

ボクセル値のヒストグラム

色・不透明度マップ

光線ボリューム

ボクセル値

Page 4: ボリュームグラフィックス (Volume Graphics: VG) …...1 CGの原理 ボリュームグラフィックス (Volume Graphics: VG) ボリュームグラフィックス ボリューム(3次元CT画像)

4

不透明度合成の原理:アルファ・ブレンディングボクセル =半透明の色つきゼリー

光線 (強さ 1)

( 1ーαR) ( 1ーαG) ×αB×B

( 1ーαR)×αG× G

αR×R

色, 不透明度 (0~1.0)B ,αB

G ,αG

R ,αR

各ボクセルの画素値への寄与

光線に対応する画素値

透過した光線の強さ×不透明度×色

演習問題 C:光線に沿ったアルファブレンディングの一般式をかけ.光線に沿ってN個のボクセルがあるとし,i (1~N)で参照する.i = 1が最も視点に近いとする.また,不透明度をαi,色をCiとする.

Volume Rendering: Shaded (陰影つき)ボリュームデータ Volume Rendering画像

陰影つきアルファブレンディング

3次元法線データ

表面(面素)の反射特性光源の方向

光源

ボクセル

法線

ヒスト

グラム

グラディエントの大きさ

不透明度

色・不透明度マップ

CT値

不透明度

ボクセル色

グラディエント・ベクトル

ボクセル法線の計算

ボクセル法線計算の原理:グラディエント(勾配)ベクトル

グラディエント・ベクトルの方向: 濃淡変化が最大となる方向

グラディエント・ベクトルの大きさ: 濃淡変化の大きさ

コントラスト大 コントラスト小

近傍ボクセルからの推定

法線=グラディエントベクトルの方向

異なる方向

陰影つきアルファブレンディング

( 1 ーα1) ( 1 ーα2) ×α3×cosθ3× C3

( 1 ーα1) ×α2×cosθ2× C2

1 ×α1×cosθ1× C1

各ボクセルの画素値への寄与=

光線に対応する画素値

透過した光線の強さ×不透明度×陰影係数×色

光線(入射光の強さ 1)

色(C)

C1,α1C2,α2

C3,α3

不透明度

 (α)

光源

法線

θ1

θ3

θ2

法線

法線

法線: 面の方向(単位ベクトル)

ボリュームグラフィックス法の比較脳血管3次元像の例

SR

VR Unshaded LMIP

VR Shaded

MIP

Page 5: ボリュームグラフィックス (Volume Graphics: VG) …...1 CGの原理 ボリュームグラフィックス (Volume Graphics: VG) ボリュームグラフィックス ボリューム(3次元CT画像)

5

ボリュームグラフィックス

フリーソフト

Visualization Toolkit (VTK) 開発元:GE (General Electric) 動作環境: Unix, Windows      http://www.kitware.com機能: SR, VR (Shaded, Unshaded) , 種々の3次元画像解析ツール特徴: C++クラスライブラリ。Tcl/Tk スクリプト言語をサポート。

Volpack 開発元:スタンフォード大学動作環境: Unix http://graphics.stanford.edu/software/volpack/機能: VR (Shaded) 特徴: C関数ライブラリ。

不透明度関数設定におけるグラディエントの利用可能。

SGI Volumizer 開発元:SGI動作環境: IRIX6.3以降 (SGIマシンのみ)機能: VR(Unshaded) , 種々の3次元画像処理ツール特徴: C++クラスライブラリ。 SGIハードウエアレンダラーをサポート

VG (Volume Graphics)  プログラム演習

平行投影,超楕円体,回転,アルファブレンディング,

グラディエントベクトル,拡散反射

VGの原理: プログラム演習 (VG)平行投影,超楕円体,拡散反射

投影(カメラ)モデル:平行投影

(x, y, z)(x’, y’)

x

y

z投影面

x’ = xy’ = y

物体形状表現: 超楕円体

物体材質表現:拡散反射成分のみ

問題:以上の条件で,超楕円体の5つのパラメータ,回転パラメータ,および光源の方向

を変化させて陰影つきボリュームレンダリング画像を生成できるプログラムを作り,方法・結果をレポートにまとめよ.

光源:平行光線

カメラ座標系を実世界座標系と考える.

O

× ×

× ×

×

超楕円体ボリュームの生成:1

× ×× ××

× ×× ××

楕円体

超楕円体

陰関数表現

パラメトリック表現

パラメトリック表現

問題1 超楕円体の陰関数表現を導け.

超楕円体ボリュームの生成:2

超楕円体の陰関数表現を以下とする

F (x, y, z) = 1

128×128×128(1283 )の3次元配列を用意する.メモリに余裕があれば,2563でもよいし,メモリが足りな

ければ643でもよい.

3次元配列の各要素に,F (x, y, z) > 1 (Outside) のときは,0,それ以外 (Inside) は100を入れる.

回転させて超楕円体のボリューム生成を行うためには,回転行列をかけてから上の処理を行う.

ボリュームの平滑化入力ボリューム(配列): I (i, j, k)平滑化ボリューム(配列): J (i, j, k)

J (i, j, k) = (1/27)      I (i+p, j+q, k+r)∑ ∑p = -1 q = -1 r = -1

∑1 1 1

一様平均による平滑化を何回か繰り返す

(一様平均による平滑化)

Jn (i, j, k) = (1/27)      Jn-1 (i+p, j+q, k+r)∑ ∑p = -1 q = -1 r = -1

∑1 1 1

J0 (i, j, k) = I (i, j, k)

問題2:一様平均による平滑化をn回繰り返すと,どんな平滑化になっているか? (n が大きくなるとある有名な関数の重み平均に近づく.)

Page 6: ボリュームグラフィックス (Volume Graphics: VG) …...1 CGの原理 ボリュームグラフィックス (Volume Graphics: VG) ボリュームグラフィックス ボリューム(3次元CT画像)

6

グラディエントベクトルの計算平滑化ボリューム(配列): J (i, j, k)グラディエントボリューム(配列)

x成分: Gx (i, j, k) = J (i+1, j, k) J (i-1, j, k)-

問題3: y成分(Gy)とz成分(Gz)は,どのように計算するか?

法線方向: n = (Gy, Gy, Gy) / Sqrt(Gx2+Gy2+Gz2)グラディエント強度: Sqrt(Gx2+Gy2+Gz2)

(i, j, k) は,連続変数 (x, y, z) の離散変数に対応.

y成分: Gy (i, j, k) = J (i, j +1, k) J (i, j-1, k)-

z成分: Gz (i, j, k) = J (i, j, k +1) J (i, j, k-1)-

陰影つきアルファブレンディング

( 1 ーα1) ( 1 ーα2) ×α3×cosθ3× C3

( 1 ーα1) ×α2×cosθ2× C2

1 ×α1×cosθ1× C1

各ボクセルの画素値への寄与=

光線に対応する画素値

透過した光線の強さ×不透明度×陰影係数×色

光線(入射光の強さ 1)

色(C)

C1,α1C2,α2

C3,α3

不透明度

 (α)

光源

法線

θ1

θ3

θ2

法線

法線

面法線方向 n (単位ベクトル)問題4:光線に沿った陰影つきアルファブレンディングの一般式をかけ.光線に沿ってN個のボクセルがあるとし,k (1~N)で参照する.k = 1が最も視点に近いとする.また,不透明度をαk,色をCkとする.

光源方向 s (単位ベクトル)

不透明度関数の設定色は,例えば「白」に固定する.

不透明度は,例えば以下のようにする.

ボクセル値0

1不透明度

グラディエント強度0

1不透明度

a b

c 例えば,a=40, b=60, c=0.5

実験項目および考察事項

• 超楕円体のパラメータ,回転パラメータを変化させてボリュームレンダリングせよ.

• 光源の方向を変化させよ.• 一様平均による平滑化の回数を変化させよ.• 不透明度関数を変化させよ.• その他,各自,創意工夫を加えて実験を行うこと.

• 以上の実験結果に考察を加えよ.

CV (Computer Vision)の原理

 

画像からの3次元計測の基本原理カメラキャリブレーション

3次元データ処理・イントロダクション

CG (Computer Graphics) CV (Computer Vision)   

カメラ

画像

3次元世界

コンピュータグラフィックス(Computer Graphics: CG)3次元世界モデル→画像

光源

物体

コンピュータビジョン(Computer Vision: CV)画像→3次元世界モデル

Page 7: ボリュームグラフィックス (Volume Graphics: VG) …...1 CGの原理 ボリュームグラフィックス (Volume Graphics: VG) ボリュームグラフィックス ボリューム(3次元CT画像)

7

Computer Graphics (CG)3次元仮想世界モデル → 仮想画像    

Computer Vision (CV)実画像 → 3次元実世界モデル    

CV + CG (Mixed/Hybrid Reality複合現実感)実画像 → 3次元実世界モデル            +        →     

       3次元仮想世界モデル

リアリスティックな仮想画像

(実+仮想)画像

CV CG

CV + CG (Mixed Reality 複合現実感)実例1: PlayStation2: FIFASOCCER

CV + CG (Mixed Reality 複合現実感)実例1: PlayStation2: FIFASOCCER

実画像 → 3次元(実)運動モデル

            +         →     

      3次元(仮想)形状モデル

リアリスティックな仮想画像

(実+仮想)画像

CV CG

モーションキャプチャー

CV + CG: モーションキャプチャー実例1: PlayStation2: FIFASOCCER

(赤外線反射)マーカ

赤外線発光装置+赤外線カメラ

赤外線発光装置

赤外線ビデオカメラ

マーカの3次元運動を複数のカメラで計測する.

モーションキャプチャーの原理マーカの3次元運動を複数のカメラで計測する.

   

カメラ座標系

(x, y, z)(x’, y’)

x

y

z

f焦点距離

投影面

xy面

モーションキャプチャーの原理

投影(カメラ)モデル: 中心投影(透視投影) 

投影中心

投影面

Page 8: ボリュームグラフィックス (Volume Graphics: VG) …...1 CGの原理 ボリュームグラフィックス (Volume Graphics: VG) ボリュームグラフィックス ボリューム(3次元CT画像)

8

モーションキャプチャーの原理3D from 2D → 2D from 1D3次元運動を2次元画像で計測する.

2次元運動を1次元画像で計測する.

モーションキャプチャーの原理2D from 1D: 2次元運動を1次元画像で計測する.

マーカa

カメラ2

カメラ3

投影中心

投影面(投影線)

X

Y

画像3 画像2 画像1

カメラ1

マーカaの像

2次元世界座標系 (X, Y)

マーカaの像

モーションキャプチャーの原理マーカの2次元世界座標系での位置計測

マーカ a の位置

カメラ2 カメラ座標系の位置・方向

X

Y カメラ1

予め知っておかなければならないデータ

画像2の座標軸 v 画像1の座標軸 u

マーカの像の位置va

マーカの像の位置ua

画像から計測されるデータ

カメラキャリブレーション(カメラ座標系が世界座標系のどこにあるか?)

カメラ座標系の位置・方向

投影中心投影中心

投影線投影線

モーションキャプチャーの原理カメラキャリブレーション

マーカ a の位置 (Xa, Ya)X

Y 1次元カメラ座標系

画像(投影線)の座標軸 u

マーカaの像の位置ua

投影中心

投影線u

w

f焦点距離

O

光軸

ua = Xa’

f + Ya’

Xa’Ya’

XaYa

= cosθ

cosθ-sinθ

sinθtxty

+

未知数が4つ1点の対応関係から1つの式

2次元世界座標系

モーションキャプチャーの原理カメラキャリブレーション

3次元世界座標系

投影中心の位置

投影面の位置・方向

2次元カメラ座標系

モーションキャプチャーの原理カメラキャリブレーション

既知の計測点位置 xi

カメラ座標系の位置 t・ 回転R

X

Y 未知の焦点距離 f

画像の座標軸 

マーカの像の位置ui

Z

予め,答え(既知の3次元位置と像の位置) xi , uiを与えて,未知パラメータ f, t, R を推定

f (xi , ui ; f, t, R) = 0xi , ui の組を多数集めて,最小2乗当てはめを行なう.

3次元世界座標系

2次元カメラ座標系

Page 9: ボリュームグラフィックス (Volume Graphics: VG) …...1 CGの原理 ボリュームグラフィックス (Volume Graphics: VG) ボリュームグラフィックス ボリューム(3次元CT画像)

9

CV + CG: モーションキャプチャー実例2: 手術ナビゲーション(阪大田村研)

実画像 → 3次元(実)運動モデル

            +         →     

      3次元(仮想)形状モデル

リアリスティックな仮想画像

(実+仮想)画像

CV CG

モーションキャプチャー(手術器具の動き)

CV + CG: マーカなしの3次元運動復元実例3: カーネギーメロン大学(CMU)プロジェクト

                3次元(実)運動モデル実画像 →     +          

         3次元(実)形状モデル

カメラ

CV + CG: 4次元ビデオに向けて

手術の4次元記録スポーツなどの4次元記録

阪大手術ナビゲーションプロジェクト

CMUプロジェクト

CGゲーム

授業(佐藤担当分)に対する意見を述べよ. 1.良かった点,改善すべき点 2.来年以降の授業に向けて,特に要望したい点 3.佐藤担当分と他の先生担当分の題材の関連性   やバランスに対する問題点など 4.その他,感想なんでも

マルチメディア工学・情報論

授業の感想について