vchoutas / smplify-x

Expressive Body Capture: 3D Hands, Face, and Body from a Single Image
https://smpl-x.is.tue.mpg.de/
Other
1.75k stars 339 forks source link

when using human_body_prior module for smplify-x for preprocessing the HICO-DET image dataset I get best_model_fname = sorted(glob.glob(os.path.join(expr_dir, 'snapshots', '*.pt')), key=os.path.getmtime)[-1] IndexError: list index out of range #140

Closed monacv closed 3 years ago

monacv commented 3 years ago

Could you please guide me on how to fix this? I am not sure why it is happening or how to fix it? Thanks a lot.


(smplifyx) [jalal@goku smplify-x]$ ./djrn_fit.sh 
Processing: ../../data/smplify-x/djrn_train_data/images/HICO_train2015_00000001.jpg
Traceback (most recent call last):
  File "smplifyx/main.py", line 272, in <module>
    main(**args)
  File "smplifyx/main.py", line 245, in main
    fit_single_frame(img, keypoints[[person_id]],
  File "/scratch3/research/code/smplify-x/smplifyx/fit_single_frame.py", line 188, in fit_single_frame
    vposer, _ = load_vposer(vposer_ckpt, vp_model='snapshot')
  File "/scratch3/venv/smplifyx/lib/python3.8/site-packages/human_body_prior/tools/model_loader.py", line 56, in load_vposer
    ps, trained_model_fname = expid2model(expr_dir)
  File "/scratch3/venv/smplifyx/lib/python3.8/site-packages/human_body_prior/tools/model_loader.py", line 31, in expid2model
    best_model_fname = sorted(glob.glob(os.path.join(expr_dir, 'snapshots', '*.pt')), key=os.path.getmtime)[-1]
IndexError: list index out of range
Processing: ../../data/smplify-x/djrn_test_data/images/HICO_test2015_00000002.jpg
Traceback (most recent call last):
  File "smplifyx/main.py", line 272, in <module>
    main(**args)
  File "smplifyx/main.py", line 245, in main
    fit_single_frame(img, keypoints[[person_id]],
  File "/scratch3/research/code/smplify-x/smplifyx/fit_single_frame.py", line 188, in fit_single_frame
    vposer, _ = load_vposer(vposer_ckpt, vp_model='snapshot')
  File "/scratch3/venv/smplifyx/lib/python3.8/site-packages/human_body_prior/tools/model_loader.py", line 56, in load_vposer
    ps, trained_model_fname = expid2model(expr_dir)
  File "/scratch3/venv/smplifyx/lib/python3.8/site-packages/human_body_prior/tools/model_loader.py", line 31, in expid2model
    best_model_fname = sorted(glob.glob(os.path.join(expr_dir, 'snapshots', '*.pt')), key=os.path.getmtime)[-1]
IndexError: list index out of range

The script is:

(smplifyx) [jalal@goku smplify-x]$ cat ./djrn_fit.sh 
export CUDA_VISIBLE_DEVICES=0
python smplifyx/main.py --config cfg_files/fit_smplx.yaml --data_folder ../../data/smplify-x/djrn_train_data/ --output_folder ../../data/smplify-x/djrn_train_results --visualize="False" --model_folder ../../data/smplify-x/models_smplx_v1_1/models/smplx/SMPLX_NEUTRAL.npz --vposer_ckpt ../../data/smplify-x/vposer_v1_0 --part_segm_fn ../../data/smplify-x/smplx_parts_segm.pkl

python smplifyx/main.py --config cfg_files/fit_smplx.yaml --data_folder ../../data/smplify-x/djrn_test_data/ --output_folder ../../data/smplify-x/djrn_test_results --visualize="False" --model_folder ../../data/smplify-x/models_smplx_v1_1/models/smplx/SMPLX_NEUTRAL.npz --vposer_ckpt ../../data/smplify-x/vposer_v1_0 --part_segm_fn ../../data/smplify-x/smplx_parts_segm.pkl

and

(smplifyx) [jalal@goku smplify-x]$ ls ../../data/smplify-x/djrn_train_data/images/HICO_train2015_00000001.jpg
-rwxr-xr-x. 1 jalal cs-grad 63K May 21 17:29 ../../data/smplify-x/djrn_train_data/images/HICO_train2015_00000001.jpg

https://github.com/DirtyHarryLYL/DJ-RN/issues/46

haolyuan commented 3 years ago

Have you solved this problem? I meet the same problem.

n-kasatkin commented 9 months ago

Here is the command to run:

python smplifyx/main.py --config cfg_files/fit_smplx.yaml \
    --data_folder data/ \
    --output_folder output/ \
    --visualize="False" \
    --gender="male" \
    --model_folder dependencies/ \
    --vposer_ckpt dependencies/vposer_v1_0/ \
    --part_segm_fn smplx_parts_segm.pkl

my mistake was in wrong paths to smplx and vposer

whl-007 commented 1 month ago

Here is the command to run:

python smplifyx/main.py --config cfg_files/fit_smplx.yaml \
    --data_folder data/ \
    --output_folder output/ \
    --visualize="False" \
    --gender="male" \
    --model_folder dependencies/ \
    --vposer_ckpt dependencies/vposer_v1_0/ \
    --part_segm_fn smplx_parts_segm.pkl

my mistake was in wrong paths to smplx and vposer hi,can you tell me where can I find smplx_parts_segm.pkl?I can't find it.