Similar presentations:
ЭП_проект
1.
Разработка и исследование системыанализа видеоданных с камер наблюдения
для автоматического подсчёта людей
в реальном времени
Выполнили: Шошин А.Е., Сухоруков А.В., Кузнецов К.Е.
2. Актуальность
Потребность в системах подсчёта людей растёт: умные
города, торговые центры, транспорт, контроль
заполняемости. Существующие решения по отдельности не
справляются. YOLO нестабилен при перекрытиях и разной
удалённости. MediaPipe в режиме short range пропускает
людей на заднем плане.
Вывод: нужна комбинированная система, которая
объединяет разные методы детекции.
3. Цели и задачи
Цель: разработка многоуровневой системы подсчёта людей,
превосходящей по надёжности однокомпонентные
решения.
Задачи: анализ существующих методов; разработка
архитектуры с детекторами лиц и тел; программная
реализация на Python с использованием MediaPipe и YOLOv8;
тестирование и анализ результатов.
4. Сравнение методов
Фоновое вычитание MOG2: низкая точность, плохо при
перекрытиях, ресурсов мало.
HOG плюс SVM: точность средняя, перекрытия
удовлетворительно.
YOLOv8 с BoT-SORT: точность высокая, перекрытия хорошо,
ресурсы средние.
MediaPipe BlazeFace: точность высокая только для лиц,
перекрытия удовлетворительно, ресурсы низкие. Наша
система People Counter v2: точность высокая, перекрытия
отлично, ресурсы средние.
5. Архитектура V1
Ключевые механизмы:
o Мультимасштабное детектирование лиц (3 масштаба, NMS)
o Детектор тел YOLOv8 + BoT-SORT с трекингом
o Body-only fallback (создание человека по телу при ≥6 кадрах)
o Предобработка CLAHE для улучшения контраста
o Адаптивный порог Re-ID (маленькое лицо = далёкий человек →
больше допустимое смещение)
o Опциональный денойз
Результаты:
o FPS: 9–11 на CPU
o Корректный подсчёт во всех сценариях
o Обнаружение людей до 3 м
o Устойчивость к закрытым лицам
o Только 1 ложное срабатывание (переходный процесс)
6. Архитектура V2
Что добавлено по сравнению с V1 (защита):
o
Аутентификация по API-ключу (защита доступа к видеопотоку)
o
Валидация кадров (защита от DoS, битых данных, аномального шума)
o
Детекция adversarial-атак (анализ градиентов, порог 0.85)
o
Liveness-детекция (защита от фото/видео-спуфинга через оптический поток)
o
Самоизоляция при 5+ аномалиях за 60 секунд (режим изоляции)
o
Шифрование логов (AES-256-GCM)
o
HMAC-подпись аудита (целостность)
o
Анонимизация лиц на скриншотах (Gaussian blur)
o
Отдельный журнал аудита (secure_audit.jsonl)
Результаты V2:
o
FPS: 9–10 на CPU (небольшая просадка из-за дополнительных проверок)
o
Корректный подсчёт во всех сценариях
o
Защита от adversarial и спуфинга
o
Все логи и скриншоты защищены
7.
МетодТочность
Скорость
Частичное
перекрыт
ие
Требован
ия к
ресурсам
Фоновое вычитание
(MOG2)
Низкая
Высокая
Плохо
Низкие
HOG + SVM
Средняя
Средняя
Удовл.
Средние
YOLOv8 + BoT-SORT
Высокая
Высокая
Хорошо
Средние
MediaPipe BlazeFace
Высокая
(лицо)
Высокая
Удовл.
Низкие
People Counter v2
(комбинированный)
Высокая
Средняя
Отлично
Средние
8. Архитектуры системы
Система состоит из четырёх уровней.
o Входной уровень: веб-камера 1280 на 720 или видеофайл.
o Уровень предобработки: метод CLAHE для улучшения контраста
и двусторонний фильтр для подавления шума.
o Уровень параллельных детекторов: мультимасштабный
детектор лиц на MediaPipe full range и short range, а также
детектор тел YOLOv8 Nano с трекером BoT-SORT.
o Ядро PeopleCounter: сопоставление лиц и тел, механизм body-only
fallback, подтверждение персон, вывод текущего числа людей и
общего счётчика.
9.
10. Ключевые механизмы
Мультимасштабное детектирование: каждый кадр
обрабатывается в трёх масштабах 0,6, 1,0 и 1,5 от
исходного размера. Это позволяет находить и крупные,
и мелкие лица. Дублирующие детекции объединяются
алгоритмом NMS.
Адаптивный порог соответствия: чем меньше лицо, тем
дальше человек, тем больше допустимое смещение
между кадрами.
Body-only fallback: если лицо не видно минимум шесть
кадров, но тело отслеживается, человек всё равно
регистрируется. Таймауты: забывание через 30 секунд,
активность до 8 секунд.
11. Программная реализация
Язык Python. Библиотеки: opencv-python-headless
для захвата видео и предобработки, mediapipe
для детекции лиц, ultralytics для YOLOv8 и BoT-SORT,
numpy для вычислений.
Контейнеризация: Dockerfile и docker-compose.yml.
Два профиля запуска: для видеофайла и для вебкамеры. Режим headless позволяет работать без
графического дисплея, что важно для серверного
развёртывания.
12. Методика тестирования
Условия: жилое помещение со смешанным освещением, два
человека, расстояние от камеры от полуметра до трёх метров,
разрешение 1280 на 720, частота 30 кадров в секунду. Четыре
сценария.
o Первый: оба лица открыты, проверка базовой
функциональности.
o Второй: оба лица закрыты книгой и планшетом, проверка
body-only fallback.
o Третий: люди на разном расстоянии с частичным
перекрытием на переднем плане.
o Четвёртый: люди на разном расстоянии с частичным
перекрытием на заднем плане.
Метрики: частота кадров, уверенность детектора лиц, текущее
число людей, общий счётчик, ошибки.
13.
14. Результаты тестирования
Сценарий первый: частота 9-11 кадров, уверенность 0,80-0,92,
два человека верно, ошибок нет.
Сценарий второй: частота 9-11 кадров, лица не обнаружены, два
человека через body-only fallback, ошибок нет.
Сценарий третий: частота 9-11 кадров, уверенность 0,72-0,83 по
одному лицу, два человека верно, одно ложное срабатывание
общего счётчика.
Сценарий четвёртый: частота 9-11 кадров, уверенность 0,92-0,94,
два человека верно, ошибок нет. Вывод: текущее число людей
определяется корректно во всех сценариях, механизм body-only
fallback работает, производительности достаточно для реального
времени.
15.
ХарактеристикаВерсия v1
Версия v2
Детектор лиц
BlazeFace short range
BlazeFace full + short
range
Мультимасштаб
Нет
0,6× / 1,0× / 1,5×
Body-only fallback
Нет
Есть (≥6 кадров)
Предобработка (CLAHE)
Нет
Есть
NMS при мультимасштабе
Нет
Есть
Нестабильно
Стабильно
Частые
Единичные
Обнаружение на задн. плане (>2
м)
Ложные
total_people
срабатывания
16. Цели безопасности и ограничения
ЦельРеализация
Конфиденциальность
Шифрование логов (AES-256-GCM),
анонимизация скриншотов (блюр лиц)
Целостность
HMAC-подпись аудита, проверка моделей
по SHA-256
Доступность
Валидация кадров (защита от DoS, битых
данных), самоизоляция при аномалиях
Аутентичность
API-ключ для доступа к видеопотоку
Неотказуемость
Аудит всех действий (журнал
secure_audit.jsonl)
Защита от атак на ML
Adversarial-детекция (по градиентам),
Liveness-детекция (оптический поток)
17. Заинтересованные стороны
Администрация объекта (магазин, ТЦ, вокзал) — точный подсчёт
посетителей для анализа трафика, планирования персонала и
управления очередями
Служба безопасности — контроль заполняемости, предотвращение
скоплений, аудит инцидентов в зонах наблюдения
Разработчик и техподдержка — простота развёртывания,
модификации и обслуживания (Docker, модульная архитектура)
Посетители — конфиденциальность и анонимность (система не
сохраняет изображения лиц, все данные шифруются)
Регулирующие органы — соответствие законодательству о
персональных данных (152-ФЗ, GDPR)
18. Заключение и практическая ценность
Достигнуто: корректный подсчёт при закрытых
лицах и разной удалённости,
производительность 9-11 кадров в секунду на
обычном процессоре без видеокарты, модульная
и контейнеризованная система, готовая к
развёртыванию.
Практическое применение: контроль
посещаемости магазинов, мониторинг
заполняемости общественных пространств,
компонент систем видеоаналитики и
безопасности.
19. Направления развития
Перспективы: применение GPU-ускорения
для повышения частоты до 25-30 кадров в
секунду; интеграция модели оценки позы
тела для улучшения идентификации при
сильных перекрытиях; разработка вебинтерфейса для мониторинга статистики в
реальном времени; обучение
специализированной модели детекции на
нестандартных ракурсах.