Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Руководства

Обнаружение отсутствующих СИЗ: обучение Ultralytics YOLO на Construction-PPE

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

Paula DerrengerPaula Derrenger11 мин. чтения
Посмотри, как в Construction-PPE размечены отсутствующие каски, жилеты и перчатки, а затем обучи Ultralytics YOLO обнаруживать отсутствие СИЗ на камерах твоего объекта.

Чтобы надежно обнаруживать отсутствие СИЗ, размечай только то, что видно камере. В новом датасете Ultralytics Construction-PPE голова, скрытая за стальной балкой, не считается головой без каски. Метку no_helmet получает только видимая голова без каски, а скрытая или выходящая за границы кадра голова вообще не получает метку отсутствующего средства защиты.

Мы выпустили датасет 3 ноября 2026 года в Ultralytics 8.4.200: 1 000 изображений, 12 классов и 14 863 проверенных ограничивающих рамки для людей, погрузчиков, защитного оборудования и видимого отсутствия средств защиты; изображения и аннотации распространяются по лицензии CC BY 4.0. Среди классов есть отдельные no_vest и forklift, а аннотации проверила команда Ultralytics. В этом руководстве рассказывается, что входит в датасет, как работают правила разметки отсутствующих СИЗ и как обучить, проверить и развернуть на нем модель Ultralytics YOLO26.

Construction-PPE — проверенный датасет для обнаружения СИЗ с 12 классами#

Construction-PPE — оригинальный датасет для обнаружения объектов на строительных и промышленных площадках, созданный и опубликованный в открытом доступе командой Ultralytics в ноябре 2026 года. На изображениях представлены стройплощадки, мастерские, склады, зоны погрузки и ремонтные работы; различаются ракурсы, освещение, расположение работников и активность погрузчиков. Датасет учит детектор распознавать как защитное оборудование, так и его видимое отсутствие.

Перед обучением ознакомься с важными сведениями из документации по датасету Construction-PPE:

  • Размер: 1 000 изображений и 14 863 ограничивающие рамки в 12 классах
  • Разбиение: фиксированное разбиение на 800 изображений для обучения и 200 для валидации, без отдельной тестовой выборки
  • Формат: ограничивающие рамки в формате Ultralytics YOLO, готовые к обучению без преобразования
  • Изображения: собранные людьми и сгенерированные изображения в альбомной, портретной и квадратной ориентации с разными разрешениями
  • Аннотации: экспертная ручная разметка в сочетании с автоматической разметкой с помощью ИИ; выполнена командой Ultralytics в ноябре 2026 года
  • Лицензия: изображения и аннотации распространяются по лицензии Creative Commons «С указанием авторства» 4.0 Международная, которая разрешает коммерческое использование с указанием авторства

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

Ты можешь просмотреть все изображения и аннотации на Ultralytics Platform, скопировать датасет в свою рабочую область или сразу обучить на нем модель.

Страница датасета Construction-PPE на Ultralytics Platform с изображениями, классами и количеством аннотаций

Для каждого класса оборудования предусмотрен соответствующий класс его отсутствия#

12 классов делятся на три группы: пять классов оборудования, пять классов отсутствующего оборудования и два класса людей и транспортных средств на площадке. Идентификаторы ниже соответствуют аннотациям и construction-ppe.yaml:

ИдентификаторКлассЧто размечается рамкой
0helmetЗащитная каска
1glovesРабочие перчатки
2vestСигнальный жилет, куртка или рубашка повышенной видимости
3bootsЗащитные рабочие ботинки или обувь
4gogglesЗащитные очки
5PersonЧеловек
6no_helmetВидимая голова без каски
7no_goggleВидимая область глаз без защитных очков
8no_glovesВидимая кисть без перчатки
9no_bootsВидимая стопа или обувь без защитной рабочей обуви
10forkliftПогрузчик
11no_vestВидимый торс без сигнальной одежды повышенной видимости

