Caffe学习系列(12):不同格式下计算图片的均值和caffe.proto
均值是所有训练样本的均值,减去之后再进行训练会提高其速度和精度。
1、caffe下的均值
数据格式是二进制的binaryproto,作者提供了计算均值的文件compute_image_mean,
计算均值时调用:
sudo build/tools/compute_image_mean examples/mnist/mnist_train_lmdb examples/mnist/mean.binaryproto
生成的均值文件保存在mean_binaryproto。
2、python格式下的均值(.npy)
需要首先将其转为二进制的,然后再转成python格式下的,用一个python脚本来实现。
#!/usr/bin/env python
import numpy as np
import sys,caffe if len(sys.argv)!=:
print "Usage: python convert_mean.py mean.binaryproto mean.npy"
sys.exit() blob = caffe.proto.caffe_pb2.BlobProto()
bin_mean = open( sys.argv[] , 'rb' ).read()//读入mean.binaryproto
blob.ParseFromString(bin_mean)//解析文件内容到blob
//将blob中的均值转化为.py格式,array的shape(mean_number,channel,height,width)
arr = np.array( caffe.io.blobproto_to_array(blob) )
//选择其中一组均值(?),保存
npy_mean = arr[]
np.save( sys.argv[] , npy_mean )
将其保存为convert_mean.py,调用
sudo python convert_mean.py mean.binaryproto mean.npy
得到python下的文件mean.npy
参考:http://www.cnblogs.com/denny402/p/5102328.html
http://blog.csdn.net/hyman_yx/article/details/51732656
3、caffe.proto
在2中,出现了caffe.proto,其中定了很多结构化的数据,比如conv层啊,pool层啊。Protobuf是用于数组存储和交换的,
比如一部分写数据进行存储,另一部分进行读写,为了方便操作,将其定义共同的结构化据。
具体可参考:http://blog.csdn.net/qq_16055159/article/details/45115359/
Caffe学习系列(12):不同格式下计算图片的均值和caffe.proto的更多相关文章
- Caffe学习系列(12):训练和测试自己的图片--linux平台
Caffe学习系列(12):训练和测试自己的图片 学习caffe的目的,不是简单的做几个练习,最终还是要用到自己的实际项目或科研中.因此,本文介绍一下,从自己的原始图片到lmdb数据,再到训练和测 ...
- Caffe学习系列(12):训练和测试自己的图片
学习caffe的目的,不是简单的做几个练习,最终还是要用到自己的实际项目或科研中.因此,本文介绍一下,从自己的原始图片到lmdb数据,再到训练和测试模型的整个流程. 一.准备数据 有条件的同学,可以去 ...
- 转 Caffe学习系列(12):训练和测试自己的图片
学习caffe的目的,不是简单的做几个练习,最终还是要用到自己的实际项目或科研中.因此,本文介绍一下,从自己的原始图片到lmdb数据,再到训练和测试模型的整个流程. 一.准备数据 有条件的同学,可以去 ...
- caffe学习一:ubuntu16.04下跑Faster R-CNN demo (基于caffe). (亲测有效,记录经历两天的吐血经历)
兜兜转转,兜兜转转; 一次有一次,这次终于把Faster R-CNN 跑通了. 重要提示1:在开始跑Faster R-CNN之前一定要搞清楚用的是Python2 还是Python3. 不然你会无限次陷 ...
- Caffe 学习系列
学习列表: Google protocol buffer在windows下的编译 caffe windows 学习第一步:编译和安装(vs2012+win 64) caffe windows学习:第一 ...
- Caffe学习系列(23):如何将别人训练好的model用到自己的数据上
caffe团队用imagenet图片进行训练,迭代30多万次,训练出来一个model.这个model将图片分为1000类,应该是目前为止最好的图片分类model了. 假设我现在有一些自己的图片想进行分 ...
- Caffe学习系列(21):caffe图形化操作工具digits的安装与运行
经过前面一系列的学习,我们基本上学会了如何在linux下运行caffe程序,也学会了如何用python接口进行数据及参数的可视化. 如果还没有学会的,请自行细细阅读: caffe学习系列:http:/ ...
- Caffe学习系列——工具篇:神经网络模型结构可视化
Caffe学习系列——工具篇:神经网络模型结构可视化 在Caffe中,目前有两种可视化prototxt格式网络结构的方法: 使用Netscope在线可视化 使用Caffe提供的draw_net.py ...
- Caffe学习系列(22):caffe图形化操作工具digits运行实例
上接:Caffe学习系列(21):caffe图形化操作工具digits的安装与运行 经过前面的操作,我们就把数据准备好了. 一.训练一个model 右击右边Models模块的” Images" ...
随机推荐
- socket传数据并记录到文件中
最近在新项目中要通过socket传一些数据,下面是程序: 功能: 将客户端发送的json数据写入到日志文件中,如果数据不是json的,丢弃. 程序如下: #!/usr/bin/env python # ...
- MYSQL数据库的常用数据类型
列类型 说明 tinyint/smallint/mediumint int(integer)/bigint 1字节.2字节.3字节.4字节.8字节整数,又可分有符号和无符号两种.这些整数类型的区别仅仅 ...
- %1 不是有效的Win32应用程序
用 64bit 的 Python 调用 32bit 的 Dll 会出错
- dedecms笔记
截取字符串 方法一: [field:title function="cn_substr(@me,10)"/] 方法二: {dede:arclist typeid=’9′ title ...
- 其他系统与ecshop的会员整合
步骤一:整合两个的会员数据 用软件Navicat 的 "导入向导"功能,导入你的原数据类型(sql,mdb,db)我的是mdb类型.下一步选择你原有的会员字段“user”.再进行下 ...
- SCWS分词扩展在UNIX/LINUX下的安装方法
<?php/** * 中文分词处理方法 *+--------------------------------- * @param stirng $string 要处理的字符串 * @param ...
- spring boot入门例子
最近学习spring boot,总结一下入门的的基础知识 1新建maven项目,修改pom.xml <project xmlns="http://maven.apache.org/PO ...
- 在IE6、IE7中实现块元素的inline-block效果
在IE6.IE7中实现块元素的inline-block效果有以下两种方法: 1先使用display:inline-block属性触发layout,然后再定义display:inline让块元素呈现内联 ...
- angularjs DOM操作之jqLite篇
angular.element(el).find("input").attr({value:1}); * ## Angular's jqLite * jqLite provides ...
- Javabean+servlet+JSP(html)实例应用
大家都知道Javabean+servlet+JSP是最简单的MVC模式.的确,在一个小型的项目中,这个模式完全够用. 它优雅并且简洁.加上jQueryui的完美展示效果,让这个模式看起来非常合适.当然 ...