YOLOv5 Быстрый старт 🚀
Отправьтесь в динамичный мир обнаружения объектов в реальном времени с Ultralytics YOLOv5! Это руководство разработано как отправная точка для энтузиастов и профессионалов в области ИИ, стремящихся освоить YOLOv5. От начальной настройки до продвинутых методов обучения, мы обеспечим вас всем необходимым. К концу этого руководства вы будете обладать знаниями для уверенного внедрения 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 тесты производительности, следуя инструкции по обучению ниже. Необходимый моделей и datasets (например, coco128.yaml
или полный coco.yaml
) берутся непосредственно из последней версии YOLOv5 релизОбучение YOLOv5n/s/m/l/x на V100 GPU обычно занимает 1/2/4/6/8 дней соответственно (обратите внимание, что Обучение с использованием нескольких GPU настройки работают быстрее). Максимально увеличьте производительность, используя максимально возможную --batch-size
или используйте --batch-size -1
для YOLOv5 AutoBatch функция, которая автоматически находит оптимальный размер пакетаСледующие размеры пакетов идеально подходят для GPU V100-16GB. Обратитесь к нашей руководство по конфигурации для получения подробной информации о файлах конфигурации модели (*.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 HUB, для управления наборами данных и обучения моделей без кода, или посетите нашу страницу Решения для ознакомления с реальными приложениями и вдохновения. Продолжайте исследовать, продолжайте внедрять инновации и наслаждайтесь чудесами YOLOv5. Удачного обнаружения! 🌠🔍