Обнаружение на основе позы: как GuardianAI видит без лиц
Первый этап конвейера GuardianAI преобразует каждый кадр видео в список скелетов из 17 точек. Всё последующее работает только с этими скелетами — никогда с исходными пикселями.
Last updated: 10 мая 2026
Почему поза, а не пиксели
Традиционная модель видеоаналитики работает напрямую СЃ RGB-кадрами. РћРЅР° обрабатывает лицо человека, одежду, РїРѕС…РѕРґРєСѓ Рё окружение, Рё учится срабатывать РЅР° паттерны пикселей, коррелирующие СЃ насилием. Рто работает, Рё одновременно создаёт систему, которую потенциально РјРѕР¶РЅРѕ перепрофилировать для идентификации конкретного ученика.
Мы не хотим, чтобы система была на это способна. Поэтому конвейер разделён на два этапа.
Первый этап — описан здесь — преобразует каждый кадр в 17 кортежей (x, y, достоверность) на каждого человека. Второй этап — граф-классификатор — работает только с этими числами. Классификатор никогда не видит исходные пиксели. По своей архитектуре он не может идентифицировать человека; он описывает только движение.
Модель: YOLO11n-Pose
Ultralytics YOLO11n-Pose — наименьший вариант серии YOLO11 с головой для оценки позы.
- Скорость. ~3 мс на кадр на NVIDIA Jetson Orin Nano (8 ГБ). Реальное время при 30 fps со значительным запасом.
- Точность на COCO. 50,0 mAP@.50:.95 для позы. Достаточно для нашей нисходящей задачи.
- Размер модели. 2,9 М параметров, 7,6 ГФлопс. Умещается в памяти Jetson Orin Nano вместе с CTR-GCN.
17-точечный скелет COCO
Стандарт COCO определяет 17 ключевых точек тела: нос, глаза, уши, плечи, локти, запястья, бёдра, колени и щиколотки. Каждая точка описывается тремя числами: нормализованные координаты x и y(от 0 до 1 в пределах кадра) и оценка достоверности обнаружения conf (от 0 до 1). Вот и весь выход первого этапа — кадр полностью отбрасывается.
Отслеживание нескольких людей
Одиночные кадры РЅРµ дают достаточно информации для классификации насилия; РЅСѓР¶РЅР° последовательность движений. GuardianAI использует ByteTrack для присвоения постоянного track_id каждому скелету между кадрами. Рто позволяет второму этапу наблюдать Р·Р° движением РґРІСѓС… человек РЅР° протяжении 64 кадров (~2 СЃ РїСЂРё 30 fps), что является входным РѕРєРЅРѕРј для CTR-GCN.
При появлении нового человека в кадре буфер для него заполняется нулями (padding нулями) до достижения 64 кадров. При уходе человека из кадра track-ID деактивируется после 30 кадров отсутствия.
Что именно не хранится
После того как YOLO11n-Pose обработал кадр и вернул скелеты, кадр удаляется из памяти. В постоянное хранилище не попадает ни одного RGB-пикселя — только скелетные координаты с временными метками. 30-секундный буфер кадров до события хранится в ОЗУ edge-узла исключительно для того, чтобы оператор мог посмотреть контекст при подтверждении инцидента. После отклонения буфер немедленно очищается.
Почему это важно для школ
РљРѕРіРґР° данные первого этапа — это только числа, Р° РЅРµ изображения, система РЅРµ попадает РїРѕРґ действие законов Рѕ биометрических данных, которые РІРѕ РјРЅРѕРіРёС… юрисдикциях требуют согласия Рё раскрытия информации для каждой идентифицированной персоны. GuardianAI обрабатывает движение, Р° РЅРµ личности. Рто архитектурная конфиденциальность, Р° РЅРµ политика.
Читайте далее: как CTR-GCN классифицирует агрессию на основе скелетных последовательностей из первого этапа.