DOSY (detection object system) или ласково Дося - это Fullstack приложение, которое может найти нужного человека или очень на него похожего и вывести информацию о нем из базы данных, а также можно загружать данные о новых людях в базу данных. Front-end написан на JavaScript и использует библиотеки React, Axios и библиотеку компонентов Material-UI. Back-end написан на Python и использует фреймворк Flask для работы REST API и библиотеку DeepFace для обнаружения и поиска похожих лиц. База данных PostgreSQL
Вы можете протестировать работу приложения прямо здесь
Из-за ограничений серверной части, функционал с поиском человека не работает!
Вы можете посмотреть полноценное демо-видео ниже, в блоке Демо!
Вы можете протестировать работу приложения прямо здесь
Из-за ограничений серверной части, функционал с поиском человека не работает!
Вы можете посмотреть полноценное демо-видео ниже, в блоке Демо!
- Front-end:
- JavaScript
- React
- Material-UI
- Back-end:
- Python
- Flask
- Deepface
- PostgreSQL
git clone https://github.com/ElishaFlacon/dosy.git
cd dosy
- Собираем front-end:
cd client
npm install
npm audit fix
(если появились ошибки)- меняем адрес API в файле
package.json
, в строкеproxy: <адрес_api>
- Собираем back-end:
cd server
python -m venv <venv_name>
<venv_name>/Scripts/activate
(windows) илиsource <venv_name>/Scripts/activate
(linux)pip install -r ./requirements.txt
- убираем комментарии с 91-94 строки в файле main.py
- Собираем базу данных:
- устанавливаем postgresql https://www.postgresql.org/ (при разработке использовалась версия 15)
- оставляем все значения по умолчанию
- пароль устанавливаем root
- переходим в папку с postgresql (по умаолчанию это C:\Program Files\PostgreSQL)
- переходим в папку 15 (или, если у вас другая версия, то переходите в нее), затем в папку bin
- запускаем powershell (слева в углу окна написано файл, нажмите, там будет запустить powershell)
.\psql -U postgres
- вводим пароль root (при вводе пароль не будет отображаться, не пугайтесь)
psql \! chcp 1251
- при вводе следующих команд может появляться ошибка: ошибка синтаксиса (примерное положение: "psql"), игнорируем ее и просто повторно вводим команду
create database <название_базы_данных>;
\connect <название_базы_данных>;
- затем из файлика db.sql копируем все содержимое и вводим в консоль
\dt
если появилась таблица, где в столбце "имя" находится faces и person - значит все прошло успешно
- Запуск:
- создаем файлик .env в папке dosy
- записываем в него значения указанные ниже
STATIC_PATH="<пусть_до_папки_static>" DATABASE="postgres://<имя_пользователя>:<пароль>@<адрес_хоста>/<название_базы_данных>"
cd client
npm start
cd server
python main.py
- Нажать чтобы демо!
- Нажать чтобы демо видео!
-
dosy.1.2.2.mp4
- На данный момент проект полностью реализован!
- Front-end приложения находится на хостинге GitHub Pages, а Back-end и База данных на хостинге render.com
- P.S. Все баги и недочеты - это фичи