Примечания к исследованию в документе RT-DETR (DETR превзошли YOLO по обнаружению объектов в реальном времени)

Адрес статьи: https://arxiv.org/abs/2304.08069

代码地址:GitHub — PaddlePaddle/PaddleDetection: набор инструментов для обнаружения объектов на основе PaddlePaddle. Он поддерживает обнаружение объектов, сегментацию экземпляров, отслеживание нескольких объектов и обнаружение ключевых точек нескольких человек в реальном времени.

Аннотация : В последнее время сквозной детектор на основе трансформатора (DETR) достиг замечательных результатов. Однако высокая вычислительная стоимость DETR не была эффективно решена, что ограничивает их практическое применение и не позволяет им в полной мере использовать преимущества отсутствия постобработки, такие как немаксимальное подавление (NMS). В этой статье сначала анализируется влияние NMS на скорость логического вывода в современных детекторах объектов в реальном времени и устанавливается сквозной эталон скорости. Чтобы избежать задержки вывода, вызванной NMS, авторы предлагают преобразователь обнаружения в реальном времени (RT-DETR), который является первым сквозным детектором объектов в реальном времени. В частности, эффективный гибридный кодировщик предназначен для эффективной обработки многомасштабных функций путем разделения внутримасштабных взаимодействий и кросс-масштабного слияния, а выбор запросов с учетом IoU предлагается для улучшения инициализации целевых запросов. Более того, детектор, предложенный в этой статье, поддерживает гибкую настройку скорости вывода за счет использования различных слоев декодера без переобучения, что облегчает практическое применение детекторов объектов в реальном времени. RTDETR-L достигает 53,0% AP на COCO val2017 и 114 кадров в секунду на графическом процессоре T4, в то время как RT-DETR-X достигает 54,8% AP и 74 кадров в секунду, превосходя тот же масштаб как по скорости, так и по точности. Все детекторы YOLO. Кроме того, RTDETR-R50 достигает 53,1% AP и 108 FPS, что на 2,2% выше AP по точности и примерно в 21 раз выше по FPS, чем у DINO-Deformable-DETR-R50.

1. Введение

        Обнаружение объектов — это фундаментальная задача зрения, которая включает в себя идентификацию и локализацию объектов на изображениях. Существуют две типичные архитектуры современных детекторов объектов: на основе CNN и на основе Transformer.

        За последние несколько лет были проведены обширные исследования детекторов объектов на основе CNN. Архитектура этих детекторов эволюционировала от первоначальной двухступенчатой ​​до одноступенчатой, и появились две парадигмы обнаружения: Anchor-Base и Anchor-Free. Эти исследования добились значительного прогресса как в скорости обнаружения, так и в точности.

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

        Обнаружение объектов в реальном времени — важная область исследований с широким спектром приложений, таких как отслеживание объектов, видеонаблюдение, автономное вождение и т. д. Существующие детекторы реального времени обычно используют архитектуры на основе CNN, которые обеспечивают разумный компромисс между скоростью обнаружения и точностью. Однако эти детекторы в реальном времени обычно требуют NMS для постобработки, которую обычно трудно оптимизировать и которая недостаточно надежна, что приводит к задержке скорости вывода детектора.

        В последнее время детекторы на основе Transformer добились выдающихся результатов благодаря усилиям исследователей по ускорению конвергенции обучения и снижению сложности оптимизации. Однако проблема высоких вычислительных затрат DETR эффективно не решена, что ограничивает практическое применение DETR и приводит к невозможности в полной мере использовать его преимущества. Это означает, что хотя конвейер обнаружения объектов упрощен, добиться обнаружения объектов в реальном времени сложно из-за высокой вычислительной стоимости самой модели.

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

        В частности, авторы обнаружили, что, хотя введение многомасштабных функций полезно для ускорения сходимости обучения и повышения производительности, оно также приводит к значительному увеличению длины последовательности в кодировщике. Поэтому кодировщик Transformer становится вычислительным узким местом модели из-за его высокой вычислительной стоимости. Для обнаружения объектов в режиме реального времени был разработан эффективный гибридный кодировщик, который заменит исходный кодировщик Transformer. Разделяя внутримасштабное взаимодействие и межмасштабное слияние многомасштабных функций, кодировщик может эффективно обрабатывать функции в разных масштабах.

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

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

        В этой статье предлагается преобразователь для обнаружения в реальном времени (RT-DETR), который является первым сквозным детектором объектов на основе преобразователя в реальном времени. RT-DETR не только превосходит современные детекторы реального времени по точности и скорости, но также не требует постобработки, поэтому скорость вывода детектора не задерживается и остается стабильной, в полной мере используя преимущества сквозной конвейер обнаружения.

        RT-DETR-L достигает 53,0% AP на COCO val2017 и 114 FPS на графическом процессоре NVIDIA Tesla T4, в то время как RT-DETR-X достигает 54,8% AP и 74 FPS, превосходя как по скорости, так и по точности все детекторы YOLO в одном масштабе. Таким образом, RT-DETR становится новым современным средством обнаружения объектов в реальном времени, как показано на рисунке 1.

        Кроме того, предлагаемый RT-DETR-R50 достигает 53,1% AP и 108 FPS, а RT-DETR-R101 достигает 54,3% AP и 74 FPS. Среди них RT-DETR50 лучше DINO-Deformable-DETR-R50 по точности на 2,2% AP (53,1% AP против 50,9% AP), и лучше, чем DINO-Deformable-R50 в FPS (108 FPS против 5 FPS).DETR-R5 примерно в 21 раз.

Основные вклады этой статьи резюмируются следующим образом:

  1. Предложен первый сквозной детектор объектов реального времени, который не только превосходит современные детекторы реального времени по точности и скорости, но и не требует постобработки, поэтому скорость вывода не задерживается и остается стабильной;

  2. Подробно анализируется влияние NMS на детекторы реального времени, и делаются выводы о детекторах реального времени на основе CNN с точки зрения постобработки;

  3. Предложенный выбор запросов с учетом IoU показывает отличное улучшение производительности в нашей модели, что проливает новый свет на улучшение схемы инициализации для целевых запросов;

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

2. Связанные методы

2.1 Детектор объектов в реальном времени

        После многих лет непрерывного развития серия YOLO стала синонимом детекторов целей в реальном времени, которые можно условно разделить на две категории: Anchor-Base и Anchor-Free.С точки зрения производительности этих детекторов Anchor больше не является основным фактором. ограничение развития YOLO. . Однако вышеупомянутые детекторы создают много избыточных ограничивающих рамок, которые необходимо отфильтровать с помощью NMS на этапе постобработки. К сожалению, это приводит к снижению производительности, а гиперпараметры NMS сильно влияют на точность и скорость работы детектора. Авторы утверждают, что это несовместимо с философией разработки детекторов объектов в реальном времени.

2.2 Сквозной детектор объектов

        Сквозные детекторы объектов известны своими оптимизированными конвейерами. Карион и др. впервые предложили сквозной детектор целей на основе преобразователя под названием DETR (DEtection Transformer). Он привлек большое внимание из-за своих уникальных характеристик. В частности, DETR устраняет вручную разработанные компоненты Anchor и NMS в традиционных конвейерах обнаружения. Вместо этого он использует бинарное сопоставление и напрямую предсказывает наборы объектов один к одному. Принимая эту стратегию, DETR упрощает конвейер обнаружения и устраняет узкое место в производительности, вызванное NMS. Несмотря на очевидные преимущества DETR, у него есть две основные проблемы: медленная сходимость обучения и сложные для оптимизации запросы. Для решения этих проблем было предложено множество вариантов DETR. В частности, деформируемый DETR ускоряет конвергенцию обучения многомасштабных функций за счет повышения эффективности механизма внимания. Условный DETR и Anchor DETR уменьшают сложность оптимизации запросов. DAB-DETR вводит 4D опорные точки и итеративно оптимизирует прогнозируемый кадр слой за слоем. DN-DETR ускоряет сходимость обучения за счет шумоподавления запросов. DINO опирается на предыдущие работы и достигает самых современных результатов. Хотя компоненты DETR постоянно совершенствуются, целью этой статьи является не только дальнейшее улучшение производительности модели, но и создание сквозного детектора объектов в реальном времени.

2.3.Многомасштабные особенности обнаружения целей

        Современные детекторы объектов продемонстрировали важность использования многомасштабных функций для повышения производительности, особенно для небольших объектов. FPN представляет сеть пирамиды функций, которая объединяет смежные функции масштаба. Последующая работа расширила и усовершенствовала эту структуру, и она широко используется в детекторах объектов в реальном времени. Чжу и др. впервые представили многомасштабные функции в DETR, которые улучшили производительность и скорость сходимости, но это также привело к значительному увеличению вычислительных затрат DETR. Хотя механизм Deformable Attention в определенной степени снижает вычислительные затраты, сочетание многомасштабных функций по-прежнему приводит к высокой вычислительной нагрузке. Чтобы решить эту проблему, в нескольких работах были предприняты попытки разработать DETR с вычислительной эффективностью. Эффективный DETR уменьшает количество слоев кодировщика и декодера за счет инициализации целевого запроса с плотными априорными значениями. Разреженный DETR выборочно обновляет маркеры кодировщика, на которые, как ожидается, будет ссылаться декодер, уменьшая вычислительные затраты. Lite DETR повышает эффективность кодировщиков за счет уменьшения частоты обновления низкоуровневых функций в чередующемся режиме. Хотя эти исследования снижают вычислительную стоимость DETR, целью этих работ не является обобщение DETR как детектора реального времени.

