Стажировка по проекту
Компания: Московский институт электронной техники
Разработка системы распознавания лиц сотрудников
с целью перемещения
по объектам предприятия
Суть проекта
Задача
Для чего
Вводные данные
Выходные данные
Создание и интеграция нейросетевой модели для распознавания лиц людей, входящих в помещение предприятия или выходящих из него
В долгосрочной перспективе разработанная система может быть интегрирована в систему видеонаблюдения, что даст возможность контроля перемещения сотрудников по помещениям предприятия и позволит оперативно восстановить последовательность событий в случае непредвиденных событий
  • 6 записей с различных камер видеонаблюдения предприятия
  • 4 фотографии сотрудников, присутствующих на представленных видео
  • Несколько различных реализаций конвейеров для распознавания лиц
  • Приложение, которое позволяет запускать разработанные конвейеры по детекции персон и их лиц, сохранять в базу SQL обнаруженные лица и сопоставлять их с ранее сохраненной базой данных
Участники
1 команды проекта
  • Бойцов Антон
    Тимлид проекта
    Антон — руководитель группы разработчиков, отвечал за полную разработку проекта
  • Малицкий Андрей
    Помощник тимлида
    Андрей помогал руководителю команды организовывать процесс разработки проекта
  • Некрасова Татьяна
    Помощник тимлида
    Татьяна помогала руководителю команды организовывать процесс разработки проекта
  • Свириденко Дмитрий
    Инженер-программист, индивидуальный предприниматель в сфере ИТ
    • Исследование и тестирование различных инструментов обнаружения и распознавания лиц (OpenCV (Haar), MTCNN, ArcFace, DeepID, Facenet, DeepFace, Dlib, InsightFace (retinaface), Face Recognition, YuNet Face Detection)
    • Исследование и тестирование различных инструментов обнаружения и трекинга объектов (YOLOv8, AutoTrackAnything, SORT, DeepSort, FairMOT, ByteTrack, BoT-SORT)
    • Исследование и тестирование других библиотек целей проекта (GStreamer, NVidia TensorRT, NVidia DeepStreem; FAISS, PostrgeSQ+pgvector)pyTorch-класс для работы с эмбедингами на GPU
    • Исследование устойчивости эмбеддингов лиц
    • Исследование производительности библиотеки
    • Исследование устойчивости трекеровсоздание векторизованной базы данных детектированных лиц
    • Реализация REST-API на базе FastAPI с настраиваемым конвейером обработки
    • Создание видеокомбинированной системы трекинга лиц YOLOv8 + BoT-SORT + InsightFace FAISS/pgvector
  • Новиков Андрей
    Архитектор технических решений
    • Проведение экспериментов с различными платформами (Deepface, InsigthFace, YOLO), моделями (VGG-Face, ArcFace и др.) и детекторами лиц (mtcnn, opencv, retinaface и др.) для выбора наиболее подходящего варианта для проекта
    • Создание конвейера распознавания лиц в видео для различных сцен в офлайн-режиме на Google Colab с использованием платформ YOLO, InsigthFace и библиотек shapely, cv2, json, moviepy, pickle и др.
    • Комбинирование результатов двух нейросетей для повышения скорости и точности распознавания лиц
    • Оптимизация скорости работы конвейера путем вычислений только в зоне интереса и уменьшения площади изображений для обнаружения лиц
    • Исследование структуры эмбеддингов лиц и влияния различных факторо
    • Оптимизация работы конвейера с учетом результата исследований
    • Подготовка утилиты с инструкцией и кодом для помощи преподавателям в развертывании учебного проекта конвейера распознавания лиц с GitHub в среде Google Colab
  • Горина Анастасия
    Инженер-проектировщик
    • Проведение экспериментов по распознаванию лиц с использованием библиотеки dlib и оценка качества ее работы для решения задачи распознавания лиц
    • Проведение экспериментов с трекерами для анализа траекторий движения лиц в коридоре
    • Проведение экспериментов с библиотекой InsightFace
    • Проведение экспериментов с фильтрами на повороты головы по трем осям, уверенности модели и заданием зоны внимания на видеоматериалах
    • Сравнение использования косинусного и евклидового расстояния для определения близости эмбедингов
    • Визуализация данных в виде графиков для анализа кучности точек облака эмбеддингов лиц и средних эмбединогов этих лиц для оценки путаницы при распознавании лиц
    • Подсчет и анализ максимальных внутриклассовых расстояний и минимальных межклассовых расстояний для оценки точности распознавания лиц
    • Определение пороговых размеров лиц на видеоматериалах и их влияния на точность распознавания
    • Создание конвейера с различными функциями
  • Пискарева Евгения
    Менеджер по аудиту, анализу данных и внедрению BIM-технологий
    • Тестирование распознавания лиц на основе применения метода Виолы-Джонса
    • Анализ эффективности библиотеки распознавания лиц Dlib с функциями детекции HOG и CNN
    • Анализ эффективности библиотеки DeepFaceАнализ эффективности библиотеки InsightFace
    • Использование фреймворков YOLOv8, YOLOv9 и YOLO-World компании Ultralytics для распознавания объектов на видео заказчика и других видео с целью изучения искомых характеристик и поиска оптимального решения
    • Тестирование библиотеки Insightface с WEB-камерой с окклюзиями
    • Поиск среднего эмбеддинга на видео заказчика и других видео, в том числе плохого качества, с использованием окклюзий и применением для них фильтров пороговых значений
    • Визуализация эмбеддингов в 3D
    • Тестирование алгоритмов компьютерного зрения для отслеживания объектов на видеопотоках AutoTrackAnything, Ultralytics YOLO (BotSORT и ByteTrack), KLT tracking algorithm
    • Тестирование стенда коллег для представления результатов и тестирование конвейера
    • Поиск и изучение научных статей и публикаций по сравнению и анализу систем распознавания лиц
    • Поиск научных статей по выявлению факторов повышения точности распознавания лиц и публикаций по трекингу объектов
    • Поиск и сбор базы данных для исследований
  • Мингараев Ильсур
    Программист
    • Разработка приложения для исполнения скриптов конвейеров на языке Python
    • Создание интерфейса приложения на базе библиотеки Qt5
    • Создание базы данных PostgreSQL для хранения результатов работы конвейеров
    • Подключение расширения pgvector для работы с эмбедингами
