LoginSignup
1
2

pythonのpifuhdを使って写真から3Dモデルを作成しUnityで確認(windowsのanaconda)

Last updated at Posted at 2024-05-09

環境

windows 11
anaconda 23.7.4
Python 3.12.3
numpy 1.26.4

ツリー構造

├─apps
├─checkpoints 今回のモデルファイルを配置
├─data
├─lib
├─sample_images
├───test.png 3Dにしたい写真の画像を配置
└─scripts

git cloneして、pifuhdをアクティブにする

git clone https://github.com/facebookresearch/pifuhd.git
cd pifuhd
conda create -n pifuhd
conda activate pifuhd

必要なモジュールをインストール

pip install -r requirements.txt
pip install matplotlib
pip install -U numpy

モデルをダウンロードして、checkpointsのフォルダーを作成し保存

リンクをクリックするとダウンロードがはじまります
https://dl.fbaipublicfiles.com/pifuhd/checkpoints/pifuhd.pt

ファイル修正

numpyのアプデで下記ファイルにエラーが出るので対応する
※現在、開発が止まっておりnumpyのダウングレードがうまくできなかったので、修正して対応しました
◆ pifuhd\lib\sdf.py
「np.bool」→「bool」に一括置換

◆ pifuhd\lib\data\EvalWPoseDataset.py
「np.int」→「int」に一括置換

修正差分参考(forkしたリポジトリーです)
https://github.com/aimkbiz/pifuhd/commit/2aa42aa0d3666754f11d3e2c0f9bcd723149f6ea

下記のフォルダーの「test.png」を3Dにしたい写真に差し替える

pifuhd\sample_images\test.png

今回はMicrosoft copilotに生成してもらった画像を使用
image.png

再度アクティブにして3D作成するコマンドを実行

conda activate pifuhd
python -m apps.simple_test

作成には1,2分ほど掛かります(画像サイズやスペックによります)

下記に作成されます

\pifuhd\results\pifuhd_final\recon

Unityで確認

他にもblenderなどでも確認可能です

Projectに保存して
image.png

Hierarchyに配置
image.png

まとめ

思ったより簡単に写真から3Dのモデルが生成されました
ただ、人物が対象で立ち姿じゃないとうまく生成されませんでした。
イラストも立体的じゃないものはうまくいなかなかったり。
色々試して建造物の生成もうまくできるか検証したいと思います

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2