1. 程式人生 > >caffe hdf5 資料層資料生成

caffe hdf5 資料層資料生成

使用的是python裡面帶的h5py這個庫,
使用方式是通過hy.File(filename,mode)讀取hdf5或者寫入hdf5。
輸入存入的方式是通過字典賦值的方式進行的。

import h5py as hy
import numpy as np
import cv2
width=100
height=224
fid=open('/home/yang/Desktop/all.txt')
lines=fid.readlines()
f = hy.File('HDF5_FILE.h5','w')
imgData=np.zeros((2,3,height,width))
labels=np.zeros((2
,3)) idx=0 for line in lines: line=line.strip().split() image=cv2.imread(line[0]) image=cv2.resize(image,(width,height)) image=image[:,:,[2,1,0]] image=image.transpose((2,0,1)) imgData[idx,:,:,:]=image labels[idx,0]=int(line[1]) labels[idx,1]=int(line[2]) labels[idx,2]=int(line
[3]) idx+=1 f['data1']=imgData #這個地方的名字決定了你使用caffe時候top的名稱,名稱沒對應上是錯誤的。 f['label1']=labels #同上面 print labels fid.close() f.close()