Для каждого класса оборудования есть соответствующий класс с пометкой "отсутствует". Благодаря этому модель получает прямые примеры отсутствующего оборудования и может сама отметить непокрытую голову или торс без жилета, а не заставляет твой код определять отсутствие по отсутствующей рамке.

Вкладка Classes датасета Construction-PPE на Ultralytics Platform с количеством аннотаций для всех 12 классов: от ботинок и класса Person, самого распространенного, до forklift и no_goggle, самых редких

Метки отсутствующих СИЗ указывают на видимые части тела, а не на предположения#

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

В Construction-PPE действует единое правило для всех пяти классов отсутствующего оборудования: рамка отсутствующего оборудования охватывает видимую область тела, где должно находиться это оборудование; скрытая или выходящая за границы кадра часть тела сама по себе не служит основанием считать оборудование отсутствующим. На практике:

  • Рамка no_helmet ставится на видимую голову без каски.
  • Рамка no_gloves ставится на видимую голую кисть, а не на кисть, спрятанную за ящиком с инструментами.
  • Рамка no_vest ставится на видимый торс без сигнальной одежды повышенной видимости.
  • Рамка no_boots ставится на видимую стопу или обувь, не относящуюся к защитной рабочей обуви.
  • Рамка no_goggle ставится на видимую область глаз без защитных очков.
  • Рамки классов оборудования охватывают сам видимый предмет: жилет получает одну рамку, а человек, который его носит, — другую.

Два работника на одной площадке: у работника со скрытой за переносимым листом фанеры головой размечены только классы Person и жилета, а у работника с видимой голой головой — no_helmet и no_vest

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

Это важно и для разметки данных за пределами этого датасета. Если ты дополнишь Construction-PPE изображениями со своих камер, размечай их по тому же правилу, иначе модель получит два противоречивых ответа на один вопрос. Урок Ultralytics Academy о рекомендациях по разметке показывает, как включить такое правило в руководство по разметке и почему проверка с участием человека позволяет выявить случаи, которые пропускает автоматизация.

Классы forklift и no_vest помогают учитывать зоны движения транспорта в той же модели#

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

Благодаря отдельному классу no_vest модель, обученная на Construction-PPE, может за один проход выдать рамки классов forklift, Person и no_vest для зоны погрузки.

Зона погрузки на складе: погрузчик, работник в жилете и второй работник с метками no_vest и no_helmet

Связать эти рамки в одно событие — задача логики приложения: сопоставить каждую рамку no_vest с нужным человеком, определить, что считать "рядом" с погрузчиком, и задать длительность сохранения условия. Если тебе нужно измерить близость, руководство по расчету расстояния описывает вычисление расстояния в пикселях между центрами выбранных рамок; для расстояний в реальном мире нужна калибровка камеры.

Обучи YOLO26 на Construction-PPE всего за несколько строк#

Начни с пакета Ultralytics для Python. При первом запуске YOLO скачает и распакует архив датасета.

from ultralytics import YOLO

# Начни с нано-модели YOLO26, предварительно обученной на COCO
model = YOLO("yolo26n.pt")

# Обучи модель на архиве Construction-PPE
model.train(
    data="https://github.com/ultralytics/assets/releases/download/v0.0.0/construction-ppe.zip",
    epochs=100,
    imgsz=640,
)

Эквивалентная команда CLI состоит из одной строки:

yolo detect train model=yolo26n.pt data=https://github.com/ultralytics/assets/releases/download/v0.0.0/construction-ppe.zip epochs=100 imgsz=640

Модель YOLO26n — хороший вариант для первого запуска и проверки процесса. Перчатки, очки и ботинки на расстоянии, характерном для камер на площадке, выглядят мелкими объектами, поэтому перед окончательным выбором сравни результат с более крупной моделью, например YOLO26s или YOLO26m; в документации по обучению описаны размер изображения, размер пакета и все остальные аргументы. Ultralytics также публикует блокнот Colab для Construction-PPE, если ты предпочитаешь бесплатно использовать GPU в браузере.

Не хочешь писать код? Обучи модель на Ultralytics Platform#

