Win10+vs2013配置caffe CPU/GPU(CUDA9.0)

安装环境:

Windows10

Visual Studio 2013

caffe:https://github.com/Microsoft/caffe

若安装编译GPU,首先检查显卡是否支持:https://developer.nvidia.com/cuda-gpus

再安装对应版本的CUDA和cudnn。

https://developer.nvidia.com/cuda-toolkit-archive

成功编译运行mnist例子:

 

步骤1.GPU配置(简略),若只编译CPU则跳到下一步

我安装的是CUDA9.0,对应cudnn7

CUDA安装好,将cudnn解压到.\\NVIDIA GPU Computing Toolkit\CUDA\v9.0\或者自己另外建立路径,但需要对其中的.dll配置环境变量。

步骤2.获取caffe包

caffe:https://github.com/Microsoft/caffe

可采用git命令复制工程到本地对应目录:

git clone https://github.com/Microsoft/caffe.git

步骤3.配置文件修改

配置文件在caffe路径下:./caffe/windows/CommonSettings.props

若存在libcaffe加载失败,原因是没有找到CUDA 9.0.props,路径在C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\extras\visual_studio_integration\MSBuildExensions下所有文件复制到路径C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations后,重新加载libcaffe即可

说明:

(1)若采用CPU,则CPU写true,UseCuDNN写false

(2)若采用GPU,则CPU写false,UseCuDNN写true

将解压cudnn的路径写入CuDnnPath , 确定是否需要修改对应库路径(lib)和头文件路径(Include)

(3)若需要生成Python的接口,PythonSupport写true,否则写false

 写入对应python库和头文件路径

若报错找不到python27.lib或者python35.lib,则把两个路径都写入,如图

(4)若需要生成Matlab的接口,MatlabSupport写true,否则写false

若报错找不到gpu\mxGPUArray.h,则写入对应的$(MatlabDIr)\toolbox\distcomp\gpu\extern\include

步骤4.编译

(1)先编译libcaffe

 

Treat Warnings As Errors:No

然后编译该项目,会报错error:too few arguments in function call

双击查看报错函数,在后面添加CUDNN_DATA_FLOAT或者CUDNN_DATA_DOUBLE

再次编译即可生成libcaffe.lib

步骤5.编译所有

把所有的项目都编译即可。

步骤6.例子mnist

下载mnist数据到caffe/data/mnist/

解压

在caffe/example路径下创建create_mnist.bat, 写入如下:

..\..\Build\x64\Release\convert_mnist_data.exe  ..\..\data\mnist\train-images.idx3-ubyte ..\..\data\mnist\train-labels.idx1-ubyte ..\..\examples\mnist\mnist_train_lmdb  
..\..\Build\x64\Release\convert_mnist_data.exe  ..\..\data\mnist\t10k-images.idx3-ubyte  ..\..\data\mnist\t10k-labels.idx1-ubyte ..\..\examples\mnist\mnist_test_lmdb 

即可生成lmdb数据格式

在caffe/路径下创建train_lenet.bat,写入

Build\x64\Release\caffe.exe train --solver=examples/mnist/lenet_solver.prototxt
pause

文件说明:

example/mnist/lenet_solver.prototxt:求解

example/mnist/lenet_train_test.prototxt:定义训练和测试网络结构,配置输入数据路径

运行train_lenet.bat即可。

在pycaffe下可以利用draw_net.py画出网络结构图:

命令行:python draw_net.py lenet.prototxt image.jpg

 

对应的python依赖包如下:

Cython>=0.19.2
numpy>=1.7.1
scipy>=0.13.2
scikit-image>=0.9.3
matplotlib>=1.3.1
ipython>=3.0.0
h5py>=2.2.0
leveldb>=0.191
networkx>=1.8.1
nose>=1.3.0
pandas>=0.12.0
python-dateutil>=1.4,<2
protobuf>=2.5.0
python-gflags>=2.0
pyyaml>=3.10
Pillow>=2.3.0
six>=1.1.0

 

祝愉快!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值