GitHub 代码地址: https://github.com/HansRen1024/Use-Python-to-call-Caffe-module
前言#
我們一般都會用 caffe 提供的 make_mean.sh 生成 prototxt 格式的均值文件,並且這個腳本最後也會在終端輸出三個均值。
下面代碼就是如果將 prototxt 或者均值轉換成.npy 格式的均值文件。
一、prototxt 轉換為 npy#
import caffe
import numpy as np
prototxt = 'doc/mean.binaryproto'
npy = 'doc/mean.npy'
blob = caffe.proto.caffe_pb2.BlobProto()
data = open(prototxt, 'rb' ).read()
blob.ParseFromString(data)
array = np.array(caffe.io.blobproto_to_array(blob))
mean_npy = array[0]
np.save(npy ,mean_npy)
二、均值轉換為 npy#
import numpy as np
npy = 'doc/mean.npy'
mean = np.ones([3,256, 256], dtype=np.float) #256是圖像尺寸
mean[0,:,:] = 100
mean[1,:,:] = 110
mean[2,:,:] = 120
np.save(npy, mean)
以上內容參考自: http://blog.csdn.net/hyman_yx/article/details/51732656