Данный проект представляет собой веб-приложение, разработанное на базе Django, и включает следующий функционал:
Обработка изображений с использованием нейросети:
- В рамках проекта была создана и обученна нейронная сеть, для обработки изображений с целью удаления шумов на тексте.
- Нейросеть была интегрирована в Docker-контейнер для обеспечения портативности и легкости развертывания.
Аутентификация и регистрация пользователей:
- Реализована функциональность аутентификации и регистрации пользователей.
- На текущий момент функционал аутентификации ограничен изменением отображения панели верхнего меню.
- Проект также обладает структурой для расширения функционала аутентификации и регистрации пользователей в будущем.
База данных для хранения изображений:
- Реализована база данных для хранения и управления изображениями.
- Изображения сохраняются в базе данных, обеспечивая удобный доступ и управление ими.
- Проект обладает простым и понятным интерфейсом, позволяющим пользователям загружать изображения и просматривать результаты их обработки. Он предоставляет возможность использования нейросети, обернутой в Docker-контейнер, для достижения точности и эффективности обработки изображений.
Для интеграции Docker контейнеров в проект используется функция user_process_picture(image_name) и созданный container_management. Ниже приведено описание взаимодействия с контейнерами:
При запуске проекта и инициализации основной директории инициализируется 5 контейнеров, это число указано в init.py директории mainpage
Функция user_process_picture(image_name), вызывается через multiprocessing, позволяя выполняться ей одновременно у разных пользователей. Она с помощью container_management находит один из свободных контейнеров и выполняет с его помощью обработку изображений.
Контейнеры обрабатывают изображения автоматически, с использованием директорий /temp{i}, где i это номер контейнера, данные директории нельзя редактировать или удалять.
Данный проект написан на Python 3.11.4 с использоваем
- Django version 4.2.3
- Docker sdk
Docker image был собран из файлов Dockerfile, /temp/, /models/, function.py использованных в проекте
так же образ можно загрузить по ссылке https://hub.docker.com/repository/docker/meshcherytapo4ek/auto_image_processer/