Caffe环境搭建

Windows下Caffe环境搭建

在Windows10及在Windows Server2012上安装Caffe,两种环境下搭建步骤基本一致。

安装vs2015

需要提前安装vs2015或者vs2013,本次安装都是在安装vs2015的基础上进行,vs2015的iso文件已经备份到服务器以及移动硬盘中。点击安装vs_community.exe即可。

fmJ9kd.png

踩坑记录:下载的vs2015镜像包不全,导致安装过程中报错“安装保丢失或者安装包丢失”,解决办法重新下载vs2015的镜像。

python环境搭建

caffe依赖的python版本主要为python3.5以及python2.x的版本,这里搭建的主要是python3.5的版本。python环境搭建主要可以考虑直接安装和利用Anaconda安装。Anaconda可以很好的管理python环境,所以在两种系统下都选择了Anaconda搭建python。

服务器上搭建的python环境(base)为python3.8的版本。新建版本为3.5的python环境,命名python环境为caffe。在Anaconda Prompt中创建。输入 命令为:conda create -n your_env_name python=X.X(2.7、3.6等)

 conda create -n caffe python=3.5

安装成功后,检查python虚拟环境的安装路径:

conda info -e

fmGz0e.png

激活该虚拟环境,查看python的版本,安装必要的包,Caffe环境的搭建可能会使用。

 activate caffe  #激活环境
 deactivate      #关闭环境

检查该环境下的python版本是否为3.5

检查环境中是否已经安装numpy的包,如果没有安装,编译Caffe时会发生错误。进入caffe环境

pip install numpy

python环境基本搭建完成,现在开始,对caffe压缩包进行解压编译。

Caffe编译安装

提供了caffe-Windows的安装包,直接解压。我们需要对caffe-windows/scripts/build_win.cmd进行编辑修改:

这里应当根据实际的本机配置来设置:python版本为3.5;设备中只有CPU;利用vs2015进行编译,需要更改的地方有:

1、前面部分在这里插入图片描述

2、python路径更改

前面中已经确定了python3.5环境的安装路径为C:\ProgramData\Anaconda3\envs\caffe,故在文件中需要修改为:

3、修改编译中的设置

MSVC_VERSION使用的是vs2015,不用修改;不需要使用NINJA进行编译故设置为0,其他的设置如下图:
在这里插入图片描述

由于我们只是搭建CPU版本,不需要对CUDA路径进行更改,所以可以不进行修改CUDA路径,若存在GPU,修改CPU_ONLY 的数值以及在下面输入CUDA的安装路径。
img
修改好后,在命令行中进行运行。

4、cmake安装

对上面cmd文件进行直接运行,会报错:

没有安装cmake程序所导致,安装cmake:

点击安装即可。

5、python系统环境变量问题

这里主要是在进行编译中,虽然我们已经更改了python环境路径,但是依旧会出现python版本问题,找到的是Anaconda中的base环境下的python版本。

这里的错误主要是系统环境变量中未进行设置:在编辑系统环境变量的path中加入我们新建的python3.5的环境:C:\ProgramData\Anaconda3\envs\caffe,之后运行build_win.cmd即可。注意:每次执行前建议删除build文件夹

6、删除原程序中下载部分内容

由于在build_win.cmd中下载caffe环境的依赖项,下载速度很慢,很容易报错这里应该对其进行修改。先删除上一次编译错误的build文件夹,之后再进行编译,会出现下载文件的提示。这里说明基本设置成功。

在这里插入图片描述

一般的下载进程都比较慢,经常出现错误,我们可以直接把已经下载好的包放到指定的位置,在服务器中的位置为:C:\Users\Administrator.caffe\dependencies。依赖包已经备份。

所以需要在\caffe\cmake路径下,用Notepad++打开WindowsDownloadPrebuiltDependencies.cmake,删除下列代码以避免再次下载“libraries_v140_x64_py27_1.1.0.tar.bz2”依赖包:
img
修改好后,打开cmd运行build_win.cmd。

7、成功编译过程

这里大概会有半个小时左右的安装时间,中间会报警告,但不影响。等待完成即可。

在这里插入图片描述

8、利用vs2015 进行编译

vs2015打开\caffe-windows\scripts\build文件夹下的Caffe.sln文件,分别设置Debug和Release编译ALL_BUILD成功后,注意都是x64。时间可能比较久,一般不会报错。
在这里插入图片描述debug编译成功:在这里插入图片描述
Release编译成功:到这里环境搭建已经大功告成了,接下来我们需要配置python接口。

配置pytho接口

打开Anaconda Prompt,如下输入来安装包文件,需要一些时间。

conda config --add channels conda-forge 
conda config --add channels willyd 
conda install --yes cmake ninja numpy scipy protobuf==3.1.0 six scikit-image pyyaml pydotplus graphviz 

这一步中时间比较长,如果发生错误,重复执行第三部。
编译成功后,将“caffe-forwin\caffe\python”添加到环境变量,并把该路径下的caffe文件夹复制到安装Anaconda的site_packages目录下,在我的电脑上是C:\Users\T***\Anaconda3\env\caffe\Lib\site-packages。之后进入到python环境中,验证是否可以使用。
在这里插入图片描述加载无错误,配置成功。
参考博客:Win10+VS2015+Anaconda3(GPU)+Caffe安装(之前已安装TensorFlow)

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
1. 安装依赖 首先需要安装 Caffe 和一些相关的依赖项: sudo apt-get update sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler sudo apt-get install --no-install-recommends libboost-all-dev sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev 2. 下载源码 下载 Caffe 的源码,建议使用 GitHub 上的官方仓库: git clone https://github.com/weiliu89/caffe.git 3. 编译 Caffe 进入 Caffe 的根目录,然后执行以下命令进行编译: cd caffe cp Makefile.config.example Makefile.config make all -j8 make test -j8 make runtest -j8 4. 下载预训练模型 下载 SSD 的预训练模型,可以从以下链接中选择: https://github.com/weiliu89/caffe/tree/ssd#models 将下载好的模型放到 Caffe 的根目录下的 models 目录中。 5. 测试 SSD 在 Caffe 的根目录下执行以下命令,测试 SSD 的效果: ./build/tools/caffe test \ --model=models/VGGNet/VOC0712/SSD_300x300/deploy.prototxt \ --weights=models/VGGNet/VOC0712/SSD_300x300/VGG_VOC0712_SSD_300x300_iter_120000.caffemodel \ --iterations=5000 \ --gpu=0 6. 使用 SSD 如果已经成功测试了 SSD,就可以在自己的代码中使用它了。需要引入以下头文件: #include "caffe/caffe.hpp" #include "caffe/util/db.hpp" #include "caffe/blob.hpp" #include "caffe/common.hpp" #include "caffe/net.hpp" #include "caffe/proto/caffe.pb.h" #include "caffe/layers/input_layer.hpp" #include "caffe/layers/conv_layer.hpp" #include "caffe/layers/pooling_layer.hpp" #include "caffe/layers/softmax_layer.hpp" #include "caffe/layers/relu_layer.hpp" #include "caffe/layers/detection_output_layer.hpp" 然后可以通过以下方式加载模型: caffe::Net<float> net("models/VGGNet/VOC0712/SSD_300x300/deploy.prototxt", caffe::TEST); net.CopyTrainedLayersFrom("models/VGGNet/VOC0712/SSD_300x300/VGG_VOC0712_SSD_300x300_iter_120000.caffemodel"); 最后就可以使用 SSD 进行目标检测了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值