caffe提取特征

转载地址:https://blog.youkuaiyun.com/feelingjun/article/details/70132815

caffe提供的使用工具build/tools/extract_features.bin实现了特征提取功能,该程序需要一个训练好的网络和一个数据输入层,运行后可得到相应数据通过网络某个中间层产生的特征图并保存到磁盘。

用法如下:

$ extract_features \  //可执行的程序

pretrained_net_param \//预训练网络.caffemodel

feature_extraction_proto_file \//网络描述文件  .prototxt

extract_feature_blob_name1 [, name2, ...] \  //需要提取的blob名

save_feature_dataset_name1 [, name2, ...] \ //保存特征名

num_mini_batches \ //做特征提取的数据批量数目

db_type \ //输入的数据的格式,lmdb或者leveldb

CPU/GPU \ //选择一何种模式运行,CPU模式或者GPU模式

device_id=0  //如果使用GPU,则选择设备编号

例子:caffe文件夹下

./build/tools/extract_features.bin /home/wuqingqing/classification/UCMerced_LandUse80/_iter_10000.caffemodel /home/wuqingqing/classification/UCMerced_LandUse80/features/train_val.prototxt fc7 /home/wuqingqing/classification/UCMerced_LandUse80/features/wodefc7 10 lmdb CPU





# CNN_UCMerced-LandUse_Caffe(数据:http://vision.ucmerced.edu/datasets/landuse.html) 主要任务:基于深度学习框架完成对光学遥感图像UCMerced LandUse数据集的分类。 数据特点:共包含21类土地类型图片,每类100张,每张像素大小为256*256,数据类内距离大,类间小。 完成情况:数据量太小,训练数据出现过拟合;为了克服这个问题,又减小训练时间,采用caffe框架,在别人训练好的bvlc_reference_caffenwt模型上进行fine-tune,对最后一层设置较大的学习速率,结果取得了93%的正确率;在这基础上又在fc7层上提取了每张图片的4096维特征,进行了SVM分类,取得了95%以上的分类正确率,并对结果做了可视化分析。 环境:ubuntu14.04 + caffe + python(数据划分和增强在用windows10的3.5,其余都是unbuntu下用的2.7) 程序(相关路径需要修改)/步骤: multi_divide_pic.py---多进程进行数据划分(cv2没装成功,建议用cv2,方便) multi_augmentation_pic.py---多进程数据增强 make_caffe_lmdb.py---生成caffe训练需要的数据路径文件,然后修改caffe配置文件 bvlc_reference_caffenet.caffemodel---caffe模型,在上面进行finetune(http://dl.caffe.berkeleyvision.org/?from=message&isappinstalled=1) binaryproto2npy.py---将caffe生成的均值文件转换成.npy格式 cnn_vision_caffe.py---对训练好的模型进行可视化分析 extract_features.py---获取每张图片在fc7层输出的4096维特征 svm_predict.py---使用svm对上述提取特征进行训练预测 svm_vision.py---对svm模型进行可视化分析 tsne.py---对数据进行降维可视化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值