SPH法における固体境界インタラクションの改良
動画(H264)CGにおいて水や煙,炎といった流体表現は欠かせない要素の一つとなっている. これらの流体は自身の内部影響だけでなく,周囲の固体境界との相互作用によってもその挙動が変化する. 例えば,コップに水を注ぐ, 海上を船が波を立てながら進むといったシーンでは固体-液体間の相互作用が重要となる. SPH法などのパーティクル法でこの相互作用を実現するために従来は固体境界内に 固定されたパーティクルを配置していた. この研究では固定パーティクルを使う代わりに, 固体境界を多項式で表し,そこから補正量を直接計算する方法を提案する. これによりCG分野で一般的なポリゴンで表現された固体形状との相互作用を直接計算することが可能となる.
SPH法とShallow Water法を用いた高速な波のシミュレーション
動画(H264)ゲームなどのインタラクティブなアプリケーションでは,高精細かつリアルタイムな計算速度が 求められているが,流体シミュレーションは計算コストが高く, 特に川や湖や海などの大規模な流体シミュレーションをリアルタイムで計算することは難しい. この研究では2次元のパーティクル法を用いたShallow Waterモデルの波のシミュレーションに対して, 3次元的な動きをパーティクル法の一種であるSPH法により追加することで, より高精細で高速な流体シミュレーションを実現する方法を提案する. 提案手法ではShallow Water モデルにより,大規模なシーンでも高速に計算可能であり,かつ, 従来手法では実現できなかった3次元的な挙動をSPH法によって表現する.
位置ベース法を用いたリアルタイム融解・凝固シミュレーション
動画(H264)CGにおいて氷のような物体の相変化現象を再現することは,ひとつの大きな課題である. この研究では,物体を粒子の集合として近似シミュレーションする粒子法を用いて, 固体-液体間の相変化をリアルタイムで再現する方法を提案する. 固体-液体間の相変化シミュレーションでは,固体形状の変化に応じて運動も変化するために, 分離や結合などの固体の構造変化が問題となる. 我々は,従来研究のトップダウンな剛体シミュレーションとは異なり, 接続情報を基にしたボトムアップな運動計算法を採用することでこの問題を解決する. また,この際に硬い物体の表現が困難となるという新しい問題が発生するが, これを計算粒子のサンプリング,粒子間の姿勢の補間,変形に基づく重み付きJacobi法により 計算速度の低下なしに解決した.
粒子間ポテンシャル力を用いた粒子法による水滴のシミュレーション

この研究では, 粒子間相互作用力と位置ベース流体計算法を用いた水滴のシミュレーション手法を提案する. 粒子法の一種であるSPH法を用いて液体全体の振る舞いを高速に計算し, そして,粒子間に力を働かせることで表面張力の影響を安定して計算する. また,固体表面に位置が固定の固体粒子を設置し, 流体粒子の物理量を計算する際に固体粒子からの影響も考慮することで固体とのインタラクションを可能にする. さらに,表面張力と接触角の関係を用いて水滴の形状を接触角によって制御できるようにすることで, ユーザが直感的に操作できる方法を提案する.
陰関数曲面フィッティングを用いたパーティクル法における表面抽出

この研究では粒子法の一種であるSPH による液体シミュレーションの結果に対して, 陰関数曲面フィッティングを用いて液体表面を可視化する手法を提案する. カーネル関数を用いたメタボールによる手法ではなく, ポイントベースレンダリング分野で用いられている陰関数曲面の点群へのフィッティング技術を パーティクル法に適用する. これにより,従来表現しきれなかった液体表面の特徴である 波の先端の鋭い形状と滑らかな平面の両立が可能となる.
曲率不変条件を用いた陰関数曲面のメッシュベース表面移流法

