参照
caffe/examples/feature_extraction/
这个目录下的readme.md文件开始进行。
首选要选择运行的数据
mkdir examples/_temp
然后将/examples/images下的图片制成列表并写到temp.txt中
find `pwd`/examples/images -type f -exec echo {} \; > examples/_temp/temp.txt
说是要使用’ImageDataLayer‘来预测,所以在每行后面都会添加一个 0
sed "s/$/ 0/" examples/_temp/temp.txt > examples/_temp/file_list.txt
在实际中,要将图像的均值从数据集中减掉,这样效果会好很多。我们就复制并修改了网络的定义。我们将会使用’ImageDataLayer‘,这个东西会加载并且重定义图片的大小。
cp examples/feature_extraction/imagenet_val.prototxt examples/_temp
所有东西都准备好了,所以要运行了。
./build/tools/extract_features models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel examples/_temp/imagenet_val.prototxt fc7 examples/_temp/features 10 lmdb
讲一讲里面的参数:fc7是你提取的特征点,代表的是参考模型的最高层特征。最后一个参数(10)是min-batches的数量。
特征存储在levelDB’examples/_temp/feature’下,可以给其他代码使用。
说下自己的感受,虽然不是很懂这些步骤,但是还有很多没学,等学完之后定会恍然大悟。