windows 10 下 Caffe + Matlab 部署

在 windows 10 下部署 Caffe 花了很多时间才调通,记录下 key 节点以便后续查询:

一、安装软件:

1、安装 Microsoft Virtual Studio 2013 / Matlab 2015a / CUDA 7.5:

需要注意的是, VS2013 需要先安装,以便于 Matlab 识别 VS路径,CUDA 绑定内容;总之需要 VS2013 第一个安装;

其中,VS2013 SP5 是必须的版本,据 happynear [CSDNGitHub]描述,Caffe 在 VS2012 下编译速度很慢(自测 VS2013 约半小时,i7 6700HQ/64G/970M/3G+SSD);

CUDA 测试用的 7.5 版本,其他版本不知道是否需要修改相关内容;

Matlab 测试使用的是 2015a,在前一次重置系统前是 2015b,似乎也没有异常,有欢迎留言反馈其他版本;

2、安装 cuDNN:

cuDNN 改善了 Caffe native 卷基层效率不高的弱点(参见 赵永科/卜居 先生的大作《深度学习-21天实战caffe》一书 P356 所提到的卷积网络性能对比),笔者下载的分支为 Microsoft 为 windows 所开发的分支,支持 cuDNN V3/V4,最新版本为 V5,Caffe 尚未官方(分支)支持,如要支持请参考卜居先生的指导;如果没有 nVIDIA 账号,需要注册一个账号才能下载 cuDNN(网上搜可以得到网盘等资源);

此外,建议 cuDNN 单独安装在一个目录中,独立于 CUDA,方便更换版本(删除就行);

3、安装 Direct X SDK [非必选]:

Direct X SDK 是非必须的,Caffe 的 Demo 编译时提示某个例程需要 d3d9.h 文件(不准确,后来总结时找不到具体是哪一个文件了,欢迎留言反馈),下载这个版本就好;

4、安装 Miniconda 部署 [非必选]:

为了编译 Python 版本的 Caffe,需要安装 Miniconda

二、编译 Caffe windows 分支:

Caffe 的 windows 分支有很多版本,测试使用的是 windows 版,这一版需要修改的内容较少(Happynear 版尝试了下,太复杂不适合小白),还是 Microsoft 的版本 Microsoft/caffe 比较容易,记录如下:

1、下载或 Git 源码:

地址:传送门

2、复制 .\windows\CommonSettings.props.example 文件,重命名为 .\windows\CommonSettings.props;

3、修改 cuDNN 使能选项,决定是否使用 cuDNN;

3、安装 cuDNN 时,如果没有解压 cuDNN 在 CUDA 目录里面,需要修改 cuDNN 路径;

4、修改 Matlab 路径为实际路径:

5、可以打开 Caffe.sln 并准备编译了:

windows 版需要依赖 NuGet 提供的第三方库,所以电脑能够上网,且网速良好是十分必要的(该死的长城宽带/该死的长城宽带/该死的长城宽带);

编译可能会遇到一堆错误,不要紧,一个个检查过去就好了;

其中测试时遇到的有:

提示 d3dx9.h 文件找不到 -- 安装 DirectX SDK;

提示 alt_sstream_impl.hpp 文件有问题,简单按下 Ctrl + S 保存即可;

其他还可能遇到的错误,请FQ或百度一下(留言也可以,小白我不一定能解决);

需要注意的是,如果需要运行 Matlab,需要在编译前运行 MatlabPreBuild.cmd,编译后运行 MatlabPostBuild.cmd;

解决了必然存在的编译错误,就愉快地生成了 windows 版的全部文件;

三、跑 Matlab 版的测试:

1、下载基本数据:

可以在 GitHub 上下载需要的 bvlc_reference_caffenet.caffemodel 文件,或者寻找其他资源如网盘;下载完成后解压至 .\models\bvlc_reference_caffenet 目录;

2、准备环境变量:

添加编译出来的 .\Build\x64\Release 文件夹到环境变量的 path 中,如果运行不成功记得重启系统再试(很诡异,测试时重启才看到环境变量生效);

3、启动 Matlab,指向 .\matlab\demo 目录;

添加路径 .\Build\x64\Release\matcaffe 到 Matlab Path 中,然后运行如下命令:

im = imread(‘../../examples/images/cat.jpg‘);
scores = classification_demo(im, 1);
[score, class] = max(scores);

得到输出:

Elapsed time is 0.073357 seconds.
Elapsed time is 0.153671 seconds.
Cleared 0 solvers and 1 stand-alone nets

可以看出,得到了最大可能的标签为 282,0.2985.

运行如下代码可以看到更多的分类结果细节:

figure;plot(scores);
axis([0, 999, -0.1, 0.5]);
grid on

如图:

经过艰难尝试,Caffe 的 windows 版和 Faster-RCNN 先后攻克,标记一下解决过程,以备后续查找。

此外,更常见的错误是 “Invalid MEX-file ‘……\caffe.mexw64‘: 找不到指定的模块”,这个错误需要分两步解决,第一步是添加环境变量,目录为 .\Build\x64\Release;第二步是将 matcaffe 加入 matlab 的目录中(可能非必须,不加也成功过);

