YOLOv4从配置环境到跑通代码的小白教程

一直以来都只是看论文和网上的一些纯文字的讲解,但从来没有实操过,非常想自己跑一下代码,看一下算法的整个实现过程,于是就有了这次尝试。

系统环境介绍

windows 10
NVIDIA  GeForce GTX  3060
VIsual Studio 2017社区版
CUDA 11.3
Cudnn 8.2.0
Python 3.9.7
OpenCV 

1 配置环境

1.1 安装VS

下载网站:下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux (microsoft.com)

安装教程可参考这一篇:下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux (microsoft.com)我安装的是vs 2017社区版,如果你安装的是其他版本应该也不会有什么问题。

1.2-1.4步直接参考这篇文章(懒得写)

(74条消息) YOLOv4手把手教程!从配置环境,带你跑通代码!_Veritaswhs的博客-CSDN博客_yolov4环境搭建

版权声明:本文为CSDN博主「Veritaswhs」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43398590/article/details/106100842

有些小伙伴可能从来没有配置过环境变量,所以这里详细解释一下。

在【此电脑】或【计算机】处右键,【属性】->【高级系统属性】->右下角的【环境变量】

YOLOv4从配置环境到跑通代码的小白教程_第1张图片首先在【用户变量】处【新建】,添加数据。文章中提到的,像这种:

在这里插入图片描述

就是添加到用户变量里面。

像这种:在这里插入图片描述 

 就是在【系统变量】的【Path】里【编辑】->【新建】,添加数据

2 下载代码

下载链接: GitHub - pjreddie/darknet: Convolutional Neural Networks

将下载的darknet解压缩,我的是在d盘根目录下。

YOLOv4从配置环境到跑通代码的小白教程_第2张图片

在系统变量Path中加入你下载的darknet的位置

  2.1 修改Makefile文件

在D:\代码\YOLOv4\darknet-master下找到Makefile文件,用记事本打开并修改Makefile,记得保存。

YOLOv4从配置环境到跑通代码的小白教程_第3张图片

 

2.2 修改darknet.vcxproj

进入D:\代码\YOLOv4\darknet-master\build\darknet目录下,双击darknet.vcxproj,使用Pycharm打开。

 此处给没有安装Pycharm的小伙伴们一个参考:

Pycharm及python安装详细教程_陌上行走的博客-CSDN博客_python详细安装教程

PyCharm2021安装教程_学习H的博客-CSDN博客_pycharm2021

pycharm从安装到全副武装,学起来才嗖嗖的快,图片超多,因为过度详细!_川川菜鸟的博客-CSDN博客

因为我的Pycharm安装了很久了,当初也是参考这些文章安装好的,所以这里就不详细写安装过程了。

Pycharm打开darknet.vcxproj后,大概在第55行和第300行左右的位置,找到这样的代码段

将这两处的cuda版本号改为对应的自己已安装的cuda版本号后,保存并关闭 。

 2.3 编译darknet.sln

进入D:\代码\YOLOv4\darknet-master\build\darknet目录下,双击darknet.sln,使用vs 2017打开。

在这里插入图片描述

将上面改为Release  x64,然后点击【生成】->【生成darknet】YOLOv4从配置环境到跑通代码的小白教程_第4张图片 

 

若下方显示生成成功,且在D:\代码\YOLOv4\darknet-master\build\darknet\x64下生成了darknet.exe,则编译成功。

 3.darknet使用

 3.1 下载权重文件

权值文件yolov4.weights,下载后放在D:\代码\YOLOv4\darknet-master\cfg目录下。

3.2 运行代码

在网上随便照一张包含人和车的交通路口的照片,放到D:\代码\YOLOv4\darknet-master\data目录下。

然后win+R打开cmd命令提示符。

使用摄像头:

 

随便找一张图片进行测试

在这里插入图片描述 注意:此处的cfg\yolov4.cfg yolov4.weights data\urban.jpg是一个相对路径,最好是改成绝对路径才不容易出错。比如,我把此处改为了:D:\代码\YOLOv4\darknet-master\cfg\yolov4.cfg  D:\代码\YOLOv4\darknet-master\cfg\yolov4.weights  D:\代码\YOLOv4\darknet-master\data\urban.jpg

测试视频:(视频可以去B站下载:车辆检测和交通流量测试视频_哔哩哔哩_bilibili)

darknet.exe detector demo cfg\coco.data cfg\yolov4.cfg yolov4.weights .\data\xxx.mp4

最好都改为绝对路径。
 

3.3 测试结果

你可能感兴趣的:(目标检测,算法)