С конца июня и начала июля самой горячей темой в Шанхае в последнее время является сортировка мусора. . Жители Шанхая выбрасывают мусор в установленное время каждые два часа утром и вечером.
Сухой и мокрый мусор нужно разделить, мокрый мусор из мусорного мешка высыпать в ведро, а затем мусорный мешок выбросить в сухой мусорный бак ?
Омар ? панцирь сухой мусор, мясо омара ? мокрый мусор, выбрасывайте их отдельно, спасибо ?
Свиньи ? могут есть мокрый мусор, не могут есть сухой мусор, едят ядовитый мусор и продают их, чтобы купить свиней? являются перерабатываемым мусором
Он вылетит после просмотра? ! Не волнуйтесь, я потратил полдня на этих выходных, тщательно обрабатывая его.Посмотрите на фотографии, чтобы определить мусорПриложение в основном использует tensorflow coco-ssd для идентификации нескольких объектов на фотографиях, а затем находит неизвестный API, чтобы вернуть классификацию мусора. Например:
Краткое описание производственного процесса
Во-первых, в Интернете уже есть много сайтов, на которых можно ввести текст для запроса классификации мусора, и меня осенило: было бы лучше, если бы вы могли классифицировать мусор напрямую через изображения. Затем нашел официальное руководство для tensorflow.js:
<!-- Load TensorFlow.js. This is required to use coco-ssd model. -->
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs"> </script>
<!-- Load the coco-ssd model. -->
<script src="https://cdn.jsdelivr.net/npm/@tensorflow-models/coco-ssd"> </script>
<img id="img" src="cat.jpg"/>
<script>
// Notice there is no 'import' statement. 'cocoSsd' and 'tf' is
// available on the index-page because of the script tag above.
const img = document.getElementById('img');
// Load the model. 在浏览器里fetch和加载模型到内存可能要花1分钟以上
cocoSsd.load().then(model => {
// detect objects in the image.
model.detect(img).then(predictions => {
console.log('Predictions: ', predictions);
});
});
</script>
Видно, что Google tensorflow достиг уровня нестандартного использования часто используемых моделей машинного обучения, что очень удобно. Конечно, эта функция обнаружения нескольких объектов возвращает массив, содержащий bbox объекта на рисунке, а метки классификации внутри все на английском языке:
[{
bbox: [x, y, width, height],
class: "person",
score: 0.8380282521247864
}, {
bbox: [x, y, width, height],
class: "kite",
score: 0.74644153267145157
}]
Итак, вот проблема: все API-интерфейсы классификации мусора в Интернете требуют ввода на китайском языке! ! Впервые я подумал об API-интерфейсе Bing Translate для перевода с английского на китайский, а затем запросить классификацию. Поэтому я пошел подавать заявку на бесплатную учетную запись в Azure, благо у меня была мастер-карта, и я заплатил доллар, чтобы получить ее. Для получения подробной информации, пожалуйста, обратитесь к последней официальной ссылке на документ.
После метаний до меня наконец дошло, то есть скорость распознавания очень низкая. Ведь не существует модели, специально обученной для классификации мусора, а есть только готовая модель обнаружения объектов.
Так что забавных результатов много ?:
онлайн опыт
рекомендуется компьютерАдрес онлайн-опыта, загрузка модели занимает минуту:
Заинтересованные могут увидетьадрес проекта на гитхабе
Вы также можете отсканировать код, чтобы испытать: