Caffe学习(四)win10下配置vs2013版本的yolo+mobileNet
准备阶段
1、下载工程
2、Visual Studio 2013 or 2015
3、CMake 3.4 or higher (Visual Studio and Ninja generators are supported)
4、Anaconda
下载工程
https://github.com/eric612/Caffe-YOLOv3-Windows
安装vs2013
参考
https://blog.csdn.net/mqyw29995/article/details/102470756
安装CMake
https://cmake.org/download/
下载相应的版本
然后解压,找到对应目录下的exe所在地址
配置环境变量
右键 我的电脑-高级系统设置-高级-环境变量-系统变量-path中加入bin所在地址
安装Anaconda
上网下载Anaconda
https://www.anaconda.com/products/individual
下载对应的版本,我这边下载是是64bit Python 2.7的windows版本
,下载好后直接安装,一路下一步至结束安装
安装工程
管理员方式运行cmd ,然后输入路径到下载好后解压的Caffe-YOLOv3-Windows文件夹下的scripts里,然后执行build_win.cmd
这里需要注意几点:
1、系统找不到指定的驱动这个提示不影响生成工程
2、这里直接运行肯定是不行的,需要修改build_win.cmd
依次修改:vs2013的版本是12,用的是GPU所以为0,python的版本是2.7所以写2
3、如果没有python2.7会提示下载
这个时候最好自己下在,然后放到对应的.caffe\dependencies\download(运行.cmd你能看到地址在哪里)。然后在重新运行.cmd
PS:出现错误:.caffe/dependencies/libraries_v120_x64_py27_1.1.0/libraries/include/boost-1_61\boost/config/compiler/n
vcc.hpp(22): fatal error C1017:
修改ibraries_v120_x64_py27_1.1.0/libraries/include/boost-1_61\boost/config/compiler/n
vcc.hpp的最后三行屏蔽
在cuda7.5以后就不用这个了,所以会报错。
4、
220或者219,不用去管cmake文件,修改build_win.cmd
这里的CUDA_ARCH_NAME按上面提示的5个选项挨个试,具体你是哪个这种方案最快,或者你去英伟达差对应显卡的compute_的值也是可以的。
PS:如果显卡算力高于6.1,那么就需要手动修改cuda.cmake文件(这里以2080为例),打开cmke文件夹下的cuda.make
I:
修改为:set(Caffe_known_gpu_archs "30 35 50 60 61 75")
最好相应的版本数也改成对应的:set(__archs_names "Kepler" "Maxwell" "Pascal" "All" "Manual")
II:
再message和endif()之间增加语句
elseif(${CUDA_ARCH_NAME} STREQUAL "Pascal")
set(__cuda_arch_bin "75")
III:
最后上述语句改为: set(__cuda_arch_bin "75")
(说明:这里是直接使用Auto:所以上面的cuda_arch_name就要选择 = Auto)
上述修改完后,运行build_win.cmd然后就是等待生成了这个时间有点久,生成后会在Caffe-YOLOv3-Windows-master\scripts\build下有生成vs2013的的sln工程文件,然后点开,运行编译(只要几个重要的库能编译成功就好)
然后你就能在
Caffe-YOLOv3-Windows-master\scripts\build\tools\Release下
看到caffe.exe 安装成功
PS:如果需要生成Debug版本,修改 build_win.cmd的81行即可
PS:若出现错误 Check failed: error == cudaSuccess (290 vs. 0) nono kernel image is available for execution on device
说明是前面英伟达显卡架构未选择正确
去官网查询正确的,然后选择并编译
上述caffe cmake还漏添加条语句
这个位置要加上相应的cudnn的位置信息。然后等待编译过
测试效果
程序有给出caffemodel,可以用程序提供的demo,测试是否安装完成。
1、编辑Caffe-YOLOv3-Windows-master\examples路径下的
修改代码:将相对的路径替换成自己的
说明:data:为识别图片所在的目录。ssd_detect替换成生成的Caffe-YOLOv3-Windows-master\scripts\build\examples\ssd\Release路径下的exe程序(记得exe要加.exe)。prototxt即为对应的一样的文件位置。caffemodel也是一样
2、前面如果没有编译可能没有生成ssd.exe,现在来生成,打开caffe生成的vs2013程序,然后编译这里对应的caffe的cuda的device要改成显卡对应版本,然后修改ssd_detect.cpp,以下内容
I:
II:
然后编译,最后运行demo_yolo_lite.cmd即可,结果展示