【准备工作】
前面几节介绍了win10系统下caffe-master的配置方法以及cifar10数据集的训练方法,并简要介绍了Matlab接口如何配置。想要更为形象的了解caffe框架下诸多网络模型的具体内涵,需要借助python接口的caffe.draw绘制网络图,因此,本节介绍caffe的Python接口配置方法。
安装python使用anaconda版本,anaconda里面集成了很多关于python科学计算的第三方库,主要是安装方便,而python是一个编译器,如果不使用anaconda,那么安装起来会比较痛苦,各个库之间的依赖性就很难连接的很好。有趣的是,python的英文翻译是蟒蛇,而anaconda是巨蟒、水蟒。
anaconda的下载地址:https://www.continuum.io/downloads,注意下载2.7版本
按照网上的说法,测试是否安装成功,只需在命令提示符下输入jupyter notebook,然后弹出一个网页即ok
【编译pycaffe】
第一步还是修改CommonSettings.props文件两个地方:
<PythonSupport>true</PythonSupport>
<PythonDir>D:\Anaconda2\</PythonDir>
然后在release下编译pycaffe,前面路子走的顺的话,这部分应该没什么报错的地方,编译完成后在D:\caffe-master\caffe-master\Build\x64\Release路径下会出现一个和matcaffe并排的pycaffe。
然后将生成的pycaffe文件夹下的caffe文件夹拷贝至D:\Anaconda2\Lib\site-packages下
【安装protobuf】
在dos下直接输入:
pip install protobuf
然后安装成功,出现以下界面:(不安装protobuf则在下一步import caffe时报错)
【import caffe 测试】
在python界面输入import caffe,运行之,不报错则说明接口配置成功!这个比matlab的配置过程要简单一些。
【安装draw_net所需的包】
使用draw_net还需要其他的几个包,包括pydot、等
1. 安装pydot:直接在dos环境下输入 pip install pydot
2. 安装graphviz:注意,此处不能直接使用pip安装,因为会报错找不到dot.exe文件,需要通过windows安装包来安装:
访问http://www.graphviz.org/Download_windows.PHP,下载graphviz-2.38.msi进行安装
安装后,发现它的bin目录下有dot.exe文件,将bin目录加到系统path中即可
然后可以再用pip install graphviz安装一下
【绘制网络结构图】
cd到release\pycaffe路径下,shift+右键打开命令提示符
绘图的语法是:
python draw_net.py [--rankdir] input_netprotofile output_imagefile
其中,--rankdir = x,–rankdir=x , x 有四种选项,分别是LR, RL, TB, BT 。用来表示网络的方向,分别是从左到右,从右到左,从上到小,从下到上。默认为LR。
让我们来绘制一下lenet:
python draw_net.py --rankdir=BT D:\caffe-master\caffe-master\examples\mnist\lenet.prototxt lenet.jpg
结果如下: