Смартфон акселерометр жесты алгоритмы - PullRequest
6 голосов
/ 31 января 2012

Я занимаюсь разработкой простого мобильного приложения для платформы iPhone и Android и ищу алгоритмы, которые позволили бы мне запускать определенные события (функции) при обнаружении определенного жеста с помощью внутреннего акселерометра. Я работаю с PhoneGap, который использует HTML5 и javascript, который считывает три координаты (x, y и z) из акселерометра на заданном интервале (например, каждые 0,04 сек.).

Я написал простую функцию, которая обнаруживает дрожащее движение, и она работает довольно хорошо, но она примитивна (она определяет только встряхивание, а не направление) - и я хочу обнаружить некоторые другие жесты, такие как: - наклон (влево / вправо) - встряхнуть вверх / вниз - встряхните влево / вправо - круговое движение - перевернуть вверх дном - и т.д ....

Есть ли у кого-нибудь алгоритмы (или, по крайней мере, математические формулы / функции), которые могут вычислять (обнаруживать) жесты такого типа на основе имеющихся у меня значений ввода (x, y, z и временного интервала для каждого вызова)?

Я ищу любой код на любом языке программирования (я сам переписываю его на javascript. Заранее спасибо!

Ответы [ 3 ]

4 голосов
/ 01 февраля 2012

Динамическая деформация времени (DTW) делает хорошую работу, однако я бы рекомендовал использовать быструю динамическую деформацию времени (Fast DTW).FastDTW действительно применим для мобильных сценариев!Подробную версию можно найти в этой исследовательской статье: http://cs.fit.edu/~pkc/papers/tdm04.pdf

Редактировать: Некоторое время назад я написал свой тезис о 3D-жестах для управления устройствами в условиях умного дома.,Смотрите это в действии здесь (есть ссылка на PDF тоже).Я использовал FastDTW для распознавания жестов на iPhone.

1 голос
/ 01 февраля 2012

Возможно, вы захотите попробовать динамическое искажение времени . Наглядный пример: здесь .

0 голосов
/ 07 февраля 2012

Если я могу быть настолько смелым, Fast DTW (и связанные, но разные FTW Сакурая и Фалутосо) не являются хорошими решениями.

Если вы ограничите деформацию (а):

  1. Тогда использование нижней границы DTW будет таким же быстрым, как евклидово расстояние [b] [c]
  2. Точностьбудет улучшаться. (a, b)

Для ограниченного деформирования FTW и Fast DTW медленнее, чем грубая сила из-за накладных расходов (Ира Асент среди других продемонстрировала это).

a)Ратанамахатана, Калифорния и Кео.E. (2004).Все, что вы знаете о динамическом искажении времени, является неправильным: (2010)

c) http://www.cs.ucr.edu/~eamonn/LB_Keogh.htm

...