YOLOv5 YOLOv10: техническое сравнение детекторов объектов в реальном времени
Эволюция архитектуры You Only Look Once (YOLO) стала определяющим событием в истории компьютерного зрения. Двумя важными вехами в этой истории являются YOLOv5, отраслевой стандарт надежности и простоты использования, и YOLOv10, академический прорыв, направленный на устранение узких мест в постобработке. В этом руководстве представлено подробное техническое сравнение, которое поможет разработчикам выбрать подходящий инструмент для своих приложений, а также рассмотрено, как новейшая версия YOLO26 объединяет преимущества обеих архитектур.
Происхождение модели и технические характеристики
Прежде чем приступить к рассмотрению показателей производительности, необходимо понять суть каждой модели.
YOLOv5
Автор: Гленн Джочер
Организация: Ultralytics
Дата: 26.06.2020
GitHub: yolov5
Документация: YOLOv5
YOLOv10
Авторы: Ao Wang, Hui Chen, Lihao Liu и др.
Организация: Университет Цинхуа
Дата: 23.05.2024
Arxiv: arXiv:2405.14458
GitHub: THU-MIG/yolov10
Документация: YOLOv10
Анализ производительности
В следующей таблице представлено сравнение моделей на наборе COCO , стандартном тесте для обнаружения объектов.
| Модель | размер (пиксели) | mAPval 50-95 | Скорость CPU ONNX (мс) | Скорость T4 TensorRT10 (мс) | параметры (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
YOLOv10 достигает более высокой средней точности (mAP) с меньшим количеством параметров, что подчеркивает повышение эффективности благодаря новой архитектуре. Однако YOLOv5 конкурентоспособным по скорости GPU , особенно на устаревшем оборудовании, благодаря высокооптимизированным CUDA .
Архитектура и Дизайн
YOLOv5: надежный стандарт
YOLOv5 на модифицированной основе CSPNet и шее PANet. Он использует стандартные анкерные головки обнаружения, которые требуют не максимального подавления (NMS) во время постобработки для фильтрации дублирующихся ограничительных рамок.
- Преимущества: чрезвычайно зрелая кодовая база, широкая поддержка сторонними инструментами и стабильное развертывание на периферийных устройствах, таких как Raspberry Pi.
- Недостатки: зависит от NMS, что может привести к изменчивости задержки в зависимости от количества объектов в сцене.
YOLOv10: пионер NMS
YOLOv10 радикальные изменения, используя последовательные двойные назначения для обучения NMS. Это позволяет модели предсказывать ровно одну рамку на объект, устраняя необходимость в шагах NMS .
- Преимущества: более низкая задержка вывода в сценах с высокой плотностью благодаря NMS ; эффективная конструкция блоков с ранжированием снижает избыточность вычислений.
- Недостатки: новая архитектура может потребовать специальных настроек экспорта для некоторых компиляторов; меньшая историческая поддержка сообщества по сравнению с v5.
Узкое место NMS
Немаксимальное подавление (NMS) — это этап постобработки, который фильтрует перекрывающиеся ограничительные рамки. Несмотря на свою эффективность, этот процесс является последовательным и требует больших вычислительных ресурсов процессоров. Его удаление, как это сделано в YOLOv10 YOLO26, имеет решающее значение для приложений, работающих в режиме реального времени на периферийном оборудовании.
Экосистема и простота использования
Одним из наиболее важных факторов для разработчиков является экосистема, окружающая модель. Именно здесь становится очевидным различие между репозиторием для исследований и производственной платформой.
Преимущество Ultralytics
Обе модели могут быть запущены через ultralytics Python , предоставляющий им доступ к надежному набору инструментов.
- Ultralytics : Пользователи могут управлять наборами данных, проводить обучение в облаке и беспрепятственно развертывать модели с помощью Ultralytics .
- Эффективность обучения: Ultralytics оптимизированы для эффективного использования памяти во время обучения и часто требуют значительно меньше VRAM, чем альтернативные модели на основе трансформаторов.
- Универсальность: хотя YOLOv10 в первую очередь YOLOv10 моделью обнаружения, Ultralytics поддерживает сегментацию изображений, оценку позы и ориентированное обнаружение объектов (OBB) во всех своих основных моделях.
Пример кода
Переключение между моделями так же просто, как изменение строки имени модели.
from ultralytics import YOLO
# Load a pre-trained YOLOv5 model
model_v5 = YOLO("yolov5s.pt")
model_v5.train(data="coco8.yaml", epochs=100)
# Load a pre-trained YOLOv10 model
model_v10 = YOLO("yolov10n.pt")
model_v10.predict("path/to/image.jpg")
Идеальные варианты использования
Когда выбирать YOLOv5
- Устаревшие системы: если у вас уже есть конвейер, построенный на основе форматов YOLOv5 .
- Широчайшая совместимость: для развертывания на старых встроенных системах, где новые операторы могут еще не поддерживаться.
- Ресурсы сообщества: когда вам нужен доступ к тысячам учебных материалов и сторонних интеграций, созданных за последние пять лет.
Когда выбирать YOLOv10
- Обнаружение высокой плотности: сценарии, такие как подсчет количества людей в толпе или анализ трафика, в которых NMS обработку.
- Строгие ограничения по задержке: робототехника в реальном времени или автономное вождение, где важна каждая миллисекунда задержки вывода.
- Исследования: эксперименты с новейшими достижениями в области стратегий назначения и архитектурной обрезки.
Лучшая рекомендация: YOLO26
В то время как YOLOv5 стабильность, а YOLOv10 вывод NMS, недавно выпущенная Ultralytics объединяет эти преимущества в единую, превосходную структуру.
Почему стоит перейти на YOLO26? YOLO26 изначально является сквозной системой, в которой используется разработанная YOLOv10 конструкцияNMS YOLOv10 усовершенствованная с помощью надежного конвейера Ultralytics .
- MuSGD Optimizer: вдохновленный обучением LLM (в частности, Kimi K2 от Moonshot AI), этот оптимизатор обеспечивает стабильную конвергенцию и более быстрое обучение.
- Производительность: оптимизирована для пограничных вычислений, обеспечивая до 43 % более быстрое CPU по сравнению с предыдущими поколениями.
- Точность: Оснащен функциями ProgLoss и STAL (Semantic-Token Alignment Loss), значительно улучшающими обнаружение мелких объектов, что часто является слабым местом в более ранних моделях.
- Полная универсальность: в отличие от YOLOv10 фокусируется на обнаружении, YOLO26 предлагает современные модели для сегментации, определения позы, классификации и OBB.
Для любого нового проекта, начинающегося в 2026 году, рекомендуется выбрать YOLO26, который предлагает самый простой путь от аннотирования набора данных до экспорта модели.
Заключение
Как YOLOv5 YOLOv10 поворотные моменты в компьютерном зрении. YOLOv5 сделал ИИ доступным и надежным, а YOLOv10 расширил технические границы сквозной обработки. Однако эта область развивается очень быстро. С выпуском YOLO26 разработчикам больше не нужно выбирать между надежностью Ultralytics и скоростью архитектур NMS — YOLO26 обеспечивает и то, и другое.
Что касается других современных альтернатив, вы также можете рассмотреть возможность изучения YOLO11 для задач общего назначения в области компьютерного зрения или Real-Time DETR (RT-DETR) для обнаружения на основе трансформаторов.