Стажировка по проекту
Компания: «СЗ Стадион «Спартак»
Разработка системы мониторинга изменений на строительной площадке
Суть проекта
Задача
Для чего
Вводные данные
Выходные данные
Создание системы мониторинга изменений на строительной площадке на основании нейросетевого анализа видеозаписей с дронов
С целью оперативного контроля за изменениями на строительных площадках заказчик использует регулярную видеофиксацию при помощи управляемых дистанционно беспилотных летательных аппаратов. Задачей данного проекта была разработка системы мониторинга, которая позволит обрабатывать получаемые данные в автоматическом или полуавтоматическом режиме
182 серий видеозаписей еженедельных облетов дроном строительных объектов заказчика
  • После сравнительного анализ двух последовательных видео система выдает отчет об интересующих заказчика изменениях на строительной площадке
  • Для демонстрации результатов реализовано десктоп приложение
Участники
1 команды проекта
  • Бойцов Антон
    Тимлид проекта
    Антон — руководитель группы разработчиков, отвечал за полную разработку проекта
  • Малицкий Андрей
    Помощник тимлида
    Андрей помогал руководителю команды организовывать процесс разработки проекта
  • Скрипник Игорь
    Помощник тимлида
    Игорь помогал руководителю команды организовывать процесс разработки проекта
  • Ларина Нина
    Помощник тимлида
    Нина помогала руководителю команды организовывать процесс разработки проекта
  • Степанков Николай
    • Поиск и удаление теней зданий с изображений (DC-ShadowNet, DSC-PyTorch, ShadowFormer);
    • Обработка и извлечение признаков из видео заказчика (TensorFlow, Keras, InceptionV3, Torch, OpenAI CLIP, ViT-B/32);
    • Сравнения кадров видео различных дат съемки (sklearn.metrics);
    • Выравнивание кадров видео друг относительно друга RANSAC алгоритмом (RANSAC-Flow);
    • Применения сравнения и выравнивания кадров для создания ретроспективного видео в определенном ракурсе, отражающего историческую динамику возведения конкретного строительного объекта;
    • Сравнение выровненных кадров для подсветки изменений за период (OpenCV);
    • Разметка кадров в полуавтоматическом режиме фреймворком для обнаружения объектов по текстовому промпту: трубы (LangSAM);
    • Применение оптимизации алгоритмов обнаружения объектов на крупномасштабных снимках высокого разрешения (SAHI);
    • Разработка и поддержка пилотного десктоп приложения для демонстрации наработок заказчику (tkinter, tqdm, ToolTip);
    • Разработка механизма контроля перемещения зоны интереса во время облета строительного объекта алгоритмами ECC и RANSAC (OpenCV ECC, RANSAC-Flow);
    • Интеграция в десктоп приложение обученной нейронной сети для детекции объектов (YOLOv8);
    • Создание скрипта для извлечения признаков из видео заказчика
  • Губский Дмитрий
    Юрист, коммерческая недвижимость (продажа, аренда, управление).
    • Алгоритм сравнения кадров видео на основе предобученной сверточной  нейросетевой модели классификаторе с отключенными верхними слоями для извлечения эмбедингов (TensorFlow, Keras, InceptionV3);
    • Разметка и аугментация изображений для обнаружения зданий (LabelImg, Albumentations);
    • Разметка изображений для идентификации внешней отделки и подсчета этажей;
    • Обучение нейросетевой модели для идентификации внешней отделки и подсчета этажей (Ultralytics, YOLOv5);
    • Разметка кадров в полуавтоматическом режиме фреймворком для обнаружения объектов по текстовому промпту (LangSAM);
    • Создание скрипта для полуавтоматической разметки (Grounding DINO);
    • Ручная разметка и корректировка полуавтоматической разметки для обнаружения определенных заказчиком объектов интереса (ROBOFLOW);
    • Обучение нейросетевой модели детекции для обнаружения объектов интереса: башенный кран, самосвал, грузовик, экскаватор, бульдозер, строительный городок (YOLOv8);
    • Создание инструмента по расширению датасетов дополнительными классами и пополнение датасета классом легковые автомобили (Grounding DINO);
    • Корректировка разметки и аугментация датасета для повышения точности распознавания модели (ROBOFLOW);
    • Разработка механизма сравнения кадров, отслеживания и корректировки размеченного полигона зоны интереса при облете строительного объекта алгоритмом SIFT (OpenCV SIFT);
    • Применение трекера для обобщения собранной детекторами информации об объектах интереса (Deep Sort)
  • Бойков Сергей
    Разработчик ПО (С# .NET, ASP.NET Core, Angular, SQL, Python / Django, C++)
    • Извлечение кадров из видео и разметка классов строительной техники и объектов благоустройства (ROBOFLOW);
    • Разметка кадров в полуавтоматическом режиме фреймворком для обнаружения объектов по текстовому промпту (LangSAM);
    • Обучение нейросетевой модели детекции для обнаружения строительной техники: башенные краны, автокраны, грузовые автомобили, трактора  (Ultralytics, YOLOv8);
    • Обучение нейросетевой сегментационной модели для обнаружения объектов благоустройства территории: строительная площадка, ямы с водой, жилые здания, детские учреждения, детские площадки, спортивные площадки, дороги, газоны и лужайки
    • (Ultralytics, YOLOv8-seg);
    • Корректировка разметки и аугментация датасета для повышения точности распознавания модели (ROBOFLOW);
    • Применение оптимизации алгоритмов обнаружения объектов на крупномасштабных снимках высокого разрешения (SAHI);
    • Применение различных трекеров для обобщения собранной детекторами информации об объектах интереса (AutoTrackingAnything, BoT-SORT, ByteTrack);
    • Подготовка обученной модели нейронной сети для интеграции в десктоп приложение (YOLOv8);
    • Тонкая настройка параметров трекинга (BoT-SORT);
    • Разработка алгоритма посттрекинга для соотнесения потерянных и заново обнаруженных объектов;
    • Тестирование и помощь в исправлении ошибок пилотного десктоп приложения для демонстрации наработок заказчику;
    • Интеграция в пилотное приложение собственного алгоритма трекинга на базе Bot-SORT для накопления кумулятивной информации по обнаруженной в зоне интереса строительной техники;
    • Подготовка инструкции по использованию функционала пилотного десктоп приложения для заказчика;
    • Тестирование наиболее актуального фреймворка для обнаружения объектов по визуальному промпту: легковой автомобиль, кран (T-Rex2)
  • Земляков Сергей
    Менеджер по продажам. Группа компаний Техполимер
    • Сравнение кадров методом сопоставления характерных локальных признаков на изображениях (LoFTR);
    • Разметка кадров в полуавтоматическом режиме фреймворком для обнаружения объектов по текстовому промпту  (LangSAM).
  • Макаров Александр
    Программист-оператор станков с ЧПУ
    • Обучение собственной нейросетевой модели автоэнкодера для сравнения кадров видео (TensorFlow, Keras);
    • Разметка кадров в полуавтоматическом режиме для обнаружения определенных заказчиком объектов интереса: насыпь, яма с водой (LangSAM, Grounding DINO)
  • Сепетый Тимур
    • Алгоритм сравнения кадров видео на основе предобученного энкодера классификатора изображений (OpenAI CLIP, ViT-B/32)
Участники
2 команды проекта
  • Осокин Юрий
    Тимлид проекта
    Юрий — руководитель группы разработчиков, отвечал за полную разработку проекта
  • Ибрагимов Альберт
    Командир отдельной роты ППС, майор полиции
    • Разработка скриптов на Python для создания датасетов;
    • Создание архитектуры и обучение нейросетей, включая автоенкодеры;
    • Формирование скриптов для оценки евклидова расстояния между embedding векторами ключевых кадров видео;
    • Проведение экспериментов с автоенкодерами с целью улучшения результатов;
    • Тюнинг предобученных нейросетей;
    • Разработка скриптов для обработки изображений и создания анимаций;
    • Работа с GitHub: регистрация, ознакомление с описанием ТЗ, предложение вариантов реализации
  • Бараненков Алексей
    Занимается установкой систем автоматизации производственных участков
    • Изучение материалов стажировки, включая работу с датасетами и нейросетями;
    • Работа с различными инструментами и библиотеками, такими как KerasCV, autoML, SAM SAM;
    • Разработка скриптов для обработки видео и изображений, в том числе разбивка видео на кадры;
    • Обучение автоэнкодеров на собственных датасетах;
    • Работа с платформой CVAT для разметки видео;
    • Оптимизация программного кода для увеличения скорости работы
  • Худяков Александр
    Таргетолог ВК
    • Изучение материалов по сверточным нейронным сетям и архитектуре автокодировщика на платформе УИИ;
    • Разработка скриптов на Python для создания датасетов;
    • Создание архитектуры нейросети и обучение
  • Ронжин Дмитрий
    • Разработка и обучение автоэнкодера;
    • Изучение и применение YOLO для работы с латентным пространством;
    • Проведение экспериментов с различными моделями и архитектурами нейронных сетей;
    • Подготовка модели и скрипта для расчета расстояния между изображениями;
    • Перевод разработок на использование библиотеки PyTorch