作为caffe初学者,特征提取python官方给的教程比较好用;但是关于c++API的使用,找了一些资料,说的并不是特征完善;项目要求,得到ImageNet图像在CaffeNet网络结构中第fc7层的特征。
环境:window7+caffe
语言:C++
目的:测试图像某层特征,并以保存
可以直接执行下面的命令,(注意官方给的案例是保存为leveldb 格式,数据库格式不够直观,解析也比较麻烦,直接保存为文本形式多好呀~另外是7个参数哦,直接弄清楚对应的参数信息)
extract_features.exe D:/caffe-windows/examples/_temp/caffe_reference_imagenet_model D:/caffe-windows/examples/_temp/imagenet_val.prototxt fc7
D:/caffe-windows/examples/_temp/features_fc7 10 leveldb GPU
然后通过解决方案中的extract_features工程源码extract_features.cpp进行了改进,代码更改区域块如下
ofstream *fout = new ofstream[num_features];
for (size_t i = 0; i < num_features; ++i) {
LOG(INFO)<< "Opening dataset " << dataset_names[i];
//boost