周二晚上我发生了一场车祸,希望有人可以提供帮助。
我想知道是否有可能从我的手机收集位置或加速度计数据,以帮助查明影响时间,这可能与交通灯数据或来自附近摄像机或其他数据的视频一起使用。
对稍微偏离主题的请求表示道歉。我的一些开发者朋友推荐这里发布。
答案 0 :(得分:0)
来自你的问题,是的,可以通过
来完成让加速度计不时得到它的价值,因为当你的车辆崩溃时,力量会给出非常高的结果
从我的角度来看,你需要使用罗盘传感器来帮助它正确计算,(加上GPS传感器,它对计算你当前的速度有很大帮助)
最后一个,你需要研究一下车辆撞坏的方式,当它撞击力的时候会前后退出,所以很多实验或好的研究都会对你有很大的帮助
用于启动加速度计,(没有多少移动设备有此传感器)
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// to get accelerometer censor
senSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
senAccelerometer = senSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
senSensorManager.registerListener(this, senAccelerometer , SensorManager.SENSOR_DELAY_NORMAL);
}
@Override
public void onSensorChanged(SensorEvent sensorEvent) {
Sensor mySensor = sensorEvent.sensor;
if (mySensor.getType() == Sensor.TYPE_ACCELEROMETER) {
float x = sensorEvent.values[0];
float y = sensorEvent.values[1];
float z = sensorEvent.values[2];
long curTime = System.currentTimeMillis();
if ((curTime - lastUpdate) > 100) {
long diffTime = (curTime - lastUpdate);
lastUpdate = curTime;
float speed = Math.abs(x + y + z - last_x - last_y - last_z)/ diffTime * 10000;
if (speed > MIGHT_BE_CRASHING_THRESHOLD) {
// do something
}
last_x = x;
last_y = y;
last_z = z;
}
}
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}