Подборка JS-фреймворков для работы с компьютерным зрением

Обложка поста

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

TensorFlow.js

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

Move Mirror

Демо-версия Move Mirror из Tensorflow.js

Amazon Rekognition

Amazon Rekognition — это мощный облачный инструмент. Кроме того, Amazon также предоставляет различные SDK для JavaScript в браузерах. SDK можно найти здесь. Изображение ниже иллюстрирует, насколько детальным может быть распознавание лиц.

Amazon Rekognition API

Распознавание черт лица с помощью Amazon Rekognition API

OpenCV.js

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

OpenCV

Пример обнаружения лица с помощью OpenCV, изображение взято с DZone

tracking.js

Если вы собираетесь создать приложение исключительно для быстрого обнаружения лиц, например как в веб-версии фильтров Snapchat, вам стоит взглянуть на tracking.js. Этот фреймворк позволяет интегрировать распознавание лиц на JavaScript с довольно простой настройкой. На основе этого фреймворка даже есть руководство для написания приложения ко Дню Всех Святых, которое распознаёт людей на изображениях и надевает им на голову шляпу лепрекона.

tracking.js

Пример распознавания лиц с tracking.js

WebGazer.js

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

WebGazer.js

Пример отслеживания взгляда с WebGazer.js

three.ar.js

Ещё один фреймворк от Google, three.ar.js, расширяет функциональные возможности ARCore для frontend JavaScript. Это позволяет интегрировать обнаружение поверхностей и объектов в браузеры, что является идеальным инструментом для AR-игр.

three.ar.js

Демо three.ar.js

В заключение

Рассмотренные фреймворки — это отличная платформа для дальнейшего развития компьютерного зрения. Создавайте с их помощью свои проекты и получайте удовольствие от разработки.

Если вы только начинаете интересоваться темой компьютерного зрения вам может быть полезен следующий курс.

Курс «Введение в компьютерное зрение»

Перевод статьи «Computer Vision .js frameworks you need to know»