表面が大きく変形する流体や粘弾性体のシミュレーションでは流体形状を CGで表すために表面を抽出,追跡する必要があり, そのためにメッシュベースの表面追跡手法が研究されている. メッシュベース法ではシミュレーションの最初に作成したメッシュを表面変化に追従する形で移流させる. メッシュベース法で問題となるのは,1) 表面移流方法,2) 表面トポロジ変化 である. この研究では(1)において表面を移流させるときに必要となる速度場をシミュレーション結果を用いずに 陰関数場の変化のみから正確に計算する方法を提案する. 曲率不変条件に基づく速度算出により従来手法では難しかった回転運動にも対応する.
ウェーブレットによるリアルタイム乱流シミュレーション
動画(H264)複雑な流体現象(煙や炎などの気体,波や川の流れのような液体など)のCGアニメーションを作成するために流体シミュレーションが広く用いられている. しかし,これまでの流体シミュレーション手法はそのほとんどが層流と対象としたものである. 層流は流体が規則正しく揃って運動するような流れであり,普段よく見られる不規則な流れは 乱流と呼ばれる. この研究では, GPUにより高速化したウェーブレット解析とウェーブレットノイズを用いることで, 粒子法を使って液体の乱流を高速に計算する手法を提案する. 近傍粒子から直接,エネルギースペクトル値を計算し,ウェーブレットノイズにより乱流速度場を追加する. さらにパーティクルを サブパーティクルに分割することにより, 粒子法によるシミュレーションだけでは再現できない乱れを含んだパーティクルの動き,表面を生成する手法を提案している.
インタラクティブフォトモザイク
動画(WMV), ソフトウェア近年,ディスプレイの高解像度化が進んでおり,フルHD(1920x1080)はもはや一般的になっている. そして,今後,4K(3840x2160)やスーパーハイビジョン(7680x4320)へとさらなる高精細化が勧められると考えられ, そのためのコンテンツも高解像度を生かしたものが必要である. この研究では,高解像度を生かしたコンテンツとしてフォトモザイクに注目し, 高解像度のフォトモザイクをGPUを用いた並列化によりリアルタイムに生成する手法を提案する.
フォトモザイクは,写真を要素としたモザイク画の一種である. 元の画像をタイルと呼ばれる小さな領域で分割し,そこにデータベースに格納された多くの写真(タイル画像)を元の画像の色情報に基づき当てはめることで新しい画像を生成する. 高解像度ディスプレイであれば,フォトモザイクを表示したときに一つ一つのタイル画像もある程度判別可能であり, インタラクティブフォトモザイクではそれを拡大して見ることができるようにする. さらに, 絵の中にさらなる絵が隠されているというフォトモザイクの再帰性を拡張し, タイルを構成する画像もまたフォトモザイクであるという特徴を持ったインタラクティブアプリケーションを開発した. そして,ANNによる探索とGPUによる合成により,HD(1920x1080)や4k(4096x2160)の高解像度でも20fps程度の速度を実現した.
ユーザインタラクティブ凧シミュレーションシステムの開発


凧の歴史は古く,2500年以上前に発明されたといわれており,航空機が誕生する以前より人類の空に対する憧れをのせて揚げられていた. 現在では,和凧やゲイラカイト,バイオカイトなどの凧が開発されており,お祝いやお祭り,スポーツ,遊びなどの目的で揚げられている. このように長く人類に親しまれてきた凧であるが,物理シミュレーションにより凧の挙動を計算することは難しい, この研究では,実験データを元にして抗力係数,揚力係数,および,その作用点を凧の迎え角とその形状から求めることで, FDMやFEMのような計算時間を要する数値計算手法を用いずに リアルタイムに凧の挙動をシミュレーションする. また,凧と人間の手をつなぐひもや,凧のたわみ,尾などのシミュレーション, ハプティックデバイスによる力のフィードバックも加えることで, インタラクティブな凧揚げシステムを開発した.
CIP法による相転移を伴う氷解現象のシミュレーション


氷解現象のような物質が溶ける現象は,われわれの身近に存在する自然現象のひとつであり,映画やCMなど多くの分野で利用されている. 例えば,グラスの中の水やジュースなどの表現において,氷の存在はリアリティを高める上で欠かせないものであり, グラスに水を注ぐ過程において,その水流に接する部分から早く溶けるといった現象を再現することも重要である. さらに,SF映画などに頻繁に現れるレーザーは固体を局所的に融解するだけでなく,直接熱を受けた場所の周囲も熱伝導や熱輻射により融解するなど複雑な挙動を示す. この研究では,熱力学・流体力学に基づいて氷解現象のアニメーションを生成する手法を提案する. 提案手法は,熱伝導・対流熱伝達・熱輻射を考慮し,融解後の液体の挙動も計算する. 対流熱伝達を考慮する場合,融解する氷(固体)と融解後の水(液体)だけでなく, 周囲の空気(気体)の振る舞いも考慮しなくてはならず,この気液固三相を流体力学で計算することは非常に難しい問題である. 我々は,VOF(Volume-of-Fluid)と呼ばれる単純なカラー関数を液体自由曲面追跡に用い, RCIP(Rational-Constrained Interpolation Profile)法と改良した界面数値拡散の制御手法(STAA法)を用いることで, レンダリング時に現れる液体表面のエイリアスの問題を解決した. また、気液固の三相を同じ計算空間内でシミュレーションし, 各相間の質量の変化量を明示的に扱える簡潔でわかりやすい相変化シミュレーション法を開発した. さらに,熱輻射現象は,フォトンマッピング法を用いて効率的に計算し, レーザによる融解現象などもアニメーション化できるシステムを開発した.
核沸騰のシミュレーション


