WIN10 yolo_v3环境搭建

VS2019 & CUDA 11.0 & opencv 4.3.0 & darknet

目录

  • WIN10 yolo_v3环境搭建
    • VS2019 & CUDA 11.0 & opencv 4.3.0 & darknet
  • 前言
  • 1 VS2019安装
  • 2 安装CUDA
  • 3 下载cudnn
  • 4 安装opencv
  • 5 darknet
    • 5.1 修改darknet.vcxproj文件
    • 5.2 使用VS打开项目
    • 5.3 配置opencv
    • 5.4 生成项目
    • 5.5 测试

前言

  最近需要用yolo,得搭建yolo_v3环境,所以找了很多资料,有关于yolo的讲解,有关于搭建的教程,大部分人用的是darknet,然而有些教程可能时间比较久了,不一定有用,我安装中也碰到了很多新的问题。所以在本文中对我的搭建过程进行一次回顾,整理一下碰到的问题,作为经验分享,提供给近期需要安装yolov3的同学。参考的博文会在相应处给出。
  首先简单理一下知识点:

  • 什么是yolo:
    yolo_v3是一种检测算法,顾名思义,还有v1,v2,原作者在一篇论文中详细介绍了v3。
  • yolo的用处:
    简单说,输入图像,输出物体位置,类别,置信概率。
  • 什么是darknet:
    yolo作者写的深度学习框架,也随着yolo不断升级,yolo_v3中的是darknet-53,另外也还有个替换:tiny-darknet。

刚开始接触,一知半解,更多关于的yolo的知识点可参考:

  1. yolo详解
  2. yolo_v3深度解析

下面进正题,开始环境搭建:

1 VS2019安装

  darknet是原作者是在Linux下用C写的,所以想在Windows上使用需下载darknet源码然后利用MSVC编译,有几种方法,包括VS,cygwin等方式。用cygwin编译makefile的话,需要修改一些路径,很多教程都在linux上进行,关于VS的教程比较多,相对也省事。大多教程都是用的VS2015,其实19也行,装的时候勾选2015的部分就行。

  下载打开VS2019社区版安装包,进入下面的界面后,勾选使用C++的桌面开发,然后在右边选择最后一个MSVC v140 工具集,其他选项按需求勾选,然后安装。

2 安装CUDA

cuda、cudnn之间的版本是需要对应的,可以先安装CUDA,然后去下载对应的cudnn。
CUDA下载地址

  按需求下载对应版本就行了,我直接下了最新版11.0,然后进入以下界面,这里就是本地安装和在线安装的区别,刚开始我尝试在线安装,结果老提示无法连接到nvidia,索性就下载了本地安装包,用个下载工具一会儿就下完了,然后的安装界面一路点 确定/下一步 就行了。
  然后CUDA的安装过程中环境变量自动安装了,不放心的话可以自行确认一下。
  最后打开命令行(win+R—cmd),输nvcc -V,如果有版本信息(如下),则安装成功。

3 下载cudnn

进入cudnn下载页面,这边需要成为nvidia开发者计划成员,其实就是注册一下就行了,填一些信息,几分钟搞定。
然后进入下载界面,根据安装的CUDA版本找到对应的cudnn下载,当中包含以下文件:

把这些文件拷贝后放到CUDA安装目录下面的v11.0(具体看你版本)文件夹下替换:

4 安装opencv

进入官网,选择Windows版本下载安装,就不多说了,我装的是最新的4.3.0。

安装完后要配置环境变量:

5 darknet

先附上我最终使用的darknet项目地址,这个已经基于VS2015配置好了,接下来介绍搭建过程中还是会顺便扯一下我碰到的问题。

5.1 修改darknet.vcxproj文件

进入darknet —> build —> darknet 文件夹,打开darknet.vcxproj文件,搜索cuda 10,替换成你安装的版本,如果你装的一样就不用改。

5.2 使用VS打开项目

刚开始使用的是从某教程中找到的darknet项目,进入上一步的目录,用VS打开darknet.sln(没有GPU的打开darknet_no_gpu.sln,有GPU的打开darknet.sln),直接提示打开失败,关闭VS再开一遍,莫名其妙又可以了。打开时会有两个选项,其中第二个 平台工具集 一定要选 无升级

这两个地方要修改一下:

5.3 配置opencv

右键项目,属性,先修改这两个地方:

C/C++ ~ 常规 ~ 附加包含目录 ~ 编辑,把opencv的build\include目录设置成自己的(在第二行):

然后是链接器 ~ 常规 ~ 附加包含目录,同样的操作,不过这里设置的是build\x64\vc14\lib,图略。

5.4 生成项目

右键项目,重新生成

这里可能会报错,提示你在C盘的某某目录下缺失CUDA的targets等文件,也就是我们刚刚修改版本的那两个文件,可以按照报错提示的位置把对应文件放过去。

搞定后我又碰到了其它问题,提示我darknet下的某C文件存在 变量未申明,语法错误等等等等,解决不了我就换成了上面给出的这个配置好的darknet项目,按照流程又走一遍,一次成功。

