matlab + caffe cpu-only做深度学习测试 on windows 10
为什么会使用cpu-only呢?
很多论文的代码都是由caffe+matlab写的。
为了验证作者是否真的能达到那么好的效果。
所以不需要GPU进行训练。只需要做预测看看效果就行了。
涉及到的命令请全程使用powershell
参考文章
win7+vs2015/13+caffe+matlab+python(CPU only)配置 - 生如蚁,美如神 - CSDN博客
https://github.com/happynear/caffe-windows
cmake 安装
CMake下载地址
选择x64 .msi的文件
安装的时候记得勾选添加到环境变量,这样就不用手动添加了
matlab
安装matlab for windows
python2.7
使用的是
miniconda传送门
- 最好使用miniconda with python2.7. 这样可以省去很多麻烦的步骤。
- 没有测试python3.7能不能使用。python3.7不兼容python3.6。
- 安装的时候记得勾选add anaconda to environment path。
- 打开powershell,安装依赖
# 原文这里是使用pip安装的protobuf但是我的环境会报错。所以我继续使用conda安装protobuf
conda install --yes numpy scipy matplotlib scikit-image pip protobuf
安装visual studio 2015
为了使用它的编译器。出于简单化,我直接装了整个visual studio。而不是单纯的编译器。安装选项只选了visual c++桌面开发 和python。如果要编译pycaffe可能有需要勾选python。
# vs2015中文社区版
ed2k://|file|cn_visual_studio_community_2015_x86_dvd_6847368.iso|4013920256|EB7F6605EDE67509E218E29173AC6574|/
# vs2015 英文社区版
ed2k://|file|en_visual_studio_community_2015_x86_dvd_6847364.iso|3965825024|6A7D8489BB2877E6BB8ACB2DD187B637|/
##下载caffe源码
caffe windows分支
# 网速好的使用git clone
git clone https://github.com/BVLC/caffe.git
设置选项
- 使用编辑器 打开…\caffe-windows\scripts\build_win.cmd
- 下面就是各种选项
if DEFINED APPVEYOR (
echo Setting Appveyor defaults
if NOT DEFINED MSVC_VERSION set MSVC_VERSION=14
if NOT DEFINED WITH_NINJA set WITH_NINJA=0
if NOT DEFINED CPU_ONLY set CPU_ONLY=1
if NOT DEFINED CUDA_ARCH_NAME set CUDA_ARCH_NAME=Auto
if NOT DEFINED CMAKE_CONFIG set CMAKE_CONFIG=Release
if NOT DEFINED USE_NCCL set USE_NCCL=0
if NOT DEFINED CMAKE_BUILD_SHARED_LIBS set CMAKE_BUILD_SHARED_LIBS=0
if NOT DEFINED PYTHON_VERSION set PYTHON_VERSION=3
if NOT DEFINED BUILD_PYTHON set BUILD_PYTHON=1
if NOT DEFINED BUILD_PYTHON_LAYER set BUILD_PYTHON_LAYER=1
if NOT DEFINED BUILD_MATLAB set BUILD_MATLAB=1
if NOT DEFINED PYTHON_EXE set PYTHON_EXE=python
if NOT DEFINED RUN_TESTS set RUN_TESTS=1
if NOT DEFINED RUN_LINT set RUN_LINT=1
if NOT DEFINED RUN_INSTALL set RUN_INSTALL=1
- 建议是直接复制选项,而不是修改后面的数值。 可能直接修改并不会生效。
- 最终做法结果
set WITH_NINJA=0 #下面都是直接复制出来的,需要修改的地方
set BUILD_MATLAB=1
set CPU_ONLY=1
set USE_NCCL=0
set PYTHON_VERSION=2
set BUILD_PYTHON_LAYER=1
if DEFINED APPVEYOR (
echo Setting Appveyor defaults
if NOT DEFINED MSVC_VERSION set MSVC_VERSION=14
if NOT DEFINED WITH_NINJA set WITH_NINJA=0
................................
- 更改python 2路径
if !PYTHON_VERSION! EQU 2 (
set CONDA_ROOT=C:\Users\zoudaiyu\Miniconda2 #这里改成你的anaconda/miniconda2的主目录
)
- build_win.cmd 设置完毕
开始编译
下载第三方依赖
下载地址
libraries_v120_x64_py27_1.1.0.tar.bz2
libraries_v140_x64_py27_1.1.0.tar.bz2 我用的这一个
libraries_v140_x64_py35_1.1.0.tar.bz2
我们上面使用的是conda with python 2.7所以选择py27。使用的是visual studio2015所以选择v140,如果是vs2015以前的版本选v120。
所以我选择的是libraries_v140_x64_py27_1.1.0.tar.bz2
最后把下载的文件,不解压直接复制到
# 英文系统
C:\Users\登录用户名\.caffe\dependencies\download\libraries_v140_x64_py27_1.1.0.tar.bz2
# 中文系统
C:\用户\登录用户名\.caffe\dependencies\download\libraries_v140_x64_py27_1.1.0.tar.bz2
执行刚刚设置好的build_win.cmd
- 在文件管理器,进入caffe-windows\scripts目录
- 空白处按住shift+点鼠标右键,然后打开powershell。
- 输入build_win.cmd
- 回车运行
配置环境变量
C:\Users\自己的用户名\.caffe\dependencies\libraries_v140_x64_py27_1.1.0\libraries\bin
C:\Users\自己的用户名\.caffe\dependencies\libraries_v140_x64_py27_1.1.0\libraries\lib
C:\Users\自己的用户名\.caffe\dependencies\libraries_v140_x64_py27_1.1.0\libraries\x64\vc14\bin
编译caffe
执行完build_win.cmd后,caffe-windows\script\下产生一个caffe.sln文件。使用vs 2015打开
- 在左边caffe 的解决方案中,选中caffe目录,鼠标右键设置为 “设为启动项目”
- 点击生成caffe
- 继续在解决方案中找到matlab目录,鼠标右键设置为 “设为启动项目”
- 点击生成matlab
- pycaffe等封装,操作一样。
测试配置
请参考win7+vs2015/13+caffe+matlab+python(CPU only)配置 - 生如蚁,美如神 - CSDN博客