Детекция объектов
Кратко
Детекция объектов (object detection) — задача компьютерного зрения: найти на изображении или видео все экземпляры объектов заданных классов и локализовать каждый ограничивающей рамкой (bounding box). В отличие от классификации, которая отвечает «что на картинке», детектор отвечает «что и где»: выдаёт список рамок с классами и оценками уверенности. Современные детекторы построены на свёрточных нейросетях и трансформерах.
Для чего используется
- зрение роботов и БПЛА: обнаружение людей, машин, препятствий в кадре бортовой камеры;
- видеонаблюдение и подсчёт транспорта;
- распознавание лиц как частный случай детекции;
- аннотирование изображений и поиск по содержимому;
- спортивная аналитика — обнаружение мяча и игроков (дальше их ведёт трекер).
Как работает
Нейросетевые детекторы делятся на два семейства.
Двухэтапные (region-based). Сначала сеть предлагает области, где вероятно есть объект, затем классифицирует каждую. Эталон — Faster R-CNN (Ren et al., NeurIPS 2015): сеть предложений областей (Region Proposal Network, RPN) — полностью свёрточная сеть, которая в каждой позиции карты признаков предсказывает границы объекта и оценку «объектности». RPN использует те же свёрточные признаки, что и классификатор, поэтому генерация предложений почти не добавляет вычислений: хватает примерно 300 предложений на кадр, скорость — около 5 кадров/с на GPU того времени.
Одноэтапные (single-shot). Детекция формулируется как задача регрессии: одна сеть за один проход по изображению предсказывает сразу все рамки и вероятности классов. Родоначальник — YOLO (You Only Look Once; Redmon et al., CVPR 2016): базовая модель работала со скоростью 45 кадров/с, а упрощённая Fast YOLO — 155 кадров/с при вдвое большем mAP, чем у других детекторов реального времени. Плата за скорость — больше ошибок локализации, но при этом меньше ложных срабатываний на фоне, чем у R-CNN.
Аналогия: двухэтапный детектор — эксперт, который сначала помечает подозрительные места, а потом каждое рассматривает под лупой; одноэтапный — опытный взгляд, охватывающий всю сцену сразу.
Метрики. Совпадение рамок меряют через IoU (intersection over union) — отношение площади пересечения предсказанной и эталонной рамки к площади их объединения; предсказание засчитывается при IoU выше порога (обычно 0,5). Итоговое качество — mAP (mean average precision): среднее по классам значение площади под кривой точность-полнота.
Основные компоненты
- backbone — свёрточная (или трансформерная) сеть, извлекающая признаки изображения;
- головы предсказания — регрессия координат рамок и классификация;
- RPN — в двухэтапных детекторах: генерация предложений областей;
- эталонные датасеты — MS COCO: 328 тыс. изображений, 2,5 млн размеченных экземпляров, 91 категория — стандартный полигон для сравнения детекторов.
Примеры
- Faster R-CNN (2015) — эталон двухэтапной детекции; на его основе построены победители нескольких треков соревнований ILSVRC и COCO 2015.
- Семейство YOLO — развивается разными командами: YOLOv2 (2016, batch normalization и anchor boxes), YOLOv3 (2018), YOLOv4 (2020, аугментация Mosaic), YOLOv5, YOLOv6 (2022, Meituan — для роботов доставки), YOLOv8 (2023), YOLO11 (2024) — хронология по документации Ultralytics. Современные версии Ultralytics YOLO одной архитектурой решают детекцию, сегментацию, классификацию, оценку позы и сопровождение объектов; лицензия AGPL-3.0, коммерческое использование — по отдельной лицензии.
- DETR (Detection Transformer) и RetinaNet — более поздние подходы за пределами двух классических семейств.
Связанные темы
- Компьютерное зрение
- Свёрточные нейросети (CNN)
- Сегментация изображений
- Визуальное сопровождение цели (трекинг)
- Датасеты и разметка данных
Источники
- You Only Look Once (Redmon et al., CVPR 2016) — идея одноэтапной детекции, скорость, компромиссы.
- Faster R-CNN (Ren et al., NeurIPS 2015) — RPN, скорость и результаты двухэтапного подхода.
- Wikipedia — Object detection — определение, классификация методов, метрики IoU и mAP, применения.
- Ultralytics YOLO — документация — эволюция семейства YOLO, задачи, лицензирование.
- Microsoft COCO (Lin et al., ECCV 2014) — состав эталонного датасета.