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