Перейти к содержанию

RTDETRv2 против YOLOv7: эволюция на основе трансформера против эффективности CNN

В области обнаружения объектов наблюдается увлекательное расхождение в архитектурных философиях. С одной стороны, мы имеем линию сверточных нейронных сетей (CNN), олицетворением которой является высокопроизводительная YOLOv7. С другой стороны, революция Transformer привела к появлению RTDETRv2 (Real-Time Detection Transformer), модели, которая стремится привнести возможности глобального контекста Vision Transformers (ViTs) в режиме реального времени.

В этом руководстве представлен технический разбор этих двух архитектур с анализом их компромиссов в отношении скорости, точности и сложности развертывания. Хотя обе архитектуры на момент своего появления представляли собой передовые достижения в области производительности, современные разработчики часто отдают предпочтение унифицированной экосистеме и оптимизированной для периферийных устройств производительности Ultralytics , которая изначально объединяет лучшие характеристики обеих архитектур, такие как сквозное инфернирование NMS.

Сравнение руководителей

В следующей таблице сравниваются официальные показатели производительности RTDETRv2 и YOLOv7 наборе COCO .

Модельразмер
(пиксели)
mAPval
50-95
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

RTDETRv2: претендент Transformer

RTDETRv2 (Real-Time Detection Transformer version 2) — это усовершенствованная версия оригинального RT-DETR, разработанная исследователями из Baidu. Она решает проблему высоких вычислительных затрат, обычно связанных с Vision Transformers, за счет внедрения эффективного гибридного кодировщика и упрощения процесса выбора запросов.

Ключевые технические детали:

  • Авторы: Веню Лю, Иань Чжао, Циньяо Чанг, Куй Хуанг, Гуаньчжун Ван и И Лю
  • Организация: Baidu
  • Дата: 17.04.2023 (контекст выпуска версии 1)
  • Ссылки:Статья на ArXiv | Репозиторий GitHub

RTDETRv2 выделяется тем, что устраняет необходимость в немаксимальном подавлении (NMS). В отличие от CNN, которые генерируют тысячи избыточных ограничивающих рамок, требующих последующей фильтрации, RTDETRv2 напрямую предсказывает фиксированный набор запросов объектов. Эта сквозная возможность снижает разброс задержек, что делает ее привлекательной для приложений, в которых критически важное значение имеет стабильное время вывода.

Однако использование механизмов внимания означает, что RTDETRv2 может быть более требовательным к памяти во время обучения по сравнению с чистыми CNN. Он превосходно справляется с захватом глобального контекста — пониманием взаимосвязей между удаленными частями изображения — что помогает в сложных сценах с сильной окклюзией.

Узнайте больше о RT-DETR

YOLOv7: вершина эффективности CNN

Выпущенный в середине 2022 года, YOLOv7 расширил границы возможностей чисто сверточных архитектур. Он был разработан с акцентом на «обучаемые наборы бесплатных элементов» — методы оптимизации, которые повышают точность во время обучения без увеличения затрат на вывод.

Ключевые технические детали:

Основной инновацией YOLOv7 расширенная сеть эффективной агрегации слоев (E-ELAN). Эта архитектура позволяет сети обучаться более разнообразным функциям за счет эффективного управления длиной градиентного пути. Несмотря на впечатляющую скорость работы на GPU , YOLOv7 детектором на основе якорей. Это означает, что он требует тщательной настройки гиперпараметров якорных рамок для соответствия конкретным масштабам объектов в пользовательском наборе данных, что часто автоматизируется или удаляется в более новых моделях, таких как YOLO11.

Узнайте больше о YOLOv7

Архитектурное Глубокое Погружение

Внимание против свертки

Фундаментальное различие заключается в том, как эти модели обрабатывают визуальные данные. YOLOv7 свертки, которые сканируют изображение в локальных окнах. Это делает его невероятно быстрым и эффективным в обнаружении локальных особенностей, таких как края и текстуры, но потенциально слабее в понимании глобальных семантических отношений сцены.

RTDETRv2 использует механизмы самовнимания. Он рассчитывает релевантность каждого пикселя по отношению к каждому другому пикселю (или в пределах определенных деформируемых точек внимания). Это позволяет модели «обращать внимание» на релевантные особенности независимо от их пространственного расстояния, обеспечивая превосходную производительность в переполненных сценах, где объекты значительно перекрывают друг друга.

Постобработка и NMS

YOLOv7, как и его предшественники YOLOv5 и YOLOv6, выдает плотные прогнозы, которые необходимо фильтровать с помощью NMS. Этот шаг представляет собой эвристический процесс, который может стать узким местом в сценариях с большим скоплением людей и вводит гиперпараметры (IoU ), которые влияют на точность и воспроизведение.

