Получение неустойчивости руки

Я делаю марионетное приложение с помощью Leap Motion. Всякий раз, когда я пытаюсь получить "Ярость руки", всегда кажется неправильным (т.е. "Моя рука плоская, но она говорит, что она на 45 градусов, или моя рука плоская, и она говорит, что она на -30 градусах, как правило, ненадежна и нервна), я использую

Hand hand = frame.hands().get(0);

 palm1Position = hand.palmPosition();

 normal = hand1.palmNormal();
 direction = hand1.direction();

 palmRoll = Math.toDegrees(normal1.roll());
 palmYaw = Math.toDegrees(direction1.yaw());

Получить Roll и Yaw руки. Рулон работает отлично, но рыскание ужасно. Это проблема, потому что марионетки сильно зависят от рыскания. Любая идея, почему это происходит и как я могу это исправить?

2 ответа

Я нахожусь в JavaScript, и я не думаю, что у нас это есть, но документы Java говорят, что вы должны иметь это

float pitch = hand.direction().pitch();
float yaw = hand.direction().yaw();
float roll = hand.palmNormal().roll();

См. Https://developer.leapmotion.com/documentation/Languages/Java/Guides/Leap_Tracking.html.


Чтобы получить рывку вашей руки, почему бы не получить вектор среднего пальца? Или, может быть, в среднем все пальцы руки?

Я не знаю, будут ли результаты лучше, но я думаю, что это может стоить тестирования.

И какой язык вы используете? Ява?

licensed under cc by-sa 3.0 with attribution.