0
我想根據旋轉矢量做一些工作。問題在於大多數Android設備都沒有陀螺儀傳感器(也沒有旋轉矢量傳感器)。我認爲有一種方法可以通過使用加速度計(用於俯仰和滾轉)和磁力計(用於偏航)來計算四元數的近似值。問題是它們的值不受最大值的限制(對於俯仰和滾動,我可以使用G = 9.81並嘗試過濾額外的加速度)。來自加速度計和磁力計的俯仰,滾轉和偏航
有人可以幫我找到一個近似解決方案嗎?
我想根據旋轉矢量做一些工作。問題在於大多數Android設備都沒有陀螺儀傳感器(也沒有旋轉矢量傳感器)。我認爲有一種方法可以通過使用加速度計(用於俯仰和滾轉)和磁力計(用於偏航)來計算四元數的近似值。問題是它們的值不受最大值的限制(對於俯仰和滾動,我可以使用G = 9.81並嘗試過濾額外的加速度)。來自加速度計和磁力計的俯仰,滾轉和偏航
有人可以幫我找到一個近似解決方案嗎?
float[] rotationMatrix = new float[16];
float[] rotationMatrixRemapped = new float[16];
float[] accMagOrientation = new float[3];
SensorManager.getRotationMatrix(rotationMatrix, null, oldAccelerometerVals, oldMagnetometerVals);
SensorManager.remapCoordinateSystem(rotationMatrix, SensorManager.AXIS_MINUS_Y, SensorManager.AXIS_MINUS_X, rotationMatrixRemapped);
SensorManager.getOrientation(rotationMatrix, accMagOrientation);