影像識別之Yolov5訓練自己的模型
文章目錄
- 影像識別之Yolov5訓練自己的模型
- 一、前言
- 二、對影像進行標注
- 三、資料集的劃分
- 四、配置訓練的檔案
- 1、修改yolov5l.yaml組態檔
- 2、修改coco128.yaml組態檔
- 五、開始訓練
- 六、訓練結果呈現
- 1、訓練相關引數
- 2、測驗
- 七、總結
一、前言
上一篇文章講解了如何使用Yolov5的原有的模型進行識別,本文將會介紹使用Yolov5來進行自己的資料集的訓練,
上一篇文章的鏈接是:
https://blog.csdn.net/m0_54218263/article/details/122601330?spm=1001.2014.3001.5501
二、對影像進行標注
首先我們需要獲取資料,這個大家可以根據自己的需要以及資料的要求在不同的資料集中自己選擇下載獲取,這里不必贅述了,在獲取到資料以后需要對資料進行標注,我使用的線上標注平臺式:
https://www.makesense.ai/

我是準備使用貓和狗這兩種動物的圖片進行訓練,最終希望可以準確的識別這兩種動物,
下面,我們就對資料集進行標注:
匯入資料:

進行添加標簽:

手動圈畫空間:
一張圖片可以有多條狗:

一張圖片也可以只有一條狗:

一張圖片可以有多只貓:

一張圖片也可以只有一只貓:

在我們,對所有的圖片完成標注以后,需要匯出標簽:

然后,我們需要對資料集進行歸類:



三、資料集的劃分
將自定義測驗的影像資料和標簽資料集分別 劃分為:訓練集、驗證集、測驗集,,比例根據資料量不同,一般可以為 96%:2%:2%
在上面所示的檔案夾里面放入圖片以及標簽:
這里需要注意的是,標簽與圖片需要一一對應的,


四、配置訓練的檔案
我們需要對訓練的檔案進行配置,這樣才可訓練我們自己的資料,
我們需要對后綴名為yaml的檔案進行修改,從而使得它們滿足我們自己的訓練的需求:
1、修改yolov5l.yaml組態檔
我們在models下面找到yolov5l,因為我是準備使用yolov5l.pt來進行訓練,因此使用這個組態檔來進行修改,這里只需要修改一個位置:

2、修改coco128.yaml組態檔
在這里,我們找到data下面的coco128檔案,復制一份,然后將download注釋掉,修改數目,修改標簽的名稱,然后就修改完成了,

五、開始訓練
python train.py --cfg models/myyolov5l.yaml --data data/mycoco.yaml --weights yolov5l.pt --epoch 150 --batch-size 32
如果不希望有這么高的訓練的精度,可以略微降低:
python train.py --cfg models/myyolov5s.yaml --data data/mycoco.yaml --weights yolov5s.pt --epoch 150 --batch-size 32

接下來就是漫長的訓練程序,

六、訓練結果呈現
1、訓練相關引數
在訓練完成之后會有一些訓練程序或者結果的記錄,這里展示一部分內容:










下面,我們來使用圖片進行測驗,看看訓練的效果怎么樣,
2、測驗
python detect.py --weights runs/train/exp3/weights/best.pt --source data/test/test1.jpg
這是測驗的語法:
python detect.py --weights runs/train/exp3/weights/best.pt --source data/test/test1.jpg


七、總結
以上就是,使用yolov5來訓練自己的資料集的一個案例,希望對大家有幫助,最后,謝謝大家的閱讀與支持,喜歡的話就點個贊,我一定會再接再厲接著加油的呢,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/421678.html
標籤:AI
