Win10+RTX3080深度学习环境搭建,执行YOLO目标检测

1 软件安装

硬件环境:RTX3080
软件环境:WIN10,CUDA11.4,cuDNN8.2.2,VS2019,opencv4.5 ,cmake

opencv需要编译

1.1 安装显卡驱动

安装3080后,重装win10系统,查看“设备管理器-显示适配器”,发现NVIDIA显卡驱动已经自动安装。
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第1张图片
double check:win+r cmd,输入 nvidia-smi
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第2张图片

1.2 安装VS2019

一定要先安装VS再安装CUDA,否则VS无法配置CUDA工程!
直接从VS官网下载安装包,无脑安装就行啦。

1.3 安装CUDA11.4

参考:Cuda和cuDNN安装教程(超级详细)
到CUDA官网下载安装包,相应的属性选择如下图:

Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第3张图片
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第4张图片

win+r cmd,输入 nvcc -V
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第5张图片

1.4 安装cudnn

参考:Cuda和cuDNN安装教程(超级详细)

查看cudnn是否安装成功:
win+r cmd,输入

cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4\extras\demo_suite

进入到demo_suite的文件夹下,先后运行deviceQuery.exe和bandwidthTest.exe文件,如果均输出Result = PASS,则表示cudnn安装成功。
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第6张图片

Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第7张图片

1.5 VS2019配置CUDA

参考:VS2019 配置CUDA工程

配置好后,运行测试程序,输出正确结果即可。
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第8张图片
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第9张图片

1.6 Cmake编译OpenCV源码

参考:Windows系统下配置具有Contrib扩展模块的GPU版OpenCV

  • 下载 opencv4.5.0 opencv-4.5.0-vc14_vc15.exe 双击解压到F:\opencv4.5.0,然后打开环境变量,在系统变量PATH中添加路径
F:\opencv4.5.0\opencv\build\x64\vc15\bin

注:RTX3080最好用opencv4,不要用opencv3,不然编译opencv的时候会疯狂报错!

  • 下载 Cmake 3.22.3 cmake-3.22.3-windows-x86_64.zip
    Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第10张图片

  • 下载 opencv contrib 4.5.0 opencv_contrib-4.5.0.zip

开始编译opencv:部分中间过程的截图如下:
参考:Windows系统下配置具有Contrib扩展模块的GPU版OpenCV
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第11张图片
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第12张图片

Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第13张图片
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第14张图片
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第15张图片
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第16张图片

Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第17张图片
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第18张图片
Win10+RTX3080深度学习环境搭建,执行YOLO目标检测_第19张图片

2 配置YOLO

安装Basler_pylon
参考vs2017配置#include 「pylon/PylonIncludes.h」
配置相关路径:
VC++目录->包含目录:

F:\opencv4.5.0\myBuild\install\include\opencv2
F:\opencv4.5.0\myBuild\install\include

VC++目录->库目录:

F:\opencv4.5.0\myBuild\install\x64\vc16\lib
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4\lib\x64

C/C+±>常规->附加包含目录:

C:\Program Files\Basler\pylon 5\Development\include

链接器->常规->附加库目录:

C:\Program Files\Basler\pylon 5\Development\lib\Win32
C:\Program Files\Basler\pylon 5\Development\lib\x64

链接器->输入->附加依赖项:

opencv_world450d.lib
opencv_img_hash450d.lib
cublas.lib
cublasLt.lib
cuda.lib
cudadevrt.lib
cudart.lib
cudart_static.lib
cudnn.lib
cudnn64_8.lib
cudnn_adv_infer.lib
cudnn_adv_infer64_8.lib
cudnn_adv_train.lib
cudnn_adv_train64_8.lib
cudnn_cnn_infer.lib
cudnn_cnn_infer64_8.lib
cudnn_cnn_train.lib
cudnn_cnn_train64_8.lib
cudnn_ops_infer.lib
cudnn_ops_infer64_8.lib
cudnn_ops_train.lib
cudnn_ops_train64_8.lib
cufft.lib
cufftw.lib
cufilt.lib
curand.lib
cusolver.lib
cusolverMg.lib
cusparse.lib
nppc.lib
nppial.lib
nppicc.lib
nppidei.lib
nppif.lib
nppig.lib
nppim.lib
nppist.lib
nppisu.lib
nppitc.lib
npps.lib
nvblas.lib
nvjpeg.lib
nvml.lib
nvptxcompiler_static.lib
nvrtc.lib
OpenCL.lib

3 训练YOLO

从github下载YOLO的源码:AlexeyAB/darknet
按照Readme里的说明,下载权重文件yolov4.weight

第一步:
在darknet\build\darknet路径下,右键点击darknet.vcxproj,选择txt打开,CTRL+F搜索CUDA,将CUDA的版本都改成11.4。

第二步:
将NVIDIA CUDA的安装路径下的某个文件夹下的所有文件,复制到VS安装路径下的某个文件夹里。

.\CUDA\VisualStudioIntegration\extras\visual_studio_integration\MSBuildExtensions
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\BuildCustomizations

4 目标检测

win+r打开CMD黑窗口,进入YOLO的文件夹:

cd D:\darknet\build\darknet\x64\

执行检测命令:

darknet.exe detector test cfg\coco.data cfg\yolov4.cfg yolov4.weights data\dog.jpg

其中,待检测的图片放在路径:

D:\darknet\build\darknet\x64\data

5 参考链接

3080深度学习环境配置
How to training YOLO by RTX 3080 #6976
yolov4 开发环境搭建_WIN10+YOLOv4,windows上完美执行YOLOv4目标检测
WIN10+YOLOv4,windows上完美执行YOLOv4目标检测
win10+VS2017+Opencv3.4.1+libtorch开发环境搭建(1)
AlexeyAB/darknet

你可能感兴趣的:(深度学习,目标检测,dnn,c++)