分享

Google 全国 地图 纠偏数据 偏移数据 火星坐标修正 方案

 软件团队头目 2011-12-14

Google 全国 地图 纠偏数据 偏移数据 火星坐标修正 方案   

2010-04-09 10:40:05|  分类: GPS相关 |  标签: |字号 订阅

中国地图和卫星图都存则偏移量,这个是由中国规划局,确定的,一个偏移算法,实际上是没有什么特殊规律的,他的生成算法是有规律,不过这个规律你我都很难拿到,那我们怎么解决这个偏差呢,毕竟做地图开发的都存在卫星图和地图的切换,谁不想让切换以后的地图对上呢! 后来我发现google的地图服务,ditu.gogle开始的都没有偏差,maps.google开头的服务就有偏差,我就开始查找google的取偏移量算法,事前我还是图破解google手机版本的数据,没有成功,估计是使用了自己的压缩或加密算法,最后也没有找到规律,后来才尝试破解web版本的 不过web版本的接口我对于js不是特别熟悉,所以本次破解放弃了分析源代码的步骤,而是直接采用排除法 那就是把地图部分访问的全部地址,一个接一个封杀掉,查找那个气偏移做用的网址 http://ditu.google.cn/maps/vp?spn=0.0,0.0&z=18&vp=39.111195,117.148067 最后找到了就是这个,记住每次测试用清理浏览器缓存哦,使用fixfox的fildder和adblock就够了 然后就是 分析每次返回内容的规律,黄天不负有心人啊,我总算是搞定了,下面是我整理的接口

 Google 中国地图偏移接口

 

1.      接口地址http://ditu.google.cn/maps/vp?spn=0.0,0.0&z=18&vp=39.111195,117.148067

 

(注:.cn和.com都可以,我用国内服务器就会选择.cn用美国服务器就会选择.com)

2.      返回内容中的有效部分:

3.      (39.111195, 117.148067, 18, [9, -2, 18, -4, 37, -8, 74, -16, 149, -33, 298, -67, 596, -135, 1193, -270])

4.      Spn参数暂时未知实际意义,但是需要上发spn参数,任意两个小数用逗号分开

Vp参数纬经度值,用逗号分隔,z参数为地图缩放级别,无实际意义

5.      取回的部分中有效数字为[9, -2, 18, -4, 37, -8, 74, -16, 149, -33, 298, -67, 596, -134, 1192, -268]这个数组总共有8组数字,每两个为一组,分为别从11级到18级的地图和卫星图的偏移像素数量,我们前一组数字精确的等于后一组数字除二,我们为了得到最精确的偏移,故选择第18级的偏移量1193-2701193x方向上精度的偏移像素,-270y方向上维度偏移像素

6.      经纬度的偏移转换我们需要江经纬度39.111195117.148067转化为18级像素值25620917  55392414,然后分别加上偏移量-270,1193,然后再转化为经纬度39.11231854918217 117.15446412563324,即位偏移后的经纬度



数据经度  每0.01个经纬度一个偏移量

总共数据量(9557005)条

数据格式CSV文件  每一个经度一个文件

从73-134总共62个文件  总大小480MB

数据介绍  依次为  经度  纬度  此位置偏移像素X,Y放心(google地图的第18级偏移量,没向上一级除2)

此位置经纬度偏移  保留6位小数  定位用足够了

Google 全国 地图 纠偏数据 偏移数据 火星坐标修正 方案   - mark_chen - Mark Chen 研究院Google 全国 地图 纠偏数据 偏移数据 火星坐标修正 方案   - mark_chen - Mark Chen 研究院Google 全国 地图 纠偏数据 偏移数据 火星坐标修正 方案   - mark_chen - Mark Chen 研究院


用此方法全国可以定位精确到5米内,大城市基本无偏移

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多