На Ultralytics Platform открой датасет Construction-PPE и запусти обучение в облаке с моделью YOLO26, выбрав в браузере число эпох, размер изображения и GPU. Platform отслеживает кривые потерь, точность, полноту и mAP для каждой эпохи, а также позволяет сравнивать запуски бок о бок. Чтобы добавить изображения со своих камер, скопируй датасет из раздела Explore (см. руководство по разделу Explore на Ultralytics Platform), загрузи изображения и разметь их в редакторе аннотаций, где Smart Annotation подготовит рамки для проверки.

Оценивай модель по каждому классу, а не по одному среднему показателю#

Одно значение mAP не дает специалистам по безопасности нужной информации. Модель может показать хороший общий результат, надежно обнаруживая людей, каски и жилеты, но пропускать большинство случаев no_gloves или no_goggle. Проверяй метрики отдельно для каждого класса:

from ultralytics import YOLO

model = YOLO("runs/detect/train/weights/best.pt")
metrics = model.val()  # uses the dataset's 200-image validation split

print(f"mAP50: {metrics.box.map50:.3f}  mAP50-95: {metrics.box.map:.3f}")
for c in metrics.box.ap_class_index:
    print(f"{model.names[c]:>10}  mAP50-95: {metrics.box.maps[c]:.3f}")

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

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

Преврати обнаружения отсутствующих СИЗ в события, удобные для проверки#

Поскольку отсутствие оборудования представлено отдельным классом, первое правило проверки можно сформулировать кратко: отмечай каждый кадр, где обнаружена рамка отсутствующего СИЗ с уверенностью выше заданного порога.

from ultralytics import YOLO

MISSING = {"no_helmet", "no_goggle", "no_gloves", "no_boots", "no_vest"}

model = YOLO("runs/detect/train/weights/best.pt")
for r in model.predict("site_camera_frame.jpg", conf=0.4):
    for cls, conf in zip(r.boxes.cls.int().tolist(), r.boxes.conf.tolist()):
        if r.names[cls] in MISSING:
            print(f"Review: {r.names[cls]} ({conf:.2f})")

Для видео замени predict на track. Отслеживание объектов присваивает обнаруженным объектам идентификаторы в разных кадрах. Затем приложение сопоставляет каждую рамку отсутствующего СИЗ с дорожкой человека, например проверяя, какая рамка Person ее содержит, и применяет правила длительности и формирования событий, чтобы проверяющие видели одно событие, а не серию кадров:

Начиная с Ultralytics 8.4.202, сохраненные предсказания для потоков RTSP и веб-камер используют частоту кадров соответствующего потока, поэтому записанные клипы воспроизводятся с правильной скоростью. Когда модель будет готова, экспортируй модель в ONNX, TensorRT, OpenVINO или другой формат для граничного устройства либо разверни ее через Platform на выделенной конечной точке.

Детектор сообщает, что видит камера. Он не может оценить, сертифицирована ли каска и поврежден ли жилет, поэтому направляй обнаруженные события на проверку человеку.

Кому подойдет Construction-PPE#

Используй Construction-PPE как отправную точку для обнаружения пяти типов СИЗ и их отсутствия на стройплощадках, в мастерских, на складах и в зонах погрузки. Датасет подойдет тебе, если нужно:

  • Обнаруживать отсутствующее оборудование, а не только имеющееся. Пять отдельных классов отсутствующего оборудования, размеченных по единому правилу видимости частей тела, дают модели прямые примеры отсутствующих средств защиты.
  • Распознавать транспорт и пешеходов одной моделью. Классы forklift, Person и no_vest вместе охватывают сценарий в зоне погрузки.
  • Понятные условия лицензирования датасета и готовая к обучению разметка. Изображения и аннотации распространяются по лицензии CC BY 4.0, разрешающей коммерческое использование с указанием авторства, а метки в формате YOLO можно использовать для обучения YOLO26 без преобразования. Модели YOLO, которые ты обучишь на этом датасете, лицензируются отдельно; см. вопрос о лицензии ниже.

