Смещение камеры | Проект Танго
Я разрабатываю приложение дополненной реальности для Project Tango с использованием Unity3d.
Поскольку я хочу, чтобы виртуальный объект взаимодействовал с реальным миром, я использую сцену Meshing with Physics из примеров в качестве своей основы и поместил сборную камеру Tango AR Camera внутри камеры Tango Delta Camera (в относительном положении (0,0,0)).
Я обнаружил, что мне нужно повернуть камеру AR примерно на 17 градусов, чтобы динамическая сетка соответствовала комнате, однако при этом предварительный просмотр с камеры все еще имеет значительное смещение.
Мне было интересно, если бы кто-нибудь, кто имел дело с этим раньше, мог бы поделиться своим решением по согласованию Dynamic Mesh с реальным миром.
Как я могу выровнять виртуальный мир с изображением с камеры?
1 ответ
У меня похожие проблемы. Похоже, что это связано с парой ранее отвеченных вопросов:
Облако точек отображается только частично
Пример Point Cloud Unity отображает только точки для верхней половины экрана
Вы должны принять во внимание смещение цветной камеры от начала координат устройства, которое требует, чтобы вы получили позу цветной камеры относительно устройства. Вы не можете сделать это напрямую, но вы можете получить устройство в кадре IMU, а также цветную камеру в кадре IMU, чтобы отработать цветную камеру в кадре устройства. Ссылки выше показывают пример кода.
Вы должны смотреть на что-то вроде (в единичных координатах) смещения (0,061, 0,004, -0,001) и поворота на 13 градусов вокруг оси x.
Когда я пытаюсь использовать примеры, я получаю прерывистое вращение, поэтому возьмите эти числа со щепоткой соли. Я также вижу небольшие повороты вокруг y и z, которые не соответствуют ожидаемым.