Создание и развертывание REST API для извлечения преобладающих цветов из изображений

Создание и развертывание REST API для извлечения преобладающих цветов из изображений' can be condensed to 'Создание REST API для извлечения преобладающих цветов из изображений

Использование без учителя машинного обучения, FastAPI и Docker

Картинка от автора.

Содержание

  1. Постановка задачи
  2. Извлечение цветов из изображений
  3. Структура проекта
  4. Код
  5. Развертывание Docker контейнера
  6. Давайте попробуем!
  7. Документация API
  8. Выводы
  9. Отказ от ответственности за лицензию

1. Постановка задачи

Давайте представим себе контрольную комнату производственного предприятия, где изготовленные изделия должны быть автоматически сортированы. Например, на основе их цвета товары могут быть перенаправлены на разные ветви рольганга для дальнейшей обработки или упаковки.

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

Или же, как и автор, вы можете представить себя в качестве IT-консультанта, реализующего простой, быстрый и многоразовый инструмент для генерации палитр цветов для презентаций, диаграмм и приложений на основе входных изображений.

Это всего лишь несколько примеров того, как извлечение основных цветов из изображения может улучшить операционную эффективность или повысить пользовательский опыт.

В этом блоге мы используем Python для реализации извлечения преобладающих цветов из заданного изображения. Затем мы используем FastAPI и Docker для упаковки и развертывания решения в виде сервиса.

Цель этого поста – поделиться примером от начала до конца о развертывании легкого и самодостаточного сервиса, использующего техники машинного обучения для достижения бизнес-целей. Такой сервис можно легко интегрировать в микросервисную архитектуру.

2. Извлечение цветов из изображений

Цифровое изображение по сути является двумерной сеткой отдельных компонентов, известных как пиксели. Пиксели являются самой маленькой единицей отображения на изображении и содержат информацию о его цвете. A…