1.下載源碼
Github鏈接(感謝caimingxie)
源碼下載後解壓,用Pycharm打開工程,配置虛擬環境,選擇和Keras-yolo3的環境(一致的)
2.修改源碼
- check_weight.py 修改三個文件路徑,路徑根據文件的實際位置來確定。從keras-yolo工程中拷貝過來,再修改路徑
if __name__ == '__main__':
model_path = "./yolov3_tiny1.h5" # keras yolov3 h5 model file 權重路徑
config_path = 'yolov3-tiny.cfg' # .cfg 模型配置文件
weight_file = open('yolov3_tiny1.weights', 'wb') # darknet yolov3 weights 文件保存位置
yoloobj = YOLO(model_path)
model = yoloobj.yolo_model
_main()
3.文件檢查
- voc_classes.txt中是訓練的模型的物體類別名稱。注意不能有有空行,有的話要刪除
- yolo_anchor.txt也是根據keras-yolo3中的先驗框來確定的。例如我這邊是yolo-tiny模型,就把原先的9個框替換爲了我自己的6個框
- 模型的配置文件.cfg要和訓練出來的模型一致,注意需要修改的地方,例如圖像尺寸,濾波器個數,訓練時物體種類的個數。根據實際情況來,我需要的是yolo3-tiny.cfg文件。
- 反正要保證涉及到的文件的路徑和內容正確。包括h5模型文件,cfg模型配置文件,yolo_anchors文件,voc_class文件
3.運行h5_to_weights.py文件
得到weights權重文件