Как использовать код CNN в python внутри веб-сайта?

У меня есть веб-сайт с бэкэндом на Python (Django) и JavaScript, размещенный на героку. Кроме того, у меня есть код на Python, который выполняет классификацию изображений с помощью EfficientNet, поэтому я хочу интегрировать этот код в свой веб-сайт.

Логическая последовательность идей такова:

  1. Пользователь загружает изображение на сайт;

  2. Это изображение будет классифицировано с помощью кода Python;

  3. Алгоритм вернет изображение;

  4. Возвращаемое изображение должно быть размещено на сайте.

Кто-нибудь знает, как лучше всего это сделать?

Вы имеете в виду CNN или CDN?

Scott Marcus 06.05.2022 19:59

CNN, код Google Colab выполняет классификацию с помощью EfficientNet.

Diego Freire 06.05.2022 21:32
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
2
39
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Прежде всего, да, если можно реализовать то, о чем вы говорите, я бы реализовал следующее:

Используйте сельдерей для реализации асинхронных задач, когда при загрузке фотографии Django сообщает сельдерея, что он должен выполнить асинхронную задачу (в данном случае использовать CNN) и может оставить статус ожидания для фотографии, и как только задача будет завершена, она меняет статус и будет отображаться опубликованным на платформе.

Я рекомендую использовать для этого асинхронные задачи по следующим причинам:

Использование сверточной нейронной сети может занять определенное время, давайте вспомним, что по умолчанию максимальное время ответа HTTP-запроса составляет 30 секунд, и это может сократить запрос, пользователь увидит это как ошибку, и он также может пожаловаться, потому что загрузка фотографии должна подождать некоторое время, и для целей пользователя они будут думать, что сайт работает медленно. Реализация асинхронных задач позволяет, во-первых, в HTTP-запросе указать пользователю, что изображение анализируется, а во-вторых, у вас нет ограничения в 30 секунд для анализа, в случае одновременной загрузки большого количества изображений может произойти сбой. сервер. Вот почему с сельдереем вы даже можете реализовать очереди для решения этой проблемы (используя редис или кроликMQ).

Если вы хотите реализовать знание статуса изображения в режиме реального времени, вы можете добавить использование веб-сокет, где при загрузке изображения в ответ вы получаете URL-адрес, который является одним из веб-сокетов, где вы будете получать информацию о изображение после обработки. Вы можете использовать Джанго-каналы для этого

Другие вопросы по теме