液体を熱したときに液体が気体に変化することで気泡が発生し,気泡は液体からのさらなる相転移によりその体積を膨張させながら液中を上昇する. これは沸騰現象とよばれ,その沸騰気泡(vapor)の形状変化は複雑である. この研究では従来の沸騰アニメーションに見られる不自然な体積損失を抑えた熱力学に基づく沸騰シミュレーション手法を提案する. 対象とするのは沸騰現象の中でも核沸騰と呼ばれる現象である. 核沸騰は液体を入れた固体表面上の微少な凹凸に残った空気(沸騰核)が成長することで沸騰気泡が発生する. 従来の核沸騰シミュレーション手法では沸騰核を出現させるために液体中に穴をあけていた.これにより体積損失が生じていた. 提案手法では保存系のCIP法を用いて液体表面を移流させることで移流時の体積損失を抑え, 壁面に流入境界条件を設定し,その流れを沸騰核生成のための専用の固体で制御することで,沸騰核を ``壁面から押し出される'' 操作として実現し, 核沸騰シミュレーションにおけるシーン全体の液体体積損失問題を解決した.
GPUを用いたビデオ映像の安定化


安価なデジタルビデオカメラの普及により,多くの場面で動画像を活用するようになっている. Webカメラを用いた遠隔地とのミーティング,監視カメラなど固定された状態で使われるだけでなく, 車載カメラ,携帯電話のカメラ,そして,災害地などで活躍するロボットに搭載されたカメラなどカメラ自体が動く環境でも多く用いられている. このような環境では,多くの場合何らかのぶれを生じている. このぶれを軽減する手法として,電子式,光学式手ぶれ補正などがあるが,これらはカメラに対する補正であり,そのカメラで撮影した映像だけしか補正できず, またすべてのカメラにこれらの手法を搭載できるとは限らない. この研究では,ビデオ映像に含まれる振動成分を取り除くための処理の計算をGPUを用いて行うことで, 非常に高速に(HD動画でもほぼリアルタイム)で映像を安定化する手法を提案する. 安定化のためには動画からカメラの動きを推定しなければならない. そのために,動画の隣接したフレーム間の動きをアフィン変換と仮定し,その差分値の合計をエラー値として最小化手法で最適解を求める. このとき,CPU処理における計算時間のボトルネックとなっているエラー値計算部分をGPUで並列に計算することで, 高速ビデオ安定化システムを開発した.
紙の性質を考慮したペーパークラフト組み立てシミュレーション


紙を用いて立体形状を表現するペーパクラフトは,その手軽さからホビーを中心として,幅広い分野で用いられている. ペーパクラフトは展開図を書籍で購入する,もしくは,展開図データをインターネットからダウンロードし, 組み立てるのが一般的である. これは,作成したい3次元形状から展開図を生成することは多くの経験がないと難しいからである. しかし,3次元ポリゴンモデルから展開図を自動的に生成するアプリケーションにより, 誰でも2次元の展開図データを作成できるようになってきている. しかしながら,2次元の展開図データを実際に印刷し,組み立てた時,思い描いていた形状と異なることがある. この論文では,紙の可展面の性質を考慮した3次元形状変形シミュレーション手法とそれによるペーパクラフト組み立てアプリケーションを提案する. 提案手法は,紙の引張強さと座屈強さの性質を用いて節点座標を変数とする目的関数を定義し, 最小二乗法を用いて最小化することによって,新たな節点位置を算出する. さらに,可展面の中から実際の変形において出現しやすい円柱形状と円錐形状をメッシュ変形の初期形状として用い,紙の性質をより良く再現した. また,開発したアプリケーションは,3次元モデルから作られた展開図の入力とテクスチャ画像をもとにしたユーザによるメッシュ生成の両方に対応することで, ペーパクラフトの作成における手間を軽減する.
紙の破断シミュレーション


紙は日常生活において身近な存在ではあるが布に比較して折り目の表現方法や破断の取り扱い, 質感の表現などが煩雑であるためCGへの応用を意図した研究があまり盛んに行われていない. そこで,本研究は紙に関する研究の第1歩として, 物理法則に基づいた紙の破断シミュレーションを行いその結果をCGに利用することを目的とする. 破断シミュレーションは,まず紙を三角形メッシュでモデル化しそのモデルに対して有限要素法を用いて変位と応力を計算する. 得られた応力より破断位置と亀裂の方向を計算し,亀裂を表現するようにメッシュの再構築を行う. さらに,亀裂により生成されたメッシュの境界として折れ線で表現された破断面に対して, turbulence functionを用いて面を複雑化しそれをテクスチャとして生成, そのテクスチャをマッピングすることで破断時に顕在化する紙の質感を表現する. 破断面をturbulence functionによって複雑化することにより,破断形状はメッシュの大きさにあまり依存せず, メッシュの要素サイズを比較的大きくすることで破断シミュレーションをほぼリアルタイムで実現した.
フォトンマッピング法による熱輻射計算を用いた固体融解変形シミュレーション


熱力学に基づいた氷解現象のアニメーションを高速に生成する方法を提案する. 提案手法では,熱放射の計算にフォトンマッピング法を導入する. 従来,照明計算に用いられているフォトンマッピング法において,各フォトンに熱エネルギを格納することによって, シーン中の熱放射現象を高速に解く. また,ボクセル表現を用いて,物体内部の熱伝導,空気との熱伝達についても考慮することで,現実的な氷解現象のアニメーションを生成する.