jfzhang95 / PoseAug

[CVPR 2021] PoseAug: A Differentiable Pose Augmentation Framework for 3D Human Pose Estimation, (Oral, Best Paper Award Finalist)
MIT License
368 stars 57 forks source link

Can't run run_evaluate.py: 'Dataset' object has no attribute 'value' #27

Closed grayskripko closed 3 years ago

grayskripko commented 3 years ago

The next part worked as expected. I know the path to the checkpoint is wrong

(base) C:\Users\srskr\Desktop\PoseAug>python run_evaluate.py --posenet_name 'videopoDse' --keypoints gt --evaluate '/path/to/checkpoint'
==> Using settings Namespace(action_wise=True, actions='*', batch_size=1024, checkpoint='checkpoint/debug', dataset='h36m', downsample=1, dropout=0.25, epochs=50, evaluate="'/path/to/checkpoint'", keypoints='gt', lr=0.001, lr_decay=100000, lr_gamma=0.96, max_norm=True, note='debug', num_workers=2, posenet_name="'videopoDse'", pretrain=False, random_seed=0, s1only=False, snapshot=25, stages=4)
==> Loading dataset...
Traceback (most recent call last):
  File "run_evaluate.py", line 61, in <module>
    main(args)
  File "run_evaluate.py", line 24, in main
    data_dict = data_preparation(args)
  File "C:\Users\srskr\Desktop\PoseAug\function_baseline\data_preparation.py", line 23, in data_preparation
    dataset = Human36mDataset(dataset_path)
  File "C:\Users\srskr\Desktop\PoseAug\common\h36m_dataset.py", line 259, in __init__
    data = np.load(path, allow_pickle=True)['positions_3d'].item()
  File "C:\Users\srskr\anaconda3\lib\site-packages\numpy\lib\npyio.py", line 428, in load
    fid = open(os_fspath(file), "rb")
FileNotFoundError: [Errno 2] No such file or directory: 'data\\data_3d_h36m.npz'

I used instructions https://github.com/jfzhang95/PoseAug/blob/main/DATASETS.md "Setup from preprocessed dataset" and got h36m.zip file. Then

(base) C:\Users\srskr\Desktop\PoseAug>cd data

(base) C:\Users\srskr\Desktop\PoseAug\data>python prepare_data_h36m.py --from-archive h36m.zip
Extracting Human3.6M dataset from h36m.zip
Converting...
<class 'h5py._hl.dataset.Dataset'>
Traceback (most recent call last):
  File "prepare_data_h36m.py", line 67, in <module>
    positions = hf['3D_positions'].value.reshape(32, 3, -1).transpose(2, 0, 1)
AttributeError: 'Dataset' object has no attribute 'value'

Looks like hf['3D_positions'] should be a numpy or pytorch thing but it's not

Garfield-kh commented 3 years ago

Hi, thank you for the interest! It seems like you are runing on a windows OS, can you try on Ubuntu (e.g., ubuntu 16.04)?

grayskripko commented 3 years ago

thanks, I don't have Ubuntu. I'll try to overcome it somehow