3. Сквозная скорость детектора

3.1. Анализ NMS

        NMS — это широко используемый алгоритм постобработки при обнаружении для устранения перекрывающихся блоков предсказания, выдаваемых детекторами. В NMS требуются 2 гиперпараметра: порог оценки и порог IoU. В частности, спрогнозированные блоки с оценками ниже порога оценки напрямую отфильтровываются, и всякий раз, когда IoU 2 спрогнозированных блоков превышает порог IoU, блоки с более низкими оценками отбрасываются. Этот процесс повторяется до тех пор, пока не будут обработаны все ящики каждой категории. Следовательно, время выполнения NMS в основном зависит от количества входных полей предсказания и двух гиперпараметров.

        Чтобы проверить эту точку зрения, автор использовал YOLOv5 и YOLOv8 для проведения экспериментов. Сначала мы вычисляем количество предсказанных блоков, оставшихся после того, как выходные блоки отфильтрованы по разным пороговым значениям оценки одного и того же входного изображения. Некоторые оценки от 0,001 до 0,25 выбираются в качестве пороговых значений, подсчитываются оставшиеся предсказанные поля двух детекторов и строятся в виде гистограммы, которая интуитивно отражает, что NMS чувствителен к своим гиперпараметрам, как показано на рисунке 2. Кроме того, на примере YOLOv8 оцениваются точность модели COCO val2017 и время выполнения операций NMS при различных гиперпараметрах NMS.

        Обратите внимание, что операция постобработки NMS, используемая в эксперименте, относится к TensorRT EffectiveNMSPlugin, который включает несколько ядер CUDA, включая EfficientNMSFilter, RadixSort, EfficientNMS и т. д. Автор сообщает только время выполнения ядра EfficientNMS. Скорость проверена на графическом процессоре T4, и входные изображения и предварительная обработка в вышеупомянутых экспериментах согласованы. Используемые гиперпараметры и соответствующие результаты показаны в таблице 1.

3.2 Сквозной эталон скорости

        Чтобы иметь возможность объективно сравнивать сквозную скорость логического вывода различных детекторов в реальном времени, авторы построили тест на сквозную скорость. Учитывая, что на время выполнения NMS могут влиять входные изображения, необходимо выбрать эталонный набор данных и рассчитать среднее время выполнения для нескольких изображений. Тест использует COCO val2017 в качестве набора данных по умолчанию и добавляет плагин постобработки TensorRT NMS для детекторов в реальном времени, требующих постобработки. В частности, среднее время вывода детектора сравнивается с гиперпараметрами соответствующей точности в эталонном наборе данных, за исключением операций ввода-вывода и копирования в память. Используйте этот тест для проверки сквозной скорости детекторов YOLOv5 и YOLOv7 на основе привязки и детекторов без привязки PP-YOLOE, YOLOv6 и YOLOv8 на графическом процессоре T4. Результаты испытаний представлены в таблице 2.

        По результатам сделан вывод, что для детекторов реального времени, требующих постобработки NMS, детекторы Anchor-Free превосходят детекторы Anchor-Base при той же точности, поскольку время постобработки первых значительно меньше, чем у первых. последний, который в предыдущем пренебрегали на работе. Причина этого явления в том, что детектор Anchor-Base выдает больше предсказанных ящиков, чем детектор Anchor-Free (в 3 раза больше среди протестированных детекторов).

4. DETR в реальном времени

4.1 Обзор метода

        Предлагаемый RT-DETR состоит из магистрали, гибридного кодировщика и декодера преобразователя со вспомогательным заголовком предсказания. Обзор архитектуры модели показан на рисунке 3.

Конкретно:

1. Во-первых, используйте выходные функции последних трех этапов S3, S4 и S5 Backbone в качестве входных данных кодировщика;

2. Затем гибридный кодировщик преобразует многомасштабные признаки в последовательность признаков изображения посредством внутримасштабного взаимодействия и межмасштабного слияния (как описано в разделе 4.2);

3. Затем используется выбор запроса с учетом IOU для выбора фиксированного количества характеристик изображения из выходной последовательности кодера в качестве начального целевого запроса для декодера;

4. Наконец, декодер со вспомогательной головкой предсказания итеративно уточняет объектные запросы для создания блоков и оценок достоверности.

4.2 Высокоэффективный гибридный энкодер

1. Анализ узких мест вычислений

        Чтобы ускорить конвергенцию обучения и повысить производительность, Чжу и др. предложили ввести многомасштабные функции и предложили механизм деформируемого внимания для сокращения вычислений. Однако, хотя улучшения в механизме внимания снижают вычислительные затраты, резкое увеличение длины входной последовательности по-прежнему приводит к тому, что кодер становится вычислительным узким местом, что препятствует реализации DETR в реальном времени. Как описано в Dˆ2etr [17], на кодировщик приходится 49% GFLOP, но только 11% AP в деформируемом DETR. Чтобы преодолеть это препятствие, авторы анализируют вычислительную избыточность, присутствующую в многомасштабных кодерах Transformer, и разрабатывают набор вариантов, чтобы продемонстрировать, что одновременное взаимодействие внутримасштабных и межмасштабных функций вычислительно неэффективно.

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

        Эта группа вариантов постепенно повышает точность модели, значительно снижая вычислительные затраты за счет разделения многомасштабных взаимодействий признаков на двухэтапные операции внутримасштабного взаимодействия и кросс-масштабного слияния. Сначала мы удаляем кодировщик многомасштабного преобразования в DINO-R50 в качестве базовой линии A. Затем подключаются различные формы кодировщиков для создания серии вариантов на основе базовой линии A следующим образом:

  1. A→B: вариант B вставляет кодировщик преобразователя с одной шкалой, который использует один слой блока преобразователя. Элементы каждой шкалы совместно используют кодировщик для взаимодействия элементов внутри шкалы, а затем объединяют выходные многомасштабные функции.

  2. B → C: вариант C представляет слияние признаков в разных масштабах на основе B и подает конкатенированные многомасштабные признаки в кодировщик для выполнения взаимодействия признаков.

  3. C → D: вариант D разделяет внутримасштабное взаимодействие и кросс-масштабное слияние многомасштабных функций. Сначала для внутримасштабного взаимодействия используется одномасштабный кодер Transformer, а затем для кросс-масштабного слияния используется структура, подобная PANet.

  4. D → E: вариант E дополнительно оптимизирует внутримасштабное взаимодействие и кросс-масштабное слияние многомасштабных функций на основе D, применяя разработанный эффективный гибридный кодировщик.

2, гибридный дизайн

        Основываясь на приведенном выше анализе, авторы переосмысливают структуру кодировщика и предлагают новый эффективный гибридный кодировщик. Как показано на рис. 3, предлагаемый кодировщик состоит из двух модулей, а именно модуля внутримасштабного взаимодействия признаков на основе внимания (AIFI) и модуля слияния межмасштабных признаков на основе нейронной сети (CCFM). AIFI дополнительно снижает вычислительную избыточность на основе варианта D, который выполняет только внутримасштабные взаимодействия на S5. Авторы считают, что применение операций внутреннего внимания к высокоуровневым функциям с более богатыми семантическими понятиями может фиксировать связи между концептуальными объектами в изображениях, что облегчает обнаружение и распознавание объектов на изображениях последующими модулями. Между тем внутримасштабные взаимодействия признаков более низкого уровня не нужны из-за отсутствия семантических понятий и риска дублирования и путаницы при взаимодействии с признаками высокого уровня. Для проверки этой идеи внутримасштабное взаимодействие было выполнено только для S5 в варианте D, а результаты эксперимента показаны в таблице 3, см. строку DS5. По сравнению с вариантом D, DS5 значительно снижает задержку (на 35% быстрее), но повышает точность (на 0,4% выше AP). Этот вывод имеет решающее значение для разработки детекторов реального времени.

        CCFM также оптимизирован на основе варианта D, вставляя несколько блоков слияния, состоящих из сверточных слоев, в путь слияния. Роль блока слияния заключается в объединении смежных элементов в новый элемент, и его структура показана на рисунке 4. Блок объединения содержит N RepBlocks, а два выходных пути объединяются путем поэлементного сложения.

        Этот процесс можно выразить следующим образом:

        Среди них Attn означает самовнимание с несколькими головками, а Reshape означает восстановление формы объекта до той же формы, что и S5, что является обратной операцией Фальттена.

