您的位置:首页 > 编程语言 > Go语言

Google 手机地图定位原理分析

2012-05-21 17:09 495 查看
使用过google手机地图的朋友一定会觉得使用效果非常好,手机自带Gps模块的朋友肯定说:那只不过是用Gps定位经纬度后定位到地图上的,也没有什么的。可是有人就会说,我的手机没有Gps模块,那怎么定位的?个人参考一些资料后觉得这样解释比较合理:在没有Gps模块的手机上Google 手机地图采用基站定位的方式来实现,但基站定位取来的数据中只有CellID,那Google是怎么做的呢?应该是Google 有一个自己的数据库,当中存储了对应基站的经纬度,这样只要取到基站CellID,那么就可以大致定位了。存储基站的数据库建造起来的呢,有可能Google是采用商业合作的方式取得,也有可能手机用户在进行定位的时候也打开了GPS,这样客户端就可以将基站信息和经纬度信息一起传递给Google的服务器,使用的人多了,基站定位的精度也就准起来。我觉得这样解释的话比较合理。

以上是本人最近在Window Mobile版本的定位功能开发上的一点理解,仅是推测,有不对之处,还请多多指教。

注:本文的推测参考了Google的官方文档:Mobile Help中的Accuracy of My Location Data原文如下:

Mobile towers are placed by mobile service providers throughout an area to provide coverage for their users. Each of these towers has its own individual coverage area, usually split into three non-overlapping sections known as "cells." These cells come with identification numbers, but no location information. Google takes geo-contextual information [from anonymous GPS-readings, etc.] and associates this information with the cell at that location to develop a database of cell locations.

Based on this information, Google uses various algorithms to approximate your location relative to the cells nearest you. The accuracy of this information depends on how big an individual cell is. Thus, areas with a denser concentration of mobile towers allow for a more accurate My Location (beta) reading. Additionally, as our database of cell locations continues to improve, so too does the accuracy and coverage of the My Location feature.

原文链接:http://support.google.com/mobile/bin/answer.py?hl=en&hlrm=en&answer=162844
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: