最近使用GPS模块(L76C)定位时发现获取到的坐标在地图上面显示的位置和实际的位置存在偏差,产生此问题的原因是坐标系不统一导致的。
我们从模块获取到的定位数据使用的坐标系叫做WGS84坐标系,而地图软件使用的坐标系并不是这个,例如百度地图使用的坐标系是BD09,高德地图使用的坐标系是GCJ02。这三种坐标系的介绍如下:
WGS84:为一种大地坐标系,也是目前广泛使用的GPS全球卫星定位系统使用的坐标系。
GCJ02:又称火星坐标系,是由中国国家测绘局制定的地理坐标系统,是由WGS84加密后得到的坐标系。
BD09:为百度坐标系,在GCJ02坐标系基础上再次加密。其中bd09ll表示百度经纬度坐标,bd09mc表示百度墨卡托米制坐标。
因此使用时需要进行坐标系的转换,转换之后的坐标就是准确坐标了。
推荐一个上面三种坐标系转换的工具链接:
长这样的:
分享一篇关于地图坐标系的详细介绍博客: