準備工作
1. 安裝labelimg
labelimg:主要用于目标檢測的目标框繪制,得到關于我們訓練的邊框位置、類别等資料
pip install labelimg
2. 下載下傳yolov5源碼
我使用的是v7.0版本,直接下載下傳即可,下載下傳後解壓出來
2.1 安裝yolov5運作依賴包
進入到解壓出來的檔案夾,運作此指令:
pip install -r requirements.txt
3.準備資料
一、在yolov5的同級目錄下建立如下圖結構檔案夾,名字最好不要更改
images:儲存的是原圖檔,train檔案夾儲存用于訓練集圖檔,val檔案夾儲存所有的圖檔,test檔案夾用于儲存測試集圖檔。
labels:儲存labelimg轉化出來的yolo txt檔案,train檔案夾儲存訓練集圖檔的yolo資訊,val檔案夾儲存所有的圖檔的yolo資訊,test檔案夾用于儲存測試集圖檔yolo資訊。
4.目标标注
使用labelimg進行目标标注
windows在控制台輸入labeli按下tap鍵可自動補全,回車即可
labelImg.exe
打開以後如下圖:
- open Dir是原圖檔檔案夾路徑:打開第3步中建立的檔案夾images/val
- Change Save Dir是儲存yolo資訊的檔案夾:打開第3步建立的檔案夾labels/val
- 開始目标标注,滑鼠點選Edit>Create RectBox(或者按下鍵盤w鍵也可以)後就可以在圖檔上進行目标标注
- 打開自動儲存, ![在這裡插入圖檔描述](https://img-blog.csdnimg.cn/61443549f37c4a2eb07495866bd7d1e7.png
- 選擇儲存為yolo txt格式 點選切換
- 标注目标以後可以通過按鍵盤a(上一張)或者d(下一張)來切換圖檔,标注的圖檔會自動儲存
5. 分離訓練集和測試集資料
例如在images/val中如下圖檔:
0001.jpg
0002.jpg
0003.jpg
0004.jpg
0005.jpg
0006.jpg
将0001.jpg ~ 0005.jpg複制到images/train檔案夾下;将0006.jpg複制到images/test檔案夾下.
同樣的,也要将轉化後的對應的yolo資訊檔案移動到對應的檔案夾;
将0001.txt ~ 0005.txt複制到labels/train檔案夾下;将0006.txt複制到labels/test檔案夾下.
6.修改源代碼路徑
檢測train.py檔案找到data參數對應的預設檔案:
修改coco128.yaml檔案
nc:表示檢測的類别數量,這裡隻檢測人,隻有1個
names: 表示檢測的類别,這裡隻檢測人
還要修改models檔案夾下的yolov5s.yaml檔案
修改完成以後直接運作指令開始訓練即可
python train.py