网站提示宏,自动收录,网站 参数设置,网站建设推广专家一、安装#xff08;可见大神windows下编译Matconvnet的方法(CPU和GPU)#xff09;1.#xff08;本人#xff09;安装matlab2015b、Visual Studio 20152.官网Home - MatConvNet下载matconvnet工具包#xff0c;我的名字是matconvnet-1.0-beta25#xff0c;然后解压文件到…一、安装可见大神windows下编译Matconvnet的方法(CPU和GPU)1.本人安装matlab2015b、Visual Studio 20152.官网Home - MatConvNet下载matconvnet工具包我的名字是matconvnet-1.0-beta25然后解压文件到 matconvnet-1.0-beta25中, 然后按照官网安装需要的gccCUDA等3.CUDA cudnn这两个也可以没有CPU only4.编译安装编译前Matlab应该已经绑定C编译器了。否则会出错。Windows下安装Visual Studio即可Linux下有自带的GCC先进行CPU版本的编译。在Matlab中打开Matconvnet工具包使得当前目录窗口显示Matconvnet文件夹里面的子目录。在Matlab中输入mex -setup绑定C编译器输入mex -setup C打开Matlab将工作路径切换到…/matconvnet-1.0-beta25在Matlab中执行命令 addpath matlab。添加搜索路径。在Matlab中执行命令vl_compilenn。编译工具箱。在Matlab中执行命令vl_setupnn。设置工具箱。至此工具箱已经安装完毕。 测试在matlab中执行命令vl_testnn。由此完成CPU 下matconvnet的编译。编译完之后会多了一个mex文件夹在matlab文件夹下面。这里的mex文件夹下就是以后要调用的程序有编译完之后应该有除了cudnn64_4.dll外的mexw64文件可以看出这些文件主要是vl_convvl_imreadjpeg等。这些文件是由cuda C写的并不是由MATLAB语言写的格式是 xx.cu。然后通过mex将这些.cu文件编译成可以由MATLAB调用的函数也就是说mexw64就相当于MATLAB的函数文件xx.m一样了。你可以看看MATLAB下面的vl_nnconv.m可以看到文件里面全部都是注释这样的话调用时咋运行的啊。哈哈原来要先编译编译好了多了mex文件调用时是调用mexw64文件啊。这里的cudnn64_4.dll是后面用gpu编译时用到的。matconvnet配置GPU第一步需要安装cuda、VS2015cuda默认路径注意cuda版本和GPU要匹配cuda下载地址https://developer.nvidia.com/cuda-downloads第二步下载cudnn在matconvnet文件夹下建一个local文件夹然后把cudnn放进去 我改了文件名称为cudnn-rc4第三步 建一个local文件夹然后把cudnn-rc4放进去再复制到matconvnet目录下。第四步把bin下的cudnn64_4.dll再复制到mex的文件夹下。这一点很重要否则vl_compilenn即使编译成功运行时却会出现Invalid 的vl_nnconv.mexw64可是你一看明明有这个文件啊并且cpu编译时这个文件也是可以用的为啥现在就不能了就是你没有做第二步。第五步先看看vl_compilenn写了啥打开vl_compilenn.m运行等待编译结束在vl_compilenn中已经对opts的enableGpu等属性进行了初始化。 这是稍微修改后的这里改不改我这样的都无所谓的这是因为你看看下面有vl_argparse(opts,varargin)这个就是把外面的传入的参数再对opts进行赋值。第六步复制以下code到matlab命令窗更改相应路径和文件夹名称运行等待编译结束。vl_compilenn(enableGpu,true,cudaRoot,C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v7.5,cudaMethod ,nvcc,enableCudnn,true,cudnnRoot,local/cudnn-rc4)第七步找到cnn_cifar后然后修改opts.gpus。更改选项opts.train.gpus [1]; 表示用GPU[ ] 表示用CPU千万别[0]