基于Windows搭建caffe环境(CPU模式)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014573686/article/details/69681549

前言

从接触caffe到今天为止一个月零九天,从2017.02.28开始自己试着安装环境,了解学习caffe。写这个方向的博客是为了给自己做笔记来梳理理解,另一方面也是要为以后用到的读者提供帮助,所以基于第二点,看到这篇博客的读者应该也是从事图像处理的新人,或者说学习caffe的新人,我分享一下自己这一个多月的见解,可以帮助新人快速了解caffe。


理解

由于学习时间比较短,所以我也没有办法从原理方面来梳理,我就从应用方面介绍一下。caffe是机器学习中的深度学习DeepLearning分支中用来做图像分类的开源平台。我们可以利用caffe来训练神经网络模型,然后根据神经网络模型来解决实际的图像分类问题。训练模型的时候我们会定义一个适合自己的网络结构,是一个prototext文件,然后再将自己的数据集通过处理来完成训练。这个训练过程接下来有时间会写一篇博客来详细描述。
但在这里我要说一下网络结构文件,有的人也叫网络模型。(絮叨一下:因为通过网络结构和数据集训练出来的叫网络模型,训练时用到的网络结构文件也叫作网络模型。在caffe的源码中caffe.cpp文件中接收网络结构文件的变量名是Flags_model,所以称作网络模型。但是训练得到的文件是caffemodel文件,所以也叫作网络模型。所以为了防止混淆,我在这里称训练时需要的为网络结构文件,称训练的结果叫做网络模型,或者模型。)网络结构文件现在应用中只是根据已经成熟的网络结构来进行修改,然后微调,来形成适合自己的网络结构。不会一层一层自己来编写。常用的是AlexNet结构,caffe也包含了这个结构文件。我认为重新定义一个结构难度很大,而且在工程应用中并不划算。具体的微调过程我会在训练的博客中说明。

言归正传

回归到我们搭建环境的正题,这里是windows环境下的在VS2013下没有GPU的caffe环境配置。

步骤

  • 下载caffe

    这里采用caffe-master,现在caffe有很多版本,还有caffe-windows等,不过都差不多,具体的差别以后有时间了解一下然后说明。下载链接:caffe-master

  • 下载VS2013

    如下图选择项,在已勾选中可以看到迅雷的链接,使用迅雷下载即可。

    为什么不直接附上迅雷链接? 答:这个网站中有大量有用的资源,希望读者可以收藏。
    MSDN

  • 安装VS2013

    安装过程简单,不会者可自行Google或百度

  • 配置caffe

    1. 安装完VS2013后,打开下载的caffe-master压缩包,将caffe-master/windows 目录下的CommonSettings.props.example文件拷贝一份到当前文件夹下,删除后缀名.example,后缀名也就成了.props。具体如下:
      修改文件截图

    2. 修改完以后使用VS2013,打开caffe-master/windows 目录下的Caffe.sln文件

    3. 打开以后VS会加载项目,共有16个。没有修改配置文件所以是14个。打开CommonSettings.props文件,把下图中箭头指向的两行

      修改模式

      改成这样子后,关闭环境,重新打开Caffe.sln

  • NuGet还原程序包

      因为caffe需要一些依赖项,所以需要通过VS2013的 NuGet还原 功能来自动下载程序包。右键解决方案,选择  启用NuGet程序包还原
                选项,VS2013就会自动后台下载。
    

    程序包下载

    下载完成后的结果如下图:
    

这里写图片描述

  • 编译caffe

    完成配置后右键解决方案,选择生成解决方案,等生成成功后,右键解决方案,选择设置启动项目,如下图
    

    设置启动项目

    执行选定内容被选择后,点击 应用->确定 然后选择caffe项目
    

    选择caffe

       然后点击 调试  调试完后控制台窗口会一闪而过,所以再点击  开始执行 如果出现下图表明caffe编译成功,就可以用来训练模型了。
    

    caffe编译结果

注意:编译过程最好选择 x64来调试,如果不知道怎样将VS2013的调试器从win32转成x64可以看这篇博客。

猜你喜欢

转载自blog.csdn.net/u014573686/article/details/69681549