gis中的坐标系

地球的三级逼近

地球的自然表面不是平整的,需要想办法用数学公式描述地球表面,只能设想一个近似的数学面。

大地水准面是地球表面的第一级逼近。假设当海水处于完全静止的平衡状态时,从海平面延伸到所有大陆下部,而与地球重力方向处处正交的一个连续、闭合的曲面,这就是大地水准面。

地球椭球体是地球表面的第二级逼近。大地水准面可以近似成一个规则成椭球体,但并不是完全规则,其形状接近一个扁率极小的椭圆绕短轴旋转所形成的规则椭球体,这个椭球体称为地球椭球体。

由一系列参数可确定一个椭球体,地球椭球体的基本参数如下
在这里插入图片描述

大地基准面是地球表面的第三极逼近。椭球体是对地球的抽象,不能与地球表面完全重合,在设置参考椭球体的时候必然会出现有的地方贴近的好(参考椭球体与地球表面位置接近),有地地方贴近的不好的问题,因此这里还需要一个大地基准面来控制参考椭球和地球的相对位置。

大地基准面通过让椭球怎样移动或缩放的一些参数来定义,通过某一区域的大地基准面来“微调”参考椭球,就可以使之更加贴合当地的实际情况,这样在测量计算中也更加接近实际。因此,大地基准面是在参考椭球的基础上建立的。并且同一个椭球体,可以有很多个大地基准面。基准面主要有以下两类:1、地心基准面:由卫星数据得到,使用地球的质心作为原点,使用最广泛的是 WGS 1984。2、区域基准面:特定区域内与地球表面吻合,大地原点是参考椭球与大地水准面相切的点,例如Beijing-54、Xian-80。

地理坐标系统(英文简写GCS,Geographical Coordinate System)

地理坐标系是球面坐标,参考平面是椭球面,坐标单位是经纬度,经纬度所表示的意义是角度值,其可以是十进制的数据,也可以是度分秒这种格式。

球面坐标是三维坐标,是表示空间上的点所用到的坐标参考,它有三个分量:r、θ、φ。其中,经度就是φ,纬度就是θ,第三个分量r表示点到原点(椭球心)的距离。但是,因为这个r非常大,通常我们谈高度只谈海拔高度,并不谈到地心的距离,所以这个r是被忽略的,这就解释了明明是三维坐标,却只有经纬度两个分量。

“经度(φ)就是椭球上的点与原点连线这一线段,在赤道平面上投影与x轴的夹角”——只不过加了东经和西经,并不是0到360°。
“纬度就是椭球上的点与原点连线这一线段,与z轴的夹角的余角。”——赤道上的点与原点连线和z轴的夹角是90度,但是纬度是0度,所以是余角的关系。

我们知道地理坐标系统是定义在一个数学椭球面上的,但是还有一个小问题:偏移。虽然椭球面方程“决定”了地球的形状,但是原点的位置却没有指定。按理说,是统一使用地心才对的,事实上,如果地心≠椭球心,椭球面就会比较靠近某个地区,这种“靠近”就便于某个国家或地区的计算,因为一旦靠近,很多地方的位置偏差就很小。这就有了地心地理坐标系统(椭球的球心=地球的质心)和参心地理坐标系统之分(椭球的球心≠地球的质心)。

当今为了全球计量需要,我们熟知的地心地理坐标系有:WGS84和CGCS2000。而北京54和西安80实际上是两个参心坐标系,它们的椭球体分别是克拉索夫斯基1940椭球体和IUGG1975椭球体。

常见地理坐标系具体信息:
在这里插入图片描述

大地坐标系统

在大地测量学中,对于地理坐标系统中的经纬度有三种描述:即天文经纬度、大地经纬度和地心经纬度。其中使用最多的就是大地经纬度,它也是大地坐标系中的经纬度单位。

大地坐标系是大地测量中以参考椭球面为基准面建立起来的坐标系。地面点的位置用大地经度、大地纬度和大地高度表示。大地坐标系的确立包括选择一个椭球、对椭球进行定位和确定大地起算数据。

一个形状、大小和定位、定向都已确定的地球椭球叫参考椭球。参考椭球一旦确定,则标志着大地坐标系已经建立。大地坐标系是一种伪地理坐标系。大地坐标系为右手系 。

大地经度L是通过目标点的子午面与起始子午面间的夹角。由格林威治子午线起算,向东为正,向西为负。大地纬度B是通过目标点的法线与赤道面的夹角。由赤道起算,向北为正,向南为负。大地高H是目标点沿法线到参考椭球面的距离。
在这里插入图片描述

