質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

0回答

1113閲覧

npzファイルのpickle化に失敗する

退会済みユーザー

退会済みユーザー

総合スコア0

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2018/11/21 07:24

編集2018/11/21 07:54

前提・実現したいこと

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

何か分かることがございましたら教えていただけますと幸いです。よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

quickquip

2018/11/21 22:15 編集

提示されたソースは「エラー付近」じゃないように見えます。エラー中の chainer.serializers.load_npz が含まれていませんので。転載のミスか、事態の認識を間違えている可能性が考えられます。
quickquip

2018/11/21 22:32

ああ、これはnpyio.pyを記載しているのですか? あなたが書いたコードの中の、保存している部分と、読みこんでいる部分を記載する方がいいかと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問