NVIDIA GET3D で人工知能による3Dモデル生成を試す
「NVIDIA GET3D」で人工知能による3Dモデル生成を試したので、まとめました。
1. NVIDIA GET3D
「NVIDIA GET3D」は、NVIDIAが開発した2D画像から3Dモデルを生成するAIモデルです。
2. Colabでの実行
Colabでの実行手順は、次のとおりです。
(1) Colabで新規ノートブックを作成し、メニュー「編集 → ノートブックの設定で「GPU」を選択。
(2) GPUの確認。
# GPUの確認
!nvidia-smi
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.32.03 Driver Version: 460.32.03 CUDA Version: 11.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Tesla T4 Off | 00000000:00:04.0 Off | 0 |
| N/A 46C P8 9W / 70W | 0MiB / 15109MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
(3) パッケージのインストール。
# パッケージのインストール
!git clone https://github.com/nv-tlabs/GET3D
%cd GET3D
!mkdir cache;
!wget https://api.ngc.nvidia.com/v2/models/nvidia/research/stylegan3/versions/1/files/metrics/inception-2015-12-05.pkl
!pip install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 -f https://download.pytorch.org/whl/torch_stable.html
!pip install ninja xatlas gdown
!pip install git+https://github.com/NVlabs/nvdiffrast/
!pip install meshzoo imageio gputil h5py point-cloud-utils imageio imageio-ffmpeg==0.4.4 pyspng==0.1.0
!pip install urllib3
!pip install scipy
!pip install click
!pip install tqdm
!pip install opencv-python==4.5.4.58
(4) 環境変数の準備。
# 環境変数の準備
!export PYTHONPATH=$PWD:$PYTHONPATH
!export CUDA_VISIBLE_DEVICES=0,
(5) 学習済みモデルのダウンロード。
# 学習済みモデルのダウンロード
!gdown --folder 1oJ-FmyVYjIwBZKDAQ4N1EEcE9dJjumdW
以下の4つの学習済みモデルがダウンロードされます。
(6) 3Dモデルの生成。
今回は、バイクの3Dモデルを生成します。
# 3Dモデルの生成
!python train_3d.py --outdir=save_inference_results/shapenet_motorbike --gpus=1 --batch=4 --gamma=40 --data_camera_mode shapenet_motorbike --dmtet_scale 1.0 --use_shapenet_split 1 --one_3d_generator 1 --fp32 0 --inference_vis 1 --resume_pretrain /content/GET3D/get3d_release/shapenet_motorbike.pt --inference_to_generate_textured_mesh 1
(7) 左端のフォルダアイコンでファイル一覧を表示し、「save_inference_results/shapenet_motorbike/texture_mesh_for_inference」からモデルをダウンロード。
16個のモデルが生成されています。
Unityに3Dモデルを配置すると、次のようになります。
3. 参考
公式のColabノートブックは以下で参照できます。
この記事が気に入ったらサポートをしてみませんか?