位置要求最小位移和精度
Posted
技术标签:
【中文标题】位置要求最小位移和精度【英文标题】:LocationRequest smallest displacement and accuracy 【发布时间】:2014-04-17 09:27:47 【问题描述】:我正在构建一个 android 应用,我需要在其中以非常高的频率获得非常准确的位置。 我深入研究了用于定位的 google play services api,发现 LocationRequest.setSmallestDisplacement 对于限制电池消耗非常有用。
但是,当我在室内进行测试时,即使我将请求的优先级设置为高精度,我得到的位置的精度也会有很大差异(有时 10m,有时 96m...)。
我的问题是 setSmallestDisplacement 并没有对最后返回的准确性表示怀疑。 因此,如果我得到一个精度非常低的位置,我仍然需要走我的“最小位移”距离才能得到一个新的位置,希望更准确。
我想知道是否有办法避免此类数据(我不能使用不够准确的位置),或者我是否必须跳过 setSmallestDisplacement 部分(不利于电池消耗)。
一些代码供您欣赏:
mLocationRequest = LocationRequest.create();
mLocationRequest.setInterval(100); //We get a new location every 100ms or so
//mLocationRequest.setSmallestDisplacement(5); //but only if we traveled 5m
mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
谢谢。
【问题讨论】:
如果您找到任何解决方案,请发布答案。 您正在测试哪种设备 - 仅 WiFi 或数据+Wifi? 同意。如果该位置来自精度为 3000m 的蜂窝塔,那么获得一个最小位移 100m 的位置有什么用。 你往哪个方向走? 【参考方案1】:“LocationRequest.setSmallestDisplacement”不影响准确性,只是为了避免不必要的更新,您可以继续使用。
没有任何方法可以提高低精度,您只需获得一些精度(更好或更差)的点,如果您对精度低的位置不感兴趣,请跳过该位置并等待更好的位置。
此页面可以帮助您了解准确度和消耗,但请注意不存在完美的准确度,Wi-Fi 的准确度为 100m,准确度更差。
这里有每个优先级的准确度。https://developer.android.com/training/location/receive-location-updates.html#location-request
这里是谷歌工程师的 IO Session,非常有用,你也可以在那里获取 PDF。https://developers.google.com/events/io/sessions/325337477
更新的链接失效
PDF Presentation
IO session
希望这会有所帮助:D。
【讨论】:
好吧,那是很久以前的事了,我不再从事这个项目了,但你的回答确实为这个主题带来了一些启示。谢谢! 不知道这有什么帮助。如果它们更准确,发问者希望获得小于最小位移的位置。除非我误会了? IO 会话链接已损坏,能否更新或提供其名称和年份? @MidasLefko 请仔细阅读! "如果您对精度较低的位置不感兴趣,请跳过此位置并等待更好的位置"以上是关于位置要求最小位移和精度的主要内容,如果未能解决你的问题,请参考以下文章
机加尺寸精度等级有多少级?车床加工能达到啥精度等级?怎样确定一个零件的加工工时?