def getFeats(ims,net,feat_layer):
net.blobs['data'].reshape(len(ims),3,227,227)
transformer = caffe.io.Transformer({'data': net.blobs['data'].data.shape})
transformer.set_mean('data', IM_MEAN)
transformer.set_transpose('data', (2,0,1))
transformer.set_channel_swap('data', (2,1,0))
transformer.set_raw_scale('data', 255.0)
caffe_input = np.empty((len(ims),3,227,227))
for ix in range(len(ims)):
caffe_input[ix,:,:,:] = transformer.preprocess('data',caffe.io.load_image(ims[ix]))
net.blobs['data'].data[...] = caffe_input
out = net.forward()
feat = net.blobs[feat_layer].data.copy()
return feat
评论列表
文章目录