在caffe中怎样提取训练出的特征
提取特征使用caffe提供的python或者matlab接口会方便些,见下面的python例子:http://nbviewer.ipython.org/github/BVLC/caffe/blob/master/examples/00-classification.ipynb
■网友
caffe tools里面有个extract_features.bin 工具,用那个就好了。怎么用的说明在./example/feature_extraction/read.md
■网友
你先把网络训练好,得到caffemodel文件,然后利用matlab或python接口构建网络,加载caffemodel文件,再依次读取数据集里的图片,一张张的输入到net中,每输入一张执行一次前向传播,提取出全连接层的输出就行了。
这里给个大致过程:
net = http://caffe.Net(model, weights, \u0026#39;test\u0026#39;); //利用proto文件和权重文件构建一个net,test表示测试阶段
data1=。。。。。//这里是对输入caffe的图像数据的预处理,可以自行百度,总之就是将一副图像转为可以输入caffe的data1.要懒得百度可以直接到caffe/matlab/demo里classification_demo.m里看看prepare_image函数,官方写好的。
scores = net.forword(data1)//表示进行一次前向传播
然后提取全连接层的输出
out=net.blobs(\u0026#39;fc1\u0026#39;).get_data();//表示获取‘fc1’层的输出blob。这个记忆有些模糊了,请大家查查blob的api再用,应该没记错
其实也可以提取任意层的输出,只要修改\u0026#39;fc1\u0026#39;这个参数即可。
可以将提取到的特征和图像名一一对应,写入txt送入其它分类网络,比如svm。
我就是这么干的。
■网友
请问有c++的接口么,可以在程序里面直接改那种,而不是通过配置文件
■网友
如果是Linux下直接用官网给出的提速特征的代码。保存成leveldb,再用Python进行转换成其他格式。windows下,happynear的版本有个提速特征的demo,用matlab来做的。如果工程能力比较强,可以直接用C++来写一个。
■网友
【在caffe中怎样提取训练出的特征】 同问,有没有哪位大神知道如何提取全连接的特征?
■网友
请问一下,提取出来的特征,与输入的图片之间的对应关系是?
推荐阅读
- 聪明人养花,这3种“花”怎样也要养一盆,每年能省不少医药费
- 互联网怎样解决“家政服务上门速度慢”的问题
- 怎样看待从1月8号起,QQ钱包开始提现收费
- 银行it人怎样转型
- 汽车|冬天怎样让车内温度快速升高?座椅加热的最佳使用方式二,外循环的作用总结
- 怎样进入通信行业
- 怎样评价扶他柠檬茶的小说《云养汉》的结尾
- 怎样成为一名合格的Python程序员?
- 怎样评价华为、诺基亚、中兴中标中国移动高端路由交换设备扩容集采
- 怎样评价类似前橙会、百老汇、南极圈这样类型的离职帮抱团,对企业的积极意义和消极意义
