Приложение для улучшения качества лица на видео с помощью DFDNet сети на основе istio



САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

Направление: 02.03.02 «Фундаментальная информатика и информационные технологии

ООП: Программирование и информационные технологии



Работу выполнили студенты 4 курса:
Князев Никита Андреевич 431 группа
Шарафутдинов Тимур Рустемович 433 группа

ТЗ:

Сервис параллельной обработки видео файлов пользователя группой (парой нейронных сетей или выше) работающий под контролем Istio

  1. найти нейронную сеть для обработки видео, например улучшение качества кадров
  2. запустить сеть локально
  3. создать контейнер с сетью в Docker
  4. сделать yml файл для docker-compose и istio


Шаги 1-3 выполнены успешно, однако загрузить все сеть в контейнер не вышло, тк для работы нужно GPU, а nvidia-docker-compose не поддерживает windows (лок. хост проекта), поэтому в контейнер была загружена только часть сети. Использование CPU в контейнере также имело некоторые проблемы.

Перед запуском

Для запуска сети необходимо в папке DFDNet создать папку weights и скачать туда веса модели (https://yadi.sk/d/PWTw92J5PAzMZg)
Также нужно скачать модели распознования в папку DictionaryCenter512 (https://yadi.sk/d/mC8U2zWDvFW6Yg)

Требования:

  • Nvidia GPU
  • Docker Desktop
  • Python 3.7+(для локального запуска)

Запуск:

  1. Скачать репозиторий (git clone) и веса, модели
  2. Открыть докер, в корне запустить консоль и выполнить docker-compose up (или index.py для локального запуска на Flask)
  3. Открыть http://localhost:4000/ (5000 для Flask) в браузере

Демо

https://youtu.be/oopfX5Dx-Nc