2017-10-27 24 views
1

私は、その中にすべてのものが入ったブロブに食べさせて、私のcaffeモデルをテストしようとしています。caffe prototxtのhdf5から読み取られたデータがありません

net = caffe.Net(Model,Pretrained,caffe.TEST) 
data = net.blobs['img'].data.copy() 
:その後、私は確信して私のデータがで正しく供給されていることを確認してみてください

layer{ 
    name:"data" 
    type:"HDF5Data" 
    top:"img" 
    include:{ 
    phase:TEST 
    } 
    hdf5_data_param{ 
    source:"/home/wei/deep_metric/test_h5_idty_list.txt" 
    batch_size:1 
    } 
} 

:その後、私はあることを私のカフェのprototxtを変更

import h5py, os 
import numpy as np 

SIZE = 227 # fixed size to all images 

X = np.ones((1, 3, SIZE, SIZE), dtype='f8') 

with h5py.File('test_idty.h5','w') as H: 
    H.create_dataset('img', data=X) 
with open('test_h5_idty_list.txt','w') as L: 
    L.write('/home/wei/deep_metric/test_idty.h5') 

:だから私はによってHDF5ファイルを形成します

しかし、これは私にマトリックスのすべてのゼロを与えます。 それを解決する方法はありますか?

感謝!

+1

@Shaiよろしくお願いいたします。私はフォワード機能が欠けていると思う。それは今働く。 – Wei

答えて

1

"HDF5Data"層が最初に読み取るには、net.forward()を最初に呼び出す必要があります。フォワードパスが完了すると、レイヤーのtopにはファイルから読み取られたデータがあります。

関連する問題