一枚の画像から詳細なテクスチャメッシュを再構築Wonder3Dのインストールと使い方について紹介します。
Ubuntuのインストール
今回はUbuntu 22.04環境での構築になります。以下からUbuntuの環境を作成してminicondaのインストールまでしてください。
cudaインストール
CUDA Toolkit 11.7をインストールしてください。path設定も忘れずに行ってください。
Wonder3Dのインストール
gitインストール
sudo apt install git
リポジトリをクローンする
git clone https://github.com/xxlong0/Wonder3D.git
フォルダ移動
cd Wonder3D
仮想環境を作成(Python 3.10 仮想環境の名前はwonder3とした)
conda create -n wonder3d python=3.10
仮想環境をアクティブ化
conda activate wonder3d
依存関係をインストール
pip install -r requirements.txt
tiny cuda nnインストール
pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch
StableSAMモデルをダウンロードして以下のようにフォルダを作成して配置してください。
Wonder3D
|-- sam_pt
|-- sam_vit_h_4b8939.pth
Wonder3Dの使い方
推論
マルチビューの法線マップとカラーイメージを生成します。
example_imagesフォルダにサンプルが入ってます。ファイル名を変更して実行してください。自分で用意する場合は正面を向いた画像が良いでしょう。
accelerate launch --config_file 1gpu.yaml test_mvdiffusion_seq.py \
--config configs/mvdiffusion-joint-ortho-6views.yaml validation_dataset.root_dir=./example_images \
validation_dataset.filepaths=['ファイル名.png'] save_dir=./outputs
生成データはoutputsに保存されます。
先ほどのデータからInstant-NSRでメッシュ再構築
フォルダ移動
cd ./instant-nsr-pl
法線マップとカラーイメージの入ったフォルダを指定して実行してください。
python launch.py --config configs/neuralangelo-ortho-wmask.yaml --gpu 0 --train dataset.root_dir=../outputs/cropsize-192-cfg1.0/ dataset.scene=フォルダ名
Instant-nsr-pl / exp / フォルダ名 / saveにobjファイルが作成されます。
WebUI (Gradioデモ) 起動
推論(法線と色の生成からメッシュ再構築まで)をgradioデモで行います。VRAM12GBでもメモリ不足になったりするのでそれ以上のグラフィックボードが必要になります。生成したオブジェクトは、頂点カラーで色付けされています。
fire streamlit tritonインストール
pip install fire streamlit triton
Gradioデモ起動
python gradio_app_recon.py