投影坐标系统(英文简写PCS,Projection Coordinate System)

投影坐标系是平面坐标系,参考平面是水平面,坐标单位是米、千米等的,是用笛卡尔平面直角坐标系表示的点。

投影坐标系统是基于一个法则f和一个地理坐标系统而定义的,即投影坐标系统 = f(地理坐标系统),法则f即“投影方法”,换句话说,一个投影坐标系统,必然包括一个投影方法和一个地理坐标系统的定义。

常用坐标系统

WKID与EPSG
WKID即Well Known ID,众所周知的ID号的意思。EPSG是管理这些ID号的一个组织。通常来说,一个GIS里的坐标系统,必须有一个WKID,某些特别的除外。例如,WKID=4326,即WGS84这个地理坐标系统的ID。

注意:地理坐标系统和投影坐标系统均使用这套定义,但是不会重复,也没有规律说哪一段数字是地理坐标系统,哪一段是投影坐标系统。

常见地理坐标系统及WKID
WGS84(WKID=4326):全称 World Geodetic System 1984,美国GPS使用的一个全球地理坐标系统,使用范围极其广泛,我们在网上交流的数据大多数都是WGS84的,加密前的高德、百度用的也是WGS84

CGCS2000(WKID=4490):我国的GPS系统-北斗导航系统以及国家发行的“天地图”,用的是这一套地理坐标系统,中文名“中国国家2000地理坐标系统”,英文全称翻译名“中国大地坐标系2000”。英文名 China Geodetic Coordinate System 2000。

北京54(WKID=4214)、西安80(WKID=4610):是我国已经逐渐停止使用的两个地理坐标系统。北京54是建国初,在当时技术条件不高时“引”苏联的地理坐标系统到我国境内的,在地理坐标系统的精确定义时会详细展开为何北京54在我国境内为何有较大偏差。而西安80则是改革开放后,技术稍好,为解决北京54偏差问题,为我国各项事业发展搞的一个适用于国内的地理坐标系统。尽管有大量历史遗留数据仍采用这两个坐标系统,作为学习研究使用当然是可以的,但是建议尽快转移到国家2000坐标系来。

美国常用地理坐标系统:NAD27、NAD83

常见投影方法

根据投影面和地球的相对位置,可以有非常多种投影方法。
高斯克吕格(Gauss - Kruger):高斯克吕格是由高斯和克吕格两人一起搞的投影法则,投影面是一个椭圆柱面打横着套在地球的数学椭球面上,围绕地轴旋转,将地球表面投影到该椭圆柱面的一种投影方法。

以某条经线与椭圆柱面相切(这条经线就叫中央经线),投影到椭圆柱面后,再沿着椭圆柱面的高剪开摊成平面,就是高斯投影的原理。高斯克吕格投影是分带的,经度有东西各180度,所以可以按3度或者6度剥开一瓣用于投影。旋转高斯克吕格的投影面,可以获取下一个分带的投影,以合适全球所有的地方。越远离中央经线的地方投影到椭圆柱面上,变形越严重,反而是中央经线附近的地方非常能贴合投影面。
在这里插入图片描述
高斯投影的学名是横轴(因为投影面是躺着的 与地轴垂直)切(因为与地表面是相切关系)椭圆柱(投影面是椭圆柱面)投影。实际上,高斯克吕格投影也叫“横轴墨卡托投影”,因为投影面是(椭)圆柱面的投影均叫“墨卡托投影”。

墨卡托投影(Mercator):墨卡托发明的投影叫墨卡托投影,特点是纵轴,即投影面是个圆柱,与地球赤道相切(立着的水管里塞了个乒乓球),学名:正轴切圆柱投影。
在这里插入图片描述

UTM投影(Universal Transverse Mercator):全称“通用横轴墨卡托投影”,和高斯克吕格投影非常相似,只不过它并不是切于经线圈,而是穿地球而过。我们从侧面来看,高斯投影面和经线圈是完全重合的,但是UTM则不是,UTM投影是贯穿地球的,应该是侧面上看相割。

网络墨卡托(WebMercator):Web Mercator投影不是严格意义的墨卡托投影,而是一个伪墨卡托的投影方法,这个伪墨卡托投影方法的大名是 Popular Visualization Pseudo Mercator,PVPM。因为这个投影方法是Google Map最先发明并使用的。它的地理上的不严谨性在于,在投影过程中,将表示地球的椭球面作为正球面处理。传说中是因为谷歌程序员懒得用椭球面来编程计算屏幕坐标…

兰伯特(Lambert)投影与阿尔伯斯(Albers)投影:兰伯特投影,投影面是圆锥面,更像是一个圆锥筒子套在一个球上(图a),此时的兰伯特投影是切圆锥投影,当然兰伯特也可以是割圆锥投影(图b),它类似于阿尔伯斯投影,不同之处在于其描绘形状比描绘面积更准确。而阿尔伯斯投影常见于我国的省区投影,因为面积更准确。阿尔伯斯投影是一种圆锥等面积投影。
在这里插入图片描述

常见投影坐标系统及WKID
基于高斯克吕格投影的投影坐标系统一族:在我国,基于北京54、西安80、国家2000,均可以使用高斯克吕格投影定义出投影坐标系统。因为高斯克吕格投影方法允许分带表达,所以,该投影坐标系统族有很多个,以WKID=4547为例。

WKID=4547这个投影坐标系统是这样定义的:

地理坐标系为国家2000坐标系,使用3度分带规则,中央经线为东经114°,使用高斯克吕格投影的投影坐标系统,并且平面坐标系统的经度方向上的Y坐标值无投影带号。

简写为:

3度投影带114°中央经线的高斯投影坐标系统(2000坐标不带带号)。

WKID=4526正是WKID=4547这个带带号的PCS对应的有带号的投影坐标系统。

有无带号的区别:无论有无带号,地图投影都有500公里的偏移量(东伪偏移:又称伪东偏,是投影平面中为避免横轴(经度方向)坐标出现负值,而所加的偏移量,对应的还有北伪偏移,我国高斯-克吕格投影北伪偏移值为0),而带号是在500公里前面又加了两位数字表示带号(如带号40,则原本500km的偏移量变为40500km)。无带号的坐标值会在地图上重叠,而有带号会发生偏移。区分有无带号,从投影坐标系统的名称中可以看出,名称中有CM,在Y坐标(经线方向)不带带号,名称中有Zone,则在Y坐标(经线方向)带带号。
在这里插入图片描述

基于UTM投影的投影坐标系统一族:和高斯投影坐标系统一族类似,只不过仅仅基于WGS84。
基于网络墨卡托(WebMercator)的投影坐标系统:只有一个,WKID=3857。需要注意的是3857还有另外两个id,即102100、900913,现在基本使用3857表示,但是遇到也要知道他们是同一个。

基于兰伯特与阿尔伯斯的投影坐标系统:此处暂不列举WKID,但我国全国图喜欢用阿尔伯斯投影,我国省区图喜欢用兰伯特圆锥投影。

假坐标系统:GCJ02与BD09

国内高德、百度、腾讯和国内谷歌地图的地理坐标系统均经过加密。

它们使用的都是WGS84坐标系(坊间传)。

因为国家保密需要,网络地图至少要用一种特殊的算法进行加密,那就是大(e)名(chou)鼎(bu)鼎(kan)的加密算法——GCJ02。(当然,天地图没有加密,直接是CGCS2000)

民间也叫火星坐标系,它是加密后的WGS84坐标,与真实的WGS84坐标是有误差的,这个误差值并不固定,通常是几十米到几百米。

GCJ02加密算法是一种多项式+正弦函数加密算法,通常隔一段时间就换一下参数,所以,网上所谓的解密算法并不是官方的精确算法,隔一段时间说不定就不准确了。

百度地图更为恶心,在GCJ02的基础上再次偏移,也就是BD09。

这个加密算法并不公开,需要找有关部门交钱审核才能获取,而且没有精确的反向算法(多项式咋反向啊)。

