YOLOv3
搭配 MicrosoftCOCO
物件偵測80分類,做為預設訓練資料集。
如何收集(取樣)
標註
、訓練資料
及進行最後的推論,就能顯得非常重要,辨識完整的工作流程:
資料來源: https://makerpro.cc/2019/12/train-your-dataset-with-yolov3/ https://github.com/OmniXRI/OpenVINO_RealSense_HarvestBot/tree/master/my_yolo3
自行設計取景設備
或利用LabelImg
透過現成的照片進行標記
資料來源: https://makerpro.cc/2019/12/train-your-dataset-with-yolov3/
訓練集(train.txt)
、驗證集(val.txt)
、測試集(test.txt)
及訓練加驗證集(trainval.txt)
。VOC2007/ImageSets/Main
下,而各資料集清單檔(*.txt)
即為不含附檔名的影像名稱清單DarkNet
方式或是使用常見的AI框架
(.xml)
內容主要表示物件匡德方式為左上(xmin、ymin)
即右下(xmax、ymax)
座標,和YOLO格式不同,所以要依資料集清單檔(.txt)
,將個別標註檔(*.xml)
轉換成物件編號加上物件框中心座標及尺寸格式後再寫至另一個清單檔。python voc_annotation.py
yolov3.weights
Keras框架
,所以須把下載到的YOLO預訓練權重值轉成Keras格式(*.h5)
,執行convert.py
即可轉換完成並置於\model_data
下,其完整指令如下所示。python convert.py -w yolov3.cfg yolov3.weights model_data/yolo_weights.h5
my_train.py
進行小番茄影像訓練,最終訓練完的結果會存放在/logs/000/trained_weights_final.h5
,若不滿意結果想從這個結果繼續訓練,則可將此權重檔複製到/model_d
下,再將第32列程式修改成weights_path='model_data/trained_weights_final.h5'
即可