gps定位坐标系转换问题
gps定位坐标系转换问题
对于坐标系的转换,给很多GPS的使用者造成一些迷惑,尤其是对于刚刚接触的人,搞不明白到底是怎么一回事。我对坐标系的转换问题,也是一知半解,对于没学过测量专业的人来说,各种参数的搞来搞去实在让人迷糊。在我有限的理解范围内,我想在这里简单介绍一下,主要是抛砖引玉,希望能引出更多的高手来指点迷津。
我们常见的坐标转换问题,多数为WGS84转换成北京54或西安80坐标系。其中WGS84坐标系属于大地坐标,就是我们常说的经纬度坐标,而北京54或者西安80属于平面直角坐标。对于什么是大地坐标,什么是平面直角坐标,以及他们如何建立,我们可以另外讨论。这里不多罗嗦。
那么,为什么要做这样的坐标转换呢?
因为GPS卫星星历是以WGS84坐标系为根据而建立的,我国目前应用的地形图却属于1954年北京坐标系或1980年国家大地坐标系;因为不同坐标系之间存在着平移和旋转关系(WGS84坐标系与我国应用的坐标系之间的误差约为80),所以在我国应用GPS进行绝对定位必须进行坐标转换,转换后的绝对定位精度可由80提高到5-10米。简单的来说,就一句话,减小误差,提高精度。
下面要说到的,才是我们要讨论的根本问题:如何在WGS84坐标系和北京54坐标系之间进行转换。
说到坐标系转换,还要罗嗦两句,就是上面提到过的椭球模型。我们都知道,地球是一个近似的椭球体。因此为了研究方便,科学家们根据各自的理论建立了不同的椭球模型来模拟地球的形状。而且我们刚才讨论了半天的各种坐标系也是建立在这些椭球基准之上的。比如北京54坐标系采用的就是克拉索夫斯基椭球模型。而对应于 WGS84坐标系有一个WGS84椭球,其常数采用 IUGG第17届大会大地测量常数的推荐值。WGS84椭球两个最常用的几何常数:长半轴:6378137±2(m);扁率:1:298.257223563
之所以说到半长轴和扁率倒数是因为要在不同的坐标系之间转换,就需要转换不同的椭球基准。这就需要两个很重要的转换参数dA、dF。
dA的含义是两个椭球基准之间半长轴的差;dF的含义是两个椭球基准之间扁率倒数的差。
在进行坐标转换时,这两个转换参数是固定的,这里,我们给出在进行84—〉54,84—〉80坐标转换时候的这两个参数如下:
WGS84>北京54:DA:-108;DF:0.0000005
WGS84>西安80:DA: -3 ;DF: 0
椭球的基准转换过来了,那么由于建立椭球的原点还是不一致的,还需要在dXdYdZ这三个空间平移参量,来将两个不同的椭球原点重合,这样一来才能使两个坐标系的椭球完全转换过来。而由于各地的地理位置不同,所以在各个地方的这三个坐标轴平移参量也是不同的,因此需要用当地的已知点来计算这三个参数。具体的计算方法是:
第一步:搜集应用区域内GPS“B”级网三个以上网点WGS84坐标系B、L、H值及我国坐标系(BJ54或西安80)B、L、h、x值。(注:B、L、H分别为大地坐标系中的大地纬度、大地经度及大地高,h、x分别为大地坐标系中的高程及高程异常。各参数可以通过各省级测绘局或测绘院具有“A”级、“B”级网的单位获得。)
第二步:计算不同坐标系三维直角坐标值。计算公式如下:
X=(N+H)cosBcosL
Y=(N+H)cosBsinL
Z=[N(1-e2)+H]sinB
不同坐标系对应椭球的有关常数详见下表:
项目
WGS84坐标系
BJ54坐标系
西安80坐标系
gps定位坐标系转换问题
对于坐标系的转换,给很多GPS的使用者造成一些迷惑,尤其是对于刚刚接触的人,搞不明白到底是怎么一回事。我对坐标系的转换问题,也是一知半解,对于没学过测量专业的人来说,各种参数的搞来搞去实在让人迷糊。在我有限的理解范围内,我想在这里简单介绍一下,主要是抛砖引玉,希望能引出更多的高手来指点迷津。
我们常见的坐标转换问题,多数为WGS84转换成北京54或西安80坐标系。其中WGS84坐标系属于大地坐标,就是我们常说的经纬度坐标,而北京54或者西安80属于平面直角坐标。对于什么是大地坐标,什么是平面直角坐标,以及他们如何建立,我们可以另外讨论。这里不多罗嗦。
那么,为什么要做这样的坐标转换呢?
因为GPS卫星星历是以WGS84坐标系为根据而建立的,我国目前应用的地形图却属于1954年北京坐标系或1980年国家大地坐标系;因为不同坐标系之间存在着平移和旋转关系(WGS84坐标系与我国应用的坐标系之间的误差约为80),所以在我国应用GPS进行绝对定位必须进行坐标转换,转换后的绝对定位精度可由80提高到5-10米。简单的来说,就一句话,减小误差,提高精度。
下面要说到的,才是我们要讨论的根本问题:如何在WGS84坐标系和北京54坐标系之间进行转换。
说到坐标系转换,还要罗嗦两句,就是上面提到过的椭球模型。我们都知道,地球是一个近似的椭球体。因此为了研究方便,科学家们根据各自的理论建立了不同的椭球模型来模拟地球的形状。而且我们刚才讨论了半天的各种坐标系也是建立在这些椭球基准之上的。比如北京54坐标系采用的就是克拉索夫斯基椭球模型。而对应于 WGS84坐标系有一个WGS84椭球,其常数采用 IUGG第17届大会大地测量常数的推荐值。WGS84椭球两个最常用的几何常数:长半轴:6378137±2(m);扁率:1:298.257223563
之所以说到半长轴和扁率倒数是因为要在不同的坐标系之间转换,就需要转换不同的椭球基准。这就需要两个很重要的转换参数dA、dF。
dA的含义是两个椭球基准之间半长轴的差;dF的含义是两个椭球基准之间扁率倒数的差。
在进行坐标转换时,这两个转换参数是固定的,这里,我们给出在进行84—〉54,84—〉80坐标转换时候的这两个参数如下:
WGS84>北京54:DA:-108;DF:0.0000005
WGS84>西安80:DA: -3 ;DF: 0
椭球的基准转换过来了,那么由于建立椭球的原点还是不一致的,还需要在dXdYdZ这三个空间平移参量,来将两个不同的椭球原点重合,这样一来才能使两个坐标系的椭球完全转换过来。而由于各地的地理位置不同,所以在各个地方的这三个坐标轴平移参量也是不同的,因此需要用当地的已知点来计算这三个参数。具体的计算方法是:
第一步:搜集应用区域内GPS“B”级网三个以上网点WGS84坐标系B、L、H值及我国坐标系(BJ54或西安80)B、L、h、x值。(注:B、L、H分别为大地坐标系中的大地纬度、大地经度及大地高,h、x分别为大地坐标系中的高程及高程异常。各参数可以通过各省级测绘局或测绘院具有“A”级、“B”级网的单位获得。)
第二步:计算不同坐标系三维直角坐标值。计算公式如下:
X=(N+H)cosBcosL
Y=(N+H)cosBsinL
Z=[N(1-e2)+H]sinB
不同坐标系对应椭球的有关常数详见下表:
项目
WGS84坐标系
BJ54坐标系
西安80坐标系
A
6378137
6378245
6378140
e2
0.00669437999013
0.006693427
0.006694385
(注:X、Y、Z为大地坐标系中的三维直角坐标;A为大地坐标系对应椭球之长半轴;e2为大地坐标系对应椭球第一偏心率; N为该点的卯酉圈曲率半径,N=A/(1-e2sin2B)1/2;H=h+x,该处H为BJ54或西安80坐标系中的大地高)
第三步:求出DX,DY,DZ。即利用WGS84坐标系的X、Y、Z值,减去我国坐标系的对应值,得出实现坐标系统转换的三个参数。(应算出WGS84与北京和西安坐标系两套参数。)
第四步:参数验证。参数计算之后必须对其进行验证。验证的方法是在应用区域内选择5个以上水准点进行实测,实测值与测绘部门提供的理论值对比,如果最大误差不大于15米,平均误差不大于10米,则计算出的参数可以使用,否则要重新计算或查找出现问题的原因。
对了,还有一个很重要的事情,要在位置格式的地方,选择用户自定义方式,输入如下参数:
中央经线:视当地经度确定;
投影比例:1;
东西偏差:500000;
南北偏差:0
在这里面中央经线的确定很重要,根据实际所在地不同而有所和差异。至于投影比例、东西偏差这些参数的实际意义么,还是另外开题写吧,那也是不少的内容呢。
到此为止,进行坐标转换的五个参数都已经得到了,那么可以将这些参数输入到手持机中,进行测量了。
上面所说的,是坐标系转换参数的原理,根据这些公式可以计算出参数。但是计算的工作量就比较大了。目前来说都是使用求转换参数的程序来进行计算的,方便快捷。但是没办法法在这里,如果有需要这个转换程序的,可以留下邮件地址,我可以免费大放送,条件只有一个:上面这些东西,我断断续续的花费了不少时间,要是有人要转贴的话,别忘了注明出处啊!
AKA
另附:由于工作原因,已经调离原岗位,很久没有登录论坛了。如果还有需要程序的朋友请直接给我发邮件索取吧,只要我收到邮件就会第一时间回复。