YOLO 實作 Code

littlemilk
數據領航員
Published in
Sep 5, 2022

作者:https://medium.com/@07170601

本範例引用自網路程式碼,模型為YOLO V2,基於TensorFlow 2。

YOLO的訓練所需計算量相較於基礎的基於MLP的MNIST,擴大了很多。如果不用Colab的GPU加速環境,在本地訓練就需要額外的計算環境。對於擁有NVIDIA獨立顯示卡的電腦,我們可以在上面安裝CUDA、CuDNN和tensorflow-gpu來加速運算。對於M1系列的Mac,在MLP-1這篇文章中的環境搭建方法仍然有效,可以順利對後文的程式碼進行加速。

首先,我們需要在網路上搜尋CUDA 11.0和CuDNN 8。我們需要切記一點:CUDA和CuDNN的版本其實是需要嚴格對應的。由於我們使用TensorFlow 2,且TensorFlow的版本已經到達2.8,CUDA 11.0和CuDNN 8.1是一個已經經過驗證的組合。CuDNN的下載需要注冊NVIDIA的賬戶。

CuDNN 8.3也可以搭配CUDA 11.0使用;其實只要做到描述中有相應版本即可
最終從NVIDIA網站上下載的結果

首先安裝CUDA。可以不安裝驅動和NVIDIA GeForce Experience。

安裝可以不需要更改位置;早期需要手動設定環境變數,現在安裝程式已經可自動設定了

安裝完CUDA,就需要把CuDNN的文件放到合適的位置。這個位置就在Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0,CUDA根目錄中。CuDNN的壓縮檔中有一個cuda資料夾,進入之後有bin、include、lib這三個資料夾。CUDA根目錄中也有這三個資料夾。我們要做的其實就是把CuDNN壓縮檔中同樣目錄層級的文件放入CUDA根目錄中的相同位置。做完這一步,就可以重開電腦作業系統。一般情況下,TensorFlow的GPU加速環境就搭建完畢。

我們只需要確保tensorflow是GPU版本的即可。如果不是,可以先執行pip uninstall tensorflow,再執行pip install tensorflow-gpu即可。如果沒有GPU可用,tensorflow-gpu可以調用CPU進行計算。以上都是Windows用戶搭建環境的指引。

在執行本次程式之前,我們還需要安裝兩個包:

pip install opencv-python
pip install imgaug

本次程式碼請移步github

提示:需要在根目錄新增一個名叫weights的資料夾,放入yolov2的預訓練權重文件。

--

--

littlemilk
數據領航員

東吳大學資料科學系|Machine Learning & Full Stack|數據領航員🖊深度學習|喜歡學習所有對生活有幫助的科技知識,追求用科技感動人心的時刻| Github : littlemilkwu & ✉️ : leowu0819@gmail.com