本文转自以为技术大牛的blog,原文地址:http://nbviewer.ipython.org/github/ouxinyu/ouxinyu.github.io/blob/master/MyCodes/caffe-master/detection.ipynb
1.下载训练好的R-CNN模型,也可以自己使用Caffe训练一个自己的模型。预训练模型基于Imagenet数据集,并在ILSVRC13上进行微调,输出200个检测分类。
下载方法:~/caffe-master$ ./scripts/download_model_binary.py models/bvlc_reference_rcnn_ilsvrc13
2.下载Selective Search,并运行matlab编译相关mex文件。
(1) 下载方法:https://github.com/sergeyk/selective_search_ijcv_with_python ,下载后解压,改名,并复制到 ~/caffe-master/python/selective_search_ijcv_with_python/,注意此路径只是为了方便学习,并非强制性要求,如果这个路径改了,那么接下来很多地方的路径也是需要改的。
(2) 编译方法:启动matlab客户端,并运行~/caffe-master/python/selective_search_ijcv_with_python/demo.m ,无报错信息运行后关闭matlab即可。
3.执行python/detect.py报错时,可参考如下修改方法:
(1) 报错信息:OSError: [Errno 2] No such file or directory
修改文件:~/caffe-master/python/selective_search_ijcv_with_python/selective_search.py
修改前:mc = "matlab -nojvm -r \"try; {}; catch; exit; end; exit\"".format(command)
修改后:mc = "/usr/local/MATLAB/R2014b/bin/matlab -nojvm -r \"try; {}; catch; exit; end; exit\"".format(command)
(2) 报错信息:ValueError: 'axis' entry 2 is out of bounds (-2, 2)
修改文件:~/caffe-master/python/caffe/detector.py
修改前:predictions = out[self.outputs[0]].squeeze(axis=(2, 3))
修改后:predictions = out[self.outputs[0]].squeeze()
经过以上两个问题的修改之后,就可以安装caffe官网的步骤愉快地玩耍了!