Bry*_*mas 10 android accelerometer geolocation
我正在开发一个应用程序,我想跟踪移动用户在GPS不可用的建筑物内的位置.用户在众所周知的固定位置(精确到5厘米内)开始,此时电话中的加速度计将被激活以跟踪相对于该固定位置的任何进一步的移动.我的问题是,在当代智能手机(iphone,Android手机等)中,人们可以准确地根据这些手机通常配备的加速度计来跟踪某些人的位置吗?
具体的例子很好,例如"如果我从起点移动50米X,从起点移动35米Y,从起点移动5米Z,我可以预期我的位置近似在+/- 80之内大多数现有智能手机上的厘米",或者其他什么.
我对卡尔曼滤波器等技术只有肤浅的理解来校正漂移,但是如果这些技术与我的应用相关并且有人想要描述我可能从这些技术中获得的校正的质量,那将是一个加分.
Ali*_*Ali 14
如果将加速度计值积分两次,则得到位置但错误很可怕.它在实践中毫无用处.
以下是23:20 解释原因(Google Tech Talk)的原因.
我回答了类似的问题.
我不知道这个线程是否仍然处于打开状态,或者即使您仍在尝试这种方法,但我至少可以给出一个输入,考虑到我尝试了同样的事情.
阿里说......太可怕了!加倍度计中最小的测量误差在双重积分后变得无重复.并且由于行走时加速度的不断增加和减少(事实上每一步脚),这个错误会随着时间的推移而迅速累积.
关于这些坏消息我很遗憾.我也不想相信它,直到尝试自己...过滤掉不需要的测量也不起作用.
如果你有兴趣继续你的项目,我还有另一种方法可能是合理的.(我为我的计算机工程学位论文所遵循的方法)......通过图像处理!
你基本上遵循光学鼠标的理论.光流,或称为视图,Ego-Motion.在Androids NDK中实现的图像处理算法.甚至通过NDK实现了OpenCV来简化算法.您将图像转换为灰度(补偿不同的光强度),然后对图像实施阈值处理,图像增强(以补偿行走时图像变得模糊),然后进行角点检测(提高总结果估计的准确度),然后进行模板匹配做图像帧之间的实际比较并估计像素量的实际位移.
然后,您将通过反复试验来估计哪个像素数量代表哪个距离,然后乘以该值以将像素位移转换为实际位移.这可以工作直到一定的移动速度,真正的问题是相机图像仍然变得太模糊,无法通过行走进行准确的比较.这可以通过设置相机快门或ISO(我还在玩这个)来改进.
所以希望这有帮助...否则谷歌为Egomotion实时应用程序.最终你会得到正确的东西,并找出我刚刚向你解释的乱语.请享用 :)
| 归档时间: |
|
| 查看次数: |
22747 次 |
| 最近记录: |