Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Назад к глоссарию Ultralytics

One-Stage Object Detectors

Одностадийные детекторы объектов предсказывают все рамки и классы за один проход сети, без этапа формирования областей-кандидатов. Разбираем принцип работы, ключевые модели и компромиссы.

Одноэтапные детекторы объектов — это модели обнаружения объектов, которые за один прямой проход одной сети предсказывают ограничивающие рамки и метки классов всех объектов на изображении, одновременно оценивая плотную сетку возможных местоположений. В них нет отдельного этапа предложения областей: двухэтапные детекторы объектов сначала предлагают области, в которых может находиться объект, а затем запускают вторую голову для каждой области. Устранение этого этапа сделало одноэтапные детекторы основой обнаружения в реальном времени: от YOLO, базовая модель которого в 2015 году обрабатывала 45 кадров в секунду, до современных моделей.

Как работают одноэтапные детекторы#

Базовая сеть преобразует изображение в карты признаков, шея объединяет их на разных масштабах, а плотная голова детектора предсказывает оценку класса и рамку в каждой точке каждого масштаба. Ранние одноэтапные модели, например SSD, YOLOv2 и RetinaNet, предсказывали смещения относительно нескольких опорных рамок в каждой точке. Начиная с FCOS в 2019 году большинство моделей предсказывают расстояния от каждой точки до четырёх краёв рамки — так устроены безанкерные детекторы. В результате получаются тысячи кандидатов на рамки. Порог уверенности и подавление немаксимумов (NMS) сокращают их количество до одной рамки на объект, либо голова, обученная с помощью сопоставления «один к одному», сразу выдаёт итоговый результат.

Для запуска одноэтапного детектора достаточно одного вызова; разбор времени показывает один проход сети:

from ultralytics import YOLO

# Load YOLO26n, a one-stage detector pretrained on the 80 COCO classes
model = YOLO("yolo26n.pt")

# One forward pass predicts the box and class of every object in the image
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
print(f"{len(result.boxes)} objects: {[result.names[int(c)] for c in result.boxes.cls]}")

# Milliseconds for resizing the image, the single network pass, and NMS
print(result.speed)

result.speed показывает три этапа: предобработку, инференс и постобработку. Один проход инференса охватывает все объекты на изображении.

Одностадийные и двухстадийные детекторы#

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

Семейство R-CNN много лет лидировало по точности обнаружения: Faster R-CNN уточняет около 300 предложенных областей на изображение и работал со скоростью 5 FPS с базовой сетью VGG-16. Одноэтапные детекторы были намного быстрее, но уступали по точности, пока в 2017 году RetinaNet не показал, что разрыв вызван дисбалансом между передним и задним планом: плотный детектор оценивает около 100 000 возможных областей на изображение, почти все из которых относятся к фону, и эти простые отрицательные примеры преобладают в стандартной функции потерь. Фокальная функция потерь уменьшает их вес, благодаря чему RetinaNet сравнялся по скорости с ранними одноэтапными детекторами и превзошёл по точности тогдашние двухэтапные модели. Детекторы на основе Transformer, такие как DETR и RT-DETR, также работают как одна сеть, предсказывая набор рамок фиксированного размера с сопоставлением «один к одному».

Примеры применения в реальных условиях#

Идеи, лежащие в основе современных одноэтапных детекторов#

  • Сети пирамиды признаков (FPN): предсказания на нескольких разрешениях позволяют картам с мелким масштабом обнаруживать небольшие объекты, а картам с крупным масштабом — большие.
  • Фокальная функция потерь: уменьшение веса простых кандидатов фона устранило дисбаланс классов, который снижал эффективность ранних плотных детекторов.
  • Назначение меток: методы, такие как SimOTA и назначение с выравниванием задач, во время обучения выбирают положительные позиции для каждого объекта на основе самих предсказаний.
  • Головы без NMS: голова, обученная с помощью сопоставления «один к одному», выдаёт по одной рамке на объект, устраняя этап постобработки, стоимость которого растёт с количеством кандидатов.

YOLO26 — одноэтапный детектор без якорей с обоими типами головы: по умолчанию он применяет NMS, а nms=False переключает его на голову один-к-одному. YOLO26n достигает 40,9 mAP50-95 на COCO с NMS и 40,1 без неё; время обработки изображения на GPU NVIDIA T4 с TensorRT составляет 1,7 мс.

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

Превращай снимки с дронов и аэрофотоснимки в полезные данные в реальном времени для сельского хозяйства, аквакультуры, охраны природы и геопространственного анализа с Ultralytics YOLO.
Подробнее
Компьютерное зрение в аэрокосмической отрасли

Компьютерное зрение в аэрокосмической отрасли

Применяй компьютерное зрение в аэрокосмической отрасли с Ultralytics YOLO: для осмотра самолётов, обнаружения посторонних предметов на взлётно-посадочных полосах, наземного обслуживания аэропортов и выявления дефектов композитных материалов.
Подробнее
Компьютерное зрение в сфере безопасности

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

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

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

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

Компьютерное зрение в сельском хозяйстве

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

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения