×Закрыть

Rate Me — распознавание жестов лайк/дизлайк с помощью компьютерного зрения

Мы компания Hey Machine Learning и мы занимаемся разработкой различных решений с использованием технологий искусственного интеллекта.

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

Проект Rate Me основан на легкой нейросети для обнаружения объектов Tiny-YOLO 3, которая тренировалась с помощью фреймворка Darknet. Для того, чтобы запустить алгоритм на языке программирования Python, мы использовали DNN модуль библиотеки компьютерного зрения OpenCV. Разработанная сеть имеет mAP = 85,19% и среднее IoU = 73,89%. Система работает со скоростью 6-7 FPS на процессоре Intel Core TM i5-4300M при частоте 2.60 ГГц.

Изначально набор данных для обучения состоял всего из 50 картинок, размеченных с помощью инструмента LabelImg. Однако после тренировки он определял лайки и дизлайки только правой руки и только мужские. Для него вот здесь ничего не было:

В интернете мы нашли еще 200 фото, которых тоже оказалось недостаточно. Тогда мы устроили офисные и вне офисные «фотосессии» коллег на разных фонах и в разной одежде. В итоге, мы расширили датасет до 1500 картинок. Однако теперь образовалась новая проблема: алгоритм считал, что если оттопырен палец вверх или вниз, независимо от положения остальных пальцев, значит лайк или дизлайк соответственно. Мы снова отправились собирать датасет, только теперь с другими жестами или вообще без них. В итоге, у нас получился набор, состоящий из 3 000 размеченных фотографий, сделанных с разных ракурсов и на различных фонах, где люди показывают большой палец вверх, вниз или что-то другое.

Теперь любой желающий может встроить алгоритм в свой проект и автоматизировать процесс оценивая чего-либо или кого-либо. Например, с помощью Rate Me можно:

  • Оценить музыку на сервисе YouTube Music, когда вам неудобно нажимать на кнопки, чтобы пропустить песню или поставить ей лайк
  • Подсчитать голоса на различных конкурсах для определения победителя
  • Оценить напитки или блюда, которые понравились или не понравились во время их дегустации

Мы, в свою очередь, задачу с помощью Rate Me решили и успешно применили его в проекте. Вам же предлагаем протестировать работу алгоритма, скачав его с GitHub.

LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

А зачем использовался YOLO — вам что, нужен bounding box?

Нам нужна была легкая и быстрая нейронка, чтобы нормально работала на Raspberry Pi 3 B, и мы выбрали Tiny-YOLO 3.

Тогда откажитесь от bounding box — и опа! — ваша нейронка стала еще легче и еще быстрее.

Потестирую за 1 доллар.

Вы можете скачать, установить и протестировать бесплатно)) Хотя, если вам угодно, можете 1 доллар скинуть нам на карту))))

Боюсь, что ваш результат слишком легко подделать. Пользы ноль.

Каким образом, вы считаете, результат можно подделать?

Интересно, а фак оно защитает как лайк?

Нет) Фак оно просто никак не задетектит)

нет, обидиться и запустит ядерные ракеты )

Прикольно. А почему вы взяли именно такой жест?

С помощью пальцев проще показать 1 или 0

Возможно проще, но не точно. Взяли такие жесты, так как Rate Me — это часть нашего другого проекта. А там нам необходимы были именно лайк и дизлайк)

Подписаться на комментарии