Windows 10 安裝 PyTorch 開發環境,以及驗證 YOLOv8
最近搞了一臺Windows機器,準備在上面安裝深度學習的開發環境,并搭建部署YOLOv8做訓練和測試使用;
環境:
OS: Windows 10
顯卡: RTX 3090
安裝 NVIDIA 驅動
根據顯卡型號找到對應的驅動進行安裝
GeForce? 驅動程序
驗證
在終端中輸入: nvidia-smi
查看是否正確安裝
PS F:\workspace\notebook> nvidia-smi
Tue Aug 15 09:23:21 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 528.24 Driver Version: 528.24 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... WDDM | 00000000:01:00.0 On | N/A |
| 30% 38C P8 19W / 350W | 782MiB / 24576MiB | 4% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------++-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 1620 C+G C:\Windows\System32\dwm.exe N/A |
| 0 N/A N/A 1908 C+G ...ge\Application\msedge.exe N/A |
安裝 Visual Studio 2019 Community
安裝 VS2019 Visual Studio Community 2019
驗證
安裝 Git, CMake, Anaconda
安裝 git,
tortoisegit 可以看文件狀態
安裝 cmake, 跨平臺編譯時使用;
安裝 Anaconda,集成了很多 python
開發環境
驗證
下載并安裝 OpenCV
OpenCV 下載地址
VC版本號 | VS對應版本 |
---|---|
vc6 | VC6.0 |
vc7 | VS2002 |
vc7.1 | VS2003 |
vc8 | VS2005 |
vc9 | VS2008 |
vc10 | VS2010 |
vc11 | VS2012 |
vc12 | VS2013 |
vc13 | VS2014 |
vc14 | VS2015 |
vc15 | VS2017 |
vc16 | VS2019 |
既然上面安裝的是 VS 2019, 那么我們就安裝 VC16 版本的 OpenCV, 省得自己編譯了;
解壓安裝后,將 build
目錄下的 x64\vc16\bin
添加到環境變量中。
安裝 CUDA 和 CUDNN
這里有些人可能不知道需要安裝什么版本的 cuda。因為我這里的 GPU 是 N卡 3090 還是比較好的,所以可以安裝比較高階版本的軟件,但是也不能太新,我這里直接參考 PyTorch 里最新版本的框架依賴哪個?
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-MNJC1PNc-1692070277630)(image.png)]
好了,那就安裝 CUDA 11.8 和對應的 CUDNN 8 ;
cuda11.8-exe_local-3GB
cudnn 下載對應版本
注意: cudnn 要注冊賬號
解壓后,將 cudnn 文件夾下的所有文件夾復制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\
目錄下。
驗證
(base) D:\>nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Wed_Sep_21_10:41:10_Pacific_Daylight_Time_2022
Cuda compilation tools, release 11.8, V11.8.89
Build cuda_11.8.r11.8/compiler.31833905_0
進入到安裝目錄 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\extras\demo_suite
, 運行 .\deviceQuery.exe
安裝 PyTorch
PyTorch
conda 安裝
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
pip 安裝
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
驗證
(base) D:\>python
Python 3.11.4 | packaged by Anaconda, Inc. | (main, Jul 5 2023, 13:38:37) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> print(torch.__version__)
2.0.1
>>> torch.cuda.is_available()
True
>>>
ultralytics/YOLOv8
創建虛擬環境
conda create --name yolov8 --clone base
激活虛擬環境
conda activate yolov8
安裝
pip install ultralytics
代碼 https://github.com/ultralytics/ultralytics
權重 https://github.com/ultralytics/assets/releases
驗證
yolo predict model=yolov8n.pt imgsz=640 conf=0.25
(yolov8) F:\workspace\yolov8>yolo predict model=yolov8n.pt imgsz=640 conf=0.25
WARNING 'source' is missing. Using default 'source=D:\anaconda3\envs\yolov8\Lib\site-packages\ultralytics\assets'.
Ultralytics YOLOv8.0.154 Python-3.11.4 torch-2.0.1 CUDA:0 (NVIDIA GeForce RTX 3090, 24576MiB)
YOLOv8n summary (fused): 168 layers, 3151904 parameters, 0 gradientsimage 1/2 D:\anaconda3\envs\yolov8\Lib\site-packages\ultralytics\assets\bus.jpg: 640x480 4 persons, 1 bus, 1 stop sign, 160.2ms
image 2/2 D:\anaconda3\envs\yolov8\Lib\site-packages\ultralytics\assets\zidane.jpg: 384x640 2 persons, 1 tie, 154.0ms
Speed: 41.6ms preprocess, 157.1ms inference, 72.6ms postprocess per image at shape (1, 3, 384, 640)
Results saved to runs\detect\predict
【參考】
Windows 安裝 CUDA/cuDNN
驗證pytorch是否為GPU版本
YOLOv8環境搭建(Windows11)
YOLOv8 從環境搭建到推理訓練
Ultralytics YOLOv8 Docs-Quickstart
Anaconda 創建,復制,移植,刪除環境