前言
上一篇我已經介紹了利用yolov3預訓練權重文件(只包含卷積層)並訓練
只需要進行如下編譯:
./darknet detector train cfg/voc.data cfg/yolov3.cfg darknet53.conv.74
同時會在backup文件夾下生成對應weights文件(文件會隨着時間遞增不斷的更新),如下所示:
可執行如下代碼:
./darknet detector train cfg/voc.data cfg/yolov3.cfg yolov3_1700.weights
這里注意要把yolov3-1700.weights文件放在darknet文件夾下
1.修改參數文件(../darknet/cfg/yolov3.cfg)
2.執行如下命令
./darknet detector test cfg/voc.data cfg/yolov3.cfg backup/yolov3_300.weights -thresh 0.1
說明:1.把權重名字修改;2.YOLOv3默認閾值為0.25,-thresh 0是設置閾值,設為0的話可以顯示出所有檢測結果;3.運行完直接會讓你輸入 Enter Image Path:
3. 訓練過程參數的意義
Region xx: cfg文件中yolo-layer的索引; Avg IOU:當前迭代中,預測的box與標注的box的平均交並比,越大越好,期望數值為1; Class: 標注物體的分類准確率,越大越好,期望數值為1; obj: 越大越好,期望數值為1; No obj: 越小越好; .5R: 以IOU=0.5為閾值時候的recall; recall = 檢出的正樣本/實際的正樣本 0.75R: 以IOU=0.75為閾值時候的recall; count:正樣本數目。
參考博客: