79
情報科学 B(11,12 ) コンピュータグラフィックス 佐藤尚

情報科学B(11,12 - Sato · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

  • Upload
    ngocong

  • View
    229

  • Download
    2

Embed Size (px)

Citation preview

Page 1: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

情報科学B(11,12回)

コンピュータグラフィックス

佐藤尚

Page 2: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

講義の主な内容

• コンピュータグラフィックスとは? • モデリング • レンダリング

• 最近の研究の紹介 • 自然物の再現 • リアルタイムレンダリング • ノンフォトリアリスティックレンダリング

Page 3: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

CG技術を支える柱

• モデリング •  CAD:コンピュータでものを設計をする •  3Dプリンタ

• レンダリング • アニメーション • インタラクション

モデルを作り出す

モデルから画像を作り出す

コンピュータと対話

Page 4: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

3次元CGを作成するために

• モデル • ライト • カメラ

Page 5: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

3次元CG作成のながれ

3Dモデルデータ作成

レンダリング

光源データ カメラデータ

画像

テクスチャデータ

アニメーションデータ

座標変換

Page 6: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

デジタル画像

色の情報を数値データで表された画素の集まりによって表されたもの。

Page 7: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

デジタル画像

• 色は3原色(赤、青、緑)の組合せで表現

レンダリング

フレーム バッファ

ディスク フィルムレコーダ

ビデオレコーダ

Page 8: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

混色

• 異なる色を混合して別の色を作り出す • 三原色 • 加法混色と減法混色

Page 9: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

3次元モデルデータの作成

3Dモデルデータ作成

3次元スキャンニング

対話的な手法

手続き的な手法

座標変換、 レンダリングへ

Page 10: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

対話的な手法

Page 11: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

手続き的な(Procedural)生成手法

• 形状などをプログラム(アルゴリズム)を生成 • 長所

•  パラメータの変更で多様な形状を生成出来る •  多くの人手をかけないで生成可能 •  詳細度(LOD=Level Of Detail)の制御が簡単

• 短所 •  意図するものを作り出すのが難しい •  試行が面倒 •  計算時間がかかる

Page 12: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

Proceduralな手法による画像

Page 13: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

フラクタル(Fractal)

• 自己相似性(self similarity) •  全体の形状がその形状の各部分にも現れること

• フラクタル(図形) •  自分自身の縮小変換の集合で表せることができるような図形 •  自己相似性を持った図形

• 様々な自然物にはフラクタル的な性質を見つけることが出来る。

       

Page 14: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

ブノワ・マンデルブロ(Benoît B. Mandelbrot, 1924年11月20日 - 2010年10月14日)はユダヤ人でフランス系アメリカ人の数学者。フラクタルの父として著名である。

Page 15: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

コッホ曲線の生成 Koch curve

基になる線分を3等分する

中央部を折り曲げる

再帰的に繰り返す

Page 16: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

フラクタル画像

マンデルブロ集合 ジュリア集合

© K.Fuchugami

Page 17: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

IFS(Iterated Function System)で生成した図形

縮小変換:ある画像をその縮小コピーの 張り合わせとして近似する方法

縮小変換のためのパラメータ

!"

#$%

&+!"

#$%

&!"

#$%

&=!

"

#$%

&

fe

yx

dcba

yx

w

Page 18: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

IFSでの画像生成例

•  Fractral ferns(http://www.home.aone.net.au/~byzantium/ferns/fractal.html)より

Page 19: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

樹木の生成プロセス

(1) (2) (3) (4) (5)

初期図形

Page 20: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

L-System

• 植物の形状を形式文法で表す手法 • アリステッド・リンデンマイヤー(Aristid

Lindenmayer) • 初期値と変換規則から形状を作り出す。 • 興味のある人は、

algorithmicbotany.org

Page 21: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

•  variables : X ,F •  constants : + − •  start : X •  rules : (X → F-[[X]+X]+F[+FX]-X), (F → FF) •  angle : 25°

Page 22: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

都市の生成

•  L-systemのような考え方を都市の生成に適用する。 •  “区画”を適当に決め、それに合うような建物を生成する。 • 建物の外観もL-systemのような考え方で生成する。

Page 23: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

手続き的な手法

• フラクタルの利用が多い • 自己相似性(self similarity)

•  全体の形状がその形状の各部分にも現れること

• フラクタル •  自分自身の縮小変換の集合で表せることができるような図形

Page 24: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

IFS(Iterated function System)で生成した図形

縮小変換:ある画像をその縮小コピーの 張り合わせとして近似する方法

縮小変換のためのパラメータ

!"

#$%

&+!"

#$%

&!"

#$%

&=!

"

#$%

&

fe

yx

dcba

yx

w

Page 25: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

樹木の生成プロセス

(1) (2) (3) (4) (5)

初期図形

Page 26: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

中点変位法

与えられた線分の中点を正規乱数に よって上下させる操作を再帰的に 繰り返す 山岳の輪郭の生成 線分の長さが短くなるに従って乱数の 標準偏差が小さくなるようにする

Page 27: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

© M.Nakajima

中点変位法による山岳の生成例

Page 28: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

3次元スキャンニングの手法

点単位測定法、ならい測定法 接触式計測

3次元画像計測

汎地球測位

受動的手法

能動的手法

GPS法(Global Positioning System)

単眼、両眼、多眼視

光レーザ法、光投影法 照度差ステレオ法 焦点調節法 等高線計測法

Page 29: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

光レーザ法

アンテナから発振したレーザが対象物体の表面で反射し、帰ってくるまでの時間で距離計算する方式

レーザ光線 パルス発振

物体 往復時間

Page 30: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

3次元スキャンニング装置の例

レーザで一周 測定できる形状は 顔程度

Page 31: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

3次元モデルデータの表現

• ポリゴンモデル • 自由曲面モデル • ボクセルモデル • 点群モデル

Page 32: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

モデリング(Modeling)

ポリゴン パッチ

物体の形状データを作り出す

Page 33: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

もう一つのモデリング手法

• 積み木によるモデリング

ボクセル

Page 34: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

最近流行(?)のモデリング手法

• 点群モデル( Point Sample Geometry ) • 表面上の点の集まりで物体形状を表現

Page 35: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

3次元モデル生成の手順例

ベースになる基本立体を作る

頂点を移動させて、作りたいモデルの形に近づける

Page 36: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

3次元モデル生成の手順例

パッチを持ち上げて、耳を作る

Page 37: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

3次元モデル生成の手順例

色の決定と細部の修正

Page 38: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

3次元モデル生成の手順例

細分割化

Page 39: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

細分割化とは?

• 多面体をどんどん細かくしていって、滑らかな形状を作り出す手法

• 曲線の場合には、

Page 40: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

再分割化とは?

1.  多角形の各辺を4等分する。 •  3:1と1:3に内分する点を求める

2.  各頂点でその右側と左側の内分点を結び、新しい多角形を作る。

3.  以上の操作を繰り返す。

Page 41: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

レンダリング(Rendering)

モデルデータから画像を作り出す

Page 42: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

レンダリング

3Dモデルデータ作成

レンダリング

光源データ カメラデータ

画像

テクスチャデータ アニメーション

データ

座標変換

Page 43: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

リアルな画像を目指して 1970年代頃までの画像

Page 44: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

リアルな画像を目指して 最近の画像

Page 45: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

ベジエ曲線によるアウトラインフォント

•  TrueTypeフォントで2次Bezier曲線

• Postscriptでは3次Bezier曲線

Page 46: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

レンダリングで行うこと

• 局所照明モデル • 大域照明モデル • 物体の見える部分の決定

•  物体と半直線との交点を求める

• 影の出来る部分の決定 •  基本的にはライトが見えなければ影 •  物体と半直線との交点を求める

• 色の決定

Page 47: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

色の決定

• 自分自身の発光量や色 • 周りから照らされている光の発光量や色 • どれくらい光を反射しているか • 物体に関連するも

• 面の色計算:反射率、透過率、屈折率 • 表面の模様や凸凹

• 光源の特性に関連するもの • 平行光源、点光源などの光源の種類 • 明るさ、色

Page 48: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

大域照明モデルのアイデア

• 色の決定 •  自分自身の発光量 •  周りから届く光の照射量 •  光の反射

• レンダリング方程式(Kajiya 1986)

L(x,ωo) = L0(x,ωo) + f (x,ωoΩ

∫ ,ω i)(ω i • n(x))Li(x,ω i)dω i

BRDF 周りから届く光の量

Page 49: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

光の反射

•  BRDF(双方向反射分布関数) • 二極性反射モデル • 拡散反射

•  指向性のない反射

• 鏡面反射 •  指向性のある反射 •  金属表面にできるハイライト

• サブサーフェース散乱 •  表面下散乱 •  トランスルーセント

Page 50: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理
Page 51: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

• 局所照明モデル •  直接、光があたるところだけ

• 大域照明モデル •  光の相互反射

Page 52: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

トランスルーセント

Page 53: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

人の皮膚

Page 54: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

テクスチャデータ

テクスチャデータ情報

実物データの スキャンニング

人手で描く

手続き的な手法

レンダリングへ

Page 55: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

テクスチャーマッピング

目や口などの絵を貼り付ける

Page 56: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

アニメーションデータ

アニメーションデータ定義

モーションキャプチャ

対話的な手法

ダイナミックス

座標変換、 レンダリングへ

Page 57: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

コンピュータアニメーションの基礎技術

• キーフレーム法 • モーフィング • ダイナミクス • モーションキャプチャ

Page 58: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

キーフレーム法

• それぞれの動きを特徴付けるようなキーフレームを作る

• キーフレームから中割りによって、必要なフレームの絵を作り出す

Page 59: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

モーフィング

• 異なる二つの画像や3次元形状モデルをもとに補間によって、アニメーションを作り出す方法

Page 60: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

ダイナミクス

• 物理現象に基づいた物体の動きのアニメーション作成手法の総称

• 物理法則をもとにモデルを作成し、それを離散化して解く

• パーティクル • 粒子(パーティクル)の生成、移動、消滅の規則を定め、そ

れをもとに画像を生成する • 見た目の効果を物理法則になぞらえて画像を生成する手

Page 61: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

煙の動き

• 煙は拡散する • 煙は移動する • 煙の移送速度は変化する

拡散 移動

空間を格子状に分割

繰り返し

Page 62: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

非写実的な画像

• でも、情報は伝わる

Page 63: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

リアルな画像ではないけれど

線画レンダリングの比較

Page 64: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理
Page 65: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

輪郭線表示 黒の輪郭線表示

Page 66: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

シェーディングのみ 輪郭線表示

Page 67: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

輪郭線表示の比較

Page 68: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

リアルな画像ではないけれど

Page 69: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

リアルな画像ではないけれど

Page 70: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

リアルな画像ではないけれど

Page 71: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

SIGGRAPH2004

• 毎年夏にアメリカで開かれているCG関連の世界最大規模の学会

• 最新の研究発表 • CG技術の講習会 • 大規模な展示会なども開かれる • Electric theaterでのCG映像紹介

Page 72: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

CGの表現技術の発展

始まりは? サザーランドのスケッチパッド

Page 73: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

CGの表現技術の発展1960年代

• ワイヤーフレーム • 陰線消去

Page 74: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

この時代の貢献

• Roberts (1963), Appel (1967) – 陰線消去

• Warnock (1969), Watkins (1970) – 陰面消去

• Sutherland (1974) – ソート法による可視判定

Page 75: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

CGの表現技術の発展1970年代

• 陰面消去 • シェーディング • マッピング

Page 76: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

この時代の貢献

• Gouraud (1971) – 拡散反射 • Phong (1974) – 鏡面反射 • Blinn (1974) – 曲面、     テクスチャー • Catmull (1974) - Z-buffer法 • Crow (1977) - anti-aliasing

Page 77: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

CGの表現技術の発展1980年代

• 光線追跡 • ラディオシティ • ボリュームレンダリング

Page 78: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

この時代の貢献

• Whitted (1980) – 光線追跡法 • Goral, Torrance et al. (1984),西田ら(1984), Cohen (1985) – ラジオシティ法

• Kajiya (1986) – レンダリング方程式

Page 79: 情報科学B(11,12 - Sato  · PDF fileコンピュータアニメーションの基礎 ... フレームの絵を作り ... • 見た目の効果を物理

課題

• 使いやすもの、使いにくいも • 使い方のわかりやすいも、わかりにくいもの •  7月15日提出