pycaffe 常用API记录
来源:互联网 发布:java培训机构靠谱吗 编辑:程序博客网 时间:2024/06/05 13:47
Classification:Instant Recognition with caffe
对官方的教程进行一些解释
import caffe#导入caffe模块 caffe.set_mode_cpu()#设置cpu模式 #通过模型文件复原网络 net=caffe.Net(model_def,#prototext文件地址 model_weights,#caffemodel文件地址 caffe.TEST)#使用TEST模式 #读取mean.npy文件 import numpy as np mu=np.load(file) mu.mean(1).mean(1)#得到每个channel的平均像素值BGR print 'mean-subtracted values:',zip('BGR',mu) #通过使用caffe.io模块,对已知图像进行预处理 #首先实例化一个transform对象,使用data层的输入数据shape作为初始化参数 transformer=caffe.io.Transformer({'data': net.blobs['data'].data.shape}) transformer.set_transpose('data',(2,0,1))#227x227x3->3x227x227 transformer.set_mean('data',mu) transformer.set_raw_scale('data',255) transformer.set_channel_swap('data',(2,1,0))#和set_transpose()注意区别 #对输入图像进行预处理 #首先设置大小 net.blobs['data'].reshape(50,3,227,227) image=caffe.io.load_image(file)#载入图像 transformed_image=transformer.preprocess('data',image)#!!!关键调用 plt.imshow(image) #执行分类 #首先向data层装入图像 net.blobs['data'].data[...]=transfarmed_image #执行前向运算 output=net.forward() #挑选出batch中对应于第一幅图像的预测结果 output_prob=output['prob'][0]#'prob'为输出层名 print 'predicted class is: ',output_prob.argmax() #输出每层的名字和数据形状 for layer_name,blob in net.blobs.iteritems(): print layer_name+'\t'+str(blob.data.shape) #输出每层层名和参数形状,param[0] for weights, param[1] for biases for layer_name,param in net.params.iteritems(): print layer_name+'\t'+str(param[0].data.shape,str(param[1].data.shape) #该教程后面还有一些集中显示每一层输出的函数,可以了解了解
0 0
- pycaffe 常用API记录
- pycaffe API的使用
- mysql 常用API 记录
- OPENGL ES 常用API记录
- pycaffe
- pycaffe
- 记录常用Android和对应API版本
- D3常用的简单的API记录
- C#制作外挂常用API。。自己存着。记录
- 记录一下怎么使用pycaffe调用已有的网络模型识别人脸(物体)
- 常用API
- 常用API
- 常用API
- 常用API
- 常用API
- 常用API
- 【常用API】
- 常用API
- 632.Binary Tree Maximum Node-二叉树的最大节点(入门题)
- java 中读写锁的使用
- windows下python安装Numpy和Scipy模块
- sqlserver 锁初探
- C语言技巧方式 一体机服务器群控
- pycaffe 常用API记录
- 给 Android 开发者的 RxJava 详解
- 一个animate程序解析
- 关于Repaint(重绘)与Reflow(回流)
- redis.conf 配置详解
- Eggs简介
- Vuejs(一)入门
- 目标跟踪:KCF
- C语言练习