项目重新生成成功后会在build\darknet\x64目录下发现darknet.exe文件,下载yolov3.weights文件放到该目录下(官网地址 或者 网盘 提取码: jdkt)。

  • 收尾工作

    • 进入 opencv\build\x64\vc14\bin文件夹
      把这两个文件拷贝到darknet.exe同一目录下。

    • 进入CUDA的 v11.0\bin文件夹下,把cudnn64_8.dll也拷贝到darknet.exe同一目录。

5.5 测试

在darknet.exe目录下打开cmd,用图片进行测试,我这边使用了自己找的图:
darknet.exe detect yolov3.cfg yolov3.weights 325.jpg

搞定 !

WIN10 yolo_v3环境搭建 2020-7-17相关推荐

  1. Win10开发环境搭建笔记(过审阉割版)

    Win10开发环境搭建笔记 文章目录 Win10开发环境搭建笔记 系统配置: 熄屏与睡眠 手动安装 360安全卫士 - 360软件管家 激活软件(阉割) 上网软件(阉割) Xshell7 & ...

  2. 华为Atlas200DK开发从零开始1.番外篇——Win10开发环境搭建,直连Atlas200DK开发板

    目录 前言 环境搭建前准备 Windows10上的软件准备 硬件准备 Win10直连Atlas200DK 检查USB虚拟网卡状态 设置Atlas200DK的USB网卡IP(重要) 将Win10网络共享 ...

  3. 【区块链:超级账本】Win10 Hyperledger环境搭建

    Hyperledger官网 Hyperledger官网,有需要安装的所有软件以及安装过程: https://hyperledger-fabric.readthedocs.io/en/release-1 ...

  4. win10 mmdetection3d环境搭建

    官网:mmdetection3d/README_zh-CN.md at master · open-mmlab/mmdetection3d · GitHub 安装过程参照:win10 mmdetect ...

  5. 【SCons 002】Win10 SCon环境搭建

    1. 熟悉文档 大概看了下前面下载的几篇文档, <scons-user.pdf> 这篇时作为我们小白入门的主要参考文档 <scons-man.pdf>这篇主要是对SCons的一 ...

  6. Win10 Vue 环境搭建以及项目初始化

    文章目录 1. Node 下载和安装 1.1 安装验证 1.2 添加 `NODE_PATH` 环境变量 2. 使用 cnpm 的两种方式 2.1 下载安装 cnpm 2.2 通过改变地址来使用淘宝镜像 ...

  7. WIN10+YOLOv4 环境搭建并进行YOLOv4目标检测

    我的当前 软件环境:WIN10,CUDA10.2,cuDNN7.6.5,python3.7,VS2019,OpenCV3.4.0 硬件环境:Rtx2060,12G显存: 1.1 下载安装NVIDIA显 ...

  8. CUDA8.0+VS2015+Win10开发环境搭建教程

    文章目录 前言 一 安装VS2015 二 安装cuda8.0 三 检测cuda是否安装成功 四 运行示例demo来进一步检测cuda安装的正确性 五 新建一个VS2015工程,运行cuda程序 六 跋 ...

  9. win10+tensorflow环境搭建

    我的python2 和 python3 是共存的,首先装了anaconda2,在anaconda2的虚拟环境中装了anaconda3,具体方法见 http://blog.csdn.net/infin1 ...

最新文章

  1. stop words list
  2. 使用localStorage实现历史记录搜索功能也就是天猫app历史记录存储方便浏览
  3. 第十一届蓝桥杯java B组第二场-试题A: 门牌制作
  4. github使用个人总结
  5. linux——grep、sed、awk整理及其比较
  6. python办公实用功能_【一点资讯】实用办公技巧贴——当Python遇上PDF www.yidianzixun.com...
  7. 争议?MySQL存储过程与函数,封装,体,完整详细可收藏
  8. 办公自动化-world转pdf-0223
  9. 在GridView中加入单选按钮RadioButton
  10. oracle备份出现问题,TSM + Oracle备份出现问题
  11. 中国1,2,4-三氟苯市场趋势报告、技术动态创新及市场预测
  12. 启动时间知多少?8款音视频类应用测评报告分析
  13. html5---资料查询
  14. java反射获取注解id,通过反射获取注解(Annotation)
  15. Eclipse tooltip变黑的修正
  16. kdj指标详解曲线详解分析高位徘徊是什么KDJ指标详解曲线详解分析市场特征是什么
  17. 复杂字云简单做,随时做好装逼的准备
  18. java面试题之选择题
  19. 两种远程桌面连接方法--远程桌面连接工具
  20. 论计算机叫兽们与林纳斯·托瓦兹

热门文章

  1. 论文抽检判定抄袭的标准?
  2. 用js基础实现倒计时
  3. 嘉兴秀水学院计算机,嘉兴秀水中等专业学校2021年有哪些专业
  4. java框架 零基础从入门到精通的学习路线 附开源项目面经等(超全)
  5. vue3简单处理全屏
  6. xSense MTI C++ SDK编译测试
  7. 没有数据线安装ipa文件
  8. 文远知行与禾赛合作升级,半固态激光雷达落地L4级自动驾驶
  9. 杰理之如何使用USB虚拟串口作为打印口【篇】
  10. javascript中的contains方法