我想构建一个应用程序,使用陀螺+加速度计计算iPhone(非长距离)的准确行进距离.这里不需要GPS.
我该如何处理这个问题?
据我了解,GPS的准确性有限.是否有可能为3D空间中的人获得更精确的位置?
我打算编写一个应用程序,用户可以在任何方向上移动手机,但只需要移动几英尺.是否有任何技术,可能使用加速度计和陀螺仪来实现这种精确度?
例如,用户将电话保持平坦(使得电话的底部与地板平行).屏幕上有一些东西,当人向前,向后和左右移动时,它不会随着屏幕移动.因此,对象看起来是不可移动的,并且只有通过将电话放在3D空间中的正确位置才能发现.
我不需要任何人编写一些代码,只要简单地了解一下,如果通过一些努力工作,这甚至是可能的.
谢谢!
德里克
我正在开发一个应用程序,我想跟踪移动用户在GPS不可用的建筑物内的位置.用户在众所周知的固定位置(精确到5厘米内)开始,此时电话中的加速度计将被激活以跟踪相对于该固定位置的任何进一步的移动.我的问题是,在当代智能手机(iphone,Android手机等)中,人们可以准确地根据这些手机通常配备的加速度计来跟踪某些人的位置吗?
具体的例子很好,例如"如果我从起点移动50米X,从起点移动35米Y,从起点移动5米Z,我可以预期我的位置近似在+/- 80之内大多数现有智能手机上的厘米",或者其他什么.
我对卡尔曼滤波器等技术只有肤浅的理解来校正漂移,但是如果这些技术与我的应用相关并且有人想要描述我可能从这些技术中获得的校正的质量,那将是一个加分.
我只是应用程序开发行业的初学者.我知道加速度计可用于沿三轴返回当前加速度,单位为米/秒平方(m/s2).但我已经知道加速度计也可以用作速度计.
我想知道如何使用加速度计来确定Android设备在兴趣点之间的行进距离.如果可能,那我该如何实现呢?我已经看到了类似的问题"我如何使用加速度计测量 Iphone行进的距离" 如何测量iPhone使用加速度计行进的距离?.但我没有达到目的.
谢谢,阿尔斯兰
我想通过移动iPhone在iPhone屏幕上移动对象(矩形,圆形等).例如,我沿着X轴移动iPhone,对象沿着X轴移动.Y轴,Z轴相同.
我怎样才能做到这一点?我可以获得算法吗?
谢谢.
PS:我看了一会儿,似乎有可能使用加速度计.
最近我做了一些研究,使用加速度计+陀螺仪来使用那些传感器在没有GPS帮助的情况下跟踪智能手机(参见这篇文章) 基于陀螺仪和加速度计的室内定位系统
为此我需要我的方向(角度(俯仰,滚动等))所以这里到目前为止我所做的:
public void onSensorChanged(SensorEvent arg0) {
if (arg0.sensor.getType() == Sensor.TYPE_ACCELEROMETER)
{
accel[0] = arg0.values[0];
accel[1] = arg0.values[1];
accel[2] = arg0.values[2];
pitch = Math.toDegrees(Math.atan2(accel[1], Math.sqrt(Math.pow(accel[2], 2) + Math.pow(accel[0], 2))));
tv2.setText("Pitch: " + pitch + "\n" + "Roll: " + roll);
} else if (arg0.sensor.getType() == Sensor.TYPE_GYROSCOPE )
{
if (timestamp != 0) {
final float dT = (arg0.timestamp - timestamp) * NS2S;
angle[0] += arg0.values[0] * dT;
filtered_angle[0] = (0.98f) * (filtered_angle[0] + arg0.values[0] * dT) + (0.02f)* (pitch); …Run Code Online (Sandbox Code Playgroud) 是否可以使用加速度计来检测高度?例如,如果我拿着手机,然后抬起手臂后检测身高?
谢谢