Технологии
160 % к person mAP50: AWS дорисовала людей на кадрах вместо опасных съёмок
AWS описала конвейер синтетической аугментации: диффузионная модель Qwen-Image-Edit-2509 на Amazon SageMaker AI добавляет людей в опасных позах на реальные снимки техники, а Amazon Rekognition размечает их автоматически. По собственным замерам AWS person mAP50 растёт с 0,051 до 0,134 при 750 синтетических изображениях, recall удваивается, а стоимость одного изображения падает с 3–5 до 0,33 доллара.

Почему опасные кадры почти невозможно снять
Industrial safety AI в публикации определяется как применение компьютерного зрения и предиктивной аналитики, чтобы находить и останавливать опасности на производстве. Ключевая проблема здесь не в модели, а в данных: синтетическая аугментация описывается как практическое решение одной из самых трудных задач — нехватки тренировочных изображений, где люди находятся в опасной близости к тяжёлой технике.
Отраслям, которые разворачивают автономную технику — сельскому хозяйству, строительству, добыче и производству, — нужны надёжные детекторы людей. Но самые рискованные сценарии, например работник в слепой зоне или ребёнок рядом с движущимся механизмом, как раз реже всего попадают в реальные датасеты, и они же опаснее всего для съёмки.
Экономика ручного сбора описана прямо: сбор и разметка могут стоить примерно 3–5 долларов за изображение и плохо масштабируются, а команды разметки обычно обрабатывают порядка 2 000 изображений в день. Дополнительное ограничение приходит от железа: детекторы должны работать на устройствах рядом с техникой — камерах на тракторах, погрузчиках или вагонах, — поэтому модель обязана оставаться лёгкой, и каждый тренировочный пример весит непропорционально много.
Итог этого сочетания сформулирован в публикации как отсутствие обучающего сигнала именно там, где ошибка детектора обходится дороже всего.
Два этапа: сначала дорисовать человека, потом разметить
Решение в разборе состоит из двух стадий: генерация фотореалистичных изображений и автоматическая разметка; вместе они дают размеченные тренировочные кадры без ручной аннотации. Генерацию выполняет диффузионная модель Qwen-Image-Edit-2509, развёрнутая на Amazon SageMaker AI: она вставляет синтетических людей в реальные снимки сцены, сохраняя фон, освещение и масштаб. Разметку берёт на себя API Amazon Rekognition DetectLabels, который автоматически строит рамки для вставленных людей.
Принципиальная деталь — редактирование реальных изображений вместо генерации сцены с нуля: так сохраняется достоверность фона, не возникает domain gap, а существующие аннотации техники остаются валидными. Domain gap в публикации поясняется как падение качества, когда модель, обученная на одном распределении данных, например на полностью синтетических сценах, применяется к реальным изображениям.
Подсказка для модели описывается тремя блоками: что вставлять — человека со случайным полом для демографического разнообразия; куда — опасное положение относительно техники, например на путях, сверху оборудования, на краю или на пути машины; и какие соблюдать ограничения — не искажать существующие элементы, держать резкий фокус и реалистично встраивать человека в сцену. В качестве основы берутся реальные снимки, где техника есть, а людей нет.
На второй стадии каждое сгенерированное изображение проходит через DetectLabels с минимальным порогом уверенности 80 процентов; найденные рамки дедуплицируются подавлением немаксимумов при IoU выше 0,5 и конвертируются в формат YOLO. Такие псевдометки, то есть машинные аннотации вместо ручной разметки, объединяются с уже существующими аннотациями техники с исходного изображения. Пре- и постобработка — фильтрация и масштабирование изображений, сборка подсказок и обработка меток — позволяют гонять конвейер как автоматический рабочий процесс.
Конфигурация и цена одного кадра
Модель разворачивается на инстансе ml.g5.12xlarge с четырьмя GPU NVIDIA A10G и 96 ГБ суммарной видеопамяти. Веса занимают около 60 ГБ в неквантованном виде и распределяются по четырём GPU; инференс выполняется за 25 шагов при CFG scale 4.0 и минимальной стороне изображения 512 пикселей, а генерация одного кадра занимает примерно 166 секунд.
Для распределения модели нужна собственная карта устройств, раскладывающая её 60 слоёв трансформера по доступным GPU; в публикации советуют избегать межустройственного обмена и разворачивать модель на одной GPU с достаточным объёмом памяти — например, на NVIDIA H100 в составе ml.p5.4xlarge — либо применять квантизацию весов. Ожидание по стоимости там же помечено как непроверенное: AWS предполагает удешевление инференса примерно в 10 раз, но прямо пишет, что это измерение пока не подтверждено.
Сравнение двух подходов дано в таблице: ручной путь — это 3–5 долларов за изображение, необходимость ставить опасные сцены, ручная отрисовка рамок и порядка 2 000 изображений в день силами команд. Синтетический конвейер оценивается в 0,33 доллара за изображение — исходя из 166 секунд инференса по цене 7,09 доллара в час для ml.g5.12xlarge и 0,001 доллара за вызов DetectLabels, — с полностью автоматической разметкой и масштабом, ограниченным только бюджетом на вычисления. Практический эффект по срокам описан так: путь от обнаружения пробела в данных до размеченных изображений сокращается с недель или месяцев до часов.
Где именно ставить человека — главный фактор
Самый важный вывод экспериментов сформулирован коротко: управляемое подсказкой размещение объекта — единственный наиболее значимый фактор для качества детекции. Инструкция ставить людей в опасные, релевантные домену позиции удвоила person mAP50, тогда как размещение людей на фоне ухудшило результат.
Абляция проводилась на YOLO11-nano: четыре условия с синтетикой по 1 000 изображений сравнивались с базой только на реальных данных. Базовое значение person mAP50 составило 0,051, у опасного размещения — 0,106, у варианта с дополнительным разнообразием сцен — 0,088, а у размещения на фоне — 0,046. Общая метрика по двум классам при этом выросла с 0,517 до 0,558 у опасного размещения.
Вывод из абляции: то, что именно генерирует модель — человек в релевантной домену позиции, — значит существенно больше, чем разнообразие сцены вокруг него, будь то погода или время суток.
Объём синтетики — гиперпараметр, а не «чем больше, тем лучше»
Отдельная серия экспериментов меняла количество синтетических изображений от 250 до 1 000 при неизменных условиях: опасное размещение без вариаций сцены и YOLO11-nano. Пик оказался на 750 изображениях: person mAP50 вырос до 0,134, то есть на 160 процентов относительно базы 0,051, а общая метрика по двум классам — до 0,597.
При 1 000 изображениях результат откатился к 0,106: накопленные артефакты генерации, например «поехавшие» лица и перенасыщение, добавляют шум и ухудшают как уверенность локализации, так и полноту детекции. Формулировка рекомендации звучит так: объём синтетических данных нужно валидировать как гиперпараметр, а не максимизировать.
Ёмкость модели нужно подгонять под размер датасета
Третья серия экспериментов прогоняла YOLO11 по пяти масштабам при 1 000 синтетических изображений, опасном размещении и без вариаций сцены. Лучший агрегированный результат показал YOLO11-medium на 20,1 млн параметров: 0,604 общей mAP50 и самая высокая полнота по классу человека — 0,340, то есть вдвое больше базовой.
Крупные версии выступили хуже: YOLO11-large на 25,3 млн параметров дал более высокий person mAP50 (0,142), но заметно меньшую полноту 0,244, а XLarge на 56,9 млн параметров откатился до 0,093 — ниже даже, чем Nano с синтетикой. Причина сформулирована прямо: при примерно 4 200 тренировочных изображениях данных не хватает, чтобы регуляризовать модель такой ёмкости.
Важный побочный результат — устойчивость агрегированной метрики: mAP50 по классу поезда держалась в диапазоне 0,73–0,79 во всех условиях. Значимость для безопасности подчёркнута отдельно: полнота по классу человека выросла с 17 до 34 процентов, то есть система замечала вдвое больше людей в опасных позициях, и всё это достигнуто на модели с 20 млн параметров, пригодной для инференса на периферийном железе в реальном времени.
Датасет, воспроизведение и границы применимости
В экспериментах использовалось открытое подмножество OpenImages как публично воспроизводимый аналог промышленного датасета заказчика: около 3 200 реальных тренировочных изображений с поездами в роли замены тяжёлой техники и до 1 000 синтетических изображений с вставленными людьми. Тестовый набор состоял только из реальных изображений OpenImages, отфильтрованных по наличию хотя бы одного локомотива, а задача формулировалась как детекция двух классов с сильным дисбалансом. Оценка велась на семействе YOLO11 как представимом классе моделей для периферии, обучение шло на Amazon SageMaker AI с PyTorch 2.1.0, размером изображения 640 пикселей, ранней остановкой с patience 50 и максимумом в 500 эпох.
Код решения опубликован в репозитории aws-samples/sample-synthetic-data-augmentation. В требованиях перечислены Python 3.11 и пакетный менеджер uv, GPU с 40 ГБ видеопамяти и выше или инстанс ml.g5.12xlarge, квота SageMaker на GPU-инстансы, которую новым аккаунтам приходится запрашивать отдельно, доступ к оплачиваемому Amazon Rekognition и доступ к весам модели Qwen/Qwen-Image-Edit-2509.
Архитектура заявлена как доменно-независимая: тот же конвейер применяется к строительным площадкам, сельхозтехнике, производственным цехам и складам, меняются только шаблоны подсказок, а инструкции по размещению можно заменять под свой домен, переиспользуя инфраструктуру генерации и псевдоразметки. Три итоговых правила AWS звучат так: подсказывать релевантное домену размещение, валидировать объём синтетики и подгонять ёмкость модели под бюджет данных.
Итог публикации сформулирован ею самой: рост person mAP50 на 160 процентов и удвоение полноты для периферийной модели, полученные без ручной разметки и без опасных съёмок. Независимого воспроизведения этих замеров вне AWS в публикации не приводится, а замеренный эффект получен на открытом датасете-заменителе, поэтому перенос цифр на конкретный парк реальной техники остаётся предположением.