<think>好的,我现在要解决用户的问题:在GIS中,即使坐标系相同,图层仍然无法重合的原因及解决方案。首先,我需要回顾一下用户提供的引用内容,看看有没有相关的线索。 用户引用了四个来源,其中引用1提到坐标系转换涉及空间直角坐标系的移动和旋转,分为参心和地心坐标系。引用2和4讨论了即使投影相同,图层不重合的情况,可能的原因包括定义投影的方法错误、代号问题、单位不一致等。引用3指出高德地图使用GCJ-02坐标系,而ArcGIS可能没有,需要转换到WGS84作为中介。 首先,我需要确定可能的原因。根据引用4,用户可能错误地使用了“定义投影”工具而不是“投影”工具。如果原始数据没有坐标系信息,直接定义会导致错误,这时候应该先定义正确的坐标系,再进行投影转换。此外,地理坐标系和投影坐标系的混淆也是一个可能因素,比如数据可能在地理坐标系下,而另一个在投影坐标系下,即使名称相同,实际坐标值不同。 另一个原因是中央经线或投影参数不同。例如,同一个投影但不同的中央经线会导致坐标偏移。单位问题也可能存在,比如米和度混用,引用4提到查看右下角单位来辨别。数据源本身的误差,如GPS精度或处理错误,也可能导致不重合。 接下来是解决方案。首先检查是否正确定义了坐标系,使用“投影”工具转换坐标系,而不是仅定义。然后确认地理坐标系是否一致,比如都是WGS84或CGCS2000。检查投影参数,特别是中央经线和比例因子。统一单位,确保所有图层使用相同的度量单位。检查数据源误差,进行坐标校正。使用动态投影功能确保显示一致,以及检查是否存在坐标系代号问题,比如不同的分带。 最后,用户的问题可能涉及到这些方面,需要逐步排查。例如,如果两个图层都是投影坐标系但中央经线不同,重新投影到同一参数下可以解决。或者数据源本身有偏移,需要转换或校正。</think>### GIS坐标系一致但图层无法重合的原因及解决方案 #### **一、主要原因分析** 1. **坐标系定义与投影操作混淆** - 若原始数据未包含坐标系信息,直接使用 `Define Projection`(定义投影)会错误地强制赋予坐标系,而非实际转换坐标值[^4]。此时需先通过 `Project` 工具进行坐标转换。 - 示例:若数据实际为地理坐标系(如WGS84),但被错误定义为投影坐标系(如UTM),即使名称相同,坐标值仍存在差异。 2. **地理坐标系与投影坐标系混淆** - 地理坐标系(如WGS84)使用角度单位(度),而投影坐标系(如UTM)使用长度单位(米)。若两者混合显示,即使名称一致,坐标值仍无法匹配[^1]。 3. **投影参数不一致** - 相同投影名称但参数不同(如中央经线、比例因子)会导致偏移。例如,UTM投影中Zone 49N与Zone 50N的中央经线相差6°,坐标差异可达数百公里。 4. **数据单位或精度问题** - 单位不一致(如米与英尺)或数据源精度误差(如GPS定位偏差、坐标转换误差)会导致微小偏移。 --- #### **二、解决方案步骤** 1. **验证坐标系定义** - 使用 `ArcToolbox > Data Management > Projections and Transformations > Define Projection` 确认数据真实坐标系。 - 若数据原本无坐标系,需优先通过元数据或来源确认其原始坐标系。 2. **执行正确的投影转换** - 使用 `Project` 工具将数据从源坐标系转换到目标坐标系: ```python # 示例:将WGS84地理坐标系转换为UTM投影 arcpy.Project_management(input_data, output_data, "WGS_1984_UTM_Zone_50N") ``` 3. **检查投影参数一致性** - 通过图层属性查看投影详细信息,重点关注: - 中央经线(Central Meridian) - 假东(False Easting) - 单位(Unit) - 例如:UTM Zone 50N的中央经线为$117°E$,若误设为$123°E$,需重新投影。 4. **统一数据单位与精度** - 使用 `Calculate Geometry` 工具统一单位为米或度,并检查坐标值是否合理: $$ \text{平面坐标范围} \approx (X_{min}, Y_{min}) \text{至} (X_{max}, Y_{max}) $$ 5. **处理数据源误差** - 若数据来自不同坐标系(如GCJ-02与WGS84),需通过第三方工具(如GIS算法库)进行转换[^3]。 - 示例代码(Python): ```python from coord_convert import gcj2wgs # 假设使用转换库 x_wgs, y_wgs = gcj2wgs(x_gcj, y_gcj) ``` --- #### **三、典型案例** - **案例1:易康导出影像与目标图层偏移** - 原因:导出时未正确绑定投影参数,导致元数据缺失[^2]。 - 解决:使用 `Raster > Project Raster` 重新定义投影并转换。 - **案例2:相同UTM投影但中央经线不同** - 现象:两个UTM Zone 50N图层仍不重合。 - 排查:发现一图层的中央经线被误设为$114°E$。 - 操作:通过 `Create Custom Coordinate System` 创建正确参数并重新投影。 --- #### **四、引用总结** 坐标系问题本质是空间参考的一致性管理。若操作流程中混淆定义与转换,或忽略投影参数细节,即使名称相同,实际坐标仍可能偏移。建议优先通过数据溯源确认原始坐标系,再逐步执行标准化转换流程。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值