YoloV5模型检测
关键参数
- weights:训练好的模型文件
- source:检测的目标,可以是单张图片、文件夹、屏幕或者摄像头等
- conf-thres:置信度阈值,越低框越多,越高框越少
- iou-thres:IOU阈值,越低框越少,越少框越多
weights
训练好的模型文件
Model | size (pixels) | mAPval 50-95 | mAPval 50 | Speed CPU b1 (ms) | Speed V100 b1 (ms) | Speed V100 b32 (ms) | params (M) | FLOPs @640 (B) |
---|---|---|---|---|---|---|---|---|
YOLOv5n | 640 | 28.0 | 45.7 | 45 | 6.3 | 0.6 | 1.9 | 4.5 |
YOLOv5s | 640 | 37.4 | 56.8 | 98 | 6.4 | 0.9 | 7.2 | 16.5 |
YOLOv5m | 640 | 45.4 | 64.1 | 224 | 8.2 | 1.7 | 21.2 | 49.0 |
YOLOv5l | 640 | 49.0 | 67.3 | 430 | 10.1 | 2.7 | 46.5 | 109.1 |
YOLOv5x | 640 | 50.7 | 68.9 | 766 | 12.1 | 4.8 | 86.7 | 205.7 |
YOLOv5n6 | 1280 | 36.0 | 54.4 | 153 | 8.1 | 2.1 | 3.2 | 4.6 |
YOLOv5s6 | 1280 | 44.8 | 63.7 | 385 | 8.2 | 3.6 | 12.6 | 16.8 |
YOLOv5m6 | 1280 | 51.3 | 69.3 | 887 | 11.1 | 6.8 | 35.7 | 50.0 |
YOLOv5l6 | 1280 | 53.7 | 71.3 | 1784 | 15.8 | 10.5 | 76.8 | 111.4 |
YOLOv5x6 + TTA | 1280 1536 | 55.0 55.8 | 72.7 72.7 | 3136 - | 26.2 - | 19.4 - | 140.7 - | 209.8 - |
使用不同的模型推理(预测/识别)到的可能数据不同,时间也有所不同
source
检测的目标,可以是单张图片、文件夹、屏幕或者摄像头等
对图片检测
python detect.py--weights yolov5s.pt --source data/images/bus.jpg
对屏幕检测
python detect.py--weights yolov5s.pt --source screen
对摄像头检测
python detect.py --weights yolov5s.pt --source 0
conf-thres
置信度阈值,越低框越多,越高框越少
iou-thres
IOU國值,越低框越少,越高框越多
classes
指定检测的类别
简化代码 hub_detect.ipynb
python
import torch
# Model
model = torch.hub.load("./", "yolov5s", source='local')
# 第一个参数为模型所在的文件夹,第二个参数为模型名称,第三个参数为模型来源本地为local
#Images
img = "./data/images/zidane.jpg"
# Inference
results = model(img)
# Results
results.show()