一直以来都只是看论文和网上的一些纯文字的讲解,但从来没有实操过,非常想自己跑一下代码,看一下算法的整个实现过程,于是就有了这次尝试。
系统环境介绍
windows 10
NVIDIA GeForce GTX 3060
VIsual Studio 2017社区版
CUDA 11.3
Cudnn 8.2.0
Python 3.9.7
OpenCV
下载网站:下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux (microsoft.com)
安装教程可参考这一篇:下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux (microsoft.com)我安装的是vs 2017社区版,如果你安装的是其他版本应该也不会有什么问题。
(74条消息) YOLOv4手把手教程!从配置环境,带你跑通代码!_Veritaswhs的博客-CSDN博客_yolov4环境搭建
版权声明:本文为CSDN博主「Veritaswhs」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43398590/article/details/106100842
有些小伙伴可能从来没有配置过环境变量,所以这里详细解释一下。
在【此电脑】或【计算机】处右键,【属性】->【高级系统属性】->右下角的【环境变量】
首先在【用户变量】处【新建】,添加数据。文章中提到的,像这种:
就是添加到用户变量里面。
像这种:
就是在【系统变量】的【Path】里【编辑】->【新建】,添加数据
下载链接: GitHub - pjreddie/darknet: Convolutional Neural Networks
将下载的darknet解压缩,我的是在d盘根目录下。
在系统变量Path中加入你下载的darknet的位置
2.1 修改Makefile文件
在D:\代码\YOLOv4\darknet-master下找到Makefile文件,用记事本打开并修改Makefile,记得保存。
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】
若下方显示生成成功,且在D:\代码\YOLOv4\darknet-master\build\darknet\x64下生成了darknet.exe,则编译成功。
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 测试结果