win10下yolo環境配置(GPU+CPU)


win10下yolo環境配置(GPU+CPU)

1.無GPU版本 vs2015+opencv3.2

1.1安裝vs2015

首先需要下載vs,有vs2015最好,如果使用vs2017的話,需要下載v140工具集。

我之前安裝了vs2017,便偷個懶。

1.2安裝opencv3.4.0

下載源:(ps:速度着實有些慢)

https://sourceforge.net/projects/opencvlibrary/files/opencv-win/3.4.0/opencv-3.4.0-vc14_vc15.exe/download

(這里不知道為什么,我不記得這個版本中的opencv有什么用)

血淚教訓,之前用3.2.0版本不知道為什么總是報錯,如果是非GPU版本,好像暫時還用不到。

1.3安裝darknet

https://github.com/AlexeyAB/darknet

下載darknet的壓縮包,解壓並進入\darknet-master\build\darknet,打開如下圖所指的項目darknet_no_gpu.sln(無gpu版本)

1.4下載yolov3.weights

https://link.zhihu.com/?target=https%3A//pjreddie.com/media/files/yolov3.weights

下載完后把文件放在x64文件夾下

1.5調試

控制台無報錯

進入\darknet-master\build\darknet\x64,並在該路徑下打開命令行

輸入以下命令即可,可以看到生成的predictions.jpg

darknet_no_gpu.exe detector test data/coco.data yolov3.cfg yolov3.weights -i 0 -thresh 0.25 dog.jpg -ext_output

2.帶GPU版本 MX150+vs2017+tensorflow-gpu1.14.0+cuda10.0+cudnn7.4

官方支持搭配如下

https://tensorflow.google.cn/install/source_windows

判斷自己的機器

  • 首先打開NVIDIA控制面板(我的電腦找不到,我自己又重新安裝了)

  • 查看--系統信息

  • 查看自己電腦的驅動版本,我這里是442.50,說明我可以安裝CUDA 10.2.89及以下的版本。

兼容性參考來源:

https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html

2.1安裝cuda

https://developer.nvidia.com/cuda-zone

在這里我選擇了10.0版本的,安裝完成后將以下路徑加入環境變量

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\extras\CUPTI\libx64

2.2安裝cudnn

https://developer.nvidia.com/cudnn

下載完成后解壓,得到壓縮包里的cuda文件

將bin文件夾所在目錄加入環境變量,我這里是:

D:\config\cudnn7.4\cuda\bin

ps:后續在編譯的時候若有提示說找不到"cudnn.h"則可以選擇把三個文件夾下的文件復制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0對應的三個文件夾中,(路徑中的v10.0基於每個人選擇的版本不同),就不會報錯了。

測試一下,成功

import tensorflow as tf
#Creates a graph.
a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
c = tf.matmul(a, b)
#Creates a session with log_device_placement set to True.
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
#Runs the op.
print(sess.run(c))

從打印出來的日志我們可以判斷出使用了gpu。

2.3安裝darknet

接下來繼續我們的yolo

下載darknet的步驟同無GPU版本,這里不再贅述。

  • 如果是cuda 10.0版本就不需要修改了,如果是其他版本需要進入\darknet-master\build\darknet,修改如下圖所示的文件。

用關鍵詞搜索,修改成當前所用的對應版本,一共可以找到兩處。

  • 確認C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\v140\BuildCustomizations中是否有自己當前版本的CUDA

如果沒有的話可以參考https://zhuanlan.zhihu.com/p/45845454中敘述的步驟進行

2.4調試

  • 用vs2017打開darknet文件夾下的darknet.sln

配置opecv環境,可以參考這篇文章,主要就是添加環境變量、引入頭文件等

https://note.youdao.com/ynoteshare1/index.html?id=04fb326760a726f23cbd9ae8ff6b1fc6&type=note#/

並在debug x64下運行

  • 如果一切順利,很快你會x64文件夾下看到生成的darknet.exe

  • 按照無GPU版本的步驟下好yolov3.weight3

2.5運行!

在darknet.exe下打開命令行,輸入命令

darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg

不出意外可以看到結果predictions.jpg

參考來源:

https://zhuanlan.zhihu.com/p/107683614?utm_source=qq&utm_medium=social&utm_oi=606170806108164096

https://zhuanlan.zhihu.com/p/45845454

后話:總之麻煩還是麻煩,不如ubuntu~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM