环境准备:
- Vs2015
- git工具
- CMake (ver>=3.4)
- Python 2.7/3.5(推荐2.7)
- anaconda(可选)
系统路径设置
搭建caffe的py接口有两种方法:
1、caffe-master版本:
下载好解压后,进入windows文件夹
打开.sln进行生成,但是该方法貌似只支持Vs2013,否则使用Vs2015编译时出现过多的语法不兼容,需要退版本,故不推荐该方法2、Git上clone caffe的包
运行CMD,输入以下命令,获取caffe包
git clone https://github.com/BVLC/caffe.git
cd caffe
git checkout windows
至此可以确认到caffe包在命令行头所在的路径了,
接下来打开scripts文件夹,找到build_win.cmd,修改else以下代码段:
VS2015版本就用MSVC_VERSION=14
WITH_NINJA=0
这里因为显卡不支持cuda所以使用CPU运行,故CPU-Only=1
Python_Version=3
将以下这段代码复制进else里面(指定Python路径):
如果是使用3.6或更高版本,还需要修改caffe文件夹下的
WindowsDownloadPrebuiltDependencies.cmake
以vscode方式(记事本亦可)打开,插入两段代码,如图:
将35修改成36,继续修改下图,将3.5改成3.6:
回到CMD,输入
scripts\build_win.cmd
就会进入下载依赖库界面,若成功,如下图:
最后一步:使用pip安装支持caffe的各种module:
遇到的问题:
- python版本不支持3.6,修改35->36,一开始我为了解决这个问题还去配置了anaconda的py3.5环境,再通过activate py35来激活环境,似乎能进行到下载的步骤,但是最后卡在configure error上,最后按照Intel的教程成功了,链接:https://software.intel.com/zh-cn/articles/installation-and-configuration-of-bvlc-caffe-under-windows-the-caffe-learning-notes-part1
- 如若因版本问题编译失败,修改build_win.cmd后删除caffe/build下的文件,重新运行:
在python下输入import caffe测试时,如果出现诸如ImportError类型错误时,那么按照提示给出以下解决方案:
3.1.如果是numpy.core.multiarray failed to import的错误,建议查看自己的python环境,是否存在多个版本,如果同时存在2.7/3.5/3.6这几个版本,建议保留其中一到两个,并重新安装numpy模块(不关乎numpy的版本问题,可通过pip list查看py是否存在numpy):
pip uninstall numpy
pip install numpy
3.2.如果是dynamic module does not define module export function的错误,建议退版本至py2.7
- 用cmd等命令行工具运行.py文件时,务必记得要在开头加上python命令,否则会在本机上运行而不是在本环境下运行
参考教程:
1、win10+caffe+python3.6:https://blog.csdn.net/hanzy88/article/details/79183631
2、【强烈建议看这个】intel的Caffe填坑指南,从BVLC那里开始看起:https://software.intel.com/zh-cn/articles/installation-and-configuration-of-bvlc-caffe-under-windows-the-caffe-learning-notes-part1
3、依赖库的下载:https://github.com/willyd/caffe-builder/releases
4、CPU ONLY:https://blog.csdn.net/qxconverse/article/details/76376718
5、Windows7 64下搭建Caffe+python接口环境:https://www.cnblogs.com/billyzh/p/6307716.html
6、caffe搭建–caffe- win10 vs2015 编译(支持GPU)–注意在cmake的时候需要根据情况仔细修改配置:
https://www.cnblogs.com/leoking01/p/6951750.html