def read(self, in_path):
"""
read lmdb, return image data and label
"""
print 'Reading ' + in_path
env = lmdb.open(in_path, readonly=True)
N = env.stat()['entries']
txn = env.begin()
for i in range(N):
str_id = '{:08}'.format(i)
raw_datum = txn.get(str_id)
datum = caffe.proto.caffe_pb2.Datum()
datum.ParseFromString(raw_datum)
feature = caffe.io.datum_to_array(datum)
if i==0:
data = np.zeros((N,feature.shape[0],feature.shape[1],
feature.shape[2]),dtype=np.uint8)
label = np.zeros(N,dtype=np.int64)
data[i] = feature
label[i] = datum.label
env.close()
return data, label
评论列表
文章目录