Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用Android设备检测人类左右跳跃?_Java_Android_Algorithm_Android Sensors - Fatal编程技术网

Java 如何使用Android设备检测人类左右跳跃?

Java 如何使用Android设备检测人类左右跳跃?,java,android,algorithm,android-sensors,Java,Android,Algorithm,Android Sensors,一段时间以来,我一直在研究Android的线性加速度,并将其输入到我们检测Android设备向左或向右跳跃的算法中。 我一直在尝试许多不同的算法和技术来实现我的方法。如果你有任何想法,请帮助解决这个问题。 这是我的密码 //In onCreate method sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE); defaultSensor = sensorManager.getDefaultS

一段时间以来,我一直在研究Android的线性加速度,并将其输入到我们检测Android设备向左或向右跳跃的算法中。 我一直在尝试许多不同的算法和技术来实现我的方法。如果你有任何想法,请帮助解决这个问题。 这是我的密码

    //In onCreate method
    sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
    defaultSensor = sensorManager.getDefaultSensor(Sensor.TYPE_LINEAR_ACCELERATION);
    sensorManager.registerListener(this, defaultSensor, SensorManager.SENSOR_DELAY_UI);

 @Override
 public void onSensorChanged(SensorEvent event) {
    this.event = event;
    x = Double.parseDouble(df.format(event.values[0]));
    y = Double.parseDouble(df.format(event.values[1]));
    z = Double.parseDouble(df.format(event.values[2]));
    /**
     * track event records when user fill free to Jump
     */
    // some other calculation
   }

@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
在我的计算中,我尝试了卡尔曼滤波、互补滤波以及用于检测跳跃的GPS传感器融合。也许我可能会错过一些东西,我无法找到解决办法。所以,如果你有卡尔曼滤波和所有的解决方案,那么我也很乐意尝试


提前谢谢。

你读了吗?有一些有用的方法formulas@MatPag,我也试过,但不是所有位置都准确。意味着如果我不考虑手机的旋转或倾斜,只停留在一个方向,那么它就工作了。否则,它不会给出准确的结果。当我倾斜手机时,它不工作。