DSO:オックスフォード大学が公開した物理法則に準拠した3Dモデル最適化フレームワーク 155

小编 ·

DSO:オックスフォード大学が公開した物理法則に準拠した3Dモデル最適化フレームワーク

DSO(Direct Simulation Optimization)は、TRELLISのような画像から3Dモデルを生成するジェネレーターを向上させるためにオックスフォード大学が公開した手法です。直接シミュレーション最適化により、物理シミュレーションや現実世界での生成3Dオブジェクトの安定性を強化します。テスト時に追加コストは不要で、短時間で自立可能な3Dオブジェクトを生成できます。

DSO:オックスフォード大学が公開した物理法則に準拠した3Dモデル最適化フレームワーク

DSOとは?

DSO(Direct Simulation Optimization)は、オックスフォード大学が発表した、画像から3Dモデル生成器(例:TRELLIS)の性能を向上させるための手法であり、直接シミュレーション最適化によって生成された3Dオブジェクトの物理シミュレーションおよび実世界における安定性を強化します。テスト時に追加コストを発生させることなく、短時間で自立可能な3Dオブジェクトを生成できます。

DSO是什么?.webp

DSOの機能と特徴

  • 3Dモデルの安定性向上:従来の生成器では重力下で自立可能な3Dオブジェクトを生成できない問題を解決し、物理シミュレーションおよび3Dプリント時における生成3Dオブジェクトの安定性を大幅に向上させます。

  • 高い効率性:テスト時に追加コストがかからず、安定的な3Dオブジェクトを秒単位で生成できます。

  • 互換性:既存の画像から3Dモデル生成器(例:TRELLIS)をベースに最適化されており、 seamlessに連携してその既存の機能や利点を十分に活用できます。

  • 事前学習済みモデルの提供:直接選好最適化(DPO)と直接報酬最適化(DRO)でそれぞれ学習された2種類の事前学習済みモデルチェックポイントを提供しており、ユーザーが迅速に利用を開始できます。

DSOの応用シーン

  • 3Dプリント:生成された3Dモデルが実際のプリント後に安定して自立する可能性が高く、モデルの不安定さによるプリント失敗や追加の支持構造の必要性を減らし、3Dプリントの成功率と実用性を向上させます。

  • VR・AR:仮想環境内によりリアルで安定した3Dオブジェクトを作成し、ユーザー体験を向上させます。例えば、仮想シーンに置かれた物体が物理法則に従って安定的に存在できます。

  • ゲーム開発:ゲーム内の3Dモデル生成に対し、より物理法則に準拠したソリューションを提供し、ゲーム内の物体が重力などの物理要因の下でより自然な挙動を示すようにし、ゲームのリアリティと没入感を高めます。

  • 建築デザイン・工業デザイン:デザイナーが物理的な安定性を満たす3Dモデルプロトタイプを迅速に生成し、初期設計の評価や検証を行えるようにし、安定性の問題による設計修正や反復作業の回数を削減します。

DSO应用场景.webp

DSOの使用チュートリアル

1. 依存関係のインストール:

  • TRELLISの依存関係をインストールし、Python環境を作成して指定バージョンのPyTorchおよび関連依存ライブラリをインストールし、スクリプトを実行してその他の関連ライブラリをインストールし、最後にKaolinライブラリをインストールします。

  • pip install -r requirements.txtコマンドを実行して、残りの依存関係をインストールします。

2. 事前学習済みモデルのダウンロード:git lfs installおよびgit cloneコマンドを使用して、DPOおよびDROで学習された事前学習済みモデルをダウンロードします。

3. 生成のクイックスタート:example.pyスクリプトを使用し、事前学習済みモデルと入力画像をロードして、TrellisImageTo3DPipelineによる前処理と生成操作を行い、最後に生成されたモデルをGLB形式でエクスポートします。

4. 評価:

  • 評価用データセットをダウンロードします。

  • 学習済みのチェックポイントを使用して3Dモデルを生成します。

  • 安定性と幾何学的指標を計算します。

5. 学習:

  • 合成学習データを生成します。これには画像の取得、3Dモデルの生成、シミュレーションフィードバックの追加および物理的妥当性スコアの保存が含まれます。

  • データディレクトリを指定し、finetune.pyスクリプトを実行して学習ジョブを開始します。

Githubリポジトリ:https://github.com/RuiningLi/dso