Как стать автором
Обновить

Комментарии 10

>>>со временем накапливается ошибка и ориентация всей системы со временем смещается
Вот это пожалуй самый серьёзный недостаток Oculus, если вам действительно полностью удалось его решить, то это же очень здорово!
Насколько я знаю, как раз-таки связка из гироскоп+акселерометр+компас позволяют не накапливать ошибку ориентации: по акселерометру всегда можно узнать «опорный вектор» силы тяжести, а по компасу — магнитного поля Земли. Смешивая эти показания с интегралом гироскопа с помощью фильтра Калмана или комплементарного фильтра — получаем довольно точно ориентацию без накапливания ошибки.
Действительно, даже самый дешевый акселерометр в долгосрочной перспективе дает правильное направление вектора силы тяжести, но в краткосрочной, когда на систему действуют иные внешние силы (система двинулась с неким ускорением в произвольную сторону) для компенсации используются данные гироскопа. В итоге положение вектора гравитации становится верным как в краткосрочной, так и долгосрочной перспективе. Остается найти угол относительно этого вектора, который и определит абсолютную ориентацию системы. Показания магнетометра (актуально для дешевых, используемых в потребительской электронике), действительно, можно считать опорными, но лишь в среднесрочной перспективе по ряду причин, например воздействие внешних электромагнитных полей, погрешностей при производстве и т.д. (не просто же нас заставляют трясти смартфон при использовании карт, причем периодически). В итоге, все равно, надо искать источник данных, не дающих дрифта в долгосрочной перспективе. Таким источником в данном случае и является внешняя камера (при условии что она сама не движется).
Для отслеживания положения подвижного объекта в некоей неподвижной СК нужно проецировать ускорения из СК связанной жестко с подвижным объектом в СК неподвижную. Затем дважды интегрировать следует спроецированные ускорения для получения текущих координат. Ни комплиментарный, ни калмановского типа фитр не устраняют полностью ошибку акселерометров и гироскопов. В итоге вы интегрируете дважды двойную ошибку — от акселерометра и от гироскопа.

Без внешнего референса ошибку не погасить. Зато внешний референс может обладать очень низким быстродействием, если накопление ошибок медленное. Так работают БИНС, комплексированные со спутниковыми системами навигации и/или ориентации.
Я, возможно чего-то не понимаю, но я ни разу не видел нормально работющего электронного компаса — во всех мобильных устройствах они работают нормально только в сельской местности, а в городе показывают с ошибкой
Хотелось бы услышать технические подробности вашего решения, такие как точность позиционирвания. И к чему подключены эти камеры, кто выполняет трекинг по ним? тот же PC что выводит картинку, или есть промежуточный вычислитель?

Если я правильно понял, второй прототип DK2 делает то же самое, тогда в чем отличие вашей системы (кроме более высокой частоты кадров)? Насколько я понимаю, такой апгрейд не из дешевых?
Скорость трекинга (минимальная задержка) + стабильность (работает когда пользователь отвернулся от камеры) + простота решения (использование маркеров-наклеек вместо сетки светодиодов).
Если забыть про светодиоды, то можно использовать PSeye. Она может обеспечить 187fps на 320х240 (данные числа взял с форума mtbs3d.com. Да, нужно ставить диоды, но цена, уверен, много меньше (камера стоит порядка 500р. на вторичном рынке).
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории