windows下配置caffe-matlab接口
一、环境说明
也是安装顺序。特别强调的是除VS2015以外,其他软件的安装路径都最好不要包含空格。
1、Windows 64位系统。
2、Visual Studio 2015(VS2015, 对应VC14)。
3、Matlab 2017a。Matlab的版本倒不是很重要,只要支持Matlab 2015a之后的版本都应该支持。所以如果安装了其他版本的Matlab,可以先不用安装2017a。安装完之后要把其中的bin目录和runtime\bin目录加入环境变量Path。
D:\Program Files\MATLAB\R2017a\bin
D:\Program Files\MATLAB\R2017a\runtime\win64
4、CMake 3.14。安装时要选择将CMake添加到环境变量Path,然后下面的路径就会自动添加到环境变量Path。
C:\Program Files\CMake\bin
5、Miniconda2的Python2.7版本。安装的时候记得勾选add anaconda to environment path。然后下面的路径就会自动添加到环境变量Path。安装完conda之后,记得把conda的源换成国内的源,否则下载库会特别慢。
D:\Libs\MiniConda
D:\Libs\MiniConda\Library\mingw-w64\bin
D:\Libs\MiniConda\Library\usr\bin
D:\Libs\MiniConda\Library\bin
D:\Libs\MiniConda\Scripts
安装完成后,打开命令行,输入cmake和python --version,检查cmake是否工作以及python版本是否正确。如果Python的版本不是2.7,请在环境变量中删除其他Python版本的路径。
二、编译Caffe-Windows
1、下载资源
- Caffe-Windows
打开https://github.com/BVLC/caffe/tree/windows,下载源码(可直接点击下载)。 - libraries_v140_x64_py27_1.1.0.tar.bz2
这个是caffe要依赖的库,点击下载。v140对应VS2015,x64对应系统架构,py27对应python版本。下载完成之后,打开libraries_v140_x64_py27_1.1.0.tar.bz2所在目录,按住Shift键,右键单击空白处,然后选择“在此处打开powershell窗口”,打开命令行,执行下面的命令:
cmd
md %USERPROFILE%\.caffe\dependencies\download
copy libraries_v140_x64_py27_1.1.0.tar.bz2 %USERPROFILE%\.caffe\dependencies\download
2、编辑CMakeLiss.txt
# ---[ Caffe project
project(Caffe C CXX)
# ---[Install directory: D:\Libs\Caffe
set(CMAKE_INSTALL_PREFIX "D:/Libs/Caffe")# ---[Set Matlab_DIR
set(Matlab_DIR "D:/Program Files/MATLAB/R2017a")
CMAKE_INSTALL_PREFIX 指定Caffe的安装路径,Matlab_DIR 指定Matlab的根目录。
message(FATAL_ERROR "Logic error. Need to update cmake script")
# message(FATAL_ERROR "Logic error. Need to update cmake script")
3、编辑build_win.cmd
:: Default values
if DEFINED APPVEYOR (echo Setting Appveyor defaultsif NOT DEFINED MSVC_VERSION set MSVC_VERSION=14...
:: Default values
set WITH_NINJA=0
set BUILD_MATLAB=1
set CPU_ONLY=1
set PYTHON_VERSION=2
set BUILD_PYTHON_LAYER=1
if DEFINED APPVEYOR (echo Setting Appveyor defaultsif NOT DEFINED MSVC_VERSION set MSVC_VERSION=14if NOT DEFINED WITH_NINJA set WITH_NINJA=0...
:: Set python 2.7 with conda as the default pythonif !PYTHON_VERSION! EQU 2 (set CONDA_ROOT=C:\Miniconda-x64)
:: Set python 2.7 with conda as the default pythonif !PYTHON_VERSION! EQU 2 (set CONDA_ROOT=D:\Libs\MiniConda)
if ERRORLEVEL 1 (echo ERROR: Configure failedexit /b 1
)
if ERRORLEVEL 1 (echo ERROR: Configure failedexit /b 1
)exit /b 1:: Lint
...
exit /b 1
是退出cmd的命令,添加这行的目的是观察cmake的结果。
4、执行build_win.cmd
conda install --yes pip
pip install ninja numpy scipy protobuf==3.1.0 six scikit-image pyyaml pydotplus graphviz
cmd
build_win.cmd
build_win.cmd
对,build_win.cmd就是要执行两遍,因为第一遍的安装目录不正确。输出类似为(我把需要相同的部分标记出来, #后面就是我的注释):
......
# 需要找到Matlab
-- Found Matlab: D:/Program Files/MATLAB/R2017a/extern/include (found version "9.2") found components: MAIN_PROGRAM MX_LIBRARY
-- Found Git: C:/Program Files/Git/cmd/git.exe (found version "2.19.1.windows.1")
--
-- ******************* Caffe Configuration Summary *******************
-- General:
-- Version : 1.0.0
-- Git : unknown
-- System : Windows
-- C++ compiler : C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe
-- Release CXX flags : /MD /O2 /Ob2 /DNDEBUG /DWIN32 /D_WINDOWS /W3 /GR /EHsc
-- Debug CXX flags : /MDd /Zi /Ob0 /Od /RTC1 /DWIN32 /D_WINDOWS /W3 /GR /EHsc
-- Build type : Release # Release模式
--
-- BUILD_SHARED_LIBS : 0 # 需要相同
-- BUILD_python : 1 # 需要相同
-- BUILD_matlab : 1 # 需要相同
-- BUILD_docs :
-- CPU_ONLY : 1 # 需要相同
-- USE_OPENCV : ON # 需要相同
-- USE_LEVELDB : ON # 需要相同
-- USE_LMDB : ON # 需要相同
-- USE_NCCL : 0 # 需要相同
-- ALLOW_LMDB_NOLOCK : OFF # 需要相同
--
-- Dependencies:
-- BLAS : Yes (Open) # 需要相同
-- Boost : Yes (ver. 1.61) # 需要相同
-- glog : Yes # 需要相同
-- gflags : Yes # 需要相同
-- protobuf : Yes (ver. 3.1.0) # 需要相同
-- lmdb : Yes (ver. 0.9.70) # 需要相同
-- LevelDB : Yes (ver. 1.18) # 需要相同
-- Snappy : Yes (ver. 1.1.1) # 需要相同
-- OpenCV : Yes (ver. 3.1.0) # 需要相同
-- CUDA : No # 需要相同
--
-- Python: # 这里需要找到Python
-- Interpreter : D:/Libs/MiniConda/python.exe (ver. 2.7.15)
-- Libraries : D:/Libs/MiniConda/libs/python27.lib (ver 2.7.15)
-- NumPy : D:/Libs/MiniConda/lib/site-packages/numpy/core/include (ver 1.13.1)
--
-- Matlab:
-- Matlab : Yes (, # 需要找到Matlab
-- Octave : No
--
-- Install:
-- Install path : D:/Libs/Caffe # 需要相同
--
-- Configuring done
-- Generating done
......
得到上面的结果之后,删除在build_win.cmd添加的那行exit /b 1
,然后重新执行build_win.cmd,开始编译依赖库。编译完成后,把下面的几条加入环境变量Path。
%USERPROFILE%\.caffe\dependencies\libraries_v140_x64_py27_1.1.0\libraries\bin
%USERPROFILE%\.caffe\dependencies\libraries_v140_x64_py27_1.1.0\libraries\lib
%USERPROFILE%\.caffe\dependencies\libraries_v140_x64_py27_1.1.0\libraries\x64\vc14\bin
%USERPROFILE%\.caffe\dependencies\libraries_v140_x64_py27_1.1.0\libraries\x64\vc14\lib
%USERPROFILE%\.caffe\dependencies\libraries_v140_x64_py27_1.1.0\libraries\x64\vc14\staticlib
5、编译Caffe
D:\Libs\Caffe\bin
D:\Libs\Caffe\lib
D:\Libs\Caffe\matlab\+caffe\private
D:\Libs\Caffe\matlab\+caffe\private\Release
三、使用Caffe
1、Matlab
PATH_TO_CAFFE_MATLAB='D:/Libs/Caffe/matlab/';
addpath(genpath(PATH_TO_CAFFE_MATLAB));
在matlab中使用caffe接口
在matlab中添加路径
现在,应该可以使用了,调整matlab当前路径为caffe/matlab/demo/文件夹下,有claasification_demo.m文件可以进行测试,如果无错即配置完成。
Caffe 深度学习框架是支持 opencl gpu 计算加速的,为了在 msys2/mingw 环境下可以工作我做了少量修改 https://github.com/zhujiang73/caffe-windows-opencl 下图是基于 OpenCL Caffe 做的画框识图,我只有一块入门级小显卡 GPU 版程序的图像识别速度是 CPU 版的三倍左右.
综合考虑开发效率,运行速度,和可移植性,选择 msys2/mingw 作为开发环境,caffe 代码的可移植性很好稍加修改就能在 mingw 环境下编译。
msys2集成了unix 风格的shell 环境和 mingw 编译工具,可以在windows 下写 gcc 风格的程序, 结合msys2/mingw 版的emacs 就是一个很好的开发环境。 http://msys2.github.io/
这两天刚搞好 caffe 的 python 接口,虽然我认为 msys2/mingw 比较好用,但是目前大多数软件在 windows 下会优先考虑 msvc 可移植,由于mingw 是 gcc 但不是unix 是 win 但不是msvc 比较小众,所以很多软件在 mingw 下需要做些修改才能编译,我把修改过的 caffe msys2/mingw 版放在:https://github.com/zhujiang73/caffe-windows-opencl 支持 opencl gpu 加速,支持 python 接口,算是比较完整了。caffe 这个“深度学习工具”虽然比较老但是比较适合机器视觉任务,我目前只实验了cnn 等比较经典的算法,下一步该实验 rcnn 等改进算法了,caffe 的缺点是框架不太灵活可能需要定制一些模块才能实现新算法。
windows下配置caffe-matlab接口相关推荐
- windows下使用Caffe框架和matlab实现SRCNN官方代码的步骤
步骤 step1 搭建caffe环境 在windows系统上搭建caffe环境,并配置matlab接口(需要下载 caffe-master.zip 以及 VS2013 ) 我的环境为:windows1 ...
- Ubuntu17.10 下配置caffe 仅CPU i386可以直接apt install caffe-cpu,但是怎么运行mnist代码我懵逼了...
Ubuntu16.04下配置caffe(仅CPU) 参考:http://blog.csdn.net/zt_1995/article/details/56283249 第二次配置caffe环境,依旧把之 ...
- php sendmail方法,PHP实现在windows下配置sendmail并通过mail()函数发送邮件的方法
本文实例讲述了PHP实现在windows下配置sendmail并通过mail()函数发送邮件的方法.分享给大家供大家参考,具体如下: 1.php mail()函数在windows不能用,需要安装sen ...
- windows下配置redis集群,启动节点报错:createing server TCP listening socket *:7000:listen:Unknown error...
windows下配置redis集群,启动节点报错:createing server TCP listening socket *:7000:listen:Unknown error 学习了:https ...
- windows 下配置 react native 开发环境
windows 下配置 react native 开发环境 安装nvm 由于react native 需要使用 NodeJs 4.0以上版本,为了方便切换NodeJs,首先我们需要安装nvm. 你可以 ...
- Windows下配置Chrome WebDriver
其实就是下载一个exe,放在chrome下面,添加到环境变量 Windows下配置Chrome WebDriver 下载地址,选版本: http://npm.taobao.org/mirrors/ch ...
- windows下配置ssh(FreeSSHD + putty)
windows下配置ssh(FreeSSHD + putty): 1.关于配置过程找到一篇很好的博客,推荐大家先好好看一下,这篇博文解决了大方向问题. 地址:http://blog.csdn.net/ ...
- Windows下配置单机Hadoop环境
Windows下配置单机Hadoop环境 文章目录 Windows下配置单机Hadoop环境 下载Hadoop 下载配置文件 配置环境变量 初始化HDFS 启动Hadoop 关闭Hadoop 常见错误 ...
- Windows下配置IDEA开发环境
Windows下配置IDEA开发环境 文章目录 Windows下配置IDEA开发环境 安装JDK 查看JDK是否安装 下载JDK 配置环境变量 安装IDEA 下载IDEA 安装IDEA 初始化IDEA ...
- windows下配置java
WINDOWS下配置JAVA环境变量 JAVA需要的环境变量: JAVA需要配置的环境变量有三,分别是java_home环境变量.path环境变量和classpath环境变量. JAVA环境变量的意义 ...
最新文章
- 6万车主使用智能驾驶不给钱,理想汽车竟然还说越多越好?
- .NET Core微服务之基于Ocelot实现API网关服务(续)
- DCMTK:测试CT Table Dynamics FG类
- Jquery 三种方法获取取Checkbox是否选中
- 面试官:为什么 Spring Boot 的 jar 可以直接运行
- java default修饰符_Java基础语法二
- 用行为树的方式思考问题
- java list初始值null_关于list集合存储null的问题
- android动态更新配置文件,Android如何动态修改Manifest文件
- 操作系统 —— 课程概述
- 首发骁龙8 Gen1!联想陈劲:摩托罗拉edge X将给行业扔一颗大炸弹
- Python:如何安装与使用 pip
- 利用过滤器(Filter)统一处理请与响应乱码
- 一种基于GRU神经网络的英文诗歌生成系统
- 再次哀悼吧!最佳夸浏览器同步 Xmarks 宣布终止服务
- C.就来谈谈深搜与广搜
- 谷歌浏览器chrome扩展插件-农名的世界脚本
- 2021年焊工(初级)考试及焊工(初级)免费试题
- 「微服务系列」统一网关Gateway
- CentOS 7的时间设置