ARKit Body Tracking: неточность вращения головы и тела при повороте модели назадIOS

Программируем под IOS
Ответить
Гость
 ARKit Body Tracking: неточность вращения головы и тела при повороте модели назад

Сообщение Гость »


У меня возникла проблема с отслеживанием тела в ARKit. Проблема возникает, когда тело поворачивается спиной к камере; BodyTrackedEntity не работает точно в определенных сценариях.

Например, кажется, что повороты головы и тела расходятся: голова может начать вращаться слева направо, а тело — справа налево, что приводит к неточному отслеживанию.

Похоже, что вращение головы существенно влияет на оценку вращения всего тела. Есть ли способ исключить определенные суставы из процесса отслеживания? Альтернативно, могу ли я вручную настроить соединения моего BodyTrackedEntity? Бывают случаи, когда я предпочитаю не устанавливать их положение или поворот.

Ниже приведены скриншоты процесса обнаружения и мой текущий код реализации:

символ var: BodyTrackedEntity? пустьcharacterAnchor = AnchorEntity() // другие конфигурации в порядке расширение CameraViewController: ARSessionDelegate { func session (_ session: ARSession, якоря DidUpdate: [ARanchor]) { для якоря в якорях { если let bodyAnchor = якорь как? ARBodyAnchor { пусть bodyPosition = simd_make_float3(bodyAnchor.transform.columns.3) characterAnchor.position = bodyPosition +characterOffset characterAnchor.orientation = Transform(матрица: bodyAnchor.transform).rotation если пусть символ = символ, символ.родитель == ноль { персонажAnchor.addChild(символ) } } } } }
Изображение



Изображение

Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»