4.3, выбор запроса с учетом IOU

        Целевой запрос в DETR представляет собой набор обучаемых вложений, которые оптимизируются декодером и сопоставляются с классификационными показателями и ограничивающими прямоугольниками с помощью головы предсказания. Однако эти целевые запросы трудно интерпретировать и оптимизировать, поскольку они не имеют четкого физического смысла. Последующая работа улучшает инициализацию целевого запроса и расширяет его до запроса содержимого и запроса местоположения (точки привязки). Среди них Efficient detr, Dino и Deformable detr — все предлагаемые схемы выбора запросов, и их объединяет то, что они используют оценку классификации для выбора функций Top-K из кодировщика для инициализации целевого запроса (или только запроса местоположения). . Однако из-за непоследовательного распределения показателей классификации и достоверности местоположения некоторые спрогнозированные блоки имеют высокие показатели классификации, но не близки к блокам GT, что приводит к выбору блоков с высокими показателями классификации и низкими показателями IoU, в то время как блоки с низкими показателями классификации и выбираются высокие баллы IoU.Коробки отбрасываются. Это может ухудшить работу детектора. Чтобы решить эту проблему, авторы предлагают выбор запросов с учетом IoU, ограничивая модель получением высоких оценок классификации для функций с высокими оценками IoU и низкими оценками классификации для функций с низкими оценками IoU во время обучения. Следовательно, предсказанные блоки, соответствующие функциям кодировщика Top-K, выбранным моделью в соответствии с оценками классификации, имеют высокие оценки классификации и высокие оценки IoU. Цель оптимизации детектора переформулируется следующим образом:

        где y_hat и y представляют предсказание и GT, yˆ = {c, ˆ ˆb} и y = {c, b}. c и b обозначают категории и ограничивающие рамки соответственно. Введите показатель IoU в целевую функцию ветви классификации (аналогично VFL), чтобы добиться ограничений согласованности при классификации и локализации положительного образца.

Анализ эффективности . Чтобы проанализировать эффективность предлагаемого выбора запроса с учетом IoU, оценки классификации и оценки IoU функций кодировщика, выбранных для выбора запроса, визуализируются на val2017, как показано на рисунке 6.

        В частности, мы сначала выбираем лучшие функции кодировщика K (K = 300 в экспериментах) в соответствии с оценкой классификации, а затем визуализируем диаграммы рассеяния с оценкой классификации выше 0,5. Красные и синие точки вычисляются на основе моделей, обученных с использованием обычного выбора запроса и выбора запроса с учетом IoU соответственно. Чем ближе точки расположены к правому верхнему углу графика, тем выше качество соответствующих признаков, т. е. метки классификации и ограничивающие рамки с большей вероятностью описывают реальные объекты на изображении. По результатам визуализации наиболее яркой особенностью является то, что большое количество синих точек сосредоточено в правом верхнем углу графика, а красных точек сосредоточено в правом нижнем углу. Это показывает, что модели, обученные выбору запросов с учетом IoU, могут создавать более качественные функции кодировщика.

        Кроме того, характеристики распределения этих двух типов точек также анализируются количественно. На рисунке синих точек на 138% больше, чем красных, то есть красных точек с классификационным баллом меньше или равным 0,5 больше, что можно расценивать как признаки низкого качества. Затем проанализируйте оценку IoU для функций с оценкой классификации выше 0,5 и обнаружите, что когда оценка IoU больше 0,5, синих точек на 120 % больше, чем красных. Количественные результаты также демонстрируют, что выбор запроса с учетом IoU может предоставить больше функций кодировщика с точной классификацией (высокий показатель классификации) и точной локализацией (высокий показатель IoU) для объектных запросов, тем самым повышая точность детектора.

4.4、Масштабированный RT-DETR

        Чтобы обеспечить масштабируемую версию RT-DETR, сеть ResNet заменена на HGNetv2. Масштабируйте магистральные и гибридные кодировщики вместе, используя множитель глубины и множитель ширины. Таким образом получается две версии RT-DETR с разным количеством параметров и FPS. Для гибридного кодировщика множитель глубины и множитель ширины управляются путем регулировки количества RepBlocks в CCFM и размера внедрения кодировщика соответственно. Стоит отметить, что предлагаемый RT-DETR с разными масштабами поддерживает однородный декодер, что облегчает перегонку фотоприемников с высокоточными крупномасштабными моделями DETR. Это будет перспективным направлением в будущем.

5. Эксперимент

5.1 Сравнение с СОТА

Supongo que te gusta

Origin blog.csdn.net/athrunsunny/article/details/130256098
Recomendado
Clasificación