zoukankan      html  css  js  c++  java
  • 【总结整理】地理信息系统GIS的基础坐标知识

    关于辰青2018.03.31

    1.地理坐标系和投影坐标系的区别

    答案:

    1、地理坐标系统是一种球面坐标,而投影坐标系统是平面坐标

    2、投影坐标系统在二维平面上有恒定的长度、角度和面积

    3、投影坐标系统是由地理坐标投影到平面坐标上形成的

     

    【什么是地理坐标系统】:

    地理坐标系(Geographic Coordinate System),是使用三维球面来定义地球表面位置,以实现通过经纬度对地球表面点位引用的坐标系。一个地理坐标系包括角度测量单位、本初子午线和参考椭球体三部分。在球面系统中,水平线是等纬度线或纬线。垂直线是等经度线或经线。

    【什么是投影坐标系统】:

    投影坐标系 (Projection coordinatesystem)平面坐标系统地图单位通常为米 ,也称非地球投影坐标系统(notearth),或者是平面坐标。投影坐标系使用基于X,Y值的坐标系统来描述地球上某个点所处的位置。这个坐标系是从地球的近似椭球体投影得到的,它对应于某个地理坐标系。

    【什么是地图投影】:

    地图投影是利用一定数学法则把地球表面的经、纬线转换到平面上的理论和方法。

    由于地球是一个赤道略宽两极略扁的不规则的梨形球体,故其表面是一个不可展平的曲面,所以运用任何数学方法进行这种转换都会产生误差和变形,为按照不同的需求缩小误差,就产生了各种投影方法。

    2.重采样的方法

    答案:

    常用的重采样方法:1.最邻近内插法(nearest neighbor interpolation)

             2.双线性内插法(bilinear interpolation)

             3.三次卷积法内插(cubic convolution interpolation)。

    重采样定义:一种影像数据处理方法。即影像数据重新组织过程中的灰度处理方法。影像采样是按一定间隔采集影像灰度数值的,当阈值不位于采样点上的原始函数的数值时,就需要利用已采样点进行内插,称为重采样

    遥感图像的几何校正实际上就是图像重采样的过程,首先需要找到一种数学关系,建立起图像校正前的坐标(X,Y)于校正后坐标(u,v)的关系。然后重采样得到校正后影像的灰度值。

    3.百度地图的坐标系,天地图的坐标系:

    关于坐标系:

    通常GPS获取的经纬度属于WGS84坐标体系,在我国,这个坐标是不能直接应用在互联网服务上的,至少要经过国家测绘局的加密。

    至于百度地图谷歌地图,本身投影方式都是Web Mercator投影(墨卡托投影),但各自进行偏移加密的算法不同,

    例如谷歌地图采用的国家火星坐标系GCJ-02,并且它们各自的瓦片生成方案也不同(原点坐标,瓦片大小等),因此不要指望可以叠到一块儿。

    谷歌地图在中国大陆地区的数据使用的就是经过国测局加密之后的坐标系,而google earth在中国地区仍然使用的是WGS84坐标系。

    天地图:CGCS2000坐标系 CGCS2000是以地球质量中心为原点的地心大地坐标系,大地测量、地球物理、天文、导航和航天应用以及经济、社会发展的广泛需求

    1954北京坐标系和1980西安坐标系是以天文大地网等经典测量技术为基础的局部坐标系。

    得到西安80坐标下的大地坐标后,需要进行高斯投影,这样才能够得到平面坐标

    根据国家的保密要求,所有线上地图都必须加偏移,进行混淆,而且这种偏移混淆不是线性关系,且不可逆,能做的也仅是近似恢复解密,当然这是法律不允许的。

    百度地图坐标转换:http://developer.baidu.com/map/jsdemo.htm#a1_2

    如果发现获取的GPS坐标转换后在百度地图上有偏移,那么建议将这个原始坐标在google earth中进行验证,如果google earth中的位置与百度地图上的位置一致,那么说明原始坐标就是有偏移的,与转换过程没有关系

    参考博客:http://www.jiazhengblog.com/blog/2011/10/11/435/

    WGS-84 地心坐标系,即GPS原始坐标体系。在中国,任何一个地图产品都不允许使用GPS坐标,据说是为了保密。GoogleEarth及GPS芯片使用。
    1、GCJ-02火星坐标系,国测局02年发布的坐标体系,它是一种对经纬度数据的加密算法,即加入随机的偏差。高德、腾讯、Google中国地图使用。国内最广泛使用的坐标体系;
    2、其他坐标体系:一般都是由GCJ-02进过偏移算法得到的。这种体系就根据每个公司的不同,坐标体系都不一样了。比如,百度的BD-09坐标、搜狗坐标等
    根据互联网地图服务规定,国内互联网地图必须使用国测局加密的gcj02坐标系,高德和谷歌在中国的坐标都是这一坐标系,可以互通,谷歌的地图数据就是高德提供的。
    百度在gcj02的基础上,又做了一次加密,坐标系跟高德、谷歌不同。

    谷歌地图采用的是WGS84地理坐标系(中国范围除外),谷歌中国地图和搜搜中国地图采用的是GCJ02地理坐标系,百度采用的是BD09坐标系,
    而设备一般包含GPS芯片或者北斗芯片获取的经纬度为WGS84地理坐标系,
    为什么不统一用WGS84地理坐标系这就是国家地理测绘总局对于出版地图的要求,出版地图必须符合GCJ02坐标系标准了,也就是国家规定不能直接使用WGS84地理坐标系。
    所以定位大家感觉不准确很多又叫出版地图为火星地图其实只是坐标系不一样而已。

    经研究发现,百度地图的坐标系为BD09,高德地图坐标为GCJ02,这样就存在不同坐标系的坐标之间转换的问题了,查api吧,然后又发现无论百度地图还是高德地图,
    api列表里都没有提这个事情。但是上网一查,还是发现了他们都有个隐藏类:CoordinateConvert,但是这个类只提供了转向他们自己坐标系的方法,比如说:
    //百度api  
    CoordinateConvert.fromGcjToBaidu(GeoPoint geoPoint);  
    //从gcj02坐标系转到bd09坐标系  
    CoordinateConvert.fromWgs84ToBaidu(GeoPoint geoPoint);  
    //从wgs84坐标系转到bd09坐标系  
      
    //高德api  
    //从wgs84坐标系转到gcj02坐标系  
    CoordinateConvert.fromGpsToAMap(double arg0, double arg1);  
    CoordinateConvert.fromSeveralGpsToAMap(String arg0);  
    CoordinateConvert.fromSeveralGpsToAMap(String arg0);

    百度BD09调用高德GCJ02的api,位置不一致,不能给解密方法,那就把百度的坐标转成高德的,然后在进行获取坐标,然后再转化成百度BD09的

    LocationClientOption option = new LocationClientOption();  
    option.setCoorType("gcj02");//设置坐标类型  

    使用百度地图的服务,需使用BD09坐标。若使用非BD09坐标、未经过坐标转换(非BD09转成BD09)直接叠加在地图上,地图展示位置会偏移,因此通过其他坐标(WGS84、GCJ02)调用服务时,需先将其他坐标转换为BD09。

    官方文档:https://www.baidu.com/link?url=zgL8-KfSdZWGYB6YGfLoueB90DhuOJXrkZjKJEWdrUMlK7mMGtk6VtL-G9btmkYPt_GJrUBeqv_jcDynvn6eOq&wd=&eqid=f99af1ea0003ad32000000045abf256f

    百度地图在页面上的展示方面做的还是很好的,包括页面的缩放,信息的标注等等,相比之下高德地图就会在某些安卓版本的某些机器上出现在放缩的时候地图信息展示的不够清晰不够明确的情况,而且在定位时,百度的地位相对准确,因为我们公司的网络服务器不在公司办公所在地,所以高德地图有时候定位就定位到服务器的地址去了,百度从我使用至今还没出现过这样的错误。

    但是百度地图在poi搜索这一块,在我看来是相对薄弱的,百度地图的poi搜索在不输入关键字的时候,是不能做模糊搜索的,而且也不能根据类型搜索(比如仅搜索饮食,搜索学校之类的),而在高德地图里这些就做到了。而且在逆地理编码时,高德地图获取的结果是相对比百度地图更丰富的。

    1、  经纬度。这个是球面坐标,对于北京来说,就是(116.388171,39.935961)这样的坐标。比如腾讯、高德、百度都是这样的经纬度坐标。谷歌是经纬度顺序写反的经纬度坐标。

    如果是度分秒坐标,需要进行转换,才能得到这样的经纬度坐标。详见坐标转换。

    2、  墨卡托坐标。平面坐标,相当于是直线距离,数字一般都比较大,像这样的。(215362.00021333335, 99526.00034912192)

    墨卡托坐标,主要用于程序的后台计算。直线距离嘛,加加减减几乎计算方便。

    搜狗地图API就是直接使用的墨卡托坐标。

    国内各地图API坐标系统比较与转换 - findsafety的专栏 - 博客频道 - CSDN.NET               http://blog.csdn.net/findsafety/article/details/12442639

    还有一个:

    WGS84,GCJ02, BD09坐标转换 - 天海行者的专栏 - 博客频道 - CSDN.NET                  http://blog.csdn.net/ma969070578/article/details/41013547

    转换库都有:

    Coordtransform by wandergis http://wandergis.com/coordtransform/

    X是6位,Y是7位。
    为了保证X是正数,X是加上了500000m的,也就是原点向西移动了500000m,自然是6位正数。Y是7位是因为我国处于的北半球位置决定的。这个纬度换算成投影坐标基本上就是7位的位置。题主可以照一张刚果雨林附近的地图来看看坐标,是不是X仍旧6位,Y接近0了?


    大地坐标系可分为参心大地坐标系和地心大地坐标系。

    • 参心大地坐标系:指经过定位与定向后,地球椭球的中心不与地球质心重合而是接近地球质心。区域性大地坐标系。是我国基本测图和常规大地测量的基础。如Beijing54、Xian80。
    • 地心大地坐标系:指经过定位与定向后,地球椭球的中心与地球质心重合。如CGCS2000、WGS84。
     

    我国常用的投影方式 
    我国基本比例尺地形图(1:100万、1:50万、1:25万、1:10万、1:5万、1:2.5万、1:1万、1:5000)除1:100万以外均采用高斯-克吕格Gauss-Kruger投影(横轴等角切圆柱投影,又叫横轴墨卡托Transverse Mercator投影)为地理基础。 
    1:100万地形图采用兰伯特Lambert投影(正轴等角割圆锥投影),其分幅原则与国际地理学会规定的全球统一使用的国际百万分之一地图投影保持一致。 
    海上小于50万的地形图多用墨卡托Mercator投影(正轴等角圆柱投影)。 
    我国大部份省区图以及大多数这一比例尺的地图也多采用Lambert投影和属于同一投影系统的Albers投影(正轴等积割圆锥投影)。

    按变形性质分类:

    • 等角投影:角度变形为零(Mercator)
    • 等积投影:面积变形为零(Albers)
    • 任意投影:长度、角度和面积都存在变形 
      其中,各种变形相互联系相互影响:等积与等角互斥,等积投影角度变形大,等角投影面积变形大。

    从投影面类型划分:

    • 横圆柱投影:投影面为横圆柱
    • 圆锥投影:投影面为圆锥
    • 方位投影:投影面为平面

    从投影面与地球位置关系划分为:

      • 正轴投影:投影面中心轴与地轴相互重合
      • 斜轴投影:投影面中心轴与地轴斜向相交
      • 横轴投影:投影面中心轴与地轴相互垂直
      • 相切投影:投影面与椭球体相切
      • 相割投影:投影面与椭球体相割

    高斯-克吕格Gauss-Kruger投影(横轴等角切圆柱投影)

    我国规定1:1万、1:2.5万、1:5万、1:10万、1:25万、1:50万比例尺的地形图均采用高斯克吕格投影。该投影在英美等国家被称为横轴墨卡托投影

    • 横轴等角切圆柱投影 
      – 离开中央子午线越远,变形越大 
      – 赤道是直线,离开赤道的纬线是弧线,凸向赤道 
      – 没有角度变形 
      – 长度和面积变形很小
    • 北京54和西安80投影坐标系的投影方式
    • 高斯投影特点: 
      – 中央子午线长度变形比为1 
      – 在同一条经线上,长度变形随纬度的降低而增大,在赤道处为最大 
      – 在同一条纬线上,长度变形随经差的增加而增大,且增大速度较快 
      – 在6˚带范围内,长度最大变形不超过0.14%
    • 通过分带控制变形: 
      – 6°分带: 用于1:2.5万 ~1:50万比例尺地图 
      起始于初子午线(格林威治),按经差6度为一个投影带自西向东划分,全球共分60个投影带。我国范围可分成11个6度带。 
      – 3°分带:用于大于1:1万比例尺地图 
      始于东经1°30′,按经差3度为一个投影带自西向东划分,全球共分120个投影带。我国范围可分成22个三度带。 
      – 坐标系原点为每个投影带的中央经线与赤道交点
    • 具体分带法是:6度分带从本初子午线开始,按经差6度为一个投影带自西向东划分,全球共分60个投影带,带号分别为1-60;3度投影带是从东经1度30秒经线开始,按经差3度为一个投影带自西向东划分,全球共分120个投影带。

    兰伯特Lambert投影(正轴等角割圆锥投影)

    • 适用于小于1:100万(包括1:100万)的地图。
    • 最适用于中纬度的一种投影。它类似于Albers投影,不同之处在于其描绘形状比描绘面积更准确。

    中国地图的中央经线常位于东经105度,两条标准纬线分别为北纬25度和北纬47度。各省的参数可根据地理位置和轮廓形状初步加以判定。例如甘肃省的参数为:中央经线为东经101度,两条标准纬线分别为北纬34度和41度。

    投影方法:

    • 圆锥投影通常基于两条标准纬线,从而使其成为割投影。超过标准纬线的纬度间距将增加。这是唯一常用的将两极表示为单个点的圆锥投影。
    • 也可使用单条标准纬线和比例尺因子定义。如果比例尺因子不等于1.0,投影实际上将变成割投影。

    阿伯斯Albers投影(正轴等积割圆锥投影)

    也称“双标准纬线等积圆锥投影”,为阿伯斯(Albers)拟定。投影区域面积保持与实地相等。最适合于东西方向分布的大陆板块,不适合南北方向分布的大陆板块。在处理显示400万、100万的全国数据时为了保持等面积特性,经常采用Albers投影。

    墨卡托Mercator投影(正轴等角圆柱投影)

    由墨卡托于1569年专门为航海目的设计的。设计思想是令一个与地轴方向一致的圆柱切于或割于地球,将球面上的经纬网按等角条件投影于圆柱表面上,然后将圆柱面沿一条母线剪开展成平面。广泛应用于航海,航空的重要投影。

    投影坐标系

    地图投影是将地图从球面(大地基准面)转换到平面的数学变换。由此确定的坐标系一般称为投影坐标系。因此,投影坐标系需要两组参数确定,一组为大地坐标系,另一组为投影参数。

    重投影

    根据以上介绍,我们可以知道当考虑两幅遥感影像、矢量地图等的坐标信息时,我们需要考虑其所在的投影坐标系。若两投影坐标系不相同则需要进行重投影变换,这里可能涉及到一下几种类型的重投影变换:

    • 不同投影方式之间的变换。即两投影坐标系具有相同的参考椭球和大地基准面,如都是北京54地理坐标系下,但是是通过不同的投影方式得到的;
    • 不同大地基准面的变换。此时两坐标系采用了相同的参考椭球但具有不同的大地基准面,则得到的经纬度坐标是不具备比较意义的,因此需要进行重投影变换。
    • 不同参考椭球的变换。

    如果在同一个椭球基准面下的转换就是严密的转换,如果在同一个椭球体不同基准面的转换是不严密的,不同椭球体之间的转换是不严密的,这就需要用到七参数、三参数等方法。需要两个不同坐标系统下公共点坐标求得系数。例如北京54和WG4-84坐标下的同一点的经纬度或者是经过投影后的平面坐标也是不同的。那么影像投影主要分为哪些步骤呢?说白了,就三个步骤,第一,坐标转换;第二,影像的重采样,最后就是写入到新文件中。

    本文简介了地理坐标系统的相关概念,只有弄清楚了这些基础知识,才能在工作学习中遇到问题时,正确的考虑是否需要对地图信息进行重投影变换。本文不涉及代码部分的介绍,后面将会作专门的博客进行相关说明

    以上参考:https://blog.csdn.net/angelazy/article/details/44085099

  • 相关阅读:
    设计模式-结构型模式总结
    设计模式-享元模式
    设计模式-组合模式
    设计模式-桥接模式
    设计模式-装饰器模式
    设计模式-外观模式
    设计模式-代理模式
    设计模式-适配器模式
    VMware该虚拟机似乎正在使用中
    BurpSuite-Burp Proxy
  • 原文地址:https://www.cnblogs.com/lianghong/p/8683212.html
Copyright © 2011-2022 走看看