Window环境MatConvNet安装

引言


MatConvNet是实现深度学习中卷积神经网络(CNN)的MATLAB工具箱,拥有许多已经训练好的卷积神经网络实例及优化方法,可以用于图像分类、分割、人脸识别、文本检测等多个方面,matconvnet的运行版本有两种,cpu和gpu版

环境


matlab R2016b
visualstudio 2015(VC14.0)
CUDA 8.0
cudnn 5.0
MatConvNet 1.0-beta25
windows (版本不限)
凡是和CUDA、 VC相关安装,都是有严格版本限制,版本不合适,立即报错
CUDA 8.0,cudnn 5.0 安装,请参考本人博客的 4.2.2节,点击此处

1. 软件下载


官网 MatConvNet 下载地址,点击此处
百度网盘 MatConvNet 下载地址,点击此处
提取码:azrw
MatConvNet
需要二次解压,解压文件夹可以放在任意位置,凭个人喜好

2. 试用 MatConvNet


解压文件,目录如图示:

Window环境MatConvNet安装_第1张图片
在matlab中打开 MatConvNet 1.0-beta25,如图示:
Window环境MatConvNet安装_第2张图片

  1. 运行vggfaces里的cnn_vgg_faces.m文件
  2. 直接运行后,Matlab会自动下载相关数据集,位置在data下面的models里面
  3. 下载完成后,再次运行cnn_vgg_faces.m文件就可得到下面的结果:
    Window环境MatConvNet安装_第3张图片Window环境MatConvNet安装_第4张图片
  4. 表明相关下载和路径配置已经完成

3. 配置 MatConvNet


配置的目的是: 将 MatConvNet 和 自己写的程序融合,使用
框架应为
Window环境MatConvNet安装_第5张图片Window环境MatConvNet安装_第6张图片

3.1 CPU版编译


3.1.1

在 matlab 命令行输入

% 这个命令是来寻找vs编译器的
mex -setup 

%设置matlab的C++编译器,根据提示信息, 选择VS C++
mex -setup C++

结果如图
Window环境MatConvNet安装_第7张图片
使用 mex -setup 命令的原因是,MatConvNet 文件中的matlab文件夹下的src文件里的.cu文件,所以需要链接c++编译器
Window环境MatConvNet安装_第8张图片

3.1.2

在 matlab 命令行 输入

% cd 到解压 matconvnet 路径
cd E:\wj-lab\matconvnet-1.0-beta25.tar.gz\matconvnet-1.0-beta25\matconvnet-1.0-beta25 

% 将matlab工作路径切换到matconvnet所在文件夹,添加搜索路径
addpath matlab

% 运行程序(该程序具体位置在matlab下),生成mex文件夹
vl_compilenn

结果如图
Window环境MatConvNet安装_第9张图片Window环境MatConvNet安装_第10张图片

3.1.3 添加 cudnn64_5.dll

百度网盘,点击此处
提取码:ssvj
Window环境MatConvNet安装_第11张图片

3.1.4 CPU版本已经编译完成,测试

vl_testnn

结果如图:
Window环境MatConvNet安装_第12张图片

3.2 GPU版编译


注意:一定要先编译CPU版本,再编译GPU版本,若直接编译GPU版本 会报错

3.2.1 添加环境变量

打开环境变量
Window环境MatConvNet安装_第13张图片如果是默认的CUDA安装路径,添加的路径分别是下面这样的:

变量名:CUDA_PATH
路径:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0

变量名:CUDA_PATH_V8_0
路径:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0

变量名:CUDA_SDK_PATH
路径:C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0

变量名:CUDA_LIB_PATH
路径:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64

变量名:CUDA_BIN_PATH
路径:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin

变量名:CUDA_SDK_BIN_PATH
路径:C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0\bin\win64

变量名:CUDA_SDK_LIB_PATH
路径:C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0\common\lib\x64 

变量名:MW_NVCC_PATH
路径:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin\nvcc.exe

具体参见你自己的环境变量,有无缺失以上路径,缺失的需要添加。
Window环境MatConvNet安装_第14张图片

3.2.2

此步骤具体看个人
可能需要改,编译函数 function vl_compilenn.m
Window环境MatConvNet安装_第15张图片
Window环境MatConvNet安装_第16张图片
Window环境MatConvNet安装_第17张图片

  1. 将新的CUDA版本号**‘8.0’添加到程序**
  2. opts.enableGPU =true
  3. opts.enableCudnn = true;
  4. opts.cudaMethod = ‘nvcc’
  5. opts.cudaRoot = ‘你安装的cuda路径’
  6. opts.cudnnRoot = ‘local/cudnn’
  7. opts.gpuDevice =1

3.2.3

在 matlab 命令行输入

% cd 到解压 matconvnet 路径
cd E:\wj-lab\matconvnet-1.0-beta25.tar.gz\matconvnet-1.0-beta25\matconvnet-1.0-beta25 

% 将matlab工作路径切换到matconvnet所在文件夹,添加搜索路径
addpath matlab

% 运行程序,该命令使得无需修改 3.2.2节 中参数,是直接在matlab命令行输入参数命令
vl_compilenn('enableGpu', true, ...  
                'cudaRoot', 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0', ...  % CUDA的安装路径  
                'cudaMethod', 'nvcc', 'enableCudnn', true, ...  
                'cudnnRoot', 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0'); % cuDNN的路径 

% 测试GPU版编译是否成功
vl_testnn('gpu', true)

Window环境MatConvNet安装_第18张图片
Window环境MatConvNet安装_第19张图片
Window环境MatConvNet安装_第20张图片
Window环境MatConvNet安装_第21张图片

你可能感兴趣的:(环境配置,源码)