前提・実現したいこと
2D画像から3Dスケルトンモデルを構築するプログラムの構築を行っています。
しかし途中でエラーが起こり、プログラムが止まってしまいました。
3DPose-gun
上記のサイトを参考にしています。
発生している問題・エラーメッセージ
deepstation@deepstation:~/3dpose_gan$ python3 bin/demo.py sample/image.png --lift_model sample/gen_epoch_500.npz --model2d pose_iter_440000.caffemodel --proto2d openpose_pose_coco.prototxt MODEL: generator, N_OUT: 17, N_UNIT: 1024 Traceback (most recent call last): File "/home/deepstation/.virtualenvs/dwango/lib/python3.4/site-packages/numpy/lib/npyio.py", line 440, in load return pickle.load(fid, **pickle_kwargs) _pickle.UnpicklingError: invalid load key, 'v'. During handling of the above exception, another exception occurred: Traceback (most recent call last): File "bin/demo.py", line 199, in <module> main(args) File "bin/demo.py", line 157, in main chainer.serializers.load_npz(args.lift_model, model) File "/home/deepstation/.virtualenvs/dwango/lib/python3.4/site-packages/chainer/serializers/npz.py", line 187, in load_npz with numpy.load(file) as f: File "/home/deepstation/.virtualenvs/dwango/lib/python3.4/site-packages/numpy/lib/npyio.py", line 443, in load "Failed to interpret file %s as a pickle" % repr(file)) OSError: Failed to interpret file 'sample/gen_epoch_500.npz' as a pickle
該当のソースコード(エラー付近のみ抜粋)
python
1 try: 2 # Code to distinguish from NumPy binary files and pickles. 3 _ZIP_PREFIX = b'PK\x03\x04' 4 N = len(format.MAGIC_PREFIX) 5 magic = fid.read(N) 6 # If the file size is less than N, we need to make sure not 7 # to seek past the beginning of the file 8 fid.seek(-min(N, len(magic)), 1) # back-up 9 if magic.startswith(_ZIP_PREFIX): 10 # zip-file (assume .npz) 11 # Transfer file ownership to NpzFile 12 tmp = own_fid 13 own_fid = False 14 return NpzFile(fid, own_fid=tmp, allow_pickle=allow_pickle, 15 pickle_kwargs=pickle_kwargs) 16 elif magic == format.MAGIC_PREFIX: 17 # .npy file 18 if mmap_mode: 19 return format.open_memmap(file, mode=mmap_mode) 20 else: 21 return format.read_array(fid, allow_pickle=allow_pickle, 22 pickle_kwargs=pickle_kwargs) 23 else: 24 # Try a pickle 25 if not allow_pickle: 26 raise ValueError("allow_pickle=False, but file does not contain " 27 "non-pickled data") 28 try: 29 return pickle.load(fid, **pickle_kwargs) 30 except Exception: 31 raise IOError( 32 "Failed to interpret file %s as a pickle" % repr(file)) 33 finally: 34 if own_fid: 35 fid.close() 36
試したこと
Pycharmでのプラグインが足りないのではと考え、numpyを確認してみたところ基本のnumpyがインストールされていることを確認致しました。
補足情報(FW/ツールのバージョンなど)
python3
opencv3.4.1
cupy5.0
chainer 5.0
pycharm
linux
ubuntu14.04
何か分かることがございましたら教えていただけますと幸いです。よろしくお願いいたします。
あなたの回答
tips
プレビュー