- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
caffe抽取特征例子
/guoyilin/article/details caffe c++ 抽取图片特征 安装好Caffe后,在examples/images文件夹下有两张示例图像,本文即在这两张图像上,用Caffe提供的预训练模型,进行特征提取,并进行可视化。
1. 进入caffe根目录,创建临时文件夹,用于存放所需要的临时文件
?
?
2. 根据examples/images文件夹中的图片,创建包含图像列表的txt文件,并添加标签(0)
?
?
3. 执行下列脚本,下载imagenet12图像均值文件,在后面的网络结构定义prototxt文件中,需要用到该文件 (data/ilsvrc212/imagenet_mean.binaryproto)
4. 将网络定义prototxt文件复制到_temp文件夹下
?1. 创建 src/youname/ 文件夹, 存放我们自己的脚本
分类: 机器学习 2015-01-19 22:47 1599人阅读 评论(8) 收藏 举报
featurecaffec++
caffe c++批量抽取特征的方法在[1],但是该方法使用中有几个疑问:
1. 如何转换levelDB 格式为libsvm格式。
2. ?./build/tools/extract_features mini-batch 是代表什么意思,和imagenet_totxt中的batch_size的关系是什么?
本文主要解决如上两个问题,具体extract_features源代码还需要进一步分析。
第一个问题,
[plain] view plaincopyprint?
./build/tools/extract_features?models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel?examples/_temp/imagenet_totxt?fc7?examples/_temp/features?10??
其中,10 是mini-batch, 假设imagenet_totxt的batches size是128, 那么程序将抽取128 * 10个图片的特征。如果你有100张图片, 你可以设置mini-batch = 1, batches size = 100.如果你的image个数是1283, 那么如上数值的设置会是的leveldb多出3个无用的feature,这个需要注意, 我测试过好像是会重复之前的图片,具体需要研究源代码。第二个问题, 特征保存的格式为leveldb,如果需要用libsvm的格式访问特征,可以用python 进行转换, 程序如下, 这里感谢bean的程序[1]:
[python] view plaincopyprint?
import?numpy?as?np??
import?caffe??
import?sys??
from?to?import?caffe_pb2??
??
#parse?argument ??
dbName?=?sys.argv[1]??
featureFile?=?sys.argv[2]??
output?=?open(featureFile,?w)??
import numpy as np
import caffe
import sys
from to import caffe_pb2
#parse argument
dbName = sys.argv[1]
featureFile = sys.argv[2]
output = open(featureFile, w)
[python] view plaincopyprint?
#?open?leveldb?files ??
db?=?leveldb.LevelDB(dbName)??
??
#?get?db?iterator ??
it?=?db.RangeIter()??
count?=?0??
for?key,value?in?it:??
????#?convert?string?to?datum ??
??
????datum?=?caffe_pb2.Datum.FromString(db.Get(key))??
??
????#?convert?datum?to?numpy?string ??
??
????arr?=?caffe.io.datum_to_array(datum)[0]??
??
????i?=?0??
????tmpS?=???
??
????#?convert?to?svm?format ??
??
????for?i?in?range(0,?len(arr)):??
????????tmpS?+=?str(i+1)
您可能关注的文档
最近下载
- 2025甘肃甘南州专业化管理的村党组织书记招聘45人笔试备考题库及一套答案详解.docx VIP
- 05G525_吊车轨道联结及车挡 .docx VIP
- 《交流电机的维护与检修》课件.ppt VIP
- 妇产科学教学课件:女性生殖系统生理.ppt VIP
- (通用)大学生人文知识竞赛题库及答案(通用版).pptx VIP
- DB42╱T 1528.1-2019 湖北省农业用水定额 第1部分:农田灌溉用水定额.docx VIP
- 财务风险管理及防范对策研究.pptx VIP
- 儿童特应性皮炎的药物治疗.pptx
- 一种在无有机模板剂条件下合成MCM-49型沸石分子筛的方法.pdf VIP
- 三相异步电动机的铭牌.pptx VIP
文档评论(0)