---
# System prepended metadata

title: YoloV8 Install guide

---

## YOLOv8 安裝指南

**01_安裝CUDA**
1. 查詢電腦顯示卡支援的CUDA版本
到Nvidia控制面板-->系統資訊(左下角)
-->元素  看NCVUDA64.DLL為CUDA 多少，以此圖為例，顯示卡最高可以相容的版本到CUDA 12.4.89 

![image](https://hackmd.io/_uploads/S1zrufSlA.png)


2. 查詢Pytorch與cuDNN版本
先查看pytorch以及cuDNN的版本支持
* Pytorch：
https://pytorch.org/
* cuDNN：https://developer.nvidia.com/rdp/cudnn-archive

以此圖為例，Pytorch 安裝的選項中,目前最新可以支援CUDA 11.8 / 12.1 兩個版本 

![image](https://hackmd.io/_uploads/ryyJKGBeR.png)

而cuDNN可以支援CUDA 11代以及12代的版本

![image](https://hackmd.io/_uploads/rJIQjfSl0.png)

知道資訊後可以開始比對出我們可以使用出的最新版本

> 顯示卡最高:CUDA12.4
> pytorch:最新為11.8 或 12.1
> cuDNN:可以支援CUDA 11代以及12代

得出我們目前可以使用的最新CUDA版本為12.1版


3. 下載CUDA
到官網下載上述選擇的CUDA版本，在這邊我是選擇12.1版本。
https://developer.nvidia.com/cuda-toolkit-archive
如圖,這邊選擇相應的選項(Installer type 選擇local)，即可下載。

![image](https://hackmd.io/_uploads/B1S23zSxA.png)


4. 安裝CUDA

![image](https://hackmd.io/_uploads/Syyn0MBlC.png)

取消Visual Studio Interattion這個選項

![image](https://hackmd.io/_uploads/Syvp0fBxC.png)

確認後安裝

5. 確認是否安裝成功

打開cmd，執行
```
nvcc -V
```

![image](https://hackmd.io/_uploads/B1L_1XSeA.png)

顯示這些表示安裝成功


**02_安裝cuDNN**
1. 下載cuDNN 

下載可以兼容的cuDNN版本(需登入網站)
![image](https://hackmd.io/_uploads/HylTJ7Hg0.png)

2. 安裝cuDNN

下載會是一個壓縮檔，解壓縮後，複製其中的資料夾
然後貼到CUDA的安裝目錄下，即完成安裝。

![image](https://hackmd.io/_uploads/BJqulQrgC.png)

![image](https://hackmd.io/_uploads/SJq5lmHgA.png)

4. 確認是否安裝成功

打開cmd並cd到CUDA內的demo_suite資料夾

```
cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\extras\demo_suite
```
執行 bandwidthTest.exe

```
bandwidthTest.exe
```
![image](https://hackmd.io/_uploads/Sk9GbXBe0.png)

顯示PASS

再輸入
```
deviceQuery.exe
```
![image](https://hackmd.io/_uploads/r1MwZQSeA.png)

紅框出現顯卡型號以及PASS
表示已安裝成功

**03_Pytorch安裝**
1. 下載torch

以miniconda為例，先在miniconda建立一個python環境，接著到pytorch官網，選擇選項後，直接複製下方command,並且執行 即可安裝

```
#conda 創立環境範例,--name後面放自己的環境名稱,python版本自行修改

conda create --name yolo8 python=3.12

#創立後,啟用環境

conda activate yolo8
```
建立好環境後,我在conda內執行下方command

![image](https://hackmd.io/_uploads/HJLfMXrlC.png)

```
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
```

開始安裝,結束出現done表示完成

> 可能遇到的問題-->pip版本要更新


# 安裝YOLOv8
在建置好的環境中,執行

```
pip install ultralytics
```

即安裝完成

# 簡單測試YOLOv8 Object detection功能

要到yolov8 github 下載預訓練模型
https://github.com/ultralytics/ultralytics

![image](https://hackmd.io/_uploads/Byr9r7SlA.png)

並且下面model=YOLO(yolov8n.pt"),裡面要擺預訓練模型檔案的路徑

接著執行以下程式，可以用預設電腦攝像頭開啟影像辨識。

```
from ultralytics import YOLO
import cv2


# Load a model
model = YOLO('yolov8n.pt')  # load a pretrained model (recommended for training)
# Predict with the model
results = model.predict(source=0,show=True,) 
#print(results)

```



整體安裝錯誤可能出現之問題：
> CUDA和cuDNN版本不相容
> CUDA和Pytorch版本不相容
> cuDNN和Pytorch版本不相容
> 顯示卡不支持CUDA的版本。

*Author:Mi-Chi Wang*

