Итоговый проект первого семестра Deep Learning School — веб-приложение для обнаружения людей, стоящих позади пользователя.
Я выбрал первый сценарий работы, так что мой план выглядит следующим образом:
- Выбор фреймворка/библиотеки для использования детектора
- Запуск детектора на случайных изображениях
- Выбор фреймворка/библиотеки для разработки веб/мобильного демо
- Разработка демо
- Встраивание модели-детектора в демо
- Тестирование демо
- Оформления демо для показа другим людям
Модель — ssdlite320_mobilenet_v3_large
из torchvision
, она мало весит и достаточно быстро работает. Само веб-приложение написано с использованием библиотеки streamlit
.
В приложении есть возможность как протестировать модель на любых изображениях, загружая их с диска, так и запустить детекцию людей на видео с вебкамеры. Люди обводятся красными прямоугольниками с подписью степени уверенности модели. Пороговая уверенность задаётся слайдером.
Демо доступно на Heroku и Streamlit Sharing. Прошу иметь в виду, что из-за сильной задержки вебкамера может не работать или работать не так, как ожидается. В этом случае рекомендую запустить приложение локально.
- Установите Python 3.8
- Склонируйте проект:
git clone https://github.com/NetherQuartz/PeopleBehindDetector.git
$ pip3 install poetry
$ poetry install
$ ./run.sh
$ pip install -r requirements.txt
$ streamlit run main.py