【CV】一文看懂目标检测神器YOLO5
? 磐創(chuàng)AI出品??
該庫代表Ultralytics對未來對象檢測方法的開源研究,并結(jié)合了以前的YOLO庫https://github.com/ultralytics/yolov3在自定義數(shù)據(jù)集上訓(xùn)練了數(shù)千個模型而得到的最佳實踐。所有代碼和模型都在積極的開發(fā)中,如有修改或刪除,恕不另行通知。如果使用,風(fēng)險自負(fù)。
GPU速度測量:使用V100的GPU在超過5000張COCO val2017圖像上測量批處理大小為8的平均每張圖像的端到端時間,包括圖像預(yù)處理,PyTorch FP16推斷,后處理和NMS。「2020年6月22日」:PANet(https://arxiv.org/abs/1803.01534)更新:新的特性,更少的參數(shù),更快的推理和改進(jìn)的mAP 364fcfd(https://github.com/ultralytics/yolov5/commit/364fcfd7dba53f46edd4f04c037a039c0a287972)。
「2020年6月19日」:FP16(https://pytorch.org/docs/stable/nn.html#torch.nn.Module.half)作為新的默認(rèn)設(shè)置,可用于更小的檢查點(diǎn)和更快的推斷d4c6674(https://github.com/ultralytics/yolov5/commit/d4c6674c98e19df4c40e33a777610a18d1961145)。
「2020年6月9日」:CSP(https://github.com/WongKinYiu/CrossStagePartialNetworks)更新:改進(jìn)了速度,大小和準(zhǔn)確性(歸功于@WongKinYiu)。
「2020年5月27日」:公開發(fā)布庫。YOLOv5模型是所有已知YOLO實現(xiàn)中最先進(jìn)(SOTA)的。
「2020年4月1日」:未來開始發(fā)展基于YOLOv3(https://github.com/ultralytics/yolov3) / YOLOv4(https://github.com/AlexeyAB/darknet)的一系列PyTorch模型。
預(yù)訓(xùn)練的檢查點(diǎn)(checkpoints)
| YOLOv5s | 36.6 | 36.6 | 55.8 | 「2.1ms」 | 「476」 | 7.5M | 13.2B | |
| YOLOv5m | 43.4 | 43.4 | 62.4 | 3.0ms | 333 | 21.8M | 39.4B | |
| YOLOv5l | 46.6 | 46.7 | 65.4 | 3.9ms | 256 | 47.8M | 88.1B | |
| YOLOv5x | 「48.4」 | 「48.4」 | 「66.9」 | 6.1ms | 164 | 89.0M | 166.4B | |
| YOLOv3-SPP | 45.6 | 45.5 | 65.2 | 4.5ms | 222 | 63.0M | 118.0B |
AP測試表示COCOtest-dev2017(http://cocodataset.org/#upload)服務(wù)器結(jié)果,表中所有其他AP結(jié)果表示val2017準(zhǔn)確性。所有AP編號均適用于單模型單尺度,而沒有集成或測試時間增加。通過python test.py --img 736 --conf 0.001進(jìn)行使用。速度GPU測量:進(jìn)行再現(xiàn)使用一個V100的GPU和一個GCPn1-standard-16)(https://cloud.google.com/compute/docs/machine-types#n1_standard_machine_types)實例在超過5000張COCO val2017圖像上測量每張圖像的端到端時間,包括圖像預(yù)處理,PyTorch FP16圖像推斷(批量大小 32 --img-size 640),后處理和NMS。此圖表中包括的平均NMS時間為1-2ms / img。通過python test.py --img 640 --conf 0.1進(jìn)行測試。**所有檢查點(diǎn)均使用默認(rèn)的設(shè)置和超參數(shù)訓(xùn)練到300個epochs(無自動增強(qiáng))。
要求
Python 3.7或更高版本,安裝了requirements.txt要求的所有的庫和torch >= 1.5,運(yùn)行下面命令進(jìn)行安裝:
$?pip?install?-U?-r?requirements.txt教程
Notebook(https://github.com/ultralytics/yolov5/blob/master/tutorial.ipynb)
Kaggle(https://www.kaggle.com/ultralytics/yolov5-tutorial)
Train Custom Data(https://github.com/ultralytics/yolov5/wiki/Train-Custom-Data)
PyTorch Hub(https://github.com/ultralytics/yolov5/issues/36)
ONNX and TorchScript Export(https://github.com/ultralytics/yolov5/issues/251)
Test-Time Augmentation (TTA)(https://github.com/ultralytics/yolov5/issues/303)
Google Cloud Quickstart(https://github.com/ultralytics/yolov5/wiki/GCP-Quickstart)
Docker Quickstart(https://github.com/ultralytics/yolov5/wiki/Docker-Quickstart)
推斷
可以在大多數(shù)常見的媒體格式上進(jìn)行推斷。模型檢查點(diǎn)(https://drive.google.com/open?id=1Drs_Aiu7xx6S-ix95f9kNsA6ueKRpN2J)(在網(wǎng)上如果有對應(yīng)的檢查點(diǎn)的話)會自動下載。結(jié)果保存到./inference/output。
$?python?detect.py?--source?file.jpg??#?image?file.mp4??#?video./dir??#?directory0??#?webcamrtsp://170.93.143.139/rtplive/470011e600ef003a004ee33696235daa??#?rtsp?streamhttp://112.50.243.8/PLTV/88888888/224/3221225900/1.m3u8??#?http?stream要對./inference/images文件夾中的示例進(jìn)行推斷,請執(zhí)行以下操作:
$?python?detect.py?--source?./inference/images/?--weights?yolov5s.pt?--conf?0.4Namespace(agnostic_nms=False,?augment=False,?classes=None,?conf_thres=0.4,?device='',?fourcc='mp4v',?half=False,?img_size=640,?iou_thres=0.5,?output='inference/output',?save_txt=False,?source='./inference/images/',?view_img=False,?weights='yolov5s.pt') Using?CUDA?device0?_CudaDeviceProperties(name='Tesla?P100-PCIE-16GB',?total_memory=16280MB)Downloading?https://drive.google.com/uc?export=download&id=1R5T6rIyy3lLwgFXNms8whc-387H0tMQO?as?yolov5s.pt...?Done?(2.6s)image?1/2?inference/images/bus.jpg:?640x512?3?persons,?1?buss,?Done.?(0.009s) image?2/2?inference/images/zidane.jpg:?384x640?2?persons,?2?ties,?Done.?(0.009s) Results?saved?to?/content/yolov5/inference/output復(fù)現(xiàn)我們的訓(xùn)練
下載COCO(https://github.com/ultralytics/yolov5/blob/master/data/get_coco2017.sh),安裝Apex(https://github.com/NVIDIA/apex)并在運(yùn)行下面命令。在一臺有V100的GPU上,YOLOv5s / m / l / x的訓(xùn)練時間為2/4/6/8天(多個GPU的訓(xùn)練速度更快)。使用您的GPU允許的最大--batch-size容量(下面的batchsize是為16 GB設(shè)備而設(shè)置的)。
$?python?train.py?--data?coco.yaml?--cfg?yolov5s.yaml?--weights?''?--batch-size?64yolov5m????????????????????????????????48yolov5l????????????????????????????????32yolov5x????????????????????????????????16復(fù)現(xiàn)我們的環(huán)境
要訪問最新的工作環(huán)境(已預(yù)安裝所有庫,包括CUDA / CUDNN,Python和PyTorch),請考慮以下網(wǎng)站:
「Google Cloud」 深度學(xué)習(xí)VM,提供$300的免費(fèi)贈金:請參閱我們的GCP快速入門指南(https://github.com/ultralytics/yolov5/wiki/GCP-Quickstart)
「Google Colab Notebook」 具有12小時的免費(fèi)GPU時間。
「Docker Image」 https://hub.docker.com/r/ultralytics/yolov5
請參閱Docker快速入門指南(https://github.com/ultralytics/yolov5/wiki/Docker-Quickstart)
引用
關(guān)于我們
Ultralytics是一家總部位于美國的粒子物理學(xué)和AI初創(chuàng)公司,擁有超過6年的專業(yè)知識,可為政府,學(xué)術(shù)和商業(yè)客戶提供支持。我們可以提供廣泛的計算機(jī)視覺AI服務(wù),從簡單的專家建議到交付完全定制的端到端生產(chǎn)解決方案,包括:
「基于云的AI」系統(tǒng)可「實時」處理「數(shù)百個高清視頻流?!?/strong>
「Edge AI」已集成到自定義iOS和Android應(yīng)用程序中,可實時進(jìn)行「30 FPS視頻推斷?!?/strong>
「自定義數(shù)據(jù)訓(xùn)練」,超參數(shù)設(shè)置和可以把模型導(dǎo)出到任何地方。
有關(guān)業(yè)務(wù)查詢和專業(yè)支持的相關(guān)請求,請訪問https://www.ultralytics.com。
聯(lián)系
有問題(issue)可以直接在庫中提出。對于業(yè)務(wù)查詢或?qū)I(yè)支持的相關(guān)請求,請訪問https://www.ultralytics.com或email Glenn Jocher, glenn.jocher@ultralytics.com。
原文鏈接:https://github.com/ultralytics/yolov5
往期精彩回顧適合初學(xué)者入門人工智能的路線及資料下載機(jī)器學(xué)習(xí)及深度學(xué)習(xí)筆記等資料打印機(jī)器學(xué)習(xí)在線手冊深度學(xué)習(xí)筆記專輯《統(tǒng)計學(xué)習(xí)方法》的代碼復(fù)現(xiàn)專輯 AI基礎(chǔ)下載機(jī)器學(xué)習(xí)的數(shù)學(xué)基礎(chǔ)專輯獲取一折本站知識星球優(yōu)惠券,復(fù)制鏈接直接打開:https://t.zsxq.com/yFQV7am本站qq群1003271085。加入微信群請掃碼進(jìn)群: 與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的【CV】一文看懂目标检测神器YOLO5的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【深度学习】深度学习语义分割理论与实战指
- 下一篇: 【CV】54篇最新CV领域综述论文速递!