ultralytics/yolov5

Ultralytics YOLOv5 in PyTorch for object detection, instance segmentation, classification, training, and export.

What is YOLOv5?

YOLOv5 是由 Ultralytics 開發、基於 PyTorch 的開源電腦視覺模型。它提供快速、準確的物件偵測實例分割影像分類。該儲存庫包含模型程式碼、預訓練權重、訓練腳本以及用於推論、匯出和部署的工具。

Key Capabilities

  • Inference 透過簡單的 Python API (torch.hub.load) 或現成的 detect.py 腳本進行。
  • Training 使用單一指令 (python train.py) 在自定義數據或 COCO 數據集上進行訓練。
  • Model sizes 提供從極小 (yolov5n) 到大型 (yolov5x) 的各種模型大小,以權衡速度與準確度。
  • Export 可匯出至 ONNX, TensorRT, CoreML, TFLite 等格式,用於邊緣端部署。
  • Integrations 與 W&B, Comet, Roboflow, OpenVINO, ClearML, DeepSparse 以及 Ultralytics Platform 整合,用於實驗追蹤和生產線流程。
  • Additional tasks (透過較新的 ultralytics 套件) 包括姿態估計和旋轉邊框偵測。

Quick Start

# Clone and install
git clone https://github.com/ultralytics/yolov5 && cd yolov5
pip install -r requirements.txt   # Python ≥3.8, PyTorch ≥1.8

# Run inference (any image source)
python detect.py --weights yolov5s.pt --source img.jpg

# Train on COCO (example)
python train.py --data coco.yaml --epochs 300 --weights '' \
    --cfg yolov5s.yaml --batch-size 64

或使用 PyTorch‑Hub 捷徑:

import torch
model = torch.hub.load('ultralytics/yolov5', 'yolov5s')
results = model('https://ultralytics.com/images/zidane.jpg')
results.show()

Pre‑trained Models & Performance

Model mAP@0.5‑0.95 Params (M) V100 b1 latency (ms)
yolov5n 28.0 1.9 6.3
yolov5s 37.4 7.2 6.4
yolov5m 45.4 21.2 8.2
yolov5l 49.0 46.5 10.1
yolov5x 50.7 86.7 12.1

該表格(取自 README)顯示了模型大小、準確度與速度之間的權衡。

Documentation & Resources

  • 完整文件:https://docs.ultralytics.com/yolov5
  • 教學:自定義數據訓練、多 GPU 訓練、模型匯出、TTA、集成、剪枝、超參數演化等。
  • 社群:Discord, Forums, Reddit, 以及 Docker 映像檔 (ultralytics/yolov5)。
  • 提供商業用途的企業級授權。

Who Might Use It?

  • 需要易於修改的基準偵測器研究人員。
  • 開發實時視覺應用程式(例如:監控、機器人、無人機)的開發者。
  • 希望擁有具備邊緣端設備匯出流程的即時部署模型團隊。

以上所有資訊皆直接取自儲存庫的 README;未進行額外功能推論。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案