一、安装(可见大神windows下编译Matconvnet的方法(CPU和GPU))

1.(本人)安装matlab2015b、Visual Studio 2015

2.官网Home - MatConvNet下载matconvnet工具包,我的名字是matconvnet-1.0-beta25,然后解压文件到 matconvnet-1.0-beta25中, 然后按照官网安装需要的gcc,CUDA等

3.CUDA + cudnn(这两个也可以没有,CPU only)

4.编译安装

编译前,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_conv,vl_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、VS2015,cuda默认路径,注意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

第七步:找到cnn_cifar后,然后修改opts.gpus。更改选项,opts.train.gpus= [1]; 表示用GPU,[ ] 表示用CPU,千万别[0]

c++ 编译添加dll_matconvnet安装、编译、配置相关推荐

  1. AndroidStudio_Android使用Gradle来管理依赖jar包_以及编译_Gradle的安装_配置_更新依赖方法---Android原生开发工作笔记221

    之前基础部分已经说过了,但是实际用起来,还会手生一些 重要的写在前面吧,就可以实现更新依赖 在Android studio 中 Terminal 中 gradlew build --refresh-d ...

  2. Qt——用在ARM板上的Mplayer(1.3.0,1.0rc4)安装编译步骤!还有,Mplayer背景抖动闪烁问题解答,终于来了!

    注意:若转载,请贴上链接"https://blog.csdn.net/qq_41042595/article/details/112308184",如若发现抄袭或未标明来源现象,都 ...

  3. CentOS 安装 SS5 配置启动

    使用开源的SS5( Socks Server 5 ) 官网:http://ss5.sourceforge.net/ (点击左侧的Software在右侧的Server处进入下载地址) CentOs版本: ...

  4. php编译安装与配置

    [html] view plain copy php编译安装与配置 =========================================== 官网:http://php.net/ 官网下 ...

  5. doxygen生成html文件,doxygen 的安装、配置、编译及使用(从源代码到文档)

    doxygen 的安装.配置.编译及使用(从源代码到文档) 1. 什么是 doxygen 下面是 doxygen 主页上的一段说明文字 Source code documentation genera ...

  6. Linux 下编译、安装、配置 QT

    打算做嵌入式图像处理,计划方案嵌入式Linux+OpenCV+QT,昨天简单入门OpenCV今天看看QT,QT就先弄Linux下面的,回家之前争取把基本的摸通,然后能在板子上跑起来. 软件环境 Lin ...

  7. nginx php 源码安装,Nginx和php安装及配置一之编译安装nginx-1.8.0

    本篇文章给大家分享的内容是关于Nginx和php安装及配置一之编译安装nginx-1.8.0 ,有着一定的参考价值,有需要的朋友可以参考一下 一.编译安装nginx-1.8.0 1.创建放置安装包的目 ...

  8. c++ 编译添加dll_使用MinGW编译OpenCV4源码与配置使用演示

    点击上方蓝字关注我们 微信公众号:OpenCV学堂 关注获取更多计算机视觉与深度学习知识 QT在Windows上安装好之后,常规会两种编译器选择分别是: -VS2015/2017/2019....-m ...

  9. Ubuntu18.04安装OpenCV4.3.0和环境配置(支持编译CUDA并安装配置python-opencv)

    Ubuntu18.04安装OpenCV4.3.0和环境配置 下载源文件 安装依赖 编译安装 环境配置 动态库配置 配置OpenCV的`PKG-CONFIG`环境 Python-OpenCV环境[如果安 ...

最新文章

  1. OpenAI机械手单手轻松解魔方,背靠强化学习+新技术ADR
  2. async python两个_【Python】python中实现多进程与多线程
  3. 简单理解session
  4. Qt / QPainter、QPen、QBrush 如何理解
  5. VirtualBox中的Linux读取Windows共享目录
  6. 图像的全局特征--HOG特征、DPM特征
  7. flock lock ex php,php – flock有可能用LOCK_EX返回false吗?
  8. 汉游天下公司的一些感悟
  9. 防止U盘中病毒的小技巧
  10. Ubuntu18.04 下搭建Hyperledger Fabric 1.0.0环境
  11. java最终类不能派生子类_最终类不能派生子类,最终方法不能被重写 (2.0分)_学小易找答案...
  12. Unity发布Android时需要的Android SDK/NDK的下载
  13. 3dmax软件怎么贴图
  14. AD快捷键无法使用的解决方法
  15. 阿里云短信接口配置教程
  16. 在Excel表中进行度分秒单位转换
  17. 计算机算法可以用自然语言来描述吗,算法可以用自然语言描述吗
  18. 按分数段统计学生人数python_用Excel统计各分数段学生数
  19. 阅读 | 《娱乐至死》笔记 | Part1
  20. 深入讲解Android!最全的BAT大厂面试题整理,威力加强版

热门文章

  1. 《Adobe Illustrator CS4中文版经典教程》目录—导读
  2. 搭建docker私有仓库
  3. Android Studio 怎样打JAR包
  4. Juniper SRX防火墙系统会话链接的清除
  5. 《快速软件开发——有效控制与完成进度计划》
  6. linux学习文档-1
  7. nyoj-716 River Crossing(动态规划)
  8. 电脑装不装网卡有什么区别
  9. 网络流最大流Edmonds-Karp算法(模板)
  10. C++ code:数值计算之矩形法求解积分问题