Участники
2 команды проекта
  • Осокин Юрий
    Тимлид проекта
    Юрий — руководитель группы разработчиков, отвечал за полную разработку проекта
  • Желтов Александр
    Инженер информационных систем и технологий
    • Настройка рабочего окружения для разработки нейросетей, включая установку и настройку необходимого ПО (NVIDIA, InsightFace, VS Code).
    • Сегментация видео и
    • Разработка и текстирование собственныех версий нейросетей на основе существующих моделей
    • Проведение успешных экспериментов по распознаванию лиц с использованием различных библиотек и инструментов (SAM, InsightFace)
    • Создание и обработка датасетов
    • Создание Embedding data set для обучения и тестирования моделей распознавания лиц
  • Федоров Александр
    Предприниматель
    • Создание и обработка датасетов
    • Проведение многочисленных экспериментов с различными библиотеками (OpenCV, face_recognition, InsightFace) с высоким уровнем точности на этапе обучения
    • Создание виртуальной среды разработки в Анаконде, что позволило более эффективно работать с различными библиотеками и инструментами
    • Реализация и отладка кода для выполнения специфических задач: обработка видео и сохранение результатов на диск
  • Шокун Алексей
    Специалист в сфере менеджмента организаций
    • Составление плана реализации проекта, который включал в себя этапы изучения материалов, сбор данных, разработку и обучение нейросетей
    • Создание собственного датасета и разработка нейросети на его основе для обнаружения объектов
    • Использование различных методов и библиотек для оптимизации решений, что свидетельствует о его стремлении к поиску эффективных подходов к задачам
    • Создание решения на основе Yolo v8
    • Подготовка демонстрационного видео по работе нейросети по распознаванию лиц
  • Шиллер Анна
    • Создание краткого плана реализации проекта.
    • Экспериментирование с датасетами и добавление фотографий в Collab на GitHub
    • Изучение ипроведение экспериментов для дальнейшей работы над проектом.
  • Шамараев Дмитрий
    • Создание и обработка датасетов
    • Проведение многочисленных экспериментов с различными библиотеками и алгоритмами
    • Разработка среды разработки
    • Реализация и ааптация кода для работы с различными библиотеками распознавания лиц
Демонстрация проекта