Example dataset can be found in README.md. Please check it for data organization and format.
- Input: 3D scans & fitted SMPL poses.
- The input data is organized as the following structure:
training_data_dir
├── scan
│ └── 000.ply
│ └── 001.ply
├── smpl
│ └── pose_000.txt
│ └── pose_001.txt
│ └── shape.txt
- 3D scans (
*.ply
) contain vertex colors as texture, the SMPL pose inpose_*.txt
is defined as[global_trans, global_rot, joint_1_rot, ...]
, whereglobal_trans, global_rot, joint_*_rot
are all 3-dimensional vectors. - Download PoissonRecon.exe, and place it in
./gen_data/bin
. - Run the following script to process the training data.
python -m gen_data.preprocess_training_data --data_dir=training_data_dir
- Note that this code uses the executable of Poisson Reconstruction, so it can only run on Windows.
- Input: image sequence & fitted SMPL poses.
- The input data is organized as the following structure.
testing_data_dir
├── imgs
│ └── color
│ └── color_0000.jpg
│ └── mask
│ └── mask_0000.png
│ └── camera.yaml
├── smpl
│ └── pose_0000.txt
│ └── shape.txt
- The
smpl
folder is the same as that in the training data, and theimgs
folder contains color & mask sequences and camera information (camera.yaml
). - Make sure that the normal network checkpoint is in
./pretrained_models/normal_net
. This checkpoint is extracted from the trained model of PIFuHD. Many thanks to the authors! - Run the following script to process the testing data.
python -m gen_data.preprocess_real_data --data_dir=testing_data_dir --normal_net=./pretrained_models/normal_net/netF.pth