修改系统环境变量时,测试失败,但重启就可以,所以加了变量还不行建议重启系统试试;如果一直不行,那么将 .\Build\x64\Release 下生成的全部文件都复制到 .\matlab\+caffe\private 下,重启 Matlab 重试,应该可以解决。

时间: 2024-07-30 13:48:37

windows 10 下 Caffe + Matlab 部署的相关文章

基于TDengine-ver-1.6.4.4在windows 10下cmake+msys2编译(windows cgo 使用)

目录 基于TDengine-ver-1.6.4.4在windows 10下cmake+msys2编译(windows cgo 使用) 背景 下载地址 仓库地址 安装部署 msys2 安装 配置环境变量 安装cmake: 下载 TDengine 修改说明 CMakeLists.txt src/client/CMakeLists.txt deps/iconv/iconv.c os/windows/inc/os.h src/os/windows/src/twindows.c src/inc/taos.

Windows 10下用VirtualBox安装CentOS 6.7

需要准备: 1)VirtualBox-5.0.4-102546-Win.exe 下载地址:https://www.virtualbox.org/wiki/Download_Old_Builds_5_0 2)CentOS-6.7-x86_64-minimal.iso 或 CentOS-6.7-x86_64-bin-DVD1.iso 下载地址:http://mirrors.sina.cn/centos/6.7/isos/x86_64/ 自行安装VirtualBox-5.0.4-102546-Win.

解决Windows 10下Wireshark运行问题

解决Windows 10下Wireshark运行问题 在Windows 10下,安装Wireshark时候,提示WinPcap不被系统系统支持.这是由于最新版的WinPcap 4.1.3只支持到Windows 8.如果在Windows 10下安装,就会提示不兼容.这个问题有两种解决办法. 第一种办法是,忽略警告,继续安装WinPcap.运行的时候,以兼容模式运行WinPcap. 第二种办法是,安装Win10Pcap.这是WinPcap项目的一个分支软件.它支持Windows 7/8/10.用户可

在windows 10下使用docker

准备工作 Windows 10下的Docker是依赖于Hyper-v的,首先我们需要启用它:控制面板 -> 程序 -> 启用或关闭Windows功能 -> 选中Hyper-V 安装Docker Win10可以直接安装Docker for windows,注册一个docker账号即可安装,安装完成后会自动启动,在任务栏中就可以看到Docker小鲸鱼的图标. 基本参数设置 右键点击小鲸鱼图标,即可进行各项基本设置.Win10版的docker大部分的功能可以直接通过图形界面完成,用起来要方便不

Windows 10下Xilinx ISE需要注意的事项。

一是安装.可以在Windows 10下安装Xilinx ISE 14.7. 详见:https://www.eevblog.com/forum/xilinx/guide-getting-xilinx-ise-to-work-with-windows-8-64-bit/?action=printpage 二是运行.有的安装方法在Windows 64位下使用ISE 32 位.在最后下载到器件时会报错.因此,需要运行和操作系统一致的ISE版本下载. 详见:https://www.xilinx.com/s

Windows 10下mysql 64位 安装

Windows 10下mysql 64位 安装 下载地址(不要下载debug&test版本)下载完解压 管理员身份打开cmd cd 进入mysql的bin目录下 初始化:mysqld --initialize --user=root --console 生成初始化密码 83TM28<hnf.h 安装MySQL:mysqld -install 启动MySQL:net start mysql 登录:mysql -u root -p(初次进入使用初始密码登录) 修改密码:ALTER USER 'r

Windows 10下搭建以太坊私有链环境

通过网上的资料,结合自己的搭建的eth环境,希望能对大家搭建区块链环境有所帮助了解.下面开始进入准备. 本次是windows环境下的私有链环境搭建,所以需要做以下准备: 1.win10系统(家庭版),64位 2.以太坊钱包Ethereum-Wallet-win64-0-10-0(我用的版本0.10.0) 3.以太坊geth客户端(我用的是1.4.11版) 1.1 安装geth Windows要求必须是64位系统,从官方网站下载编译好的win64客户端,下载解压后只有一个Geth.exe,运行安装

Windows 10下通过蓝牙连接iPhone个人热点进行共享上网

出处:qiuyi21.cnblogs.com 1.iPhone开启个人热点 在iPhone中打开蓝牙,然后进入“个人热点”并打开开关,如果提示热点发射方式请选择蓝牙那项,然后停留在“个人热点”界面并且不要锁屏. 2.带蓝牙的电脑上设置 在Windows 10任务栏右下角点击“通知”按钮,然后点击“All settings”(所有设置)打开系统设置,如下图所示: 图1 在设置界面点击“设备”->“蓝牙”,把蓝牙和iPhone配对,iPhone和电脑都要“确定”配对,配对成功后电脑会显示已连接. 同

配置环境是程序员的第一步 -- Windows 10 下 MySQL 安装

MySQL 作为最典型的关系型数据库管理系统,由于其体积小.速度快.总体拥有成本低,尤其是其开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库.MySQL 社区版的功能也足够我们的日常使用.MySQL 的安装过程不是很难,但是有几个点还是要需要注意的.下面,我将以 Windows 10 为例,讲一下 MySQL 社区版的安装. 首先,我们进入 MySQL 官网,下载 MySQL 社区版.https://dev.mysql.com/downloads/mysql/ 这里,我们