RTDETRv2 NMS использует NMS. Он использует двудольное сопоставление во время обучения, чтобы присвоить один объект ground truth ровно одному прогнозу. Это упрощает процесс развертывания, так как нет необходимости реализовывать NMS в ONNX или TensorRT .

Лучшее из обоих миров

В то время как RTDETRv2 стал пионером в области обнаружения NMS для трансформаторов реального времени, Ultralytics успешно адаптировал эту концепцию к CNN. YOLO26 использует нативную сквозную архитектуру, которая устраняет NMS сохраняя NMS низкую память и высокую эффективность обучения CNN.

Преимущества Ultralytics: Почему стоит обновиться до YOLO26?

Хотя анализ старых моделей дает ценную информацию, запуск нового проекта с Ultralytics дает значительные преимущества в плане производительности, удобства использования и перспективности. YOLO26 представляет собой современную технологию, в которой учтены уроки, извлеченные из YOLOv7 RTDETR.

1. Изначально сквозное (без NMS)

Как и RTDETRv2, YOLO26 разработан NMS использованияNMS, с применением головки «один ко многим» для обучения и головки «один к одному» для вывода. Это устраняет накладные расходы на постобработку, характерные для YOLOv7, что приводит к более быстрому и простому развертыванию на периферийных устройствах, таких как NVIDIA или Raspberry Pi.

2. Превосходная CPU

Трансформаторы, такие как RTDETRv2, часто требуют интенсивных математических операций, для которых необходимо GPU . YOLO26 включает специальные оптимизации для CPU , что позволяет достичь скорости до 43 % выше наGPU по сравнению с предыдущими версиями. Это делает его гораздо более универсальным для мобильных приложений или датчиков IoT с низким энергопотреблением.

3. Повышенная стабильность обучения

YOLO26 представляет MuSGD Optimizer, гибрид SGD оптимизатора Muon (вдохновленный Kimi K2 от Moonshot AI). Это привносит инновации в области стабильности из обучения больших языковых моделей (LLM) в компьютерное зрение, обеспечивая более быструю и точную конвергенцию моделей по сравнению со стандартным SGD в YOLOv7.

4. Специализированные функции потерь

Благодаря ProgLoss и STAL, YOLO26 предлагает улучшенные возможности для распознавания небольших объектов — традиционно слабое место как стандартных CNN, так и некоторых архитектур трансформаторов. Это имеет решающее значение для таких задач, как анализ аэрофотоснимков или контроль качества в производстве.

5. Единая Ultralytics

Разработка с использованием YOLOv7 RTDETRv2 часто сопряжена с необходимостью управления разрозненными репозиториями и сложными скриптами установки. Ultralytics унифицирует рабочий процесс. Вы можете обучать, проверять и развертывать модели для обнаружения, сегментации, классификации, оценки позы и OBB с помощью одного простого API.

from ultralytics import YOLO

# Load the latest YOLO26 model (NMS-free, highly optimized)
model = YOLO("yolo26n.pt")

# Train on COCO dataset with the new MuSGD optimizer
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image
results = model("path/to/image.jpg")

Узнайте больше о YOLO26

Рекомендации по вариантам использования

  • Выберите RTDETRv2, если: у вас есть доступ к мощным графическим процессорам (таким как NVIDIA или A100) и ваше приложение включает в себя очень загруженные сцены, где окклюзия является основной причиной сбоев CNN. Глобальное внимание к контексту может дать небольшое преимущество в этих конкретных сценариях.
  • Выберите YOLOv7 , YOLOv7 : вы обслуживаете устаревшие системы, которые специально используют старые форматы YOLO , или если вам нужен чистый подход CNN, но вы не можете перейти на более новые Python , поддерживаемые Ultralytics.
  • Выберите Ultralytics , если: вам нужен оптимальный баланс скорости и точности на всех типах оборудования (CPU, GPU, NPU). Удаление DFL упрощает экспорт в CoreML или TFLite, а эффективность использования памяти позволяет проводить обучение на потребительских GPU. Независимо от того, создаете ли вы систему охранной сигнализации или интеллектуальный менеджер парковки, обширная документация и активная поддержка сообщества делают его выбором с наименьшим риском для развертывания в предприятии.

Заключение

Как RTDETRv2, так и YOLOv7 значительный YOLOv7 в развитие компьютерного зрения. RTDETRv2 доказал, что трансформеры могут быть быстрыми, а YOLOv7 непреходящую мощь хорошо оптимизированных CNN. Однако эта область развивается очень быстро.

Для современных разработчиков и исследователей Ultralytics сочетает в себе «лучшее из обоих миров», объединяя удобство трансформеров NMS с высокой скоростью и эффективностью CNN. Поддерживаемый надежной экосистемой, которая упрощает все, от аннотирования данных до экспорта моделей, он остается рекомендуемой отправной точкой для современных проектов в области искусственного интеллекта.


Комментарии