Компания Google опубликовала алгоритм, позволяющий отслеживать движения руки на смартфонах с большой точностью. Разработчики считают, что это позволит реализовать на смартфонах новые функции, например, распознавание жестового языка или жестовых команд. Алгоритм доступен как в виде исходного кода на GitHub, так и в виде приложения для Android, а подробности о нем компания рассказала в своем блоге.
Распознавания позы — одна из классических задач алгоритмов компьютерного зрения, имеющая множество применений, причем как полезных, так и развлекательных. К примеру, распознавание позы тела используют для определения насильственных действий в толпе, а в прошлом году Google применила его для создания «отражения» пользователя из большого архива снимков.
На сегодняшний день существует множество реализаций алгоритма отслеживания позы, причем как для всего тела, так и для отельных частей, например, лица или рук. Многие из них, такие как OpenPose, имеют открытый исходный код и доступны для использования. Однако почти все эти алгоритмы используют в своей работе нейросетевые модели, требующие большой вычислительной мощности и из-за этого неприменимые на мобильных устройствах.
Программисты из Google создали открытую реализацию алгоритма отслеживания положения руки, адаптированную для работы на мобильных устройствах. В начале алгоритм анализирует кадры с камеры и обнаруживает на них руку, после чего работает только с нужной областью, что значительно снижает требуемую вычислительную мощность.
Во время работы алгоритм создает модель руки, состоящую из 21 точки, которых достаточно для относительно точного описания положения руки в конкретный момент. Алгоритм работает в двух режимах: в одном он создает двумерную модель руки, а в другом — трехмерную. На основе такого алгоритма разработчики также создали и систему распознавания жестов: получая модель руки, алгоритм анализирует углы между частями пальцев и сопоставляет их с базой известных ему жестов.
Для обучения алгоритма разработчикам пришлось создать собственный датасет из примерно 30 тысяч кадров, на каждом из которых была вручную размечена модель кисти. Для сторонних разработчиков алгоритм доступен на GihHub, причем адаптирован он для работы на обеих основных мобильных операционных системах: Android и iOS. Пользователи Android также могут установить себе два демо-приложения, одно из которых создает двумерную модель руки, а второе рисует трехмерную модель, отражающую относительное расстояние до каждой точки кисти. Для iOS доступны инструкции по сборке проекта в Xcode.
Недавно Google рассказала подробности о будущем смартфоне Pixel 4, который будет представлен в октябре 2019 года. Одной из особенностей устройства станет радар Soli: он умеет распознавать жесты. Это позволит пользователям управлять некоторыми функциями смартфона, не прикасаясь к нему.
Григорий Копиев
И сделала это быстрее
Нейросеть, созданная для расчета фракции выброса левого желудочка, в слепом исследовании показала меньше ошибок по сравнению с ручным подсчетом специалистами по ультразвуковой диагностике. Кроме того, алгоритм сделал это на две с лишним минуты быстрее человека. Исследование опубликовано в журнале Nature.