IOS: точность перемещения в 3D пространстве
Из того, что я понимаю, GPS имеет ограниченную точность. Возможно ли получить более точное местоположение для человека в трехмерном пространстве?
Я планирую написать приложение, в котором пользователи будут перемещаться со своими телефонами в любом направлении, но нужно только перемещаться на несколько футов. Есть ли какой-либо метод, возможно, с помощью акселерометра и гироскопа, которые позволили бы достичь такой степени точности?
Например, пользователь держит телефон плоским (так, что нижняя часть телефона работает параллельно с полом). На экране что-то нарисовано, что не движется "с экраном", когда человек идет вперед, назад и бок о бок. Таким образом, объект кажется неуправляемым и доступен только при наличии телефона в правильном положении в трехмерном пространстве.
Мне не нужен кто-то, чтобы выложить какую-то кодировку, просто дайте мне краткое понимание, если с какой-то тяжелой работой это может быть даже возможно.
Спасибо!
Дерек
Ответы
Ответ 1
Нет, не совсем. Если вы дважды интегрируете значения акселерометра, вы получите позицию, но ошибка ужасна. На практике это бесполезно.
Вот объяснение, почему (Google Tech Talk) в 23:20.
На самом деле вы могли бы открыть свой "скрытый объект", изменив ориентацию телефона. Это очень хорошо работает с акселерометрами и компасом. Это именно то, что вы видите в видео, опубликованном colechristensen.
Ответ 2
Посмотрите http://www.readwriteweb.com/archives/impressive_augmented_reality_demo_shows_off_sensor_fusion.php
Можно значительно увеличить местоположение путем объединения выходов с различных датчиков с помощью "слияния датчиков". Самая интересная концепция, я думаю, использует вывод с камеры для обнаружения и записи движения (в сочетании с гироскопами, акселерометрами и GPS). Вы должны написать фильтр Kalman для объединения.
Проблема заключается в том, что это находится на уровне инженера-градиента, который много лет изучал такие вещи. Не невозможно, но будьте готовы к вызову.