搭建了几天的caffe,GPU的CPU的都装过了,中途出现了各种问题,觉得值得拿出来记录一下~也方便以后查看~以下是我朋友博客中搭建的过程~写的很好,拿来借用一下~
前言
首先来一波地址:
happynear大神的第三方caffe:http://blog.csdn.net/happynear/article/details/45372231
Neil Z大神的第三方caffe:https://initialneil.wordpress.com/2015/01/11/build-caffe-in-windows-with-visual-studio-2013-cuda-6-5-opencv-2-4-9/
caffe提供Windows工具包(caffe-windows):https://github.com/BVLC/caffe/tree/windows 百度云下载地址:链接:http://pan.baidu.com/s/1bp1BFH1 密码:phf3
微软提供Windows工具包(caffe-master):https://github.com/Microsoft/caffe 百度云下载地址:链接:http://pan.baidu.com/s/1hs8ngpA 密码:ith0
微软的Windows三方包(Nuget得到的包):链接:http://pan.baidu.com/s/1pKQKJJP 密码:2vzy
VS2013安装包:链接:http://pan.baidu.com/s/1b6VDJg 密码:f2jp
如果想移植caffe官网为Linux提供的caffe,可查阅我后面的博客。
我使用的是微软官方提供的链接,基本上与caffe官网上提供安装包差不多,具体区别没有细看,这个caffe无需配置第三方库的环境变量,直接就可以自动下载所需要的库,包含opencv和boost等。
【注】VS2012的也有人写过,自行参考。此版严格只支持VS2013。此版本无需配置任何第三方环境哦,因为在项目属性里面都已经包含进去了,非常方便。如果出现了一些文件打不开或者其它问题,第一可能是VS自身问题,第二可能你配置过其它caffe,修改过环境变量,导致找不到头文件之类的。
第一步
下载caffe官网提供的工具包,复制Windows下CommonSettings.props.example,后缀改为CommonSettings.props,如下:
第二步
无GPU,所以修改复制过来的CommonSettings.props配置文件:
第三步
双击Windows下的caffe.sln,在VS2013中生成解决方案:
【注】里面的predict 是我自己写的测试项目,其它的才是官网自动生成的哈,官网自带的总共有16个项目,请注意核对~~~ :->
然后会弹出一个窗口,Nuget所需要的第三方库,可能会未响应,慢慢等吧。如果出现无法连接的那个问题,说明IP ping不过去,直接把问题复制到网上搜,有解决方法。
第四步
当下载完毕第三方库,你的caffe-Windows并列文件夹下会有一个第三方库的文件夹
【注】caffe-windows和caffe-master对caffe.cpp编译以后下载的第三方库都是十六个文件夹。
最好核对一下文件,免得没下载完就被你关掉了。
为了方便大家解决这个问题,我直接压缩了一个,下载解压放到与caffe-master并列文件夹即可:链接:http://pan.baidu.com/s/1nuIJMp7 密码:1zgo
这个时候,当下载完毕,VS仍在继续执行生成任务,最终可能失败,原因下面会提示说无法打开libcaffe.lib之类的error。解决方法是直接对libcaffe重新生成,或者直接生成一次
当这个文件生成成功以后,重复一下上一步,对所有文件再重新生成一下,这时候应该不会出现libcaffe.lib无法打开的错误了。
【PS】按照这个流程编译下来很少会出现无法解析外部符号问题,出现这种问题有很大可能是静态库没连接好,但是微软的所有库是自动下载的,除非没下载全。还有关于一些.h 头文件未找到,请自行核对此头文件的位置,然后再配置文件中随便找个IncludePath(此includePath必须在编译时候被使用),将路径加进去即可,同时也必须注意是否需要相关的lib文件。不过帮忙配置挺多电脑以后,基本没遇到太多问题。
第五步
设置一下运行项,解决方案'caffe'->属性
或者下面直接单启动项目是caffe也行,不过最好改一下,原因相信玩过VS的都清楚,如果是单启动项目,那么在你重新编译工程的时候,只会运行次单启动项目,其它项目不会运行,这就是为什么很多人编译以后发现Release或者Debug文件夹下只有caffe.exe而没有conver_imageset.exe等可执行文件的原因。
第六步
运行caffe.cpp,直接双击打开caffe.cpp,然后ctrl+f5直接编译,出现如下命令窗口说明编译成功
【PS】这个其实告诉你了如何调用caffe.exe去训练你的模型
两个学习文档
薛开宇学习笔记:链接:http://pan.baidu.com/s/1hshTkqw 密码:xckh
caffe社区学习资料:链接:http://pan.baidu.com/s/1jIyegZ0 密码:sktu
另外说说我在搭建的过程中遇到的问题,由于工程都是V64 Build的,所以下载的anaconda2一定要是64位的,我之前下载的32位以为可以兼容,结果一直报库错误,找了两天没找到,后来是看到位数不对,重新下了64位的一下就通过了~哎~
后期用caffe搭建了fast rcnn,在编译fast rcnn的过程中遇到以下情况:
1 出现simple的情况
解决:下载最新的protobuf文件,我是用的3.0版本的,可以通过。
2 出现没有_caffe的情况
解决:将caffe的python接口打开,build后,在build中找到pycaffe,复制到fast rcnn的caffe文件下,改名为python,其中_caffe.pyd就是需要的文件,注意生成的时候有没有这个文件。
3 出现没有cv2的情况
将opencv的安装文件中的cv2拷贝到python安装文件夹下即可。
GPU和CPU的情况我都跑了,CPU是20,30秒一张,GPU是2秒一张~
后期将使用fast rcnn训练下自己的数据~