大家好,欢迎大家来到测量小课堂,本期给大家带来的是GIS坐标系的讲解,希望对大家有所帮助。
想必各位从业人员多多少少都会听说过几个名词,可能有那么点印象吧。例如,高斯克吕格,北京54,西安80,WGS84,投影坐标系统等等。今天就从头说起,讲讲那些坐标系统的事情。
- 经纬度与GCS(Geographic Coordinate System, 地理坐标系统)
- 平面坐标与PCS(Projection Coordinate System, 投影坐标系统)
- GCS和PCS的转化问题(三参数与七参数问题)
- 火星坐标问题
在第一部分,我介绍一下以经纬度为准的地理坐标系统,也顺带提及一下我国的高程坐标系。主要涉及的内容有:大地水准面问题,椭球问题,常见的GCS(如北京54,西安80,CGCS2000,WGS84等),让大家看到GIS数据中的GCS马上就能知道这是什么东西。
在第二部分,我介绍一下以平面直角坐标系为量度的投影坐标系统。主要涉及的内容有:PCS与GCS的关系,我国常见的PCS(高斯克吕格、兰伯特/Lambert、阿尔伯斯Albers、墨卡托Mercator、通用横轴墨卡托UTM、网络墨卡托Web Mercator)。
在第三部分,是实际操作过程中遇到的种种问题,如投影不对会出现什么情况、如何转换GCS、如何切换PCS(重投影问题)等问题,涉及一些数学转换的思维,需要有一定的空间想象能力。
在第四部分,我简单介绍一下所谓的火星坐标。
1. 经纬度与GCS
天气预报也好,火箭发射也罢,地震、火山等事故发生时,电视台总会说东经XX度,北纬YY度。这个经纬度中学地理就学过了,我就不细说了。
我从如何描述地球说起。
1.1 凹凸不平的地球
谁都知道地球表面不平坦,它甚至大概形状都不是一个正球体,是一个南北两极稍扁赤道略胖的胖子,胖度大概是20km,在外太空几乎看不出来的,这也可能和星球长期受到潮汐引力、太阳引力以及自身旋转的向心力有关。这里不是地球科学,就不再深究了。
为了能让地球出现在数学家的公式里,我们曾经走过了2个阶段:用平静的海面描述地球——用虚拟的旋转椭球面描述地球表面。
这里也不是地图学,再深入下去其实还有似大地水准面等概念。就挑重点讲。
“假设地球表面都是水,当海平面风平浪静没有波澜起伏时,这个面就是大地水准面。”大家应该知道,在太空失重的环境下,水相对静止状态是个正球体,那么肯定很多人就认为,大地水准面就是个正球面。不是的,还需要考虑一个问题:地球各处的引力不同。引力不同,就会那儿高一些,这儿低一些,尽管这些微小的差距肉眼难以观测出来,可能隔了好几千米才会相差几厘米。所以,在局部可能看起来是个球面,但是整体却不是。显然,用大地水准面来进行数学计算,显然是不合适的,至少在数学家眼中,认为这不可靠。
所以找到一个旋转椭球面就成了地理学家和数学家的问题。(注意区分椭球面和旋转椭球面这两个数学概念,在GCS中都是旋转椭球面)
给出旋转椭球面的标准方程:
(x2 y2)/a2 z2/b2=1
其中x和y的参数相同,均为a,这就代表一个绕z轴旋转的椭圆形成的椭球体。不妨设z轴是地球自转轴,那么这个方程就如下图是一个椭球体,其中赤道是个圆。
这样,有了标准的数学表达式,把数据代入公式计算也就不是什么难事了。
由此我们可以下定义,GIS坐标系中的椭球,如果加上高程系,在其内涵上就是GCS(地理坐标系统)。其度量单位就是度分秒。
描述一个旋转椭球面所需的参数是方程中的a和b,a即赤道半径,b即极半径,f=(a-b)/a称为扁率。
与之对应的还有一个问题:就是坐标中心的问题。(地球的中心在哪里?)
【注】十九世纪发现赤道也是一个椭圆,故地球实际应以普通椭球面表示,但是由于各种原因以及可以忽略的精度内,一直沿用旋转椭球体作为GCS。
1.2 参心坐标系、地心坐标系
上过中学物理的人知道,物体均有其质心,处处密度相等的物体的质心在其几何中心。所以,地球只有一个质心,只是测不测的精确的问题而已。由地球的唯一性和客观存在,以地球质心为旋转椭球面的中心的坐标系,叫地心坐标系,且唯一。当然,由于a、b两个值的不同,就有多种表达方式,例如,CGCS2000系,WGS84系等,这些后面再谈。
【注】地心坐标系又名协议地球坐标系,与GPS中的瞬时地球坐标系要对应起来。
但是又有一个问题——政治问题,地图是给一个国家服务的,那么这地图就要尽可能描述准确这个国家的地形地貌,尽量减小误差,至于别国就无所谓。
所以,就可以人为的把地球的质心“移走”,将局部的表面“贴到”该国的国土,使之高程误差尽量减小到最小。
这个时候,就出现了所谓的“参心坐标系”。即椭球中心不在地球质心的坐标系。如下图:
绿色的球就是为了贴合赤道某个地方而产生了平移的参心系(这里只是个例子,而且画的有点夸张)。
我国常用的参心系及对应椭球:
北京54坐标系:克拉索夫斯基椭球体
西安80坐标系:IAG75椭球体
我国常用的地心系及对应椭球:
WGS84坐标系:WGS84椭球体(GPS星历的坐标系,全球统一使用,最新版于2002年修正)
CGCS2000坐标系:CGCS2000椭球体(事实上,CGCS2000椭球和WGS84椭球极为相似,偏差仅有0.11mm,完全可以兼容使用)
为什么CGCS2000和WGS84要略微有些偏差?这是因为WGS84系是GPS的坐标系,而我国北斗定位则是需要自己的坐标系,就搞了一波CGCS2000。
这几个坐标系的介绍放在下一节,而这些椭球体的转换将在第三部分介绍(主要就是数学中,空间直角坐标系旋转的问题)。
1.3 我国常见GCS
借助以下4个常见坐标系及椭球体,就可以推及到世界各地不同的GCS及椭球体,完成数据的转化问题。
1.3.1 北京54坐标系(参心)
新中国成立以后,我国大地测量进入了全面发展时期,再全国范围内开展了正规的,全面的大地测量和测图工作,迫切需要建立一个参心大地坐标系。由于当时的“一边倒”政治趋向,故我国采用了前苏联的克拉索夫斯基椭球参数,并与前苏联1942年坐标系进行联测,通过计算建立了我国大地坐标系,定名为1954年北京坐标系。因此,1954年北京坐标系可以认为是前苏联1942年坐标系的延伸。它的原点不在北京而是在前苏联的普尔科沃。
椭球体:Krasovsky椭球
极半径b=6 356 863.0187730473 m
赤道半径a=6 378 245m
扁率=1/298.3
高程系:56黄海系
1.3.2 西安80坐标系(参心)
改革开放啦,国家商量要搞一个更符合国用的坐标系——西安80坐标系,该坐标系的大地原点设在我国中部的陕西省泾阳县永乐镇,位于西安市西北方向约60公里。
椭球体:IAG椭球(全名是啥还得去翻翻课本。。。)
极半径b=6 356 755m
赤道半径a=6 378 140m
扁率=1/298.25722101
高程系:85黄海系
1.3.3 WGS84坐标系(地心)
全称World Geodetic System - 1984,是为了解决GPS定位而产生的全球统一的一个坐标系。
椭球体:WGS84椭球
极半径b=6 356 752.314 245 179 5m
赤道半径a=6 378 137 m
扁率=1/298.257223563
高程系:?根据国家需求定?
1.3.4 CGCS2000坐标系(地心)
2000国家大地坐标系是全球地心坐标系在我国的具体体现,其全称为China Geodetic Coordinate System 2000,其原点为包括海洋和大气的整个地球的质量中心。
椭球体:CGCS2000坐标系
极半径b=6 356 752.314 140 355 8m
赤道半径a=6 378 137m
扁率=1/298.257222101
高程系:85黄海系
【注】CGCS2000的定义与WGS84实质一样。采用的参考椭球非常接近。扁率差异引起椭球面上的纬度和高度变化最大达0.1mm。当前测量精度范围内,可以忽略这点差异。可以说两者相容至cm级水平
最后一张表总结一下:
有趣的是,在ArcGIS的GCS文件夹下,找到了一个“新北京54坐标系”,这是为了使54和80之间方便转化而产生的一个过渡坐标系。
2平面坐标与PCS
说完了以经纬度为计量单位的GCS,那么我再来说说以平面(空间)直角坐标系为度量衡的投影坐标系(PCS,Projection Coordinate System)。
说一个具体的问题以解释为什么要用PCS。
如何用经纬度表达一块地的面积?
这没办法吧?经纬度本身不带单位,度分秒仅仅是一个进制。
而且同样是1度经度,在不同的纬度时代表的弧段长是不一样的。
这就给一些地理问题带来了困惑:如何建立一个新的坐标系使得地图分析、空间分析得以定量计算?
PCS——投影坐标系就诞生了。
我要着重介绍一下我国的6种常用投影方式:
- 高斯克吕格(Gauss Kruger)投影=横轴墨卡托(Transverse Mercator)投影
- 墨卡托(Mercator)投影
- 通用横轴墨卡托(UTM)投影
- Lambert投影
- Albers投影
- Web Mercator(网络墨卡托)投影
很多课本、博客都写的很详细了,我想从3D的图形来描述一下他们是怎么个投影的。
2.1 从投影说起