关闭

Windows下VS2015编译caffe(CPU ONLY)

标签: Caffe CPU_ONLY
5746人阅读 评论(6) 收藏 举报
分类:

本文参照了:Windows下VS2015编译caffe,零基础。

1、环境:Windows 7VS2015 CPU ONLY 
2、准备工作,原文说 https://github.com/BVLC/caffe/tree/windows

Requirements

·       Visual Studio 2013 or 2015

·       CMake 3.4 or higher (Visual Studioand Ninja generators are supported)

·       Python 2.7 Anaconda x64 (or Miniconda).

·       CUDA 7.5 or 8.0 (optional) (use CUDA 8if using Visual Studio 2015)

·       cuDNN v5 (optional)

·       We assume that cmake.exe and python.exe are on your PATH

 

(1)已经安装VS2015

(2)已经安装CMake

(3)安装Python 2.7Anaconda x64,后来发现后面引用都是Miniconda,所以又安装了Miniconda2

(4)CUDA 无GPU 没有安装,cuDNN没有安装

3、其他软件安装,为了可以生成VS2015项目文件需要安装其他软件

(1)  安装pip (参见windows下面安装Python和pip终极教程)

(2)  安装six : pip install six

(3)  安装yaml: pip install pyyaml

(4)  安装numpy: pip install numpy

4、下载依赖库

原文是通过
python scripts\download_prebuilt_dependencies.py --msvc_version=v140
但是由于网络太慢,可以直接下载。地址链接:https://github.com/willyd/caffe-builder/releases/download/v1.0.1/libraries_v140_x64_py27_1.0.1.tar.bz2
下完依赖包,然后在caffe目录下,新建一个名为“build”的文件夹,然后再把我们下好的依赖包解压到build文件夹里面。解压后的文件在build\libraries

5、编辑build_win.cmd(重要

编译caffe所需的VS2015项目文件是通过cmd 批文件生成(build_win.cmd),在生成之前需要根据cpu only编辑一下。

build_win.cmd 是文本文件,可以直接用editplus或者word直接打开。

(1)51行

:: Change to 1 to build caffewithout CUDA support
if NOT DEFINED CPU_ONLY setCPU_ONLY=0


修改为CPU_ONLY=1

(第一次我没有修改这里,而是在vs项目文件中修改CPU_ONLY=1也可以)

(2)删除124-131(因为已经手工下载)

:: Download dependencies fromVS x64
echo INFO: Downloadingdependencies
"%PYTHON_EXE%""%~dp0\download_prebuilt_dependencies.py" --msvc_versionv%MSVC_VERSION%0
 
if ERRORLEVEL 1 (
  echo ERROR: Downloading dependencies failed
  exit /b 1
)


(3)134-137 执行prependpath.bat(此文件在下载的依赖库中libraries_v140_x64_py27_1.0.1.tar.bz2) 批处理文件,一定需要和你解压缩位置一致。

:: Add the dependencies tothe PATH
if EXIST"%cd%\libraries\prependpath.bat" (
    call"%cd%\libraries\prependpath.bat"
)


6、生成VS2015项目文件

打开命令窗口执行

C:\Projects\caffe\build\build_win.cmd

生成时间有点长,等待cmake把vs2015的项目给build出来。

build完之后,在build的目录下就会出现一个caffe.sln工程文件。然后就可以用VS2015打开


7、打开修改Caffe.sln


项目配置属性->C/C++->预处理器->预处理器定义:

CPU_ONLY=1

 

8、编译

编译后的文件caffe-d.exe在tools\debug\ (或者release)

我编译用的DLL方式,所以需要将一些dll复制到caffe-d.exe所在目录,需要复制的是

..build\libraries\bin和..\build\libraries\x64\vc14\bin


如果不复制会提示找不到dll文件

没有研究是否可以用其他方式。

9、测试caffe-d.exe (参见用vs2013(cpu-only)调试caffe的mnist

下载MNIST数据库​http://pan.baidu.com/s/1o7YrhKe,解压缩后将mnist-test-leveldb与mnist-train-leveldb文件夹放到\examples\mnist下

修改lenet_train_test.prototxt文件:

//需要修改四处地方,如下红色部分标注
name: "LeNet"
layer {
  name: "mnist"
  type: "Data"
  top: "data"
  top: "label"
  include {
    phase: TRAIN
  }
  transform_param {
    scale: 0.00390625
  }
  data_param {
    source: "....省略/examples/mnist/mnist-train-leveldb" //写上你的绝对路径
    batch_size: 64
    backend: LEVELDB //格式改成LEVELDB
  }
}
layer {
  name: "mnist"
  type: "Data"
  top: "data"
  top: "label"
  include {
    phase: TEST
  }
  transform_param {
    scale: 0.00390625
  }
  data_param {
    source: "....省略/examples/mnist/mnist-test-leveldb" //写上你的绝对路径
    batch_size: 100
    backend: LEVELDB  //格式改成LEVELDB
  }
}

 

修改lenet_solver.prototxt文件:


net: "....省略/examples/mnist/lenet_train_test.prototxt"  //绝对路径
 
snapshot_prefix: "....省略/examples/mnist/lenet" //绝对路径
 
solver_mode: CPU //CPU模式


 

 

编写批处理文件run.bat内容如下:

D:\Projects\caffe\scripts\build\tools\Debug\caffe-d.exe  train--solver=D:\Projects\caffe\examples\mnist\lenet_solver.prototxt
 
Pause
 


上面替换为你的文件绝对路径就可以

​双击run.bat程序能够运行,并且之后也不会报错,那么恭喜你,Caffe-Windows配置成功了。

 

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:17051次
    • 积分:292
    • 等级:
    • 排名:千里之外
    • 原创:9篇
    • 转载:3篇
    • 译文:0篇
    • 评论:11条
    文章分类
    最新评论