gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15945
  • QQ554730525
  • 铜币25337枚
  • 威望15352点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
阅读:32504回复:80

用EXCEL完成GPS坐标转换的简易方法

楼主#
更多 发布于:2003-09-04 17:56
用EXCEL完成GPS坐标转换的简易方法

 [摘要] 对利用EXCEL电子表格进行高斯投影换算的方法进行了较详细的介绍,对如何进行GPS坐标系转换进行了分析,提出了一种简单实用的坐标改正转换方法,介绍了用EXCEL完成转换的思路。

[关键字] 电子表格;GPS;坐标转换

 

 

作为尖端技术GPS,能方便快捷性地测定出点位坐标,无论是操作上还是精度上,比全站仪等其他常规测量设备有明显的优越性。随着我国各地GPS差分台站的不断建立以及美国SA政策的取消,使得单机定位的精度大大提高,有的已经达到了亚米级精度,能够满足国土资源调查、土地利用更新、遥感监测、海域使用权清查等工作的应用。在一般情况下,我们使用的是1954年北京坐标系或1980年西安坐标系(以下分别简称54系和80系),而GPS测定的坐标是WGS-84坐标系坐标,需要进行坐标系转换。对于非测量专业的工作人员来说,虽然GPS定位操作非常容易,但坐标转换则难以掌握,EXCEL是比较普及的电子表格软件,能够处理较复杂的数学运算,用它来进行GPS坐标转换、面积计算会非常轻松自如。要进行坐标系转换,离不开高斯投影换算,下面分别介绍用EXCEL进行换算的方法和GPS坐标转换方法。

一、用EXCEL进行高斯投影换算

从经纬度BL换算到高斯平面直角坐标XY(高斯投影正算),或从XY换算成BL(高斯投影反算),一般需要专用计算机软件完成,在目前流行的换算软件中,存在一个共同的不足之处,就是灵活性较差,大都需要一个点一个点地进行,不能成批量地完成,给实际工作带来许多不便。笔者发现,用EXCEL可以很直观、方便地完成坐标换算工作,不需要编制任何软件,只需要在EXCEL的相应单元格中输入相应的公式即可。下面以54系为例,介绍具体的计算方法。

完成经纬度BL到平面直角坐标XY的换算,在EXCEL中大约需要占用21列,当然读者可以通过简化计算公式或考虑直观性,适当增加或减少所占列数。在EXCEL中,输入公式的起始单元格不同,则反映出来的公式不同,以公式从第2行第1列(A2格)为起始单元格为例,各单元格的公式如下:

单元格
 单元格内容
 说明
 
A2
 输入中央子午线,以度.分秒形式输入,如115度30分则输入115.30
 起算数据L0
 
B2
 =INT(A2)+(INT(A2*100)-INT(A2)*100)/60+(A2*10000-INT(A2*100)*100)/3600
 把L0化成度
 
C2
 以度小数形式输入纬度值,如38°14′20″则输入38.1420
 起算数据B
 
D2
 以度小数形式输入经度值
 起算数据L
 
E2
 =INT(C2)+(INT(C2*100)-INT(C2)*100)/60+(C2*10000-INT(C2*100)*100)/3600
 把B化成度
 
F2
 =INT(D2)+(INT(D2*100)-INT(D2)*100)/60+(D2*10000-INT(D2*100)*100)/3600
 把L化成度
 
G2
 =F2-B2
 L-L0
 
H2
 =G2/57.2957795130823
 化作弧度
 
I2
 =TAN(RADIANS(E2))
 Tan(B)
 
J2
 =COS(RADIANS(E2))
 COS(B)
 
K2
 =0.006738525415*J2*J2
  
 
L2
 =I2*I2
  
 
M2
 =1+K2
  
 
N2
 =6399698.9018/SQRT(M2)
  
 
O2
 =H2*H2*J2*J2
  
 
P2
 =I2*J2
  
 
Q2
 =P2*P2
  
 
R2
 =(32005.78006+Q2*(133.92133+Q2*0.7031))
  
 
S2
 =6367558.49686*E2/57.29577951308-P2*J2*R2+((((L2-58)*L2+61)*

O2/30+(4*K2+5)*M2-L2)*O2/12+1)*N2*I2*O2/2
 计算结果X
 
T2
 =((((L2-18)*L2-(58*L2-14)*K2+5)*O2/20+M2-L2)*O2/6+1)*N2*(H2*J2)
 计算结果Y
 

 

表中公式的来源及EXCEL软件的操作方法,请参阅有关资料,这里不再赘述。按上面表格中的公式输入到相应单元格后,就可方便地由经纬度求得平面直角坐标。当输入完所有的经纬度后,用鼠标下拉即可得到所有的计算结果。表中的许多单元格公式为中间过程,可以用EXCEL的列隐藏功能把这些没有必要显示的列隐藏起来,表面上形成标准的计算报表,使整个计算表简单明了。从理论上讲,可计算的数据量是无限的,当第一次输入公式后,相当于自己完成了一软件的编制,可另存起来供今后重复使用,一劳永逸。

 

二、GPS坐标转换方法与面积计算

