yolov5部署以及训练10种中药材分类数据集
記錄以下我使用yolov5來訓練自己數據集的過程以及遇到的坑~~~
首先要部署yolov5的環境
首先去github上下載yolov5直達
安裝依賴包
編譯環境我是用的是anaconda 創建的虛擬環境,方便管理,如何創建虛擬環境就不細講了。創建好之后根據yolov5中的requirment.txt安裝它需要的依賴包。
方式一:之前第一次配置環境的時候,用的是pycharm來安裝依賴,有幾個包一直報錯,還是通過pip install 包.whl的方式安裝上的,特別是coco。
方式二:后來換了電腦,直接在anaconda prompt中通過pip就很順利的就裝好了。
還是推薦方式二安裝依賴包,方便又好管理。
測試yolov5
進入anaconda的虛擬環境,進入到yolov5的路徑下,執行:
python detect.py --source 0--source 0 表示是用電腦的攝像頭,采集視頻。如果不想采集視頻,可以不加上source,直接使用\data\images文件下的測試圖片不管是圖片還是視頻,測試的結果會保存在yolov5項目中\runs\detect\exp文件夾下。
這樣yolov5就部署好了,可以訓練自己的數據集了。
準備訓練集
yolov5的數據集的形式有很多種,我才用的是
圖片與標簽分開存放在不同的文件夾下,目錄如下:
images中存放的是訓練和驗證的圖片,labels中存放的是標簽。之前存放圖片的文件夾名稱為img,在訓練的時候老是報錯not found labels,改成images就好了。
標簽和圖片是根據圖片名稱來對應的。
打標簽用的是LabelImg,使用的方法就不介紹了,記得使用YOLO的標簽格式
更改程序
一:將data/coco128.yaml文件更改三個地方:
1.train/val 的路徑 更改為自己的圖片的存放地址,標簽的地址可以自動推斷出來
2.nc 更改分類數目
3.names 更改分類名稱
下面是根據我的數據集更改過后的文件
二:根據在train.py當中要使用的權重文件,比如更改yolo5s.yaml文件,這里只需要更改nc就可以了
下面是更過后的文件,只更改了nc
訓練模型
有了數據集可以開始訓練了
進入虛擬環境,進入yolov5的目錄,執行:
--device 0表示使用gpu0來訓練模型,如果沒有gpu的話,不用加上 device,默認是cpu。
正常訓練結束如下圖,會產生兩個模型文件best.pt和last.pt,保存在\runs\train\exp\weights文件夾下。
報錯
在訓練的時候報錯說:OSError: [WinError 1455] 頁面文件太小,無法完成操作,這是內存太小,更改虛擬內存的頁面大小,可以解決。
測試自己的模型
首先要更改train.py文件中的模型
測試模型還是使用detect.py文件,首先要更改使用的權重文件,把原來的yolov5s.pt更改為剛剛訓練保存的last.pt或者best.pt文件。
更改之后可以使用跟之前一樣的命令來測試。保存結果的目錄和之前一樣。
python detect.py --source 0總結
以上是生活随笔為你收集整理的yolov5部署以及训练10种中药材分类数据集的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 东油ical-ics日历课程
- 下一篇: 为什么我的物联网创业失败?看看这五个原因