Обычно я хотел бы вести блог о вещах, которые превратились бы в решение, связанное с реальной реализацией. В этом блоге я хотел бы написать о том, как Tensorflow Object Detection может применяться в электронной коммерции PetShop Siteflower.

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

Теперь мы будем использовать библиотеку Tensorflow.js вместе с предварительно обученной моделью, предоставленной tensorflow, для определения породы собак и соответствующих рекомендаций.

Что такое Tensorflow.js?

Tensorflow.js позволяет реализовать Машинное обучение в браузере на стороне клиента. Он предоставляет API и JavaScript, которые позволяют пользователям создавать облегченные модели и запускать их в браузере. Вы можете узнать все о Tensorflow Здесь.

Решение

Мы создадим HTML-файл, который позволит пользователю загрузить изображение, и мы будем определять тип собаки и рекомендовать его соответствующим образом. Полный код приведен ниже, давайте разберемся с основной частью кода.

Сначала мы загрузим библиотеку Tensorflow.js и модель Mobilenet для классификации изображений. MobileNet – это небольшие модели с малой задержкой и низким энергопотреблением, параметризованные для соответствия ограничениям ресурсов в различных сценариях использования и обученные распознаванию изображений с использованием базы данных изображений на веб-сайте http://www.image-net.org/. . »

https://cdn.jsdelivr.net/npm/@tensorflow/[email protected] https://cdn.jsdelivr.net/npm/@tensorflow-models/[email protected]

Теперь основная часть кода состоит в том, чтобы загрузить модель, классифицировать ее и распечатать прогноз.Мы передадим загруженное пользователем изображение в модель для классификации.
mobilenet.load().then(model => { // Classify the image. model.classify(img).then(predictions => { console.log('Predictions: '); console.log(predictions); var results=JSON.stringify(predictions); $("#dogpredection").text(results); }); });
После того, как вы классифицировали породу собак, вы можете запросить вашу базу данных, чтобы показать собак, которые у вас есть, или использовать прогноз любым другим способом, который вам нравится.

Полный код