0

Я пытаюсь получить значимую информацию о «ориентации устройства» из значений, которые я читаю из класса CLHeading, который я получаю из обновлений объекта CLLocationManager. Этот класс содержит три значения x, y, z, которые находятся в микротеслах, и, как я понимаю из документов, это вектор, указывающий на магнитный север Земли, с отфильтрованным магнитным смещением устройства. Теперь, что я хочу быть уверенным, в какой системе координат у нас есть эти показания? Являются ли они по отношению к собственной системе координат устройства, которое показано на следующем рисунке:iOS - Интерпретация значений x, y, z CLHeading

coords

, который используется в рамках основной Motion?

Кроме того, есть ли устойчивый, установленный способ, с помощью которого я могу получить векторы оси рамки на картинке выше? Согласно моим показаниям, iOS не предоставляет этого, за исключением «отношения» устройства, которое предоставляется как углы угла наклона (шаг, рыскание, рулон) устройства, которые обновляются с помощью метода startDeviceMotionUpdatesUsingReferenceFrame базовой схемы ядра. Но я обнаружил, что эти значения угла очень ненадежны, поскольку они флуктуируют, даже когда устройство стоит на месте. Мне нужны данные ориентации устройства как точный насколько возможно, так как я собираюсь использовать данные для калибровки системы камер.

Заранее спасибо.

ответ

1

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

Смежные вопросы