Алгоритм обнаружения движения (вперед / назад) на iPhone? - PullRequest
0 голосов
/ 29 января 2012

Я хотел бы знать, возможно ли написать код, который бы сообщал вам, идет ли пользователь или нет (с поднятым в кармане iphone) и в каком направлении он идет.

Более конкретно:

  • Мне не интересно вычислять пройденное расстояние
  • Меня не интересует подсчет шагов и т. Д.

Меня интересует обнаружение движения и неподвижности, различие между ними, а также различие между движением вперед и назад.

Я знаю, что с помощью компаса в iPhone 4S можно определить ориентацию, но как быть с движением назад?

Допустим, я начинаю идти, затем я останавливаюсь, а затем я начинаю идти назад (не поворачиваясь на 360 градусов ..)

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

Чтобы дать вам более конкретный пример:

Представьте, что я хочу, чтобы мой iPhone (в моем кармане) начал воспроизводить музыку, как только (насколько быстрым может быть ответ?), Я начинаю идти и затем останавливаюсь, как только я прекращаю идти. А затем воспроизведите видео, как только я начну идти назад (не поворачиваясь на 360).

1 Ответ

0 голосов
/ 29 января 2012

Нет.Невозможно гарантировать, в каком направлении находится iPhone, и шум в акселерометре помешает длительной калибровке.Вы можете свести на нет шум с помощью 3-х стороннего гироскопа, но для управления алгоритмом требуется чрезвычайно быстрый процессор.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...