使用終端訓練YOLOv5模型報錯,原命令為:
“python train.py --img 640 --batch 1 --epochs 25 --data "C:\Users\GRT\PycharmProjects\yolov5-7.0\animal_training\dataset.yaml
" --weights “C:\Users\GRT\PycharmProjects\yolov5-7.0\MyFunction\yolov5s.pt” --device 0
問題點:
“C:\Users\GRT\PycharmProjects\yolov5-7.0\MyFunction\yolov5s.pt”這一行代碼帶有雙引號
解決方法:
把雙引號去掉就可以了
C:\Users\GRT\PycharmProjects\yolov5-7.0\MyFunction\yolov5s.pt
完整指令代碼:
“python train.py --img 640 --batch 1 --epochs 25 --data "C:\Users\GRT\PycharmProjects\yolov5-7.0\animal_training\dataset.yaml
" --weights C:\Users\GRT\PycharmProjects\yolov5-7.0\MyFunction\yolov5s.pt --device 0
疑問
在沒有添加"–device 0"的時候,使用cpu訓練帶雙引號是沒問題的,但加上了”–device 0“ 這一代碼之后使用cuda訓練就報這個錯誤,在網上也有看到有的人說把單引號改成雙引號,有的說把雙引號改成單引號,我都試了,最后把所有引號都去掉就可以正常運行,所以遇到這個問題,見仁見智吧
后續
把“–device 0" 位置調整一下就不會出現心上錯誤
“python train.py --img 640 --batch 1 --epochs 25 --device 0 --data “C:\Users\GRT\PycharmProjects\yolov5-7.0\animal_training\dataset.yaml” --weights “C:\Users\GRT\PycharmProjects\yolov5-7.0\MyFunction\yolov5s.pt”
代碼這樣寫不會報錯!