YOLOv5 快速入门 🚀#
踏上使用 Ultralytics YOLOv5 探索实时目标检测动态领域的旅程吧!本指南旨在为希望掌握 YOLOv5 的 AI 爱好者和专业人士提供全面的入门指导。从初始设置到高级训练技术,我们都会为你详细介绍。读完本指南后,你将掌握使用先进深度学习方法将 YOLOv5 自信地应用到项目中的知识。让我们启动引擎,向 YOLOv5 进发吧!
安装#
通过克隆 YOLOv5 仓库并配置环境,为启动做好准备。这可确保安装所有必要的依赖项。确认你已准备好 Python>=3.8.0 和 PyTorch>=1.8,即可开始使用。这些基础工具对于高效运行 YOLOv5 至关重要。
git clone https://github.com/ultralytics/yolov5 # clone repository
cd yolov5
pip install -r requirements.txt # install dependencies使用 PyTorch Hub 推理#
体验 YOLOv5 PyTorch Hub 推理的简便性:系统会从最新的 YOLOv5 版本中无缝下载模型。此方法利用 PyTorch 的强大功能轻松加载和运行模型,让你可以简单直接地获得预测结果。
import torch
# Model loading
model = torch.hub.load("ultralytics/yolov5", "yolov5s") # Can be 'yolov5n' - 'yolov5x6', or 'custom'
# Inference on images
img = "https://ultralytics.com/images/zidane.jpg" # Can be a file, Path, PIL, OpenCV, numpy, or list of images
# Run inference
results = model(img)
# Display results
results.print() # Other options: .show(), .save(), .crop(), .pandas(), etc. Explore these in the Predict mode documentation.使用 detect.py 推理#
利用 detect.py 对各种来源执行灵活的推理。它会自动从最新的 YOLOv5 版本中获取模型,并轻松保存结果。此脚本非常适合命令行使用,也适合将 YOLOv5 集成到更大的系统中,支持图像、视频、目录、网络摄像头,甚至实时流等输入。
python detect.py --weights yolov5s.pt --source 0 # webcam
python detect.py --weights yolov5s.pt --source image.jpg # image
python detect.py --weights yolov5s.pt --source video.mp4 # video
python detect.py --weights yolov5s.pt --source screen # screenshot
python detect.py --weights yolov5s.pt --source path/ # directory
python detect.py --weights yolov5s.pt --source list.txt # list of images
python detect.py --weights yolov5s.pt --source list.streams # list of streams
python detect.py --weights yolov5s.pt --source 'path/*.jpg' # glob pattern
python detect.py --weights yolov5s.pt --source 'https://youtu.be/LNwODJXcvt4' # YouTube video
python detect.py --weights yolov5s.pt --source 'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP stream训练#
按照下面的训练说明,复现 YOLOv5 在 COCO 数据集上的基准结果。所需的模型和数据集(例如 coco128.yaml 或完整的 coco.yaml)会直接从最新的 YOLOv5 版本中获取。在 V100 GPU 上训练 YOLOv5n/s/m/l/x 通常分别需要 1/2/4/6/8 天(请注意,多 GPU 训练配置的速度更快)。使用尽可能高的 --batch-size 来最大化性能,或者使用 --batch-size -1 启用 YOLOv5 的 AutoBatch 功能,该功能会自动寻找最优的批次大小。以下批次大小适用于 V100-16GB GPU。有关模型配置文件(*.yaml)的详细信息,请参阅我们的配置指南。
# Train YOLOv5n on COCO128 for 3 epochs
python train.py --data coco128.yaml --epochs 3 --weights yolov5n.pt --batch-size 128
# Train YOLOv5s on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5s.yaml --batch-size 64
# Train YOLOv5m on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5m.yaml --batch-size 40
# Train YOLOv5l on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5l.yaml --batch-size 24
# Train YOLOv5x on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5x.yaml --batch-size 16
总而言之,YOLOv5 不仅是目标检测领域的先进工具,也体现了机器学习通过视觉理解改变我们与世界互动方式的强大力量。在阅读本指南并开始将 YOLOv5 应用于项目的过程中,请记住,你正站在技术革命的最前沿,能够在计算机视觉领域实现非凡成果。如果你希望获得更多见解,或得到其他视觉领域探索者的支持,欢迎访问我们的 GitHub 仓库。那里汇聚了一个活跃的开发者和研究人员社区。你还可以探索 Ultralytics Platform 等资源,以便在无需编写代码的情况下管理数据集和训练模型;或者查看我们的解决方案页面,了解实际应用和获取灵感。继续探索,持续创新,享受 YOLOv5 带来的奇妙体验。祝你检测愉快!🌠🔍