GPS所采用的坐标系是美国国防部1984世界坐标系,简称WGS-84,它是一个协议地球参考系,坐标系原点在地球质心。GPS的测量结果与我国的54系或80系坐标相差几十米至一百多米,随区域不同,差别也不同,经粗落统计,我国西部相差70米左右,东北部140米左右,南部75米左右,中部45米左右。由此可见,必须将WGS-84坐标进行坐标系转换才能供标图使用。坐标系之间的转换一般采用七参数法或三参数法,其中七参数为X平移、Y平移、Z平移、X旋转、Y旋转、Z旋转以及尺度比参数,若忽略旋转参数和尺度比参数则为三参数方法,三参数法为七参数法的特例。这里的Z、Y、Z是空间大地直角坐标系坐标,为转换过程的中间值。在实际工作中我们常用的是平面直角坐标,是否可以跳过空间直角坐标系,省略复杂的运算,进行简单转换呢?为此,笔者进行了长期的实践,证明是可行的。其在原理是:不把GPS所测定的WGS-84坐标当作WGS-84坐标,而是当作具有一定系统性误差的54系坐标值,然后通过国家已知点纠正,消除该系统误差。我们暂把该方法称作坐标改正法,下面以WGS-84坐标转换成54系坐标为例,介绍数据处理方法:

首先,在测区附近选择一国家已知点,在该已知点上用GPS测定WGPS-84坐标系经纬度B和L,把此坐标视为有误差的54系坐标,利用54系EXCEL将经纬度BL转换成平面直角坐标X’Y’,然后与已知坐标比较则可计算出偏移量:

△X=X-X’

△Y=Y-Y’

式中的X、Y为国家控制点的已知坐标,X’、Y’为测定坐标,△X和△Y为偏移量。

求得偏移量后,就可以用此偏移量纠正测区内的其他测量点了。把其他GPS测量点的经纬度测量值,转换成平面坐标X’Y’,在此XY坐标值上直接加上偏移值就得到了转换后的54系坐标:

X=X’+△X

Y=Y’+△Y

在上述EXCEL计算表的最后两列,附加上求得的改正数并分别与计算出来的XY相加后,即得到转换结果。若测量路线是一闭合区域的话,可把计算结果按路线顺序排列起来,再输入相应的计算公式,即可计算出该区域的面积。有关用坐标计算面积的原理与公式,这里不再叙述,读者可参阅有关资料。需要说明的是,面积的计算精度基本上不受坐标转换精度的影响,若只需要求算面积的话,可不进行坐标系转换这一步,只需要把BL化成XY就行了。

就1:1万比例尺成图而言,在一般的县行政区范围内(如40Km×40Km),用此简单的坐标改正法进行转换与较复杂的七参数法没有多大差别。能否满足1:1万比例尺变更调查的要求,主要取决于GPS接收机本身的精度,与转换方法的选择关系不大。当面积较大时,使用该方法可能会使误差增大,这时可考虑分区域转换。

 

喜欢0 评分0
lsf001
路人甲
路人甲
  • 注册日期2003-09-08
  • 发帖数63
  • QQ
  • 铜币232枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2003-09-08 16:16
好东西,我已经收藏
举报 回复(0) 喜欢(0)     评分
litaowmd
路人甲
路人甲
  • 注册日期2004-02-26
  • 发帖数50
  • QQ
  • 铜币108枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2004-03-02 11:34
老大就是老大,谢了!
举报 回复(0) 喜欢(0)     评分
wangjh
论坛版主
论坛版主
  • 注册日期2003-08-22
  • 发帖数994
  • QQ55359982
  • 铜币2579枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2004-03-05 12:46
kankan
网 站: www.52xoo.com (3S,信息融合,数字图像处理,模式识别与人工智能等专业电子书、学术文章及源代码共享) E-mail: Jianhong72@163.com QQ: 88128745 (55359982用了近10年,最近被盗了,郁闷!!!)
举报 回复(0) 喜欢(0)     评分
工兵
路人甲
路人甲
  • 注册日期2003-07-28
  • 发帖数91
  • QQ
  • 铜币360枚
  • 威望0点
  • 贡献值0点
  • 银元0个
4楼#
发布于:2004-03-12 08:58
最好把公式也给一个把
举报 回复(0) 喜欢(0)     评分
best_lilin
  • 注册日期
  • 发帖数
  • QQ
  • 铜币
  • 威望
  • 贡献值
  • 银元
5楼#
发布于:2004-03-13 19:43
d
举报 回复(0) 喜欢(0)     评分
wangjh
论坛版主
论坛版主
  • 注册日期2003-08-22
  • 发帖数994
  • QQ55359982
  • 铜币2579枚
  • 威望0点
  • 贡献值0点
  • 银元0个
6楼#
发布于:2004-03-17 21:04
我在 MapX Mobile + GPS 开发时,用了一下这个方法实现经纬度到Beijing54的转换,效果不错
网 站: www.52xoo.com (3S,信息融合,数字图像处理,模式识别与人工智能等专业电子书、学术文章及源代码共享) E-mail: Jianhong72@163.com QQ: 88128745 (55359982用了近10年,最近被盗了,郁闷!!!)
举报 回复(0) 喜欢(0)     评分
zycw001
路人甲
路人甲
  • 注册日期2004-02-26
  • 发帖数26
  • QQ18836520
  • 铜币83枚
  • 威望0点
  • 贡献值0点
  • 银元0个
7楼#
发布于:2004-03-18 09:40
楼主就是不错,小弟这里谢过了
举报 回复(0) 喜欢(0)     评分
flyingman
路人甲
路人甲
  • 注册日期2003-12-12
  • 发帖数16
  • QQ
  • 铜币138枚
  • 威望0点
  • 贡献值0点
  • 银元0个
8楼#
发布于:2004-03-23 21:00
好东西
举报 回复(0) 喜欢(0)     评分
zys
zys
路人甲
路人甲
  • 注册日期2004-01-07
  • 发帖数103
  • QQ
  • 铜币61枚
  • 威望0点
  • 贡献值0点
  • 银元0个
9楼#
发布于:2004-06-02 14:27
定级水平<img src="images/post/smile/dvbbs/em01.gif" />
举报 回复(0) 喜欢(0)     评分
上一页
游客

返回顶部