YOLOX в сравнении с YOLOv10: техническое сравнение
Выбор оптимальной модели обнаружения объектов необходим для балансировки точности, скорости и вычислительных требований в проектах компьютерного зрения. На этой странице представлено подробное техническое сравнение между YOLOX и YOLOv10, двумя значительными моделями в области обнаружения объектов. Мы проанализируем их архитектуры, показатели производительности и идеальные варианты использования, чтобы помочь вам выбрать наиболее подходящий вариант для ваших нужд.
YOLOX: высокопроизводительный детектор без привязки к якорям
YOLOX — это модель детекции объектов без привязки к anchor box, разработанная компанией Megvii, стремящаяся упростить дизайн YOLO при сохранении высокой производительности. Представленная в 2021 году, она стремилась устранить разрыв между исследованиями и промышленными приложениями, предложив альтернативный подход в семействе YOLO.
Технические детали:
- Авторы: Чжэн Ге, Сунтао Лю, Фэн Ван, Цзэмин Ли и Цзянь Сунь
- Организация: Megvii
- Дата: 18.07.2021
- Arxiv: https://arxiv.org/abs/2107.08430
- GitHub: https://github.com/Megvii-BaseDetection/YOLOX
- Документация: https://yolox.readthedocs.io/en/latest/
Архитектура и ключевые особенности
YOLOX реализует несколько ключевых архитектурных изменений по сравнению с более ранними моделями YOLO, уделяя особое внимание простоте и производительности:
- Anchor-Free Design: Отказ от предопределенных anchor boxes упрощает конвейер обнаружения YOLOX и уменьшает количество гиперпараметров, требующих настройки. Это может привести к улучшению обобщения на различных наборах данных и размерах объектов.
- Разделенная Head: Она использует отдельные heads для задач классификации и локализации. Это разделение может улучшить скорость сходимости и устранить несоответствие между достоверностью классификации и точностью локализации, что является распространенной проблемой в одноэтапных детекторах.
- Продвинутые стратегии обучения: Модель включает в себя передовые методы, такие как SimOTA (Simplified Optimal Transport Assignment) для динамического назначения меток во время обучения. Она также использует мощные методы аугментации данных, такие как MixUp, для повышения устойчивости модели.
Сильные и слабые стороны
Преимущества:
- Высокая точность: YOLOX достигает высоких показателей mAP, особенно в своих более крупных вариантах, таких как YOLOX-x, что делает ее надежным выбором для задач, критичных к точности.
- Простота Anchor-Free (Anchor-Free Simplicity): Конструкция снижает сложность, связанную с конфигурацией якорных прямоугольников, что может быть обременительной частью обучения других детекторов.
- Устоявшаяся модель: Будучи доступной с 2021 года, YOLOX имеет зрелую базу ресурсов сообщества, учебных пособий и примеров развертывания.
Слабые стороны:
- Скорость и эффективность инференса: Будучи эффективной для своего времени, она может быть медленнее и требовать больше вычислительных ресурсов, чем современные оптимизированные модели, такие как YOLOv10, особенно при сравнении моделей с аналогичной точностью.
- Внешняя экосистема: YOLOX изначально не интегрирована в экосистему Ultralytics. Это может означать больше ручных усилий для развертывания, оптимизации с помощью таких инструментов, как TensorRT, и интеграции с платформами, такими как Ultralytics HUB.
- Универсальность задач: Он в основном ориентирован на обнаружение объектов и не имеет встроенной поддержки для других задач компьютерного зрения, таких как сегментация экземпляров, оценка позы или обнаружение ориентированных ограничивающих рамок, которые есть в более новых, универсальных фреймворках, таких как Ultralytics YOLOv8.
Случаи использования
YOLOX хорошо подходит для:
- Общее обнаружение объектов: Приложения, требующие надежного баланса между точностью и скоростью, такие как системы безопасности и розничная аналитика.
- Базовая модель для исследований: Благодаря своей конструкции без привязки к anchor boxes, она является ценной отправной точкой для исследователей, изучающих новые методы обнаружения объектов.
- Промышленные приложения: Такие задачи, как автоматизированный контроль качества, где высокая точность обнаружения является основным требованием.
YOLOv10: Передовой детектор реального времени с комплексной обработкой
Ultralytics YOLOv10, разработанная исследователями из Университета Цинхуа, представляет собой значительный шаг вперед в обнаружении объектов в реальном времени, поскольку основное внимание уделяется сквозной эффективности. Она устраняет узкие места постобработки и оптимизирует архитектуру для обеспечения превосходной производительности на границе скорости и точности.
Технические детали:
- Авторы: Ao Wang, Hui Chen, Lihao Liu, и др.
- Организация: Tsinghua University
- Дата: 2024-05-23
- Arxiv: https://arxiv.org/abs/2405.14458
- GitHub: https://github.com/THU-MIG/yolov10
- Документация: https://docs.ultralytics.com/models/yolov10/
Архитектура и ключевые особенности
YOLOv10 представляет несколько инноваций для достижения современной эффективности:
- Обучение без NMS: Он использует согласованные двойные назначения во время обучения, чтобы устранить необходимость в Non-Maximum Suppression (NMS) во время вывода. Это нововведение снижает задержку при выводе и упрощает конвейер развертывания, обеспечивая настоящий сквозной детектор.
- Комплексный подход к эффективности и точности: Архитектура модели была разработана с использованием комплексного подхода к оптимизации различных компонентов. Это включает в себя облегченную классификационную голову и пространственно-канальную разделенную дискретизацию, которые снижают вычислительную избыточность и расширяют возможности модели без ущерба для точности.
- Легкая и масштабируемая: YOLOv10 фокусируется на сокращении параметров и FLOPs, что приводит к более высокой скорости инференса, подходящей для различного оборудования, от высокопроизводительных GPU до периферийных устройств с ограниченными ресурсами.
Сильные и слабые стороны
Преимущества:
- Исключительная скорость и эффективность: YOLOv10 оптимизирована для работы в реальном времени с низкой задержкой, превосходя многие другие модели по скорости при сохранении высокой точности.
- Вывод без NMS: Отсутствие NMS упрощает развертывание и ускоряет постобработку, что является критическим преимуществом в приложениях, чувствительных ко времени.
- Передовая производительность: Устанавливает новый стандарт компромисса между точностью и эффективностью, как видно из таблицы производительности.
- Интеграция в экосистему Ultralytics: YOLOv10 легко интегрируется в экосистему Ultralytics, извлекая выгоду из удобного Python API, обширной документации и активной поддержки.
- Простота использования: Модель соответствует оптимизированному пользовательскому опыту, типичному для моделей Ultralytics, что упрощает обучение, проверку и развертывание.
- Эффективность обучения: Предлагает эффективный процесс обучения с готовыми предварительно обученными весами и, как правило, имеет более низкие требования к памяти по сравнению с более сложными архитектурами.
Слабые стороны:
- Относительно новая модель: Будучи более новой моделью, количество примеров, созданных сообществом, и интеграций со сторонними разработчиками все еще может расти по сравнению с давно зарекомендовавшими себя моделями, такими как YOLOX.
Случаи использования
YOLOv10 идеально подходит для требовательных приложений реального времени, где критически важны как скорость, так и точность:
- Edge AI: Идеально подходит для развертывания на устройствах с ограниченными ресурсами, таких как Raspberry Pi и NVIDIA Jetson.
- Системы реального времени: Приложения в автономных транспортных средствах, робототехнике, высокоскоростной видеоаналитике и видеонаблюдении.
- Высокопроизводительная обработка: Промышленный контроль, логистика и другие приложения, требующие быстрого анализа большого объема изображений или видеопотоков.
Анализ производительности: YOLOX против YOLOv10
В следующей таблице представлено подробное сравнение показателей производительности для различных размеров моделей YOLOX и YOLOv10, протестированных на наборе данных COCO.
Модель | размер (пиксели) |
mAPval 50-95 |
Скорость CPU ONNX (мс) |
Скорость T4 TensorRT10 (мс) |
параметры (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
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 постоянно предлагает превосходный компромисс между точностью и эффективностью.
- YOLOv10-s достигает почти такого же mAP, как YOLOX-m (46,7% vs. 46,9%), но с на 72% меньшим количеством параметров (7,2M vs. 25,3M) и на 70% меньшим количеством FLOPs (21,6B vs. 73,8B).
- YOLOv10-m превосходит точность YOLOX-l (51,3% vs. 49,7%), будучи при этом значительно более эффективной с точки зрения параметров и вычислений.
- В верхнем ценовом диапазоне YOLOv10-x обеспечивает гораздо более высокий mAP, чем YOLOX-x (54,4% против 51,1%) с на 43% меньшим количеством параметров и на 43% меньшим количеством FLOPs.
Заключение
YOLOX и YOLOv10 — мощные модели обнаружения объектов, но они отвечают разным приоритетам. YOLOX — надежный и хорошо зарекомендовавший себя детектор без привязки к якорям, обеспечивающий высокую точность, что делает его жизнеспособным вариантом для проектов, где его экосистема уже развернута.
Однако для разработчиков и исследователей, ищущих наилучший баланс скорости, точности и простоты использования, YOLOv10 — явный победитель. Его инновационная архитектура без NMS обеспечивает истинный сквозной конвейер обнаружения, что приводит к снижению задержки и повышению эффективности. Бесшовная интеграция в экосистему Ultralytics еще больше повышает его привлекательность, предлагая оптимизированные рабочие процессы, обширную документацию и надежную поддержку сообщества.
Для тех, кто заинтересован в изучении других современных моделей, Ultralytics предлагает ряд вариантов, включая универсальную YOLOv8 и новейшую YOLO11, которые предоставляют возможности для решения нескольких задач, таких как сегментация, классификация и оценка позы. Вы можете изучить дальнейшие сравнения, такие как YOLOv10 vs. YOLOv8, чтобы найти идеальную модель для ваших конкретных потребностей.