YOLOv5簡介
YOLOv5速度比前代更快,在運行Tesla P100的YOLOv5 Colab筆記本中,每個圖像的推理時間快至0.007秒,意味着每秒140幀(FPS)!
YOLOv5體積小,YOLOv5 s的權重文件爲27MB。YOLOv4(Darknet架構)的權重文件爲244MB。YOLOv5比YOLOv4小近90%。這意味着YOLOv5可以更輕鬆地部署到嵌入式設備。
此外,因爲YOLOv5是在PyTorch中實現的,所以它受益於已建立的PyTorch生態系統;YOLOv5還可以輕鬆地編譯爲ONNX和CoreML,因此這也使得部署到移動設備的過程更加簡單。
名稱 | 發佈公司 | 語言 | 框架 | 所需環境 |
---|---|---|---|---|
YOLOv5 | Ultralytics | python | pytorch | python3.7+ pytorch1.5+ |
以上數據來自——量子位:YOLOv5它來了!YOLOv4發佈不到50天,它帶着推理速度140幀/秒、性能提升2倍來了
官方github鏈接
這個主圖有趣O(∩_∩)O
如何安裝以及訓練自己的數據集
安裝
先下載項目https://github.com/ultralytics/yolov5/archive/master.zip
複製鏈接到迅雷下載比較快
下好了然後解壓
然後到這個目錄下,用控制檯運行pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U -r requirements.txt
,安裝所需的庫
但是發現卡住了,我們手動下載requirements.txt裏的大文件
打開requirements.txt
複製這個鏈接https://github.com/cocodataset/cocoapi.git
打開
有點慢,打開後下載這個
下好後把它解壓,複製到yolov5-master目錄下
然後將requirements.txt裏的這句註釋掉(前面加#),然後保存關閉
然後重新運行
安裝好了,但是報了一個錯誤
我們直接運行pip install -i https://pypi.tuna.tsinghua.edu.cn/simple torch==1.5
但還是報錯
通過PyTorch 《動手學深度學習》學習筆記(Dive-into-DL-Pytorch)查看pytorch的安裝方法
可能是我的python版本太低了
到這https://www.python.org/downloads/windows/下載python,
windows用戶下這個https://www.python.org/ftp/python/3.7.0/python-3.7.0-amd64.exe
雙擊安裝
覆蓋我之前安裝目錄
測試一下,已經安裝成功了
重新運行之前的pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U -r requirements.txt
報了一堆錯誤
看提示似乎要重裝一下numpy
pip uninstall numpy
pip install numpy
太慢了,還是用鏡像源吧
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy
安裝numpy完成
再重新運行pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U -r requirements.txt
好了,但還是pytorch的問題
在這裏https://pytorch.org/看pytorch對應cuda版本,我先看看我的cuda
我是9.0的
貌似我的cuda版本不支持pytorch1.5.0,重新安裝一下cuda
我剛好有cuda10.1的,安裝一下
半個小時安裝好了,cudnn也拷貝到安裝文件夾了,也沒有配置系統變量、環境變量,不會裝的可以看看這個Yolo-v2_ Windows平臺下如何配置darknet-yolov2?(安裝CUDA)
看看版本
重新運行pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U -r requirements.txt
還是這個報錯,手動安裝吧
複製這個然後修改一下,加鏡像源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple torch==1.5.0+cu101 torchvision==0.6.0+cu101 -f https://download.pytorch.org/whl/torch_stable.html
好像不行,還是很慢的
可能需要下載wheel文件安裝
到這裏下這個https://download.pytorch.org/whl/torch_stable.html
迅雷下很快
然後安裝這個wheel文件,參考:python pip如何安裝wheel文件?.whl(pip install [wheel])
pip install "torch-1.5.0+cpu-cp37-cp37m-win_amd64.whl"
裝好了
emmm,好像下錯了。。。貌似應該下這個
裝好了
接下來就可以訓練自己數據集了吧
訓練
1、創建Dataset.yaml文件
這個文件是用來告訴程序你要訓練的圖片以及標註的路徑的
它放在data文件夾下
內容格式如下,主要包含四項,訓練集路徑train,驗證集路徑val,檢測類數目nc,檢測類名names
像我自己因爲只要檢測一個類,我就像下面這樣創建:創建一個記事本,填入以下內容後保存爲.yaml
格式,記得重命名一下(我是跟我的數據集文件夾取同樣的名字)
2、創建存放圖片和標註的目錄
在yolov5或yolov5-master目錄上層創建文件夾,用於下一步存放我們的圖片以及標註:
3、創建標註labels
作者推薦了兩款創建標註的工具,Labelbox or CVAT,不過我自己用的是這款labelImg 使用教程 圖像標定工具
記得生成的標註一定要這種格式的
做好標註後,將圖片和標註放進我們上一步創建的文件夾中:
我這邊有4000張圖片和4000個已經做好的標註,直接按訓練集:測試集=3:1分配到文件夾裏,記得圖片放圖片文件夾,標註放標註文件夾
4、選擇預訓練模型
作者推薦選擇的是yolov5s.yaml
,最小最快的一個
5、正式訓練
先下載預訓練模型,在D:\Dontla_YOLOv5\yolov5-master\weights
路徑下雙擊download_weights.sh
下載預訓練模型
但貌似下不了不知怎麼回事,一點擊窗口就瞬間消失了
用記事本打開
找到這個
在這
用記事本打開,然後直接複製鏈接,用瀏覽器打開
打開後直接點擊要下載的
下好了,放在這個路徑下
打開train.py看看,發現裏面缺少很多庫,要一個一個安裝,推薦使用鏡像源安裝:解決pip安裝時速度慢的問題 鏡像源(pip install -i [鏡像源地址] [包名])
有時還會報其他錯誤,要自己動手解決
參考解決方法:由於找不到msvcp140.dll無法繼續執行代碼
要動我的VS2015,這手術就大了。。。
看來這個YOLO5做得還不是很完善,過段時間再試試??
python train.py --img 640 --batch 16 --epochs 5 --data ./data/my_dataset.yaml --cfg ./models/yolov5s.yaml --weights yolov5s.pt