34.4K Views
February 16, 24
スライド概要
建築情報学会Meetup 関西 Vol.001での発表資料です。
3D Gaussian Splattingのデータ構造の特徴と、それを活かした派生研究について紹介しています。
地域社会の安心に貢献し、暮らしやすい世の中をつくるために、主な事業として空き家専門の工事会社・不動産屋として空き家再生・活用に取り組んでいます。また、演劇教室「劇ゼミ」の運営、VR・AI技術開発も行っています。
3D Gaussian Splattingを遊び倒す データ構造の理解からUEでのライティングまで 2024/02/09 建築情報学会Meetup 関西 Vol.001 株式会社空き家総合研究所 麻場 健司
目次 • 自己紹介: 株式会社空き家総合研究所? • 3D Gaussian Splatting (以下3DGS) は何がおもしろいのか? • 3DGSのおもしろさを活かした派生研究例 • アンチエイリアシング • 物理シミュレーション • メッシュの拡張 • 3DGSリアルタイムライティングの当社技術開発事例
株式会社空き 家総合研究所 • 社員5人 • 全員、関西の学生劇団出身 • 主な事業は3つ • 空き家再生 • 演劇教室 • VR・AI技術開発
空き家再生 • 『暮らしやすい世の中をつくる』 • 住宅確保要配慮者居住支援法人 • 不動産投資家向けワンストップ サービスとして空き家を… • • • • • 買う 直す 貸す 売る 管理する
演劇教室 • 『演劇で人と関わる』 • • • 自分をどう表現するか考える 相手の気持ちを想像する 他者と協力して目的を達成する • 第三の居場所としての教室 • 参加者の約3割が不登校等の生徒 • これを公的資金に依存しない事 業として成立させ、全国に展開 する • 現在、大阪府八尾市、同吹田市 で2教室を運営、兵庫県尼崎市 に3教室目が今春オープン予定
VR・AI技術開発 『機械学習 + Unreal Engine』な製品を自社開発・販売 • MocapForAll (2021) • ウェブカメラ2台でのモーションキャプチャアプリ • NNEngine (2021) • UE向け機械学習推論実行プラグイン • WhisperRealtime (2022) • UE向けリアルタイム音声認識プラグイン • 3D Gaussians Plugin (2023) • UE向け3DGS描画プラグイン 技術支援 • KSIN • アバター遠隔接客サービス • Vista Splat Pro • UE向け3DGS描画・ライティング
本日のスピーカー • 名前:麻場 健司(𝕏:@KenjiASABA) • 前職はシステムインテグレータ • 「VRで演劇したい」とか旧友と喋っていたら転職していた 演劇をカラオケくらい カジュアルな遊びにし たい! AIってやつでなんとか して! → モーションキャプチャ、音声認識、3D再構成 etc... の技術開発へ
最近の3D再構成技術の概観①:NeRF • すごく雑に言うと、NeRF=うまく学習できるような形式 (ニューラルネットとか)で作ったボリュームテクスチャ • Implicitな関数で3D空間の色と密度 (RGBA) を表現する 3次元の位置 𝑥Ԧ 視線の向き 𝑑Ԧ 関数 RGBA • 関数の具体的な中身について様々な派生研究がある • ニューラルネットベース • グリッドベース • … (Compact NGPの論文がよいまとめになっているのでお勧め) NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis (2020)
https://www.youtube.com/watch?v=GjpzMDur7UY 最適化してUE4でリアルタイム描画した例
最近の3D再構成技術の概観②:3DGS • 雑に言うと、3DGS=個々の点が「点」ではなく 「楕円体(ラグビーボールのような立体)」になっている点群 • Explicitな楕円体の集合で3D空間を表現する • 楕円体をカメラスクリーンに効率的に投影する 方法が確立されているので、高速に描画できる • 点群の描画より少し面倒だが、同じようなもの • 再構成される絵がNeRFより綺麗で話題になった 3D Gaussian Splatting for Real-Time Radiance Field Rendering (2023)
3DGSのおもしろさ(私見) • 楕円体の個数分の「位置・向き・サイズ・ RGBA」を情報として持つ …(200万個くらいある) • 情報の構成要素である個々の楕円体と描画 される絵が直接結びついているので、直感 的にデータをいじりやすい • 例えば、指定した楕円体を少し横に移動する等 のデータ編集も簡単 • ニューラルネットの重みとしてデータを保持す るような場合(NeRF等)、このような操作は 難しい …
3DGSのおもしろ い研究の例①: アンチエイリアス • 3DGSの楕円体のサイズに制限を入れ るとうまくアンチエイリアスできるよ、 という研究 • 標本化定理により、入力画像の 解像度から楕円体の最小サイズ を決める • 「無限に小さい楕円体を集めれ ば忠実に3D再構成ができそう」 というナイーブな発想と逆のこ とを言っているのがおもしろい • 3DGSのデータ構造がシンプル だから、標本化定理という従来 からの発想を応用しやすい Mip-Splatting: Alias-free 3D Gaussian Splatting (2023)
3DGSのおもしろい 研究の例②:物理 シミュレーション • シミュレーションに必要な離散 化されたシーンの表現として 3DGSの楕円体を用いる • “What you see is what you simulate” • 既存の物理シミュレーション手 法であるMPM (Material Point Method) を使用している • Neural Stress Fields for Reducedorder Elastoplasticity and Fracture (2023) に基づく、ニューラルネット を使って低次元化したモデルで計算 PhysGaussian: Physics-Integrated 3D Gaussians for Generative Dynamics (2023)
3DGSのおもしろ い研究の例③: メッシュの拡張 • 普通のメッシュ • • メッシュをUV展開してテクスチャのピク セルに紐付ける テクスチャにはいくつかの種類がある • • • • • ベース色テクスチャ ノーマルマップ … これらの情報から最終的な色を計算 3DGS+メッシュ • • メッシュをUV展開してテクスチャのピク セルに紐付ける テクスチャにはいくつかの種類がある • • • • • • • 3DGSの位置オフセットテクスチャ 3DGSの向きオフセットテクスチャ 3DGSのサイズテクスチャ 3DGSの色テクスチャ … テクスチャの各ピクセルが3DGSの一つ の楕円体に対応 3DGSをメッシュ表面(+ オフセット) で描画する Relightable Gaussian Codec Avatars (2023)
3DGSリアルタイムライティングの当社技術開発事例
やりたいこと: 3DGSをUE5の LumenとVSMに対応 させる • UE5:高度な3D描画機能を持つゲー ムエンジン • Lumen:UE5のリアルタイム間 接照明&反射機能 • VSM (Virtual Shadow Maps): UE5の高精細で高パフォーマン スな影の機能 → UE5は光と影をリアルタイムに綺麗 に表現できてすごい! • 映像製作や建築ビジュアライ ゼーションにも使われたりする • 3DGSをその背景として使える と嬉しい! Lumenの開発背景 | Unreal Engine 5 https://youtu.be/aRuUveaEK4A
課題:楕円体を画面に投影する処理が必要 • 3DGSの描画方法 • 毎フレーム、カメラスクリーンに楕円体 を投影して楕円として描画する • たくさん楕円体があるので、コンピュー トシェーダなどでこれを実装する • UE5でこれをやりたいのだが • UE5の描画パイプラインはメッシュの描画 を前提としている • 上記のような特殊な処理をLumenやVSM の処理中に差し込むのは大変 • 多分エンジン改造が必要
解決策①:3DGSをメッシュにする • じゃあ、メッシュにすればいいじゃない! • 次の問題: • いかに精度よくメッシュ化するか? =いかに精度よくメッシュで近似するか? • 私の答え: • 3DGSのXXXXXXXをXXXXXXXで近似する (会場にいる人にだけ教えます)
そんな近似で大丈夫か…? クイズ:どっちが近似結果でしょうか
見分けがつかない 通常 近似
解決策②:メッシュはライティングにだけ使う • メッシュはUE5でそのまま扱えるので照明・影はこれで計算 • ベースとなる色は3DGS本来の方法で計算 → 組み合わせる! • 光がなければ、本来の3DGSと同じ精度で描画される • 光と影にだけ、メッシュによる近似の精度劣化が現れる ベース色のみ ベース色+近似メッシュによる光と影
Vista Splat Pro • バーチャル・ライン・スタジオ株式会社、 株式会社デジタル・フロンティアとの共同開発 • UE5でのバーチャルプロダクション向け 3DGS描画・ライティングプラグイン https://www.youtube.com/watch?v=PWtyqMOHOyg
まとめ • 3DGSはExplicitな表現だから遊びがいがある (NeRFとの大きな違い) • 3DGSのExplicitでシンプルなデータ構造をうまく使うことで、 従来からの知見を応用したり、情報を引き出したりできる • • • • • アンチエイリアス 物理シミュレーション メッシュの拡張 ライティング …