## 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*