说白了pnet模型参数就用numpy做了个保存,直接读取就好了。这样参数保存方式可以跨框架,也就是说caffe训练的模型可以直接拿到tensorflow上使用。当然结构得重写,所以只适合比较小的模型,例如:pnet
import numpy as np
#latin1是什么意思,我也不知道
test = np.load('det1.npy',encoding='latin1')
#test是个np数组,里面的内容是个多层字典
a = test.all()
for t in a:
print(t)#打印第一层
b = a[t]
for i in b:#打印第二层
print('****',i)
最终输出的结构:
conv3
** weights
** biases
conv1
** weights
** biases
conv4-1
** weights
** biases
conv4-2
** weights
** biases
PReLU1
** alpha
conv2
** weights
** biases
PReLU2
** alpha
PReLU3
** alpha