YOLOv5 是一系列在 COCO 数据集
上预训练的对象检测架构和模型,代表Ultralytics 对未来视觉 AI 方法的开源研究,结合了在数千小时的研究和开发中获得的经验教训和最佳实践。
文档
有关训练、测试和部署的完整文档,请参阅YOLOv5 文档。
快速入门示例
- 安装
Python>=3.6.0需要安装所有 requirements.txt包括 PyTorch>=1.7:
$ git clone https://github.com/ultralytics/yolov5
$ cd yolov5
$ pip install -r requirements.txt
- 推理
推理可以直接从 PyTorch Hub 运行,而无需克隆存储库。必要的文件将下载到您的临时目录中。使用 YOLOv5 和PyTorch Hub 进行推理。模型会自动从latest YOLOv5 release下载。
import torch
# Model
model = torch.hub.load('ultralytics/yolov5', 'yolov5s') # or yolov5m, yolov5l, yolov5x, custom
# Images
img = 'https://ultralytics.com/images/zidane.jpg' # or file, Path, PIL, OpenCV, numpy, list
# Inference
results = model(img)
# Results
results.print() # or .show(), .save(), .crop(), .pandas(), etc.
- 使用detect.py进行推理
detect.py
在各种来源上运行推理,自动从最新的 YOLOv5 版本下载模型并将结果保存到runs/detect
.
$ python detect.py --source 0 # webcam
file.jpg # image
file.mp4 # video
path/ # directory
path/*.jpg # glob
'https://youtu.be/NUsoVlDFqZg' # YouTube video
'rtsp:/ /example.com/media.mp4' # RTSP、RTMP、HTTP stream
将 OPTION 替换为您的选择,以检测:
- 网络摄像头:(OPTION = 0)用于从您连接的网络摄像头检测活动物体
- Image : (OPTION =filename.jpg)使用对象检测覆盖创建图像的副本
- 视频: (OPTION = filename.mp4)使用对象检测覆盖创建视频副本
- 目录:(OPTION = directory_name/)使用对象检测覆盖创建所有文件的副本
- 全局文件类型(OPTION =directory_name/*.jpg)使用对象检测覆盖创建所有文件的副本
- RTSP 流:(OPTION = rtsp://170.93.143.139/rtplive/470011e600ef003a004ee33696235daa)用于从流中检测活动对象
RTMP 流:(OPTION = rtmp://192.168.1.105/live/test)用于从流中检测活动对象
HTTP流:(OPTION =
http://112.50.243.8/PLTV/88888888/224/3221225900/1.m3u8)用于从流中检测活动物体
目前支持以下文件格式:
- 图片: bmp、jpg、jpeg、png、tif、tiff、dng、webp、mpo
- 视频: mov、avi、mp4、mpg、mpeg、m4v、wmv、mkv
- 训练
运行以下命令以在COCO数据集上重现结果(首次使用时自动下载数据集)。在单个 V100 上,YOLOv5s/m/l/x 的训练时间为 2/4/6/8 天(多 GPU 速度更快)。使用–batch-size您的 GPU 允许的最大尺寸(显示 16 GB 设备的批次大小)。
$ python train.py --data coco.yaml --cfg yolov5s.yaml --weights ' ' --batch-size 64
yolov5m 40
yolov5l 24
yolov5x 16
- 教程
训练自定义数据
获得最佳训练效果的提示
权重和偏差记录
监督生态系统
多 GPU 训练
PyTorch 中心
TorchScript、ONNX、CoreML 导出
测试时间增加 (TTA)
模型集成
模型修剪/稀疏性
超参数演化
使用冻结层进行迁移学习
TensorRT 部署
为什么是 YOLOv5
YOLOv5-P5 640
- GPU 速度使用批大小为 32 的 V100 GPU 测量每张图像的平均端到端时间超过 5000 张 COCO val2017 图像,包括图像预处理、PyTorch FP16 推理、后处理和 NMS。
- 来自google/automl批量大小为 8 的EfficientDet 数据。
- 重现通过
python val.py --task study --data coco.yaml --iou 0.7 --weights yolov5s6.pt yolov5m6.pt yolov5l6.pt yolov5x6.pt