Если для твоего проекта достаточно массового обнаружения касок и жилетов, на Ultralytics Platform также доступен датасет Safety Helmet and Reflective Jacket с 10 138 изображениями и 2 классами. Для обнаружения только касок подойдет Safety Helmet Detection: в нем 5 000 изображений с метками head, helmet и person. Чтобы ознакомиться с полным процессом работы на объекте — от определения первого правила до мониторинга развернутой модели, — прочитай наше руководство по обнаружению СИЗ и безопасности на рабочем месте с Ultralytics.

Часто задаваемые вопросы

  • Обучай модель на отдельных классах отсутствующего оборудования, например no_helmet и no_vest, размечай их только там, где видна соответствующая часть тела, и проверяй метрики каждого класса на изображениях со своих камер, прежде чем полагаться на оповещения. В Construction-PPE представлены пять таких классов с единым правилом видимости.

  • Это зависит от нужных тебе классов. Датасет Ultralytics Construction-PPE охватывает 12 классов, включая пять классов отсутствующего оборудования, forklift и Person, на 1 000 проверенных изображениях по лицензии CC BY 4.0. Если нужны только каски и жилеты, Safety Helmet and Reflective Jacket на Ultralytics Platform предлагает больше изображений, а Safety Helmet Detection подходит для обнаружения только касок; для развертывания на объекте в любом случае добавь изображения со своих камер.

  • В версии, выпущенной в ноябре 2026 года, 1 000 изображений, 14 863 ограничивающие рамки и 12 классов; выборка разделена на 800 изображений для обучения и 200 для валидации. Классы: helmet, gloves, vest, boots, goggles, Person, no_helmet, no_goggle, no_gloves, no_boots, forklift и no_vest.

  • Установи или обнови пакет ultralytics, загрузи yolo26n.pt и вызови model.train(), передав URL архива Construction-PPE в качестве data, например, с помощью epochs=100 и imgsz=640. Также можно обучить модель без кода, используя облачное обучение на Ultralytics Platform.

  • Отдельные классы отсутствующего оборудования дают модели прямые примеры отсутствия, поэтому она может обнаружить видимую голову без каски как самостоятельный объект. Простое правило «нет рамки каски внутри рамки человека» может принять скрытую голову за голову без каски, если дополнительно не проверять видимость. В Construction-PPE отсутствующее оборудование размечается только там, где видна соответствующая часть тела, что поддерживает первый подход.

  • Да. Изображения и аннотации распространяются по лицензии Creative Commons «С указанием авторства» 4.0 Международная, которая разрешает распространение и адаптацию, в том числе коммерческое использование, при условии указания авторства. Укажи команду Ultralytics, добавь ссылки на датасет и лицензию и отметь внесенные изменения. Это относится только к датасету: модели Ultralytics YOLO, которые ты на нем обучишь, лицензируются отдельно (см. следующий вопрос).

  • По умолчанию все обученные модели Ultralytics YOLO распространяются по лицензии AGPL-3.0, в том числе модели, обученные на Construction-PPE. Чтобы использовать код или модели Ultralytics YOLO, нужно либо опубликовать исходный код всего проекта по лицензии AGPL-3.0, либо получить коммерческую лицензию Ultralytics. Это также относится к внутреннему использованию и исследованиям и разработкам. Если ты хочешь сохранить проект закрытым, тебе нужна коммерческая лицензия.

Автор

Paula Derrenger
Paula Derrenger

Вице-президент по развитию · Ultralytics

Paula Derrenger — вице-президент по росту в Ultralytics, компании, стоящей за Ultralytics YOLO — самыми широко используемыми в мире моделями компьютерного зрения. Она руководит маркетингом и партнерствами, выстраивая отношения и стратегию выхода на рынок, которые помогают внедрять Vision AI в компаниях по всему миру.

Комментарии

Задай вопрос, поделись результатами или помоги кому-нибудь.

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

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

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

Узнай, как 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. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее

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

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