如何通过校准来偏移方向坐标(Euler或Quaternion)'取向?

时间:2015-04-08 02:11:01

标签: python orientation quaternions

我有一个名为Myo Armband的设备,我正在使用它输出的方向数据来控制手臂的位置。在python中(使用Vizard进行渲染)。现在,我有它可以做的地方

arm.setQuat(armbandQuat)

它有点工作。向上和向下是准确的,但是关于垂直轴的旋转每次都以随机方向开始。为了解决这个问题,我做了这样的事情,当你按下空格键时,它会记录偏移的四元数。我想要发生的是,无论何时按下空格,屏幕上的手臂都会进入一组“0' 0位置和围绕垂直轴的所有运动都将相对于此。换句话说,用户将手臂水平按压空间以进行校准。

对于将这两个四元数设置为正确旋转坐标,我需要做什么?最初我认为你可以将两个四元数乘以(或第二个的倒数),但如果一个是0,0,0,0那么手臂将被冻结在0,0,0,0。

如果这更容易,我也可以获得并设置欧拉坐标。看起来,四元数更像是一个完美的旋转系统。

我认为它应该有点简单,但我花了好几个小时查找答案并尝试解决问题,但没有任何作用。

0 个答案:

没有答案